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"