diff --git a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/service/UserTokenService.java b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/service/UserTokenService.java index 8a2083f3..af43718f 100644 --- a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/service/UserTokenService.java +++ b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/service/UserTokenService.java @@ -22,6 +22,14 @@ public interface UserTokenService { * @return 返回用户数据库对象 */ User findByLoginname(String loginname); + + /** + * 查询用户对象 + * @param phone 登录手机号 + * @return 返回用户数据库对象 + */ + User findByPhone(String phone); + /** * 查询用户对象 * @param userid 用户主键 @@ -123,6 +131,22 @@ 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); /** * 查询用户是否存在 diff --git a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQuery.java b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQuery.java index be1fb6b9..1eef9ec5 100644 --- a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQuery.java +++ b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQuery.java @@ -95,6 +95,9 @@ 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); @@ -111,6 +114,9 @@ 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); @@ -121,6 +127,9 @@ 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); @@ -134,6 +143,9 @@ 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); @@ -142,6 +154,17 @@ 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 字段名称 @@ -165,11 +188,15 @@ public class SearchQuery implements java.io.Serializable{ log.error("【添加搜索条件】对象-value-错误,value不能为空"); return; } - if(null != query.get(field)){ - log.error("【添加搜索条件】-query-错误,query已经存在数据,field={}",field); - 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); + } + lf.setField(field); lf.setDataOp(SearchQueryUtil.filterMap.get(filter)); lf.setOp(filter); diff --git a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQueryForm.java b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQueryForm.java index 77849648..f42daa7c 100644 --- a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQueryForm.java +++ b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/util/requestFormat/SearchQueryForm.java @@ -8,10 +8,10 @@ import java.io.Serializable; */ public class SearchQueryForm implements Serializable { private static final long serialVersionUID = 1L; - private String field;// 字段名称 - private String op;// 比对条件 - private Object value;// 比对内容 - private String type;// 类型 + private String field;// 字段名称 username and t1.username = %111%(vachar) + private String op;// 比对条件 = + private Object value;// 比对内容 111 + private String type;// 类型 () private String rulesOp;// 搜索条件的关联方式,或/与(and/or) private String tablenameother = "";// 数据表别名 private String dataOp;// 数据库中的比较条件,根据op属性获取 diff --git a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/User.java b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/User.java index 8ef4f310..fe4115e2 100644 --- a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/User.java +++ b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/User.java @@ -86,6 +86,9 @@ public class User implements java.io.Serializable { //密码最后更新时间 private Long psdupdatetime; + //用户审批节点 + private Integer nodeType; + //用户对应的角色信息,映射文件中对应的字段信息 @JsonIgnore private List roleslist = new ArrayList(0); diff --git a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/UserToken.java b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/UserToken.java index ed273aa0..a5e401b7 100644 --- a/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/UserToken.java +++ b/jyjz-common/jyjz-common-base/src/main/java/cn/jyjz/xiaoyao/common/base/vo/UserToken.java @@ -15,32 +15,35 @@ 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; + //用户登录后的签名信息,目前使用userid签名 + private String signUser; + + //用户审批节点 + private Integer nodeType; } \ No newline at end of file diff --git a/jyjz-common/jyjz-common-redis/src/main/java/cn/jyjz/xiaoyao/common/redis/cache/constants/CacheConstants.java b/jyjz-common/jyjz-common-redis/src/main/java/cn/jyjz/xiaoyao/common/redis/cache/constants/CacheConstants.java index 4102415f..d8796620 100644 --- a/jyjz-common/jyjz-common-redis/src/main/java/cn/jyjz/xiaoyao/common/redis/cache/constants/CacheConstants.java +++ b/jyjz-common/jyjz-common-redis/src/main/java/cn/jyjz/xiaoyao/common/redis/cache/constants/CacheConstants.java @@ -20,7 +20,7 @@ public interface CacheConstants { //缓存超时时间,单位:秒,目前验证码使用 int CACHE_TIME = 300;//300; - //缓存超时时间,单位:秒,目前ai统计使用 24小时 + //缓存超时时间,单位:秒,目前ai统计使用 24小时,获取验证码在使用 int TOOLSCOUNT_TENANTID_CACHE_TIME = 86400; //保存ai统计租户id对象 diff --git a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java index 03c4a6b4..38cc06aa 100644 --- a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java +++ b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java @@ -120,15 +120,22 @@ public class MyAuthenticationProvider implements AuthenticationProvider { // } //判断手机号与企业编码是否存在 - if(!"admin".equals(loginname) && userTokenService.listCount(agentcode,loginname).intValue() <= 0){ +// 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("企业编码错误!"); } boolean tenantStatus = userTokenService.getTenantStatus(agentcode); - if (!tenantStatus) { + if (!"admin".equals(loginname) && !tenantStatus) { throw new AuthenticationServiceException("该租户已被冻结!"); } - if(!"admin".equals(loginname) && userTokenService.listCount(agentcode,loginname).intValue() <= 0){ + + //判断账号是否存在 + if(!"admin".equals(loginname) && userTokenService.listLoginNameCount(agentcode,loginname).intValue() <= 0){ throw new AuthenticationServiceException("账号不存在!"); } @@ -179,7 +186,7 @@ public class MyAuthenticationProvider implements AuthenticationProvider { } //userTokenService.savePasswordMaxRetry(user.getLoginname()); - throw new AuthenticationServiceException("账号密码不正确"); + throw new AuthenticationServiceException("密码错误"); } @Override diff --git a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java index f7f513b4..be3ad913 100644 --- a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java +++ b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java @@ -25,6 +25,7 @@ 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; @@ -57,6 +58,20 @@ 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); @@ -67,7 +82,10 @@ public class SmsLoginServiceImpl implements SmsLoginService { //用户登录信息写入缓存 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); } @@ -96,7 +114,7 @@ public class SmsLoginServiceImpl implements SmsLoginService { } //数据库查询用户对象 - User user = userTokenService.findByLoginname(phone); + User user = userTokenService.findByPhone(phone); if(null == user){ return ResultVoUtil.error("用户错误。"); } diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataDao/UserTenantMybatisDao.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataDao/UserTenantMybatisDao.java index 45be939f..30045c80 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataDao/UserTenantMybatisDao.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataDao/UserTenantMybatisDao.java @@ -18,6 +18,20 @@ public interface UserTenantMybatisDao extends BaseMapper { * @return */ Long listCount(Map query); + + /** + * 查询企业编码是否存在 + * @param query (otherno是否能够命中) + * @return + */ + Long listOthernoCount(Map query); + + /** + * 查询用户是否存在 + * @param query (otherno、loginname是否同时能够命中) + * @return + */ + Long listLoginNameCount(Map query); /** * 查询用户是否存在 diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java index fcc63e3c..30fe879b 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java @@ -124,6 +124,9 @@ 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 diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserService.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserService.java index c3a1760c..b999c962 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserService.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserService.java @@ -23,6 +23,13 @@ public interface UserService extends BaseService { * @return 用户对象 */ public User findByLoginname(String loginname); + + /** + * 根据登录手机号查询用户信息 + * @param phone 登录手机号 + * @return 用户对象 + */ + public User findByPhone(String phone); /** * 根据主键查询用户信息 diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserTenantService.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserTenantService.java index bf7cd6be..afe52510 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserTenantService.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/UserTenantService.java @@ -40,6 +40,23 @@ public interface UserTenantService extends BaseService { * @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); + /** * 查询用户是否存在 diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java index 6ac4f6b5..ba68dfa8 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java @@ -112,6 +112,38 @@ public class UserServiceImpl extends BaseServiceImpl imple 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 queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("MOBILE",phone); + + User user = this.usermybatisdao.selectOne(queryWrapper); + + if(null == user){ + return null; + } + + List departmentList = this.departmentMybatisDao.selectDeptByUserid(user.getId()); + user.formatDeptlist(departmentList); + user.setTenantList(this.userTenantService.listUserTenant(user.getId())); + + //返回用户前端菜单权限列表 + List frontmenuTList1 = isFrontmenuTService.queryUserMenuById(user.getLoginname()); + user.setFrontmenuTList(frontmenuTList1); + return user; + } + /** * 根据主键查询用户信息 * @param userid diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTenantServiceImpl.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTenantServiceImpl.java index ea36c924..41248c20 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTenantServiceImpl.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTenantServiceImpl.java @@ -96,6 +96,32 @@ public class UserTenantServiceImpl extends BaseServiceImpl 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 query = new HashMap<>(); + query.put("otherno",otherno); + query.put("loginname",loginname); + return this.userTenantMybatisDao.listLoginNameCount(query); + } + /** * 查询用户是否存在 diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTokenServiceImpl.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTokenServiceImpl.java index 02a58fbf..afbc855b 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTokenServiceImpl.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTokenServiceImpl.java @@ -101,6 +101,24 @@ 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); @@ -375,6 +393,27 @@ 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); + } + /** * 查询用户是否存在 diff --git a/jyjz-system/jyjz-system-admin/src/main/resources/mapper/admin/UserTenantMapper.xml b/jyjz-system/jyjz-system-admin/src/main/resources/mapper/admin/UserTenantMapper.xml index 9b9e53d1..1cc9fd39 100644 --- a/jyjz-system/jyjz-system-admin/src/main/resources/mapper/admin/UserTenantMapper.xml +++ b/jyjz-system/jyjz-system-admin/src/main/resources/mapper/admin/UserTenantMapper.xml @@ -62,6 +62,33 @@ ) + + + + + + - - + + diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml index 6e283e3a..8a057969 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml @@ -67,11 +67,15 @@ - + + + + + @@ -216,22 +220,36 @@ - order by ${page.sortname} ${page.sortorder} + order by ${page.sortname} ${page.sortorder} limit ${page.start}, ${page.Pagesize} + + diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrSearchHistoryMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrSearchHistoryMapper.xml index 4468403d..93e5def9 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrSearchHistoryMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrSearchHistoryMapper.xml @@ -18,7 +18,7 @@ + + + + + + + + + + - SELECT t1.id, t1.name,t1.check_duplicate_id checkDuplicateId,t1.create_time createTime,t1.update_time updateTime,t2.picture_count pictureCount, - t2.searching_json search,t3.USERNAME createName + SELECT t1.id, + t1.name, + t1.check_duplicate_id checkDuplicateId, + t1.create_time createTime, + t1.update_time updateTime, + t2.picture_count pictureCount, + t2.searching_json search, + t3.USERNAME createName FROM ocr_task_package t1 LEFT JOIN ocr_check_duplicate t2 ON t1.check_duplicate_id = t2.id - left join s_user_t t3 on t1.create_by = t3.ID + left join s_user_t t3 on t1.create_by = t3.ID + t1.tenant_id = #{tenantId} and t1.is_delete = 0 - t1.name like concat('%', #{packageName}, '%') + and t1.name like concat('%', #{packageName}, '%') + or T3.USERNAME like concat('%', #{packageName}, '%') + ORDER BY T1.create_time desc \ No newline at end of file diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml index 78aecd39..e35b417b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml @@ -39,6 +39,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -139,6 +184,8 @@ + + and OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend} @@ -260,6 +307,8 @@ + + and tcp.OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend} @@ -453,6 +502,7 @@ on tcp.PICTUREID = pic.ID + and pic.suspiciousfile = 0 and tcp.fromuptime >= ${fromuptimeStart} @@ -461,7 +511,12 @@ - order by tcp.${page.sortname} ${page.sortorder} + + order by tcp.${page.sortname} ${page.sortorder} + + + order by pic.${page.sortname} ${page.sortorder} + limit ${page.start}, ${page.Pagesize} @@ -470,19 +525,31 @@ select count(tcp.ID) from ( select tc.* from ocr_taskchild_picture tc, - OA_USERFINAL_T uf + OA_USERFINAL_T uf, + ocr_picture p where tc.ID = uf.FORMID + and p.ID = tc.PICTUREID + and p.suspiciousfile = 0 and uf.USERID ${thisLoginUserid.dataOp} ${thisLoginUserid.likestar}#{thisLoginUserid.value}${thisLoginUserid.likeend} UNION select - tc.* + tc.* from ocr_taskchild_picture tc where tc.STATES = 5 ) as tcp + left join ocr_picture pic + on tcp.PICTUREID = pic.ID + and pic.suspiciousfile = 0 + + and tcp.fromuptime >= ${fromuptimeStart} + + + and tcp.fromuptime <= ${fromuptimeEnd} + + + diff --git a/runstart/src/main/java/cn/jyjz/xiaoyao/SwaggerFlowableConfig.java b/runstart/src/main/java/cn/jyjz/xiaoyao/SwaggerFlowableConfig.java index 96899262..c37917a0 100644 --- a/runstart/src/main/java/cn/jyjz/xiaoyao/SwaggerFlowableConfig.java +++ b/runstart/src/main/java/cn/jyjz/xiaoyao/SwaggerFlowableConfig.java @@ -35,13 +35,14 @@ import java.util.List; import java.util.stream.Collectors; /** + * 做个测试 * @Author scott */ @Configuration @EnableSwagger2 //开启 Swagger2 @Import(BeanValidatorPluginsConfiguration.class) public class SwaggerFlowableConfig implements WebMvcConfigurer { - + /** * 导入配置文件中的值 */ @@ -59,7 +60,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); } - + /** * swagger2的配置文件,这里可以配置swagger2的一些基本的内容,比如扫描的包等等 * @@ -82,7 +83,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { .securityContexts(securityContexts()) .globalOperationParameters(setHeaderToken()); } - + /*** * oauth2配置 * 需要增加swagger授权回调地址 @@ -104,7 +105,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { pars.add(tokenPar.build()); return pars; } - + /** * api文档的详细信息函数,注意这里的注解引用的是哪个 * @@ -125,7 +126,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { .licenseUrl("http://www.apache.org/licenses/LICENSE-2.0.html") .build(); } - + /** * 新增 securityContexts 保持登录状态 */ @@ -137,7 +138,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { .build()) ); } - + private List defaultAuth() { AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything"); AuthorizationScope[] authorizationScopes = new AuthorizationScope[1]; @@ -145,7 +146,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { return new ArrayList( Collections.singleton(new SecurityReference(SystemConstants.X_ACCESS_TOKEN, authorizationScopes))); } - + /** * 解决springboot2.6 和springfox不兼容问题 * @return @@ -153,7 +154,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { @Bean public static BeanPostProcessor springfoxHandlerProviderBeanPostProcessor() { return new BeanPostProcessor() { - + @Override public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException { if (bean instanceof WebMvcRequestHandlerProvider || bean instanceof WebFluxRequestHandlerProvider) { @@ -161,7 +162,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { } return bean; } - + private void customizeSpringfoxHandlerMappings(List mappings) { List copy = mappings.stream() .filter(mapping -> mapping.getPatternParser() == null) @@ -169,7 +170,7 @@ public class SwaggerFlowableConfig implements WebMvcConfigurer { mappings.clear(); mappings.addAll(copy); } - + @SuppressWarnings("unchecked") private List getHandlerMappings(Object bean) { try { diff --git a/runstart/src/main/resources/application-dev.yml b/runstart/src/main/resources/application-dev.yml index 9872525c..b2a8e8d7 100644 --- a/runstart/src/main/resources/application-dev.yml +++ b/runstart/src/main/resources/application-dev.yml @@ -276,7 +276,7 @@ debugger_tools: true ocr: api: wly: - interface-domain: https://b-dr.prevailcloud.com #接口域名 + interface-domain: https://b-test.prevailcloud.com #接口域名 accessKey: 7390F0221A1A73D8E13F8C8BB96F33B0 #秘钥 accessCode: ED6F7B39768AF95E87AEA8ACCCC71A6F #秘钥编码 connectTimeout: 5000 #请求超时时间 毫秒 diff --git a/runstart/src/main/resources/application-pro.yml b/runstart/src/main/resources/application-pro.yml index bd2ceb84..b14dcc68 100644 --- a/runstart/src/main/resources/application-pro.yml +++ b/runstart/src/main/resources/application-pro.yml @@ -280,7 +280,7 @@ debugger_tools: true ocr: api: wly: - interface-domain: https://b-dr.prevailcloud.com #接口域名 + interface-domain: https://b-test.prevailcloud.com #接口域名 accessKey: 7390F0221A1A73D8E13F8C8BB96F33B0 #秘钥 accessCode: ED6F7B39768AF95E87AEA8ACCCC71A6F #秘钥编码 connectTimeout: 5000 #请求超时时间 毫秒 @@ -289,4 +289,4 @@ ocr: image: similarityPath: http://127.0.0.1:8000/api/similarity/ classifyPath: http://127.0.0.1:8000/api/classify/ - serverUrl: http://47.93.59.251/api/image/ \ No newline at end of file + serverUrl: http://47.93.59.251/api/image/