From eb7d0122b28bd28b2c7fab87a95ca479c786fd1b Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 18 Jan 2024 15:58:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8D=E5=90=88=E6=A0=BC=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/op/system/api/RemoteOpenService.java | 9 +- .../op/system/api/domain/quality/OAInfo.java | 300 ++++++++++++++++++ .../factory/RemoteOpenFallbackFactory.java | 3 +- .../op/open/controller/OpenController.java | 9 +- .../op/open/service/impl/OpenServiceImpl.java | 3 +- .../QcCheckUnqualifiedController.java | 15 +- .../controller/QcMaterialGroupController.java | 10 +- .../domain/QcCheckTaskWarehousing.java | 27 ++ .../service/IQcCheckUnqualifiedService.java | 18 +- .../impl/QcCheckTaskIncomeServiceImpl.java | 18 +- .../impl/QcCheckUnqualifiedServiceImpl.java | 107 ++++++- .../quality/QcCheckTaskIncomeMapper.xml | 4 +- .../quality/QcCheckUnqualifiedMapper.xml | 8 +- 13 files changed, 479 insertions(+), 52 deletions(-) create mode 100644 op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/OAInfo.java diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java index 701246a8b..7259f8bfd 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java @@ -4,10 +4,7 @@ import com.op.common.core.constant.ServiceNameConstants; import com.op.common.core.web.domain.AjaxResult; import com.op.system.api.factory.RemoteOpenFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.*; import java.util.Map; @@ -24,6 +21,6 @@ public interface RemoteOpenService { /**获取流程信息**/ - @GetMapping("/openInterface/GetOaNodeInfo") - public AjaxResult GetOaNodeInfo(@RequestParam("requestId") String requestId); + @GetMapping("/openInterface/GetOaNodeInfo/{requestid}") + public AjaxResult GetOaNodeInfo(@PathVariable("requestid") String requestId); } diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/OAInfo.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/OAInfo.java new file mode 100644 index 000000000..6d55cab77 --- /dev/null +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/OAInfo.java @@ -0,0 +1,300 @@ +package com.op.system.api.domain.quality; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.op.common.core.annotation.Excel; +import com.op.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * oa返回信息 + * + * @author Open Platform + * @date 2023-10-31 + */ +public class OAInfo extends BaseEntity { + private static final long serialVersionUID = 1L; + //请求id + private String REQUESTID; + //工作流id + private String WORKFLOWID; + //操作节点id + private String NODEID; + //签字类型 0:批准
1:保存
2:提交
3:退回
4:重新打开
5:删除
6:激活
7:转发
9:批注
+ // a:意见征询
b:意见征询回复
e:强制归档
h:转办
i:干预
j:转办反馈
s:督办
t:抄送 + private String LOGTYPE; + //操作日期 + private String OPERATEDATE; + //操作时间 + private String OPERATETIME; + //操作者 + private String OPERATOR; + //意见 + private String REMARK1; + //客户端ip + private String CLIENTIP; + //操作者类型1:人力资源,2:客户 + private String OPERATORTYPE; + //下一节点id + private String DESTNODEID; + //接收人 + private String RECEIVEDPERSONS_1; + //显示顺序 + private String SHOWORDER; + //代理人 + private String AGENTORBYAGENTID; + //代理类型 + private String AGENTTYPE; + //日志id + private String LOGID; + //签字信息 + private String REMARK; + //相关附件 + private String ANNEXDOCIDS; + //日志id + private String REQUESTLOGID; + //操作者部门 + private String OPERATORDEPT; + //相关文档 + private String SIGNDOCIDS; + //相关流程 + private String SIGNWORKFLOWIDS; + //接收者名称 + private String RECEIVEDPERSONS; + //是否为手机版本 + private String ISMOBILE; + // 手写签批 + private String HANDWRITTENSIGN; + //语音附件 + private String SPEECHATTACHMENT; + //接收人id + private String RECEIVEDPERSONIDS; + //意见位置 + private String REMARKLOCATION; + + public String getREQUESTID() { + return REQUESTID; + } + + public void setREQUESTID(String REQUESTID) { + this.REQUESTID = REQUESTID; + } + + public String getWORKFLOWID() { + return WORKFLOWID; + } + + public void setWORKFLOWID(String WORKFLOWID) { + this.WORKFLOWID = WORKFLOWID; + } + + public String getNODEID() { + return NODEID; + } + + public void setNODEID(String NODEID) { + this.NODEID = NODEID; + } + + public String getLOGTYPE() { + return LOGTYPE; + } + + public void setLOGTYPE(String LOGTYPE) { + this.LOGTYPE = LOGTYPE; + } + + public String getOPERATEDATE() { + return OPERATEDATE; + } + + public void setOPERATEDATE(String OPERATEDATE) { + this.OPERATEDATE = OPERATEDATE; + } + + public String getOPERATETIME() { + return OPERATETIME; + } + + public void setOPERATETIME(String OPERATETIME) { + this.OPERATETIME = OPERATETIME; + } + + public String getOPERATOR() { + return OPERATOR; + } + + public void setOPERATOR(String OPERATOR) { + this.OPERATOR = OPERATOR; + } + + public String getREMARK1() { + return REMARK1; + } + + public void setREMARK1(String REMARK1) { + this.REMARK1 = REMARK1; + } + + public String getCLIENTIP() { + return CLIENTIP; + } + + public void setCLIENTIP(String CLIENTIP) { + this.CLIENTIP = CLIENTIP; + } + + public String getOPERATORTYPE() { + return OPERATORTYPE; + } + + public void setOPERATORTYPE(String OPERATORTYPE) { + this.OPERATORTYPE = OPERATORTYPE; + } + + public String getDESTNODEID() { + return DESTNODEID; + } + + public void setDESTNODEID(String DESTNODEID) { + this.DESTNODEID = DESTNODEID; + } + + public String getRECEIVEDPERSONS_1() { + return RECEIVEDPERSONS_1; + } + + public void setRECEIVEDPERSONS_1(String RECEIVEDPERSONS_1) { + this.RECEIVEDPERSONS_1 = RECEIVEDPERSONS_1; + } + + public String getSHOWORDER() { + return SHOWORDER; + } + + public void setSHOWORDER(String SHOWORDER) { + this.SHOWORDER = SHOWORDER; + } + + public String getAGENTORBYAGENTID() { + return AGENTORBYAGENTID; + } + + public void setAGENTORBYAGENTID(String AGENTORBYAGENTID) { + this.AGENTORBYAGENTID = AGENTORBYAGENTID; + } + + public String getAGENTTYPE() { + return AGENTTYPE; + } + + public void setAGENTTYPE(String AGENTTYPE) { + this.AGENTTYPE = AGENTTYPE; + } + + public String getLOGID() { + return LOGID; + } + + public void setLOGID(String LOGID) { + this.LOGID = LOGID; + } + + public String getREMARK() { + return REMARK; + } + + public void setREMARK(String REMARK) { + this.REMARK = REMARK; + } + + public String getANNEXDOCIDS() { + return ANNEXDOCIDS; + } + + public void setANNEXDOCIDS(String ANNEXDOCIDS) { + this.ANNEXDOCIDS = ANNEXDOCIDS; + } + + public String getREQUESTLOGID() { + return REQUESTLOGID; + } + + public void setREQUESTLOGID(String REQUESTLOGID) { + this.REQUESTLOGID = REQUESTLOGID; + } + + public String getOPERATORDEPT() { + return OPERATORDEPT; + } + + public void setOPERATORDEPT(String OPERATORDEPT) { + this.OPERATORDEPT = OPERATORDEPT; + } + + public String getSIGNDOCIDS() { + return SIGNDOCIDS; + } + + public void setSIGNDOCIDS(String SIGNDOCIDS) { + this.SIGNDOCIDS = SIGNDOCIDS; + } + + public String getSIGNWORKFLOWIDS() { + return SIGNWORKFLOWIDS; + } + + public void setSIGNWORKFLOWIDS(String SIGNWORKFLOWIDS) { + this.SIGNWORKFLOWIDS = SIGNWORKFLOWIDS; + } + + public String getRECEIVEDPERSONS() { + return RECEIVEDPERSONS; + } + + public void setRECEIVEDPERSONS(String RECEIVEDPERSONS) { + this.RECEIVEDPERSONS = RECEIVEDPERSONS; + } + + public String getISMOBILE() { + return ISMOBILE; + } + + public void setISMOBILE(String ISMOBILE) { + this.ISMOBILE = ISMOBILE; + } + + public String getHANDWRITTENSIGN() { + return HANDWRITTENSIGN; + } + + public void setHANDWRITTENSIGN(String HANDWRITTENSIGN) { + this.HANDWRITTENSIGN = HANDWRITTENSIGN; + } + + public String getSPEECHATTACHMENT() { + return SPEECHATTACHMENT; + } + + public void setSPEECHATTACHMENT(String SPEECHATTACHMENT) { + this.SPEECHATTACHMENT = SPEECHATTACHMENT; + } + + public String getRECEIVEDPERSONIDS() { + return RECEIVEDPERSONIDS; + } + + public void setRECEIVEDPERSONIDS(String RECEIVEDPERSONIDS) { + this.RECEIVEDPERSONIDS = RECEIVEDPERSONIDS; + } + + public String getREMARKLOCATION() { + return REMARKLOCATION; + } + + public void setREMARKLOCATION(String REMARKLOCATION) { + this.REMARKLOCATION = REMARKLOCATION; + } +} diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java index 6eef9a1ad..a5b702d52 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java @@ -7,6 +7,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; @@ -25,7 +26,7 @@ public class RemoteOpenFallbackFactory implements FallbackFactory getOAInfoList(QcCheckUnqualified qcCheckUnqualified) { + List list = qcCheckUnqualifiedService.getOAInfoList(qcCheckUnqualified); + return list; + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupController.java index d30478830..56be1e531 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupController.java @@ -23,7 +23,7 @@ import com.op.common.core.web.page.TableDataInfo; /** * 物料组Controller - * + * * @author materialGroup * @date 2023-10-16 */ @@ -36,7 +36,7 @@ public class QcMaterialGroupController extends BaseController { /** * 查询物料组列表 */ - @RequiresPermissions("quality:materialGroup:list") + //@RequiresPermissions("quality:materialGroup:list") @GetMapping("/list") public TableDataInfo list(QcMaterialGroup qcMaterialGroup) { startPage(); @@ -55,7 +55,7 @@ public class QcMaterialGroupController extends BaseController { /** * 导出物料组列表 */ - @RequiresPermissions("quality:materialGroup:export") + //@RequiresPermissions("quality:materialGroup:export") @Log(title = "物料组", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, QcMaterialGroup qcMaterialGroup) { @@ -67,7 +67,7 @@ public class QcMaterialGroupController extends BaseController { /** * 获取物料组详细信息 */ - @RequiresPermissions("quality:materialGroup:query") + //@RequiresPermissions("quality:materialGroup:query") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") String id) { return success(qcMaterialGroupService.selectQcMaterialGroupById(id)); @@ -86,7 +86,7 @@ public class QcMaterialGroupController extends BaseController { /** * 修改物料组 */ - @RequiresPermissions("quality:materialGroup:edit") + //@RequiresPermissions("quality:materialGroup:edit") @Log(title = "物料组", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody QcMaterialGroup qcMaterialGroup) { diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskWarehousing.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskWarehousing.java index 00e2f5edf..4a20c460d 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskWarehousing.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskWarehousing.java @@ -125,6 +125,33 @@ public class QcCheckTaskWarehousing extends BaseEntity { private String orderType; private BigDecimal noOkQuality; private BigDecimal sampleQuality; + private BigDecimal aNoOkquality; + private BigDecimal bNoOkquality; + private BigDecimal cNoOkquality; + + public BigDecimal getaNoOkquality() { + return aNoOkquality; + } + + public void setaNoOkquality(BigDecimal aNoOkquality) { + this.aNoOkquality = aNoOkquality; + } + + public BigDecimal getbNoOkquality() { + return bNoOkquality; + } + + public void setbNoOkquality(BigDecimal bNoOkquality) { + this.bNoOkquality = bNoOkquality; + } + + public BigDecimal getcNoOkquality() { + return cNoOkquality; + } + + public void setcNoOkquality(BigDecimal cNoOkquality) { + this.cNoOkquality = cNoOkquality; + } public List getDefects() { return defects; diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckUnqualifiedService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckUnqualifiedService.java index 962b39e7f..bd40c1980 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckUnqualifiedService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckUnqualifiedService.java @@ -1,18 +1,20 @@ package com.op.quality.service; import java.util.List; + +import com.op.system.api.domain.quality.OAInfo; import com.op.quality.domain.QcCheckUnqualified; /** * 不合格处理Service接口 - * + * * @author Open Platform * @date 2023-10-31 */ public interface IQcCheckUnqualifiedService { /** * 查询不合格处理 - * + * * @param id 不合格处理主键 * @return 不合格处理 */ @@ -20,7 +22,7 @@ public interface IQcCheckUnqualifiedService { /** * 查询不合格处理列表 - * + * * @param qcCheckUnqualified 不合格处理 * @return 不合格处理集合 */ @@ -28,7 +30,7 @@ public interface IQcCheckUnqualifiedService { /** * 新增不合格处理 - * + * * @param qcCheckUnqualified 不合格处理 * @return 结果 */ @@ -36,7 +38,7 @@ public interface IQcCheckUnqualifiedService { /** * 修改不合格处理 - * + * * @param qcCheckUnqualified 不合格处理 * @return 结果 */ @@ -44,7 +46,7 @@ public interface IQcCheckUnqualifiedService { /** * 批量删除不合格处理 - * + * * @param ids 需要删除的不合格处理主键集合 * @return 结果 */ @@ -52,9 +54,11 @@ public interface IQcCheckUnqualifiedService { /** * 删除不合格处理信息 - * + * * @param id 不合格处理主键 * @return 结果 */ public int deleteQcCheckUnqualifiedById(String id); + + List getOAInfoList(QcCheckUnqualified qcCheckUnqualified); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java index 3f0e04bc4..e25fb733e 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java @@ -476,15 +476,15 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { @DS("#header.poolName") public List getWorkOrder(QcCheckTaskIncome qcCheckTaskIncome) { List dtos = qcCheckUnqualifiedMapper.getWorkOrder(qcCheckTaskIncome); - for(QcCheckTaskIncome dto:dtos){ - String statusName = ""; - if("w5".equals(dto.getStatus())){ - statusName = "质检完成"; - }else{ - statusName = "质检未完成"; - } - dto.setStatus(statusName); - } +// for(QcCheckTaskIncome dto:dtos){ +// String statusName = ""; +// if("w5".equals(dto.getStatus())){ +// statusName = "质检完成"; +// }else{ +// statusName = "质检未完成"; +// } +// dto.setStatus(statusName); +// } return dtos; } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java index 6ac690906..c1d1a3ca5 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java @@ -1,16 +1,14 @@ package com.op.quality.service.impl; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.baomidou.dynamic.datasource.annotation.DS; import com.op.common.core.utils.DateUtils; import com.op.common.core.web.domain.AjaxResult; import com.op.common.security.utils.SecurityUtils; -import com.op.quality.domain.QcCheckProject; +import com.op.system.api.domain.quality.OAInfo; import com.op.quality.domain.QcCheckTaskIncome; import com.op.quality.mapper.QcCheckTaskIncomeMapper; import com.op.system.api.RemoteOpenService; @@ -100,6 +98,7 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService oaR = this.createLLOA(taskIfo); }else if("produce".equals(taskIfo.getTypeCode())){ //ZL0030-品质异常流程 + oaR = this.createProduceOA(taskIfo); }else if("product".equals(taskIfo.getTypeCode())) { //ZL0020-成品检验控制流程 oaR = this.createProductOA(taskIfo); @@ -109,10 +108,13 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService /**qc_check_unqualified**/ qcCheckUnqualified.setRequestid(oaR.get("data").toString()); qcCheckUnqualified.setStartOaStatus("1"); + qcCheckUnqualified.setStatus("1"); + qcCheckUnqualified.setStartTime(nowTime); int m = qcCheckUnqualifiedMapper.updateQcCheckUnqualified(qcCheckUnqualified); return m; }else{ qcCheckUnqualified.setStartOaStatus("2"); + qcCheckUnqualified.setStartTime(nowTime); qcCheckUnqualified.setStartOaMsg(oaR.get("msg").toString()); qcCheckUnqualifiedMapper.updateQcCheckUnqualified(qcCheckUnqualified); return 0; @@ -146,6 +148,20 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService return qcCheckUnqualifiedMapper.deleteQcCheckUnqualifiedById(id); } + @Override + @DS("#header.poolName") + public List getOAInfoList(QcCheckUnqualified qcCheckUnqualified) { + logger.info("查看流程Id"+ qcCheckUnqualified.getTaskId()); + AjaxResult oaR = remoteOpenService.GetOaNodeInfo(qcCheckUnqualified.getTaskId()); + logger.info("流程Id 26235:"+ JSONObject.toJSONString(oaR)); + List infoList = new ArrayList<>(); + if((int)oaR.get("code")==200){ + infoList=JSONArray.parseArray(oaR.get("msg").toString(),OAInfo.class); + } + + return infoList; + } + /*来料检验不良OA流程 * CQ 厂区、 OEMCM 厂名 、 LLLB 来料类别【0、1】、MATNR 物料编号、MAKTX 物料名称、suppliernum 供应商编码 * supplier 供应商名称、CHARG 生产批号、comeQty 来料数量、testDate 检验日期 、 JYBH 检验编号、 @@ -199,14 +215,14 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService //发起来料检验OA流程 Map paramMap = new HashMap<>(); - paramMap.put("user","999999");//提交人工号qcCheckTaskIncome.getUpdateBy() + paramMap.put("user",SecurityUtils.getUsername());//提交人工号qcCheckTaskIncome.getUpdateBy() paramMap.put("requestLevel",0);//流程紧急度 paramMap.put("requestName","ZL0020-成品检验控制流程");//流程名称 paramMap.put("workflowId",26234);//该流程对应的唯- workFlowld StringBuffer mainObject = new StringBuffer(); mainObject.append("{"); - mainObject.append("\"SSCJ\":"+detailInfo.getSupplierName());//所属车间 + mainObject.append("\"SSCJ\":"+"\""+detailInfo.getSupplierName()+"\"");//所属车间 mainObject.append(",\"ZRPSN\":"+"\""+SecurityUtils.getUsername()+"\"");//报检人 mainObject.append(",\"OEM\":"+"\""+detailInfo.getFactoryCode()+"\"");//OEM厂名 mainObject.append(",\"DH\":"+"\""+detailInfo.getOrderNo()+"\"");//单号 @@ -223,19 +239,90 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService detailObject.append("{\"PRONAME\":\""+detailInfo.getMaterialName()+"\"},");//产品名称 detailObject.append("{\"SCCODE\":\""+detailInfo.getIncomeBatchNo()+"\"},");//批次号 detailObject.append("{\"SCTOTAL\":\""+detailInfo.getQuality()+"\"},");//数量 - detailObject.append("{\"BJDATE\":\""+detailInfo.getCreateTime()+"\"},");//报检日期 + detailObject.append("{\"BJDATE\":\""+DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",detailInfo.getCreateTime())+"\"},");//报检日期 detailObject.append("{\"JYCODE\":\""+detailInfo.getCheckNo()+"\"},");// 检验编号 - detailObject.append("{\"JYDATE\":\""+detailInfo.getCheckTime()+"\"},");// 检验日期 + detailObject.append("{\"JYDATE\":\""+DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",detailInfo.getCheckTime())+"\"},");// 检验日期 detailObject.append("{\"JYRESULT\":\""+(detailInfo.getCheckResult().equals("Y")?"0":"2")+"\"},");//检验结果:0合格 2不合格 detailObject.append("{\"CPCYS\":\""+detailInfo.getQuality()+"\"},");// 产品抽样数(PC) detailObject.append("{\"JYBHGMS\":\""+task.getRemark()+"\"}");// 不合格情况描述 detailObject.append("]}"); - paramMap.put("mainObject",detailObject.toString()); + paramMap.put("details",detailObject.toString()); logger.info("流程Id 26234:"+ JSONObject.toJSONString(paramMap)); AjaxResult oaR = remoteOpenService.OAInspection(paramMap); logger.info("流程Id 26234:"+ JSONObject.toJSONString(oaR)); return oaR; } + + /** + { + "user": "999999", 提交用户账号 + "requestLevel": "0", 紧急程度,默认0 + "requestName": "ZL0030-品质异常流程-智能制造-2024-01-17(产品名称:榄菊高级型蚊香(60装))", + "workflowId": "26256", + "mainObject": "{ + "CPMC":"榄菊高级型蚊香(60装)", *产品名称 + "CPBM":"10101000115", *产品编码 + "SQBM":"0", *申请部门 0品质保障部 + "SQR":"15930", *申请人:默认当前用户 15930:智能制造 + "SQSJ":"2024-01-17", *申请时间: 默认当前日期 + "SCCJ":"162", *所属车间 162小榄黑蚊香车间 + "SCPH":"240555a", *生产批号 + "SCSL":500, *生产数量 + "FXDD":"测试地点", *发现地点 + "FXRQ":"2024-01-17", *发现日期:默认当前日期,可以选择 + "BH":"202401170002", *编号:流水号 年月日+四位流水号 + "YCFW":"1", *异常范围:下拉框榄菊所有工厂 1代表小榄工厂 + "PZYCMS":"测试异常描述", *品质异常描述 + "Notes":"测试备注", 备注 + "SFXYZG":"1", *是否需要主管审核 1否 0是 + "PGZG":"", QC主管:SFXYZG字段为"是",则此项选择QC主管信息 + "PGZR":"660", *质量主管 660:朱继新 + "SFGYSWT":"1" *是否供应商问题 1非供应商问题 0是供应商问题 + }" + } + * @param task + * @return + */ + private AjaxResult createProduceOA(QcCheckUnqualified task){ + + QcCheckTaskIncome detailInfo = qcCheckTaskIncomeMapper.getTaskInfo(task.getTaskId()); + //发起来料检验OA流程 + Map paramMap = new HashMap<>(); + paramMap.put("user",SecurityUtils.getUsername());//提交人工号 + paramMap.put("requestLevel",0);//流程紧急度 + paramMap.put("requestName","ZL0030-品质异常流程-智能制造-"+DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",detailInfo.getIncomeTime())+"(产品名称:"+detailInfo.getMaterialName()+")");//流程名称 + paramMap.put("workflowId",26256);//该流程对应的唯- workFlowld + + StringBuffer mainObject = new StringBuffer(); + mainObject.append("{"); + mainObject.append("\"CPMC\":"+detailInfo.getMaterialName());//产品名称 + mainObject.append(",\"CPBM\":"+detailInfo.getMaterialCode());//产品编码 + //mainObject.append(",\"SQBM\":"+"\"0\"");//0品质保障部 + mainObject.append(",\"SQR\":"+"\""+SecurityUtils.getUsername()+"\"");//申请人:默认当前用户 + mainObject.append(",\"SQSJ\":"+"\""+detailInfo.getSupplierCode()+"\"");//申请时间 + mainObject.append(",\"SCCJ\":"+"\""+detailInfo.getSupplierName()+"\"");//所属车间 + mainObject.append(",\"SCPH\":"+"\""+detailInfo.getIncomeBatchNo()+"\"");//生产批号 + mainObject.append(",\"SCSL\":"+"\""+detailInfo.getQuality()+"\"");//生产数量 + mainObject.append(",\"FXDD\":"+"\""+detailInfo.getCheckLoc()+"\"");//发现地点 + mainObject.append(",\"FXRQ\":"+"\""+DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",detailInfo.getCheckTime())+"\"");//发现日期 + mainObject.append(",\"BH\":"+"\""+detailInfo.getCheckNo()+"\"");//编号:流水号 年月日+四位流水号 + mainObject.append(",\"YCFW\":"+"\"1\"");//*异常范围:下拉框榄菊所有工厂 1代表小榄工厂 + mainObject.append(",\"PZYCMS\":"+"\""+detailInfo.getRemark()+"\"");//品质异常描述 + mainObject.append(",\"Notes\":"+"\"\"");//测试备注 + mainObject.append(",\"SFXYZG\":"+"\"1\"");//*是否需要主管审核 1否 0是 + mainObject.append(",\"SFXYZG\":"+"\"1\"");//*是否需要主管审核 1否 0是 + mainObject.append(",\"PGZG\":"+"\""+detailInfo.getRemark()+"\"");//QC主管:SFXYZG字段为"是",则此项选择QC主管信息 + mainObject.append(",\"PGZR\":"+"\"660\"");//质量主管 660:朱继新 + mainObject.append(",\"SFGYSWT\":"+"\"1\"");//*是否供应商问题 1非供应商问题 0是供应商问题 + + mainObject.append("}"); + + paramMap.put("mainObject",mainObject.toString()); + logger.info("流程Id 26256:"+ JSONObject.toJSONString(paramMap)); + AjaxResult oaR = remoteOpenService.OAInspection(paramMap); + logger.info("流程Id 26256:"+ JSONObject.toJSONString(oaR)); + return oaR; + } } diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml index 2c46086ef..5f753bf0c 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml @@ -357,7 +357,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" qct.create_time createTime, qct.check_no checkNo, qct.check_time checkTime, - qct.check_result checkResult + qct.check_result checkResult, + qct.income_time incomeTime, + qct.check_loc checkLoc from qc_check_task qct left join pro_order_workorder pow on pow.workorder_code = qct.order_no where qct.record_id = #{recordId} diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckUnqualifiedMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckUnqualifiedMapper.xml index 160e1635c..c19a7dd31 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckUnqualifiedMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckUnqualifiedMapper.xml @@ -31,8 +31,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"