inspect-server/src/main/java/com/ruoyi/inspect/pojo/CommonOa.java
@@ -22,7 +22,7 @@ private Long id; /** * 节点id * OA系统审批人id */ private Long operateId; inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsUnqualifiedHandlerServiceImpl.java
@@ -191,6 +191,25 @@ return Result.success(); } /** * 返回第一个不为空的字符串 * @param values * @return */ public static String firstNotBlank(String... values) { if (values == null) { return null; } for (String value : values) { if (StringUtils.isNotBlank(value)) { return value; } } return null; } @Override @Transactional(rollbackFor = Exception.class) public void unqualifiedHandlerOACallback(Long oaWorkId, String checkResult, JSONObject response) { @@ -218,30 +237,31 @@ for (Object workflowRequestLog : workflowRequestLogs) { JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(workflowRequestLog)); CommonOa oa = new CommonOa(); oa.setApprover(jsonObject.getString("operatorName")); oa.setOperateId(jsonObject.getLong("operateId")); oa.setWorkflowId(oaWorkId); oa.setOperation(jsonObject.getString("operateType")); oa.setApprovalDate(jsonObject.getString("operateDate")); oa.setNodeName(jsonObject.getString("nodeName")); oa.setApprovalTime(jsonObject.getString("operateTime")); //设置各节点的处理意见 oa.setApprover(jsonObject.getString("operatorName"));//审批人 oa.setOperateId(jsonObject.getLong("operateId"));//审批人id oa.setWorkflowId(oaWorkId);//流程id oa.setApprovalDate(jsonObject.getString("operateDate"));//审批日期 oa.setNodeName(jsonObject.getString("nodeName"));//节点名称 oa.setApprovalTime(jsonObject.getString("operateTime"));//审批时间 if(StringUtils.isNotBlank(oa.getNodeName())){ String operateType = jsonObject.getString("operateType");//节点操作 String approvalOpinion = jsonObject.getString("remark");//处理意见描述 oa.setOperation(operateType); oa.setApprovalOpinion(approvalOpinion); if(oa.getNodeName().contains("质量")){ oa.setOperation(clcsMap.get(response.getString("clcs1"))); oa.setApprovalOpinion(response.getString("dbhgcpdclyqdealwiththenonconfo"));//1.对不合格产品的处理要求 oa.setOperation(firstNotBlank(clcsMap.get(response.getString("clcs1")),operateType)); oa.setApprovalOpinion(firstNotBlank(response.getString("dbhgcpdclyqdealwiththenonconfo"),approvalOpinion));//1.对不合格产品的处理要求 }else if(oa.getNodeName().contains("工艺")){ oa.setApprovalOpinion(response.getString("gjyqimprovementrequirements"));//2.改进要求 oa.setApprovalOpinion(firstNotBlank(response.getString("gjyqimprovementrequirements"),approvalOpinion));//2.改进要求 }else if(oa.getNodeName().contains("技术")){ oa.setOperation(clcsMap.get(response.getString("clcs2"))); oa.setApprovalOpinion(response.getString("csyqactionrequirement"));//3.措施要求 oa.setOperation(firstNotBlank(clcsMap.get(response.getString("clcs2")),operateType)); oa.setApprovalOpinion(firstNotBlank(response.getString("csyqactionrequirement"),approvalOpinion));//3.措施要求 }else if(oa.getNodeName().contains("总经理")){ oa.setOperation(clcsMap.get(response.getString("clcs3"))); oa.setApprovalOpinion(response.getString("zzclyqfinaltreatmentrequiremen"));//4.最终处理要求 oa.setOperation(firstNotBlank(clcsMap.get(response.getString("clcs3")),operateType)); oa.setApprovalOpinion(firstNotBlank(response.getString("zzclyqfinaltreatmentrequiremen"),approvalOpinion));//4.最终处理要求 }else if(oa.getNodeName().contains("核算")){ oa.setApprovalOpinion(response.getString("spyqcompensationrequirement"));//5.索赔要求 }else{ oa.setApprovalOpinion(jsonObject.getString("remark")); oa.setApprovalOpinion(firstNotBlank(response.getString("spyqcompensationrequirement"),approvalOpinion));//5.索赔要求 } } @@ -276,11 +296,6 @@ @Override @Transactional(rollbackFor = Exception.class) public boolean addUnqualifiedHandler(UnqualifiedHandlerDto unqualifiedHandlerDto) { long count = this.count(Wrappers.<InsUnqualifiedHandler>lambdaQuery() .in(InsUnqualifiedHandler::getInsOrderId, unqualifiedHandlerDto.getSelectOrderIds())); if (count > 0) { throw new ErrorException("存在已提交过不合格处理的订单"); } //生成分组id String groupId = insUnqualifiedHandlerNumberGenerator.generateNumberWithPrefix(6, "GROUP", InsUnqualifiedHandler::getGroupId); // 原材料编号切割 inspect-server/src/main/resources/mapper/DataAnalysisMapper.xml
@@ -85,8 +85,8 @@ SELECT DATE(io1.send_time) AS day, COUNT(*) AS total, SUM(CASE WHEN iiq.inspect_status = 1 or (iuh.id is null) THEN 1 ELSE 0 END) AS qualified, SUM(CASE WHEN iiq.inspect_status = 2 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unQualified SUM(CASE WHEN iiq.inspect_status = 1 and (iuh.id is null) THEN 1 ELSE 0 END) AS qualified, SUM(CASE WHEN iiq.inspect_status != 1 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unQualified FROM ifs_inventory_quantity iiq LEFT JOIN ins_order io1 ON io1.ifs_inventory_id = iiq.id @@ -95,18 +95,11 @@ AND io1.send_time BETWEEN #{dto.beginDate} AND #{dto.endDate} LEFT JOIN ( SELECT iuh.id, coa.operation, MAX(iuh.id) AS id, iuh.inventory_quantity_id FROM ins_unqualified_handler iuh LEFT JOIN ( SELECT *, ROW_NUMBER() OVER (PARTITION BY workflow_id ORDER BY approval_date DESC,approval_time DESC, id DESC) AS rn FROM common_oa ) AS coa ON iuh.request_id = coa.workflow_id AND coa.rn = 1 WHERE coa.operation !='退回' AND coa.operation is not null WHERE iuh.oa_state !=4 AND iuh.oa_state is not null GROUP BY iuh.inventory_quantity_id ) iuh ON iiq.id = iuh.inventory_quantity_id LEFT JOIN ( SELECT ins_order_id, MAX(sample) AS sample, MAX(model) AS model @@ -174,8 +167,8 @@ SELECT MONTH(io1.send_time) AS month, COUNT(*) AS total, SUM(CASE WHEN iiq.inspect_status = 1 or (iuh.id is null) THEN 1 ELSE 0 END) AS qualified, SUM(CASE WHEN iiq.inspect_status = 2 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unQualified SUM(CASE WHEN iiq.inspect_status = 1 and (iuh.id is null) THEN 1 ELSE 0 END) AS qualified, SUM(CASE WHEN iiq.inspect_status != 1 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unQualified FROM ifs_inventory_quantity iiq LEFT JOIN ins_order io1 ON io1.ifs_inventory_id = iiq.id @@ -184,18 +177,11 @@ AND io1.send_time BETWEEN #{dto.beginDate} AND #{dto.endDate} LEFT JOIN ( SELECT iuh.id, coa.operation, MAX(iuh.id) AS id, iuh.inventory_quantity_id FROM ins_unqualified_handler iuh LEFT JOIN ( SELECT *, ROW_NUMBER() OVER (PARTITION BY workflow_id ORDER BY approval_date DESC,approval_time DESC, id DESC) AS rn FROM common_oa ) AS coa ON iuh.request_id = coa.workflow_id AND coa.rn = 1 WHERE coa.operation !='退回' AND coa.operation is not null WHERE iuh.oa_state !=4 AND iuh.oa_state is not null GROUP BY iuh.inventory_quantity_id ) iuh ON iiq.id = iuh.inventory_quantity_id LEFT JOIN ( SELECT ins_order_id, MAX(sample) AS sample, MAX(model) AS model @@ -232,26 +218,19 @@ SELECT COUNT(*) AS sum, /* 合格 */ SUM(CASE WHEN iiq.inspect_status = 1 or (iuh.id is null) THEN 1 ELSE 0 END) AS qualified, SUM(CASE WHEN iiq.inspect_status = 1 and (iuh.id is null) THEN 1 ELSE 0 END) AS qualified, /* 不合格 */ SUM(CASE WHEN iiq.inspect_status = 2 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unQualified SUM(CASE WHEN iiq.inspect_status != 1 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unQualified FROM ifs_inventory_quantity iiq INNER JOIN ins_order io1 ON io1.ifs_inventory_id = iiq.id LEFT JOIN ( SELECT iuh.id, coa.operation, MAX(iuh.id) AS id, iuh.inventory_quantity_id FROM ins_unqualified_handler iuh LEFT JOIN ( SELECT *, ROW_NUMBER() OVER (PARTITION BY workflow_id ORDER BY approval_date DESC,approval_time DESC, id DESC) AS rn FROM common_oa ) AS coa ON iuh.request_id = coa.workflow_id AND coa.rn = 1 WHERE coa.operation !='退回' AND coa.operation is not null WHERE iuh.oa_state !=4 AND iuh.oa_state is not null GROUP BY iuh.inventory_quantity_id ) iuh ON iiq.id = iuh.inventory_quantity_id LEFT JOIN ( SELECT @@ -290,7 +269,7 @@ SELECT iiq.supplier_name AS supplierName, COUNT(iiq.id) AS totalBatch, SUM(CASE WHEN iiq.inspect_status = 2 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unqualifiedBatch, SUM(CASE WHEN iiq.inspect_status != 1 or (iuh.id is not null) THEN 1 ELSE 0 END) AS unqualifiedBatch, ROUND(SUM(CASE WHEN iiq.inspect_status = 1 and iuh.id is null THEN 1 ELSE 0 END) / COUNT(*)* 100, 2 ) AS passRate FROM ifs_inventory_quantity iiq INNER JOIN ins_order io1 @@ -300,18 +279,11 @@ AND io1.send_time BETWEEN #{dto.beginDate} AND #{dto.endDate} LEFT JOIN ( SELECT iuh.id, coa.operation, MAX(iuh.id) AS id, iuh.inventory_quantity_id FROM ins_unqualified_handler iuh LEFT JOIN ( SELECT *, ROW_NUMBER() OVER (PARTITION BY workflow_id ORDER BY approval_date DESC,approval_time DESC, id DESC) AS rn FROM common_oa ) AS coa ON iuh.request_id = coa.workflow_id AND coa.rn = 1 WHERE coa.operation !='退回' AND coa.operation is not null WHERE iuh.oa_state !=4 AND iuh.oa_state is not null GROUP BY iuh.inventory_quantity_id ) iuh ON iiq.id = iuh.inventory_quantity_id LEFT JOIN ( SELECT ruoyi-admin-ztns/src/main/resources/application-ztns.yml
@@ -101,7 +101,7 @@ # 日志配置 logging: file-location: /center-lims-ztns/after file-location: /center-lims-ztns/after/logs level: com.ruoyi: info org.springframework: warn ruoyi-admin-ztns/src/main/resources/logback.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <configuration> <!-- 日志存放路径 --> <springProperty scope="context" name="logs" source="logging.file-location" default="/logs"/> <springProperty scope="context" name="logs" source="logging.file-location" default="/ztns-logs"/> <property name="log.path" value="${logs}"/> <!-- 日志输出格式 -->