Compare commits

..

2 Commits
master ... dev

Author SHA1 Message Date
guanzheng 8b20a549a7 1:check_idea
2 years ago
sunchenliang ba22ab0e2d 修改图片本地化存储
2 years ago

2
.gitignore vendored

@ -2,4 +2,4 @@
**/.idea/
*.iml
rebel.xml
*.log
/.idea/

8
.idea/.gitignore vendored

@ -1,8 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

@ -1,55 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile default="true" name="Default" enabled="true" />
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="jyjz-system-authority" />
<module name="jyjz-system-oa" />
<module name="jyjz-framework-security" />
<module name="jyjz-system-abase" />
<module name="runtest" />
<module name="jyjz-common-mybatisplus" />
<module name="jyjz-common-upload" />
<module name="jyjz-system-admin" />
<module name="jyjz-framework-securityweb" />
<module name="jyjz-common-web" />
<module name="jyjz-system-cms" />
<module name="jyjz-common-redis" />
<module name="jyjz-common-task" />
<module name="jyjz-common-base" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel>
<module name="jyjz-start" target="1.8" />
<module name="ocrproject" target="1.8" />
<module name="runstart" target="1.8" />
</bytecodeTargetLevel>
</component>
<component name="JavacSettings">
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
<module name="jyjz-common" options="" />
<module name="jyjz-common-base" options="-parameters" />
<module name="jyjz-common-mybatisplus" options="-parameters" />
<module name="jyjz-common-redis" options="-parameters" />
<module name="jyjz-common-task" options="-parameters" />
<module name="jyjz-common-upload" options="-parameters" />
<module name="jyjz-common-web" options="-parameters" />
<module name="jyjz-framework" options="" />
<module name="jyjz-framework-security" options="-parameters" />
<module name="jyjz-framework-securityweb" options="-parameters" />
<module name="jyjz-parent" options="" />
<module name="jyjz-system" options="" />
<module name="jyjz-system-abase" options="-parameters" />
<module name="jyjz-system-admin" options="-parameters" />
<module name="jyjz-system-authority" options="-parameters" />
<module name="jyjz-system-cms" options="-parameters" />
<module name="jyjz-system-oa" options="-parameters" />
<module name="runstart" options="-parameters" />
<module name="runtest" options="-parameters" />
</option>
</component>
</project>

@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/jyjz-common/jyjz-common-base/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-common/jyjz-common-mybatisplus/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-common/jyjz-common-redis/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-common/jyjz-common-task/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-common/jyjz-common-upload/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-common/jyjz-common-web/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-framework/jyjz-framework-security/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-framework/jyjz-framework-securityweb/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-system/jyjz-system-abase/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-system/jyjz-system-admin/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-system/jyjz-system-cms/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/jyjz-system/jyjz-system-oa/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/runstart/src/main/java" charset="UTF-8" />
</component>
</project>

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="central" />
<option name="url" value="https://maven.aliyun.com/nexus/content/groups/public" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="https://repo.maven.apache.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="http://maven.aliyun.com/nexus/content/groups/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="rdc-releases" />
<option name="name" value="rdc-releases" />
<option name="url" value="https://packages.aliyun.com/maven/repository/2179753-release-2RMtZe/" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="alimaven" />
<option name="name" value="alimaven" />
<option name="url" value="https://maven.aliyun.com/repository/public" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="rdc-snapshots" />
<option name="name" value="rdc-snapshots" />
<option name="url" value="https://packages.aliyun.com/maven/repository/2179753-snapshot-eDoLiX/" />
</remote-repository>
<remote-repository>
<option name="id" value="snapshots" />
<option name="name" value="snapshots" />
<option name="url" value="https://maven.aliyun.com/nexus/content/groups/public" />
</remote-repository>
</component>
</project>

@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/jyjz-parent.iml" filepath="$PROJECT_DIR$/jyjz-parent.iml" />
</modules>
</component>
</project>

@ -1,124 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Palette2">
<group name="Swing">
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
</item>
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
</item>
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true">
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
</item>
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
<initial-values>
<property name="text" value="Button" />
</initial-values>
</item>
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="RadioButton" />
</initial-values>
</item>
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="CheckBox" />
</initial-values>
</item>
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
<initial-values>
<property name="text" value="Label" />
</initial-values>
</item>
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
</item>
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
</item>
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
<preferred-size width="-1" height="20" />
</default-constraints>
</item>
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
</item>
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
</item>
</group>
</component>
</project>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -22,14 +22,6 @@ public interface UserTokenService {
* @return
*/
User findByLoginname(String loginname);
/**
*
* @param phone
* @return
*/
User findByPhone(String phone);
/**
*
* @param userid
@ -131,22 +123,6 @@ public interface UserTokenService {
* @return
*/
public Long listCount(String otherno,String loginname);
/**
*
* @param otherno
* @return
*/
public Long listOthernoCount(String otherno);
/**
*
* @param otherno
* @param loginname
* @return
*/
public Long listLoginNameCount(String otherno,String loginname);
/**
*
@ -155,11 +131,4 @@ public interface UserTokenService {
* @return
*/
public Long listMobileCount(String otherno,String mobile);
/**
*
* @return
*/
boolean getTenantStatus(String agentcode);
}

@ -69,9 +69,6 @@ public class SearchQuery implements java.io.Serializable{
public void addIn(String field,List<String> value){
addQuery(field,value, SearchQueryConstant.SEARCH_IN);
}
public void addIn(String field,String value){
addQuery(field,value, SearchQueryConstant.SEARCH_IN);
}
public void addInLong(String field,List<Long> value){
addQuery(field,value, SearchQueryConstant.SEARCH_IN);
}
@ -95,13 +92,6 @@ public class SearchQuery implements java.io.Serializable{
public void addGreater(String field,Integer value){
addQuery(field,value, SearchQueryConstant.SEARCH_GREATER);
}
public void addGreater(String field,String value){
addQuery(field,value, SearchQueryConstant.SEARCH_GREATER);
}
public void addGreater(String field,Long value){
addQuery(field,value, SearchQueryConstant.SEARCH_GREATER);
}
public void addGreater(String field,BigDecimal value){
addQuery(field,value, SearchQueryConstant.SEARCH_GREATER);
@ -114,9 +104,6 @@ public class SearchQuery implements java.io.Serializable{
public void addGreaterEqual(String field,Integer value){
addQuery(field,value, SearchQueryConstant.SEARCH_GREATER_EQUAL);
}
public void addGreaterEqual(String field,String value){
addQuery(field,value, SearchQueryConstant.SEARCH_GREATER_EQUAL);
}
public void addGreaterEqual(String field,BigDecimal value){
addQuery(field,value, SearchQueryConstant.SEARCH_GREATER_EQUAL);
@ -127,13 +114,7 @@ public class SearchQuery implements java.io.Serializable{
public void addLess(String field,Integer value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS);
}
public void addLess(String field,String value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS);
}
public void addLess(String field,Long value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS);
}
public void addLess(String field,BigDecimal value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS);
}
@ -143,9 +124,6 @@ public class SearchQuery implements java.io.Serializable{
public void addLessEqual(String field,Integer value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS_EQUAL);
}
public void addLessEqual(String field,String value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS_EQUAL);
}
public void addLessEqual(String field,BigDecimal value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS_EQUAL);
@ -154,17 +132,6 @@ public class SearchQuery implements java.io.Serializable{
public void addLessEqual(String field,Date value){
addQuery(field,value, SearchQueryConstant.SEARCH_LESS_EQUAL);
}
public void addRulesOp(String field,String rulesOp){
SearchQueryForm searchQueryForm = new SearchQueryForm();
if(query.get(field)!=null){
searchQueryForm = (SearchQueryForm) query.get(field);
searchQueryForm.setRulesOp(rulesOp);
return;
}
searchQueryForm.setRulesOp(rulesOp);
query.put(field,searchQueryForm);
}
/**
*
* @param field
@ -188,15 +155,11 @@ public class SearchQuery implements java.io.Serializable{
log.error("【添加搜索条件】对象-value-错误value不能为空");
return;
}
// if(null != query.get(field)){
// log.error("【添加搜索条件】-query-错误query已经存在数据,field={}",field);
// return;
// }
SearchQueryForm lf = new SearchQueryForm();
if(query.get(field)!=null){
lf = (SearchQueryForm) query.get(field);
if(null != query.get(field)){
log.error("【添加搜索条件】-query-错误query已经存在数据,field={}",field);
return;
}
SearchQueryForm lf = new SearchQueryForm();
lf.setField(field);
lf.setDataOp(SearchQueryUtil.filterMap.get(filter));
lf.setOp(filter);

@ -8,10 +8,10 @@ import java.io.Serializable;
*/
public class SearchQueryForm implements Serializable {
private static final long serialVersionUID = 1L;
private String field;// 字段名称 username and t1.username = %111%(vachar)
private String op;// 比对条件 =
private Object value;// 比对内容 111
private String type;// 类型 ()
private String field;// 字段名称
private String op;// 比对条件
private Object value;// 比对内容
private String type;// 类型
private String rulesOp;// 搜索条件的关联方式,或/与and/or
private String tablenameother = "";// 数据表别名
private String dataOp;// 数据库中的比较条件,根据op属性获取
@ -78,10 +78,7 @@ public class SearchQueryForm implements Serializable {
public String getLikestar() {
if(SearchQueryUtil.filterMap.get(this.getOp()).equals(SearchQueryConstant.SEARCH_LIKE)){
this.setLikestar("CONCAT('%',");
}else if(SearchQueryUtil.filterMap.get(this.getOp()).equals(SearchQueryConstant.SEARCH_IN)){
this.setLikestar("(");
}
return likestar;
}
@ -92,8 +89,6 @@ public class SearchQueryForm implements Serializable {
public String getLikeend() {
if(SearchQueryUtil.filterMap.get(this.getOp()).equals(SearchQueryConstant.SEARCH_LIKE)){
this.setLikeend(",'%')");
}else if(SearchQueryUtil.filterMap.get(this.getOp()).equals(SearchQueryConstant.SEARCH_IN)){
this.setLikeend(")");
}
return likeend;
}

@ -86,9 +86,6 @@ public class User implements java.io.Serializable {
//密码最后更新时间
private Long psdupdatetime;
//用户审批节点
private Integer nodeType;
//用户对应的角色信息,映射文件中对应的字段信息
@JsonIgnore
private List roleslist = new ArrayList(0);
@ -132,9 +129,6 @@ public class User implements java.io.Serializable {
//存放其他平台关联用户的对象信息
private List oauthUserList = new ArrayList(0);
//前端菜单展示列表权限
private List<Object> frontmenuTList = new ArrayList<>();
public UserToken getFormatUserToken(){
//初始化登录用户信息

@ -15,35 +15,32 @@ import lombok.NoArgsConstructor;
public class UserToken implements java.io.Serializable {
private static final long serialVersionUID = 8798596773855969L;
private static final long serialVersionUID = 8798596773855969L;
// loginname + tokenuuid用于缓存的key使用
private String tokenid;
// loginname + tokenuuid用于缓存的key使用
private String tokenid;
private String tokenuuid;
private String tokenuuid;
//用户主键
private String userid;
//用户主键
private String userid;
//登陆账号
private String loginname;
//登陆账号
private String loginname;
//用户名
private String username;
//用户名
private String username;
// 客户端
private String userAgent;
// 授权时间
private Long issuedAt;
// 过期时间
private Long expiresAt;
// 是否记住我
private boolean remember;
// 客户端
private String userAgent;
// 授权时间
private Long issuedAt;
// 过期时间
private Long expiresAt;
// 是否记住我
private boolean remember;
//用户登录后的签名信息目前使用userid签名
private String signUser;
//用户审批节点
private Integer nodeType;
//用户登录后的签名信息目前使用userid签名
private String signUser;
}

@ -20,12 +20,6 @@ public interface CacheConstants {
//缓存超时时间,单位:秒,目前验证码使用
int CACHE_TIME = 300;//300;
//缓存超时时间,单位:秒,目前ai统计使用 24小时,获取验证码在使用
int TOOLSCOUNT_TENANTID_CACHE_TIME = 86400;
//保存ai统计租户id对象
String TOOLSCOUNT_TENANTID_MODEL_NAME = "toolscountmodel_tenantid";
//缓存中验证码存放的关键字
String CACHE_CODE = "CODEKAP";

@ -55,18 +55,6 @@
<artifactId>jyjz-framework-security</artifactId>
</dependency>
<!-- 阿里云短信依赖 -->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>4.5.16</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-dysmsapi</artifactId>
<version>2.1.0</version>
</dependency>
<!-- 验证码 -->
<dependency>
<groupId>com.github.penggle</groupId>

@ -5,7 +5,6 @@ import cn.jyjz.xiaoyao.common.base.exception.CommonExceptionCodeEnum;
import cn.jyjz.xiaoyao.common.base.exception.ServiceException;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.util.SpringUtils;
import cn.jyjz.xiaoyao.common.base.util.UserUtils;
import cn.jyjz.xiaoyao.common.base.vo.User;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
@ -28,7 +27,6 @@ import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.web.authentication.WebAuthenticationDetailsSource;
import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter;
import org.springframework.web.servlet.HandlerExceptionResolver;
/**
* https://blog.csdn.net/zkc7441976/article/details/111034574
@ -60,7 +58,7 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter {
String[] excludespath = systemopenurlService.getOpenUrl();
//不需要过滤的url
String[] excludesOther = {"/static","/json",".js",".css",".ico",".jpg",".png",".pcm","/druid","/doc.html","/swagger-ui.html","/swagger-resources","/webjars/**","/v2/api-docs"};
String[] excludesOther = {"/static","/json",".js",".css",".ico",".jpg",".png",".pcm","/druid"};
String[] urls = ArrayUtils.addAll(excludespath, excludesOther);
@ -145,12 +143,6 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter {
}
}
else{
//抛出filter异常到全局处理异常
HandlerExceptionResolver hadoopHandlerExceptionResolver = SpringUtils.getBean("handlerExceptionResolver");
hadoopHandlerExceptionResolver.resolveException(request,response,null, new ServiceException(CommonExceptionCodeEnum.DATA_TOKEN_NULL));
return;
}
}
filterChain.doFilter(request, response);

@ -17,12 +17,8 @@ import cn.jyjz.xiaoyao.framework.security.captcha.utile.CaptchUtil;
import cn.jyjz.xiaoyao.framework.security.model.AdminUserModel;
import cn.jyjz.xiaoyao.framework.security.service.FlowableUserLoginService;
import cn.jyjz.xiaoyao.framework.security.service.OnlineUserService;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.authentication.AuthenticationProvider;
@ -92,16 +88,8 @@ public class MyAuthenticationProvider implements AuthenticationProvider {
// //从缓存中删除验证码
// iCacheManager.remove(CacheConstants.CACHE_CODE,codetoken);
// if(StringUtils.isBlank(loginname) || StringUtils.isBlank(password)){
// throw new AuthenticationServiceException("账号密码不正确");
// }
if(StringUtils.isBlank(loginname)){
throw new AuthenticationServiceException("请输入账号!");
}
if(StringUtils.isBlank(password)){
throw new AuthenticationServiceException("密码错误!");
if(StringUtils.isBlank(loginname) || StringUtils.isBlank(password)){
throw new AuthenticationServiceException("账号密码不正确");
}
//判断验证码不能为空
@ -115,36 +103,15 @@ public class MyAuthenticationProvider implements AuthenticationProvider {
// }
//判断手机号与企业编码是否存在
// if(!"admin".equals(loginname) && userTokenService.listCount(agentcode,loginname).intValue() <= 0){
// throw new AuthenticationServiceException("企业编码或账号错误");
// }
//判断手机号与企业编码是否存在
// if(!"admin".equals(loginname) && userTokenService.listCount(agentcode,loginname).intValue() <= 0){
// throw new AuthenticationServiceException("企业编码错误!");
// }
//企业编码是否存在
if(!"admin".equals(loginname) && userTokenService.listOthernoCount(agentcode).intValue() <= 0){
throw new AuthenticationServiceException("企业编码错误!");
if(!"admin".equals(loginname) && userTokenService.listCount(agentcode,loginname).intValue() <= 0){
throw new AuthenticationServiceException("企业编码或账号错误");
}
boolean tenantStatus = userTokenService.getTenantStatus(agentcode);
if (!"admin".equals(loginname) && !tenantStatus) {
throw new AuthenticationServiceException("该租户已被冻结!");
}
//判断账号是否存在
if(!"admin".equals(loginname) && userTokenService.listLoginNameCount(agentcode,loginname).intValue() <= 0){
throw new AuthenticationServiceException("账号不存在!");
}
//数据库查询用户对象
User user = userTokenService.findByLoginname(loginname);
if(null == user){
throw new AuthenticationServiceException("账号密码不正确");
}else if(user.getEnabled() == 0){
throw new AuthenticationServiceException("该账号被禁用");
}
//TODO 处理同一个用户,多次登录
@ -186,7 +153,7 @@ public class MyAuthenticationProvider implements AuthenticationProvider {
}
//userTokenService.savePasswordMaxRetry(user.getLoginname());
throw new AuthenticationServiceException("密码错误");
throw new AuthenticationServiceException("账号密码不正确");
}
@Override

@ -29,7 +29,7 @@ public class SmsLoginController {
String agentcode = request.getParameter("agentcode");
//判断手机号与企业编码是否存在
if(userTokenService.listMobileCount(agentcode,phone).intValue() <= 0){
if(userTokenService.listCount(agentcode,phone).intValue() <= 0){
return ResultVoUtil.error("企业编码或手机号错误。");
}

@ -2,6 +2,7 @@ package cn.jyjz.xiaoyao.framework.security.service.impl;
import cn.hutool.core.util.RandomUtil;
import cn.jyjz.xiaoyao.common.base.config.XiaoyaoConfig;
import cn.jyjz.xiaoyao.common.base.constant.RequestParameterConstans;
import cn.jyjz.xiaoyao.common.base.service.UserTokenOnlineService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.validator.PhoneNumberValidator;
@ -13,10 +14,10 @@ import cn.jyjz.xiaoyao.common.redis.cache.constants.CacheConstants;
import cn.jyjz.xiaoyao.framework.security.authentication.sms.SmsProvider;
import cn.jyjz.xiaoyao.framework.security.model.AdminUserModel;
import cn.jyjz.xiaoyao.framework.security.service.SmsLoginService;
import cn.jyjz.xiaoyao.framework.security.sms.MsmService;
import cn.jyjz.xiaoyao.framework.security.utils.JwtUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.Authentication;
@ -25,9 +26,6 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.time.LocalDate;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.Executor;
import java.util.regex.Matcher;
@ -48,9 +46,6 @@ public class SmsLoginServiceImpl implements SmsLoginService {
private SmsProvider smsProvider;
@Resource
private XiaoyaoConfig xiaoyaoConfig;
@Resource
private MsmService msmservice;
@Override
public ResultVo sendCode(String phone) {
//校验手机号
@ -58,34 +53,13 @@ public class SmsLoginServiceImpl implements SmsLoginService {
if (!isPhone) {
return ResultVoUtil.error("请输入正确的手机号。");
}
// 检查手机号当天获取验证码的次数
// 获取今天的日期,用于计算当天的发送次数
LocalDate today = LocalDate.now();
String cacheKey = "verification_count_" + phone + "_" + today;
Integer count = iCacheManager.get(CacheConstants.USER_PHONE_MODEL_NAME, cacheKey);
if (count == null) {
count = 0;
}
if (count >= 10) {
return ResultVoUtil.error("获取验证码次数超限,请明天再试!");
}
//生成验证码
String code = RandomUtil.randomNumbers(4);
String code = RandomUtil.randomNumbers(6);
//TODO 发送短信
Map<String,Object> map=new HashMap<>();
map.put("code",code);
msmservice.send(map,phone);
//用户登录信息写入缓存
iCacheManager.put(CacheConstants.USER_PHONE_MODEL_NAME,phone,code,CacheConstants.CACHE_TIME);
// 更新手机号当天获取验证码的次数
iCacheManager.put(CacheConstants.USER_PHONE_MODEL_NAME, cacheKey, count + 1, CacheConstants.TOOLSCOUNT_TENANTID_CACHE_TIME);
//保存验证码到 缓存中
return ResultVoUtil.success(code);
}
@ -114,7 +88,7 @@ public class SmsLoginServiceImpl implements SmsLoginService {
}
//数据库查询用户对象
User user = userTokenService.findByPhone(phone);
User user = userTokenService.findByLoginname(phone);
if(null == user){
return ResultVoUtil.error("用户错误。");
}

@ -1,8 +0,0 @@
package cn.jyjz.xiaoyao.framework.security.sms;
import java.util.Map;
public interface MsmService {
//发送验证码
boolean send(Map<String, Object> param, String phone);
}

@ -1,46 +0,0 @@
package cn.jyjz.xiaoyao.framework.security.sms;
import cn.jyjz.xiaoyao.common.base.util.StringUtils;
import com.alibaba.fastjson.JSONObject;
import com.aliyuncs.CommonRequest;
import com.aliyuncs.CommonResponse;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.profile.DefaultProfile;
import org.springframework.stereotype.Service;
import java.util.Map;
@Service
public class MsmServiceImpl implements MsmService{
@Override
public boolean send(Map<String, Object> param, String phone) {
if(StringUtils.isEmpty(phone)) return false;
//default 地域节点, 后面是 阿里云的 id和秘钥
DefaultProfile profile = DefaultProfile.getProfile("default", "LTAI5t764kWdwYXDGYzDnRuJ", "iI2HiElIzbNiyGw1h4UdRE6Fw8159f");
IAcsClient client = new DefaultAcsClient(profile);
//这里不能修改
CommonRequest request = new CommonRequest();
//request.setProtocol(ProtocolType.HTTPS);
// request.setMethod(MethodType.POST);
request.setDomain("dysmsapi.aliyuncs.com");
request.setVersion("2017-05-25");
request.setAction("SendSms");
request.putQueryParameter("PhoneNumbers", phone); //手机号
request.putQueryParameter("SignName", "北京码城科技"); //申请阿里云 签名名称(用的也是阿里云和模板配套的服务器配置好)
request.putQueryParameter("TemplateCode", "SMS_465342327"); //申请阿里云 模板code用的也是阿里云和签名配套的服务器配置好
request.putQueryParameter("TemplateParam", JSONObject.toJSONString(param));
try {
CommonResponse response = client.getCommonResponse(request);
System.out.println(response.getData());
return response.getHttpResponse().isSuccess();
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
}

@ -1,154 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8" inherit-compiler-output="false">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-boot-starter:3.4.3.4" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus:3.4.3.4" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-extension:3.4.3.4" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.12" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.12" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.5.6" level="project" />
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.6" level="project" />
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.6" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.32" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.32" level="project" />
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.28" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:4.0.3" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.3.12" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.12" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.3.12" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:dynamic-datasource-spring-boot-starter:3.4.1" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.12" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.aspectj:aspectjweaver:1.9.7" level="project" />
<orderEntry type="library" name="Maven: com.github.oshi:oshi-core:5.8.6" level="project" />
<orderEntry type="library" name="Maven: net.java.dev.jna:jna:5.10.0" level="project" />
<orderEntry type="library" name="Maven: net.java.dev.jna:jna-platform:5.10.0" level="project" />
<orderEntry type="library" name="Maven: jaxen:jaxen:1.2.0" level="project" />
<orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
<orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:druid:1.2.8" level="project" />
<orderEntry type="module" module-name="jyjz-common-base" />
<orderEntry type="library" name="Maven: org.modelmapper:modelmapper:2.4.4" level="project" />
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.8" level="project" />
<orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.69" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:31.0.1-jre" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:failureaccess:1.0.1" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava" level="project" />
<orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:3.0.2" level="project" />
<orderEntry type="library" name="Maven: org.checkerframework:checker-qual:3.12.0" level="project" />
<orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.7.1" level="project" />
<orderEntry type="library" name="Maven: com.google.j2objc:j2objc-annotations:1.3" level="project" />
<orderEntry type="library" name="Maven: com.google.zxing:core:3.4.1" level="project" />
<orderEntry type="library" name="Maven: com.google.zxing:javase:3.4.1" level="project" />
<orderEntry type="library" name="Maven: com.beust:jcommander:1.78" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.github.jai-imageio:jai-imageio-core:1.4.0" level="project" />
<orderEntry type="library" name="Maven: com.alanpoi:alanpoi-common:1.3.4" level="project" />
<orderEntry type="library" name="Maven: redis.clients:jedis:3.6.3" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-pool2:2.9.0" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.3.12" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.3.12" level="project" />
<orderEntry type="library" name="Maven: org.apdplat:word:1.3.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-core:7.7.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-queryparser:7.7.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-queries:7.7.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-sandbox:7.7.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-analyzers-common:4.10.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-suggest:4.10.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-misc:4.10.4" level="project" />
<orderEntry type="library" name="Maven: com.belerweb:pinyin4j:2.5.0" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.12" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.12.5" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.12.5" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.12.5" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.12.5" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.12.5" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.12.5" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.54" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.54" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.54" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.12" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.12" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.75" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" />
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.22" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.9.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:4.1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi:4.1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:4.1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-compress:1.19" level="project" />
<orderEntry type="library" name="Maven: com.github.virtuald:curvesapi:1.06" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.15" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math3:3.6.1" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:SparseBitSet:1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:3.1.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-scratchpad:4.1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.pdfbox:pdfbox:2.0.23" level="project" />
<orderEntry type="library" name="Maven: org.apache.pdfbox:fontbox:2.0.23" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
<orderEntry type="library" name="Maven: fr.opensagres.xdocreport:fr.opensagres.xdocreport.document:2.0.2" level="project" />
<orderEntry type="library" name="Maven: fr.opensagres.xdocreport:fr.opensagres.xdocreport.core:2.0.2" level="project" />
<orderEntry type="library" name="Maven: fr.opensagres.xdocreport:fr.opensagres.xdocreport.converter:2.0.2" level="project" />
<orderEntry type="library" name="Maven: fr.opensagres.xdocreport:fr.opensagres.xdocreport.template:2.0.2" level="project" />
<orderEntry type="library" name="Maven: fr.opensagres.xdocreport:fr.opensagres.poi.xwpf.converter.core:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:ooxml-schemas:1.4" level="project" />
<orderEntry type="library" name="Maven: fr.opensagres.xdocreport:fr.opensagres.poi.xwpf.converter.xhtml:2.0.2" level="project" />
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:8.0.26" level="project" />
<orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.11.4" level="project" />
<orderEntry type="library" name="Maven: cn.hutool:hutool-all:5.7.15" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.13" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.14" level="project" />
<orderEntry type="library" name="Maven: org.apache.velocity:velocity-engine-core:2.3" level="project" />
<orderEntry type="module" module-name="jyjz-common-web" />
<orderEntry type="library" name="Maven: io.swagger.core.v3:swagger-annotations:2.1.11" level="project" />
<orderEntry type="module" module-name="jyjz-common-mybatisplus" />
<orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-starter:2.1.4" level="project" />
<orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-autoconfigure:2.1.4" level="project" />
<orderEntry type="library" name="Maven: org.mybatis:mybatis:3.5.6" level="project" />
<orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:2.0.6" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-core:3.4.3.4" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-annotation:3.4.3.4" level="project" />
<orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:4.2" level="project" />
<orderEntry type="module" module-name="jyjz-common-redis" />
<orderEntry type="library" name="Maven: net.sf.ehcache:ehcache:2.10.9.2" level="project" />
<orderEntry type="module" module-name="jyjz-common-task" />
<orderEntry type="module" module-name="jyjz-common-upload" />
<orderEntry type="library" name="Maven: commons-net:commons-net:3.8.0" level="project" />
<orderEntry type="library" name="Maven: net.arccode:fastdfs-client-java:1.27.0" level="project" />
<orderEntry type="module" module-name="jyjz-framework-security" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-security:2.5.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-config:5.4.5" level="project" />
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-core:5.4.5" level="project" />
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-web:5.4.5" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.12" level="project" />
<orderEntry type="library" name="Maven: com.auth0:java-jwt:3.18.2" level="project" />
<orderEntry type="library" name="Maven: com.github.penggle:kaptcha:2.3.2" level="project" />
<orderEntry type="library" name="Maven: com.jhlabs:filters:2.0.235-1" level="project" />
<orderEntry type="module" module-name="jyjz-framework-securityweb" />
<orderEntry type="library" name="Maven: org.aspectj:aspectjrt:1.9.7" level="project" />
<orderEntry type="module" module-name="jyjz-system-abase" />
</component>
</module>

@ -1,20 +0,0 @@
package cn.jyjz.xiaoyao.admin.dataDao;
import cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* Mapper
* </p>
*
* @author author
* @since 2024-03-25
*/
@Mapper
public interface SFrontmenuTDao extends BaseMapper<SFrontmenuT> {
List<SFrontmenuT> queryUserMenuById(String loginName);
}

@ -18,20 +18,6 @@ public interface UserTenantMybatisDao extends BaseMapper<UserTenant> {
* @return
*/
Long listCount(Map<String, Object> query);
/**
*
* @param query otherno
* @return
*/
Long listOthernoCount(Map<String, Object> query);
/**
*
* @param query othernologinname
* @return
*/
Long listLoginNameCount(Map<String, Object> query);
/**
*

@ -1,61 +0,0 @@
package cn.jyjz.xiaoyao.admin.dataobject;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author author
* @since 2024-03-25
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("s_frontmenu_t")
@ApiModel(value="SFrontmenuT对象", description="前端菜单表")
public class SFrontmenuT implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键ID")
@TableId(value = "id", type = IdType.NONE)
private Long id;
@ApiModelProperty(value = "菜单名")
private String name;
@ApiModelProperty(value = "父级菜单ID")
private Integer parentId;
@ApiModelProperty(value = "资源标识唯一KEY")
private String resKey;
@ApiModelProperty(value = "菜单地址")
private String resUrl;
@ApiModelProperty(value = "菜单级别")
private Integer level;
@ApiModelProperty(value = "菜单图标")
private String icon;
@ApiModelProperty(value = "菜单排序")
private Integer orderNum;
@ApiModelProperty(value = "菜单是否隐藏0:否,1:是)")
private Integer ishide;
@ApiModelProperty(value = "菜单描述")
private String description;
}

@ -124,9 +124,6 @@ public class User implements BaseDto,java.io.Serializable {
@TableField(value="PSDUPDATETIME")
@JsonSerialize(using = DateSerializer.class)
private Long psdupdatetime;
@Schema(description = "用户审批节点")
@TableField(value="NODETYPE")
private Integer nodeType;
//用户对应的角色信息,映射文件中对应的字段信息
@JsonIgnore
@ -181,10 +178,6 @@ public class User implements BaseDto,java.io.Serializable {
@TableField(exist = false)
private List<Department> deptlist = new ArrayList<Department>(0);
//前端菜单展示列表权限
@TableField(exist = false)
private List<SFrontmenuT> frontmenuTList = new ArrayList<>();
public UserToken getUserToken(){
UserToken userToken = BeanUtil.copyProperties(this,UserToken.class);

@ -1,19 +0,0 @@
package cn.jyjz.xiaoyao.admin.service;
import cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* <p>
*
* </p>
*
* @author author
* @since 2024-03-25
*/
public interface ISFrontmenuTService extends IService<SFrontmenuT> {
List<SFrontmenuT> queryUserMenuById(String loginName);
}

@ -23,13 +23,6 @@ public interface UserService extends BaseService<User> {
* @return
*/
public User findByLoginname(String loginname);
/**
*
* @param phone
* @return
*/
public User findByPhone(String phone);
/**
*

@ -40,23 +40,6 @@ public interface UserTenantService extends BaseService<UserTenant> {
* @return
*/
public Long listCount(String otherno,String loginname);
/**
*
* @param otherno
* @return
*/
public Long listOthernoCount(String otherno);
/**
*
* @param otherno
* @param loginname
* @return
*/
public Long listLoginNameCount(String otherno,String loginname);
/**
*

@ -1,34 +0,0 @@
package cn.jyjz.xiaoyao.admin.service.impl;
import cn.jyjz.xiaoyao.admin.dataDao.SFrontmenuTDao;
import cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT;
import cn.jyjz.xiaoyao.admin.service.ISFrontmenuTService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
* <p>
*
* </p>
*
* @author author
* @since 2024-03-25
*/
@Service
@Slf4j
public class SFrontmenuTServiceImpl extends ServiceImpl<SFrontmenuTDao, SFrontmenuT> implements ISFrontmenuTService {
@Resource
private SFrontmenuTDao sFrontmenuTDao;
@Override
public List<SFrontmenuT> queryUserMenuById(String loginName){
List<SFrontmenuT> sFrontmenuTList = sFrontmenuTDao.queryUserMenuById(loginName);
return sFrontmenuTList;
}
}

@ -9,7 +9,6 @@ import cn.jyjz.xiaoyao.admin.dataDao.UserobjectMybatisDao;
import cn.jyjz.xiaoyao.admin.dataDao.UserpostMybatisDao;
import cn.jyjz.xiaoyao.admin.dataDao.UserrolesMybatisDao;
import cn.jyjz.xiaoyao.admin.dataobject.*;
import cn.jyjz.xiaoyao.admin.service.ISFrontmenuTService;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.admin.service.UserTenantService;
import cn.jyjz.xiaoyao.common.base.config.XiaoyaoConfig;
@ -78,10 +77,6 @@ public class UserServiceImpl extends BaseServiceImpl<UserMybatisDao,User> imple
@Resource
private UserTenantService userTenantService;
@Resource
private ISFrontmenuTService isFrontmenuTService;
/**
*
* @param loginname
@ -107,43 +102,8 @@ public class UserServiceImpl extends BaseServiceImpl<UserMybatisDao,User> imple
user.formatDeptlist(departmentList);
user.setTenantList(this.userTenantService.listUserTenant(user.getId()));
//返回用户前端菜单权限列表
List<SFrontmenuT> frontmenuTList1 = isFrontmenuTService.queryUserMenuById(user.getLoginname());
user.setFrontmenuTList(frontmenuTList1);
return user;
}
/**
*
* @param phone
* @return
*/
@Override
public User findByPhone(String phone){
if(StringUtils.isBlank(phone)){
throw new ServiceException(CommonExceptionCodeEnum.PARAM_NOTVALID);
}
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("MOBILE",phone);
User user = this.usermybatisdao.selectOne(queryWrapper);
if(null == user){
return null;
}
List<Department> departmentList = this.departmentMybatisDao.selectDeptByUserid(user.getId());
user.formatDeptlist(departmentList);
user.setTenantList(this.userTenantService.listUserTenant(user.getId()));
//返回用户前端菜单权限列表
List<SFrontmenuT> frontmenuTList1 = isFrontmenuTService.queryUserMenuById(user.getLoginname());
user.setFrontmenuTList(frontmenuTList1);
return user;
}
/**
*
* @param userid

@ -96,32 +96,6 @@ public class UserTenantServiceImpl extends BaseServiceImpl<UserTenantMybatisDao,
query.put("loginname",loginname);
return this.userTenantMybatisDao.listCount(query);
}
/**
*
* @param otherno
* @return
*/
public Long listOthernoCount(String otherno){
Map<String, Object> query = new HashMap<>();
query.put("otherno",otherno);
return this.userTenantMybatisDao.listOthernoCount(query);
}
/**
*
* @param otherno
* @param loginname
* @return
*/
public Long listLoginNameCount(String otherno,String loginname){
Map<String, Object> query = new HashMap<>();
query.put("otherno",otherno);
query.put("loginname",loginname);
return this.userTenantMybatisDao.listLoginNameCount(query);
}
/**
*

@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil;
import cn.jyjz.xiaoyao.admin.dataobject.Department;
import cn.jyjz.xiaoyao.admin.dataobject.Oauthuser;
import cn.jyjz.xiaoyao.admin.dataobject.Roles;
import cn.jyjz.xiaoyao.admin.dataobject.Tenant;
import cn.jyjz.xiaoyao.admin.service.*;
import cn.jyjz.xiaoyao.common.base.config.XiaoyaoConfig;
import cn.jyjz.xiaoyao.common.base.exception.CommonExceptionCodeEnum;
@ -35,7 +34,6 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import com.auth0.jwt.exceptions.TokenExpiredException;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -81,9 +79,6 @@ public class UserTokenServiceImpl implements UserTokenService {
@Resource
private UserTokenOnlineService userTokenOnlineService;
@Autowired
private TenantService tenantService;
public User findByLoginname(String loginname) {
@ -101,24 +96,6 @@ public class UserTokenServiceImpl implements UserTokenService {
User user = BeanUtil.copyProperties(userData,User.class);
return user;
}
public User findByPhone(String phone) {
cn.jyjz.xiaoyao.admin.dataobject.User userData = userService.findByPhone(phone);
if(null == userData){
return null;
}
Department department = this.departmentService.selectRootDepartid(userData.getDepartment());
if(null != department){
//userData.setDepartname(department.getDepartname());
userData.setDepartmentRootId(department.getId());
}
User user = BeanUtil.copyProperties(userData,User.class);
return user;
}
public User findByUserid(Long userid) {
cn.jyjz.xiaoyao.admin.dataobject.User userData = userService.findById(userid);
@ -393,27 +370,6 @@ public class UserTokenServiceImpl implements UserTokenService {
public Long listCount(String otherno,String loginname){
return userTenantService.listCount(otherno,loginname);
}
/**
*
* @param otherno
* @return
*/
public Long listOthernoCount(String otherno){
return userTenantService.listOthernoCount(otherno);
}
/**
*
* @param otherno
* @param loginname
* @return
*/
public Long listLoginNameCount(String otherno,String loginname){
return userTenantService.listLoginNameCount(otherno,loginname);
}
/**
*
@ -424,17 +380,4 @@ public class UserTokenServiceImpl implements UserTokenService {
public Long listMobileCount(String otherno,String mobile){
return userTenantService.listMobileCount(otherno,mobile);
}
/**
*
* @return
*/
@Override
public boolean getTenantStatus(String agentcode){
LambdaQueryWrapper<Tenant> tenantLambdaQueryWrapper = new LambdaQueryWrapper<>();
tenantLambdaQueryWrapper.eq(Tenant::getOtherno,agentcode);
Tenant tenant = tenantService.getOne(tenantLambdaQueryWrapper);
return tenant != null && tenant.getStatus() == 0;
}
}

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.jyjz.xiaoyao.admin.dataDao.SFrontmenuTDao">
<resultMap id="BaseResultMap" type="cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="parentId" jdbcType="INTEGER" property="parentId" />
<result column="resKey" jdbcType="VARCHAR" property="resKey" />
<result column="resUrl" jdbcType="VARCHAR" property="resKey" />
<result column="level" jdbcType="INTEGER" property="level" />
<result column="icon" jdbcType="VARCHAR" property="icon" />
<result column="orderNum" jdbcType="INTEGER" property="orderNum" />
<result column="ishide" jdbcType="INTEGER" property="ishide" />
<result column="description" jdbcType="VARCHAR" property="description" />
</resultMap>
<sql id="Base_Column_List">
id, `name`, parentId, resKey, resUrl, `level`, icon, orderNum, ishide, description
</sql>
<select id="queryUserMenuById" resultType="cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT">
SELECT
T3.*
FROM
s_user_frontmenu_t T1
LEFT JOIN s_user_t T2 ON T1.userId = T2.ID
LEFT JOIN s_frontmenu_t T3 on T3.id = T1.menuId
WHERE
T2.LOGINNAME = #{loginname}
ORDER BY T3.orderNum asc
</select>
</mapper>

@ -62,33 +62,6 @@
)
</select>
<select id="listOthernoCount" resultType="java.lang.Long" parameterType="java.util.Map">
select
count(ten.ID)
from
S_TENANT_T ten
where
ten.OTHERNO = #{otherno}
</select>
<select id="listLoginNameCount" resultType="java.lang.Long" parameterType="java.util.Map">
select
count(ten.ID)
from
S_TENANT_T ten
where
ten.OTHERNO = #{otherno}
and
ten.ID in (
select ue.TENANTID from
S_USER_T us,
S_USER_TENANT_T ue where us.LOGINNAME = #{loginname}
)
</select>
<select id="listMobileCount" resultType="java.lang.Long" parameterType="java.util.Map">
select
count(ten.ID)

@ -27,11 +27,7 @@
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
</dependency>
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.14</version> <!-- 或者最新版本 -->
</dependency>
<dependency>
<groupId>commons-configuration</groupId>
<artifactId>commons-configuration</artifactId>

@ -1,24 +1,12 @@
package cn.jyjz.flowable.common;
import java.util.HashMap;
import java.util.Map;
/**
*
*/
public class ProcessConstant {
public static final String BPMN_FILE_SUFFIX = ".bpmn";
public static final String FORM_FILE_SUFFIX = ".form";
public static Map<Integer, String> userNodeType;
static {
userNodeType = new HashMap<>();
userNodeType.put(1, "一级审批");
userNodeType.put(2, "二级审批");
userNodeType.put(3, "最终审批");
}
}

@ -58,11 +58,6 @@ public interface SystemConstantsOa extends SystemConstants {
Integer OA_STATUS_TYPE_END = 3;
Integer OA_STATUS_TYPE_REFUSE = 5;
String OA_BUSSINRSS_NO_FIX = "TTZZ";
//无量云回传任务状态
Integer OCR_STATUS_SUCCESS = 0;
//无量云回传任务状态
Integer OCR_STATUS_FAILURE = 1;
//上传参考图存放的文件夹名称
String OCR_IMG_UP_PATH = File.separator + "upload" + File.separator + "ocr" + File.separator;

@ -2,10 +2,10 @@ package cn.jyjz.flowable.controller;
import cn.jyjz.flowable.common.SystemConstantsOa;
import cn.jyjz.flowable.domain.dto.HistoricTaskInstanceDto;
import cn.jyjz.flowable.entity.FlowApprove;
import cn.jyjz.flowable.entity.FlowTaskInfo;
import cn.jyjz.flowable.domain.vo.FlowTaskVO;
import cn.jyjz.flowable.service.IFlowTaskService;
import cn.jyjz.flowable.utils.PageUtils;
import cn.jyjz.flowable.utils.SysConstant;
import cn.jyjz.xiaoyao.abase.service.SeqManageService;
import cn.jyjz.xiaoyao.admin.dataobject.User;
import cn.jyjz.xiaoyao.admin.service.UserService;
@ -15,51 +15,51 @@ import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQueryForm;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.oa.from.dataobject.Category;
import cn.jyjz.xiaoyao.oa.from.dataobject.Userapprove;
import cn.jyjz.xiaoyao.oa.from.service.UserapproveService;
import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo;
import cn.jyjz.xiaoyao.oa.from.vo.RepeatedTaskVo;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearch;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearchchild;
import cn.jyjz.xiaoyao.ocr.service.OcrSearchmanagerService;
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchService;
import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchchildService;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import com.alanpoi.common.util.StringUtils;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.*;
import org.apache.commons.collections4.CollectionUtils;
import org.flowable.ui.common.model.RemoteUser;
import org.flowable.ui.common.service.idm.RemoteIdmService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.InputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Api(tags = "ocr_流程接口")
@Api(tags="ocr_流程接口")
@RestController
@RequestMapping("/flow/task")
public class FlowTaskController extends BaseController {
@Resource
IFlowTaskService flowTaskService;
@Resource
private UserTokenService userTokenService;
@Resource
private UserService userService;
@Resource
@ -71,7 +71,7 @@ public class FlowTaskController extends BaseController {
private OcrTaskchildPictureService ocrTaskchildPictureService;
@Resource
private OcrUsersearchchildService usersearchchildService;
private UserapproveService userapproveService;
// /**
// * 查询我的待办任务
// * @return
@ -86,14 +86,13 @@ public class FlowTaskController extends BaseController {
/**
*
*
* @param processId
* @return
* @throws Exception
*/
@GetMapping(value = "/flowImg", produces = MediaType.IMAGE_PNG_VALUE)
@GetMapping(value = "/flowImg",produces = MediaType.IMAGE_PNG_VALUE)
@ResponseBody
public byte[] flowImg(@RequestParam("processId") String processId) throws Exception {
public byte[] flowImg(@RequestParam("processId") String processId) throws Exception{
InputStream diagram = flowTaskService.diagram(processId);
byte[] bytes = new byte[diagram.available()];
diagram.read(bytes);
@ -102,32 +101,30 @@ public class FlowTaskController extends BaseController {
/**
*
*
* @param processId
* @return
* @throws Exception
*/
@GetMapping(value = "/myFlowImg", produces = MediaType.IMAGE_PNG_VALUE)
@GetMapping(value = "/myFlowImg",produces = MediaType.IMAGE_PNG_VALUE)
@ResponseBody
public byte[] myFlowImg(@RequestParam("processId") String processId, HttpServletRequest request) throws Exception {
InputStream diagram = flowTaskService.myDiagram(processId, request);
public byte[] myFlowImg(@RequestParam("processId") String processId, HttpServletRequest request) throws Exception{
InputStream diagram = flowTaskService.myDiagram(processId,request);
byte[] bytes = new byte[diagram.available()];
diagram.read(bytes);
return bytes;
}
/**
*
*
* @return
*/
@PostMapping("/viewFormid")
@ResponseBody
public ResultVo viewFormid(@RequestParam("processId") String processId, HttpServletRequest request) {
public ResultVo viewFormid(@RequestParam("processId") String processId, HttpServletRequest request){
//查询业务主键
Category category = flowTaskService.viewForm(processId, request);
if (null != category) {
Category category = flowTaskService.viewForm(processId,request);
if(null != category){
return ResultVoUtil.success(category);
}
return ResultVoUtil.error();
@ -135,90 +132,127 @@ public class FlowTaskController extends BaseController {
/**
*
*
* @return
*/
@ApiOperation(value = "任务审批", notes = "任务审批")
@ApiOperation(value="任务审批", notes="任务审批")
@PostMapping("/completeFlow")
@ResponseBody
public ResultVo complete(@RequestBody FlowApprove approve, HttpServletRequest request) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
Integer flag = flowTaskService.complete(approve, userToken, Arrays.asList(approve.getFlowTaskInfoList().get(0).getFormId()));
return flag > 0 ? ResultVoUtil.success() : ResultVoUtil.error();
public ResultVo complete(FlowTaskVO taskVO,HttpServletRequest request){
Boolean flag = flowTaskService.complete(taskVO,request);
return flag?ResultVoUtil.success():ResultVoUtil.error();
}
/**
*
*
* @return
*/
@ApiOperation(value = "任务审批", notes = "任务审批")
@ApiOperation(value="任务审批", notes="任务审批")
@PostMapping("/completeBatchFlow")
@ResponseBody
public ResultVo completeBatch(@RequestBody FlowApprove approve, HttpServletRequest request) {
public ResultVo completeBatch(HttpServletRequest request){
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
//任务ID
List<FlowTaskInfo> flowTaskInfoList = approve.getFlowTaskInfoList();
if (CollectionUtils.isNotEmpty(flowTaskInfoList)) {
List<String> formIdList = flowTaskInfoList.stream().map(FlowTaskInfo::getFormId).collect(Collectors.toList());
//判断当前任务审批人是否一致
List<String> formIds = ocrTaskchildPictureService.validateAssignee(formIdList, userToken);
// 判断当前任务是否审批完毕
if (CollectionUtils.isNotEmpty(formIds)) {
Integer success = flowTaskService.complete(approve, userToken, formIds);
return ResultVoUtil.success("审批成功" + success + "条," + "无权审核" + (flowTaskInfoList.size() - success) + "条", "");
String[] taskId = request.getParameterValues("taskId");
//审批的任务主键
String[] formid = request.getParameterValues("formid");
String[] taskname = request.getParameterValues("taskname");
//是否同意true同意false拒绝
boolean approvd = Boolean.valueOf(request.getParameter("approvd"));
//审批意见")
String taskComment = request.getParameter("taskComment");
//判断当前任务审批人是否一致
if(!this.ocrTaskchildPictureService.validateAssignee(formid,userToken)){
return ResultVoUtil.error("审批人不一致,请到任务审批中处理。");
}
//TODO 判断当前任务是否审批完毕
if(!this.ocrTaskchildPictureService.validateApprove(formid)){
return ResultVoUtil.error("存在已经审批的任务。");
}
//TODO 判断taskid是否为非法空置、taskid是否存在
//判断当前任务是否存在历史任务--暂时不做,生成任务时直接保存历史任务的审批工具中
StringBuffer smg = new StringBuffer();
for(int i = 0;i < taskId.length;i++){
String ti = taskId[i];
String fi = formid[i];
FlowTaskVO taskVO = new FlowTaskVO();
taskVO.setTaskId(ti);
taskVO.setFormid(fi);
taskVO.setApprovd(approvd);
taskVO.setTaskComment(taskComment);
Boolean flag = flowTaskService.complete(taskVO,request);
if(!flag){
if(StringUtils.isNotBlank(smg.toString())){
smg.append("");
smg.append(taskname[i]);
smg.append("审批失败");
}else{
smg.append(taskname[i]);
smg.append("审批失败");
}
}
}
return ResultVoUtil.success("审核成功0条" + "无权审核" + flowTaskInfoList.size() + "条", "");
return (StringUtils.isNotBlank(smg.toString()))?ResultVoUtil.error(smg.toString()):ResultVoUtil.success();
}
@GetMapping("/listhistore")
@ResponseBody
public ResultVo listhistore(PageUtils vo, Model model, HttpServletRequest request) {
public ResultVo listhistore(PageUtils vo, Model model, HttpServletRequest request){
String processInstanceId = request.getParameter("processInstanceId");
List<HistoricTaskInstanceDto> list = flowTaskService.listHistoriceTask(processInstanceId);
List<HistoricTaskInstanceDto> list = flowTaskService.listHistoriceTask(processInstanceId);
return ResultVoUtil.success(list);
}
/**
*
*
*
*
* @return
*/
@GetMapping("/finishedList")
@ResponseBody
public ResultVo getFinishedList(PageUtils pageUtils, HttpServletRequest request) {
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
public ResultVo getFinishedList(PageUtils pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_");
User user = this.userService.getSessionUser(request);
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
flowTaskService.getMyProcessInstances(searchQuery.getQuery(), pageUtils);
} else {
searchQuery.addEqual("approveUserid", user.getId().toString());
flowTaskService.getMyProcessInstances(searchQuery.getQuery(), pageUtils);
if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
}else{
searchQuery.addEqual("approveUserid",user.getId().toString());
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
}
return ResultVoUtil.success(pageUtils);
}
/**
*
*
*
*
* @return
*/
@ApiOperation(value = "待办任务", notes = "待办任务")
@ApiOperation(value="待办任务", notes="待办任务")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
})
@GetMapping("/listdata")
@ResponseBody
public ResultVo<FlowUnionVo> listdata(PageUtils<FlowUnionVo> pageUtils, HttpServletRequest request) {
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
public ResultVo<FlowUnionVo> listdata(PageUtils<FlowUnionVo> pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_");
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
String taskid = request.getParameter("taskid");
@ -228,99 +262,91 @@ public class FlowTaskController extends BaseController {
String fromuserid = request.getParameter("fromuserid");
String fromplanid = request.getParameter("fromplanid");
if (org.apache.commons.lang3.StringUtils.isBlank(tenantId)) {
if(org.apache.commons.lang3.StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
if (StringUtils.isNotBlank(taskid)) {
searchQuery.addEqual("taskid", taskid);
if(StringUtils.isNotBlank(taskid)){
searchQuery.addEqual("taskid",taskid);
}
if (StringUtils.isNotBlank(taskname)) {
searchQuery.addLike("taskname", taskname);
if(StringUtils.isNotBlank(taskname)){
searchQuery.addLike("taskname",taskname);
}
if (StringUtils.isNotBlank(states)) {
searchQuery.addEqual("states", states);
if(StringUtils.isNotBlank(states)){
searchQuery.addEqual("states",states);
}
if (StringUtils.isNotBlank(fromprojectid)) {
searchQuery.addEqual("fromprojectid", fromprojectid);
if(StringUtils.isNotBlank(fromprojectid)){
searchQuery.addEqual("fromprojectid",fromprojectid);
}
if (StringUtils.isNotBlank(fromuserid)) {
searchQuery.addEqual("fromuserid", fromuserid);
if(StringUtils.isNotBlank(fromuserid)){
searchQuery.addEqual("fromuserid",fromuserid);
}
if (StringUtils.isNotBlank(fromplanid)) {
searchQuery.addEqual("fromplanid", fromplanid);
if(StringUtils.isNotBlank(fromplanid)){
searchQuery.addEqual("fromplanid",fromplanid);
}
User user = this.userService.getSessionUser(request);
// List<Userapprove> userApprove = userapproveService.list(new LambdaQueryWrapper<Userapprove>().eq(Userapprove::getUserid, user.getId()));
// List<String> collect = userApprove.stream().map(Userapprove::getFormid).map(Object::toString).collect(Collectors.toList());
// searchQuery.addIn("formid",collect);
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
flowTaskService.getMyProcessInstances(searchQuery.getQuery(), pageUtils);
} else {
if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
}else{
String assigneeId = request.getParameter("assigneeId");
//如果assigneeId 为空查询发起流程,否则查询待办流程
if (StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())) {
searchQuery.addEqual("assignee", user.getLoginname());
searchQuery.addEqual("states", SystemConstantsOa.OA_STATUS_TYPE_ING.toString());
} else {
searchQuery.addEqual("createuser", user.getLoginname());
if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){
searchQuery.addEqual("assignee",user.getLoginname());
searchQuery.addEqual("states",SystemConstantsOa.OA_STATUS_TYPE_ING.toString());
}else{
searchQuery.addEqual("createuser",user.getLoginname());
}
searchQuery.addEqual("tenantid", tenantId);
flowTaskService.getMyProcessInstances(searchQuery.getQuery(), pageUtils);
searchQuery.addEqual("tenantid",tenantId);
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
//待办信息,增加是否查看标记
if (StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())) {
if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){
List list = pageUtils.getList();
if (null != list && !list.isEmpty()) {
if(null != list && !list.isEmpty()){
int count = list.size();
for (int i = 0; i < count; i++) {
for(int i = 0;i < count;i++){
FlowUnionVo flowUnionVo = (FlowUnionVo) list.get(i);
//flowUnionVo.setView(userViewApproeService.haveByFromid(flowUnionVo.getFormid().toString()));
}
}
}
}
return ResultVoUtil.success(pageUtils);
}
/**
*
*
*
*
* @return
*/
@ApiOperation(value = "我的任务", notes = "查询我的待办、已经办理任务")
@ApiOperation(value="我的任务", notes="查询我的待办、已经办理任务")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
})
@GetMapping("/listalldata")
@ResponseBody
public ResultVo listAlldata(PageUtils pageUtils, HttpServletRequest request) {
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
public ResultVo listAlldata(PageUtils pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_");
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
String taskName = request.getParameter("keyword");
if (org.apache.commons.lang3.StringUtils.isBlank(tenantId)) {
if(org.apache.commons.lang3.StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
if (org.apache.commons.lang3.StringUtils.isNotBlank(taskName)) {
searchQuery.addLike("fromtaskname", taskName);
}
//获取用户预设检索条件id
String userSearchId = request.getParameter("userSearchId");
User user = this.userService.getSessionUser(request);
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
flowTaskService.getMyProcessInstances(searchQuery.getQuery(), pageUtils);
} else {
flowTaskService.getMyProcessInstances(user, tenantId, searchQuery.getQuery(), pageUtils,userSearchId);
if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
}else{
flowTaskService.getMyProcessInstances(user,tenantId,searchQuery.getQuery(),pageUtils);
//待办信息,增加是否查看标记
// if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){
//
@ -334,198 +360,73 @@ public class FlowTaskController extends BaseController {
// }
//
// }
}
return ResultVoUtil.success(pageUtils);
}
private void disSearchQuery(SearchQuery query, OcrUsersearchchild userSearch) {
if (userSearch.getSearchtype().equals("eq")) {
if (userSearch.getSearchvalue().contains(",")) {
String[] userIds = userSearch.getSearchvalue().split(",");
List<String> arrayData = Arrays.asList(userIds);
query.addIn(userSearch.getSearchfield(), arrayData);
} else {
query.addEqual(userSearch.getSearchfield(), userSearch.getSearchvalue());
}
}
if (userSearch.getSearchtype().equals("noteq")) {
if (userSearch.getSearchvalue().contains(",")) {
String[] userIds = userSearch.getSearchvalue().split(",");
List<String> arrayData = Arrays.asList(userIds);
query.addNotIn(userSearch.getSearchfield(), arrayData);
} else {
query.addNotEqual(userSearch.getSearchfield(), userSearch.getSearchvalue());
}
}
}
/**
*
*
* @return
*/
@ApiOperation(value = "我的终审列表", notes = "我的终审列表")
@ApiOperation(value="我的终审列表", notes="我的终审列表")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
})
@GetMapping("/listfinal")
@ResponseBody
public ResultVo<OcrTaskchildPicture> listFinalData(PageUtils<OcrTaskchildPicture> pageUtils,
@RequestParam(name = "izupuser", defaultValue = "", required = false) String izupuser,
@RequestParam(name = "taskName", defaultValue = "", required = false) String taskName,
@RequestParam(name = "izproject", defaultValue = "", required = false) String izproject,
@RequestParam(name = "izplan", defaultValue = "", required = false) String izplan,
@RequestParam(name = "izstatus", defaultValue = "", required = false) String izstatus,
@RequestParam(name = "iztaskrrom", defaultValue = "", required = false) String iztaskrrom,
@RequestParam(name = "izuptime", defaultValue = "", required = false) String izuptime,
HttpServletRequest request) {
@RequestParam(name="search_fromuserid", defaultValue="",required = false) String searchFromuserid,
@RequestParam(name="search_fromprojectid", defaultValue="",required = false) String searchFromprojectid,
@RequestParam(name="search_fromplanid", defaultValue="",required = false) String searchFromplanid,
@RequestParam(name="search_states", defaultValue="",required = false) String searchStates,
@RequestParam(name="search_fromsourceid", defaultValue="",required = false) String searchFromsourceid,
@RequestParam(name="fromuptime_start", defaultValue="",required = false) BigDecimal fromuptimeStart,
@RequestParam(name="fromuptime_end", defaultValue="",required = false) BigDecimal fromuptimeEnd,
HttpServletRequest request){
SearchQuery searchQuery = new SearchQuery();
if (org.springframework.util.StringUtils.hasText(izupuser)) {
// searchQuery.addEqual("fromuserid",izupuser);
if (izupuser.contains(",")) {
String[] userIds = izupuser.split(",");
List<String> arrayData = Arrays.asList(userIds);
searchQuery.addIn("fromuserid", arrayData);
} else {
searchQuery.addEqual("fromuserid", izupuser);
}
}
if(StringUtils.isNotBlank(taskName)){
searchQuery.addLike("fromtaskname",taskName);
if(org.springframework.util.StringUtils.hasText(searchFromuserid)){
searchQuery.addEqual("fromuserid",searchFromuserid);
}
if (org.springframework.util.StringUtils.hasText(izproject)) {
if (izproject.contains(",")) {
String[] projectIds = izproject.split(","); // 以逗号拆分字符串
List<String> arrayData = Arrays.asList(projectIds);
SearchQueryForm searchQueryForm = new SearchQueryForm();
searchQuery.addIn("fromprojectname", arrayData);
} else {
searchQuery.addEqual("fromprojectname", izproject);
}
if(org.springframework.util.StringUtils.hasText(searchFromprojectid)){
searchQuery.addEqual("fromprojectid",searchFromprojectid);
}
if (org.springframework.util.StringUtils.hasText(izplan)) {
if (izplan.contains(",")) {
String[] planIds = izplan.split(","); // 以逗号拆分字符串
List<String> arrayData = Arrays.asList(planIds);
SearchQueryForm searchQueryForm = new SearchQueryForm();
searchQuery.addIn("fromplanid", arrayData);
} else {
searchQuery.addEqual("fromplanid", izplan);
}
if(org.springframework.util.StringUtils.hasText(searchFromplanid)){
searchQuery.addEqual("fromplanid",searchFromplanid);
}
if (org.springframework.util.StringUtils.hasText(izstatus)) {
if (izstatus.contains(",")) {
String[] statusIds = izstatus.split(","); // 以逗号拆分字符串
List<String> arrayData = Arrays.asList(statusIds);
SearchQueryForm searchQueryForm = new SearchQueryForm();
searchQuery.addIn("states", arrayData);
} else {
searchQuery.addEqual("states", izstatus);
}
if(org.springframework.util.StringUtils.hasText(searchStates)){
searchQuery.addEqual("states",searchStates);
}
if (org.springframework.util.StringUtils.hasText(iztaskrrom)) {
if (iztaskrrom.contains(",")) {
String[] taskrromIds = iztaskrrom.split(","); // 以逗号拆分字符串
List<String> arrayData = Arrays.asList(taskrromIds);
SearchQueryForm searchQueryForm = new SearchQueryForm();
searchQuery.addIn("fromsourceid", arrayData);
} else {
searchQuery.addEqual("fromsourceid", iztaskrrom);
}
}
if (org.springframework.util.StringUtils.hasText(izuptime)) {
String[] dateRange = izuptime.split("-");
if (dateRange.length == 2) {
try {
SimpleDateFormat sdfInput = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
// 解析开始时间
Long startTimeStamp = sdfInput.parse(dateRange[0].trim() + " 00:00:00").getTime();
// 解析结束时间
Long endTimeStamp = sdfInput.parse(dateRange[1].trim() + " 23:59:59").getTime();
// 如果开始时间不为空,则将其放入查询条件中
if (startTimeStamp != null) {
searchQuery.addGreater("createdateStart", startTimeStamp);
}
// 如果结束时间不为空,则将其放入查询条件中
if (endTimeStamp != null) {
searchQuery.addLess("createdateEnd", endTimeStamp);
}
} catch (ParseException e) {
// 处理日期解析异常
e.printStackTrace();
}
}
if(org.springframework.util.StringUtils.hasText(searchFromsourceid)){
searchQuery.addEqual("fromsourceid",searchFromsourceid);
}
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if (org.apache.commons.lang3.StringUtils.isBlank(tenantId)) {
if(org.apache.commons.lang3.StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
User user = this.userService.getSessionUser(request);
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
} else {
searchQuery.addEqual("thisLoginUserid", user.getId().toString());
searchQuery.addEqual("tenantid", tenantId);
if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){
}else{
searchQuery.addEqual("thisLoginUserid",user.getId().toString());
searchQuery.addEqual("tenantid",tenantId);
}
String searchId = request.getParameter("searchId");
if (StringUtils.isNotBlank(searchId)) {
List<OcrUsersearchchild> list = usersearchchildService.list(new LambdaQueryWrapper<OcrUsersearchchild>().eq(OcrUsersearchchild::getUsersearchid, searchId).orderByAsc(OcrUsersearchchild::getOrderNum));
for (OcrUsersearchchild userSearch : list) {
disSearchQuery(searchQuery, userSearch);
}
Map<String,Object> query = searchQuery.getQuery();
if(fromuptimeStart != null){
query.put("fromuptimeStart",fromuptimeStart);
}
Map<String, Object> query = searchQuery.getQuery();
flowTaskService.getFinalProcessInstances(query, pageUtils);
return ResultVoUtil.success(pageUtils);
}
/**
* ()
*
* @return
*/
@ApiOperation(value = "图片分页列表查询-根据用户预设检索条件查询", notes = "")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path", name = "userSearchId", value = "预设检索条件id", required = true),
})
@GetMapping(value = "/listfinalAdvanced")
public ResultVo<IPage<OcrTaskchildPicture>> queryPageByUserSearchId(
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if (org.apache.commons.lang3.StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
if(fromuptimeEnd != null) {
query.put("fromuptimeEnd", fromuptimeEnd);
}
//获取用户预设检索条件id
String userSearchId = req.getParameter("userSearchId");
IPage<OcrTaskchildPicture> pageList = flowTaskService.queryPageByUserSearchId(pageNo, pageSize, userSearchId);
return ResultVoUtil.success(pageList);
flowTaskService.getFinalProcessInstances(query,pageUtils);
return ResultVoUtil.success(pageUtils);
}
/**
*
*
* CATEGORYID
*
*
* CATEGORYID
* @return
*/
@GetMapping("/listdataall")
@ -535,11 +436,11 @@ public class FlowTaskController extends BaseController {
List<FlowUnionVo> flowUnionVoList = null;
String categoryid = request.getParameter("categoryid");
String buessinessno = request.getParameter("buessinessno");
//业务表id
String formid = request.getParameter("viewformid");
if (StringUtils.isNotBlank(categoryid)) {
User user = this.userService.getSessionUser(request);
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
flowUnionVoList = flowTaskService.getMyProcessInstances(searchQuery.getQuery());
@ -547,142 +448,116 @@ public class FlowTaskController extends BaseController {
searchQuery.addEqual("createuser", user.getLoginname());
//流程类型对应流程类型表OA_CATEGORY_T的id
searchQuery.addEqual("categoryid", categoryid);
if (StringUtils.isNotBlank(buessinessno)) {
if(StringUtils.isNotBlank(buessinessno)){
searchQuery.addEqual("buessinessno", buessinessno);
}
if (StringUtils.isNotBlank(formid)) {
if(StringUtils.isNotBlank(formid)){
searchQuery.addEqual("id", formid);
}
searchQuery.addEqual("states", SystemConstantsOa.OA_STATUS_TYPE_END.toString());
flowUnionVoList = flowTaskService.getMyProcessInstances(searchQuery.getQuery());
}
}
return ResultVoUtil.success(flowUnionVoList);
}
/**
*
*
* @param pageUtils
* @param request
* @return
*/
@GetMapping("/listdatacc")
@ResponseBody
public ResultVo listdatacc(ParamterPage paramterPage, PageUtils pageUtils, HttpServletRequest request) {
public ResultVo listdatacc(ParamterPage paramterPage,PageUtils pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
Map<String, Object> query = searchQuery.getQuery();
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
flowTaskService.getMyListCc(query, userToken, paramterPage);
flowTaskService.getMyListCc(query,userToken,paramterPage);
return ResultVoUtil.success(pageUtils);
}
/**
*
*
*
*
* @return
*/
@GetMapping("/mylistcc")
@ResponseBody
public ResultVo myListCc(ParamterPage paramterPage, HttpServletRequest request) {
public ResultVo myListCc(ParamterPage paramterPage, HttpServletRequest request){
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
Map<String, Object> query = searchQuery.getQuery();
IPage<FlowUnionVo> flowableccIPage = flowTaskService.getMyListCc(query, userToken, paramterPage);
IPage<FlowUnionVo> flowableccIPage = flowTaskService.getMyListCc(query,userToken,paramterPage);
return ResultVoUtil.success(flowableccIPage);
}
/**
*
*
* @return
*/
@GetMapping("/cancelTask")
@ResponseBody
public ResultVo cancelTask(HttpServletRequest request) {
public ResultVo cancelTask(HttpServletRequest request){
String taskId = request.getParameter("taskId");
String reason = request.getParameter("reason");
flowTaskService.cancelTask(taskId, reason);
flowTaskService.cancelTask(taskId,reason);
return ResultVoUtil.success();
}
/**
*
*
* @return
*/
@ApiOperation(value = "重置流程流程", notes = "重置流程流程")
@ApiOperation(value="重置流程流程", notes="重置流程流程")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path", name = "fromid", value = "任务表主键", required = true)
@ApiImplicitParam(paramType = "path",name = "fromid", value = "任务表主键", required = true)
})
@GetMapping("/removeTask")
@ResponseBody
public ResultVo removeTask(HttpServletRequest request) {
public ResultVo removeTask(HttpServletRequest request){
String fromid = request.getParameter("fromid");
String taskid = request.getParameter("taskid");
return flowTaskService.removeTask(fromid, taskid);
return flowTaskService.removeTask(fromid,taskid);
//return ResultVoUtil.success();
}
/**
*
*
* @return
*/
@ApiOperation(value = "重置流程流程", notes = "重置流程流程")
@ApiOperation(value="重置流程流程", notes="重置流程流程")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path", name = "buessinessno", value = "业务编码", required = true)
@ApiImplicitParam(paramType = "path",name = "buessinessno", value = "业务编码", required = true)
})
@GetMapping("/historyTask")
@ResponseBody
public ResultVo historyTask(HttpServletRequest request) {
public ResultVo historyTask(HttpServletRequest request){
String fromid = request.getParameter("fromid");
String taskid = request.getParameter("buessinessno");
return flowTaskService.removeTask(fromid, taskid);
return flowTaskService.removeTask(fromid,taskid);
//return ResultVoUtil.success();
}
/**
*
*
* @return
*/
@ApiOperation(value = "重复流程", notes = "重复流程")
@ApiOperation(value="重复流程", notes="重复流程")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
})
@GetMapping("/repetitionTask")
@ResponseBody
public ResultVo repetitionTask() {
public ResultVo repetitionTask(HttpServletRequest request){
return flowTaskService.repetitionTask();
}
/**
*
*
* @return
*/
@ApiOperation(value = "重复流程", notes = "重复流程")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
})
@GetMapping("/repetitionTaskList")
@ResponseBody
public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize) {
Page<OcrTaskchildPicture> result = flowTaskService.repetitionTaskList(pageNo, pageSize);
return ResultVoUtil.success(result);
}
}

@ -1,46 +0,0 @@
package cn.jyjz.flowable.entity;
import lombok.Data;
import java.util.List;
/**
* ClassName FlowApprove$.java
* Description:
* Author scl.
* Date 2024/3/28 17:04
*/
@Data
public class FlowApprove {
/**
*
*/
private String comment;
/**
*
*/
private Boolean result;
/**
*
*/
private String failCauseName;
/**
* id
*/
private String failCauseId;
/**
*
*/
private String disposeType;
/**
* id
*/
private String disposeTypeId;
/**
* id
*/
private List<FlowTaskInfo> flowTaskInfoList;
}

@ -1,25 +0,0 @@
package cn.jyjz.flowable.entity;
import lombok.Data;
/**
* ClassName FlowTaskInfo$.java
* Description:
* Author scl.
* Date 2024/3/28 20:09
*/
@Data
public class FlowTaskInfo {
/**
* id
*/
private String formId;
/**
* id
*/
private String taskId;
/**
*
*/
private String taskName;
}

@ -3,8 +3,8 @@ package cn.jyjz.flowable.service;
import cn.jyjz.flowable.domain.dto.HistoricTaskInstanceDto;
import cn.jyjz.flowable.domain.vo.FlowTaskCompleteVO;
import cn.jyjz.flowable.domain.vo.FlowTaskVO;
import cn.jyjz.flowable.domain.vo.WorkFlowNodeVO;
import cn.jyjz.flowable.entity.FlowApprove;
import cn.jyjz.flowable.utils.PageUtils;
import cn.jyjz.xiaoyao.admin.dataobject.User;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
@ -13,13 +13,8 @@ import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.oa.from.dataobject.Category;
import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo;
import cn.jyjz.xiaoyao.oa.from.vo.RepeatedTaskVo;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.flowable.engine.repository.ProcessDefinition;
import org.flowable.task.api.Task;
@ -37,8 +32,7 @@ public interface IFlowTaskService {
Category viewForm(String processId, HttpServletRequest request);
Integer complete(FlowApprove approve, UserToken userToken, List<String> formIds);
Boolean complete(FlowTaskVO taskVO, HttpServletRequest request);
/**
* 退
@ -55,7 +49,7 @@ public interface IFlowTaskService {
* @param processDefinition
*/
public void updateAssignee(String processInstanceId, String processDefinitionId, ProcessDefinition processDefinition);
void sendMsg(OcrTaskchildPicture model, UserToken userToken);
void finishedList(PageUtils pageUtils, HttpServletRequest request);
/**
@ -74,16 +68,7 @@ public interface IFlowTaskService {
* @param tenantId
* @param pageUtils
*/
public void getMyProcessInstances(User user,String tenantId, Map<String, Object> query,PageUtils pageUtils,String userSearchId);
/**
*
*
* @param user
* @param tenantId
* @param pageUtils
*/
public List<OcrTaskchildPictureAppro> getMyProcessInstancesNew(User user, String tenantId, Map<String, Object> query, PageUtils pageUtils);
public void getMyProcessInstances(User user,String tenantId, Map<String, Object> query,PageUtils pageUtils);
/**
*
@ -94,17 +79,6 @@ public interface IFlowTaskService {
*/
public void getFinalProcessInstances(Map<String, Object> query, PageUtils<OcrTaskchildPicture> pageUtils);
/**
* id
* @param pageNo
* @param pageSize
* @param userSearchId
* @return
*/
IPage<OcrTaskchildPicture> queryPageByUserSearchId(Integer pageNo, Integer pageSize, String userSearchId);
/**
*
*
@ -178,6 +152,4 @@ public interface IFlowTaskService {
* @return
*/
ResultVo repetitionTask();
Page<OcrTaskchildPicture> repetitionTaskList(Integer pageNo, Integer pageSize);
}

@ -1,7 +1,6 @@
package cn.jyjz.flowable.service;
import cn.jyjz.flowable.domain.vo.FlowModelVO;
import org.flowable.task.api.Task;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
@ -37,7 +36,7 @@ public interface IFormCustomService<T> {
* @param deploymentid
* @param processdefinitionid
*/
public boolean updateForm(String fromid, String deploymentid, String processdefinitionid, String assignee, String taskId, String processInstanceId, Task task);
public boolean updateForm(String fromid,String deploymentid,String processdefinitionid,String assignee,String taskId,String processInstanceId,String tasknme);
/**
*
* @param fromid

@ -93,12 +93,12 @@ public class FlowInstanceServiceImpl extends FlowServiceFactory implements IFlow
throw new ServiceException("没有审批人,请联系管理员,流程定义:" + businessKey);
}
List<Task> list = this.flowTaskService.nowRunTask(processInstance.getProcessInstanceId(), processInstance.getProcessDefinitionId());
Task task = null;
String taskname = "";
if (null != list && !list.isEmpty()) {
task = list.get(0);
taskname = list.get(0).getName();
}
//保存instanceId到数据库需要根据流程分类进行判断更新
boolean isupdate = iFormCustomService.updateForm(formid, processDefinition.getDeploymentId(), processDefinition.getId(), flowTaskCompleteVO.getAssignee(), flowTaskCompleteVO.getTaskId(), processInstance.getProcessInstanceId(), task);
boolean isupdate = iFormCustomService.updateForm(formid, processDefinition.getDeploymentId(), processDefinition.getId(), flowTaskCompleteVO.getAssignee(), flowTaskCompleteVO.getTaskId(), processInstance.getProcessInstanceId(), taskname);
if (isupdate) {
FlowModelVO flowModelVO = iFormCustomService.getForm(formid);
//增加未查看记录
@ -121,7 +121,7 @@ public class FlowInstanceServiceImpl extends FlowServiceFactory implements IFlow
if (StringUtils.isNotBlank(servicename) && StringUtils.isNotBlank(formid)) {
iFormCustomService.delForm(formid);
}
} finally {
}finally {
RequestContextHolder.resetRequestAttributes();
}
return false;
@ -165,12 +165,12 @@ public class FlowInstanceServiceImpl extends FlowServiceFactory implements IFlow
throw new ServiceException("没有审批人,请联系管理员,流程定义:" + businessKey);
}
List<Task> list = this.flowTaskService.nowRunTask(processInstance.getProcessInstanceId(), processInstance.getProcessDefinitionId());
Task task = null;
String taskname = "";
if (null != list && !list.isEmpty()) {
task = list.get(0);
taskname = list.get(0).getName();
}
//保存instanceId到数据库需要根据流程分类进行判断更新
boolean isupdate = iFormCustomService.updateForm(formid, processDefinition.getDeploymentId(), processDefinition.getId(), flowTaskCompleteVO.getAssignee(), flowTaskCompleteVO.getTaskId(), processInstance.getProcessInstanceId(), task);
boolean isupdate = iFormCustomService.updateForm(formid, processDefinition.getDeploymentId(), processDefinition.getId(), flowTaskCompleteVO.getAssignee(), flowTaskCompleteVO.getTaskId(), processInstance.getProcessInstanceId(), taskname);
if (isupdate) {
FlowModelVO flowModelVO = iFormCustomService.getForm(formid);
//增加未查看记录

@ -62,7 +62,7 @@ public class CategoryController extends BaseController{
QueryWrapper<Category> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,category);
IPage<Category> page = this.categoryService.selectSearchListPage(paramterPage,queryWrapper);
for(Category category1:page.getRecords()){
category1.setTenant(tenantService.selectDtoById(Long.parseLong(category1.getTenantid())));
category1.setTenant(tenantService.selectDtoById(category1.getTenantid()));
}
return ResultVoUtil.success(page);
}
@ -77,7 +77,7 @@ public class CategoryController extends BaseController{
})
@GetMapping("/listall")
public ResultVo<IPage<Category>> listall(HttpServletRequest request, HttpServletResponse response) throws IOException{
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
@ -86,7 +86,7 @@ public class CategoryController extends BaseController{
QueryWrapper<Category> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("tenantid",tenantId);
List<Category> list = this.categoryService.getCategoryAll(queryWrapper);
return ResultVoUtil.success(list);
@ -99,11 +99,11 @@ public class CategoryController extends BaseController{
@PostMapping("/save")
public ResultVo saveCategory(HttpServletResponse response,HttpServletRequest request,Category tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
//查询流程定义id不为空的数据
Category category = this.categoryService.getCategoryNotNull();
tab.setProcessdefinitionid(category.getProcessdefinitionid());
tab.setCreateuser(userToken.getLoginname());
tab.setCreatedate(System.currentTimeMillis());
this.categoryService.save(tab);
@ -118,17 +118,17 @@ public class CategoryController extends BaseController{
@PostMapping("/edit")
public ResultVo editCategory(HttpServletResponse response,HttpServletRequest request,Category tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
//查询流程定义id不为空的数据
Category category = this.categoryService.getCategoryNotNull();
tab.setProcessdefinitionid(category.getProcessdefinitionid());
tab.setUpdateuser(userToken.getLoginname());
tab.setUpdatetime(System.currentTimeMillis());
this.categoryService.updateById(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
@ -138,11 +138,11 @@ public class CategoryController extends BaseController{
public ResultVo update(HttpServletResponse response,HttpServletRequest request) throws IOException{
String categoryid = request.getParameter("categoryid");
String processdefinitionid = request.getParameter("processdefinitionid");
Category tab = this.categoryService.getById(categoryid);
tab.setProcessdefinitionid(processdefinitionid);
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setUpdateuser(userToken.getLoginname());
tab.setUpdatetime(System.currentTimeMillis());

@ -2,11 +2,8 @@ package cn.jyjz.xiaoyao.oa.from.dataDao;
import cn.jyjz.xiaoyao.oa.from.dataobject.Flowablecc;
import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo;
import cn.jyjz.xiaoyao.oa.from.vo.RepeatedContentVo;
import cn.jyjz.xiaoyao.oa.from.vo.UserDistionaryVo;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@ -39,7 +36,5 @@ public interface FlowableccMybatisDao extends BaseMapper<Flowablecc> {
*/
List<UserDistionaryVo> selectUserByFromid(String fromid);
List<RepeatedContentVo> repetitionTask();
Page<OcrTaskchildPicture> repetitionTaskList(Page<OcrTaskchildPicture> page);
List<Map<String,Object>> repetitionTask();
}

@ -20,8 +20,8 @@ import java.util.Map;
import java.util.AbstractMap.SimpleEntry;
import java.util.stream.Stream;
import java.util.stream.Collectors;
@Data
@Builder
@ -30,95 +30,95 @@ import java.util.stream.Collectors;
@Schema(name = "流程类型", title = "流程类型")
@TableName(value = "OA_CATEGORY_T")
public class Category implements BaseDto,java.io.Serializable {
private static final long serialVersionUID = 3650775877135330041L;
@Schema(description = "流水号")
@TableId(value = "id",type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
@TableField(value="ID")
private Long id;
@Schema(description = "项目名称")
@TableField(value="CATEGORYNAME")
private String categoryname;
@Schema(description = "项目编码")
@TableField(value="CATEGORY")
private String category;
@Schema(description = "对应的Service名主要是spring的service名")
@TableField(value="SERVICENAME")
private String servicename;
@Schema(description = "内置表单使用flowable表单0使用本地数据1使用flowable表单3:外置表单4其他自定义表单")
@TableField(value="BUILTFORM")
private Integer builtform;
@Schema(description = "表单地址,用户展示用户表单使用")
@TableField(value="FORMURL")
private String formurl;
@Schema(description = "表单详情")
@TableField(value="FORMDETAIL")
private String formdetail;
@Schema(description = "是否启用0禁用1启用")
@TableField(value="HAVEUSE")
private Integer haveuse;
@Schema(description = "表单分类")
@TableField(value="FORMTYPE")
private String formtype;
@Schema(description = "流程定义id")
@TableField(value="PROCESSDEFINITIONID")
private String processdefinitionid;
@Schema(description = "排序")
@TableField(value="FORMNO")
private Integer formno;
@Schema(description = "创建人,记录创建人的帐号")
@TableField(value="CREATEUSER")
private String createuser;
@Schema(description = "创建时间")
@TableField(value="CREATEDATE")
private Long createdate;
@Schema(description = "修改人,记录创建人的帐号")
@TableField(value="UPDATEUSER")
private String updateuser;
@Schema(description = "更新时间")
@TableField(value="UPDATETIME")
private Long updatetime;
@Schema(description = "隶属机构")
@TableField(value="DEPTID")
private Long deptid;
@Schema(description = "租户主键")
@TableField(value="TENANTID")
private String tenantid;
private Long tenantid;
//租户对象
@TableField(exist = false)
private Tenant tenant;
//业务表主键
@Schema(description = "业务表主键")
@TableField(exist = false)
private String formid;
//节点描述信息,用于判断是否存在多个下级界面
@TableField(exist = false)
String documentation;
@Schema(description = "状态,审批状态 1:未提交 2:审批中 3:审批通过 ")
@TableField(exist = false)
private Integer states;
//保存当前登录用户的数据权限范围的搜索条件
@TableField(exist = false)
@JsonIgnore

@ -66,21 +66,6 @@ public class Userapprove implements BaseDto,java.io.Serializable {
@Schema(description = "节点编号")
@TableField(value="TASKNO")
private String taskno;
@Schema(description = "用户名称")
@TableField(value="USERNAME")
private String username;
@Schema(description = "创建时间")
@TableField(value="CREATEDATE")
private Long createdate;
@Schema(description = "审批意见")
@TableField(value="TASKCOMMENT")
private String taskcomment;
@Schema(description = "审批不通过原因")
@TableField(value="REASON")
private String reason;
@Schema(description = "审批不通过处理方式")
@TableField(value="PROCESSMETHOD")
private String processMethod;
//保存当前登录用户的数据权限范围的搜索条件
@TableField(exist = false)

@ -1,8 +1,6 @@
package cn.jyjz.xiaoyao.oa.from.service;
import cn.jyjz.flowable.domain.vo.FlowTaskVO;
import cn.jyjz.flowable.entity.FlowApprove;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService;
import cn.jyjz.xiaoyao.oa.from.dataobject.Userapprove;
import org.flowable.task.api.Task;
@ -14,11 +12,11 @@ public interface UserapproveService extends BaseService<Userapprove> {
/**
*
* @param approve
* @param formId
* @param userid
* @param formid
* @return truefalse
*/
public boolean save(UserToken userToken, FlowApprove approve, Task task,String formId);
public boolean save(String userid, FlowTaskVO taskVO, Task task );
/**
*

@ -1,8 +1,6 @@
package cn.jyjz.xiaoyao.oa.from.service.impl;
import cn.jyjz.flowable.domain.vo.FlowTaskVO;
import cn.jyjz.flowable.entity.FlowApprove;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseServiceImpl;
import cn.jyjz.xiaoyao.oa.from.dataDao.UserapproveMybatisDao;
import cn.jyjz.xiaoyao.oa.from.dataobject.Userapprove;
@ -14,39 +12,37 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
*
*/
*
*/
@Service
@Slf4j
public class UserapproveServiceImpl extends BaseServiceImpl<UserapproveMybatisDao, Userapprove> implements UserapproveService {
@Autowired
private UserapproveMybatisDao userapprovemybatisdao;
public class UserapproveServiceImpl extends BaseServiceImpl<UserapproveMybatisDao, Userapprove> implements UserapproveService {
@Autowired
private UserapproveMybatisDao userapprovemybatisdao;
@Override
public boolean save(UserToken userToken, FlowApprove approve, Task taskd,String formId) {
Userapprove userapprove = new Userapprove();
userapprove.setUserid(Long.parseLong(userToken.getUserid()));
userapprove.setFormid(Long.parseLong(formId));
userapprove.setTaskname(taskd.getName());
userapprove.setTaskcomment(approve.getComment());
userapprove.setCreatedate(System.currentTimeMillis());
userapprove.setUsername(userToken.getUsername());
userapprove.setReason(approve.getFailCauseName());
userapprove.setReason(approve.getDisposeType());
if (approve.getResult()) {
userapprove.setStatshis(2);
} else {
userapprove.setStatshis(3);
}
return this.save(userapprove);
}
@Override
public boolean save(String userid, FlowTaskVO taskVO, Task taskd) {
Userapprove userapprove = new Userapprove();
userapprove.setUserid(Long.parseLong(userid));
userapprove.setFormid(Long.parseLong(taskVO.getFormid()));
userapprove.setTaskname(taskd.getName());
if(taskVO.getApprovd()){
userapprove.setStatshis(2);
}else{
userapprove.setStatshis(3);
}
@Override
public boolean delete(String formid) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("FORMID", formid);
return this.remove(queryWrapper);
}
return this.save(userapprove);
}
@Override
public boolean delete(String formid) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("FORMID",formid);
return this.remove(queryWrapper);
}
}

@ -44,10 +44,7 @@ public class FlowUnionVo {
private String category;
@ApiModelProperty(value ="状态,审批状态 1:撤销 2:审批中 3:审批通过 5审批未通过 ")
private Integer states;
@ApiModelProperty(value ="状态,审批状态 1:撤销 2:审批中 3:审批通过 5审批未通过 ")
private String statesText;
@ApiModelProperty(value ="流程定义id")
private String processdefinitionid;

@ -1,27 +0,0 @@
package cn.jyjz.xiaoyao.oa.from.vo;
import lombok.Data;
import java.util.List;
/**
* ClassName RepeatedContentVo$.java
* Description:
* Author scl.
* Date 2024/3/21 14:14
*/
@Data
public class RepeatedContentVo {
private String id;
private String content;
private Integer count;
private String imgUrl;
private List<RepeatedTaskVo> repeatedTaskList;
}

@ -1,31 +0,0 @@
package cn.jyjz.xiaoyao.oa.from.vo;
import lombok.Data;
/**
* ClassName RepeatedTaskVo$.java
* Description:
* Author scl.
* Date 2024/3/21 14:36
*/
@Data
public class RepeatedTaskVo {
private String taskId;
private String formId;
private String fromTaskId;
private String taskName;
private String nodeName;
private Integer states;
private String similarityScore;
private String fromTime;
private String updateTime;
}

@ -155,13 +155,9 @@ public class PictureSourceResult {
Map<String,Object> productName;
/**
* 访
*
*/
String companyDepartment;
/**
*
*/
Map<String,Object> manufacturer;
String manufacturer;
/**
* 访
@ -199,9 +195,5 @@ public class PictureSourceResult {
*/
Map<String,Object> extendedField;
/**
*
*/
Long submitTime;
}

@ -80,15 +80,11 @@ public class PrevailCloudApiImpl implements PrevailCloudApi {
//加密请求参数
String tenantNo = pictureSourceParameter.getTenantNo().toString();
String json = JSONObject.toJSONString(queryParam);
System.out.println(json);
RequestData requestData = ApiHelper.buildRequest(tenantNo, apiConfig.getAccessKey(), apiConfig.getAccessCode(),json);
//组装请求参数
String url = apiConfig.getInterfaceDomain()+pictureSourceUrl;
String requestBodyJson = JSONObject.toJSONString(requestData);
// String requestBodyJson = "{\"accessKey\":\"7390F0221A1A73D8E13F8C8BB96F33B0\",\"data\":\"gzUtN5Mt24_fbDDMK3wLop8Tgu68xLCVy3Wzp9BcXnkxnCiPg_D2TNEXnQ68-Y-GhGYYcD7Iwg8juZTx1m5v4NkDvKvEwdvjQvZnMDTRYbqtHrwgVLAvUGotIMTckDY67yo2Ku52vWedjYpzzDseHwiIGVcIl-u1CljEbyjLzJzIf6oXfD7qKjOYnxKjfjp11k0IlvsPdS-mgNXTHcBei5jOFrYmZrE2y4v9bI5n1QE\",\"signature\":\"0bmIbhhybDcGeyX4ao5gSPZQeaY8G2JRh3nRt7NC7qw\",\"tenantCode\":\"1673196576094806016\",\"timestamp\":1711971774448}";
//入参
System.out.println("入参数据:"+requestBodyJson);
HttpParamers httpParamers = new HttpParamers(HttpMethod.POST);
httpParamers.setJsonParamer(requestBodyJson);
//发起请求

@ -37,18 +37,18 @@ public class ApiTestController {
String pageNo = request.getParameter("pageNo");
PictureSourceParameter pictureSourceParameter = new PictureSourceParameter();
DateTime dateTime = DateUtil.parse(beginStr+" 00:00:00","yyyy-MM-dd HH:mm:ss");
// DateTime dateTime = DateUtil.parse("2024-03-31 07:00:000","yyyy-MM-dd HH:mm:ss");
// DateTime dateTime = DateUtil.parse(beginStr+" 00:00:00","yyyy-MM-dd HH:mm:ss");
DateTime dateTime = DateUtil.parse("2024-03-31 07:00:000","yyyy-MM-dd HH:mm:ss");
Instant binstant = dateTime.toInstant();
DateTime dateTime1 = DateUtil.parse(endStr+" 00:00:00","yyyy-MM-dd HH:mm:ss");
// DateTime dateTime1 = DateUtil.parse("2024-03-31 09:00:00","yyyy-MM-dd HH:mm:ss");
// DateTime dateTime1 = DateUtil.parse(" 00:00:00","yyyy-MM-dd HH:mm:ss");
DateTime dateTime1 = DateUtil.parse("2024-03-31 09:00:00","yyyy-MM-dd HH:mm:ss");
Instant einstant = dateTime1.toInstant();
pictureSourceParameter.setStartTime(Date.from(binstant));
pictureSourceParameter.setEndTime(Date.from(einstant));
pictureSourceParameter.setPageNo(Integer.parseInt(pageNo));
pictureSourceParameter.setPageSize(Integer.parseInt(pageSize));
pictureSourceParameter.setTenantNo(1714548920583360512L);
pictureSourceParameter.setAccountNo(1714887674875514880L);
pictureSourceParameter.setAccountNo(1714559587755397120L);
try {
ApiPage<PictureSourceResult> apiPage = prevailCloudApi.pullPictureSource(pictureSourceParameter);
List<PictureSourceResult> listResult= apiPage.getRecords();

@ -1,87 +0,0 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.jyjz.flowable.service.IFlowTaskService;
import cn.jyjz.flowable.utils.PageUtils;
import cn.jyjz.xiaoyao.admin.dataobject.User;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro;
import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService;
import cn.jyjz.xiaoyao.framework.security.sms.MsmService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* ocr
*
* @author
* AI
* @Date 2024-03-17 19:53:30
*/
@CrossOrigin
@RestController
@RequestMapping("/ocr/aitools")
public class OcrAiApprovalTools {
@Autowired
private UserTokenService userTokenService;
@Autowired
IOcrSearchHistoryService iocrsearchhistoryservice;
/**
*
*
* @param request
* @return
*/
@RequestMapping(value = "/toolsCount", method = RequestMethod.GET)
public ResultVo toolsCount(HttpServletRequest request) {
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
ResultVo toolscount = iocrsearchhistoryservice.toolscount(tenantId,userToken.getUserid(),request);
return toolscount;
}
/*
ai
*/
@RequestMapping(value = "/aiApprovaltools", method = RequestMethod.GET)
public ResultVo aiApprovaltools(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
Map<Object, Object> selectaisp = iocrsearchhistoryservice.selectaisp(userToken.getUserid(), taskid,userToken.getNodeType());
return ResultVoUtil.success(selectaisp);
}
@RequestMapping(value = "/aiApprovaltoolsClearmark", method = RequestMethod.GET)
public ResultVo aiApprovaltoolsClearmark(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid) {
ResultVo clearmark = iocrsearchhistoryservice.clearmark(taskid);
return clearmark;
}
}

@ -0,0 +1,156 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.admin.service.TenantService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.oa.from.dataobject.Category;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrArea;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPlan;
import cn.jyjz.xiaoyao.ocr.service.OcrAreaService;
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import liquibase.pro.packaged.S;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@RestController
@RequestMapping("/ocr/ocrarea")
public class OcrAreaController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private OcrAreaService ocrAreaService;
@Resource
private TenantService tenantService;
@Resource
private UserTokenService userTokenService;
@Resource
private UserService userService;
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@ApiOperation(value="ocr_任务计划列表查询", notes="ocr_任务计划列表查询无分页")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping("/listall")
public ResultVo<List<OcrArea>> listall(HttpServletRequest request, HttpServletResponse response) throws IOException{
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrArea ocrArea = new OcrArea();
QueryWrapper<OcrArea> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrArea);
queryWrapper.eq("TENANTID",tenantId);
queryWrapper.orderByDesc("REORDER");
List<OcrArea> page = this.ocrAreaService.queryListNoPage(queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/list")
public ResultVo<IPage<OcrArea>> listOcrArea(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrArea ocrarea = new OcrArea();
QueryWrapper<OcrArea> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrarea);
IPage<OcrArea> page = this.ocrAreaService.selectSearchListPage(paramterPage,queryWrapper);
for(OcrArea ocrArea:page.getRecords()){
ocrArea.setTenant(tenantService.selectDtoById(ocrArea.getTenantid()));
}
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@PostMapping("/save")
public ResultVo saveOcrArea(HttpServletResponse response,HttpServletRequest request,OcrArea tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setCreateby(userToken.getLoginname());
tab.setCreatetime(System.currentTimeMillis());
this.ocrAreaService.save(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@PostMapping("/edit")
public ResultVo editOcrArea(HttpServletResponse response,HttpServletRequest request,OcrArea tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setUpdateby(userToken.getLoginname());
tab.setUpdatetime(System.currentTimeMillis());
this.ocrAreaService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateOcrArea(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrArea dto = this.ocrAreaService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrArea(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrAreaService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
}

@ -0,0 +1,75 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.ocr.service.OcrAreaService;
import com.alibaba.fastjson.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@Controller
@RequestMapping("/backstage/oa/ocrareaHtml")
public class OcrAreaHtmlController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrAreaService ocrAreaService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/toList")
public String toListOcrArea(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrarea/list";
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/toSave")
public String toSaveOcrArea(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrarea/add";
}
/**
*ID
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/toEdit/{id}")
public String toEditOcrArea(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
request.setAttribute("id", id);
return "/backstage/oa/ocr/ocrarea/edit";
}
}

@ -117,7 +117,6 @@ public class OcrBooknoteController extends BaseController{
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("CREATEUSER",userToken.getLoginname());
queryWrapper.eq("TENANTID",tenantId);
queryWrapper.orderByDesc("CREATEDATE");
List<OcrBooknote> list = ocrBooknoteService.list(queryWrapper);
if(null == list || list.isEmpty()){

@ -1,188 +0,0 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.hutool.core.collection.CollUtil;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrCheckDuplicate;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrCheckDuplicateResult;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.service.IOcrCheckDuplicateResultService;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.service.IOcrCheckDuplicateService;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureService;
import cn.jyjz.xiaoyao.ocr.util.DataUtil;
import cn.jyjz.xiaoyao.ocr.util.SearchConfigEnum;
import cn.jyjz.xiaoyao.ocr.util.SearchParaFormatting;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*
*
* @author hugh(shuli.yao) 1397940314@qq.com
* @version 1.0
* @date 2024/3/25 1:31
*/
@RestController
@RequestMapping("/ocr/checkDuplicate")
public class OcrCheckDuplicateController {
@Resource
private UserTokenService userTokenService;
@Resource
private IOcrCheckDuplicateService ocrCheckDuplicateService;
@Resource
private OcrPictureService ocrPictureService;
@ApiOperation(value = "一键查重", notes = "一键查重")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping(value = "/openCheckDuplicate")
public ResultVo checkDuplicate(OcrPicture ocrPicture, HttpServletRequest req) {
//获取当前登录人
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
QueryWrapper<OcrPicture> queryWrapper = new QueryWrapper<>();
//根据参数枚举获取检索参数并映射为数据库的字段的key-v map
Map<String, Object> paraMap = new HashMap<>();
for (SearchConfigEnum config : SearchConfigEnum.values()) {
String searchvalue = req.getParameter(config.getId());
if (StringUtils.isNotBlank(searchvalue)) {
paraMap.put(config.getMeaning(), searchvalue);
}
}
//调用查询参数解析方法解析为queryWrapper
queryWrapper = SearchParaFormatting.searchParaParse(queryWrapper, paraMap);
queryWrapper.eq("tenant_id", tenantId);
queryWrapper.eq("suspiciousfile", "0");
queryWrapper.orderBy(true,true,"submit_date_timestamp");
List<OcrPicture> pageList = ocrPictureService.listPage(queryWrapper);
if (null != pageList && !pageList.isEmpty()) {
if (pageList.size() == 1) {
return ResultVoUtil.error("查重数据至少要有两条。");
} else {
return ocrCheckDuplicateService.duplicateCheck(pageList, tenantId, userToken, req, paraMap);
}
} else {
return ResultVoUtil.error("没有查重数据。");
}
}
@ApiOperation(value = "获取查重任务接口异步状态", notes = "获取查重任务接口异步状态")
@GetMapping("/getCheckDuplicateStatus")
@ResponseBody
public ResultVo getCheckDuplicateStatus(HttpServletResponse response, HttpServletRequest request,
@RequestParam(name = "checkDuplicateNo", required = true) String checkDuplicateNo) throws IOException {
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
if (StringUtils.isBlank(checkDuplicateNo)) {
return ResultVoUtil.error("查重编号不能为空");
}
OcrCheckDuplicate dto = this.ocrCheckDuplicateService.getCheckDuplicateStatus(checkDuplicateNo);
if (null != dto) {
return ResultVoUtil.success(dto);
} else {
return ResultVoUtil.error();
}
}
/**
*
*
* @param request
* @return
*/
@GetMapping(value = "/getLastCheckNo")
public ResultVo getLastCheckNo(HttpServletRequest request) {
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
String lastCheckNo = this.ocrCheckDuplicateService.getLastCheckNo(tenantId);
if (!StringUtils.isBlank(lastCheckNo)) {
return ResultVoUtil.success(lastCheckNo);
} else {
return ResultVoUtil.success();
}
}
/**
*
*
* @param request
* @return
*/
@GetMapping(value = "/removeCheckDuplicate")
public ResultVo removeCheckDuplicate(HttpServletRequest request, @RequestParam(name = "checkDuplicateNo", required = true) String checkDuplicateNo) {
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
Boolean result = this.ocrCheckDuplicateService.removeCheckDuplicate(checkDuplicateNo, tenantId);
if (result) {
return ResultVoUtil.success("取消查重任务成功!");
}
return ResultVoUtil.error("取消任务失败!");
}
@ApiOperation(value = "查重图片分页列表查询", notes = "根据查重任务编号,返回查重任务图片结果")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path", name = "checkDuplicateNo", value = "查重任务编号", dataType = "String", required = true)
})
@GetMapping(value = "/queryPageListByCheckNo")
public ResultVo<IPage<OcrPicture>> queryPageListByCheckNo(@RequestParam(name = "checkDuplicateNo") String checkDuplicateNo,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
IPage<OcrPicture> pageList = ocrCheckDuplicateService.queryPageListByCheckNo(checkDuplicateNo,tenantId,pageNo,pageSize);
return ResultVoUtil.success(pageList);
}
}

@ -4,6 +4,8 @@ import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUpuser;
import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -59,26 +61,4 @@ public class OcrDictionaryController {
}
return new ResultVo<>(ResultVo.ERROR,"根据field查询不到字典组!");
}
/**
*valuelable
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/getLabelByValue")
@ResponseBody
public ResultVo<IPage<OcrDictionary>> getLabelByValue(HttpServletResponse response,
HttpServletRequest request,
@RequestParam(name="field", defaultValue="upName",required = true) String field,
@RequestParam(name="value", defaultValue="",required = true) String value) {
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
String result= ocrDictionaryService.queryLabelByValue(field,value,tenantId);
return new ResultVo<>(ResultVo.ERROR,result);
}
}

@ -74,7 +74,7 @@ public class OcrFieldController extends BaseController {
*/
@ApiOperation(value="字段新增和修改", notes="字段新增和修改")
@PostMapping(value = "/saveOrUpdate")
public ResultVo saveOrUpdate(@ApiParam(value = "字段信息", required = true) @RequestBody OcrFieldVo ocrFieldVo) {
public ResultVo saveOrUpdate(@ApiParam(value = "字段信息", required = true) OcrFieldVo ocrFieldVo) {
try {
OcrField ocrField = new OcrField();
ocrField.setName(ocrFieldVo.getName());

@ -1,6 +1,5 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.hutool.core.bean.BeanUtil;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
@ -10,7 +9,6 @@ import cn.jyjz.xiaoyao.ocr.dataobject.OcrMsg;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrMsgRead;
import cn.jyjz.xiaoyao.ocr.service.IOcrMsgService;
import cn.jyjz.xiaoyao.ocr.util.PageRequest;
import cn.jyjz.xiaoyao.ocr.vo.OcrMsgVO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageInfo;
import io.swagger.annotations.ApiOperation;
@ -21,11 +19,9 @@ import org.springframework.web.bind.annotation.RequestParam;
import javax.servlet.http.HttpServletRequest;
import cn.jyjz.xiaoyao.ocr.service.IOcrMsgReadService;
import java.sql.Array;
import java.text.SimpleDateFormat;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* ocr
@ -71,8 +67,7 @@ public class OcrMsgReadController {
pageQuery.setPageSize(pageSize);
PageInfo<OcrMsgVO> findPage = iocrmsgservice.selectPage(pageQuery,userToken.getUserid(),msgCategory);
PageInfo<List<Map<Object, String>>> findPage = iocrmsgservice.selectPage(pageQuery,userToken.getUserid(),msgCategory);
//执行查询方法
// return new ResponseEntity<Object>(findPage, HttpStatus.OK);
@ -102,15 +97,6 @@ public class OcrMsgReadController {
return ResultVoUtil.success(selectone);
}
@ApiOperation(value = "消息轮询", notes = "消息轮询")
@RequestMapping(value = "/msgPolling", method = RequestMethod.GET)
public ResultVo msgPolling(HttpServletRequest request) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
//获取当前用户所有未读消息
int count = iocrmsgservice.queryUnreadMsgCount(userToken.getUserid());
return ResultVoUtil.success(count);
}
/**
*
@ -118,21 +104,20 @@ public class OcrMsgReadController {
* @return
*/
@ApiOperation(value = "消除未读所有", notes = "消除未读所有")
@RequestMapping(value = "eliminateUnreadfull", method = RequestMethod.GET)
public ResultVo eliminateUnreadfull(HttpServletRequest request, @RequestParam(value = "msgCategory", required = true)String msgCategory) {
@RequestMapping(value = "eliminateUnreadfull", method = RequestMethod.POST)
public ResultVo eliminateUnreadfull(HttpServletRequest request, @RequestParam(value = "msgCategory", required = false)String msgCategory) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
QueryWrapper<OcrMsg> wrapperlist = new QueryWrapper<>();
wrapperlist.select("id").eq("msg_category",msgCategory).eq("send_status","1").and(wrapper->{
wrapper.eq("receive_user_type",2).or().apply(" FIND_IN_SET('"+userToken.getUserid()+"',receive_user_ids)");
});
wrapperlist.select("id").eq("msg_category",msgCategory).eq("send_status","1").apply(" FIND_IN_SET('"+userToken.getUserid()+"',receive_user_ids)");
QueryWrapper<OcrMsgRead> wrapperone = new QueryWrapper<>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSSS");
List<OcrMsg> list = iocrmsgservice.list(wrapperlist);
for (OcrMsg msg:list){
QueryWrapper<OcrMsgRead> wrapperone = new QueryWrapper<>();
wrapperone.eq("msg_id", msg.getId()).eq("user_id",userToken.getUserid());
OcrMsgRead one = ocrMsgReadService.getOne(wrapperone);
if(null==one) {
@ -151,32 +136,26 @@ public class OcrMsgReadController {
}
@ApiOperation(value = "消除未读单个", notes = "消除未读单个")
@RequestMapping(value = "eliminateUnreadone", method = RequestMethod.GET)
public ResultVo eliminateUnreadone(HttpServletRequest request, @RequestParam(value = "msgid", required = true)String msgid) {
@RequestMapping(value = "eliminateUnreadone", method = RequestMethod.POST)
public ResultVo eliminateUnreadone(HttpServletRequest request, @RequestParam(value = "msgid", required = false)String msgid) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSSS");
QueryWrapper<OcrMsgRead> wrapperone = new QueryWrapper<>();
wrapperone.eq("msg_id", msgid).eq("user_id",userToken.getUserid());
OcrMsgRead one = ocrMsgReadService.getOne(wrapperone);
if(null==one) {
OcrMsgRead ocrmsgread=new OcrMsgRead();
ocrmsgread.setId(Long.valueOf(sdf.format(System.currentTimeMillis())));
ocrmsgread.setMsgId(Long.valueOf(msgid));
ocrmsgread.setUserId(Long.valueOf(userToken.getUserid()));
ocrmsgread.setReadFlag(1);
ocrmsgread.setReadTime(System.currentTimeMillis());
ocrMsgReadService.save(ocrmsgread);
return ResultVoUtil.success(ResultVo.SUCCESS);
}
OcrMsgRead ocrmsgread=new OcrMsgRead();
ocrmsgread.setId(Long.valueOf(sdf.format(System.currentTimeMillis())));
ocrmsgread.setMsgId(Long.valueOf(msgid));
ocrmsgread.setUserId(Long.valueOf(userToken.getUserid()));
ocrmsgread.setReadFlag(1);
ocrmsgread.setReadTime(System.currentTimeMillis());
return ResultVoUtil.success(ResultVo.SUCCESS);
boolean save = ocrMsgReadService.save(ocrmsgread);
//此处需要手工处理 返回需要将修改后的数据返回
// return new ResponseEntity<Object>(save,HttpStatus.OK);
return ResultVoUtil.success(save);
}
}

@ -1,8 +1,8 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
import java.util.Arrays;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -24,12 +24,9 @@ import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.service.OcrPackagetaskService;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureService;
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
import cn.jyjz.xiaoyao.ocr.vo.OcrPackagetaskVo;
import cn.jyjz.xiaoyao.upload.upload.UploadSpringUtil;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@ -40,7 +37,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.lang.reflect.Field;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
@ -90,7 +87,7 @@ public class OcrPackagetaskController extends BaseController{
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping(value = "/list")
public ResultVo<IPage<Map<String, Object>>> queryPageList(OcrPackagetask ocrPackagetask,
public ResultVo<IPage<OcrPackagetask>> queryPageList(OcrPackagetask ocrPackagetask,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest request) {
@ -112,55 +109,9 @@ public class OcrPackagetaskController extends BaseController{
}
Page<OcrPackagetask> page = new Page<OcrPackagetask>(pageNo, pageSize);
IPage<OcrPackagetask> pageList = ocrPackagetaskService.page(page, queryWrapper);
List<Map<String, Object>> ocrPackagetaskVoList = new ArrayList<>();
for (OcrPackagetask one : pageList.getRecords()) {
Map<String, Object> resultMap = new HashMap<>();
OcrPackagetaskVo ocrPackagetaskVo = new OcrPackagetaskVo();
ocrPackagetaskVo.setId(one.getId().toString());
ocrPackagetaskVo.setCreateBy(one.getCreateBy());
ocrPackagetaskVo.setCreateTime(one.getCreateTime());
ocrPackagetaskVo.setUpdateBy(one.getUpdateBy());
ocrPackagetaskVo.setUpdateTime(one.getUpdateTime());
ocrPackagetaskVo.setTenantId(one.getTenantId());
ocrPackagetaskVo.setPackagename(one.getPackagename());
ocrPackagetaskVo.setPictureno(one.getPictureno());
ocrPackagetaskVo.setSimilaritys(one.getSimilaritys());
ocrPackagetaskVo.setSearchtimes(one.getSearchtimes());
ObjectMapper ocrMapper = new ObjectMapper();
resultMap = ocrMapper.convertValue(ocrPackagetaskVo, Map.class);
if(StringUtils.isNotBlank(one.getJson())){
ObjectMapper mapper = new ObjectMapper();
try {
Map<String, Object> jsonMap = mapper.readValue(one.getJson(), new TypeReference<Map<String, Object>>() {});
resultMap.putAll(jsonMap);
} catch (IOException e) {
e.printStackTrace();
}
}
ocrPackagetaskVoList.add(resultMap);
}
IPage<Map<String, Object>> newPageList = new Page<>(pageList.getCurrent(), pageList.getSize(), pageList.getTotal());
newPageList.setRecords(ocrPackagetaskVoList);
return ResultVoUtil.success(newPageList);
return ResultVoUtil.success(pageList);
}
public static Map<String, Object> convertObjectToMap(Object obj) {
Map<String, Object> result = new HashMap<>();
Field[] fields = obj.getClass().getDeclaredFields();
for (Field field : fields) {
field.setAccessible(true); // 允许访问私有字段
try {
result.put(field.getName(), field.get(obj));
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return result;
}
/**
*form
*mail.zhangyong@gmail.com

@ -13,8 +13,9 @@ import cn.jyjz.xiaoyao.admin.service.LogService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureclass;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureService;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureclassService;
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
import cn.jyjz.xiaoyao.ocr.util.DataUtil;
import cn.jyjz.xiaoyao.ocr.util.SearchConfigEnum;
@ -48,6 +49,8 @@ public class OcrPictureController extends BaseController {
@Resource
private OcrPictureService ocrPictureService;
@Resource
private OcrPictureclassService ocrPictureclassService;
@Resource
private OcrTaskchildPictureService ocrTaskchildPictureService;
@Resource
private UserTokenService userTokenService;
@ -118,11 +121,12 @@ public class OcrPictureController extends BaseController {
@ApiImplicitParam(paramType = "path", name = "search_month", value = "搜索时间21,一周内22两周内1进一个月2:进两个月3近三个月、6近六个月、9近九个月、12近12个月", required = true),
@ApiImplicitParam(paramType = "path", name = "search_history", value = "是否查询历史记录0不查询1查询", required = true)
})
@GetMapping(value = "/checkHeavy")
public ResultVo checkHeavy(OcrPicture ocrPicture, HttpServletRequest req) {
@GetMapping(value = "/createorder")
public ResultVo createorder(OcrPicture ocrPicture,
HttpServletRequest req) {
//获取当前登录人
//UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
@ -136,7 +140,7 @@ public class OcrPictureController extends BaseController {
String search_history = req.getParameter("search_history");
//任务包名称
//String buessinessno = req.getParameter("buessinessno");
String buessinessno = req.getParameter("buessinessno");
//搜索时间段
// String search_month = req.getParameter("search_month");
@ -172,71 +176,14 @@ public class OcrPictureController extends BaseController {
if (null != pageList && !pageList.isEmpty()) {
if (pageList.size() == 1) {
return ResultVoUtil.error("查重数据至少要有两条。");
} else {
return ocrPictureService.createPackageTask(pageList, tenantId, userToken, search_month, req, buessinessno);
}
}
ocrPictureService.createTaskChild(pageList, pageList.get(0).getTenantId().toString(), req);
return ResultVoUtil.error("没有查重数据。");
}
/**
*
*
* @param req
* @return
*/
@ApiOperation(value = "生成任务包", notes = "生成任务包")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path", name = "search_month", value = "搜索时间21,一周内22两周内1进一个月2:进两个月3近三个月、6近六个月、9近九个月、12近12个月", required = true)
})
@GetMapping(value = "/createorder")
public ResultVo createorder(OcrPicture ocrPicture, HttpServletRequest req) {
//获取当前登录人
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
QueryWrapper<OcrPicture> queryWrapper = new QueryWrapper<>();
//任务包名称
String buessinessno = req.getParameter("buessinessno");
String search_month = req.getParameter("search_month");
if (StringUtils.isNotBlank(search_month) && Integer.parseInt(search_month) <= 12 && Integer.parseInt(search_month) > 0) {
queryWrapper.le("create_time", DataUtil.afterDateByMonth(Integer.parseInt(search_month)));
}
//根据参数枚举获取检索参数并映射为数据库的字段的key-v map
Map<String, Object> paraMap = new HashMap<>();
for (SearchConfigEnum config : SearchConfigEnum.values()) {
String searchvalue = req.getParameter(config.getId());
if (StringUtils.isNotBlank(searchvalue)) {
paraMap.put(config.getMeaning(), searchvalue);
}
}
//调用查询参数解析方法解析为queryWrapper
queryWrapper = SearchParaFormatting.searchParaParse(queryWrapper, paraMap);
queryWrapper.eq("tenant_id", tenantId);
List<OcrPicture> pageList = ocrPictureService.listPage(queryWrapper);
if (null != pageList && !pageList.isEmpty()) {
return ocrPictureService.createTaskChild(pageList, tenantId, userToken, search_month, req, buessinessno);
} else {
return ResultVoUtil.error("没有查重数据。");
}
}
/**
*
*
@ -264,39 +211,18 @@ public class OcrPictureController extends BaseController {
return ResultVoUtil.error("租户主键不能为空");
}
QueryWrapper<OcrPicture> queryWrapper = new QueryWrapper<>();
String search_month = req.getParameter("search_month");
String ordertype = req.getParameter("ordertype");
queryWrapper.eq("suspiciousfile", "0");
if (StringUtils.isNotBlank(ordertype)) {
if (ordertype.equals("asc")) {
queryWrapper.orderByAsc("similarity_score");
} else {
queryWrapper.orderByDesc("similarity_score");
}
}
//按时间排序
String orderByTime = req.getParameter("orderByTime");
if (StringUtils.isNotBlank(orderByTime)) {
if (orderByTime.equals("asc")) {
queryWrapper.orderByAsc("submit_date_timestamp");
} else {
queryWrapper.orderByDesc("submit_date_timestamp");
}
//是否查询历史记录
String search_history = req.getParameter("search_history");
//判断是否需要查询历史记录
if (search_history.equals("0")) {
queryWrapper.eq("taskstatus", search_history);
}
String search_month = req.getParameter("search_month");
if (StringUtils.isNotBlank(search_month) && Integer.parseInt(search_month) <= 12 && Integer.parseInt(search_month) > 0) {
queryWrapper.ge("create_time", DataUtil.afterDateByMonth(Integer.parseInt(search_month)));
}
//提报人模糊搜索
String upUserName = req.getParameter("upUserName");
if(StringUtils.isNotBlank(upUserName)){
queryWrapper.like("upName",upUserName);
queryWrapper.le("create_time", DataUtil.afterDateByMonth(Integer.parseInt(search_month)));
}
//根据参数枚举获取检索参数并映射为数据库的字段的key-v map
@ -314,6 +240,14 @@ public class OcrPictureController extends BaseController {
Page<OcrPicture> page = new Page<OcrPicture>(pageNo, pageSize);
IPage<OcrPicture> pageList = ocrPictureService.page(page, queryWrapper);
for (OcrPicture ocrPicture1 : pageList.getRecords()) {
if (StringUtils.isNotBlank(ocrPicture1.getPictureclassid())) {
OcrPictureclass ocrPictureclass = this.ocrPictureclassService.getById(ocrPicture1.getPictureclassid());
ocrPicture1.setOcrPictureclass(ocrPictureclass);
}
}
return ResultVoUtil.success(pageList);
}
@ -393,29 +327,4 @@ public class OcrPictureController extends BaseController {
return ResultVoUtil.success();
}
/**
*
*
* @return
*/
@GetMapping(value = "/getPackagePicture")
public ResultVo getPackagePictureInfo(@RequestParam(name = "checkDuplicateId") String checkDuplicateId,
@RequestParam(name = "pictureId", required = false) String pictureId,
HttpServletRequest req) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
OcrPicture result = ocrPictureService.getPackagePictureInfo(checkDuplicateId, pictureId,userToken);
return ResultVoUtil.success(result);
}
/**
* id1,2,3
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@GetMapping("/getPictureDetail")
public ResultVo getPictureDetail(@RequestParam(value = "pictureId") String pictureId, HttpServletRequest request) throws IOException {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
return ResultVoUtil.success(ocrTaskchildPictureService.getPictureDetail(pictureId, userToken));
}
}

@ -0,0 +1,158 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.admin.service.TenantService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrArea;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureclass;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureclassService;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@Api(tags="ocr-分类管理")
@RestController
@RequestMapping("/ocr/ocrPictureclass")
public class OcrPictureclassController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private OcrPictureclassService ocrPictureclassService;
@Resource
private TenantService tenantService;
@Resource
private UserTokenService userTokenService;
@Resource
private UserService userService;
/**
*
* @return
*/
//@AutoLog(value = "ocr_pictureclass-分页列表查询")
@ApiOperation(value="分类列表", notes="分类列表,无分页")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping(value = "/rootList")
public ResultVo<List<OcrPictureclass>> rootList(HttpServletRequest request, HttpServletResponse response) {
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrPictureclass ocrpictureclass = new OcrPictureclass();
QueryWrapper<OcrPictureclass> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrpictureclass);
queryWrapper.eq("TENANTID",tenantId);
queryWrapper.orderByDesc("REORDER");
List<OcrPictureclass> page = this.ocrPictureclassService.queryListNoPage(queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/list")
public ResultVo<IPage<OcrPictureclass>> listOcrPictureclass(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrPictureclass ocrpictureclass = new OcrPictureclass();
QueryWrapper<OcrPictureclass> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrpictureclass);
IPage<OcrPictureclass> page = this.ocrPictureclassService.selectSearchListPage(paramterPage,queryWrapper);
for(OcrPictureclass ocrPictureclass:page.getRecords()){
ocrPictureclass.setTenant(tenantService.selectDtoById(ocrPictureclass.getTenantid()));
}
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/save")
public ResultVo saveOcrPictureclass(HttpServletResponse response,HttpServletRequest request,OcrPictureclass tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setCreateby(userToken.getLoginname());
tab.setCreatetime(System.currentTimeMillis());
this.ocrPictureclassService.save(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/edit")
public ResultVo editOcrPictureclass(HttpServletResponse response,HttpServletRequest request,OcrPictureclass tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setUpdateby(userToken.getLoginname());
tab.setUpdatetime(System.currentTimeMillis());
this.ocrPictureclassService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateOcrPictureclass(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrPictureclass dto = this.ocrPictureclassService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrPictureclass(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrPictureclassService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
}

@ -0,0 +1,75 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureclassService;
import com.alibaba.fastjson.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@Controller
@RequestMapping("/backstage/oa/ocrpictureclassHtml")
public class OcrPictureclassHtmlController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrPictureclassService ocrPictureclassService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/toList")
public String toListOcrPictureclass(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrpictureclass/list";
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/toSave")
public String toSaveOcrPictureclass(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrpictureclass/add";
}
/**
*ID
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/toEdit/{id}")
public String toEditOcrPictureclass(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
request.setAttribute("id", id);
return "/backstage/oa/ocr/ocrpictureclass/edit";
}
}

@ -0,0 +1,113 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicturejob;
import cn.jyjz.xiaoyao.ocr.service.OcrPicturejobService;
import com.alibaba.fastjson.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@RestController
@RequestMapping("/backstage/jifen/ocrpicturejob")
public class OcrPicturejobController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrPicturejobService ocrPicturejobService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/list")
public ResultVo<IPage<OcrPicturejob>> listOcrPicturejob(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrPicturejob ocrpicturejob = new OcrPicturejob();
QueryWrapper<OcrPicturejob> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrpicturejob);
IPage<OcrPicturejob> page = this.ocrPicturejobService.selectSearchListPage(paramterPage,queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/save")
public ResultVo saveOcrPicturejob(HttpServletResponse response,HttpServletRequest request,OcrPicturejob tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrPicturejobService.save(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/edit")
public ResultVo editOcrPicturejob(HttpServletResponse response,HttpServletRequest request,OcrPicturejob tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrPicturejobService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateOcrPicturejob(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrPicturejob dto = this.ocrPicturejobService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrPicturejob(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrPicturejobService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
}

@ -4,6 +4,7 @@ import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.ocr.service.OcrPicturejobService;
import com.alibaba.fastjson.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -27,6 +28,8 @@ public class OcrPicturejobHtmlController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrPicturejobService ocrPicturejobService;
@Autowired
private UserTokenService userTokenService;

@ -0,0 +1,159 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.admin.service.TenantService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureclass;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicturetype;
import cn.jyjz.xiaoyao.ocr.service.OcrPicturetypeService;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@RestController
@RequestMapping("/ocr/ocrPicturetype")
public class OcrPicturetypeController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private OcrPicturetypeService ocrPicturetypeService;
@Resource
private UserTokenService userTokenService;
@Resource
private UserService userService;
@Resource
private TenantService tenantService;
/**
*
*
* @param req
* @return
*/
//@AutoLog(value = "orc_picturetype-分页列表查询")
@ApiOperation(value="图片类型列表", notes="图片类型列表,无分页")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping(value = "/rootList")
public ResultVo<List<OcrPicturetype>> queryPageList(HttpServletRequest req) {
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(req, "search_");
OcrPicturetype ocrpicturetype = new OcrPicturetype();
QueryWrapper<OcrPicturetype> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrpicturetype);
queryWrapper.eq("TENANTID",tenantId);
queryWrapper.orderByDesc("REORDER");
List<OcrPicturetype> list = this.ocrPicturetypeService.queryListNoPage(queryWrapper);
return ResultVoUtil.success(list);
}
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/list")
public ResultVo<IPage<OcrPicturetype>> listOcrPicturetype(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrPicturetype ocrpicturetype = new OcrPicturetype();
QueryWrapper<OcrPicturetype> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrpicturetype);
IPage<OcrPicturetype> page = this.ocrPicturetypeService.selectSearchListPage(paramterPage,queryWrapper);
for(OcrPicturetype ocrPicturetype:page.getRecords()){
ocrPicturetype.setTenant(tenantService.selectDtoById(ocrPicturetype.getTenantid()));
}
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/save")
public ResultVo saveOcrPicturetype(HttpServletResponse response,HttpServletRequest request,OcrPicturetype tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setCreateby(userToken.getLoginname());
tab.setCreatetime(System.currentTimeMillis());
this.ocrPicturetypeService.save(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/edit")
public ResultVo editOcrPicturetype(HttpServletResponse response,HttpServletRequest request,OcrPicturetype tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setUpdateby(userToken.getLoginname());
tab.setUpdatetime(System.currentTimeMillis());
this.ocrPicturetypeService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateOcrPicturetype(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrPicturetype dto = this.ocrPicturetypeService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrPicturetype(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrPicturetypeService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
}

@ -0,0 +1,75 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.ocr.service.OcrPicturetypeService;
import com.alibaba.fastjson.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@Controller
@RequestMapping("/backstage/oa/ocrpicturetypeHtml")
public class OcrPicturetypeHtmlController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrPicturetypeService ocrPicturetypeService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/toList")
public String toListOcrPicturetype(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrpicturetype/list";
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/toSave")
public String toSaveOcrPicturetype(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrpicturetype/add";
}
/**
*ID
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/toEdit/{id}")
public String toEditOcrPicturetype(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
request.setAttribute("id", id);
return "/backstage/oa/ocr/ocrpicturetype/edit";
}
}

@ -0,0 +1,156 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.admin.service.TenantService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicturetype;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPlan;
import cn.jyjz.xiaoyao.ocr.service.OcrPlanService;
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@RestController
@RequestMapping("/ocr/ocrPlan")
public class OcrPlanController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private OcrPlanService ocrPlanService;
@Resource
private UserTokenService userTokenService;
@Resource
private UserService userService;
@Resource
private TenantService tenantService;
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@ApiOperation(value="ocr_任务计划列表查询", notes="ocr_任务计划列表查询无分页")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping("/listall")
public ResultVo<List<OcrPlan>> listall(HttpServletRequest request, HttpServletResponse response) throws IOException{
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrPlan ocrplan = new OcrPlan();
QueryWrapper<OcrPlan> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrplan);
queryWrapper.eq("TENANTID",tenantId);
queryWrapper.orderByDesc("REORDER");
List<OcrPlan> page = this.ocrPlanService.queryListNoPage(queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/list")
public ResultVo<IPage<OcrPlan>> listOcrPlan(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrPlan ocrplan = new OcrPlan();
QueryWrapper<OcrPlan> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrplan);
IPage<OcrPlan> page = this.ocrPlanService.selectSearchListPage(paramterPage,queryWrapper);
for(OcrPlan ocrPlan:page.getRecords()){
ocrPlan.setTenant(tenantService.selectDtoById(ocrPlan.getTenantid()));
}
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@PostMapping("/save")
public ResultVo saveOcrPlan(HttpServletResponse response,HttpServletRequest request,OcrPlan tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setCreateby(userToken.getLoginname());
tab.setCreatetime(System.currentTimeMillis());
this.ocrPlanService.save(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@PostMapping("/edit")
public ResultVo editOcrPlan(HttpServletResponse response,HttpServletRequest request,OcrPlan tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setUpdateby(userToken.getLoginname());
tab.setUpdatetime(System.currentTimeMillis());
this.ocrPlanService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateOcrPlan(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrPlan dto = this.ocrPlanService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrPlan(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrPlanService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
}

@ -0,0 +1,75 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.ocr.service.OcrPlanService;
import com.alibaba.fastjson.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@Controller
@RequestMapping("/backstage/oa/ocrplanHtml")
public class OcrPlanHtmlController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrPlanService ocrPlanService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/toList")
public String toListOcrPlan(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrplan/list";
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/toSave")
public String toSaveOcrPlan(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/ocrplan/add";
}
/**
*ID
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/toEdit/{id}")
public String toEditOcrPlan(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
request.setAttribute("id", id);
return "/backstage/oa/ocr/ocrplan/edit";
}
}

@ -0,0 +1,73 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.oa.from.dataobject.Category;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrProvince;
import cn.jyjz.xiaoyao.ocr.service.OcrProvinceService;
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@Api(tags="ocr_省份管理")
@RestController
@RequestMapping("/backstage/ocrnewtest/ocrprovince")
public class OcrProvinceController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrProvinceService ocrProvinceService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-03-10 23:18:35
**/
@ApiOperation(value="省份列表", notes="省份列表")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping("/listall")
public ResultVo<List<OcrProvince>> listall(HttpServletRequest request, HttpServletResponse response) throws IOException{
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
QueryWrapper<OcrProvince> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("tenantid",tenantId);
List<OcrProvince> list = this.ocrProvinceService.getProvinceAll(queryWrapper);
return ResultVoUtil.success(list);
}
}

@ -66,38 +66,38 @@ public class OcrSUserTController {
if(map.get("newPassword").equals(map.get("rePasswrod"))){
BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();
UpdateWrapper<OcrSUserT> updatewrapper = new UpdateWrapper<>();
updatewrapper.eq("MOBILE", map.get("loginname")).set("PASSWORD",bCryptPasswordEncoder.encode(map.get("newPassword")));
updatewrapper.eq("LOGINNAME", map.get("loginname")).set("PASSWORD",bCryptPasswordEncoder.encode(map.get("newPassword")));
boolean update = sUserTService.update(updatewrapper);
if(update){
// return new ResponseEntity<Object>("密码重设成功!",HttpStatus.OK);
return ResultVoUtil.success(ResultVo.SUCCESS,"密码重设成功!");
return ResultVoUtil.error(ResultVo.SUCCESS,"密码重设成功!");
}
}else{
// return new ResponseEntity<Object>("两次密码输入不一致!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"两次密码输入不一致!");
return ResultVoUtil.error(ResultVo.SUCCESS,"两次密码输入不一致!");
}
}else{
// return new ResponseEntity<Object>("请再次输入新密码!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"请再次输入新密码!");
return ResultVoUtil.error(ResultVo.SUCCESS,"请再次输入新密码!");
}
}else{
// return new ResponseEntity<Object>("请输入新密码!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"请输入新密码!");
return ResultVoUtil.error(ResultVo.SUCCESS,"请输入新密码!");
}
}else {
// return new ResponseEntity<Object>("请输入同时包含英文、数字的8~16位密码",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"请输入同时包含英文、数字的8~16位密码");
return ResultVoUtil.error(ResultVo.SUCCESS,"请输入同时包含英文、数字的8~16位密码");
}
return ResultVoUtil.error(ResultVo.ERROR);
return ResultVoUtil.error(ResultVo.SUCCESS);
}
@ApiOperation(value = "忘记密码", notes = "忘记密码")
@ -131,40 +131,40 @@ public class OcrSUserTController {
return ResultVoUtil.success(ResultVo.SUCCESS,list);
}else {
// return new ResponseEntity<Object>("验证码错误!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"验证码错误!");
return ResultVoUtil.error(ResultVo.SUCCESS,"验证码错误!");
}
}else {
// return new ResponseEntity<Object>("手机号错误!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"手机号错误!");
return ResultVoUtil.error(ResultVo.SUCCESS,"手机号错误!");
}
}else {
// return new ResponseEntity<Object>("账号不存在!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"账号不存在!");
return ResultVoUtil.error(ResultVo.SUCCESS,"账号不存在!");
}
}else {
// return new ResponseEntity<Object>("企业编码错误!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"企业编码错误!");
return ResultVoUtil.error(ResultVo.SUCCESS,"企业编码错误!");
}
}else {
// return new ResponseEntity<Object>("请输入企业编码!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"请输入企业编码!");
return ResultVoUtil.error(ResultVo.SUCCESS,"请输入企业编码!");
}
}else {
// return new ResponseEntity<Object>("请输入验证码!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"请输入验证码!");
return ResultVoUtil.error(ResultVo.SUCCESS,"请输入验证码!");
}
}else {
// return new ResponseEntity<Object>("请输入手机号!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"请输入手机号!");
return ResultVoUtil.error(ResultVo.SUCCESS,"请输入手机号!");
}
}else {
// return new ResponseEntity<Object>("请输入账号!",HttpStatus.OK);
return ResultVoUtil.error(ResultVo.ERROR,"请输入账号!");
return ResultVoUtil.error(ResultVo.SUCCESS,"请输入账号!");
}

@ -7,7 +7,6 @@ import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -16,7 +15,6 @@ import javax.servlet.http.HttpServletRequest;
import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService;
import java.util.List;
import java.util.Map;
/**
* ocr
@ -44,20 +42,13 @@ public class OcrSearchHistoryController {
*/
@RequestMapping(value = "/searchList", method = RequestMethod.GET)
public ResultVo searchList(HttpServletRequest request,
@RequestParam(value = "search", required = true) String search) {
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
@RequestParam(value = "search", required = false) String search) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
//执行查询方法
Map<Object, List<Map<String,String>>> selectsearch = ocrSearchHistoryService.selectsearch(search, userToken.getLoginname(),userToken.getUserid(),tenantId);
List<String> selectsearch = ocrSearchHistoryService.selectsearch(search, userToken.getUsername());
OcrSearchHistory ocrsearchhistory =new OcrSearchHistory();
ocrsearchhistory.setHistoryname(search);
ocrsearchhistory.setTenantId(Long.valueOf(tenantId));
ocrsearchhistory.setUserid(Long.valueOf(userToken.getUserid()));
ocrsearchhistory.setCreatedate(System.currentTimeMillis());
ocrSearchHistoryService.save(ocrsearchhistory);
@ -76,16 +67,9 @@ public class OcrSearchHistoryController {
*/
@RequestMapping(value = "/searchdelete", method = RequestMethod.DELETE)
public ResultVo searchdelete(HttpServletRequest request) {
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
QueryWrapper<OcrSearchHistory> wrapper = new QueryWrapper<>();
wrapper.eq("userid",userToken.getUserid());
wrapper.eq("tenant_id",Long.valueOf(tenantId));
//根据具体情况 判断 是否需要 进行数据返回, 默认不返回数据
ocrSearchHistoryService.remove(wrapper);
// return new ResponseEntity<Object>("true",HttpStatus.OK);
@ -100,15 +84,10 @@ public class OcrSearchHistoryController {
*/
@RequestMapping(value = "/historySearch", method = RequestMethod.GET)
public ResultVo historySearch(HttpServletRequest request) {
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
QueryWrapper<OcrSearchHistory> wrapper = new QueryWrapper<>();
wrapper.select("historyname","createdate").eq("userid",userToken.getUserid()).eq("tenant_id",Long.valueOf(tenantId)).orderByDesc("createdate").last("limit 8");
wrapper.select("historyname","createdate").eq("userid",userToken.getUserid()).orderByDesc("createdate").last("limit 8");
List<OcrSearchHistory> list = ocrSearchHistoryService.list(wrapper);
// return new ResponseEntity<List<OcrSearchHistory>>(list, HttpStatus.OK);

@ -12,7 +12,10 @@ import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchmanager;
import cn.jyjz.xiaoyao.ocr.service.OcrSearchmanagerService;
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -69,7 +72,6 @@ public class OcrSearchmanagerController extends BaseController{
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("create_by",userToken.getLoginname());
queryWrapper.eq("tenant_id",tenantId);
queryWrapper.eq("type",ocrSearchmanager.getType());
List<OcrSearchmanager> list = ocrSearchmanagerService.list(queryWrapper);
@ -80,7 +82,6 @@ public class OcrSearchmanagerController extends BaseController{
ocrSearchmanager.setCreateBy(userToken.getLoginname());
ocrSearchmanager.setCreateTime(System.currentTimeMillis());
ocrSearchmanager.setTenantId(Long.parseLong(tenantId));
ocrSearchmanager.setType(ocrSearchmanager.getType());
return ocrSearchmanagerService.save(ocrSearchmanager)?ResultVoUtil.success("添加成功!"):ResultVoUtil.error();
}
@ -96,7 +97,7 @@ public class OcrSearchmanagerController extends BaseController{
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping(value = "/query")
public ResultVo<OcrSearchmanager> queryById(HttpServletRequest req,@RequestParam(name = "type") @ApiParam(value = "类型首页0终审1", required = true) Integer type) {
public ResultVo<OcrSearchmanager> queryById(HttpServletRequest req) {
//获取当前登录人
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
@ -106,12 +107,11 @@ public class OcrSearchmanagerController extends BaseController{
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("create_by",userToken.getLoginname());
queryWrapper.eq("tenant_id",tenantId);
queryWrapper.eq("type",type);
OcrSearchmanager ocrSearchmanager = null;
List<OcrSearchmanager> list = ocrSearchmanagerService.list(queryWrapper);

@ -1,122 +0,0 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskPackage;
import cn.jyjz.xiaoyao.ocr.dto.OcrTaskPackageDto;
import cn.jyjz.xiaoyao.ocr.service.IOcrTaskPackageService;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Map;
/**
* <p>
* and
* </p>
*
* @author author
* @since 2024-03-24
*/
@RestController
@RequestMapping("/ocr/ocrTaskPackage")
public class OcrTaskPackageController extends BaseController {
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private IOcrTaskPackageService ocrTaskPackageService;
@Resource
private UserTokenService userTokenService;
/**
*
*
* @param ocrTaskPackage
* @param req
* @return
*/
@PostMapping(value = "/createPackage")
public ResultVo createPackage(@RequestBody OcrTaskPackageDto ocrTaskPackage, HttpServletRequest req) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
//租户
String tenantId = req.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
ocrTaskPackage.setTenantId(Long.parseLong(tenantId));
//校验参数包名称
if (ocrTaskPackage == null) {
return ResultVoUtil.error("参数对象为空");
}
//校验参数包名称
if (StringUtils.isBlank(ocrTaskPackage.getName())) {
return ResultVoUtil.error("任务包名称不能为空");
}
//校验参数包名称
if (StringUtils.isBlank(ocrTaskPackage.getCheckDuplicateNo())) {
return ResultVoUtil.error("查重任务编号不能为空");
}
ocrTaskPackage.setCreateBy(userToken.getUserid());
ocrTaskPackage.setCreateTime(System.currentTimeMillis());
return ocrTaskPackageService.saveTaskPackage(ocrTaskPackage);
}
/**
*
*
* @param packageId
* @param req
* @return
*/
@GetMapping(value = "/deletePackage")
public ResultVo deletePackage(@RequestParam(name = "packageId", required = true) Long packageId, HttpServletRequest req) {
OcrTaskPackage taskPackage = new OcrTaskPackage();
taskPackage.setId(packageId);
taskPackage.setIsDelete(1);
boolean b = ocrTaskPackageService.updateById(taskPackage);
if (b) {
return ResultVoUtil.success();
} else {
return ResultVoUtil.error();
}
}
/**
*
*
* @param packageName
* @param req
* @return
*/
@GetMapping(value = "/getPackageList")
public ResultVo getPackageList(@RequestParam(name = "packageName", required = false) String packageName,
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize,
HttpServletRequest req) {
String tenantId = req.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
Page<Map<String, Object>> result = ocrTaskPackageService.getPackageList(pageNo, pageSize, packageName,tenantId);
return ResultVoUtil.success(result);
}
}

@ -1,221 +0,0 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.hutool.core.collection.CollUtil;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.ocr.dataobject.*;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureService;
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestParam;
import javax.servlet.http.HttpServletRequest;
import cn.jyjz.xiaoyao.ocr.service.IOcrTaskchildDubiousFileService;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* ocr
*
* @author
* @Date 2024-03-21 19:00:57
*/
@Api(tags="ocr可疑文件控制器")
@RestController
@RequestMapping("/ocr/dubiousfile")
public class OcrTaskchildDubiousFileController {
@Autowired
private IOcrTaskchildDubiousFileService ocrTaskchildDubiousFileService;
@Autowired
private UserTokenService userTokenService;
@Autowired
OcrTaskchildPictureService ocrtaskchildpictureservice;
@Autowired
OcrPictureService ocrpictureservice;
/**
*
* @param request
* @return
*/
@ApiOperation(value="可疑文件列表查询", notes="可疑文件列表查询")
@RequestMapping(value = "/dubiousfilelist", method = RequestMethod.GET)
public ResultVo<Page<OcrTaskChildPictureVo>> dubiousfilelist(HttpServletRequest request,
@RequestParam(value = "pageNo", required = false, defaultValue = "0") Integer pageNo,
@RequestParam(value = "pageSize", required = false, defaultValue = "10") Integer pageSize,
@RequestParam(value = "orderbyname", required = true, defaultValue = "asc") String orderbyname) {
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
// QueryWrapper<OcrTaskchildDubiousFile> dubiouswrapper = new QueryWrapper<>();
// dubiouswrapper.eq("userid",userToken.getUserid());
// List<OcrTaskchildDubiousFile> list = ocrTaskchildDubiousFileService.list(dubiouswrapper);
// if(list.size()==0){
// return ResultVoUtil.success();
// }
// IPage<OcrPicture> iPage = new Page<>(Integer.valueOf(pageNo),Integer.valueOf(pageSize));
//
// QueryWrapper<OcrPicture> wrapper = new QueryWrapper<>();
// wrapper.in("ID",list.stream().map(i->i.getPictureId()).collect(Collectors.toList()));
//
//
// if(orderbyname.equals("desc")){
// wrapper.orderByDesc("create_time");
// }else {
// wrapper.orderByAsc("create_time");
// }
//
// //IPage<OcrPicture> page = ocrpictureservice.page(iPage, wrapper);
Page<OcrTaskChildPictureVo> page = ocrTaskchildDubiousFileService.dubiousfilelist(pageNo,pageSize,orderbyname,userToken,tenantId);
return ResultVoUtil.success(page);
}
/**
*
* @param request
* @return
*/
@ApiOperation(value="可疑文件列表移除", notes="可疑文件列表移除")
@RequestMapping(value = "/dubiousfileyc", method = RequestMethod.GET)
public ResultVo dubiousfileyc(HttpServletRequest request, @RequestParam(value = "pictureid", required = true) String pictureid) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
String[] cps = pictureid.split(",");
List<OcrPicture> saveList = new ArrayList<>();
List<OcrTaskchildDubiousFile> fileList = new ArrayList<>();
for (String childpictureid : cps) {
OcrPicture ocrPicture = ocrpictureservice.selectDtoById(Long.parseLong(childpictureid));
if(ocrPicture != null){
ocrPicture.setSuspiciousfile(0);
ocrPicture.setUpdateTime(System.currentTimeMillis());
saveList.add(ocrPicture);
}
QueryWrapper<OcrTaskchildDubiousFile> dubiouswrapper = new QueryWrapper<>();
dubiouswrapper.eq("userid",userToken.getUserid()).eq("picture_id",childpictureid);
OcrTaskchildDubiousFile one = ocrTaskchildDubiousFileService.getOne(dubiouswrapper);
if(one != null){
fileList.add(one);
}
}
//无对应图片信息
if(CollUtil.isEmpty(saveList)){
return ResultVoUtil.error("可疑文件不存在!");
}
ocrpictureservice.updateBatchById(saveList);
//根据具体情况 判断 是否需要 进行数据返回, 默认不返回数据
return ocrTaskchildDubiousFileService.removeByIds(fileList)?ResultVoUtil.success():ResultVoUtil.error("可疑文件不存在!");
}
/**
*
* @param request
* @return
*/
@ApiOperation(value="可疑文件列表添加", notes="可疑文件列表添加")
@RequestMapping(value = "/dubiousfileyd", method = RequestMethod.GET)
public ResultVo dubiousfileyd(HttpServletRequest request, @RequestParam(value = "pictureid", required = true) String pictureid) {
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
List<OcrTaskchildDubiousFile> list=new ArrayList<>();
String[] taskchildid1 = pictureid.toString().split(",");
for (String asd:taskchildid1){
QueryWrapper<OcrTaskchildDubiousFile> filewrapper = new QueryWrapper<>();
filewrapper.eq("picture_id",asd).eq("userid",userToken.getUserid());
OcrTaskchildDubiousFile one1 = ocrTaskchildDubiousFileService.getOne(filewrapper);
if (null==one1){
OcrTaskchildDubiousFile ocrtaskchilddubiousfile=new OcrTaskchildDubiousFile();
ocrtaskchilddubiousfile.setPictureId(Long.parseLong(asd));
ocrtaskchilddubiousfile.setTenantid(Long.parseLong(tenantId));
ocrtaskchilddubiousfile.setUserid(Long.parseLong(userToken.getUserid()));
ocrtaskchilddubiousfile.setCreatedate(System.currentTimeMillis());
QueryWrapper<OcrTaskchildPicture> wrapper = new QueryWrapper<>();
wrapper.eq("PICTUREID",asd);
OcrTaskchildPicture one = ocrtaskchildpictureservice.getOne(wrapper);
ocrtaskchilddubiousfile.setTaskchildId(one.getId());
UpdateWrapper<OcrPicture> updatewrapper = new UpdateWrapper<>();
updatewrapper.eq("ID", asd).set("suspiciousfile","1");
ocrpictureservice.update(updatewrapper);
list.add(ocrtaskchilddubiousfile);
}else {
if (!asd.equals(one1.getPictureId().toString())) {
OcrTaskchildDubiousFile ocrtaskchilddubiousfile=new OcrTaskchildDubiousFile();
ocrtaskchilddubiousfile.setPictureId(Long.parseLong(asd));
ocrtaskchilddubiousfile.setTenantid(Long.parseLong(tenantId));
ocrtaskchilddubiousfile.setUserid(Long.parseLong(userToken.getUserid()));
ocrtaskchilddubiousfile.setCreatedate(System.currentTimeMillis());
QueryWrapper<OcrTaskchildPicture> wrapper = new QueryWrapper<>();
wrapper.eq("PICTUREID",asd);
OcrTaskchildPicture one = ocrtaskchildpictureservice.getOne(wrapper);
ocrtaskchilddubiousfile.setTaskchildId(one.getId());
UpdateWrapper<OcrPicture> updatewrapper = new UpdateWrapper<>();
updatewrapper.eq("ID", asd).set("suspiciousfile","1");
ocrpictureservice.update(updatewrapper);
list.add(ocrtaskchilddubiousfile);
}
}
}
return ocrTaskchildDubiousFileService.saveBatch(list)?ResultVoUtil.success():ResultVoUtil.error("当前图片已添加过了");
}
}

@ -1,10 +1,7 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -16,10 +13,7 @@ import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureService;
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.beust.jcommander.Parameter;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@ -27,9 +21,7 @@ import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
@ -45,368 +37,279 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
@RestController
@RequestMapping("/backstage/jifen/ocrtaskchildpicture")
public class OcrTaskchildPictureController extends BaseController {
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private OcrTaskchildPictureService ocrTaskchildPictureService;
@Resource
private OcrPictureService ocrPictureService;
@Resource
private UserTokenService userTokenService;
@Resource
private UserService userService;
/**
* jsondto
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@GetMapping("/list")
public ResultVo<IPage<OcrTaskchildPicture>> listOcrTaskchildPicture(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException {
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrTaskchildPicture ocrtaskchildpicture = new OcrTaskchildPicture();
QueryWrapper<OcrTaskchildPicture> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery, ocrtaskchildpicture);
IPage<OcrTaskchildPicture> page = this.ocrTaskchildPictureService.selectSearchListPage(paramterPage, queryWrapper);
;
return ResultVoUtil.success(page);
}
/**
* jsondto
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@ApiOperation(value = "ocr_任务包下的任务集合", notes = "ocr_任务包下的任务集合")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path", name = "packageid", value = "任务包主键", required = true)
})
@GetMapping("/listbypackageid/{packageid}")
public ResultVo<IPage<OcrTaskchildPicture>> listbypackageid(ParamterPage paramterPage,
HttpServletRequest request,
HttpServletResponse response,
@PathVariable("packageid") String packageid) throws IOException {
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrTaskchildPicture ocrtaskchildpicture = new OcrTaskchildPicture();
QueryWrapper<OcrTaskchildPicture> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery, ocrtaskchildpicture);
queryWrapper.eq("TENANTID", tenantId);
if (StringUtils.isNotBlank(packageid)) {
queryWrapper.eq("PACKAGEID", packageid);
}
IPage<OcrTaskchildPicture> page = this.ocrTaskchildPictureService.selectSearchListPage(paramterPage, queryWrapper);
QueryWrapper<OcrTaskchildPicture> queryWrapperNex = SearchQueryFormat.queryStringFormat(searchQuery, ocrtaskchildpicture);
if (!page.getRecords().isEmpty()) {
OcrTaskchildPicture ocrTaskchildPicture = page.getRecords().get(0);
queryWrapperNex.eq("TENANTID", tenantId);
queryWrapperNex.in("PICTUREID", ocrTaskchildPicture.getOcpictureid().split(","));
page = this.ocrTaskchildPictureService.selectSearchListPage(paramterPage, queryWrapperNex);
}
return ResultVoUtil.success(page);
}
@ApiOperation(value = "ocr_任务包下的当前图片比对的集合列表", notes = "ocr_任务包下的当前图片比对的集合列表")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path", name = "packageid", value = "任务包主键"),
@ApiImplicitParam(paramType = "path", name = "taskchildpictureid", value = "当前选中的任务主键", required = true)
})
@GetMapping("/listbypictureid/{packageid}/{taskchildpictureid}")
public ResultVo<IPage<OcrTaskchildPicture>> listbypackageidlistbypictureid(ParamterPage paramterPage,
HttpServletRequest request,
HttpServletResponse response,
@PathVariable("packageid") String packageid,
@PathVariable("taskchildpictureid") String taskchildpictureid) throws IOException {
//获取页码、当前页
String pageNoStr = request.getParameter("pageNo");
String pageSizeStr = request.getParameter("pageSize");
if (StringUtils.isEmpty(pageNoStr) || StringUtils.isEmpty(pageSizeStr)) {
return ResultVoUtil.error("页码和条数必传!");
}
paramterPage.setStart(Integer.parseInt(pageNoStr));
paramterPage.setPagesize(Integer.parseInt(pageSizeStr));
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
//排序方式
String orderbyname = request.getParameter("orderbyname");
//排序字段
String orderbyvalue = request.getParameter("orderbyvalue");
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrTaskchildPicture ocrtaskchildpicture = new OcrTaskchildPicture();
QueryWrapper<OcrTaskchildPicture> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery, ocrtaskchildpicture);
//
//queryWrapper.eq("TENANTID",tenantId);
//queryWrapper.eq("PACKAGEID",packageid);
IPage<OcrTaskchildPicture> page = this.ocrTaskchildPictureService.listByPackageId(taskchildpictureid, paramterPage, queryWrapper, orderbyname, orderbyvalue, packageid, tenantId);
List<JSONObject> collect = page.getRecords().stream().map(p -> {
JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(p));
jsonObject.put("id", jsonObject.getOrDefault("id", null).toString());
jsonObject.put("tenantid", jsonObject.getOrDefault("tenantid", null).toString());
jsonObject.put("pictureid", jsonObject.getOrDefault("pictureid", null).toString());
jsonObject.put("packageid", jsonObject.getOrDefault("packageid", null).toString());
return jsonObject;
}).collect(Collectors.toList());
List<JSONObject> collect1 = new ArrayList<>();
for (JSONObject asd : collect) {
QueryWrapper<OcrPicture> imgWrapper = new QueryWrapper<>();
imgWrapper.eq("id", asd.get("pictureid"));
OcrPicture one = ocrPictureService.getOne(imgWrapper);
if (one.getSuspiciousfile() == 0) {
collect1.add(asd);
}
}
IPage<JSONObject> objects = new Page<>();
BeanUtils.copyProperties(page, objects);
objects.setRecords(collect1);
return ResultVoUtil.success(objects);
}
/**
*
*
* @param req
* @return
*/
@ApiOperation(value = "任务主图真假标记", notes = "任务主图真假标记")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path", name = "taskchildpictureid", value = "任务主键", required = true),
@ApiImplicitParam(paramType = "path", name = "izTrueorfalse", value = "主图片真假0:假1真", required = true),
@ApiImplicitParam(paramType = "path", name = "judgeid", value = "主图判真假原因id,从字典表中获得", required = true),
@ApiImplicitParam(paramType = "path", name = "judgedesc", value = "真假其他原因", required = false),
@ApiImplicitParam(paramType = "path", name = "packageid", value = "任务包主键", required = true)
})
@PostMapping(value = "/ordertrueorfalse")
public ResultVo ordertrueorfalse(@RequestParam(name = "taskchildpictureids", required = true) String taskchildpictureids,
@RequestParam(name = "iztrueorfalse", required = true) String iztrueorfalse,
@RequestParam(name = "judgeid", required = true) String judgeid,
@RequestParam(name = "judgedesc", required = false) String judgedesc,
@RequestParam(name = "packageid", required = true) String packageid,
HttpServletRequest req) {
//如果是历史图片,不允许进行设置
//如果是已经审批完成的图片不允许是指
OcrTaskchildPicture ocrTaskchildPicture = new OcrTaskchildPicture();
ocrTaskchildPicture.setPackageid(Long.parseLong(packageid));
return ocrTaskchildPictureService.trueorfalse(taskchildpictureids, packageid, iztrueorfalse, judgeid, judgedesc);
}
/**
*
*
* @param req
* @return
*/
// @ApiOperation(value="任务清除标记", notes="任务清除标记")
// @ApiImplicitParams({
// @ApiImplicitParam(paramType = "path",name = "taskchildpictureid", value = "任务主键", required = true),
// @ApiImplicitParam(paramType = "path",name = "packageid", value = "任务包主键", required = true)
// })
// @PostMapping(value = "/clearmark")
// public ResultVo clearmark(@RequestParam(name="taskchildpictureid",required=true) String taskchildpictureid,
// @RequestParam(name="packageid",required=true) String packageid,
// HttpServletRequest req) {
// //如果是历史图片,不允许进行设置
// //如果是已经审批完成的图片不允许是指
//
// OcrTaskchildPicture ocrTaskchildPicture = new OcrTaskchildPicture();
//
// ocrTaskchildPicture.setPackageid(Long.parseLong(packageid));
//
// return ocrTaskchildPictureService.clearmark(taskchildpictureid,packageid);
// }
@ApiOperation(value = "任务清除标记", notes = "任务清除标记")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path", name = "taskchildpictureid", value = "任务主键", required = true),
@ApiImplicitParam(paramType = "path", name = "packageid", value = "任务包主键", required = true)
})
@PostMapping(value = "/clearmark")
public ResultVo clearmark(@RequestParam(name = "taskchildpictureid", required = true) String taskchildpictureid,
@RequestParam(name = "packageid", required = true) String packageid,
HttpServletRequest request) {
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if (StringUtils.isBlank(tenantId)) {
return ResultVoUtil.error("租户主键不能为空");
}
return ocrTaskchildPictureService.clearmark(tenantId, taskchildpictureid, packageid);
}
/**
*
*
* @param req
* @return
*/
@ApiOperation(value = "当前任务包智能识别", notes = "当前任务包智能识别")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path", name = "packageid", value = "任务包主键", required = true)
})
@PostMapping(value = "/markpoint")
public ResultVo markpoint(@RequestParam(name = "packageid", required = true) String packageid,
HttpServletRequest req) {
//如果是历史图片,不允许进行设置
//如果是已经审批完成的图片不允许是指
OcrTaskchildPicture ocrTaskchildPicture = new OcrTaskchildPicture();
ocrTaskchildPicture.setPackageid(Long.parseLong(packageid));
List<OcrTaskchildPicture> list = ocrTaskchildPictureService.markpoint(packageid);
if (null != list && !list.isEmpty()) {
return ResultVoUtil.success(list);
}
return ResultVoUtil.error();
}
/**
*
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@ApiOperation(value = "ocr_任务包下的当前展示的任务对象", notes = "ocr_任务包下的当前展示的任务对象")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path", name = "id", value = "当前选中的任务主键", required = true),
@ApiImplicitParam(paramType = "path", name = "packageid", value = "任务包主键注意不是当前任务关联的packageid而是当前选中的任务包主键")
})
@GetMapping("/getdata/{id}/{packageid}")
@ResponseBody
public ResultVo getdateOcrTaskchildPicture(HttpServletResponse response, HttpServletRequest request,
@PathVariable("packageid") Long packageid,
@PathVariable("id") Long id) throws IOException {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
OcrTaskchildPicture dto = this.ocrTaskchildPictureService.listPicturePackageId(id.toString(), packageid, userToken);
if (null != dto) {
return ResultVoUtil.success(dto);
} else {
return ResultVoUtil.error();
}
}
/**
*
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@PostMapping("/save")
public ResultVo saveOcrTaskchildPicture(HttpServletResponse response, HttpServletRequest request, OcrTaskchildPicture tab) throws IOException {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrTaskchildPictureService.save(tab);
return ResultVoUtil.success();
}
/**
* form
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@PostMapping("/edit")
public ResultVo editOcrTaskchildPicture(HttpServletResponse response, HttpServletRequest request, OcrTaskchildPicture tab) throws IOException {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrTaskchildPictureService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@ApiOperation(value = "根据任务或者工单主键查询图片对象", notes = "根据任务或者工单主键查询图片对象")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path", name = "id", value = "任务审批中的formid或者id", required = true)
})
@GetMapping("/pictureinfo")
@ResponseBody
public ResultVo pictureinfo(HttpServletResponse response, HttpServletRequest request) throws IOException {
String id = request.getParameter("id");
OcrPicture dto = this.ocrTaskchildPictureService.findOcrPictureByTaskchildid(id);
if (null != dto) {
return ResultVoUtil.success(dto);
} else {
return ResultVoUtil.error();
}
}
/**
* id1,2,3
* mail.zhangyong@gmail.com
* 2024-01-14 10:27:01
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrTaskchildPicture(HttpServletResponse response, HttpServletRequest request) throws IOException {
String ids = request.getParameter("id");
this.ocrTaskchildPictureService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
@ApiOperation(value = "ocr_任务包下的当前图片比对的集合列表", notes = "ocr_任务包下的当前图片比对的集合列表")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping("/getSimilarityList")
public ResultVo<IPage<OcrTaskChildPictureVo>> getSimilarityList(
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize,
@RequestParam(name = "orderType") String orderType,
@RequestParam(name = "orderName") String orderName,
@RequestParam(name = "pictureId") String pictureId,
HttpServletRequest request) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
Page<OcrTaskChildPictureVo> similarityList = ocrTaskchildPictureService.getSimilarityList(pageNo, pageSize, pictureId, orderType, orderName,userToken);
return ResultVoUtil.success(similarityList);
}
/**
*
*
* @return
*/
@GetMapping(value = "/getPictureSimilarityList")
public ResultVo getPictureSimilarityList(
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize,
@RequestParam(name = "orderType") String orderType,
@RequestParam(name = "orderName") String orderName,
@RequestParam(name = "checkDuplicateId") String checkDuplicateId,
@RequestParam(name = "pictureId") String pictureId,
HttpServletRequest request) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
Page<OcrTaskChildPictureVo> result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId,userToken);
return ResultVoUtil.success(result);
}
public class OcrTaskchildPictureController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private OcrTaskchildPictureService ocrTaskchildPictureService;
@Resource
private OcrPictureService ocrPictureService;
@Resource
private UserTokenService userTokenService;
@Resource
private UserService userService;
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/list")
public ResultVo<IPage<OcrTaskchildPicture>> listOcrTaskchildPicture(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrTaskchildPicture ocrtaskchildpicture = new OcrTaskchildPicture();
QueryWrapper<OcrTaskchildPicture> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrtaskchildpicture);
IPage<OcrTaskchildPicture> page = this.ocrTaskchildPictureService.selectSearchListPage(paramterPage,queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@ApiOperation(value="ocr_任务包下的任务集合", notes="ocr_任务包下的任务集合")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path",name = "packageid", value = "任务包主键", required = true)
})
@GetMapping("/listbypackageid/{packageid}")
public ResultVo<IPage<OcrTaskchildPicture>> listbypackageid(ParamterPage paramterPage,
HttpServletRequest request,
HttpServletResponse response,
@PathVariable("packageid") String packageid) throws IOException{
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrTaskchildPicture ocrtaskchildpicture = new OcrTaskchildPicture();
QueryWrapper<OcrTaskchildPicture> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrtaskchildpicture);
queryWrapper.eq("TENANTID",tenantId);
queryWrapper.eq("PACKAGEID",packageid);
IPage<OcrTaskchildPicture> page = this.ocrTaskchildPictureService.selectSearchListPage(paramterPage,queryWrapper);
QueryWrapper<OcrTaskchildPicture> queryWrapperNex = SearchQueryFormat.queryStringFormat(searchQuery,ocrtaskchildpicture);
if(!page.getRecords().isEmpty()){
OcrTaskchildPicture ocrTaskchildPicture = page.getRecords().get(0);
queryWrapperNex.eq("TENANTID",tenantId);
queryWrapperNex.in("PICTUREID",ocrTaskchildPicture.getOcpictureid().split(","));
page = this.ocrTaskchildPictureService.selectSearchListPage(paramterPage,queryWrapperNex);
}
return ResultVoUtil.success(page);
}
@ApiOperation(value="ocr_任务包下的当前图片比对的集合列表", notes="ocr_任务包下的当前图片比对的集合列表")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true),
@ApiImplicitParam(paramType = "path",name = "packageid", value = "任务包主键", required = true),
@ApiImplicitParam(paramType = "path",name = "taskchildpictureid", value = "当前选中的任务主键", required = true)
})
@GetMapping("/listbypictureid/{packageid}/{taskchildpictureid}")
public ResultVo<IPage<OcrTaskchildPicture>> listbypackageidlistbypictureid(ParamterPage paramterPage,
HttpServletRequest request,
HttpServletResponse response,
@PathVariable("packageid") String packageid,
@PathVariable("taskchildpictureid") String taskchildpictureid) throws IOException{
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
//排序方式
String orderbyname = request.getParameter("orderbyname");
//排序字段
String orderbyvalue = request.getParameter("orderbyvalue");
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrTaskchildPicture ocrtaskchildpicture = new OcrTaskchildPicture();
QueryWrapper<OcrTaskchildPicture> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrtaskchildpicture);
//queryWrapper.eq("TENANTID",tenantId);
//queryWrapper.eq("PACKAGEID",packageid);
IPage<OcrTaskchildPicture> page = this.ocrTaskchildPictureService.listByPackageId(taskchildpictureid,paramterPage,queryWrapper,orderbyname,orderbyvalue, packageid,tenantId);
return ResultVoUtil.success(page);
}
/**
*
*
* @param req
* @return
*/
@ApiOperation(value="任务主图真假标记", notes="任务主图真假标记")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path",name = "taskchildpictureid", value = "任务主键", required = true),
@ApiImplicitParam(paramType = "path",name = "izTrueorfalse", value = "主图片真假0:假1真", required = true),
@ApiImplicitParam(paramType = "path",name = "judgeid", value = "主图判真假原因id,从字典表中获得", required = true),
@ApiImplicitParam(paramType = "path",name = "judgedesc", value = "真假其他原因", required = false),
@ApiImplicitParam(paramType = "path",name = "packageid", value = "任务包主键", required = true)
})
@PostMapping(value = "/ordertrueorfalse")
public ResultVo ordertrueorfalse(@RequestParam(name="taskchildpictureids",required=true) String taskchildpictureids,
@RequestParam(name="iztrueorfalse",required=true) String iztrueorfalse,
@RequestParam(name="judgeid",required=true) String judgeid,
@RequestParam(name="judgedesc",required=false) String judgedesc,
@RequestParam(name="packageid",required=true) String packageid,
HttpServletRequest req) {
//如果是历史图片,不允许进行设置
//如果是已经审批完成的图片不允许是指
OcrTaskchildPicture ocrTaskchildPicture = new OcrTaskchildPicture();
ocrTaskchildPicture.setPackageid(Long.parseLong(packageid));
return ocrTaskchildPictureService.trueorfalse(taskchildpictureids,packageid,iztrueorfalse,judgeid,judgedesc);
}
/**
*
*
* @param req
* @return
*/
@ApiOperation(value="任务清除标记", notes="任务清除标记")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path",name = "taskchildpictureid", value = "任务主键", required = true),
@ApiImplicitParam(paramType = "path",name = "packageid", value = "任务包主键", required = true)
})
@PostMapping(value = "/clearmark")
public ResultVo clearmark(@RequestParam(name="taskchildpictureid",required=true) String taskchildpictureid,
@RequestParam(name="packageid",required=true) String packageid,
HttpServletRequest req) {
//如果是历史图片,不允许进行设置
//如果是已经审批完成的图片不允许是指
OcrTaskchildPicture ocrTaskchildPicture = new OcrTaskchildPicture();
ocrTaskchildPicture.setPackageid(Long.parseLong(packageid));
return ocrTaskchildPictureService.clearmark(taskchildpictureid,packageid);
}
/**
*
*
* @param req
* @return
*/
@ApiOperation(value="当前任务包智能识别", notes="当前任务包智能识别")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path",name = "packageid", value = "任务包主键", required = true)
})
@PostMapping(value = "/markpoint")
public ResultVo markpoint(@RequestParam(name="packageid",required=true) String packageid,
HttpServletRequest req) {
//如果是历史图片,不允许进行设置
//如果是已经审批完成的图片不允许是指
OcrTaskchildPicture ocrTaskchildPicture = new OcrTaskchildPicture();
ocrTaskchildPicture.setPackageid(Long.parseLong(packageid));
List<OcrTaskchildPicture> list = ocrTaskchildPictureService.markpoint(packageid);
if(null != list && !list.isEmpty()){
return ResultVoUtil.success(list);
}
return ResultVoUtil.error();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@ApiOperation(value="ocr_任务包下的当前展示的任务对象", notes="ocr_任务包下的当前展示的任务对象")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path",name = "id", value = "当前选中的任务主键", required = true),
@ApiImplicitParam(paramType = "path",name = "packageid", value = "任务包主键注意不是当前任务关联的packageid而是当前选中的任务包主键", required = true)
})
@GetMapping("/getdata/{id}/{packageid}")
@ResponseBody
public ResultVo getdateOcrTaskchildPicture(HttpServletResponse response,HttpServletRequest request,
@PathVariable("packageid") Long packageid,
@PathVariable("id") Long id) throws IOException{
OcrTaskchildPicture dto = this.ocrTaskchildPictureService.listPicturePackageId(id.toString(),packageid);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/save")
public ResultVo saveOcrTaskchildPicture(HttpServletResponse response,HttpServletRequest request,OcrTaskchildPicture tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrTaskchildPictureService.save(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@PostMapping("/edit")
public ResultVo editOcrTaskchildPicture(HttpServletResponse response,HttpServletRequest request,OcrTaskchildPicture tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrTaskchildPictureService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@ApiOperation(value="根据任务或者工单主键查询图片对象", notes="根据任务或者工单主键查询图片对象")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "path",name = "id", value = "任务审批中的formid或者id", required = true)
})
@GetMapping("/pictureinfo")
@ResponseBody
public ResultVo pictureinfo(HttpServletResponse response,HttpServletRequest request) throws IOException{
String id = request.getParameter("id");
OcrPicture dto = this.ocrTaskchildPictureService.findOcrPictureByTaskchildid(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2024-01-14 10:27:01
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrTaskchildPicture(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrTaskchildPictureService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
}

@ -0,0 +1,155 @@
package cn.jyjz.xiaoyao.ocr.controller;
import java.io.IOException;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicturetype;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUpuser;
import cn.jyjz.xiaoyao.ocr.service.OcrUpuserService;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@Api(tags="ocr_提报人管理")
@RestController
@RequestMapping("/ocr/ocrUpuser")
public class OcrUpuserController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private OcrUpuserService ocrUpuserService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*
*
* @return
*/
//@AutoLog(value = "ocr_upuser-分页列表查询")
@ApiOperation(value="ocr_提报人查询", notes="ocr_提报人查询无分页")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
})
@GetMapping(value = "/listall")
public ResultVo<IPage<OcrUpuser>> queryPageList(
HttpServletRequest req) {
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(req, "search_");
OcrUpuser ocrUpuser = new OcrUpuser();
QueryWrapper<OcrUpuser> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrUpuser);
queryWrapper.eq("tenant_id",tenantId);
queryWrapper.orderByAsc("convert(upname using gbk)");
List<OcrUpuser> pageList = ocrUpuserService.queryListNoPage(queryWrapper);
return ResultVoUtil.success(pageList);
}
/**
*jsondto
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/list")
public ResultVo<IPage<OcrUpuser>> listOcrUpuser(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
OcrUpuser ocrupuser = new OcrUpuser();
QueryWrapper<OcrUpuser> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrupuser);
IPage<OcrUpuser> page = this.ocrUpuserService.selectSearchListPage(paramterPage,queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@PostMapping("/save")
public ResultVo saveOcrUpuser(HttpServletResponse response,HttpServletRequest request,OcrUpuser tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setCreateBy(userToken.getLoginname());
tab.setCreateTime(System.currentTimeMillis());
this.ocrUpuserService.save(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@PostMapping("/edit")
public ResultVo editOcrUpuser(HttpServletResponse response,HttpServletRequest request,OcrUpuser tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
tab.setUpdateBy(userToken.getLoginname());
tab.setUpdateTime(System.currentTimeMillis());
this.ocrUpuserService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateOcrUpuser(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrUpuser dto = this.ocrUpuserService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2024-01-14 10:27:02
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreOcrUpuser(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrUpuserService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
}

@ -30,13 +30,14 @@ public class OcrUserFieldController extends BaseController{
*/
@ApiOperation(value="保存或更新用户展示字段列表", notes="保存或更新用户展示字段列表")
@PostMapping(value = "/saveOrUpdate")
public ResultVo saveOrUpdate(@ApiParam(value = "用户字段信息", required = true) @RequestBody OcrUserFieldVo ocrUserFieldVo) {
public ResultVo saveOrUpdate(@ApiParam(value = "用户字段信息", required = true) OcrUserFieldVo ocrUserFieldVo) {
try {
OcrUserField ocrUserField = new OcrUserField();
ocrUserField.setUserId(ocrUserFieldVo.getUserId());
ocrUserField.setReviewType(ocrUserFieldVo.getReviewType());
ocrUserField.setUserFieldFixed(ocrUserFieldVo.getUserFieldFixed());
ocrUserField.setUserFieldUnFixed(ocrUserFieldVo.getUserFieldUnFixed());
ocrUserField.setUserField(ocrUserFieldVo.getUserField());
ocrUserFieldService.saveData(ocrUserField);
// 调用服务层方法,并处理返回值
ResultVo result = ocrUserFieldService.saveData(ocrUserField);
return result;
}catch (Exception e) {

@ -12,15 +12,17 @@ import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrConfiguration;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicturetype;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearch;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearchchild;
import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchService;
import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchchildService;
import cn.jyjz.xiaoyao.ocr.util.SearchConfigEnum;
import cn.jyjz.xiaoyao.ocr.vo.SearchConditionVO;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -53,7 +55,7 @@ public class OcrUsersearchController extends BaseController{
private UserTokenService userTokenService;
@Resource
private UserService userService;
/**
*
*
@ -69,35 +71,33 @@ public class OcrUsersearchController extends BaseController{
@GetMapping(value = "/list")
public ResultVo<IPage<OcrUsersearch>> queryPageList(@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
@RequestParam(name="type") @ApiParam(value = "类型(首页为0终审为1)", required = true) Integer type,
HttpServletRequest request) {
//获取当前登录人
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
ParamterPage paramterPage = new ParamterPage();
paramterPage.setPagesize(pageSize);
paramterPage.setStart(pageNo);
//租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
OcrUsersearch ocrUsersearch = new OcrUsersearch();
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
QueryWrapper<OcrUsersearch> queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrUsersearch);
queryWrapper.eq("USERID",userToken.getUserid());
queryWrapper.eq("TENANTID",tenantId);
queryWrapper.eq("TYPE",type);
queryWrapper.orderByDesc(Arrays.asList("IZTOP","REORDER"));
IPage<OcrUsersearch> pageList = ocrUsersearchService.selectSearchListPage(paramterPage, queryWrapper);
for(OcrUsersearch ocrUsersearch1:pageList.getRecords()){
List<OcrUsersearchchild> ocrUsersearchchildList = ocrUsersearchchildService.selectByMainId(ocrUsersearch1.getId().toString());
ocrUsersearch1.setOcrUsersearchchildList(ocrUsersearchchildList);
@ -105,7 +105,7 @@ public class OcrUsersearchController extends BaseController{
return ResultVoUtil.success(pageList);
}
/**
*
*
@ -118,29 +118,28 @@ public class OcrUsersearchController extends BaseController{
})
@PostMapping(value = "/add")
public ResultVo<String> add(@RequestBody OcrUsersearch ocrUsersearch, HttpServletRequest req) {
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
//获取当前登录人
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
ocrUsersearch.setUserid(Long.parseLong(userToken.getUserid()));
ocrUsersearch.setCreatetime(System.currentTimeMillis());
ocrUsersearch.setCreateby(userToken.getLoginname());
ocrUsersearch.setTenantid(Long.parseLong(tenantId));
ocrUsersearch.setReorder(this.ocrUsersearchService.getReorder(ocrUsersearch.getUserid(),ocrUsersearch.getType()));
ocrUsersearch.setType(ocrUsersearch.getType());
ocrUsersearch.setReorder(this.ocrUsersearchService.getReorder(ocrUsersearch.getUserid()));
if(null != ocrUsersearch.getId()){
this.ocrUsersearchService.removeByIds(ocrUsersearch.getId().toString());
}
this.ocrUsersearchService.save(ocrUsersearch);
if(null != ocrUsersearch.getOcrUsersearchchildList()){
for(OcrUsersearchchild ocrUsersearchchild:ocrUsersearch.getOcrUsersearchchildList()){
ocrUsersearchchild.setUsersearchid(ocrUsersearch.getId());
@ -161,10 +160,10 @@ public class OcrUsersearchController extends BaseController{
})
@PostMapping(value = "/edit")
public ResultVo<String> edit(@RequestBody OcrUsersearch ocrUsersearch, HttpServletRequest req) {
//租户主键,由前端页面传送
String tenantId = req.getHeader("X-Tenant-Id");
if(StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空");
}
@ -172,10 +171,10 @@ public class OcrUsersearchController extends BaseController{
if(null == old){
return ResultVoUtil.error("数据错误。");
}
//获取当前登录人
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req));
ocrUsersearch.setUserid(old.getUserid());
ocrUsersearch.setCreatetime(old.getCreatetime());
ocrUsersearch.setCreateby(old.getCreateby());
@ -184,14 +183,14 @@ public class OcrUsersearchController extends BaseController{
ocrUsersearch.setIztop(old.getIztop());
ocrUsersearch.setUpdateby(userToken.getLoginname());
ocrUsersearch.setUpdatetime(System.currentTimeMillis());
if(null != ocrUsersearch.getId()){
this.ocrUsersearchService.removeChildByIds(ocrUsersearch.getId().toString());
}
this.ocrUsersearchService.updateById(ocrUsersearch);
if(null != ocrUsersearch.getOcrUsersearchchildList()){
for(OcrUsersearchchild ocrUsersearchchild:ocrUsersearch.getOcrUsersearchchildList()){
ocrUsersearchchild.setUsersearchid(ocrUsersearch.getId());
@ -215,16 +214,16 @@ public class OcrUsersearchController extends BaseController{
public ResultVo<String> reorder( HttpServletRequest req ,
@RequestParam(name="searchid", required = true) String searchid,
@RequestParam(name="reorder", defaultValue="1") Integer reorder) {
OcrUsersearch old = this.ocrUsersearchService.getById(searchid);
if(null == old){
return ResultVoUtil.error("数据错误。");
}
old.setReorder(reorder);
return this.ocrUsersearchService.updateById(old)?ResultVoUtil.success():ResultVoUtil.error();
}
/**
*
@ -239,16 +238,16 @@ public class OcrUsersearchController extends BaseController{
@GetMapping(value = "/collect")
public ResultVo<String> collect( HttpServletRequest req) {
String searchid = req.getParameter("searchid");
OcrUsersearch old = this.ocrUsersearchService.getById(searchid);
if(null == old){
return ResultVoUtil.error("数据错误。");
}
old.setIztop(1);
return this.ocrUsersearchService.updateById(old)?ResultVoUtil.success():ResultVoUtil.error();
}
/**
*
@ -267,11 +266,11 @@ public class OcrUsersearchController extends BaseController{
if(null == old){
return ResultVoUtil.error("数据错误。");
}
old.setIztop(0);
return this.ocrUsersearchService.updateById(old)?ResultVoUtil.success():ResultVoUtil.error();
}
/**
*
@ -284,7 +283,7 @@ public class OcrUsersearchController extends BaseController{
public ResultVo<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
return this.ocrUsersearchService.removeByIds(ids)?ResultVoUtil.success("批量删除成功!"):ResultVoUtil.error();
}
/**
* id
*
@ -303,21 +302,4 @@ public class OcrUsersearchController extends BaseController{
}
return ResultVoUtil.success(ocrUsersearch);
}
/**
*
* @param userSearchId
* @return
*/
@ApiOperation(value="获取AI查询过滤条件回写", notes="获取AI查询过滤条件回写")
@GetMapping(value = "/querySearchCondition")
public ResultVo<SearchConditionVO> querySearchCondition(@RequestParam(name="userSearchId",required=true) String userSearchId) {
//解析此条件列表字段并返回前端解析为对应前端字段内容
SearchConditionVO searchConditionVO = ocrUsersearchchildService.querySearchCondition(userSearchId);
if(searchConditionVO==null) {
return ResultVoUtil.error("未找到对应数据");
}
return ResultVoUtil.success(searchConditionVO);
}
}

@ -0,0 +1,11 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrArea;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
*
*/
@Mapper
public interface OcrAreaMybatisDao extends BaseMapper<OcrArea> {
}

@ -1,18 +0,0 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrCheckDuplicate;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* Mapper
* </p>
*
* @author author
* @since 2024-03-24
*/
@Mapper
public interface OcrCheckDuplicateMapper extends BaseMapper<OcrCheckDuplicate> {
}

@ -1,18 +0,0 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrCheckDuplicateResult;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* Mapper
* </p>
*
* @author author
* @since 2024-03-24
*/
@Mapper
public interface OcrCheckDuplicateResultMapper extends BaseMapper<OcrCheckDuplicateResult> {
}

@ -1,5 +1,6 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrArea;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrField;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

@ -19,9 +19,7 @@ import java.util.Map;
*/
@Mapper
public interface OcrMsgMapper extends BaseMapper<OcrMsg> {
List<Map<Object, String>> selectPage(@Param("userid")String userid,@Param("msgCategory")String msgCategory);
List<List<Map<Object, String>>> selectPage(@Param("userid")String userid,@Param("msgCategory")String msgCategory);
Map<Object, String> selectone(@Param("id")String id);
int selectUnreadMsgCount(@Param("userId") String userid);
}

@ -1,18 +0,0 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureDuplicateHis;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* Mapper
* </p>
*
* @author author
* @since 2024-03-24
*/
@Mapper
public interface OcrPictureDuplicateHisMapper extends BaseMapper<OcrPictureDuplicateHis> {
}

@ -1,13 +0,0 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* ClassName $className$.java
* Description:
* Author scl.
* Date 2024/3/22 07:09
*/
public interface OcrPictureInfoMapper extends BaseMapper<OcrPictureInfo> {
}

@ -3,16 +3,9 @@ package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
*
*/
@Mapper
public interface OcrPictureMybatisDao extends BaseMapper<OcrPicture> {
OcrPicture getPackagePictureInfo(@Param("packageId") String packageId, @Param("pictureId") String pictureId, @Param("userNodeType") String userNodeType);
List<OcrPicture> getPictureNodeStatesList(@Param("pictureIds") List<String> pictureIds, @Param("userNodeType") String userNodeType);
}

@ -0,0 +1,11 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureclass;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
*
*/
@Mapper
public interface OcrPictureclassMybatisDao extends BaseMapper<OcrPictureclass> {
}

@ -0,0 +1,30 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicturejob;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
*
*/
@Mapper
public interface OcrPicturejobMybatisDao extends BaseMapper<OcrPicturejob> {
/**
* id
*
* @param mainId id
* @return boolean
*/
public boolean deleteByMainId(@Param("mainId") String mainId);
/**
* id
*
* @param mainId id
* @return List<OcrPicturejob>
*/
public List<OcrPicturejob> selectByMainId(@Param("mainId") String mainId);
}

@ -0,0 +1,11 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicturetype;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
*
*/
@Mapper
public interface OcrPicturetypeMybatisDao extends BaseMapper<OcrPicturetype> {
}

@ -0,0 +1,11 @@
package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPlan;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
*
*/
@Mapper
public interface OcrPlanMybatisDao extends BaseMapper<OcrPlan> {
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save