From 7e9c134a91b03365a343e62851fdf538b74d9845 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Thu, 28 Mar 2024 13:28:08 +0800 Subject: [PATCH 01/92] =?UTF-8?q?docs:=20=E6=BC=94=E7=A4=BA=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jyjz/xiaoyao/SwaggerFlowableConfig.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) 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 { From e86ff9f8fc8bb0fec73d9b1d2914c735dfa828d1 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Thu, 28 Mar 2024 23:06:56 +0800 Subject: [PATCH 02/92] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E6=9F=A5=E8=AF=A2=EF=BC=8C=E9=98=88=E5=80=BC=E5=8C=BA?= =?UTF-8?q?=E9=97=B4=E6=AF=94=E5=AF=B9=E4=B8=8D=E6=AD=A3=E7=A1=AE=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java index 09789944..4dded098 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java @@ -93,10 +93,7 @@ public class SearchParaFormatting { //相等 // queryWrapper.between(key,sectionInts.get(0),sectionInts.get(1)); if (sectionInts.get(0) == 0) { - // 构建查询条件:key 为 null 或者在指定区间内 - queryWrapper.isNull(key); - queryWrapper.or(); - queryWrapper.between(key, sectionInts.get(0), sectionInts.get(1)); + queryWrapper.apply("( "+key+" IS NULL OR "+key+" BETWEEN "+sectionInts.get(0)+" AND "+sectionInts.get(1)+")");; } else { // 相等 queryWrapper.between(key, sectionInts.get(0), sectionInts.get(1)); From f7cf61567b6aaa871ef5bfe326800413c2f0ff54 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Thu, 28 Mar 2024 23:07:07 +0800 Subject: [PATCH 03/92] =?UTF-8?q?refactor(=E4=BF=AE=E6=94=B9=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8C=85=E5=88=97=E8=A1=A8):=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=8C=85=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=85=A8=E9=87=8F=E7=AD=9B=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OcrTaskchildPictureController.java | 2 +- .../OcrTaskchildPictureMybatisDao.java | 3 +-- .../impl/OcrTaskPackageServiceImpl.java | 20 ++++++++++++++----- .../impl/OcrTaskchildPictureServiceImpl.java | 3 ++- .../mapper/oa/OcrTaskchildPictureMapper.xml | 2 +- 5 files changed, 20 insertions(+), 10 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildPictureController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildPictureController.java index 4f662056..de0a32e5 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildPictureController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildPictureController.java @@ -413,7 +413,7 @@ public class OcrTaskchildPictureController extends BaseController { @RequestParam(name = "orderType") String orderType, @RequestParam(name = "orderName") String orderName, @RequestParam(name = "checkDuplicateId") String checkDuplicateId, - @RequestParam(name = "pictureId", required = false) String pictureId, + @RequestParam(name = "pictureId") String pictureId, HttpServletRequest req) { Page result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId); return ResultVoUtil.success(result); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java index ddd0acfc..69c01362 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java @@ -1,6 +1,5 @@ package cn.jyjz.xiaoyao.ocr.dataDao; -import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; @@ -53,5 +52,5 @@ public interface OcrTaskchildPictureMybatisDao extends BaseMapper getPackageSimilarityList(Page page, @Param("checkDuplicateId") String checkDuplicateId, @Param("pictureId") String pictureId, @Param("oderType") String oderType, @Param("oderName") String oderName); + Page getPackageSimilarityList(Page page, @Param("checkDuplicateId") String checkDuplicateId, @Param("pictureId") String pictureId, @Param("oderType") String oderType, @Param("oderName") String oderName, @Param("taskname") String taskname); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java index 95168c86..ff3fabc5 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java @@ -9,6 +9,7 @@ import cn.jyjz.xiaoyao.ocr.dto.OcrTaskPackageDto; import cn.jyjz.xiaoyao.ocr.service.*; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -20,6 +21,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** *

@@ -38,6 +40,8 @@ public class OcrTaskPackageServiceImpl extends ServiceImpl> getPackageList(Integer pageNo, Integer pageSize, String packageName) { Page> page = new Page<>(pageNo, pageSize); Page> result = taskPackageMapper.getPackageList(page, packageName); - if(CollectionUtils.isNotEmpty(result.getRecords())){ + if (CollectionUtils.isNotEmpty(result.getRecords())) { + List list = fieldService.list(new LambdaQueryWrapper().eq(OcrField::getReviewType, 1)); List> records = result.getRecords(); + List fieldName = list.stream().map(OcrField::getName).collect(Collectors.toList()); for (Map record : records) { - record.put("id",record.get("id").toString()); - record.put("checkDuplicateId",record.get("checkDuplicateId").toString()); + record.put("id", record.get("id").toString()); + record.put("checkDuplicateId", record.get("checkDuplicateId").toString()); Object search = record.getOrDefault("search", null); - if(search!=null){ + if (search != null) { Map map = JSONObject.parseObject(search.toString(), Map.class); + for (String field : fieldName) { + if (!map.containsKey(field)) { + map.put(field, ""); + } + } record.putAll(map); - record.put("searchTime",map.getOrDefault("submit_date_timestamp","").toString()); } } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java index aa05930b..cdd7971b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java @@ -685,8 +685,9 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId) { Page page = new Page<>(pageNo, pageSize); + OcrTaskchildPicture one = this.getOne(new LambdaQueryWrapper().eq(OcrTaskchildPicture::getPictureid, pictureId)); - return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page, checkDuplicateId, pictureId, oderType, oderName); + return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page, checkDuplicateId, pictureId, oderType, oderName,one.getTaskname()); } @Override 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..dce88aa6 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 @@ -696,7 +696,7 @@ FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID - LEFT JOIN oa_userapprove_t t4 ON t3.ID = t4.FORMID + LEFT JOIN oa_userapprove_t t4 ON t3.ID = t4.FORMID and t4.TASKNAME = '${taskname}' WHERE t1.check_duplicate_id = #{checkDuplicateId} and t1.picture_id != #{pictureId} From 144df64bd0360aa29eee99256b270f93e374c635 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Fri, 29 Mar 2024 11:41:45 +0800 Subject: [PATCH 04/92] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E3=80=81=E5=9B=BE=E7=89=87=E7=9B=B8=E4=BC=BC=E5=BA=A6?= =?UTF-8?q?=E6=8E=92=E5=BA=8Fbug=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java index d42bf2b5..211e87c9 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java @@ -270,7 +270,7 @@ public class OcrPictureController extends BaseController { String ordertype = req.getParameter("ordertype"); queryWrapper.eq("suspiciousfile", "0"); if (StringUtils.isNotBlank(ordertype)) { - if (ordertype.equals("0")) { + if (ordertype.equals("asc")) { queryWrapper.orderByAsc("similarity_score"); } else { queryWrapper.orderByDesc("similarity_score"); @@ -280,7 +280,7 @@ public class OcrPictureController extends BaseController { //按时间排序 String orderByTime = req.getParameter("orderByTime"); if (StringUtils.isNotBlank(orderByTime)) { - if (orderByTime.equals("0")) { + if (orderByTime.equals("asc")) { queryWrapper.orderByAsc("create_time"); } else { queryWrapper.orderByDesc("create_time"); From 9cb6c446b25865a9484f7325baaabb9cf4f69f2a Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Fri, 29 Mar 2024 23:26:44 +0800 Subject: [PATCH 05/92] =?UTF-8?q?refactor/1.=E4=BF=AE=E6=94=B9=E7=9B=B8?= =?UTF-8?q?=E4=BC=BC=E5=BA=A6=E5=88=97=E8=A1=A8=202.=E5=AE=8C=E5=96=84?= =?UTF-8?q?=E6=97=A0=E9=87=8F=E4=BA=91=E5=9B=9E=E4=BC=A0=203.=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E6=B7=BB=E5=8A=A0=E8=8A=82=E7=82=B9=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=204.=E7=94=A8=E6=88=B7=E5=AE=A1=E6=89=B9=E5=8E=86=E5=8F=B2?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E6=B7=BB=E5=8A=A0=205.=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=B7=BB=E5=8A=A0=E6=8F=90=E4=BA=A4=E6=97=B6?= =?UTF-8?q?=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/xiaoyao/common/base/vo/User.java | 3 + .../xiaoyao/common/base/vo/UserToken.java | 43 ++++++----- .../jyjz/xiaoyao/admin/dataobject/User.java | 4 + .../jyjz/flowable/common/ProcessConstant.java | 18 ++++- .../controller/FlowTaskController.java | 19 +++-- .../flowable/service/IFlowTaskService.java | 4 +- .../service/impl/FlowTaskServiceImpl.java | 19 +++-- .../oa/from/dataobject/Userapprove.java | 6 ++ .../service/impl/UserapproveServiceImpl.java | 2 + .../OcrTaskchildPictureController.java | 35 +++------ .../dataobject/OcrTaskchildPictureAppro.java | 5 ++ .../service/OcrTaskchildPictureService.java | 11 +-- .../impl/OcrTaskPackageServiceImpl.java | 16 ++++ .../impl/OcrTaskchildPictureServiceImpl.java | 73 +++++++++++++------ .../ocr/vo/OcrTaskchildPictureApproVo.java | 2 +- 15 files changed, 166 insertions(+), 94 deletions(-) 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-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..af386ca1 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,10 @@ public class User implements BaseDto,java.io.Serializable { @TableField(value="PSDUPDATETIME") @JsonSerialize(using = DateSerializer.class) private Long psdupdatetime; + @Schema(description = "用户审批节点") + @TableField(value="NODETYPE") + @JsonSerialize(using = DateSerializer.class) + private Integer nodeType; //用户对应的角色信息,映射文件中对应的字段信息 @JsonIgnore diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/common/ProcessConstant.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/common/ProcessConstant.java index 5bab7e6d..6500c5f9 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/common/ProcessConstant.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/common/ProcessConstant.java @@ -1,12 +1,24 @@ 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 userNodeType; + + static { + userNodeType = new HashMap<>(); + userNodeType.put(1, "一级审批"); + userNodeType.put(2, "二级审批"); + userNodeType.put(3, "最终审批"); + } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index d2674ad2..8c443443 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -147,8 +147,8 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo complete(@RequestBody FlowApprove approve, HttpServletRequest request) { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); - Boolean flag = flowTaskService.complete(approve, userToken); - return flag ? ResultVoUtil.success() : ResultVoUtil.error(); + Integer flag = flowTaskService.complete(approve, userToken); + return flag > 0 ? ResultVoUtil.success() : ResultVoUtil.error(); } /** @@ -166,17 +166,16 @@ public class FlowTaskController extends BaseController { if (CollectionUtils.isNotEmpty(flowTaskInfoList)) { List formIdList = flowTaskInfoList.stream().map(FlowTaskInfo::getFormId).collect(Collectors.toList()); //判断当前任务审批人是否一致 - if (!this.ocrTaskchildPictureService.validateAssignee(formIdList, userToken)) { - return ResultVoUtil.error("审批人不一致,请到任务审批中处理。"); - } + List formIds = ocrTaskchildPictureService.validateAssignee(formIdList, userToken); // 判断当前任务是否审批完毕 - if (!this.ocrTaskchildPictureService.validateApprove(formIdList)) { - return ResultVoUtil.error("存在已经审批的任务。"); + List formId = this.ocrTaskchildPictureService.validateApprove(formIdList); + formIds.addAll(formId); + if (CollectionUtils.isNotEmpty(formIds)) { + Integer success = flowTaskService.complete(approve, userToken); + return ResultVoUtil.success("审批成功" + success + "条," + "审核失败" + (flowTaskInfoList.size() - success) + "条"); } - Boolean flag = flowTaskService.complete(approve, userToken); - return flag ? ResultVoUtil.success("审批成功!") : ResultVoUtil.error("审批失败!"); } - return ResultVoUtil.error("审批信息为空!"); + return ResultVoUtil.success("审核成功0条," + "审核失败" + flowTaskInfoList.size() + "条"); } @GetMapping("/listhistore") diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index 22c29397..437e8471 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -35,7 +35,7 @@ public interface IFlowTaskService { Category viewForm(String processId, HttpServletRequest request); - Boolean complete(FlowApprove approve,UserToken userToken); + Integer complete(FlowApprove approve,UserToken userToken); /** @@ -53,7 +53,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); /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index a5bacbdb..477859bc 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -439,7 +439,8 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * 完成任务 */ @Override - public Boolean complete(FlowApprove approve, UserToken userToken) { + public Integer complete(FlowApprove approve, UserToken userToken) { + Integer successCount = 0; try { if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(approve.getFlowTaskInfoList())) { List flowTaskInfoList = approve.getFlowTaskInfoList(); @@ -458,17 +459,18 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask if (approve.getResult()) { disposeSucceedTask(task, processDefinition, variables, model, flowTaskInfo.getFormId(), userToken); } else { - disposeFailureTask(task,flowTaskInfo.getFormId(),variables); + disposeFailureTask(task, flowTaskInfo.getFormId(), variables); } - userapproveService.save(userToken, approve, task,flowTaskInfo.getFormId()); + userapproveService.save(userToken, approve, task, flowTaskInfo.getFormId()); + successCount++; } } //保存当前审批用户与业务表的关系 - return true; + return successCount; } catch (Exception e) { log.error("e={}", e); } - return false; + return successCount; } /** @@ -498,7 +500,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask userFinalService.save(user.getId().toString(), formId); } OcrTaskchildPicture childPicture = ocrTaskchildPictureService.getById(Long.parseLong(formId)); - sendMsg(childPicture, userToken); + this.sendMsg(childPicture, userToken); childPicture.setTaskId(taskData.getId()); childPicture.setTaskname(taskData.getName()); ocrTaskchildPictureService.updateById(childPicture); @@ -548,7 +550,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } //发送消息 - private void sendMsg(OcrTaskchildPicture model, UserToken userToken) { + public void sendMsg(OcrTaskchildPicture model, UserToken userToken) { cn.jyjz.xiaoyao.common.base.vo.User byLoginname = userTokenService.findByLoginname(model.getAssignee()); OcrMsg msg = new OcrMsg(); msg.setCreateTime(System.currentTimeMillis()); @@ -1331,6 +1333,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask OcrPicture ocrPictureOne = ocrPictureService.getOne(ocrPictureLambdaQueryWrapper); taskchildPicture.setFromUserName(ocrPictureOne.getField1()); taskchildPicture.setPicture(ocrPictureOne); + taskchildPicture.setFinishTime(ocrPictureOne.getSubmitDateTimestamp()); } //查询对应的流程分类 @@ -1460,7 +1463,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ocrTaskchildPictureApproVo.setFromtaskname(one.getFromtaskname()); //任务名称 ocrTaskchildPictureApproVo.setStatshisText(one.getStatshisText()); //历史-审批状态中文 ocrTaskchildPictureApproVo.setTasknamehis(one.getTasknamehis());//历史-审批节点名称 - ocrTaskchildPictureApproVo.setFinishTime(one.getTransferRecords().get(0).getFinishTime()); //完成时间 + ocrTaskchildPictureApproVo.setFinishTime(one.getFinishTime()); //完成时间 ocrTaskchildPictureApproVo.setReleaseProvince(one.getPicture().getReleaseprovince()); //省份 ocrTaskchildPictureApproVo.setFromprojectid(one.getFromprojectid()); //项目id ocrTaskchildPictureApproVo.setProductName(one.getPicture().getField9()); //产品 diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataobject/Userapprove.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataobject/Userapprove.java index d5e2b882..a366d30d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataobject/Userapprove.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataobject/Userapprove.java @@ -75,6 +75,12 @@ public class Userapprove implements BaseDto,java.io.Serializable { @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) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/service/impl/UserapproveServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/service/impl/UserapproveServiceImpl.java index e5207871..2274baca 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/service/impl/UserapproveServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/service/impl/UserapproveServiceImpl.java @@ -31,6 +31,8 @@ public class UserapproveServiceImpl extends BaseServiceImpl> getSimilarityList(HttpServletRequest request) { - //获取页码、当前页 - String pageNo = request.getParameter("pageNo"); - String pageSize = request.getParameter("pageSize"); - if (StringUtils.isEmpty(pageNo) || StringUtils.isEmpty(pageSize)) { - return ResultVoUtil.error("页码和条数必传!"); - } - String pictureId = request.getParameter("pictureId"); - if (StringUtils.isBlank(pictureId)) { - return ResultVoUtil.error("pictureId必传!"); - } - //租户主键,由前端页面传送 - String tenantId = request.getHeader("X-Tenant-Id"); - if (StringUtils.isBlank(tenantId)) { - return ResultVoUtil.error("租户主键不能为空"); - } - //排序方式 - String orderType = request.getParameter("orderType"); - //排序字段 - String orderValue = request.getParameter("orderName"); - Page similarityList = ocrTaskchildPictureService.getSimilarityList(Integer.valueOf(pageNo), Integer.valueOf(pageSize), pictureId, orderType, orderValue); + public ResultVo> 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 similarityList = ocrTaskchildPictureService.getSimilarityList(pageNo, pageSize, pictureId, orderType, orderName,userToken); return ResultVoUtil.success(similarityList); } @@ -414,8 +402,9 @@ public class OcrTaskchildPictureController extends BaseController { @RequestParam(name = "orderName") String orderName, @RequestParam(name = "checkDuplicateId") String checkDuplicateId, @RequestParam(name = "pictureId") String pictureId, - HttpServletRequest req) { - Page result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId); + HttpServletRequest request) { + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + Page result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId,userToken); return ResultVoUtil.success(result); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPictureAppro.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPictureAppro.java index 9fca97af..14f879d9 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPictureAppro.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPictureAppro.java @@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; @@ -21,6 +22,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.util.AbstractMap.SimpleEntry; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -179,4 +181,7 @@ public class OcrTaskchildPictureAppro implements java.io.Serializable { @ApiModelProperty(value = "picture表数据") private OcrPicture picture; + @ApiModelProperty(value = "提交时间") + private Long finishTime; + } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java index 2eac2b0d..a82d610e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java @@ -3,6 +3,7 @@ package cn.jyjz.xiaoyao.ocr.service; import java.util.List; import java.util.Map; +import cn.jyjz.flowable.entity.FlowApprove; import cn.jyjz.xiaoyao.common.base.param.ParamterPage; import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.common.base.vo.UserToken; @@ -51,7 +52,7 @@ public interface OcrTaskchildPictureService extends BaseService formid); + public List validateApprove(List formid); public boolean validateBoole(String[] formid); @@ -61,7 +62,7 @@ public interface OcrTaskchildPictureService extends BaseService formid,UserToken userToken); + public List validateAssignee(List formid,UserToken userToken); /** * 根据主键,查询图片详情 @@ -143,10 +144,10 @@ public interface OcrTaskchildPictureService extends BaseService getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue); + Page getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue, UserToken userToken); - Page getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId); + Page getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId, UserToken userToken); - void sendFlowTaskResult(OcrTaskchildPicture taskchildPicture,OcrPicture picture); + void sendFlowTaskResult(OcrTaskchildPicture taskchildPicture, OcrPicture picture, FlowApprove flowApprove); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java index ff3fabc5..8f6c225c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java @@ -1,6 +1,8 @@ package cn.jyjz.xiaoyao.ocr.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.jyjz.xiaoyao.admin.dataobject.User; +import cn.jyjz.xiaoyao.admin.service.UserService; import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.ocr.dataDao.OcrTaskPackageMapper; @@ -16,6 +18,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -42,6 +45,8 @@ public class OcrTaskPackageServiceImpl extends ServiceImpl formid, UserToken userToken) { + public List validateAssignee(List formid, UserToken userToken) { + List formIds = new ArrayList<>(); QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.in("ID", formid); List list = this.ocrtaskchildpicturemybatisdao.selectList(queryWrapper); - //目前没有做其他信息返回,如果需要再做修改 for (OcrTaskchildPicture ocrTaskchildPicture : list) { //判断审批人是否为当前登录用户 if (userToken.getLoginname().equals(ocrTaskchildPicture.getAssignee())) { - - } else { - return false; + formIds.add(ocrTaskchildPicture.getId().toString()); } } - return true; + return formIds; } /** @@ -226,22 +231,20 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl formid) { + public List validateApprove(List formid) { + List formIds = new ArrayList<>(); QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.in("ID", formid); List list = this.ocrtaskchildpicturemybatisdao.selectList(queryWrapper); - //目前没有做其他信息返回,如果需要再做修改 for (OcrTaskchildPicture ocrTaskchildPicture : list) { //判断当前审批状态为拒绝或者通过的,不允许再做审批 - if (ocrTaskchildPicture.getStates().intValue() == SystemConstantsOa.OA_STATUS_TYPE_END - || ocrTaskchildPicture.getStates().intValue() == SystemConstantsOa.OA_STATUS_TYPE_REFUSE) { - return false; - } else { - + if (ocrTaskchildPicture.getStates().intValue() != SystemConstantsOa.OA_STATUS_TYPE_END + && ocrTaskchildPicture.getStates().intValue() != SystemConstantsOa.OA_STATUS_TYPE_REFUSE) { + formIds.add(ocrTaskchildPicture.getId().toString()); } } - return true; + return formIds; } @@ -326,6 +329,7 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue) { + public Page getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue, UserToken userToken) { OcrPictureDuplicateHis duplicateHis = pictureDuplicateHisService.getOne(new LambdaQueryWrapper().eq(OcrPictureDuplicateHis::getPictureId, pictureId)); Page objectPage = new Page<>(); if (ObjectUtils.isNotEmpty(duplicateHis) && org.apache.commons.lang3.StringUtils.isNotBlank(duplicateHis.getCheckDuplicateResultHisJson())) { - OcrTaskchildPicture one = this.getOne(new LambdaQueryWrapper().eq(OcrTaskchildPicture::getPictureid, pictureId)); + String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批"); JSONObject jsonObject = JSONObject.parseObject(duplicateHis.getCheckDuplicateResultHisJson()); Set pictureIds = jsonObject.keySet(); - List taskChildPictures = this.getPictureHistoryList(new ArrayList<>(pictureIds), one.getTaskname()); + List taskChildPictures = this.getPictureHistoryList(new ArrayList<>(pictureIds), userNodeType); for (OcrTaskChildPictureVo taskChildPicture : taskChildPictures) { taskChildPicture.setSimilarityScore(Integer.parseInt(jsonObject.getString(taskChildPicture.getPictureId().toString()))); } @@ -683,22 +687,47 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId) { + public Page getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId, UserToken userToken) { Page page = new Page<>(pageNo, pageSize); - OcrTaskchildPicture one = this.getOne(new LambdaQueryWrapper().eq(OcrTaskchildPicture::getPictureid, pictureId)); + String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批"); - return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page, checkDuplicateId, pictureId, oderType, oderName,one.getTaskname()); + return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page, checkDuplicateId, pictureId, oderType, oderName, userNodeType); } @Override - public void sendFlowTaskResult(OcrTaskchildPicture taskchildPicture, OcrPicture picture) { + public void sendFlowTaskResult(OcrTaskchildPicture taskchildPicture, OcrPicture picture, FlowApprove flowApprove) { FlowResultDto flowResultDto = new FlowResultDto(); flowResultDto.setTenantNo(picture.getTenantId()); flowResultDto.setAccountNo(Long.parseLong(picture.getPictureid())); flowResultDto.setTaskNo(Long.parseLong(picture.getRemark())); flowResultDto.setPictureMatchDegree(BigDecimal.valueOf(picture.getSimilarityscore())); flowResultDto.setIsPictureRepeat(Integer.valueOf(picture.getField14())); - Integer resultStatus = taskchildPicture.getStates() == SystemConstantsOa.OA_STATUS_TYPE_END ? SystemConstantsOa.OCR_STATUS_SUCCESS : SystemConstantsOa.OCR_STATUS_FAILURE; + flowResultDto.setIsPictureRight(picture.getIztrueorfalse()); + Integer resultStatus = Objects.equals(taskchildPicture.getStates(), SystemConstantsOa.OA_STATUS_TYPE_END) ? SystemConstantsOa.OCR_STATUS_SUCCESS : SystemConstantsOa.OCR_STATUS_FAILURE; flowResultDto.setApproveResult(resultStatus); + flowResultDto.setApproveRemark(flowApprove.getComment()); + List nodeList = new ArrayList<>(); + List userApproves = userapproveService.list(new LambdaQueryWrapper().eq(Userapprove::getFormid, taskchildPicture.getId())); + if (CollectionUtils.isNotEmpty(userApproves)) { + for (Userapprove userApprove : userApproves) { + ApproveNodeDto approveNode = getApproveNodeDto(userApprove); + nodeList.add(approveNode); + } + } + flowResultDto.setApproveDetailList(nodeList); + + } + + private static ApproveNodeDto getApproveNodeDto(Userapprove userApprove) { + ApproveNodeDto approveNode = new ApproveNodeDto(); + approveNode.setApproveRemark(userApprove.getTaskcomment()); + approveNode.setApproveResult(userApprove.getStatshis() == 2 ? 0 : 1); + approveNode.setApproveWay(0); + approveNode.setNodeName(userApprove.getTaskname()); + approveNode.setReason(userApprove.getReason()); + approveNode.setApproveByName(userApprove.getUsername()); + //审批不通过出来方式 + approveNode.setProcessMethod(1); + return approveNode; } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskchildPictureApproVo.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskchildPictureApproVo.java index 1e6faf60..a77390d3 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskchildPictureApproVo.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskchildPictureApproVo.java @@ -36,7 +36,7 @@ public class OcrTaskchildPictureApproVo implements java.io.Serializable { @ApiModelProperty(value = "提交时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") - private Date finishTime; + private Long finishTime; @ApiModelProperty(value = "拜访地区") private String releaseProvince; From 3ad65bf5a62e58cd75b90166a9d63e8dec365694 Mon Sep 17 00:00:00 2001 From: DELL Date: Sat, 30 Mar 2024 11:21:49 +0800 Subject: [PATCH 06/92] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=9F=AD=E4=BF=A1?= =?UTF-8?q?=E9=AA=8C=E8=AF=81=E7=A0=81=E6=A8=A1=E5=9D=97=EF=BC=8C=E9=99=90?= =?UTF-8?q?=E5=88=B6=E5=BD=93=E5=A4=A9=E9=AA=8C=E8=AF=81=E7=A0=81=E6=9C=80?= =?UTF-8?q?=E5=A4=9A=E5=8F=91=E9=80=81=E5=8D=81=E6=AC=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SmsLoginServiceImpl.java | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) 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..695110f3 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.CACHE_TIME); + //保存验证码到 缓存中 return ResultVoUtil.success(code); } From 957883d0a34d3ab79a26381113e5088db8702f2d Mon Sep 17 00:00:00 2001 From: DELL Date: Sat, 30 Mar 2024 11:34:53 +0800 Subject: [PATCH 07/92] =?UTF-8?q?feature:=E4=BF=AE=E6=94=B9=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E8=AF=86=E5=88=AB=E6=B0=B4=E5=8D=B0=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/service/OcrPictureService.java | 2 + .../service/impl/OcrPictureServiceImpl.java | 78 +++++++++++++++++++ .../thread/tasks/PictureImgToLocalTask.java | 66 ++-------------- 3 files changed, 87 insertions(+), 59 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPictureService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPictureService.java index 63984ac7..c0713568 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPictureService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPictureService.java @@ -70,4 +70,6 @@ public interface OcrPictureService extends BaseService { OcrPicture getPackagePictureInfo(String packageId, String pictureId); +// Long getPhotoDateTime(OcrPicture picture); + } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java index 7afe48d8..e9da0f49 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java @@ -16,7 +16,9 @@ import cn.jyjz.xiaoyao.ocr.dataobject.*; import cn.jyjz.xiaoyao.ocr.service.*; import cn.jyjz.xiaoyao.ocr.thread.TaskQueue; import cn.jyjz.xiaoyao.ocr.thread.entity.PictureImgToLocalEntity; +import cn.jyjz.xiaoyao.ocr.thread.tasks.PictureImgToLocalTask; import cn.jyjz.xiaoyao.ocr.util.*; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -26,6 +28,17 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.lang3.StringUtils; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; +import org.apache.http.client.ClientProtocolException; +import org.apache.http.client.HttpClient; +import org.apache.http.client.config.RequestConfig; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.ContentType; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.impl.client.HttpClients; +import org.apache.http.util.EntityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -41,6 +54,8 @@ import java.io.IOException; import java.math.BigDecimal; import java.net.URL; import java.net.URLConnection; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -318,6 +333,69 @@ public class OcrPictureServiceImpl extends BaseServiceImpl>>>>>>>>" + picture.getLocalpictrueurl()); +// // 创建自定义的HttpClientBuilder,设置连接超时和套接字超时 +// HttpClientBuilder httpClientBuilder = HttpClients.custom() +// .setDefaultRequestConfig(RequestConfig.custom() +// .setConnectTimeout(30 * 1000) // 设置连接超时时间为30秒 +// .setSocketTimeout(30 * 1000) // 设置套接字超时时间为30秒 +// .build()); +// +// // 使用自定义的HttpClientBuilder创建HttpClient +// HttpClient httpClient = httpClientBuilder.build(); +// HttpPost httpPost = new HttpPost(PictureImgToLocalTask.api_test2_identify_url); +// StringEntity requestEntity = new StringEntity(requestBody.toString(), ContentType.APPLICATION_JSON); +// httpPost.setEntity(requestEntity); +// try { +// HttpResponse response = httpClient.execute(httpPost); +// System.out.println("response===========>>>>" + response); +// HttpEntity responseEntity = response.getEntity(); +// if (responseEntity != null) { +// String responseString = EntityUtils.toString(responseEntity); +// JSONObject semanticResponseJson = JSONObject.parseObject(responseString); +// System.out.println("semanticResponseJson===========>>>>>>>>" + semanticResponseJson.toString()); +// JSONObject semanticResult = semanticResponseJson.getJSONObject("semantic_result"); +// System.out.println("semanticResult===========>>>>>>>>" + semanticResult.toString()); +// JSONArray timeArray = semanticResult.getJSONArray("时间"); +// StringBuilder dateTimeBuilder = new StringBuilder(); +// for (int i = 0; i < Math.min(2, timeArray.size()); i++) { +// JSONObject timeObject = timeArray.getJSONObject(i); +// String timeValue = timeObject.getString("ocrText"); +// if (i == 0) { +// dateTimeBuilder.append(timeValue); +// dateTimeBuilder.append(" "); +// } else { +// dateTimeBuilder.append(timeValue); +// } +// } +// +// String dateTimeString = dateTimeBuilder.toString(); +// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); +// try { +// Date date = sdf.parse(dateTimeString); +// timestamp = date.getTime(); +// } catch (ParseException e) { +// e.printStackTrace(); +// } +// } +// } catch (ClientProtocolException e) { +// log.error("HTTP请求发生客户端协议异常: " + e.getMessage()); +// } catch (IOException e) { +// log.error("HTTP请求发生IO异常: " + e.getMessage()); +// } +// return timestamp; +// } + + + public OcrTaskchildPicture updateTaskChild(OcrPicture ocrPicture, Long packageid, String buessinessno) { OcrTaskchildPicture ocrTaskchildPicture = ocrTaskchildPictureService.getOne(new LambdaQueryWrapper().eq(OcrTaskchildPicture::getPictureid, ocrPicture.getId())); ocrTaskchildPicture.setBuessinessno(buessinessno); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureImgToLocalTask.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureImgToLocalTask.java index 75c3f264..6be700d6 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureImgToLocalTask.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureImgToLocalTask.java @@ -25,6 +25,9 @@ import org.apache.http.entity.ContentType; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Autowired; + +import javax.annotation.Resource; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; @@ -43,8 +46,6 @@ public class PictureImgToLocalTask implements Runnable { private PictureImgToLocalEntity pictureImgToLocal; - - public PictureImgToLocalTask(PictureImgToLocalEntity pictureImgToLocal) { this.pictureImgToLocal = pictureImgToLocal; } @@ -73,67 +74,14 @@ public class PictureImgToLocalTask implements Runnable { picture.setImgHash(ocrPictureClassifyAndHash.get("hash")); picture.setClassificationid(ocrPictureClassifyAndHash.get("classId")); } - //获取拍照时间 -// JSONObject requestBody = new JSONObject(); -// requestBody.put("task_id", "1111"); -//// requestBody.put("img_path", picture.getLocalpictrueurl()); -// requestBody.put("img_path", "https://b-dr.prevailcloud.com/pangu/changen/attachment/query/pb/attachment/1754054888247390208.jpg"); -// requestBody.put("scenes", 0); -// System.out.println("img_path===============>>>>>>>>>"+picture.getLocalpictrueurl()); -// HttpClient httpClient = HttpClients.createDefault(); -// HttpPost httpPost = new HttpPost(PictureImgToLocalTask.api_test2_identify_url); -// StringEntity requestEntity = new StringEntity(requestBody.toString(), ContentType.APPLICATION_JSON); -// httpPost.setEntity(requestEntity); -// try { -// HttpResponse response = httpClient.execute(httpPost); -// System.out.println("response===========>>>>"+response); -// HttpEntity responseEntity = response.getEntity(); -// if (responseEntity != null) { -// String responseString = EntityUtils.toString(responseEntity); -// JSONObject semanticResponseJson = JSONObject.parseObject(responseString); -// System.out.println("semanticResponseJson===========>>>>>>>>"+semanticResponseJson.toString()); -// JSONObject semanticResult = semanticResponseJson.getJSONObject("semantic_result"); -// System.out.println("semanticResult===========>>>>>>>>"+semanticResult.toString()); -// // 获取键为"时间"的值 -// JSONArray timeArray = semanticResult.getJSONArray("时间"); -// StringBuilder dateTimeBuilder = new StringBuilder(); // 用于拼接日期时间字符串 -// for (int i = 0; i < Math.min(2, timeArray.size()); i++) { -// JSONObject timeObject = timeArray.getJSONObject(i); -// String timeValue = timeObject.getString("ocrText"); -// // 第一个元素是日期,第二个元素是时间 -// if (i == 0) { -// dateTimeBuilder.append(timeValue); // 拼接日期 -// dateTimeBuilder.append(" "); // 添加一个空格分隔符 -// } else { -// dateTimeBuilder.append(timeValue); // 拼接时间 -// } -// } -// -// String dateTimeString = dateTimeBuilder.toString(); // 获取拼接后的日期时间字符串 -// System.out.println("dateTimeString===========>>>>>>>>"+dateTimeString); -// // 假设时间值的格式为"yyyy-MM-dd HH:mm:ss" -// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); -// try { -// // 解析时间字符串并转换为时间戳 -// Date date = sdf.parse(dateTimeString); -// long timestamp = date.getTime(); -// // 将时间戳赋值给picture.setTime -// picture.setPhotoDateTimestamp(timestamp); -// System.out.println("picture.setPhotoDateTimestamp===========>>>>>>>>"+picture.getPhotoDateTimestamp()); -// } catch (ParseException e) { -// // 如果解析失败,处理异常 -// e.printStackTrace(); -// } -// } -// } catch (ClientProtocolException e) { -// log.error("HTTP请求发生客户端协议异常: " + e.getMessage()); -// } catch (IOException e) { -// log.error("HTTP请求发生IO异常: " + e.getMessage()); + // 获取拍照时间 +// Long timestamp = ocrPictureService.getPhotoDateTime(picture); +// if(timestamp != 0L){ +// picture.setPhotoDateTimestamp(timestamp); // } ocrPictureService.updateById(picture); } } } - } From a235b507d42ffd7e27b920fa88291bd08cbfd234 Mon Sep 17 00:00:00 2001 From: DELL Date: Sat, 30 Mar 2024 12:21:34 +0800 Subject: [PATCH 08/92] =?UTF-8?q?fix:=E5=B7=A5=E5=85=B7=E7=B1=BB=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E6=97=B6=E9=97=B4=E6=A0=BC=E5=BC=8F=EF=BC=8C=E6=88=91?= =?UTF-8?q?=E7=9A=84=E7=BB=88=E5=AE=A1=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=5F=E6=97=B6=E9=97=B4=E6=9F=A5=E8=AF=A2=5F=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/flowable/controller/FlowTaskController.java | 6 +++--- .../java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 8c443443..1f0c8b2d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -414,13 +414,13 @@ public class FlowTaskController extends BaseController { String[] dateRange = izuptime.split("-"); if (dateRange.length == 2) { try { - SimpleDateFormat sdfInput = new SimpleDateFormat("yyyy/MM/dd"); + SimpleDateFormat sdfInput = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); // 解析开始时间 - Long startTimeStamp = sdfInput.parse(dateRange[0].trim()).getTime(); + Long startTimeStamp = sdfInput.parse(dateRange[0].trim() + " 00:00:00").getTime(); // 解析结束时间 - Long endTimeStamp = sdfInput.parse(dateRange[1].trim()).getTime(); + Long endTimeStamp = sdfInput.parse(dateRange[1].trim() + " 23:59:59").getTime(); // 如果开始时间不为空,则将其放入查询条件中 if (startTimeStamp != null) { diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java index 4dded098..029f8224 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java @@ -76,7 +76,7 @@ public class SearchParaFormatting { //格式化时间数据 String[] times =searchValue.trim().replaceAll("\\s+", "").split("-"); beginTime = DateUtil.parse(times[0],"yyyy/MM/dd"); - endTime = DateUtil.parse(times[1],"yyyy/MM/dd"); + endTime = DateUtil.parse(times[1]+" 23:59:59","yyyy/MM/dd HH:mm:ss"); break; default: } From 5f1bc17a5c638d76177fd3f6a72593ef11d6ad08 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Sat, 30 Mar 2024 13:01:41 +0800 Subject: [PATCH 09/92] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF=E5=8F=8A=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8C=85=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java | 1 - .../jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) 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 af386ca1..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 @@ -126,7 +126,6 @@ public class User implements BaseDto,java.io.Serializable { private Long psdupdatetime; @Schema(description = "用户审批节点") @TableField(value="NODETYPE") - @JsonSerialize(using = DateSerializer.class) private Integer nodeType; //用户对应的角色信息,映射文件中对应的字段信息 diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java index 8f6c225c..ec02f131 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java @@ -84,6 +84,7 @@ public class OcrTaskPackageServiceImpl extends ServiceImpl Date: Sat, 30 Mar 2024 14:02:53 +0800 Subject: [PATCH 10/92] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9=E7=9F=AD=E4=BF=A1?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E6=A8=A1=E5=9D=97=5F=E6=89=8B=E6=9C=BA?= =?UTF-8?q?=E5=8F=B7=E6=AD=A3=E7=A1=AE=E7=9A=84=E6=83=85=E5=86=B5=E4=B8=8B?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E7=94=A8=E6=88=B7=E9=94=99=E8=AF=AF=E7=9A=84?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/base/service/UserTokenService.java | 8 +++++ .../service/impl/SmsLoginServiceImpl.java | 2 +- .../xiaoyao/admin/service/UserService.java | 7 ++++ .../admin/service/impl/UserServiceImpl.java | 32 +++++++++++++++++++ .../service/impl/UserTokenServiceImpl.java | 18 +++++++++++ 5 files changed, 66 insertions(+), 1 deletion(-) 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..c762dd4b 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 用户主键 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 695110f3..38e6f497 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 @@ -114,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/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/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/UserTokenServiceImpl.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserTokenServiceImpl.java index 02a58fbf..e0494324 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); From dba60ff044f45003a6b68e6e5c91289f4e3ce95f Mon Sep 17 00:00:00 2001 From: DELL Date: Sat, 30 Mar 2024 14:41:37 +0800 Subject: [PATCH 11/92] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9=E8=B4=A6=E5=8F=B7?= =?UTF-8?q?=E5=AF=86=E7=A0=81=E7=99=BB=E5=BD=95=E6=A8=A1=E5=9D=97=EF=BC=8C?= =?UTF-8?q?=E5=9C=A8=E8=BE=93=E5=85=A5=E9=94=99=E8=AF=AF=E7=9A=84=E4=BC=81?= =?UTF-8?q?=E4=B8=9A=E7=BC=96=E7=A0=81=E3=80=81=E8=B4=A6=E5=8F=B7=E3=80=81?= =?UTF-8?q?=E5=AF=86=E7=A0=81=E6=97=B6=EF=BC=8C=E5=BC=B9=E5=87=BA=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E7=9A=84=E6=8F=90=E7=A4=BA=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/base/service/UserTokenService.java | 16 +++++++++++ .../MyAuthenticationProvider.java | 13 ++++++--- .../admin/dataDao/UserTenantMybatisDao.java | 14 ++++++++++ .../admin/service/UserTenantService.java | 17 ++++++++++++ .../service/impl/UserTenantServiceImpl.java | 26 ++++++++++++++++++ .../service/impl/UserTokenServiceImpl.java | 21 +++++++++++++++ .../mapper/admin/UserTenantMapper.xml | 27 +++++++++++++++++++ 7 files changed, 131 insertions(+), 3 deletions(-) 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 c762dd4b..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 @@ -131,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-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..192d9475 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,7 +120,12 @@ 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("企业编码错误!"); } @@ -128,7 +133,9 @@ public class MyAuthenticationProvider implements AuthenticationProvider { if (!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-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/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/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 e0494324..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 @@ -393,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 @@ ) + + + + + + - \ No newline at end of file + From 5dec7d2c04df3e07f271309edca2d3a8ac662274 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Sat, 30 Mar 2024 18:54:58 +0800 Subject: [PATCH 19/92] =?UTF-8?q?fix:=20=E9=BB=98=E8=AE=A4=E6=8F=90?= =?UTF-8?q?=E6=8A=A5=E6=97=A5=E6=9C=9F=E5=92=8C=E6=8B=8D=E7=85=A7=E6=97=A5?= =?UTF-8?q?=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java index 2670a811..9a9a0f4d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java @@ -192,7 +192,9 @@ public class PictureDisposeTask implements Runnable{ picture.setField11(pictureSourceResult.getVisitDate()); //提报日期时间戳 - picture.setSubmitDateTimestamp(pictureSourceResult.getSubmitTime()); +// picture.setSubmitDateTimestamp(pictureSourceResult.getSubmitTime()); + picture.setSubmitDateTimestamp(System.currentTimeMillis()); + picture.setPhotoDateTimestamp(System.currentTimeMillis()); System.out.println("SubmitDateTimestamp1=================>>>>>>>"+pictureSourceResult.getSubmitTime()); System.out.println("SubmitDateTimestamp2=================>>>>>>>"+picture.getSubmitDateTimestamp()); From 0ff031169b99fb1923e51d7f9aacb3f70e61c5b1 Mon Sep 17 00:00:00 2001 From: LILI <707464720@qq.com> Date: Sat, 30 Mar 2024 19:38:43 +0800 Subject: [PATCH 20/92] =?UTF-8?q?fix:1.=E4=B8=80=E9=94=AE=E6=9F=A5?= =?UTF-8?q?=E9=87=8D=E6=8F=90=E6=8A=A5=E4=BA=BA=E6=A8=A1=E7=B3=8A=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=202.AI=E5=B7=A5=E5=8D=95=E6=A8=A1=E7=B3=8A=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=203.AI=E5=B7=A5=E5=8D=95=E4=BB=BB=E5=8A=A1=E5=8C=85?= =?UTF-8?q?=E5=80=92=E6=8E=92=E5=BA=8F=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jyjz/xiaoyao/ocr/controller/OcrPictureController.java | 8 ++++++++ .../src/main/resources/mapper/oa/OcrTaskPackageMapper.xml | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java index 211e87c9..629f4a70 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java @@ -264,6 +264,8 @@ public class OcrPictureController extends BaseController { return ResultVoUtil.error("租户主键不能为空"); } + + QueryWrapper queryWrapper = new QueryWrapper<>(); String search_month = req.getParameter("search_month"); @@ -291,6 +293,12 @@ public class OcrPictureController extends BaseController { queryWrapper.ge("create_time", DataUtil.afterDateByMonth(Integer.parseInt(search_month))); } + //提报人模糊搜索 + String upUserName = req.getParameter("upUserName"); + if(StringUtils.isNotBlank(upUserName)){ + queryWrapper.like("upName",upUserName); + } + //根据参数枚举,获取检索参数,并映射为数据库的字段的key-v map Map paraMap = new HashMap<>(); for (SearchConfigEnum config : SearchConfigEnum.values()) { diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml index c1091775..c898c7f5 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml @@ -10,8 +10,9 @@ left join s_user_t t3 on t1.create_by = t3.ID - t1.name like concat('%', #{packageName}, '%') + t1.name like concat('%', #{packageName}, '%') or T3.USERNAME like concat('%', #{packageName}, '%') + ORDER BY T1.create_time desc \ No newline at end of file From 57cc29f86edba21e171b2bb0ec23a4c29d6e70f6 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Sat, 30 Mar 2024 20:23:37 +0800 Subject: [PATCH 21/92] =?UTF-8?q?feat:=20=E5=88=9B=E5=BB=BA=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8C=85=E5=90=8E=20=E5=A2=9E=E5=8A=A0=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java index 2f453723..8a450473 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskPackageServiceImpl.java @@ -62,7 +62,7 @@ public class OcrTaskPackageServiceImpl extends ServiceImpl Date: Sat, 30 Mar 2024 21:42:32 +0800 Subject: [PATCH 22/92] =?UTF-8?q?fix:ai=E7=BB=9F=E8=AE=A1=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=8E=BB=E6=8E=8924=E5=B0=8F=E6=97=B6=E9=99=90?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/service/impl/OcrSearchHistoryServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 499d2589..ac608815 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -63,9 +63,9 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl Date: Sat, 30 Mar 2024 22:03:14 +0800 Subject: [PATCH 23/92] =?UTF-8?q?fix:1.=E4=BB=A3=E7=A0=81=E5=90=88?= =?UTF-8?q?=E5=B9=B6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/oa/OcrTaskPackageMapper.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml index ffc46f88..99d4747b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml @@ -11,8 +11,9 @@ t1.tenant_id = #{tenantId} - and t1.name like concat('%', #{packageName}, '%') or T3.USERNAME 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 From b8721bd84a096e8e306e637615754c6f4579cc5f Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Sat, 30 Mar 2024 23:20:19 +0800 Subject: [PATCH 24/92] =?UTF-8?q?fix:=201.=E4=BF=AE=E6=94=B9=E5=B0=8F?= =?UTF-8?q?=E7=BB=93=E6=9F=A5=E9=87=8D2.=E4=BF=AE=E6=94=B9=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flowable/controller/FlowTaskController.java | 4 ++-- .../xiaoyao/ocr/dataobject/OcrPictureInfo.java | 6 ++++++ .../ocr/service/impl/OcrPictureServiceImpl.java | 1 + .../impl/OcrTaskchildPictureServiceImpl.java | 15 +++++++++++++++ .../impl/OcrUsersearchchildServiceImpl.java | 6 +++--- .../main/resources/mapper/oa/FlowableccMapper.xml | 2 ++ .../main/resources/mapper/oa/OcrPictureMapper.xml | 1 + 7 files changed, 30 insertions(+), 5 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 1f0c8b2d..b739f568 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -172,10 +172,10 @@ public class FlowTaskController extends BaseController { formIds.addAll(formId); if (CollectionUtils.isNotEmpty(formIds)) { Integer success = flowTaskService.complete(approve, userToken); - return ResultVoUtil.success("审批成功" + success + "条," + "审核失败" + (flowTaskInfoList.size() - success) + "条"); + return ResultVoUtil.success("审批成功" + success + "条," + "无权审核" + (flowTaskInfoList.size() - success) + "条",""); } } - return ResultVoUtil.success("审核成功0条," + "审核失败" + flowTaskInfoList.size() + "条"); + return ResultVoUtil.success("审核成功0条," + "无权审核" + flowTaskInfoList.size() + "条",""); } @GetMapping("/listhistore") diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPictureInfo.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPictureInfo.java index 6dd46f0c..47bf3322 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPictureInfo.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPictureInfo.java @@ -35,6 +35,12 @@ public class OcrPictureInfo { @TableField(value = "img_size") private String imgSize; + /** + * 图片名称 + */ + @TableField(value = "img_name") + private String imgName; + /** * 图片格式 */ diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java index f0574221..b8afcf1e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java @@ -699,6 +699,7 @@ public class OcrPictureServiceImpl extends BaseServiceImpl taskList = iFlowTaskService.nowRunTask(formData.getProcessInstanceId(), ocrTaskchildPicture.getProcessdefinitionid()); + Task taskData = null; + if (null != taskList && !taskList.isEmpty()) { + taskData = taskList.get(0); + ocrTaskchildPicture.setAssignee(taskData.getAssignee()); + } + ocrPicture.setTaskchildpictureid(ocrTaskchildPicture.getId().toString()); //修改状态为已生成任务并且审批状态为审批中 ocrPicture.setTaskstatus("1"); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java index 73157acf..ad032b4e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java @@ -86,9 +86,9 @@ public class OcrUsersearchchildServiceImpl extends BaseServiceImpl 1) t1 LEFT JOIN ocr_taskchild_picture t2 ON t1.ID = t2.PICTUREID @@ -232,6 +233,7 @@ t2.UPDATETIME updateTime from (select field8 content, ID id, imgUrl FROM ocr_picture + where ID in (select child.PICTUREID from oa_userfinal_t final left join ocr_taskchild_picture child on final.FORMID = child.ID) GROUP BY field8 HAVING count(field8) > 1) t1 LEFT JOIN ocr_taskchild_picture t2 ON t1.ID = t2.PICTUREID 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..d9bf1c86 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 @@ -72,6 +72,7 @@ + From 0ccbf8bbfc184a0e8d6ff70f0bfcb941acf16e16 Mon Sep 17 00:00:00 2001 From: DELL Date: Sat, 30 Mar 2024 23:28:45 +0800 Subject: [PATCH 25/92] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9ai=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E5=B7=A5=E5=85=B7=E6=8E=A5=E5=8F=A3=EF=BC=8C=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=9F=A5=E8=AF=A2=E8=A1=A8=E5=92=8C=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OcrSearchHistoryServiceImpl.java | 4 ++-- .../mapper/oa/OcrSearchHistoryMapper.xml | 23 +++++++++++++++---- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index ac608815..23bb0b30 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -87,7 +87,7 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl saveList = new ArrayList<>(); int i=0; for (String childpictureid : cps) { - if (childpictureid.equals("100.00")){ + if (childpictureid.equals("100")){ i++; } } @@ -97,7 +97,7 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl + + + + + + + + + + + SELECT t1.*, + ifnull(t3.STATSHIS, 1) historyStates + FROM ocr_picture t1 + LEFT JOIN ocr_taskchild_picture t2 + on t1.ID = t2.PICTUREID + LEFT JOIN oa_userapprove_t t3 on t2.ID = t3.FORMID and t3.TASKNAME = '${userNodeType}' + where t1.ID in + + #{item} + + diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml index ffc46f88..ba5d81a8 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskPackageMapper.xml @@ -3,15 +3,22 @@ From 950ac308df2cb2eb3907c8db933929cc1726478a Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Sun, 31 Mar 2024 13:35:27 +0800 Subject: [PATCH 29/92] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E6=9F=A5?= =?UTF-8?q?=E9=87=8D=E6=97=B6=E5=9B=A0=E4=B8=BA=E6=9F=90=E5=BC=A0=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E6=B2=A1=E6=9C=89=E4=B8=8B=E8=BD=BD=E5=88=B0=E6=9C=AC?= =?UTF-8?q?=E5=9C=B0=EF=BC=8C=E5=AF=BC=E8=87=B4=E6=9F=A5=E9=87=8D=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=BC=82=E5=B8=B8=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OcrCheckDuplicateServiceImpl.java | 36 +++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java index 3f60c2be..cf6c2c00 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java @@ -33,6 +33,8 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.io.PrintWriter; +import java.io.StringWriter; import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; @@ -104,6 +106,12 @@ public class OcrCheckDuplicateServiceImpl extends ServiceImpl map = this.getOcrPictureClassifyAndHash(ocrPicture.getLocalpictrueurl()); + String url = ocrPicture.getLocalpictrueurl(); + if(StringUtils.isBlank(url)){ + if(StringUtils.isBlank(ocrPicture.getImgurl())){ + continue; + } + url = ocrPicture.getImgurl(); + } + + Map map = this.getOcrPictureClassifyAndHash(url); if (map != null) { ocrPicture.setImgHash(map.get("hash")); ocrPicture.setClassificationid(map.get("classId")); @@ -203,7 +219,15 @@ public class OcrCheckDuplicateServiceImpl extends ServiceImpl map = this.getOcrPictureClassifyAndHash(ocrPictureNext.getLocalpictrueurl()); + logger.info("图片没有hash值,进入分类并获取hash接口:{}",JSONObject.toJSON(ocrPictureNext)); + String url = ocrPictureNext.getLocalpictrueurl(); + if(StringUtils.isBlank(url)){ + if(StringUtils.isBlank(ocrPictureNext.getImgurl())){ + continue; + } + url = ocrPictureNext.getImgurl(); + } + Map map = this.getOcrPictureClassifyAndHash(url); if (map != null) { ocrPictureNext.setImgHash(map.get("hash")); ocrPictureNext.setClassificationid(map.get("classId")); @@ -247,18 +271,26 @@ public class OcrCheckDuplicateServiceImpl extends ServiceImpl Date: Sun, 31 Mar 2024 13:41:59 +0800 Subject: [PATCH 30/92] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9ai=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E5=B7=A5=E5=85=B7=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=9C=AA?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AE=8C=E6=95=B4=EF=BC=8C=E5=9B=A0=E4=B8=BA?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E6=8B=89=E4=BB=A3=E7=A0=81=E6=8B=BF=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=E6=96=B0=E5=A2=9E=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=89=80?= =?UTF-8?q?=E4=BB=A5=E5=85=88=E6=9A=82=E6=97=B6=E6=8F=90=E4=BA=A4=E9=83=A8?= =?UTF-8?q?=E5=88=86=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/controller/OcrAiApprovalTools.java | 5 +- .../ocr/dataDao/OcrSearchHistoryMapper.java | 2 + .../ocr/service/IOcrSearchHistoryService.java | 2 +- .../impl/OcrSearchHistoryServiceImpl.java | 86 ++++++++++++++----- .../mapper/oa/OcrSearchHistoryMapper.xml | 26 +++--- 5 files changed, 83 insertions(+), 38 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java index a71e887b..5da0a6a6 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java @@ -60,10 +60,11 @@ public class OcrAiApprovalTools { ai审批工单 */ @RequestMapping(value = "/aiApprovaltools", method = RequestMethod.GET) - public ResultVo aiApprovaltools(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid) { + public ResultVo aiApprovaltools(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid, + @RequestParam(value = "nodeType", required = true) Integer nodeType) { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); - Map selectaisp = iocrsearchhistoryservice.selectaisp(userToken.getUserid(), taskid); + Map selectaisp = iocrsearchhistoryservice.selectaisp(userToken.getUserid(), taskid,nodeType); return ResultVoUtil.success(selectaisp); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrSearchHistoryMapper.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrSearchHistoryMapper.java index 3c78666e..9284480c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrSearchHistoryMapper.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrSearchHistoryMapper.java @@ -31,5 +31,7 @@ public interface OcrSearchHistoryMapper extends BaseMapper { Map selectaisp(@Param("id")String id); + List> selectaispList(@Param("id")String id); + String selectaiuser(@Param("userid")String userid); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java index 5624c592..70bb0c88 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java @@ -21,7 +21,7 @@ public interface IOcrSearchHistoryService extends IService { ResultVo toolscount(String tenantid); - Map selectaisp(String userid,String id); + Map selectaisp(String userid,String id,Integer nodeType); ResultVo clearmark(String id); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 23bb0b30..6afb6b9b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -1,5 +1,6 @@ package cn.jyjz.xiaoyao.ocr.service.impl; +import cn.jyjz.xiaoyao.admin.dataobject.User; import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.redis.cache.ICacheManager; @@ -8,8 +9,10 @@ import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory; import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import cn.jyjz.xiaoyao.ocr.dataDao.OcrSearchHistoryMapper; @@ -74,36 +77,73 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl selectaisp(String userid,String id) { +// Map selectaisp = ocrsearchhistorymapper.selectaisp(id); +// if(null==selectaisp){ +// return null; +// } +// String selectaiuser = ocrsearchhistorymapper.selectaiuser(userid); +// +// String[] cps = selectaisp.get("pictureresult").toString().split(","); +// +// List saveList = new ArrayList<>(); +// int i=0; +// for (String childpictureid : cps) { +// if (childpictureid.equals("100")){ +// i++; +// } +// } +// +// Map map=new HashMap<>(); +// map.put("taskid",id); +// map.put("tenantusername",selectaiuser); +// map.put("packagename",selectaisp.get("packagename")); +// map.put("tasks","基线任务"); +//// map.put("similarcount",selectaisp.get("similarcount")); +// map.put("createtime",selectaisp.get("createtime")); +// map.put("similarComplete",i); +// +// return map; +// } + @Override - public Map selectaisp(String userid,String id) { - Map selectaisp = ocrsearchhistorymapper.selectaisp(id); - if(null==selectaisp){ - return null; + public Map selectaisp(String userid, String id,Integer nodeType) { + List> resultList = ocrsearchhistorymapper.selectaispList(id); + if (resultList == null || resultList.isEmpty()) { + return Collections.emptyMap(); } - String selectaiuser = ocrsearchhistorymapper.selectaiuser(userid); - String[] cps = selectaisp.get("pictureresult").toString().split(","); - - List saveList = new ArrayList<>(); - int i=0; - for (String childpictureid : cps) { - if (childpictureid.equals("100")){ - i++; + Map mappedResults = new LinkedHashMap<>(); + String selectaiuser = ocrsearchhistorymapper.selectaiuser(userid); + mappedResults.put("packageId", id); + mappedResults.put("tenantUserName", selectaiuser); + mappedResults.put("packageName", resultList.get(0).get("packageName")); + mappedResults.put("createTime", resultList.get(0).get("createTime")); + int similarComplete = 0; + List pictureIds = new ArrayList<>(); // 存储所有的pictureId + for (Map selectaisp : resultList) { + Object pictureResult = selectaisp.get("pictureResult"); + String pictureResultStr = pictureResult.toString(); + if ("100.0".equals(pictureResultStr)) { + similarComplete++; + } + Object pictureId = selectaisp.get("pictureId"); + if (pictureId != null) { + pictureIds.add(pictureId); } } - - Map map=new HashMap<>(); - map.put("taskid",id); - map.put("tenantusername",selectaiuser); - map.put("packagename",selectaisp.get("packagename")); - map.put("tasks","基线任务"); -// map.put("similarcount",selectaisp.get("similarcount")); - map.put("createtime",selectaisp.get("createtime")); - map.put("similarComplete",i); - - return map; +// List failedPictureIds = fakeInterface.getFailedPictureIds(pictureIds,nodeType); // 假的接口,根据pictureId集合获取不通过的pictureId列表 +// int passedCount = pictureIds.size() - failedPictureIds.size(); // 通过的数量 +// int failedCount = failedPictureIds.size(); // 不通过的数量 + mappedResults.put("similarComplete", similarComplete); +// mappedResults.put("passedCount", passedCount); +// mappedResults.put("failedCount", failedCount); +// mappedResults.put("failedPictureIds", failedPictureIds); + return mappedResults; } + @Override public ResultVo clearmark(String id) { 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 6ea6dd23..60723532 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 @@ -66,22 +66,23 @@ (SELECT COUNT(*) FROM ocr_taskchild_picture WHERE TENANTID = ""#{tenantid}"" AND STATES = '3') as approved - - - - - - + - SELECT tp.id as id, - tp.name as packagename, - GROUP_CONCAT(IFNULL(cdr.max_similarity, 0)) as pictureresult, - tp.create_time as createtime + tp.name as packageName, + cdr.picture_id as pictureId, + IFNULL(cdr.max_similarity, 0) as pictureResult, + tp.create_time as createTime FROM ocr_task_package tp LEFT JOIN ocr_check_duplicate_result cdr ON tp.check_duplicate_id = cdr.check_duplicate_id @@ -89,6 +90,7 @@ tp.ID = #{id} + - SELECT t2.*,t3.*,t4.STATES + SELECT t2.*,t3.*,ifnull(t4.STATES, 1) historyStates FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID left join ocr_picture_info t3 on t2.ID=t3.picture_id left join ocr_taskchild_picture t4 on t2.ID=t4.PICTUREID + left join oa_userapprove_t t5 on t4.ID=t5.FORMID and t5.TASKNAME = '${userNodeType}' where t1.check_duplicate_id = #{packageId} and t1.picture_id = #{pictureId} 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 dce88aa6..99639d77 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 @@ -702,7 +702,7 @@ and t1.picture_id != #{pictureId} - order by t1.max_similarity ${oderType} + order by t1.max_similarity ${oderType},t2.submit_date_timestamp ${oderType} order by t2.create_time ${oderType} From 3df983cb949428592c961fc5da6bcee842fbd7e6 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Sun, 31 Mar 2024 16:02:44 +0800 Subject: [PATCH 32/92] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=AE=A1=E6=89=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/flowable/controller/FlowTaskController.java | 2 -- .../ocr/service/impl/OcrTaskchildPictureServiceImpl.java | 9 ++++----- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 475b1720..039a88aa 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -168,8 +168,6 @@ public class FlowTaskController extends BaseController { //判断当前任务审批人是否一致 List formIds = ocrTaskchildPictureService.validateAssignee(formIdList, userToken); // 判断当前任务是否审批完毕 - List formId = this.ocrTaskchildPictureService.validateApprove(formIdList); - formIds.addAll(formId); if (CollectionUtils.isNotEmpty(formIds)) { Integer success = flowTaskService.complete(approve, userToken); return ResultVoUtil.success("审批成功" + success + "条," + "无权审核" + (flowTaskInfoList.size() - success) + "条",""); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java index a9958cb8..2aa9cc5a 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java @@ -224,7 +224,9 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl Date: Sun, 31 Mar 2024 16:29:34 +0800 Subject: [PATCH 33/92] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8C=85=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flowable/controller/FlowTaskController.java | 17 ++--------------- .../jyjz/flowable/service/IFlowTaskService.java | 5 +---- .../service/impl/FlowTaskServiceImpl.java | 12 ++++-------- .../resources/mapper/oa/OcrPictureMapper.xml | 6 +++--- 4 files changed, 10 insertions(+), 30 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 039a88aa..f4a93447 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -2,12 +2,10 @@ package cn.jyjz.flowable.controller; import cn.jyjz.flowable.common.SystemConstantsOa; import cn.jyjz.flowable.domain.dto.HistoricTaskInstanceDto; -import cn.jyjz.flowable.domain.vo.FlowTaskVO; import cn.jyjz.flowable.entity.FlowApprove; import cn.jyjz.flowable.entity.FlowTaskInfo; 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; @@ -21,33 +19,22 @@ 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.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; 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 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.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; @@ -147,7 +134,7 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo complete(@RequestBody FlowApprove approve, HttpServletRequest request) { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); - Integer flag = flowTaskService.complete(approve, userToken); + Integer flag = flowTaskService.complete(approve, userToken, Arrays.asList(approve.getFlowTaskInfoList().get(0).getFormId())); return flag > 0 ? ResultVoUtil.success() : ResultVoUtil.error(); } @@ -169,7 +156,7 @@ public class FlowTaskController extends BaseController { List formIds = ocrTaskchildPictureService.validateAssignee(formIdList, userToken); // 判断当前任务是否审批完毕 if (CollectionUtils.isNotEmpty(formIds)) { - Integer success = flowTaskService.complete(approve, userToken); + Integer success = flowTaskService.complete(approve, userToken,formIds); return ResultVoUtil.success("审批成功" + success + "条," + "无权审核" + (flowTaskInfoList.size() - success) + "条",""); } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index 437e8471..5b4d718b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -3,7 +3,6 @@ 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; @@ -14,9 +13,7 @@ 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.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.flowable.engine.repository.ProcessDefinition; import org.flowable.task.api.Task; @@ -35,7 +32,7 @@ public interface IFlowTaskService { Category viewForm(String processId, HttpServletRequest request); - Integer complete(FlowApprove approve,UserToken userToken); + Integer complete(FlowApprove approve, UserToken userToken, List formIds); /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index bd27eb2f..5cb78376 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -10,8 +10,6 @@ import cn.jyjz.flowable.entity.FlowTaskInfo; import cn.jyjz.flowable.service.IFlowInstanceService; import cn.jyjz.xiaoyao.common.base.language.SystemMessage; 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.oa.from.dataDao.FlowableccMybatisDao; @@ -31,7 +29,6 @@ import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.oa.from.dataobject.Category; import cn.jyjz.xiaoyao.oa.from.dataobject.Flowablecc; -import cn.jyjz.xiaoyao.oa.from.dataobject.UserFinal; import cn.jyjz.xiaoyao.oa.from.service.*; import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; @@ -40,7 +37,6 @@ import cn.jyjz.xiaoyao.ocr.service.*; import cn.jyjz.xiaoyao.ocr.util.SearchParaFormatting; import cn.jyjz.xiaoyao.ocr.vo.OcrTaskchildPictureApproVo; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -55,10 +51,8 @@ import org.flowable.engine.ProcessEngineConfiguration; import org.flowable.engine.history.HistoricActivityInstance; import org.flowable.engine.history.HistoricProcessInstance; import org.flowable.engine.history.HistoricProcessInstanceQuery; -import org.flowable.engine.impl.persistence.entity.ActivityInstanceEntity; import org.flowable.engine.impl.util.ExecutionGraphUtil; import org.flowable.engine.repository.ProcessDefinition; -import org.flowable.engine.runtime.ActivityInstance; import org.flowable.engine.runtime.Execution; import org.flowable.engine.runtime.ProcessInstance; import org.flowable.engine.task.Comment; @@ -71,7 +65,6 @@ import org.flowable.task.api.history.HistoricTaskInstance; import org.flowable.task.api.history.HistoricTaskInstanceQuery; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -439,12 +432,15 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * 完成任务 */ @Override - public Integer complete(FlowApprove approve, UserToken userToken) { + public Integer complete(FlowApprove approve, UserToken userToken, List formIds) { Integer successCount = 0; try { if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(approve.getFlowTaskInfoList())) { List flowTaskInfoList = approve.getFlowTaskInfoList(); for (FlowTaskInfo flowTaskInfo : flowTaskInfoList) { + if(!formIds.contains(flowTaskInfo.getFormId())){ + continue; + } // 当前要处理的任务 Task task = taskService.createTaskQuery().taskId(flowTaskInfo.getTaskId()).singleResult(); // 查询流程定义的信息 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 cfc9d804..0ec880e9 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,8 +67,8 @@ - - + + @@ -224,7 +224,7 @@ + + + + + + + + + + + + + + From 4f50317ec6263ada626a0b28ce8bc5092318e3fe Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Sun, 31 Mar 2024 23:06:05 +0800 Subject: [PATCH 43/92] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E6=9F=A5?= =?UTF-8?q?=E9=87=8D=E7=BB=93=E6=9E=9C=E8=BF=94=E5=9B=9E=E6=8E=92=E5=BA=8F?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/service/impl/OcrCheckDuplicateResultServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateResultServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateResultServiceImpl.java index 47c5c1b8..f2beaec6 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateResultServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateResultServiceImpl.java @@ -45,6 +45,8 @@ public class OcrCheckDuplicateResultServiceImpl extends ServiceImpl list = checkDuplicateResultMapper.selectList(queryWrapper); return list; } From a772b8859b6ab7b49fd3624631f6160986951071 Mon Sep 17 00:00:00 2001 From: DELL Date: Mon, 1 Apr 2024 11:32:30 +0800 Subject: [PATCH 44/92] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9ai=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E5=B7=A5=E5=85=B7=E5=BC=B9=E7=AA=97=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=EF=BC=8C=E5=AE=A1=E6=89=B9=E8=8A=82=E7=82=B9=E4=B8=8D=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E5=89=8D=E7=AB=AF=E4=BC=A0=E9=80=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flowable/service/IFlowTaskService.java | 9 ++ .../service/impl/FlowTaskServiceImpl.java | 95 +++++++++++++++++++ .../ocr/controller/OcrAiApprovalTools.java | 61 ++++++++++-- .../impl/OcrSearchHistoryServiceImpl.java | 8 +- 4 files changed, 163 insertions(+), 10 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index 8024d0e5..f0891f3a 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -70,6 +70,15 @@ public interface IFlowTaskService { * @param pageUtils */ public void getMyProcessInstances(User user,String tenantId, Map query,PageUtils pageUtils); + + /** + * 查询我的待办、已经办理任务 + * + * @param user + * @param tenantId + * @param pageUtils + */ + public void getMyProcessInstancesNew(User user,String tenantId, Map query,PageUtils pageUtils); /** * 查询最终审批数据 diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index dbe7c308..81fb538c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1476,6 +1476,101 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask pageUtils.setList(listNew); } + + /** + * 查询我的待办、已经办理任务 + * + * @param user + * @param tenantId + * @param pageUtils + */ + public void getMyProcessInstancesNew(User user, String tenantId, Map searchQuery, PageUtils pageUtils) { + ParamterPage paramterPage = new ParamterPage(); + paramterPage.setStart((pageUtils.getCurrPage() - 1) * pageUtils.getPageSize()); + paramterPage.setPagesize(pageUtils.getPageSize()); + + if (StringUtils.isNotBlank(pageUtils.getSortname())) { + paramterPage.setSortname(pageUtils.getSortname()); + } else { + paramterPage.setSortname("CREATEDATE"); + } + + if (StringUtils.isNotBlank(pageUtils.getSortorder())) { + paramterPage.setSortorder(pageUtils.getSortorder()); + } else { + paramterPage.setSortorder("DESC"); + } + Map query = new HashMap<>(); + query.put("page", paramterPage); + + query.put("thisLoginUserid", user.getId().toString()); + query.put("searchtenantid", tenantId); + //我的待办数据 + query.put("searchassignee", user.getLoginname()); + query.putAll(searchQuery); + + Long count = ocrTaskchildPictureService.listmytaskCount(query); + + query.put("page", paramterPage); + List list = ocrTaskchildPictureService.listmytask(query); + //补充历史状态名称,检查补充节点信息 + for (OcrTaskchildPictureAppro ocrTaskchildPictureAppro : list) { + //审批节点 当前如果没有历史操作,则将当前节点赋值到历史审批节点中. + if (StringUtils.isBlank(ocrTaskchildPictureAppro.getTasknamehis())) { + ocrTaskchildPictureAppro.setTasknamehis(ocrTaskchildPictureAppro.getTaskname()); + } + + if (ocrTaskchildPictureAppro.getStatshis() != null) { + String stateText; + switch (ocrTaskchildPictureAppro.getStatshis()) { + case 1: + stateText = "待审批"; + break; + case 2: + stateText = "通过"; + break; + case 3: + stateText = "不通过"; + break; + default: + stateText = "未知状态"; + break; + } + // 将中文状态赋值给 flowUnionVo 的状态属性 + ocrTaskchildPictureAppro.setStatshisText(stateText); + + } else { + //暂定,后期修改 + ocrTaskchildPictureAppro.setStatshisText("待审批"); + } + } + + List listNew = new ArrayList<>(); + for (OcrTaskchildPictureAppro one : list) { + OcrTaskchildPictureApproVo ocrTaskchildPictureApproVo = new OcrTaskchildPictureApproVo(); + ocrTaskchildPictureApproVo.setId(one.getId()); //任务id + ocrTaskchildPictureApproVo.setFromtaskname(one.getFromtaskname()); //任务名称 + ocrTaskchildPictureApproVo.setStatshisText(one.getStatshisText()); //历史-审批状态中文 + ocrTaskchildPictureApproVo.setTasknamehis(one.getTasknamehis());//历史-审批节点名称 + ocrTaskchildPictureApproVo.setFinishTime(one.getFinishTime()); //完成时间 + ocrTaskchildPictureApproVo.setReleaseProvince(one.getPicture().getReleaseprovince()); //省份 + ocrTaskchildPictureApproVo.setFromprojectid(one.getFromprojectid()); //项目id + ocrTaskchildPictureApproVo.setProductName(one.getPicture().getField9()); //产品 + ocrTaskchildPictureApproVo.setCategory(one.getCategory()); //类型 + ocrTaskchildPictureApproVo.setFromsourceid(one.getFromsourceid()); //原始任务id + ocrTaskchildPictureApproVo.setCustomerType(one.getPicture().getField2()); //客户类型 + ocrTaskchildPictureApproVo.setCustomerName(one.getPicture().getField3()); //客户名称 + ocrTaskchildPictureApproVo.setItemCategory(one.getPicture().getField17());//项目类别 + ocrTaskchildPictureApproVo.setFromUserName(one.getFromUserName()); //提报人 + ocrTaskchildPictureApproVo.setManufacturer(one.getPicture().getField5()); //manufacturer + ocrTaskchildPictureApproVo.setPackageid(one.getPackageid()); //任务包id + listNew.add(ocrTaskchildPictureApproVo); + } + + pageUtils.setList(listNew); + } + + /** * 查询我发起的流程实例 * diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java index aa3720d8..5ba2c24c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java @@ -1,7 +1,13 @@ 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; @@ -11,8 +17,10 @@ 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; /** @@ -25,7 +33,7 @@ import java.util.Map; @CrossOrigin @RestController @RequestMapping("/ocr/aitools") -public class OcrAiApprovalTools { +public class OcrAiApprovalTools extends BaseController { @Autowired @@ -34,6 +42,12 @@ public class OcrAiApprovalTools { @Autowired IOcrSearchHistoryService iocrsearchhistoryservice; + @Resource + private UserService userService; + + @Resource + IFlowTaskService flowTaskService; + /** * 统计 * @@ -52,19 +66,54 @@ public class OcrAiApprovalTools { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); - ResultVo toolscount = iocrsearchhistoryservice.toolscount(tenantId,userToken.getUserid()); - return toolscount; + SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); + String taskName = request.getParameter("keyword"); + if (org.apache.commons.lang3.StringUtils.isNotBlank(taskName)) { + searchQuery.addLike("fromtaskname", taskName); + } + User user = this.userService.getSessionUser(request); + PageUtils pageUtils = new PageUtils(); + pageUtils.setPageSize(9999); + pageUtils.setCurrPage(1); + flowTaskService.getMyProcessInstances(user, tenantId, searchQuery.getQuery(), pageUtils); + ResultVo> resultVo = new ResultVo<>(); + List> instances = (List>) pageUtils.getList(); + int pendingApprovalCount = 0; // 待审批的数量 + int approvedCount = 0; // 通过的数量 + int otherCount = 0; // 其他情况的数量 + + for (Map instance : instances) { + String statshisText = (String) instance.get("statshisText"); + if ("待审批".equals(statshisText)) { + pendingApprovalCount++; + } else if ("通过".equals(statshisText)) { + approvedCount++; + } else if("不通过".equals(statshisText)){ + otherCount++; + } + } + + Map counts = new HashMap<>(); + counts.put("total", approvedCount+pendingApprovalCount+otherCount); + counts.put("treat", approvedCount); + counts.put("approvedCount", pendingApprovalCount); + + + resultVo.setData(counts); + +// ResultVo toolscount = iocrsearchhistoryservice.toolscount(tenantId,userToken.getUserid()); + + return resultVo; } /* ai审批工单 */ @RequestMapping(value = "/aiApprovaltools", method = RequestMethod.GET) - public ResultVo aiApprovaltools(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid, - @RequestParam(value = "nodeType", required = true) Integer nodeType) { + public ResultVo aiApprovaltools(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid) { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); - Map selectaisp = iocrsearchhistoryservice.selectaisp(userToken.getUserid(), taskid,nodeType); + Map selectaisp = iocrsearchhistoryservice.selectaisp(userToken.getUserid(), taskid,userToken.getNodeType()); return ResultVoUtil.success(selectaisp); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index c287e517..fa9a1108 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -145,11 +145,11 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl failedPictureIds = ocrPictureService.getPictureNodeStatesList(pictureIds, nodeType); for (OcrPicture picture : failedPictureIds) { if (picture.getHistoryStates() == 3) { - failedList.add(picture.getPictureid()); + failedList.add(picture.getRemark()); } else if (picture.getHistoryStates() == 1) { - pendingApprovalList.add(picture.getPictureid()); + pendingApprovalList.add(picture.getRemark()); } else if (picture.getHistoryStates() == 2) { - approvedList.add(picture.getPictureid()); + approvedList.add(picture.getRemark()); } } @@ -158,7 +158,7 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl Date: Mon, 1 Apr 2024 12:43:46 +0800 Subject: [PATCH 45/92] =?UTF-8?q?fix:=E8=B0=83=E6=95=B4ai=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E5=BC=B9=E7=AA=97=EF=BC=8C=E5=A4=8D=E7=94=A8/flow/tas?= =?UTF-8?q?k/listalldata=E6=8E=A5=E5=8F=A3=E7=9A=84=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flowable/service/IFlowTaskService.java | 3 +- .../service/impl/FlowTaskServiceImpl.java | 59 +------- .../ocr/controller/OcrAiApprovalTools.java | 48 +----- .../ocr/service/IOcrSearchHistoryService.java | 3 +- .../impl/OcrSearchHistoryServiceImpl.java | 137 ++++++++++++------ 5 files changed, 104 insertions(+), 146 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index f0891f3a..3a485c3f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -14,6 +14,7 @@ import cn.jyjz.xiaoyao.oa.from.dataobject.Category; import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import com.baomidou.mybatisplus.core.metadata.IPage; import org.flowable.engine.repository.ProcessDefinition; import org.flowable.task.api.Task; @@ -78,7 +79,7 @@ public interface IFlowTaskService { * @param tenantId * @param pageUtils */ - public void getMyProcessInstancesNew(User user,String tenantId, Map query,PageUtils pageUtils); + public List getMyProcessInstancesNew(User user, String tenantId, Map query, PageUtils pageUtils); /** * 查询最终审批数据 diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 81fb538c..15f4dd1d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1318,7 +1318,6 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask query.put("page", paramterPage); List list = ocrTaskchildPictureService.listmytask(query); - for (OcrTaskchildPictureAppro taskchildPicture : list) { if (taskchildPicture.getPictureid() != null && !taskchildPicture.getPictureid().isEmpty()) { @@ -1484,7 +1483,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * @param tenantId * @param pageUtils */ - public void getMyProcessInstancesNew(User user, String tenantId, Map searchQuery, PageUtils pageUtils) { + public List getMyProcessInstancesNew(User user, String tenantId, Map searchQuery, PageUtils pageUtils) { ParamterPage paramterPage = new ParamterPage(); paramterPage.setStart((pageUtils.getCurrPage() - 1) * pageUtils.getPageSize()); paramterPage.setPagesize(pageUtils.getPageSize()); @@ -1513,61 +1512,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask query.put("page", paramterPage); List list = ocrTaskchildPictureService.listmytask(query); - //补充历史状态名称,检查补充节点信息 - for (OcrTaskchildPictureAppro ocrTaskchildPictureAppro : list) { - //审批节点 当前如果没有历史操作,则将当前节点赋值到历史审批节点中. - if (StringUtils.isBlank(ocrTaskchildPictureAppro.getTasknamehis())) { - ocrTaskchildPictureAppro.setTasknamehis(ocrTaskchildPictureAppro.getTaskname()); - } - - if (ocrTaskchildPictureAppro.getStatshis() != null) { - String stateText; - switch (ocrTaskchildPictureAppro.getStatshis()) { - case 1: - stateText = "待审批"; - break; - case 2: - stateText = "通过"; - break; - case 3: - stateText = "不通过"; - break; - default: - stateText = "未知状态"; - break; - } - // 将中文状态赋值给 flowUnionVo 的状态属性 - ocrTaskchildPictureAppro.setStatshisText(stateText); - - } else { - //暂定,后期修改 - ocrTaskchildPictureAppro.setStatshisText("待审批"); - } - } - - List listNew = new ArrayList<>(); - for (OcrTaskchildPictureAppro one : list) { - OcrTaskchildPictureApproVo ocrTaskchildPictureApproVo = new OcrTaskchildPictureApproVo(); - ocrTaskchildPictureApproVo.setId(one.getId()); //任务id - ocrTaskchildPictureApproVo.setFromtaskname(one.getFromtaskname()); //任务名称 - ocrTaskchildPictureApproVo.setStatshisText(one.getStatshisText()); //历史-审批状态中文 - ocrTaskchildPictureApproVo.setTasknamehis(one.getTasknamehis());//历史-审批节点名称 - ocrTaskchildPictureApproVo.setFinishTime(one.getFinishTime()); //完成时间 - ocrTaskchildPictureApproVo.setReleaseProvince(one.getPicture().getReleaseprovince()); //省份 - ocrTaskchildPictureApproVo.setFromprojectid(one.getFromprojectid()); //项目id - ocrTaskchildPictureApproVo.setProductName(one.getPicture().getField9()); //产品 - ocrTaskchildPictureApproVo.setCategory(one.getCategory()); //类型 - ocrTaskchildPictureApproVo.setFromsourceid(one.getFromsourceid()); //原始任务id - ocrTaskchildPictureApproVo.setCustomerType(one.getPicture().getField2()); //客户类型 - ocrTaskchildPictureApproVo.setCustomerName(one.getPicture().getField3()); //客户名称 - ocrTaskchildPictureApproVo.setItemCategory(one.getPicture().getField17());//项目类别 - ocrTaskchildPictureApproVo.setFromUserName(one.getFromUserName()); //提报人 - ocrTaskchildPictureApproVo.setManufacturer(one.getPicture().getField5()); //manufacturer - ocrTaskchildPictureApproVo.setPackageid(one.getPackageid()); //任务包id - listNew.add(ocrTaskchildPictureApproVo); - } - - pageUtils.setList(listNew); + return list; } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java index 5ba2c24c..323d9e29 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java @@ -11,6 +11,7 @@ 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; @@ -33,7 +34,7 @@ import java.util.Map; @CrossOrigin @RestController @RequestMapping("/ocr/aitools") -public class OcrAiApprovalTools extends BaseController { +public class OcrAiApprovalTools { @Autowired @@ -42,11 +43,6 @@ public class OcrAiApprovalTools extends BaseController { @Autowired IOcrSearchHistoryService iocrsearchhistoryservice; - @Resource - private UserService userService; - - @Resource - IFlowTaskService flowTaskService; /** * 统计 @@ -65,45 +61,9 @@ public class OcrAiApprovalTools extends BaseController { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + ResultVo toolscount = iocrsearchhistoryservice.toolscount(tenantId,userToken.getUserid(),request); - SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); - String taskName = request.getParameter("keyword"); - if (org.apache.commons.lang3.StringUtils.isNotBlank(taskName)) { - searchQuery.addLike("fromtaskname", taskName); - } - User user = this.userService.getSessionUser(request); - PageUtils pageUtils = new PageUtils(); - pageUtils.setPageSize(9999); - pageUtils.setCurrPage(1); - flowTaskService.getMyProcessInstances(user, tenantId, searchQuery.getQuery(), pageUtils); - ResultVo> resultVo = new ResultVo<>(); - List> instances = (List>) pageUtils.getList(); - int pendingApprovalCount = 0; // 待审批的数量 - int approvedCount = 0; // 通过的数量 - int otherCount = 0; // 其他情况的数量 - - for (Map instance : instances) { - String statshisText = (String) instance.get("statshisText"); - if ("待审批".equals(statshisText)) { - pendingApprovalCount++; - } else if ("通过".equals(statshisText)) { - approvedCount++; - } else if("不通过".equals(statshisText)){ - otherCount++; - } - } - - Map counts = new HashMap<>(); - counts.put("total", approvedCount+pendingApprovalCount+otherCount); - counts.put("treat", approvedCount); - counts.put("approvedCount", pendingApprovalCount); - - - resultVo.setData(counts); - -// ResultVo toolscount = iocrsearchhistoryservice.toolscount(tenantId,userToken.getUserid()); - - return resultVo; + return toolscount; } /* diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java index 82e991e3..43254b9a 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrSearchHistoryService.java @@ -5,6 +5,7 @@ import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory; import com.baomidou.mybatisplus.extension.service.IService; +import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; @@ -19,7 +20,7 @@ import java.util.Map; public interface IOcrSearchHistoryService extends IService { Map>> selectsearch(String search, String assignee, String userId, String tenantId); - ResultVo toolscount(String tenantid,String userId); + ResultVo toolscount(String tenantid, String userId, HttpServletRequest request); Map selectaisp(String userid,String id,Integer nodeType); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index fa9a1108..22a2487e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -1,8 +1,13 @@ package cn.jyjz.xiaoyao.ocr.service.impl; +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.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.SearchQueryUtil; import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.base.vo.UserToken; @@ -10,8 +15,11 @@ import cn.jyjz.xiaoyao.common.redis.cache.ICacheManager; import cn.jyjz.xiaoyao.common.redis.cache.constants.CacheConstants; import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; @@ -20,6 +28,8 @@ import org.springframework.stereotype.Service; import cn.jyjz.xiaoyao.ocr.dataDao.OcrSearchHistoryMapper; import javax.annotation.Resource; +import javax.servlet.ServletRequest; +import javax.servlet.http.HttpServletRequest; import java.util.*; import java.util.stream.Collectors; @@ -43,6 +53,13 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl>> selectsearch(String search, String assignee, String userId, String tenantId) { @@ -65,50 +82,67 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl> resultVo = null; - //系统中记录的ai统计租户id - String counttenantid = iCacheManager.get(CacheConstants.TOOLSCOUNT_TENANTID_MODEL_NAME,tenantid+"_"+userId); + try { + //系统中记录的ai统计租户id + String counttenantid = iCacheManager.get(CacheConstants.TOOLSCOUNT_TENANTID_MODEL_NAME,tenantid+"_"+userId); // if(!StringUtils.isBlank(counttenantid)){ // return ResultVoUtil.error("true"); // } - //用户登录信息写入缓存 - iCacheManager.put(CacheConstants.TOOLSCOUNT_TENANTID_MODEL_NAME,tenantid+"_"+userId,"true",CacheConstants.TOOLSCOUNT_TENANTID_CACHE_TIME); + //用户登录信息写入缓存 + iCacheManager.put(CacheConstants.TOOLSCOUNT_TENANTID_MODEL_NAME,tenantid+"_"+userId,"true",CacheConstants.TOOLSCOUNT_TENANTID_CACHE_TIME); + + SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); + String taskName = request.getParameter("keyword"); + if (StringUtils.isNotBlank(taskName)) { + searchQuery.addLike("fromtaskname", taskName); + } + User user = this.userService.getSessionUser(request); + PageUtils pageUtils = new PageUtils(); + pageUtils.setPageSize(9999); + pageUtils.setCurrPage(1); + List ocrTaskchildPictureApproList = flowTaskService.getMyProcessInstancesNew(user, tenantid, searchQuery.getQuery(), pageUtils); + resultVo = new ResultVo<>(); + int pendingApprovalCount = 0; // 待审批的数量 + int approvedCount = 0; // 通过的数量 + int notGoCount = 0; // 不通过的数量 + for (OcrTaskchildPictureAppro ocrTaskchildPictureAppro : ocrTaskchildPictureApproList) { + if (ocrTaskchildPictureAppro.getStatshis() != null) { + switch (ocrTaskchildPictureAppro.getStatshis()) { + case 1: + pendingApprovalCount++; + break; + case 2: + approvedCount++; + break; + case 3: + notGoCount++; + break; + default: + break; + } + } else { + //暂定,后期修改 + pendingApprovalCount++; + } + } - Map toolscount = ocrsearchhistorymapper.toolscount(userId); - return ResultVoUtil.success(toolscount); + Map counts = new HashMap<>(); + counts.put("total", approvedCount + pendingApprovalCount + notGoCount); + counts.put("treat", pendingApprovalCount); + counts.put("approvedCount", approvedCount); + resultVo.setCode("OK"); + resultVo.setMessage("成功"); + resultVo.setData(counts); + } catch (Exception e) { + e.printStackTrace(); + } + return resultVo; } -// @Override -// public Map selectaisp(String userid,String id) { -// Map selectaisp = ocrsearchhistorymapper.selectaisp(id); -// if(null==selectaisp){ -// return null; -// } -// String selectaiuser = ocrsearchhistorymapper.selectaiuser(userid); -// -// String[] cps = selectaisp.get("pictureresult").toString().split(","); -// -// List saveList = new ArrayList<>(); -// int i=0; -// for (String childpictureid : cps) { -// if (childpictureid.equals("100")){ -// i++; -// } -// } -// -// Map map=new HashMap<>(); -// map.put("taskid",id); -// map.put("tenantusername",selectaiuser); -// map.put("packagename",selectaisp.get("packagename")); -// map.put("tasks","基线任务"); -//// map.put("similarcount",selectaisp.get("similarcount")); -// map.put("createtime",selectaisp.get("createtime")); -// map.put("similarComplete",i); -// -// return map; -// } @Override public Map selectaisp(String userid, String id,Integer nodeType) { @@ -185,14 +219,31 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl collect = Arrays.stream(cps) -// .map(Long::parseLong) -// .map(childpictureid -> this.ocrPictureService.selectDtoById(childpictureid)) -// .filter(ocrPicture->ocrPicture.getSimilarityscore() >= 90) -// -// .collect(Collectors.toList()); + return this.ocrPictureService.updateBatchById(saveList) ? ResultVoUtil.success() : ResultVoUtil.error(); + } + /** + *取得带相同前缀的Request Parameters, copy from spring WebUtils. + * @param request 请求对象 + * @param prefix 分割符 + * @return 返回的结果的Parameter名已去除前缀.并且拼装成ligerui形式使用的搜索条件 + */ + public SearchQuery getParametersStartingWithToSearchJson(ServletRequest request, String prefix) { + Map params = SearchQueryUtil.getParametersStartingWith(request,prefix); + + SearchQuery searchQuery = new SearchQuery(); + if(null != params && params.size() > 0){ + for (Map.Entry entry : params.entrySet()) { + + JSONObject obj = JSON.parseObject(entry.getValue().toString()); + String value = obj.getString("value"); + if(StringUtils.isNotBlank(value) && !"null".equals(value) && !"undefined".equals(value)){ + obj.put("field",entry.getKey()); + searchQuery.addJsonQuery(obj); + } + } + } - return this.ocrPictureService.updateBatchById(saveList) ? ResultVoUtil.success() : ResultVoUtil.error(); + return searchQuery; } } From daad7b874fbee35014313a77b299bc253ffcb366 Mon Sep 17 00:00:00 2001 From: LILI <707464720@qq.com> Date: Mon, 1 Apr 2024 16:37:40 +0800 Subject: [PATCH 46/92] =?UTF-8?q?fix:1.=E7=BB=BC=E5=90=88=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E8=8F=9C=E5=8D=95=E6=A8=A1=E5=9D=97=E6=9D=83=E9=99=90?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=EF=BC=8C2.=E5=8E=86=E5=8F=B2=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E7=A7=9F=E6=88=B7=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90?= =?UTF-8?q?=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OcrSearchHistoryController.java | 17 ++++- .../ocr/dataobject/OcrSearchHistory.java | 68 +++++++------------ .../impl/OcrSearchHistoryServiceImpl.java | 31 +++++++-- .../jyjz/xiaoyao/ocr/util/FrontMenuEnum.java | 35 ++++++++++ 4 files changed, 99 insertions(+), 52 deletions(-) create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/FrontMenuEnum.java diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSearchHistoryController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSearchHistoryController.java index 0a546ea9..f16c0ffb 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSearchHistoryController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSearchHistoryController.java @@ -57,6 +57,7 @@ public class OcrSearchHistoryController { 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); @@ -75,9 +76,16 @@ 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 wrapper = new QueryWrapper<>(); wrapper.eq("userid",userToken.getUserid()); + wrapper.eq("tenant_id",Long.valueOf(tenantId)); //根据具体情况 判断 是否需要 进行数据返回, 默认不返回数据 ocrSearchHistoryService.remove(wrapper); // return new ResponseEntity("true",HttpStatus.OK); @@ -92,10 +100,15 @@ public class OcrSearchHistoryController { */ @RequestMapping(value = "/historySearch", method = RequestMethod.GET) public ResultVo historySearch(HttpServletRequest request) { - UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + //租户主键,由前端页面传送 + String tenantId = request.getHeader("X-Tenant-Id"); + if (StringUtils.isBlank(tenantId)) { + return ResultVoUtil.error("租户主键不能为空"); + } + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.select("historyname","createdate").eq("userid",userToken.getUserid()).orderByDesc("createdate").last("limit 8"); + wrapper.select("historyname","createdate").eq("userid",userToken.getUserid()).eq("tenant_id",Long.valueOf(tenantId)).orderByDesc("createdate").last("limit 8"); List list = ocrSearchHistoryService.list(wrapper); // return new ResponseEntity>(list, HttpStatus.OK); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrSearchHistory.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrSearchHistory.java index 03c2f373..4cd90ac9 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrSearchHistory.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrSearchHistory.java @@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.activerecord.Model; +import io.swagger.annotations.ApiModel; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; import java.io.Serializable; @@ -15,7 +21,14 @@ import java.io.Serializable; * @author 你的肉123 * @since 2024-03-15 */ -@TableName("ocr_search_history") + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Schema(name = "综合搜索历史表", title = "综合搜索历史表") +@ApiModel(value = "综合搜索历史表", description = "综合搜索历史表") +@TableName(value = "ocr_search_history") public class OcrSearchHistory extends Model { private static final long serialVersionUID = 1L; @@ -30,13 +43,10 @@ public class OcrSearchHistory extends Model { */ private String historyname; - public Long getUserid() { - return userid; - } - - public void setUserid(Long userid) { - this.userid = userid; - } + /** + * 租户ID + */ + private Long tenantId; /** * 创建时间 @@ -47,44 +57,14 @@ public class OcrSearchHistory extends Model { */ private Long createdate; - - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - - public String getHistoryname() { - return historyname; - } - - public void setHistoryname(String historyname) { - this.historyname = historyname; - } - - public Long getCreatedate() { - return createdate; - } - - public void setCreatedate(Long createdate) { - this.createdate = createdate; - } - - @Override - public Serializable pkVal() { - return this.id; - } - @Override public String toString() { return "OcrSearchHistory{" + - "id=" + id + - ", historyname=" + historyname + - ", userid=" + userid + - ", createdate=" + createdate + - "}"; + "id=" + id + + ", historyname='" + historyname + '\'' + + ", tenantId=" + tenantId + + ", userid=" + userid + + ", createdate=" + createdate + + '}'; } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 22a2487e..4a394999 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -1,8 +1,11 @@ package cn.jyjz.xiaoyao.ocr.service.impl; +import cn.hutool.core.collection.CollUtil; import cn.jyjz.flowable.service.IFlowTaskService; import cn.jyjz.flowable.utils.PageUtils; +import cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT; import cn.jyjz.xiaoyao.admin.dataobject.User; +import cn.jyjz.xiaoyao.admin.service.ISFrontmenuTService; import cn.jyjz.xiaoyao.admin.service.UserService; import cn.jyjz.xiaoyao.common.base.service.UserTokenService; import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil; @@ -18,6 +21,7 @@ import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; +import cn.jyjz.xiaoyao.ocr.util.FrontMenuEnum; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -59,16 +63,31 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl>> selectsearch(String search, String assignee, String userId, String tenantId) { - - - List> strings1 = ocrsearchhistorymapper.selectsearch1(userId,search,tenantId); - List> strings2 = ocrsearchhistorymapper.selectsearch2(assignee,search,tenantId); - List> strings3 = ocrsearchhistorymapper.selectsearch3(assignee,search,tenantId); - + List> strings1 = new ArrayList<>(); + List> strings2 = new ArrayList<>(); + List> strings3 = new ArrayList<>(); + //查询用户搜索的数据前需要判断用户是否有对应菜单模块的权限并过滤 + //返回用户前端菜单权限列表 + List frontmenuTList = isFrontmenuTService.queryUserMenuById(assignee); + if(CollUtil.isNotEmpty(frontmenuTList)){ + for (SFrontmenuT sFrontmenuT : frontmenuTList) { + if(sFrontmenuT.getResKey().equals(FrontMenuEnum.WORKSHEETMAIN.getResKey())){ + strings1 = ocrsearchhistorymapper.selectsearch1(userId,search,tenantId); + } + if(sFrontmenuT.getResKey().equals(FrontMenuEnum.TASKMAIN.getResKey())){ + strings2 = ocrsearchhistorymapper.selectsearch2(assignee,search,tenantId); + } + if(sFrontmenuT.getResKey().equals(FrontMenuEnum.FINALMAIN.getResKey())){ + strings3 = ocrsearchhistorymapper.selectsearch3(assignee,search,tenantId); + } + } + } // List>>> list = new ArrayList<>(); Map>> map=new HashMap<>(); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/FrontMenuEnum.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/FrontMenuEnum.java new file mode 100644 index 00000000..fc377a77 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/FrontMenuEnum.java @@ -0,0 +1,35 @@ +package cn.jyjz.xiaoyao.ocr.util; + +public enum FrontMenuEnum { + + HOMEMAIN("home_main", "查重"), + WORKSHEETMAIN("worksheet-main", "工单"), + TASKMAIN("task-main", "审批"), + FINALMAIN("final-main", "终审"); + + //菜单键 + private String resKey; + //菜单名 + private String name; + + FrontMenuEnum(String resKey, String name) { + this.resKey = resKey; + this.name = name; + } + + public String getResKey() { + return resKey; + } + + public void setResKey(String resKey) { + this.resKey = resKey; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} \ No newline at end of file From 2883921cd4030338936a2c43d2f832038b811b82 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Mon, 1 Apr 2024 17:25:31 +0800 Subject: [PATCH 47/92] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E6=9F=A5=E8=AF=A2=E3=80=81=E7=BB=88=E5=AE=A1=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=EF=BC=8C=E9=80=89=E6=8B=A9=E9=A1=B9=E7=9B=AE=E5=90=8E?= =?UTF-8?q?=E4=B8=8D=E7=94=9F=E6=95=88=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flowable/controller/FlowTaskController.java | 4 ++-- .../xiaoyao/ocr/util/SearchParaFormatting.java | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index f5dff51c..8fa040d0 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -391,9 +391,9 @@ public class FlowTaskController extends BaseController { String[] projectIds = izproject.split(","); // 以逗号拆分字符串 List arrayData = Arrays.asList(projectIds); SearchQueryForm searchQueryForm = new SearchQueryForm(); - searchQuery.addIn("fromprojectid", arrayData); + searchQuery.addIn("fromprojectname", arrayData); } else { - searchQuery.addEqual("fromprojectid", izproject); + searchQuery.addEqual("fromprojectname", izproject); } } if (org.springframework.util.StringUtils.hasText(izplan)) { diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java index 029f8224..c0e35ac8 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchParaFormatting.java @@ -146,10 +146,24 @@ public class SearchParaFormatting { } }catch (Exception e){ } - return "section"; } + //如果不是数字区间,则按字符串处理 + if(!isInRange(searchvalue)){ + return "text"; + } + return "section"; } //3.都不是就按text文本处理 return "text"; } + + /** + * 校验是否是纯数字区间,不是就 + * @param number + * @return + */ + public static boolean isInRange(String number) { + String regex = "\\b(100|[1-9]?\\d)-\\b(100|[1-9]?\\d)"; + return number.matches(regex); + } } From 0d0ee047caaea2eae7660e8d77933f9904560dd9 Mon Sep 17 00:00:00 2001 From: DELL Date: Mon, 1 Apr 2024 18:29:34 +0800 Subject: [PATCH 48/92] =?UTF-8?q?fix:=E8=B0=83=E6=95=B4ai=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E5=B7=A5=E5=85=B7=E5=BC=B9=E7=AA=97=EF=BC=8C=E7=9B=B8?= =?UTF-8?q?=E4=BC=BC=E5=BA=A6=E4=B8=BA100=E7=9A=84=E4=B8=BA=E7=A9=BA?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E4=BC=A00?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/util/requestFormat/SearchQuery.java | 12 ++ .../controller/FlowTaskController.java | 5 +- .../flowable/service/IFlowTaskService.java | 2 +- .../service/impl/FlowTaskServiceImpl.java | 139 +++++++++++++++++- .../impl/OcrSearchHistoryServiceImpl.java | 41 +++--- 5 files changed, 175 insertions(+), 24 deletions(-) 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..6d7fb60b 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); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index f5dff51c..086e8b98 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -307,13 +307,16 @@ public class FlowTaskController extends BaseController { 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); + flowTaskService.getMyProcessInstances(user, tenantId, searchQuery.getQuery(), pageUtils,userSearchId); //待办信息,增加是否查看标记 // if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){ diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index 3a485c3f..c4b13513 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -70,7 +70,7 @@ public interface IFlowTaskService { * @param tenantId * @param pageUtils */ - public void getMyProcessInstances(User user,String tenantId, Map query,PageUtils pageUtils); + public void getMyProcessInstances(User user,String tenantId, Map query,PageUtils pageUtils,String userSearchId); /** * 查询我的待办、已经办理任务 diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 15f4dd1d..0ea0e5bc 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -10,6 +10,7 @@ import cn.jyjz.flowable.entity.FlowTaskInfo; import cn.jyjz.flowable.service.IFlowInstanceService; import cn.jyjz.xiaoyao.common.base.language.SystemMessage; import cn.jyjz.xiaoyao.common.base.service.UserTokenService; +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.oa.from.dataDao.FlowableccMybatisDao; @@ -439,7 +440,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(approve.getFlowTaskInfoList())) { List flowTaskInfoList = approve.getFlowTaskInfoList(); for (FlowTaskInfo flowTaskInfo : flowTaskInfoList) { - if(!formIds.contains(flowTaskInfo.getFormId())){ + if (!formIds.contains(flowTaskInfo.getFormId())) { continue; } // 当前要处理的任务 @@ -1289,7 +1290,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * @param tenantId * @param pageUtils */ - public void getMyProcessInstances(User user, String tenantId, Map searchQuery, PageUtils pageUtils) { + public void getMyProcessInstances(User user, String tenantId, Map searchQuery, PageUtils pageUtils, String userSearchId) { ParamterPage paramterPage = new ParamterPage(); paramterPage.setStart((pageUtils.getCurrPage() - 1) * pageUtils.getPageSize()); paramterPage.setPagesize(pageUtils.getPageSize()); @@ -1314,6 +1315,15 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask query.put("searchassignee", user.getLoginname()); query.putAll(searchQuery); + if (!userSearchId.isEmpty()) { + OcrUsersearch ocrUsersearch = ocrUsersearchService.selectByUserSearchId(userSearchId); + SearchQuery additionalQuery = new SearchQuery(); + for (OcrUsersearchchild usersearchchild : ocrUsersearch.getOcrUsersearchchildList()) { + this.formattingSearchChild1(additionalQuery, usersearchchild); + } + query.putAll(additionalQuery.getQuery()); + } + Long count = ocrTaskchildPictureService.listmytaskCount(query); query.put("page", paramterPage); @@ -1937,5 +1947,130 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask return queryWrapper; } + private SearchQuery formattingSearchChild1(SearchQuery searchQuery, OcrUsersearchchild usersearchchild) { + switch (usersearchchild.getSearchRelationType()) { + case "where": + // 添加 "where" 查询条件 + this.formattingSearchType1(searchQuery, usersearchchild); + break; + case "and": + // 添加 "and" 查询条件 + SearchQuery andQuery = this.formattingSearchType1(new SearchQuery(), usersearchchild); + searchQuery.setSearchQuery(andQuery); + break; + case "or": + // 添加 "or" 查询条件 + SearchQuery orQuery = this.formattingSearchType1(new SearchQuery(), usersearchchild); + searchQuery.setSearchQuery(orQuery); + break; + default: + break; + } + return searchQuery; + } + + private SearchQuery formattingSearchType1(SearchQuery searchQuery, OcrUsersearchchild usersearchchild) { + //查询类型 相等true 不相等fase + boolean queryType = "eq".equals(usersearchchild.getSearchtype()); + + // 1.获取检查数据,确定数据类型 + String valueType = SearchParaFormatting.clickSearchValue(usersearchchild.getSearchvalue()); + List arrayData = null; //集合型数据 + List sectionInts = null; //纯数字区间型数据 + String[] sections = null; //字符串区间型数据 + DateTime beginTime = null; //日期时间区间型数据 + DateTime endTime = null; //日期时间区间型数据 + + // 2.根据数据类型,解构数据 + switch (valueType) { + case "array": + //处理多文件 + String[] datas = usersearchchild.getSearchvalue().split(","); + arrayData = Arrays.asList(datas); + break; + case "section": + //格式化数据,仅在做区间的时候去除空格,其他地方不进行空格去除. + sections = usersearchchild.getSearchvalue().trim().replaceAll("\\s+", "").split("-"); + //校验是否纯数字,纯数字的话,要转成int,否则比对时会有问题 + sectionInts = new ArrayList<>(); + for (String data : sections) { + if (data.matches("\\d+")) { + sectionInts.add(Integer.parseInt(data)); + } + } + break; + case "time": + //格式化时间数据 + String[] times = usersearchchild.getSearchvalue().trim().replaceAll("\\s+", "").split("-"); + beginTime = DateUtil.parse(times[0], "yyyy/MM/dd"); + endTime = DateUtil.parse(times[1], "yyyy/MM/dd"); + break; + default: + } + + // 3.根据查询类型 组装查询条件 相等 + switch (valueType) { + case "array": + //集合数据 + //相等 + if (queryType) { + searchQuery.addIn(usersearchchild.getSearchfield(), arrayData); + break; + } + //不相等 + searchQuery.addNotIn(usersearchchild.getSearchfield(), arrayData); + break; + + case "section": + //数字区间查询 + if (sectionInts != null && sectionInts.size() == 2) { + if (queryType) { + //相等 + searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), sectionInts.get(0)); + searchQuery.addLessEqual(usersearchchild.getSearchfield(), sectionInts.get(1)); + break; + } + //不相等 + searchQuery.addLess(usersearchchild.getSearchfield(), sectionInts.get(0)); + searchQuery.addGreater(usersearchchild.getSearchfield(), sectionInts.get(1)); + break; + } + + //字符串区间查询 + if (queryType) { + //相等 + searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), sections[0]); + searchQuery.addLessEqual(usersearchchild.getSearchfield(), sections[1]); + break; + } + //不相等 + searchQuery.addLess(usersearchchild.getSearchfield(), sections[0]); + searchQuery.addGreater(usersearchchild.getSearchfield(), sections[1]); + break; + + + case "time": + //时间区间数据 + //相等 + if (queryType) { + searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), beginTime); + searchQuery.addLessEqual(usersearchchild.getSearchfield(), endTime); + break; + } + //不相等 + searchQuery.addLess(usersearchchild.getSearchfield(), beginTime); + searchQuery.addGreater(usersearchchild.getSearchfield(), endTime); + break; + + default: + if (queryType) { + searchQuery.addEqual(usersearchchild.getSearchfield(), usersearchchild.getSearchvalue()); + break; + } + searchQuery.addNotEqual(usersearchchild.getSearchfield(), usersearchchild.getSearchvalue()); + } + return searchQuery; + } + } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 22a2487e..c11f7b4d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -147,11 +147,10 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl selectaisp(String userid, String id,Integer nodeType) { List> resultList = ocrsearchhistorymapper.selectaispList(id); + Map mappedResults = new LinkedHashMap<>(); if (resultList == null || resultList.isEmpty()) { return Collections.emptyMap(); } - - Map mappedResults = new LinkedHashMap<>(); String selectaiuser = ocrsearchhistorymapper.selectaiuser(userid); mappedResults.put("packageId", id); mappedResults.put("tenantUserName", selectaiuser); @@ -160,30 +159,32 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl pictureIds = new ArrayList<>(); // 存储所有的pictureId for (Map selectaisp : resultList) { - Object pictureResult = selectaisp.get("pictureResult"); - String pictureResultStr = pictureResult.toString(); - if ("100.0".equals(pictureResultStr)) { - similarComplete++; - Long pictureId = (Long) selectaisp.get("pictureId"); - if (pictureId != null) { - pictureIds.add(String.valueOf(pictureId)); // 转换为String + if(selectaisp.size()!=0){ + Object pictureResult = selectaisp.get("pictureResult"); + String pictureResultStr = pictureResult.toString(); + if ("100.0".equals(pictureResultStr)) { + similarComplete++; + Long pictureId = (Long) selectaisp.get("pictureId"); + if (pictureId != null) { + pictureIds.add(String.valueOf(pictureId)); // 转换为String + } } } - } - if(similarComplete==0){ - return Collections.emptyMap(); + } List pendingApprovalList = new ArrayList<>(); // 存储待审批的pictureId集合 List approvedList = new ArrayList<>(); // 存储通过的pictureId集合 List failedList = new ArrayList<>(); // 存储不通过的pictureId集合 - List failedPictureIds = ocrPictureService.getPictureNodeStatesList(pictureIds, nodeType); - for (OcrPicture picture : failedPictureIds) { - if (picture.getHistoryStates() == 3) { - failedList.add(picture.getRemark()); - } else if (picture.getHistoryStates() == 1) { - pendingApprovalList.add(picture.getRemark()); - } else if (picture.getHistoryStates() == 2) { - approvedList.add(picture.getRemark()); + if(pictureIds.size()!=0){ + List failedPictureIds = ocrPictureService.getPictureNodeStatesList(pictureIds, nodeType); + for (OcrPicture picture : failedPictureIds) { + if (picture.getHistoryStates() == 3) { + failedList.add(picture.getRemark()); + } else if (picture.getHistoryStates() == 1) { + pendingApprovalList.add(picture.getRemark()); + } else if (picture.getHistoryStates() == 2) { + approvedList.add(picture.getRemark()); + } } } From 62c222321301a40407c105571545798f2b8a15b2 Mon Sep 17 00:00:00 2001 From: LILI <707464720@qq.com> Date: Mon, 1 Apr 2024 18:37:15 +0800 Subject: [PATCH 49/92] =?UTF-8?q?fix:1.admin=E8=B4=A6=E5=8F=B7=E5=90=8E?= =?UTF-8?q?=E5=8F=B0=E7=99=BB=E5=BD=95=E9=97=AE=E9=A2=98=202.=E5=8F=AF?= =?UTF-8?q?=E7=96=91=E6=96=87=E4=BB=B6=E6=90=9C=E7=B4=A2=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E5=AD=97=E6=AE=B5=E4=BF=A1=E6=81=AFTODO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MyAuthenticationProvider.java | 2 +- .../OcrTaskchildDubiousFileController.java | 21 ++--- .../IOcrTaskchildDubiousFileService.java | 5 ++ .../OcrTaskchildDubiousFileServiceImpl.java | 76 +++++++++++++++++++ .../mapper/oa/OcrTaskchildPictureMapper.xml | 3 +- 5 files changed, 96 insertions(+), 11 deletions(-) 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 192d9475..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 @@ -130,7 +130,7 @@ public class MyAuthenticationProvider implements AuthenticationProvider { } boolean tenantStatus = userTokenService.getTenantStatus(agentcode); - if (!tenantStatus) { + if (!"admin".equals(loginname) && !tenantStatus) { throw new AuthenticationServiceException("该租户已被冻结!"); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java index 28a63487..b42ccb15 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java @@ -8,6 +8,7 @@ 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; @@ -59,9 +60,15 @@ public class OcrTaskchildDubiousFileController { */ @RequestMapping(value = "/dubiousfilelist", method = RequestMethod.GET) public ResultVo dubiousfilelist(HttpServletRequest request, - @RequestParam(value = "pageNo", required = false, defaultValue = "0") int pageNo, - @RequestParam(value = "pageSize", required = false, defaultValue = "10") int pageSize, - @RequestParam(value = "orderbyname", required = true, defaultValue = "0") String orderbyname) { + @RequestParam(value = "pageNo", required = false, defaultValue = "0") Integer pageNo, + @RequestParam(value = "pageSize", required = false, defaultValue = "10") Integer pageSize, + @RequestParam(value = "orderbyname", required = true, defaultValue = "desc") String orderbyname) { + + + String tenantId = request.getHeader("X-Tenant-Id"); + if(StringUtils.isBlank(tenantId)){ + return ResultVoUtil.error("租户主键不能为空"); + } UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); @@ -83,14 +90,10 @@ public class OcrTaskchildDubiousFileController { wrapper.orderByAsc("create_time"); } - - - - - - //执行查询方法 IPage page = ocrpictureservice.page(iPage, wrapper); + //TODO + //Page page = ocrTaskchildDubiousFileService.dubiousfilelist(pageNo,pageSize,orderbyname,userToken,tenantId); return ResultVoUtil.success(page); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java index 43a496a7..50b579a2 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/IOcrTaskchildDubiousFileService.java @@ -1,7 +1,10 @@ package cn.jyjz.xiaoyao.ocr.service; +import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildDubiousFile; +import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; /** @@ -14,4 +17,6 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IOcrTaskchildDubiousFileService extends IService { + Page dubiousfilelist(Integer pageNo, Integer pageSize, String orderbyname, UserToken userToken, String tenantId); + } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java index e58b1dbf..bf7b9e0e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java @@ -1,11 +1,29 @@ package cn.jyjz.xiaoyao.ocr.service.impl; +import cn.jyjz.flowable.common.ProcessConstant; +import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; +import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.ocr.dataDao.OcrTaskchildDubiousFileMapper; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureInfo; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildDubiousFile; import cn.jyjz.xiaoyao.ocr.service.IOcrTaskchildDubiousFileService; +import cn.jyjz.xiaoyao.ocr.service.OcrPictureInfoService; +import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; +import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; +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 com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import java.util.stream.Collectors; + /** *

* 可疑文件夹 服务实现类 @@ -17,4 +35,62 @@ import org.springframework.stereotype.Service; @Service public class OcrTaskchildDubiousFileServiceImpl extends ServiceImpl implements IOcrTaskchildDubiousFileService { + @Resource + private OcrPictureInfoService pictureInfoService; + + @Resource + private OcrTaskchildPictureService ocrTaskchildPictureService; + /** + * 分页查询可疑文件夹下的图片信息,并返回对应的状态,相似度,时间值等 + * @param pageNo + * @param pageSize + * @param orderbyname + * @param userToken + * @param tenantId + * @return + */ + @Override + public Page dubiousfilelist(Integer pageNo, Integer pageSize, String orderbyname, UserToken userToken, String tenantId) { + + Page objectPage = new Page<>(Integer.valueOf(pageNo),Integer.valueOf(pageSize)); + + //获取可疑文件图片列表 + QueryWrapper dubiouswrapper = new QueryWrapper<>(); + dubiouswrapper.eq("userid",userToken.getUserid()); + dubiouswrapper.eq("tenantid",tenantId); + List list = this.list(dubiouswrapper); + if(list.size()==0){ + return new Page<>(); + } + + //提取可疑图片列表id + List pictureIdList = list.stream().map(i -> String.valueOf(i.getPictureId())).collect(Collectors.toList()); + + //获取图片历史对比表数据 + String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批"); + List taskChildPictures = ocrTaskchildPictureService.getPictureHistoryList(new ArrayList<>(pictureIdList), userNodeType); + + +// //获取图片比对结果分数,状态 +// for (OcrTaskChildPictureVo taskChildPicture : taskChildPictures) { +//// taskChildPicture.setSimilarityScore(Integer.parseInt(jsonObject.getString(taskChildPicture.getPictureId().toString()))); +// } + + //按时间字段排序 + if("desc".equals(orderbyname)){ + taskChildPictures.stream().sorted(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate).reversed()).collect(Collectors.toList()); + }else { + taskChildPictures.stream().sorted(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate)).collect(Collectors.toList()); + } + + List records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); + for (OcrTaskChildPictureVo ocrTaskChildPictureVo : records) { + OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); + ocrTaskChildPictureVo.setPictureInfo(one); + } + + objectPage.setRecords(records); + objectPage.setTotal(taskChildPictures.size()); + return objectPage; + } } 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 89dc4167..c1e01598 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 @@ -590,7 +590,8 @@ t1.imgUrl, ifnull(t3.STATSHIS, 1) historyStates, t1.submit_date_timestamp submitDateTimestamp, - t1.photo_date_timestamp photoDateTimestamp + t1.photo_date_timestamp photoDateTimestamp, + t1.similarity_score similarityScore FROM ocr_picture t1 LEFT JOIN ocr_taskchild_picture t2 on t1.ID = t2.PICTUREID From 4f2a478f685d1813923d84e1e28d9dcd723e19e0 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Mon, 1 Apr 2024 19:14:26 +0800 Subject: [PATCH 50/92] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=AE=A1=E6=A0=B8=E6=9F=A5=E8=AF=A2=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 0ea0e5bc..1d96526e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1315,7 +1315,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask query.put("searchassignee", user.getLoginname()); query.putAll(searchQuery); - if (!userSearchId.isEmpty()) { + if (!StringUtils.isBlank(userSearchId)) { OcrUsersearch ocrUsersearch = ocrUsersearchService.selectByUserSearchId(userSearchId); SearchQuery additionalQuery = new SearchQuery(); for (OcrUsersearchchild usersearchchild : ocrUsersearch.getOcrUsersearchchildList()) { From 0798e990f43bbe507d4fdbdc4ba11a97aa068e7a Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 19:17:17 +0800 Subject: [PATCH 51/92] =?UTF-8?q?fix:=20=E4=BB=BB=E5=8A=A1=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/flowable/controller/FlowTaskController.java | 6 +++++- .../java/cn/jyjz/flowable/service/IFlowTaskService.java | 5 ++++- .../cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java | 7 ++++--- .../jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java | 2 +- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index f5dff51c..a53343d4 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -22,6 +22,7 @@ import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.oa.from.dataobject.Category; 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; @@ -29,9 +30,11 @@ 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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 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.springframework.http.MediaType; @@ -672,6 +675,7 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo, @RequestParam(name = "pageSize") Integer pageSize) { - return flowTaskService.repetitionTaskList(pageNo, pageSize); + IPage result = flowTaskService.repetitionTaskList(pageNo, pageSize); + return ResultVoUtil.success(result); } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index 8024d0e5..5a259f59 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -13,8 +13,11 @@ 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.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; @@ -165,5 +168,5 @@ public interface IFlowTaskService { */ ResultVo repetitionTask(); - ResultVo repetitionTaskList(Integer pageNo, Integer pageSize); + IPage repetitionTaskList(Integer pageNo, Integer pageSize); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index dbe7c308..9ba3503f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -32,6 +32,7 @@ import cn.jyjz.xiaoyao.oa.from.dataobject.Flowablecc; import cn.jyjz.xiaoyao.oa.from.service.*; import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; +import cn.jyjz.xiaoyao.oa.from.vo.RepeatedTaskVo; import cn.jyjz.xiaoyao.ocr.dataobject.*; import cn.jyjz.xiaoyao.ocr.service.*; import cn.jyjz.xiaoyao.ocr.util.SearchParaFormatting; @@ -1764,10 +1765,10 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } @Override - public ResultVo repetitionTaskList(Integer pageNo, Integer pageSize) { - Page page = new Page<>(pageNo, pageSize); + public IPage repetitionTaskList(Integer pageNo, Integer pageSize) { + Page page = new Page<>(pageNo, pageSize); - return ResultVoUtil.success(flowableccMybatisDao.repetitionTaskList(page)); + return flowableccMybatisDao.repetitionTaskList(page); } /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java index 925d58b2..d4b91fbb 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java @@ -42,5 +42,5 @@ public interface FlowableccMybatisDao extends BaseMapper { List repetitionTask(); - Page repetitionTaskList(Page page); + Page repetitionTaskList(Page page); } From f95b910323415207c122bcb607c9a1ce8205bdf0 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 19:17:17 +0800 Subject: [PATCH 52/92] =?UTF-8?q?fix:=20=E4=BB=BB=E5=8A=A1=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/flowable/controller/FlowTaskController.java | 6 +++++- .../java/cn/jyjz/flowable/service/IFlowTaskService.java | 5 ++++- .../cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java | 7 ++++--- .../jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java | 2 +- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 1f2d0dc1..9229d486 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -22,6 +22,7 @@ import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.oa.from.dataobject.Category; 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; @@ -29,9 +30,11 @@ 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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 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.springframework.http.MediaType; @@ -675,6 +678,7 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo, @RequestParam(name = "pageSize") Integer pageSize) { - return flowTaskService.repetitionTaskList(pageNo, pageSize); + IPage result = flowTaskService.repetitionTaskList(pageNo, pageSize); + return ResultVoUtil.success(result); } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index c4b13513..c99b73a7 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -13,9 +13,12 @@ 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 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; @@ -175,5 +178,5 @@ public interface IFlowTaskService { */ ResultVo repetitionTask(); - ResultVo repetitionTaskList(Integer pageNo, Integer pageSize); + IPage repetitionTaskList(Integer pageNo, Integer pageSize); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 1d96526e..e3c7ef6f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -33,6 +33,7 @@ import cn.jyjz.xiaoyao.oa.from.dataobject.Flowablecc; import cn.jyjz.xiaoyao.oa.from.service.*; import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; +import cn.jyjz.xiaoyao.oa.from.vo.RepeatedTaskVo; import cn.jyjz.xiaoyao.ocr.dataobject.*; import cn.jyjz.xiaoyao.ocr.service.*; import cn.jyjz.xiaoyao.ocr.util.SearchParaFormatting; @@ -1814,10 +1815,10 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } @Override - public ResultVo repetitionTaskList(Integer pageNo, Integer pageSize) { - Page page = new Page<>(pageNo, pageSize); + public IPage repetitionTaskList(Integer pageNo, Integer pageSize) { + Page page = new Page<>(pageNo, pageSize); - return ResultVoUtil.success(flowableccMybatisDao.repetitionTaskList(page)); + return flowableccMybatisDao.repetitionTaskList(page); } /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java index 925d58b2..d4b91fbb 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java @@ -42,5 +42,5 @@ public interface FlowableccMybatisDao extends BaseMapper { List repetitionTask(); - Page repetitionTaskList(Page page); + Page repetitionTaskList(Page page); } From 740cc6ae47315fe287b21762f8446393165f5208 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 19:39:06 +0800 Subject: [PATCH 53/92] =?UTF-8?q?fix:=20=E4=BB=BB=E5=8A=A1=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FlowTaskController.java | 2 +- .../flowable/service/IFlowTaskService.java | 2 +- .../service/impl/FlowTaskServiceImpl.java | 11 +++++--- .../oa/from/dataDao/FlowableccMybatisDao.java | 3 +- .../resources/mapper/oa/FlowableccMapper.xml | 28 +++++++++---------- 5 files changed, 25 insertions(+), 21 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 9229d486..6955fe28 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -678,7 +678,7 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo, @RequestParam(name = "pageSize") Integer pageSize) { - IPage result = flowTaskService.repetitionTaskList(pageNo, pageSize); + IPage result = flowTaskService.repetitionTaskList(pageNo, pageSize); return ResultVoUtil.success(result); } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index c99b73a7..dd18bd1f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -178,5 +178,5 @@ public interface IFlowTaskService { */ ResultVo repetitionTask(); - IPage repetitionTaskList(Integer pageNo, Integer pageSize); + IPage repetitionTaskList(Integer pageNo, Integer pageSize); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index e3c7ef6f..3e093107 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1815,10 +1815,13 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } @Override - public IPage repetitionTaskList(Integer pageNo, Integer pageSize) { - Page page = new Page<>(pageNo, pageSize); - - return flowableccMybatisDao.repetitionTaskList(page); + public IPage repetitionTaskList(Integer pageNo, Integer pageSize) { + Page page = new Page<>(pageNo, pageSize); + List result = flowableccMybatisDao.repetitionTaskList(); + List collect = result.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); + page.setRecords(collect); + page.setTotal(collect.size()); + return page; } /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java index d4b91fbb..305d5315 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java @@ -5,6 +5,7 @@ import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; import cn.jyjz.xiaoyao.oa.from.vo.RepeatedContentVo; import cn.jyjz.xiaoyao.oa.from.vo.RepeatedTaskVo; import cn.jyjz.xiaoyao.oa.from.vo.UserDistionaryVo; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -42,5 +43,5 @@ public interface FlowableccMybatisDao extends BaseMapper { List repetitionTask(); - Page repetitionTaskList(Page page); + List repetitionTaskList(); } diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml index 7e940e2c..4edb1b66 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml @@ -223,20 +223,20 @@ LEFT JOIN ocr_picture t3 on t1.content = t3.field8 - + SELECT t2.* + + + + + + + + + + + + from (select field8 content, ID id, imgUrl FROM ocr_picture where ID in (select child.PICTUREID from oa_userfinal_t final left join ocr_taskchild_picture child on final.FORMID = child.ID) From d9066f11153a7e1d69a82064a568afc64edbc1e5 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 19:43:25 +0800 Subject: [PATCH 54/92] =?UTF-8?q?fix:=20=E4=BB=BB=E5=8A=A1=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 3e093107..da1f8d16 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1820,7 +1820,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask List result = flowableccMybatisDao.repetitionTaskList(); List collect = result.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); page.setRecords(collect); - page.setTotal(collect.size()); + page.setTotal(result.size()); return page; } From 17a467d3f67dc4c7ff1048d204f6dbc2112ab367 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 19:54:35 +0800 Subject: [PATCH 55/92] =?UTF-8?q?fix:=20=E7=9B=B8=E4=BC=BC=E5=BA=A6?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=B7=BB=E5=8A=A0=E5=9B=BE=E7=89=87=E4=BF=A1?= =?UTF-8?q?=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/oa/OcrTaskchildPictureMapper.xml | 81 ++++++++++++++++--- 1 file changed, 68 insertions(+), 13 deletions(-) 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 c1e01598..8f662cb9 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,7 @@ + and OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend} @@ -260,6 +306,7 @@ + and tcp.OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend} @@ -450,7 +497,7 @@ where tc.STATES = 5 ) as tcp left join ocr_picture pic - on tcp.PICTUREID = pic.ID and pic.suspiciousfile =0 + on tcp.PICTUREID = pic.ID and pic.suspiciousfile = 0 @@ -472,15 +519,16 @@ from ocr_taskchild_picture tc, OA_USERFINAL_T uf, ocr_picture p - where tc.ID = uf.FORMID and p.ID = tc.PICTUREID and p.suspiciousfile =0 + 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.* - from ocr_taskchild_picture tc, - ocr_picture p + from ocr_taskchild_picture tc, ocr_picture p where tc.STATES = 5 and p.suspiciousfile =0 ) as tcp @@ -498,7 +546,7 @@ uf.TASKNO from ocr_taskchild_picture tc LEFT JOIN OA_USERAPPROVE_T uf ON tc.ID = uf.ID - left join ocr_picture op on tc.PICTUREID = op.ID and op.suspiciousfile =0 + left join ocr_picture op on tc.PICTUREID = op.ID and op.suspiciousfile = 0 where tc.ASSIGNEE = #{searchassignee} and tc.TENANTID = #{searchtenantid} and tc.STATES = 2 @@ -511,8 +559,10 @@ uf.TASKNO from ocr_taskchild_picture tc, OA_USERAPPROVE_T uf, - ocr_picture op - where tc.ID = uf.FORMID and tc.PICTUREID = op.ID and op.suspiciousfile =0 + ocr_picture op + where tc.ID = uf.FORMID + and tc.PICTUREID = op.ID + and op.suspiciousfile = 0 and tc.TENANTID = #{searchtenantid} and uf.USERID = #{thisLoginUserid} @@ -591,12 +641,13 @@ ifnull(t3.STATSHIS, 1) historyStates, t1.submit_date_timestamp submitDateTimestamp, t1.photo_date_timestamp photoDateTimestamp, - t1.similarity_score similarityScore + t1.similarity_score similarityScore FROM ocr_picture t1 LEFT JOIN ocr_taskchild_picture t2 on t1.ID = t2.PICTUREID LEFT JOIN oa_userapprove_t t3 on t2.ID = t3.FORMID and t3.TASKNAME = '${taskname}' - where t1.suspiciousfile = 0 and t1.ID in + where t1.suspiciousfile = 0 + and t1.ID in #{item} @@ -660,10 +711,11 @@ LEFT JOIN ocr_picture_info t2 on t1.ID = t2.picture_id LEFT JOIN ocr_taskchild_picture t3 on t1.ID = t3.PICTUREID LEFT JOIN oa_userapprove_t t4 on t4.FORMID = t3.ID - where t1.ID = #{pictureId} and t1.suspiciousfile = 0 + where t1.ID = #{pictureId} + and t1.suspiciousfile = 0 - SELECT t3.ID id, t3.PICTUREID pictureId, t3.STATES states, @@ -697,12 +749,15 @@ t2.photo_date_timestamp photoDateTimestamp, t2.server_thumbnail_url serverThumbnailUrl, t1.max_similarity maxSimilarity, - ifnull(t4.STATSHIS, 1) historyStates + ifnull(t4.STATSHIS, 1) historyStates, + t5.* FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID LEFT JOIN oa_userapprove_t t4 ON t3.ID = t4.FORMID and t4.TASKNAME = '${taskname}' - WHERE t1.check_duplicate_id = #{checkDuplicateId} and t2.suspiciousfile = 0 + left join ocr_picture_info t5 on t2.ID = t5.picture_id + WHERE t1.check_duplicate_id = #{checkDuplicateId} + and t2.suspiciousfile = 0 and t1.picture_id != #{pictureId} From 13d7eea4a445836db23dfe975025126e0466d39f Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Mon, 1 Apr 2024 20:53:35 +0800 Subject: [PATCH 56/92] =?UTF-8?q?fix:=20=E5=B0=81=E8=A3=85=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 1d96526e..2dc57244 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1955,12 +1955,14 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask break; case "and": // 添加 "and" 查询条件 - SearchQuery andQuery = this.formattingSearchType1(new SearchQuery(), usersearchchild); + searchQuery.addRulesOp(usersearchchild.getSearchfield(),"and"); + SearchQuery andQuery = this.formattingSearchType1(searchQuery, usersearchchild); searchQuery.setSearchQuery(andQuery); break; case "or": // 添加 "or" 查询条件 - SearchQuery orQuery = this.formattingSearchType1(new SearchQuery(), usersearchchild); + searchQuery.addRulesOp(usersearchchild.getSearchfield(),"or"); + SearchQuery orQuery = this.formattingSearchType1(searchQuery, usersearchchild); searchQuery.setSearchQuery(orQuery); break; default: From 475cf208c747b96dcefe9ff34a09a3c21ab7e8c6 Mon Sep 17 00:00:00 2001 From: LILI <707464720@qq.com> Date: Mon, 1 Apr 2024 21:37:59 +0800 Subject: [PATCH 57/92] =?UTF-8?q?fix:1.=E5=8F=AF=E7=96=91=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=90=9C=E7=B4=A2=E8=BF=94=E5=9B=9E=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E4=BF=A1=E6=81=AF=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OcrTaskchildDubiousFileController.java | 45 +++++++++---------- .../OcrTaskchildPictureMybatisDao.java | 1 + .../service/OcrTaskchildPictureService.java | 2 + .../OcrTaskchildDubiousFileServiceImpl.java | 39 ++++++++-------- .../impl/OcrTaskchildPictureServiceImpl.java | 5 +++ .../mapper/oa/OcrTaskchildPictureMapper.xml | 44 ++++++++++++++++++ 6 files changed, 92 insertions(+), 44 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java index b42ccb15..cdc22016 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskchildDubiousFileController.java @@ -62,7 +62,7 @@ public class OcrTaskchildDubiousFileController { public ResultVo 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 = "desc") String orderbyname) { + @RequestParam(value = "orderbyname", required = true, defaultValue = "asc") String orderbyname) { String tenantId = request.getHeader("X-Tenant-Id"); @@ -72,28 +72,27 @@ public class OcrTaskchildDubiousFileController { UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); - QueryWrapper dubiouswrapper = new QueryWrapper<>(); - dubiouswrapper.eq("userid",userToken.getUserid()); - List list = ocrTaskchildDubiousFileService.list(dubiouswrapper); - if(list.size()==0){ - return ResultVoUtil.success(); - } - IPage iPage = new Page<>(Integer.valueOf(pageNo),Integer.valueOf(pageSize)); - - QueryWrapper 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 page = ocrpictureservice.page(iPage, wrapper); - - //TODO - //Page page = ocrTaskchildDubiousFileService.dubiousfilelist(pageNo,pageSize,orderbyname,userToken,tenantId); +// QueryWrapper dubiouswrapper = new QueryWrapper<>(); +// dubiouswrapper.eq("userid",userToken.getUserid()); +// List list = ocrTaskchildDubiousFileService.list(dubiouswrapper); +// if(list.size()==0){ +// return ResultVoUtil.success(); +// } +// IPage iPage = new Page<>(Integer.valueOf(pageNo),Integer.valueOf(pageSize)); +// +// QueryWrapper 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 page = ocrpictureservice.page(iPage, wrapper); + + Page page = ocrTaskchildDubiousFileService.dubiousfilelist(pageNo,pageSize,orderbyname,userToken,tenantId); return ResultVoUtil.success(page); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java index 69c01362..7d8025da 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrTaskchildPictureMybatisDao.java @@ -49,6 +49,7 @@ public interface OcrTaskchildPictureMybatisDao extends BaseMapper getPictureHistoryList(@Param("pictureIds") List pictureIds, @Param("taskname") String taskname); + List getDubiousfileList(@Param("pictureIds") List pictureIds, @Param("taskname") String taskname); PictureDetailVo getPictureDetail(String pictureId); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java index a82d610e..dd924bc3 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java @@ -1,5 +1,6 @@ package cn.jyjz.xiaoyao.ocr.service; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -150,4 +151,5 @@ public interface OcrTaskchildPictureService extends BaseService getDubiousfileList(List pictureIds, String userNodeType); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java index bf7b9e0e..460a0853 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java @@ -1,5 +1,6 @@ package cn.jyjz.xiaoyao.ocr.service.impl; +import cn.hutool.core.collection.CollUtil; import cn.jyjz.flowable.common.ProcessConstant; import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.base.vo.UserToken; @@ -60,37 +61,33 @@ public class OcrTaskchildDubiousFileServiceImpl extends ServiceImpl list = this.list(dubiouswrapper); if(list.size()==0){ - return new Page<>(); + return objectPage; } //提取可疑图片列表id List pictureIdList = list.stream().map(i -> String.valueOf(i.getPictureId())).collect(Collectors.toList()); - //获取图片历史对比表数据 + //确定用户审批节点对应阶段的图片审核状态 String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批"); - List taskChildPictures = ocrTaskchildPictureService.getPictureHistoryList(new ArrayList<>(pictureIdList), userNodeType); + List taskChildPictures = ocrTaskchildPictureService.getDubiousfileList(new ArrayList<>(pictureIdList), userNodeType); + if(CollUtil.isNotEmpty(taskChildPictures)){ + //按时间字段排序 + if("desc".equals(orderbyname)){ + taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getSubmitDateTimestamp).reversed()); + }else{ + taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getSubmitDateTimestamp)); + } -// //获取图片比对结果分数,状态 -// for (OcrTaskChildPictureVo taskChildPicture : taskChildPictures) { -//// taskChildPicture.setSimilarityScore(Integer.parseInt(jsonObject.getString(taskChildPicture.getPictureId().toString()))); -// } - - //按时间字段排序 - if("desc".equals(orderbyname)){ - taskChildPictures.stream().sorted(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate).reversed()).collect(Collectors.toList()); - }else { - taskChildPictures.stream().sorted(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate)).collect(Collectors.toList()); - } - - List records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - for (OcrTaskChildPictureVo ocrTaskChildPictureVo : records) { - OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); - ocrTaskChildPictureVo.setPictureInfo(one); + List records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); + for (OcrTaskChildPictureVo ocrTaskChildPictureVo : records) { + OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); + ocrTaskChildPictureVo.setPictureInfo(one); + } + objectPage.setRecords(records); + objectPage.setTotal(taskChildPictures.size()); } - objectPage.setRecords(records); - objectPage.setTotal(taskChildPictures.size()); return objectPage; } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java index 0c58fb39..7e50a9bc 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java @@ -736,6 +736,11 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl getDubiousfileList(List pictureIds, String taskname) { + return ocrtaskchildpicturemybatisdao.getDubiousfileList(pictureIds, taskname); + } + private static ApproveNodeDto getApproveNodeDto(Userapprove userApprove) { ApproveNodeDto approveNode = new ApproveNodeDto(); approveNode.setApproveRemark(userApprove.getTaskcomment()); 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 c1e01598..de875ab9 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 @@ -713,4 +713,48 @@ order by t2.create_time ${oderType} + + From 3c40ab3da893e633101250e6052bb15369f6d801 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 21:52:55 +0800 Subject: [PATCH 58/92] =?UTF-8?q?fix:=20ai=E5=AE=A1=E6=89=B9=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=8F=8A=E7=9B=B8=E4=BC=BC=E5=BA=A6=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=9F=A5=E9=87=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FlowTaskController.java | 2 +- .../flowable/service/IFlowTaskService.java | 2 +- .../service/impl/FlowTaskServiceImpl.java | 9 +-- .../oa/from/dataDao/FlowableccMybatisDao.java | 4 +- .../impl/OcrSearchHistoryServiceImpl.java | 26 +++++--- .../OcrTaskchildDubiousFileServiceImpl.java | 5 -- .../impl/OcrTaskchildPictureServiceImpl.java | 4 -- .../xiaoyao/ocr/vo/OcrTaskChildPictureVo.java | 3 +- .../resources/mapper/oa/FlowableccMapper.xml | 63 ++++++++----------- .../mapper/oa/OcrTaskchildPictureMapper.xml | 4 +- 10 files changed, 56 insertions(+), 66 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 6955fe28..f9502c2f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -678,7 +678,7 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo, @RequestParam(name = "pageSize") Integer pageSize) { - IPage result = flowTaskService.repetitionTaskList(pageNo, pageSize); + Page result = flowTaskService.repetitionTaskList(pageNo, pageSize); return ResultVoUtil.success(result); } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index ed0fe759..f5759811 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -179,5 +179,5 @@ public interface IFlowTaskService { */ ResultVo repetitionTask(); - IPage repetitionTaskList(Integer pageNo, Integer pageSize); + Page repetitionTaskList(Integer pageNo, Integer pageSize); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index da1f8d16..b2ac62e8 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1815,13 +1815,10 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } @Override - public IPage repetitionTaskList(Integer pageNo, Integer pageSize) { + public Page repetitionTaskList(Integer pageNo, Integer pageSize) { Page page = new Page<>(pageNo, pageSize); - List result = flowableccMybatisDao.repetitionTaskList(); - List collect = result.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - page.setRecords(collect); - page.setTotal(result.size()); - return page; + Page result = flowableccMybatisDao.repetitionTaskList(page); + return result; } /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java index 305d5315..0529ae1d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java @@ -3,10 +3,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.RepeatedTaskVo; import cn.jyjz.xiaoyao.oa.from.vo.UserDistionaryVo; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; -import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; @@ -43,5 +41,5 @@ public interface FlowableccMybatisDao extends BaseMapper { List repetitionTask(); - List repetitionTaskList(); + Page repetitionTaskList(Page page); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 8af318b2..d3eb782c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -1,6 +1,8 @@ package cn.jyjz.xiaoyao.ocr.service.impl; import cn.hutool.core.collection.CollUtil; +import cn.jyjz.flowable.common.ProcessConstant; +import cn.jyjz.flowable.entity.FlowTaskInfo; import cn.jyjz.flowable.service.IFlowTaskService; import cn.jyjz.flowable.utils.PageUtils; import cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT; @@ -16,12 +18,15 @@ import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.common.redis.cache.ICacheManager; import cn.jyjz.xiaoyao.common.redis.cache.constants.CacheConstants; +import cn.jyjz.xiaoyao.ocr.dataDao.OcrTaskchildPictureMybatisDao; import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; +import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; import cn.jyjz.xiaoyao.ocr.util.FrontMenuEnum; +import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -57,6 +62,8 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl pendingApprovalList = new ArrayList<>(); // 存储待审批的pictureId集合 + List pendingApprovalList = new ArrayList<>(); // 存储待审批的pictureId集合 List approvedList = new ArrayList<>(); // 存储通过的pictureId集合 List failedList = new ArrayList<>(); // 存储不通过的pictureId集合 if(pictureIds.size()!=0){ - List failedPictureIds = ocrPictureService.getPictureNodeStatesList(pictureIds, nodeType); - for (OcrPicture picture : failedPictureIds) { + String userNodeType = ProcessConstant.userNodeType.getOrDefault(nodeType, "一级审批"); + List failedPictureIds = taskchildPictureMybatisDao.getPictureHistoryList(pictureIds, userNodeType); + for (OcrTaskChildPictureVo picture : failedPictureIds) { if (picture.getHistoryStates() == 3) { - failedList.add(picture.getRemark()); + failedList.add(picture.getId()); } else if (picture.getHistoryStates() == 1) { - pendingApprovalList.add(picture.getRemark()); + FlowTaskInfo flowTaskInfo = new FlowTaskInfo(); + flowTaskInfo.setFormId(picture.getId()); + flowTaskInfo.setTaskId(picture.getTaskId()); + flowTaskInfo.setTaskName(picture.getTaskName()); + pendingApprovalList.add(flowTaskInfo); } else if (picture.getHistoryStates() == 2) { - approvedList.add(picture.getRemark()); + approvedList.add(picture.getId()); } } } @@ -212,7 +224,7 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - for (OcrTaskChildPictureVo ocrTaskChildPictureVo : records) { - OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); - ocrTaskChildPictureVo.setPictureInfo(one); - } - objectPage.setRecords(records); objectPage.setTotal(taskChildPictures.size()); return objectPage; diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java index 0c58fb39..6ef74614 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java @@ -693,10 +693,6 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl collect = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - for (OcrTaskChildPictureVo ocrTaskChildPictureVo : collect) { - OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); - ocrTaskChildPictureVo.setPictureInfo(one); - } objectPage.setRecords(collect); objectPage.setTotal(taskChildPictures.size()); return objectPage; diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java index b869cdfb..cd777e4c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java @@ -168,6 +168,7 @@ public class OcrTaskChildPictureVo implements java.io.Serializable { @ApiModelProperty(value = "拍照时间") private String photoDateTimestamp; - private OcrPictureInfo pictureInfo; + @ApiModelProperty(value = "查重id") + private String checkDuplicateId; } diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml index 4edb1b66..2b03280b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml @@ -201,48 +201,39 @@ - - + + 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 8f662cb9..a5c17d99 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 @@ -715,7 +715,7 @@ and t1.suspiciousfile = 0 - SELECT t3.ID id, t3.PICTUREID pictureId, t3.STATES states, @@ -750,7 +750,7 @@ t2.server_thumbnail_url serverThumbnailUrl, t1.max_similarity maxSimilarity, ifnull(t4.STATSHIS, 1) historyStates, - t5.* + t1.check_duplicate_id FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID From 4e9d6d33458a123ee9a0fc7e81d8daeca1c70072 Mon Sep 17 00:00:00 2001 From: DELL Date: Mon, 1 Apr 2024 21:55:12 +0800 Subject: [PATCH 59/92] =?UTF-8?q?fix:=E9=AB=98=E7=BA=A7=E6=A3=80=E7=B4=A2?= =?UTF-8?q?=E7=9A=84=E4=BF=AE=E6=94=B9=E5=85=88=E6=B3=A8=E9=87=8A=E6=8E=89?= =?UTF-8?q?=EF=BC=8CSearchQuery=E7=B1=BB=E4=BF=AE=E6=94=B9=E7=9A=84?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=B8=8D=E5=AE=8C=E6=95=B4=EF=BC=8C=E4=BC=9A?= =?UTF-8?q?=E5=BD=B1=E5=93=8D=E6=9C=8D=E5=8A=A1=E8=BF=90=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlowTaskServiceImpl.java | 268 +++++++++--------- 1 file changed, 134 insertions(+), 134 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 7fa97212..35d5bc69 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1316,14 +1316,14 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask query.put("searchassignee", user.getLoginname()); query.putAll(searchQuery); - if (!StringUtils.isBlank(userSearchId)) { - OcrUsersearch ocrUsersearch = ocrUsersearchService.selectByUserSearchId(userSearchId); - SearchQuery additionalQuery = new SearchQuery(); - for (OcrUsersearchchild usersearchchild : ocrUsersearch.getOcrUsersearchchildList()) { - this.formattingSearchChild1(additionalQuery, usersearchchild); - } - query.putAll(additionalQuery.getQuery()); - } +// if (!StringUtils.isBlank(userSearchId)) { +// OcrUsersearch ocrUsersearch = ocrUsersearchService.selectByUserSearchId(userSearchId); +// SearchQuery additionalQuery = new SearchQuery(); +// for (OcrUsersearchchild usersearchchild : ocrUsersearch.getOcrUsersearchchildList()) { +// this.formattingSearchChild1(additionalQuery, usersearchchild); +// } +// query.putAll(additionalQuery.getQuery()); +// } Long count = ocrTaskchildPictureService.listmytaskCount(query); @@ -1951,132 +1951,132 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask return queryWrapper; } - private SearchQuery formattingSearchChild1(SearchQuery searchQuery, OcrUsersearchchild usersearchchild) { - switch (usersearchchild.getSearchRelationType()) { - case "where": - // 添加 "where" 查询条件 - this.formattingSearchType1(searchQuery, usersearchchild); - break; - case "and": - // 添加 "and" 查询条件 - searchQuery.addRulesOp(usersearchchild.getSearchfield(),"and"); - SearchQuery andQuery = this.formattingSearchType1(searchQuery, usersearchchild); - searchQuery.setSearchQuery(andQuery); - break; - case "or": - // 添加 "or" 查询条件 - searchQuery.addRulesOp(usersearchchild.getSearchfield(),"or"); - SearchQuery orQuery = this.formattingSearchType1(searchQuery, usersearchchild); - searchQuery.setSearchQuery(orQuery); - break; - default: - break; - } - return searchQuery; - } - - private SearchQuery formattingSearchType1(SearchQuery searchQuery, OcrUsersearchchild usersearchchild) { - //查询类型 相等true 不相等fase - boolean queryType = "eq".equals(usersearchchild.getSearchtype()); - - // 1.获取检查数据,确定数据类型 - String valueType = SearchParaFormatting.clickSearchValue(usersearchchild.getSearchvalue()); - List arrayData = null; //集合型数据 - List sectionInts = null; //纯数字区间型数据 - String[] sections = null; //字符串区间型数据 - DateTime beginTime = null; //日期时间区间型数据 - DateTime endTime = null; //日期时间区间型数据 - - // 2.根据数据类型,解构数据 - switch (valueType) { - case "array": - //处理多文件 - String[] datas = usersearchchild.getSearchvalue().split(","); - arrayData = Arrays.asList(datas); - break; - case "section": - //格式化数据,仅在做区间的时候去除空格,其他地方不进行空格去除. - sections = usersearchchild.getSearchvalue().trim().replaceAll("\\s+", "").split("-"); - //校验是否纯数字,纯数字的话,要转成int,否则比对时会有问题 - sectionInts = new ArrayList<>(); - for (String data : sections) { - if (data.matches("\\d+")) { - sectionInts.add(Integer.parseInt(data)); - } - } - break; - case "time": - //格式化时间数据 - String[] times = usersearchchild.getSearchvalue().trim().replaceAll("\\s+", "").split("-"); - beginTime = DateUtil.parse(times[0], "yyyy/MM/dd"); - endTime = DateUtil.parse(times[1], "yyyy/MM/dd"); - break; - default: - } - - // 3.根据查询类型 组装查询条件 相等 - switch (valueType) { - case "array": - //集合数据 - //相等 - if (queryType) { - searchQuery.addIn(usersearchchild.getSearchfield(), arrayData); - break; - } - //不相等 - searchQuery.addNotIn(usersearchchild.getSearchfield(), arrayData); - break; - - case "section": - //数字区间查询 - if (sectionInts != null && sectionInts.size() == 2) { - if (queryType) { - //相等 - searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), sectionInts.get(0)); - searchQuery.addLessEqual(usersearchchild.getSearchfield(), sectionInts.get(1)); - break; - } - //不相等 - searchQuery.addLess(usersearchchild.getSearchfield(), sectionInts.get(0)); - searchQuery.addGreater(usersearchchild.getSearchfield(), sectionInts.get(1)); - break; - } - - //字符串区间查询 - if (queryType) { - //相等 - searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), sections[0]); - searchQuery.addLessEqual(usersearchchild.getSearchfield(), sections[1]); - break; - } - //不相等 - searchQuery.addLess(usersearchchild.getSearchfield(), sections[0]); - searchQuery.addGreater(usersearchchild.getSearchfield(), sections[1]); - break; - - - case "time": - //时间区间数据 - //相等 - if (queryType) { - searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), beginTime); - searchQuery.addLessEqual(usersearchchild.getSearchfield(), endTime); - break; - } - //不相等 - searchQuery.addLess(usersearchchild.getSearchfield(), beginTime); - searchQuery.addGreater(usersearchchild.getSearchfield(), endTime); - break; - - default: - if (queryType) { - searchQuery.addEqual(usersearchchild.getSearchfield(), usersearchchild.getSearchvalue()); - break; - } - searchQuery.addNotEqual(usersearchchild.getSearchfield(), usersearchchild.getSearchvalue()); - } - return searchQuery; - } +// private SearchQuery formattingSearchChild1(SearchQuery searchQuery, OcrUsersearchchild usersearchchild) { +// switch (usersearchchild.getSearchRelationType()) { +// case "where": +// // 添加 "where" 查询条件 +// this.formattingSearchType1(searchQuery, usersearchchild); +// break; +// case "and": +// // 添加 "and" 查询条件 +// searchQuery.addRulesOp(usersearchchild.getSearchfield(),"and"); +// SearchQuery andQuery = this.formattingSearchType1(searchQuery, usersearchchild); +// searchQuery.setSearchQuery(andQuery); +// break; +// case "or": +// // 添加 "or" 查询条件 +// searchQuery.addRulesOp(usersearchchild.getSearchfield(),"or"); +// SearchQuery orQuery = this.formattingSearchType1(searchQuery, usersearchchild); +// searchQuery.setSearchQuery(orQuery); +// break; +// default: +// break; +// } +// return searchQuery; +// } +// +// private SearchQuery formattingSearchType1(SearchQuery searchQuery, OcrUsersearchchild usersearchchild) { +// //查询类型 相等true 不相等fase +// boolean queryType = "eq".equals(usersearchchild.getSearchtype()); +// +// // 1.获取检查数据,确定数据类型 +// String valueType = SearchParaFormatting.clickSearchValue(usersearchchild.getSearchvalue()); +// List arrayData = null; //集合型数据 +// List sectionInts = null; //纯数字区间型数据 +// String[] sections = null; //字符串区间型数据 +// DateTime beginTime = null; //日期时间区间型数据 +// DateTime endTime = null; //日期时间区间型数据 +// +// // 2.根据数据类型,解构数据 +// switch (valueType) { +// case "array": +// //处理多文件 +// String[] datas = usersearchchild.getSearchvalue().split(","); +// arrayData = Arrays.asList(datas); +// break; +// case "section": +// //格式化数据,仅在做区间的时候去除空格,其他地方不进行空格去除. +// sections = usersearchchild.getSearchvalue().trim().replaceAll("\\s+", "").split("-"); +// //校验是否纯数字,纯数字的话,要转成int,否则比对时会有问题 +// sectionInts = new ArrayList<>(); +// for (String data : sections) { +// if (data.matches("\\d+")) { +// sectionInts.add(Integer.parseInt(data)); +// } +// } +// break; +// case "time": +// //格式化时间数据 +// String[] times = usersearchchild.getSearchvalue().trim().replaceAll("\\s+", "").split("-"); +// beginTime = DateUtil.parse(times[0], "yyyy/MM/dd"); +// endTime = DateUtil.parse(times[1], "yyyy/MM/dd"); +// break; +// default: +// } +// +// // 3.根据查询类型 组装查询条件 相等 +// switch (valueType) { +// case "array": +// //集合数据 +// //相等 +// if (queryType) { +// searchQuery.addIn(usersearchchild.getSearchfield(), arrayData); +// break; +// } +// //不相等 +// searchQuery.addNotIn(usersearchchild.getSearchfield(), arrayData); +// break; +// +// case "section": +// //数字区间查询 +// if (sectionInts != null && sectionInts.size() == 2) { +// if (queryType) { +// //相等 +// searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), sectionInts.get(0)); +// searchQuery.addLessEqual(usersearchchild.getSearchfield(), sectionInts.get(1)); +// break; +// } +// //不相等 +// searchQuery.addLess(usersearchchild.getSearchfield(), sectionInts.get(0)); +// searchQuery.addGreater(usersearchchild.getSearchfield(), sectionInts.get(1)); +// break; +// } +// +// //字符串区间查询 +// if (queryType) { +// //相等 +// searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), sections[0]); +// searchQuery.addLessEqual(usersearchchild.getSearchfield(), sections[1]); +// break; +// } +// //不相等 +// searchQuery.addLess(usersearchchild.getSearchfield(), sections[0]); +// searchQuery.addGreater(usersearchchild.getSearchfield(), sections[1]); +// break; +// +// +// case "time": +// //时间区间数据 +// //相等 +// if (queryType) { +// searchQuery.addGreaterEqual(usersearchchild.getSearchfield(), beginTime); +// searchQuery.addLessEqual(usersearchchild.getSearchfield(), endTime); +// break; +// } +// //不相等 +// searchQuery.addLess(usersearchchild.getSearchfield(), beginTime); +// searchQuery.addGreater(usersearchchild.getSearchfield(), endTime); +// break; +// +// default: +// if (queryType) { +// searchQuery.addEqual(usersearchchild.getSearchfield(), usersearchchild.getSearchvalue()); +// break; +// } +// searchQuery.addNotEqual(usersearchchild.getSearchfield(), usersearchchild.getSearchvalue()); +// } +// return searchQuery; +// } } From 193ab52f0269bc041f7b9c1d3efc084f74815ecb Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 21:52:55 +0800 Subject: [PATCH 60/92] =?UTF-8?q?fix:=20ai=E5=AE=A1=E6=89=B9=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=8F=8A=E7=9B=B8=E4=BC=BC=E5=BA=A6=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=9F=A5=E9=87=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FlowTaskController.java | 2 +- .../flowable/service/IFlowTaskService.java | 2 +- .../service/impl/FlowTaskServiceImpl.java | 9 +-- .../oa/from/dataDao/FlowableccMybatisDao.java | 4 +- .../impl/OcrSearchHistoryServiceImpl.java | 26 +++++--- .../OcrTaskchildDubiousFileServiceImpl.java | 12 +--- .../impl/OcrTaskchildPictureServiceImpl.java | 4 -- .../xiaoyao/ocr/vo/OcrTaskChildPictureVo.java | 3 +- .../resources/mapper/oa/FlowableccMapper.xml | 63 ++++++++----------- .../mapper/oa/OcrTaskchildPictureMapper.xml | 4 +- 10 files changed, 59 insertions(+), 70 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index 6955fe28..f9502c2f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -678,7 +678,7 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo, @RequestParam(name = "pageSize") Integer pageSize) { - IPage result = flowTaskService.repetitionTaskList(pageNo, pageSize); + Page result = flowTaskService.repetitionTaskList(pageNo, pageSize); return ResultVoUtil.success(result); } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index ed0fe759..f5759811 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -179,5 +179,5 @@ public interface IFlowTaskService { */ ResultVo repetitionTask(); - IPage repetitionTaskList(Integer pageNo, Integer pageSize); + Page repetitionTaskList(Integer pageNo, Integer pageSize); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 7fa97212..4cfb3bde 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1815,13 +1815,10 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } @Override - public IPage repetitionTaskList(Integer pageNo, Integer pageSize) { + public Page repetitionTaskList(Integer pageNo, Integer pageSize) { Page page = new Page<>(pageNo, pageSize); - List result = flowableccMybatisDao.repetitionTaskList(); - List collect = result.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - page.setRecords(collect); - page.setTotal(result.size()); - return page; + Page result = flowableccMybatisDao.repetitionTaskList(page); + return result; } /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java index 305d5315..0529ae1d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java @@ -3,10 +3,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.RepeatedTaskVo; import cn.jyjz.xiaoyao.oa.from.vo.UserDistionaryVo; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; -import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; @@ -43,5 +41,5 @@ public interface FlowableccMybatisDao extends BaseMapper { List repetitionTask(); - List repetitionTaskList(); + Page repetitionTaskList(Page page); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 8af318b2..d3eb782c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -1,6 +1,8 @@ package cn.jyjz.xiaoyao.ocr.service.impl; import cn.hutool.core.collection.CollUtil; +import cn.jyjz.flowable.common.ProcessConstant; +import cn.jyjz.flowable.entity.FlowTaskInfo; import cn.jyjz.flowable.service.IFlowTaskService; import cn.jyjz.flowable.utils.PageUtils; import cn.jyjz.xiaoyao.admin.dataobject.SFrontmenuT; @@ -16,12 +18,15 @@ import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.common.redis.cache.ICacheManager; import cn.jyjz.xiaoyao.common.redis.cache.constants.CacheConstants; +import cn.jyjz.xiaoyao.ocr.dataDao.OcrTaskchildPictureMybatisDao; import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; +import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; import cn.jyjz.xiaoyao.ocr.util.FrontMenuEnum; +import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -57,6 +62,8 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl pendingApprovalList = new ArrayList<>(); // 存储待审批的pictureId集合 + List pendingApprovalList = new ArrayList<>(); // 存储待审批的pictureId集合 List approvedList = new ArrayList<>(); // 存储通过的pictureId集合 List failedList = new ArrayList<>(); // 存储不通过的pictureId集合 if(pictureIds.size()!=0){ - List failedPictureIds = ocrPictureService.getPictureNodeStatesList(pictureIds, nodeType); - for (OcrPicture picture : failedPictureIds) { + String userNodeType = ProcessConstant.userNodeType.getOrDefault(nodeType, "一级审批"); + List failedPictureIds = taskchildPictureMybatisDao.getPictureHistoryList(pictureIds, userNodeType); + for (OcrTaskChildPictureVo picture : failedPictureIds) { if (picture.getHistoryStates() == 3) { - failedList.add(picture.getRemark()); + failedList.add(picture.getId()); } else if (picture.getHistoryStates() == 1) { - pendingApprovalList.add(picture.getRemark()); + FlowTaskInfo flowTaskInfo = new FlowTaskInfo(); + flowTaskInfo.setFormId(picture.getId()); + flowTaskInfo.setTaskId(picture.getTaskId()); + flowTaskInfo.setTaskName(picture.getTaskName()); + pendingApprovalList.add(flowTaskInfo); } else if (picture.getHistoryStates() == 2) { - approvedList.add(picture.getRemark()); + approvedList.add(picture.getId()); } } } @@ -212,7 +224,7 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - for (OcrTaskChildPictureVo ocrTaskChildPictureVo : records) { - OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); - ocrTaskChildPictureVo.setPictureInfo(one); - } - objectPage.setRecords(records); - objectPage.setTotal(taskChildPictures.size()); - } - + List records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); + objectPage.setRecords(records); + objectPage.setTotal(taskChildPictures.size()); return objectPage; } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java index 7e50a9bc..ec251a5c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java @@ -693,10 +693,6 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl collect = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - for (OcrTaskChildPictureVo ocrTaskChildPictureVo : collect) { - OcrPictureInfo one = pictureInfoService.getOne(new LambdaQueryWrapper().eq(OcrPictureInfo::getPictureId, ocrTaskChildPictureVo.getId())); - ocrTaskChildPictureVo.setPictureInfo(one); - } objectPage.setRecords(collect); objectPage.setTotal(taskChildPictures.size()); return objectPage; diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java index b869cdfb..cd777e4c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrTaskChildPictureVo.java @@ -168,6 +168,7 @@ public class OcrTaskChildPictureVo implements java.io.Serializable { @ApiModelProperty(value = "拍照时间") private String photoDateTimestamp; - private OcrPictureInfo pictureInfo; + @ApiModelProperty(value = "查重id") + private String checkDuplicateId; } diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml index 4edb1b66..2b03280b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml @@ -201,48 +201,39 @@ - - + + 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 b8d4b346..6c9c4995 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 @@ -715,7 +715,7 @@ and t1.suspiciousfile = 0 - SELECT t3.ID id, t3.PICTUREID pictureId, t3.STATES states, @@ -750,7 +750,7 @@ t2.server_thumbnail_url serverThumbnailUrl, t1.max_similarity maxSimilarity, ifnull(t4.STATSHIS, 1) historyStates, - t5.* + t1.check_duplicate_id FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID From aee0a37b4381ccf6d084085357da3f4601921448 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 1 Apr 2024 22:02:22 +0800 Subject: [PATCH 61/92] =?UTF-8?q?fix:=20ai=E5=AE=A1=E6=89=B9=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=8F=8A=E7=9B=B8=E4=BC=BC=E5=BA=A6=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=9F=A5=E9=87=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OcrTaskchildDubiousFileServiceImpl.java | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java index 0760b0e5..2b07400e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildDubiousFileServiceImpl.java @@ -41,8 +41,10 @@ public class OcrTaskchildDubiousFileServiceImpl extends ServiceImpl dubiousfilelist(Integer pageNo, Integer pageSize, String orderbyname, UserToken userToken, String tenantId) { - Page objectPage = new Page<>(Integer.valueOf(pageNo),Integer.valueOf(pageSize)); + Page objectPage = new Page<>(Integer.valueOf(pageNo), Integer.valueOf(pageSize)); //获取可疑文件图片列表 QueryWrapper dubiouswrapper = new QueryWrapper<>(); - dubiouswrapper.eq("userid",userToken.getUserid()); - dubiouswrapper.eq("tenantid",tenantId); + dubiouswrapper.eq("userid", userToken.getUserid()); + dubiouswrapper.eq("tenantid", tenantId); List list = this.list(dubiouswrapper); - if(list.size()==0){ + if (list.size() == 0) { return objectPage; } @@ -71,17 +73,18 @@ public class OcrTaskchildDubiousFileServiceImpl extends ServiceImpl taskChildPictures = ocrTaskchildPictureService.getDubiousfileList(new ArrayList<>(pictureIdList), userNodeType); - if(CollUtil.isNotEmpty(taskChildPictures)){ + if (CollUtil.isNotEmpty(taskChildPictures)) { //按时间字段排序 - if("desc".equals(orderbyname)){ + if ("desc".equals(orderbyname)) { taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getSubmitDateTimestamp).reversed()); - }else{ + } else { taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getSubmitDateTimestamp)); } - List records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - objectPage.setRecords(records); - objectPage.setTotal(taskChildPictures.size()); + List records = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); + objectPage.setRecords(records); + objectPage.setTotal(taskChildPictures.size()); + } return objectPage; } } From b8da26f48e1a6faf4372ff6d1039ff3b9d9cf65b Mon Sep 17 00:00:00 2001 From: DELL Date: Mon, 1 Apr 2024 22:52:12 +0800 Subject: [PATCH 62/92] =?UTF-8?q?fix:ai=E5=AE=A1=E6=89=B9=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E4=BF=AE=E6=94=B9=E9=98=88=E5=80=BC=E6=96=B9=E4=BE=BF?= =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index d3eb782c..9dea195e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -188,7 +188,8 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl Date: Mon, 1 Apr 2024 23:06:11 +0800 Subject: [PATCH 63/92] =?UTF-8?q?fix:=E6=B5=8B=E8=AF=95=E7=BB=93=E6=9D=9F?= =?UTF-8?q?=EF=BC=8C=E6=81=A2=E5=A4=8Dai=E5=AE=A1=E6=89=B9=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E5=BC=B9=E7=AA=97=E5=8E=9F=E6=9C=89=E9=98=88=E5=80=BC?= =?UTF-8?q?=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 9dea195e..8e13da8b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -188,8 +188,8 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl Date: Tue, 2 Apr 2024 09:14:07 +0800 Subject: [PATCH 64/92] =?UTF-8?q?fix:=20=E7=9B=B8=E4=BC=BC=E5=BA=A6?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E7=BC=A9=E7=95=A5=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 6c9c4995..ee1399b7 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 @@ -641,7 +641,8 @@ ifnull(t3.STATSHIS, 1) historyStates, t1.submit_date_timestamp submitDateTimestamp, t1.photo_date_timestamp photoDateTimestamp, - t1.similarity_score similarityScore + t1.similarity_score similarityScore, + t1.server_thumbnail_url serverThumbnailUrl FROM ocr_picture t1 LEFT JOIN ocr_taskchild_picture t2 on t1.ID = t2.PICTUREID From 120e02786d241ca00ff160ebb18f54748c0e771c Mon Sep 17 00:00:00 2001 From: DELL Date: Tue, 2 Apr 2024 09:48:01 +0800 Subject: [PATCH 65/92] =?UTF-8?q?fix:ai=E7=BB=9F=E8=AE=A1=E5=BC=B9?= =?UTF-8?q?=E7=AA=97=EF=BC=8C=E5=B7=B2=E5=AE=A1=E6=89=B9=E6=95=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E9=80=9A=E8=BF=87+=E4=B8=8D=E9=80=9A?= =?UTF-8?q?=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 8e13da8b..88749d65 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -159,7 +159,7 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl counts = new HashMap<>(); counts.put("total", approvedCount + pendingApprovalCount + notGoCount); counts.put("treat", pendingApprovalCount); - counts.put("approvedCount", approvedCount); + counts.put("approvedCount", approvedCount+notGoCount); resultVo.setCode("OK"); resultVo.setMessage("成功"); resultVo.setData(counts); From 7e04e5c23d3b8c7d7c902dd8669ad844b1c8bf08 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Tue, 2 Apr 2024 10:15:09 +0800 Subject: [PATCH 66/92] =?UTF-8?q?fix:=20=E6=A1=86=E6=9E=B6=E5=AE=9A?= =?UTF-8?q?=E5=88=B6=E6=9F=A5=E8=AF=A2=E5=B0=81=E8=A3=85bug=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=8CsearchQuery?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/util/requestFormat/SearchQuery.java | 23 +++++++++++++++---- .../util/requestFormat/SearchQueryForm.java | 8 +++---- 2 files changed, 23 insertions(+), 8 deletions(-) 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 6d7fb60b..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 @@ -154,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 字段名称 @@ -177,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属性获取 From 10321f99de7df5ac74145a166781653f5bfd3ae4 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Tue, 2 Apr 2024 11:15:26 +0800 Subject: [PATCH 67/92] =?UTF-8?q?fix:=20=E6=96=B0=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=9F=9F=E5=90=8D=E5=8F=8A=E8=AF=B7=E6=B1=82=E5=88=87=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java | 3 ++- .../cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java | 4 ++-- runstart/src/main/resources/application-dev.yml | 2 +- runstart/src/main/resources/application-pro.yml | 4 ++-- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java index b9b5ab43..ffb9ef4e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java @@ -85,7 +85,8 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { //组装请求参数 String url = apiConfig.getInterfaceDomain()+pictureSourceUrl; - String requestBodyJson = JSONObject.toJSONString(requestData); +// 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); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java index 9a9a0f4d..8ed82d0d 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/thread/tasks/PictureDisposeTask.java @@ -192,8 +192,8 @@ public class PictureDisposeTask implements Runnable{ picture.setField11(pictureSourceResult.getVisitDate()); //提报日期时间戳 -// picture.setSubmitDateTimestamp(pictureSourceResult.getSubmitTime()); - picture.setSubmitDateTimestamp(System.currentTimeMillis()); + picture.setSubmitDateTimestamp(pictureSourceResult.getSubmitTime()); +// picture.setSubmitDateTimestamp(System.currentTimeMillis()); picture.setPhotoDateTimestamp(System.currentTimeMillis()); System.out.println("SubmitDateTimestamp1=================>>>>>>>"+pictureSourceResult.getSubmitTime()); 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/ From 1aa84b6ad8a7f4334dfdba7df28f9737093bcccf Mon Sep 17 00:00:00 2001 From: DELL Date: Tue, 2 Apr 2024 11:26:47 +0800 Subject: [PATCH 68/92] =?UTF-8?q?fix:=E5=85=A8=E6=96=87=E6=A3=80=E7=B4=A2-?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E6=90=9C=E7=B4=A2=E9=83=A8=E5=88=86=E5=AF=B9?= =?UTF-8?q?=E5=B7=B2=E5=88=A0=E9=99=A4=E6=95=B0=E6=8D=AE=E5=8A=A0=E5=88=A4?= =?UTF-8?q?=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/oa/OcrSearchHistoryMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 5a91ecc4..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 id,name FROM ocr_task_package WHERE create_by=#{userid} AND name like "%"#{search}"%" AND tenant_id = #{tenantId} + SELECT id,name FROM ocr_task_package WHERE create_by=#{userid} AND name like "%"#{search}"%" AND tenant_id = #{tenantId} AND is_delete = 0 - SELECT t2.*,t3.*,ifnull(t5.STATSHIS, 1) historyStates,T4.STATES + SELECT t2.*,t3.*,ifnull(t5.STATSHIS, 1) historyStates,t4.STATES,t4.TASKID FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID left join ocr_picture_info t3 on t2.ID=t3.picture_id @@ -234,7 +235,7 @@ and t1.picture_id = #{pictureId} - ORDER BY t1.max_similarity desc,t1.similarity_group_order asc, t2.create_time DESC + ORDER BY t1.max_similarity desc,t1.similarity_group_order asc, t2.submit_date_timestamp DESC LIMIT 1 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 ee1399b7..d8e77a62 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 @@ -766,7 +766,7 @@ order by t1.max_similarity ${oderType},t1.similarity_group_order asc,t2.submit_date_timestamp ${oderType} - order by t2.create_time ${oderType} + order by t2.submit_date_timestamp ${oderType} From 229e1640461d23fcc70654c038adbb33018f978d Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Tue, 2 Apr 2024 19:53:52 +0800 Subject: [PATCH 86/92] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E7=BB=88?= =?UTF-8?q?=E5=AE=A1=E5=88=97=E8=A1=A8=E8=BF=94=E5=9B=9E=E5=8F=8A=E6=90=9C?= =?UTF-8?q?=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/jyjz/flowable/controller/FlowTaskController.java | 4 ++++ .../src/main/resources/mapper/oa/FlowableccMapper.xml | 2 +- .../main/resources/mapper/oa/OcrTaskchildPictureMapper.xml | 4 +++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index f9502c2f..b523fdf5 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -375,6 +375,7 @@ public class FlowTaskController extends BaseController { @ResponseBody public ResultVo listFinalData(PageUtils 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, @@ -392,6 +393,9 @@ public class FlowTaskController extends BaseController { searchQuery.addEqual("fromuserid", izupuser); } } + if(StringUtils.isNotBlank(taskName)){ + searchQuery.addLike("fromtaskname",taskName); + } if (org.springframework.util.StringUtils.hasText(izproject)) { if (izproject.contains(",")) { String[] projectIds = izproject.split(","); // 以逗号拆分字符串 diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml index 2b03280b..7822a540 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/FlowableccMapper.xml @@ -224,7 +224,7 @@ - SELECT t2.*,t3.*,ifnull(t5.STATSHIS, 1) historyStates,t4.STATES,t4.TASKID + SELECT t2.*,t3.*,ifnull(t5.STATSHIS, 1) historyStates,t4.STATES,t4.TASKID,t4.ID taskchildId FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID left join ocr_picture_info t3 on t2.ID=t3.picture_id From 1680322a645ce4091001aa48a8cc42ef0a138bb6 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Tue, 2 Apr 2024 21:12:28 +0800 Subject: [PATCH 88/92] =?UTF-8?q?fix:=20=E7=BB=88=E5=AE=A1=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=B7=BB=E5=8A=A0=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/oa/OcrTaskchildPictureMapper.xml | 80 ++++++++++--------- 1 file changed, 43 insertions(+), 37 deletions(-) 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 7f4870f4..db685b07 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 @@ -185,6 +185,7 @@ + and OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend} @@ -307,6 +308,7 @@ + and tcp.OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend} @@ -499,7 +501,6 @@ left join ocr_picture pic on tcp.PICTUREID = pic.ID - and pic.suspiciousfile = 0 @@ -510,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} @@ -774,42 +780,42 @@