From 240fd8b644aa3ba4c4d41b82a7f74589155e061b Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Mon, 18 Mar 2024 21:40:17 +0800 Subject: [PATCH 1/9] =?UTF-8?q?feat:=20=E8=A7=A3=E5=86=B3=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E5=88=97=E6=96=B0=E5=A2=9E=E5=A4=B1=E8=B4=A5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xiaoyao/ocr/service/impl/OcrUserFieldServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUserFieldServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUserFieldServiceImpl.java index c2d40f67..e7ff0623 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUserFieldServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUserFieldServiceImpl.java @@ -39,7 +39,11 @@ public class OcrUserFieldServiceImpl extends BaseServiceImpl ocrFieldLambdaQueryWrapper = new LambdaQueryWrapper<>(); ocrFieldLambdaQueryWrapper.eq(OcrField::getIsrequired,2); ocrFieldLambdaQueryWrapper.eq(OcrField::getReviewType,ocrUserField.getReviewType()); From cbc6e136720f0f6f9f606deb199acfe9af2efa6a Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 18 Mar 2024 22:33:35 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE=E9=87=8D=E5=A4=8D=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/oa/OcrTaskchildPictureMapper.xml | 45 ++++++++++--------- 1 file changed, 25 insertions(+), 20 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 8080fc49..84896666 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 @@ -215,27 +215,32 @@ + + + order by tcp.${page.sortname} ${page.sortorder} + + limit ${page.start}, ${page.Pagesize} + + + select count(tcp.ID) from ( + select + tc.* + from ocr_taskchild_picture tc + where tc.ASSIGNEE = #{searchassignee} and tc.TENANTID=#{searchtenantid} + and tc.STATES=2 + UNION + select + tc.* + from ocr_taskchild_picture tc,OA_USERAPPROVE_T uf + where tc.ID = uf.FORMID and tc.TENANTID=#{searchtenantid} + + and uf.USERID = #{thisLoginUserid} + + ) as tcp + + + From 94b2cbec6728051cca79d6a20f0ff4565f15f925 Mon Sep 17 00:00:00 2001 From: lijingtao <18301674552@163.COM> Date: Mon, 18 Mar 2024 23:14:10 +0800 Subject: [PATCH 6/9] =?UTF-8?q?ai=E5=AE=A1=E6=89=B9=E5=B7=A5=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/controller/OcrAiApprovalTools.java | 8 +++++ .../ocr/dataDao/OcrSearchHistoryMapper.java | 4 +++ .../ocr/service/IOcrSearchHistoryService.java | 2 ++ .../impl/OcrSearchHistoryServiceImpl.java | 32 ++++++++++++++++--- .../mapper/oa/OcrSearchHistoryMapper.xml | 15 +++++++++ 5 files changed, 57 insertions(+), 4 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 5b97f5ba..932b91b0 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 @@ -44,4 +44,12 @@ public class OcrAiApprovalTools { return ResultVoUtil.success(toolscount); } + @RequestMapping(value = "/aiApprovaltools", method = RequestMethod.GET) + public ResultVo aiApprovaltools(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid) { + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + + Map selectaisp = iocrsearchhistoryservice.selectaisp(userToken.getUserid(), taskid); + 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 3846a8a6..613e90c6 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 @@ -29,4 +29,8 @@ public interface OcrSearchHistoryMapper extends BaseMapper { Map toolscount(@Param("userid")String userid); + + Map selectaisp(@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 1a82f893..6de2a28c 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 @@ -20,4 +20,6 @@ public interface IOcrSearchHistoryService extends IService { List>> selectsearch(String search,String assignee); Map toolscount(String userid); + + Map selectaisp(String userid,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 24f94f81..786ec169 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.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrSearchHistory; import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -7,10 +8,7 @@ import org.springframework.stereotype.Service; import cn.jyjz.xiaoyao.ocr.dataDao.OcrSearchHistoryMapper; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.Map; +import java.util.*; /** *

@@ -46,4 +44,30 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl toolscount(String userid) { return ocrsearchhistorymapper.toolscount(userid); } + + @Override + public Map selectaisp(String userid,String id) { + Map selectaisp = ocrsearchhistorymapper.selectaisp(id); + 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.00")){ + i++; + } + } + + Map map=new HashMap<>(); + 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; + } } 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 04d3cede..ccf1f1b0 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 @@ -83,4 +83,19 @@ (SELECT COUNT(*) FROM ocr_taskchild_picture WHERE USERID = ""#{userid}"" AND STATES = '3') as approved + + + + From 4c0df12a7350d650d3063ec7036e38b71e7060ab Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 18 Mar 2024 23:40:43 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E6=9C=80=E5=A4=A7=E7=9B=B8=E4=BC=BC=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/controller/OcrPictureController.java | 12 +- .../xiaoyao/ocr/dataobject/OcrPicture.java | 5 + .../ocr/dataobject/OcrTaskchildPicture.java | 552 +++++++++--------- .../service/impl/OcrPictureServiceImpl.java | 37 +- .../mapper/oa/OcrTaskchildPictureMapper.xml | 2 +- 5 files changed, 317 insertions(+), 291 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 bd2e2bb1..07606591 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 @@ -214,8 +214,16 @@ public class OcrPictureController extends BaseController { QueryWrapper queryWrapper = new QueryWrapper<>(); String search_month = req.getParameter("search_month"); - if(StringUtils.isNotBlank(search_month) && Integer.parseInt(search_month) <= 12 && Integer.parseInt(search_month) > 0){ - queryWrapper.ge("create_time",DataUtil.afterDateByMonth(Integer.parseInt(search_month))); + String ordertype = req.getParameter("ordertype"); + if (StringUtils.isNotBlank(ordertype)) { + if (ordertype.equals("0")) { + queryWrapper.orderByAsc("similarity_score"); + } else { + queryWrapper.orderByDesc("similarity_score"); + } + } + if (StringUtils.isNotBlank(search_month) && Integer.parseInt(search_month) <= 12 && Integer.parseInt(search_month) > 0) { + queryWrapper.ge("create_time", DataUtil.afterDateByMonth(Integer.parseInt(search_month))); } //根据参数枚举,获取检索参数,并映射为数据库的字段的key-v map diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java index dd56dc19..f0b2534c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java @@ -306,6 +306,11 @@ public class OcrPicture implements BaseDto, java.io.Serializable { @TableField(value = "img_hash") private String imgHash; + @ApiModelProperty(value = "相似度数值") + @Schema(description = "相似度数值") + @TableField(value = "similarity_score") + private Integer similarityscore; + @ApiModelProperty(value = "图片查重的比对图片集合") @TableField(exist = false) private List listCom; diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java index e610a2fb..14636730 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java @@ -31,283 +31,287 @@ import java.util.stream.Stream; import java.util.stream.Collectors; - @Data @Builder @NoArgsConstructor @AllArgsConstructor -@ApiModel(value="任务信息", description="任务信息") +@ApiModel(value = "任务信息", description = "任务信息") @TableName(value = "ocr_taskchild_picture") -public class OcrTaskchildPicture implements BaseDto,java.io.Serializable { - - private static final long serialVersionUID = -8018660053527763810L; - @ApiModelProperty(value = "主键") - @TableId(value = "id",type = IdType.ASSIGN_ID) - @JsonSerialize(using = ToStringSerializer.class) - @TableField(value="ID") - private Long id; - - @ApiModelProperty(value = "比对图片主键,多个数据使用英文逗号分隔") - @TableField(value="OCPICTUREID") - private String ocpictureid; - - @ApiModelProperty(value = "图片比对结果,与图片主键一一对应,记录比对结果,使用英文逗号分隔,例如99.6,98.1,97.2") - @TableField(value="PICTURERESULT") - private String pictureresult; - - @ApiModelProperty(value = "只记录主图,如果存在历史图片,不在这里记录") - @TableField(value="PICTURECOMPARE") - private String picturecompare; - - @ApiModelProperty(value = "所属部门") - @TableField(value="DEPTID") - private String deptid; - - @ApiModelProperty(value = "租户ID") - @TableField(value="TENANTID") - private Long tenantid; - - @ApiModelProperty(value = "任务包主键") - @TableField(value="PACKAGEID") - private Long packageid; - - @ApiModelProperty(value = "原图片主键") - @TableField(value="PICTUREID") - private Long pictureid; - - @ApiModelProperty(value = "类型名称") - @TableField(value="CATEGORY") - private String category; - - @ApiModelProperty(value = "项目ID") - @TableField(value="CATEGORYID") - private Long categoryid; - - @ApiModelProperty(value = "明细单") - @TableField(value="SPECIFICATION") - private String specification; - - @ApiModelProperty(value = "业务编码") - @TableField(value="BUESSINESSNO") - private String buessinessno; - - @ApiModelProperty(value = "状态,审批状态 1:未提交 2:审批中 3:审批通过 ,5:拒绝") - @TableField(value="STATES") - private Integer states; - - @ApiModelProperty(value = "流程实例IdprocessInstanceId") - @TableField(value="PROCESSINSTANCEID") - private String processinstanceid; - - @ApiModelProperty(value = "流程定义id") - @TableField(value="PROCESSDEFINITIONID") - private String processdefinitionid; - - @ApiModelProperty(value = "流程部署id") - @TableField(value="DEPLOYMENTID") - private String deploymentid; - - @ApiModelProperty(value = "审批人姓名") - @TableField(value="ASSIGNEENAME") - private String assigneename; - - @ApiModelProperty(value = "审批人") - @TableField(value="ASSIGNEE") - private String assignee; - - @ApiModelProperty(value = "修改人,记录创建人的帐号") - @TableField(value="UPDATEUSER") - private String updateuser; - - @ApiModelProperty(value = "更新时间") - @TableField(value="UPDATETIME") - private Long updatetime; - - @ApiModelProperty(value = "附件") - @TableField(value="FILEANNEX") - private String fileannex; - - @ApiModelProperty(value = "是否归档,0:未归档,1:归档") - @TableField(value="GUIDANG") - private Integer guidang; - - @ApiModelProperty(value = "创建人") - @TableField(value="CREATEUSER") - private String createuser; - - @ApiModelProperty(value = "创建人姓名") - @TableField(value="CREATEUSERNAME") - private String createusername; - - @ApiModelProperty(value = "创建时间") - @TableField(value="CREATEDATE") - private Long createdate; - - @ApiModelProperty(value = "员工主键") - @TableField(value="USERID") - private Long userid; - - @ApiModelProperty(value = "员工姓名") - @TableField(value="USERNAME") - private String username; - - @ApiModelProperty(value = "任务id,来源于图片表") - @TableField(value="FROMTASKID") - private String fromtaskid; - - @ApiModelProperty(value = "任务名称,来源于图片表") - @TableField(value="FROMTASKNAME") - private String fromtaskname; - - @ApiModelProperty(value = "提报人") - @TableField(value="FROMUSERID") - private String fromuserid; - - @ApiModelProperty(value = "所属项目") - @TableField(value="FROMPROJECTID") - private String fromprojectid; - - @ApiModelProperty(value = "所属计划") - @TableField(value="FROMPLANID") - private String fromplanid; - - @ApiModelProperty(value = "提报时间") - @TableField(value="FROMUPTIME") - private Long fromuptime; - - @ApiModelProperty(value = "任务来源") - @TableField(value="FROMSOURCEID") - private String fromsourceid; - - @ApiModelProperty(value = "是否为相似图片,与其他图片对比为百分百的,记录为1,0:不相似,1:相似") - @TableField(value="HAVEPOINTS") - private Integer havepoints; - - @Schema(description = "当前节点名称") - @TableField(value="TASKNAME") - private String taskname; - - @ApiModelProperty(value = "项目对象") - @TableField(exist = false) - private Category categoryDto; - - @ApiModelProperty(value = "节点主键") - @TableField(exist = false) - private String taskId; - - //节点描述 - @ApiModelProperty(value = "节点描述") - @TableField(exist = false) - private String documentation; - - // 关联 任务的流程记录 - @ApiModelProperty(value = "审批记录") - @TableField(exist = false) - private List transferRecords; - - @ApiModelProperty(value = "是否为历史图片,true:是历史图片,false:非历史图片") - @TableField(exist = false) - private boolean izHistory; - - @ApiModelProperty(value ="图片真假 0:假,1:真,其他表示没有设置") - @TableField(exist = false) - private Integer iztrueorfalse; - - @ApiModelProperty(value ="是否已经审批,0:未审批,1:审批中,2:已审批") - @TableField(exist = false) - private String workStatus; - - @ApiModelProperty(value ="图片对象") - @TableField(exist = false) - private OcrPicture ocrPicture; - - @ApiModelProperty(value ="提报时间") - @TableField(exist = false) - private String reporttime; - - @ApiModelProperty(value ="本人审查日志") - @TableField(exist = false) - private Userapprove userapprove; - - @ApiModelProperty(value ="审查日志") - @TableField(exist = false) - private List userapproveList; - - //保存当前登录用户的数据权限范围的搜索条件 - @TableField(exist = false) - @JsonIgnore - private SearchQuery searchQueryrolesShowleave; - - public FlowModelVO getFlowModelVO(){ - FlowModelVO flowModelVO = new FlowModelVO(); - flowModelVO.setFormid(this.getId()); - flowModelVO.setAssignee(this.getAssignee()); - flowModelVO.setAssigneename(this.getAssigneename()); - flowModelVO.setProcessdefinitionid(this.getProcessdefinitionid()); - flowModelVO.setUserid(this.getUserid()); - flowModelVO.setUsername(this.getUsername()); - flowModelVO.setCategoryid(this.getCategoryid()); - flowModelVO.setStates(this.getStates()); - flowModelVO.setDeploymentid(this.getDeploymentid()); - flowModelVO.setCreateuser(this.getCreateuser()); - flowModelVO.setCreatedate(this.getCreatedate()); - flowModelVO.setProcessInstanceId(this.getProcessdefinitionid()); - flowModelVO.setGuidang(this.getGuidang()); - flowModelVO.setFileannex(this.getFileannex()); - flowModelVO.setCreateusername(this.getCreateusername()); - flowModelVO.setProcessInstanceId(this.getProcessinstanceid()); - flowModelVO.setTenantid(this.getTenantid()); - flowModelVO.setTaskId(this.getTaskId()); - return flowModelVO; - } - - @TableField(exist = false) - @JsonIgnore - private final Map query = Stream.of( - new SimpleEntry<>("ID","id"), - new SimpleEntry<>("OCPICTUREID","ocpictureid"), - new SimpleEntry<>("PICTURERESULT","pictureresult"), - new SimpleEntry<>("PICTURECOMPARE","picturecompare"), - new SimpleEntry<>("DEPTID","deptid"), - new SimpleEntry<>("TENANTID","tenantid"), - new SimpleEntry<>("PACKAGEID","packageid"), - new SimpleEntry<>("PICTUREID","pictureid"), - new SimpleEntry<>("CATEGORY","category"), - new SimpleEntry<>("CATEGORYID","categoryid"), - new SimpleEntry<>("SPECIFICATION","specification"), - new SimpleEntry<>("BUESSINESSNO","buessinessno"), - new SimpleEntry<>("STATES","states"), - new SimpleEntry<>("PROCESSINSTANCEID","processinstanceid"), - new SimpleEntry<>("PROCESSDEFINITIONID","processdefinitionid"), - new SimpleEntry<>("DEPLOYMENTID","deploymentid"), - new SimpleEntry<>("ASSIGNEENAME","assigneename"), - new SimpleEntry<>("ASSIGNEE","assignee"), - new SimpleEntry<>("UPDATEUSER","updateuser"), - new SimpleEntry<>("UPDATETIME","updatetime"), - new SimpleEntry<>("FILEANNEX","fileannex"), - new SimpleEntry<>("GUIDANG","guidang"), - new SimpleEntry<>("CREATEUSER","createuser"), - new SimpleEntry<>("CREATEUSERNAME","createusername"), - new SimpleEntry<>("CREATEDATE","createdate"), - new SimpleEntry<>("USERID","userid"), - new SimpleEntry<>("USERNAME","username"), - new SimpleEntry<>("FROMTASKID","fromtaskid"), - new SimpleEntry<>("FROMTASKNAME","fromtaskname"), - new SimpleEntry<>("FROMUSERID","fromuserid"), - new SimpleEntry<>("FROMPROJECTID","fromprojectid"), - new SimpleEntry<>("FROMPLANID","fromplanid"), - new SimpleEntry<>("FROMUPTIME","fromuptime"), - new SimpleEntry<>("FROMSOURCEID","fromsourceid"), - new SimpleEntry<>("HAVEPOINTS","havepoints"), - new SimpleEntry<>("TASKNAME","taskname") - ) - .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); - @Override - public String getQueryFiled(String filedname){ - String obj = null; - if(null != query && query.size() > 0){ - obj = query.get(filedname); - } - return obj; - } +public class OcrTaskchildPicture implements BaseDto, java.io.Serializable { + + private static final long serialVersionUID = -8018660053527763810L; + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) + @TableField(value = "ID") + private Long id; + + @ApiModelProperty(value = "比对图片主键,多个数据使用英文逗号分隔") + @TableField(value = "OCPICTUREID") + private String ocpictureid; + + @ApiModelProperty(value = "图片比对结果,与图片主键一一对应,记录比对结果,使用英文逗号分隔,例如99.6,98.1,97.2") + @TableField(value = "PICTURERESULT") + private String pictureresult; + + @ApiModelProperty(value = "只记录主图,如果存在历史图片,不在这里记录") + @TableField(value = "PICTURECOMPARE") + private String picturecompare; + + @ApiModelProperty(value = "所属部门") + @TableField(value = "DEPTID") + private String deptid; + + @ApiModelProperty(value = "租户ID") + @TableField(value = "TENANTID") + private Long tenantid; + + @ApiModelProperty(value = "任务包主键") + @TableField(value = "PACKAGEID") + private Long packageid; + + @ApiModelProperty(value = "原图片主键") + @TableField(value = "PICTUREID") + private Long pictureid; + + @ApiModelProperty(value = "类型名称") + @TableField(value = "CATEGORY") + private String category; + + @ApiModelProperty(value = "项目ID") + @TableField(value = "CATEGORYID") + private Long categoryid; + + @ApiModelProperty(value = "明细单") + @TableField(value = "SPECIFICATION") + private String specification; + + @ApiModelProperty(value = "业务编码") + @TableField(value = "BUESSINESSNO") + private String buessinessno; + + @ApiModelProperty(value = "状态,审批状态 1:未提交 2:审批中 3:审批通过 ,5:拒绝") + @TableField(value = "STATES") + private Integer states; + + @ApiModelProperty(value = "流程实例IdprocessInstanceId") + @TableField(value = "PROCESSINSTANCEID") + private String processinstanceid; + + @ApiModelProperty(value = "流程定义id") + @TableField(value = "PROCESSDEFINITIONID") + private String processdefinitionid; + + @ApiModelProperty(value = "流程部署id") + @TableField(value = "DEPLOYMENTID") + private String deploymentid; + + @ApiModelProperty(value = "审批人姓名") + @TableField(value = "ASSIGNEENAME") + private String assigneename; + + @ApiModelProperty(value = "审批人") + @TableField(value = "ASSIGNEE") + private String assignee; + + @ApiModelProperty(value = "修改人,记录创建人的帐号") + @TableField(value = "UPDATEUSER") + private String updateuser; + + @ApiModelProperty(value = "更新时间") + @TableField(value = "UPDATETIME") + private Long updatetime; + + @ApiModelProperty(value = "附件") + @TableField(value = "FILEANNEX") + private String fileannex; + + @ApiModelProperty(value = "是否归档,0:未归档,1:归档") + @TableField(value = "GUIDANG") + private Integer guidang; + + @ApiModelProperty(value = "创建人") + @TableField(value = "CREATEUSER") + private String createuser; + + @ApiModelProperty(value = "创建人姓名") + @TableField(value = "CREATEUSERNAME") + private String createusername; + + @ApiModelProperty(value = "创建时间") + @TableField(value = "CREATEDATE") + private Long createdate; + + @ApiModelProperty(value = "员工主键") + @TableField(value = "USERID") + private Long userid; + + @ApiModelProperty(value = "员工姓名") + @TableField(value = "USERNAME") + private String username; + + @ApiModelProperty(value = "任务id,来源于图片表") + @TableField(value = "FROMTASKID") + private String fromtaskid; + + @ApiModelProperty(value = "任务名称,来源于图片表") + @TableField(value = "FROMTASKNAME") + private String fromtaskname; + + @ApiModelProperty(value = "提报人") + @TableField(value = "FROMUSERID") + private String fromuserid; + + @ApiModelProperty(value = "所属项目") + @TableField(value = "FROMPROJECTID") + private String fromprojectid; + + @ApiModelProperty(value = "所属计划") + @TableField(value = "FROMPLANID") + private String fromplanid; + + @ApiModelProperty(value = "提报时间") + @TableField(value = "FROMUPTIME") + private Long fromuptime; + + @ApiModelProperty(value = "任务来源") + @TableField(value = "FROMSOURCEID") + private String fromsourceid; + + @ApiModelProperty(value = "是否为相似图片,与其他图片对比为百分百的,记录为1,0:不相似,1:相似") + @TableField(value = "HAVEPOINTS") + private Integer havepoints; + + @Schema(description = "当前节点名称") + @TableField(value = "TASKNAME") + private String taskname; + + @ApiModelProperty(value = "项目对象") + @TableField(exist = false) + private Category categoryDto; + + @ApiModelProperty(value = "节点主键") + @TableField(exist = false) + private String taskId; + + //节点描述 + @ApiModelProperty(value = "节点描述") + @TableField(exist = false) + private String documentation; + + // 关联 任务的流程记录 + @ApiModelProperty(value = "审批记录") + @TableField(exist = false) + private List transferRecords; + + @ApiModelProperty(value = "是否为历史图片,true:是历史图片,false:非历史图片") + @TableField(exist = false) + private boolean izHistory; + + @ApiModelProperty(value = "图片真假 0:假,1:真,其他表示没有设置") + @TableField(exist = false) + private Integer iztrueorfalse; + + @ApiModelProperty(value = "是否已经审批,0:未审批,1:审批中,2:已审批") + @TableField(exist = false) + private String workStatus; + + @ApiModelProperty(value = "图片对象") + @TableField(exist = false) + private OcrPicture ocrPicture; + + @ApiModelProperty(value = "提报时间") + @TableField(exist = false) + private String reporttime; + + @ApiModelProperty(value = "相似度数值") + @TableField(exist = false) + private Integer similarityscore; + + @ApiModelProperty(value = "本人审查日志") + @TableField(exist = false) + private Userapprove userapprove; + + @ApiModelProperty(value = "审查日志") + @TableField(exist = false) + private List userapproveList; + + //保存当前登录用户的数据权限范围的搜索条件 + @TableField(exist = false) + @JsonIgnore + private SearchQuery searchQueryrolesShowleave; + + public FlowModelVO getFlowModelVO() { + FlowModelVO flowModelVO = new FlowModelVO(); + flowModelVO.setFormid(this.getId()); + flowModelVO.setAssignee(this.getAssignee()); + flowModelVO.setAssigneename(this.getAssigneename()); + flowModelVO.setProcessdefinitionid(this.getProcessdefinitionid()); + flowModelVO.setUserid(this.getUserid()); + flowModelVO.setUsername(this.getUsername()); + flowModelVO.setCategoryid(this.getCategoryid()); + flowModelVO.setStates(this.getStates()); + flowModelVO.setDeploymentid(this.getDeploymentid()); + flowModelVO.setCreateuser(this.getCreateuser()); + flowModelVO.setCreatedate(this.getCreatedate()); + flowModelVO.setProcessInstanceId(this.getProcessdefinitionid()); + flowModelVO.setGuidang(this.getGuidang()); + flowModelVO.setFileannex(this.getFileannex()); + flowModelVO.setCreateusername(this.getCreateusername()); + flowModelVO.setProcessInstanceId(this.getProcessinstanceid()); + flowModelVO.setTenantid(this.getTenantid()); + flowModelVO.setTaskId(this.getTaskId()); + return flowModelVO; + } + + @TableField(exist = false) + @JsonIgnore + private final Map query = Stream.of( + new SimpleEntry<>("ID", "id"), + new SimpleEntry<>("OCPICTUREID", "ocpictureid"), + new SimpleEntry<>("PICTURERESULT", "pictureresult"), + new SimpleEntry<>("PICTURECOMPARE", "picturecompare"), + new SimpleEntry<>("DEPTID", "deptid"), + new SimpleEntry<>("TENANTID", "tenantid"), + new SimpleEntry<>("PACKAGEID", "packageid"), + new SimpleEntry<>("PICTUREID", "pictureid"), + new SimpleEntry<>("CATEGORY", "category"), + new SimpleEntry<>("CATEGORYID", "categoryid"), + new SimpleEntry<>("SPECIFICATION", "specification"), + new SimpleEntry<>("BUESSINESSNO", "buessinessno"), + new SimpleEntry<>("STATES", "states"), + new SimpleEntry<>("PROCESSINSTANCEID", "processinstanceid"), + new SimpleEntry<>("PROCESSDEFINITIONID", "processdefinitionid"), + new SimpleEntry<>("DEPLOYMENTID", "deploymentid"), + new SimpleEntry<>("ASSIGNEENAME", "assigneename"), + new SimpleEntry<>("ASSIGNEE", "assignee"), + new SimpleEntry<>("UPDATEUSER", "updateuser"), + new SimpleEntry<>("UPDATETIME", "updatetime"), + new SimpleEntry<>("FILEANNEX", "fileannex"), + new SimpleEntry<>("GUIDANG", "guidang"), + new SimpleEntry<>("CREATEUSER", "createuser"), + new SimpleEntry<>("CREATEUSERNAME", "createusername"), + new SimpleEntry<>("CREATEDATE", "createdate"), + new SimpleEntry<>("USERID", "userid"), + new SimpleEntry<>("USERNAME", "username"), + new SimpleEntry<>("FROMTASKID", "fromtaskid"), + new SimpleEntry<>("FROMTASKNAME", "fromtaskname"), + new SimpleEntry<>("FROMUSERID", "fromuserid"), + new SimpleEntry<>("FROMPROJECTID", "fromprojectid"), + new SimpleEntry<>("FROMPLANID", "fromplanid"), + new SimpleEntry<>("FROMUPTIME", "fromuptime"), + new SimpleEntry<>("FROMSOURCEID", "fromsourceid"), + new SimpleEntry<>("HAVEPOINTS", "havepoints"), + new SimpleEntry<>("TASKNAME", "taskname") + ) + .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); + + @Override + public String getQueryFiled(String filedname) { + String obj = null; + if (null != query && query.size() > 0) { + obj = query.get(filedname); + } + return obj; + } } 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 9cb210d6..e3058f05 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 @@ -82,6 +82,7 @@ public class OcrPictureServiceImpl extends BaseServiceImpl map = this.getOcrPictureClassifyAndHash(ocrPicture.getLocalpictrueurl()); - if(map!=null){ + if (StringUtils.isBlank(ocrPicture.getImgHash())) { + Map map = this.getOcrPictureClassifyAndHash(ocrPicture.getLocalpictrueurl()); + if (map != null) { ocrPicture.setImgHash(map.get("hash")); ocrPicture.setClassificationid(map.get("classId")); } this.updateById(ocrPicture); } - if(StringUtils.isBlank(ocrPictureNext.getImgHash())){ - Map map = this.getOcrPictureClassifyAndHash(ocrPictureNext.getLocalpictrueurl()); - if(map!=null){ + if (StringUtils.isBlank(ocrPictureNext.getImgHash())) { + Map map = this.getOcrPictureClassifyAndHash(ocrPictureNext.getLocalpictrueurl()); + if (map != null) { ocrPictureNext.setImgHash(map.get("hash")); ocrPictureNext.setClassificationid(map.get("classId")); } this.updateById(ocrPictureNext); } - String img=StringUtils.isBlank(ocrPicture.getImgHash())?StringUtils.isBlank(ocrPicture.getLocalpictrueurl()) ? ocrPicture.getImgurl() : ocrPicture.getLocalpictrueurl():ocrPicture.getImgHash(); - String imgNext=StringUtils.isBlank(ocrPictureNext.getImgHash())?StringUtils.isBlank(ocrPictureNext.getLocalpictrueurl()) ? ocrPictureNext.getImgurl() : ocrPictureNext.getLocalpictrueurl():ocrPictureNext.getImgHash(); + String img = StringUtils.isBlank(ocrPicture.getImgHash()) ? StringUtils.isBlank(ocrPicture.getLocalpictrueurl()) ? ocrPicture.getImgurl() : ocrPicture.getLocalpictrueurl() : ocrPicture.getImgHash(); + String imgNext = StringUtils.isBlank(ocrPictureNext.getImgHash()) ? StringUtils.isBlank(ocrPictureNext.getLocalpictrueurl()) ? ocrPictureNext.getImgurl() : ocrPictureNext.getLocalpictrueurl() : ocrPictureNext.getImgHash(); String resultValue = HashCompareUtil.cmpHash(img, imgNext); ocrPictureNext.setResult(resultValue); @@ -403,15 +404,15 @@ public class OcrPictureServiceImpl extends BaseServiceImpl getOcrPictureClassifyAndHash(String img) { - JSONObject jsonObjectSimi = ImageClassUtil.getClassify(img,"1",classifyPath); + JSONObject jsonObjectSimi = ImageClassUtil.getClassify(img, "1", classifyPath); //返回内容为零,表示成功,否则表示失败 - if (null != jsonObjectSimi && jsonObjectSimi.getString("code").equals("0") && jsonObjectSimi.get("data")!=null&&jsonObjectSimi.getJSONArray("data").size()>0) { + if (null != jsonObjectSimi && jsonObjectSimi.getString("code").equals("0") && jsonObjectSimi.get("data") != null && jsonObjectSimi.getJSONArray("data").size() > 0) { JSONObject data = jsonObjectSimi.getJSONArray("data").getJSONObject(0); - Map map=new HashMap(); - map.put("classId",data.getString("classId")); - map.put("hash",data.getString("hash")); + Map map = new HashMap(); + map.put("classId", data.getString("classId")); + map.put("hash", data.getString("hash")); return map; - }else{ + } else { return null; } } @@ -427,7 +428,13 @@ public class OcrPictureServiceImpl extends BaseServiceImpl max) { + max = intValue; + } if (null == pcid || pcid.toString().length() < 1) { pcid.append(comp.getId()); result.append(comp.getResult()); @@ -439,6 +446,8 @@ public class OcrPictureServiceImpl extends BaseServiceImpl