From f3dbd81cab2ecd9b84f644fcc93101f6bb228b45 Mon Sep 17 00:00:00 2001 From: A0010407 Date: Fri, 12 Jan 2024 11:19:23 +0800 Subject: [PATCH 1/8] =?UTF-8?q?2024-1-12=20=E5=9F=BA=E7=A1=80=E4=BF=A1?= =?UTF-8?q?=E6=81=AF-bom=E6=95=B0=E6=8D=AE=E6=94=B9=E7=BB=93=E6=9E=84=20?= =?UTF-8?q?=E7=AC=AC=E4=B8=80=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/wms/controller/BaseBomController.java | 1 - .../main/java/com/op/wms/domain/BaseBom.java | 34 +++++++ .../java/com/op/wms/mapper/BaseBomMapper.java | 11 ++- .../com/op/wms/service/IBaseBomService.java | 3 - .../wms/service/impl/BaseBomServiceImpl.java | 50 ++++++++-- .../resources/mapper/wms/BaseBomMapper.xml | 94 ++++++++++++++++++- 6 files changed, 177 insertions(+), 16 deletions(-) diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/BaseBomController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/BaseBomController.java index 97c24e0d8..9a3c25e6b 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/BaseBomController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/BaseBomController.java @@ -3,7 +3,6 @@ package com.op.wms.controller; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletResponse; -import com.op.wms.domain.BaseBomComponent; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseBom.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseBom.java index 747eda37e..0293572c4 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseBom.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseBom.java @@ -139,6 +139,40 @@ public class BaseBom extends BaseEntity { @Excel(name = "含损耗用量") private Long cilosses; + //虚拟字段 + private Boolean hasChildren; + private String handle; + private String bomBo; + private Integer number; + + public void setNumber(Integer number) { + this.number = number; + } + public Integer getNumber() { + return number; + } + + public void setBomBo(String bomBo) { + this.bomBo = bomBo; + } + public String getBomBo() { + return bomBo; + } + + public void setHasChildren(Boolean hasChildren) { + this.hasChildren = hasChildren; + } + public Boolean getHasChildren() { + return hasChildren; + } + + public void setHandle(String handle) { + this.handle = handle; + } + public String getHandle() { + return handle; + } + public void setFactoryCode(String factoryCode) { this.factoryCode = factoryCode; } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseBomMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseBomMapper.java index 20ef3b5eb..49bdd0344 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseBomMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseBomMapper.java @@ -25,7 +25,9 @@ public interface BaseBomMapper { * @param baseBom BOM物料管理 * @return BOM物料管理集合 */ - public List selectBaseBomList(BaseBom baseBom); + public List selectBaseBomList0(BaseBom baseBom); + public List selectBaseBomList1(BaseBom baseBom); + public List selectBaseBomList2(BaseBom baseBom); /** * 新增BOM物料管理 @@ -58,4 +60,11 @@ public interface BaseBomMapper { * @return 结果 */ public int deleteBaseBomByFactoryCodes(String[] factoryCodes); + + //查询层级 + String selectLevels(); + + //查询子节点多少个 + Integer selectChildNodes(BaseBom baseBom); + } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseBomService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseBomService.java index b0134baba..adb0c4ac2 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseBomService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseBomService.java @@ -2,7 +2,6 @@ package com.op.wms.service; import java.util.List; import com.op.wms.domain.BaseBom; -import com.op.wms.domain.BaseBomComponent; /** * BOM物料管理Service接口 @@ -26,8 +25,6 @@ public interface IBaseBomService { * @return BOM物料管理集合 */ public List selectBaseBomList(BaseBom baseBom); - //public List selectBaseBomList(BaseBom baseBom, BaseBomComponent baseBomComponent, List list); -// public List selectBaseBomComponentList(BaseBomComponent baseBomComponent); /** * 新增BOM物料管理 diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseBomServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseBomServiceImpl.java index 9c7ae6150..671f50786 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseBomServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseBomServiceImpl.java @@ -1,13 +1,9 @@ package com.op.wms.service.impl; - -import java.util.ArrayList; -import java.util.Comparator; import java.util.List; -import java.util.stream.Collectors; import com.baomidou.dynamic.datasource.annotation.DS; import com.op.common.core.utils.DateUtils; -import com.op.wms.domain.BaseBomComponent; +import com.op.common.core.utils.uuid.IdUtils; import com.op.wms.mapper.BaseBomComponentMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -49,7 +45,49 @@ public class BaseBomServiceImpl implements IBaseBomService { @Override @DS("#header.poolName") public List selectBaseBomList(BaseBom baseBom) { - return baseBomMapper.selectBaseBomList(baseBom); + //bom表 + //主表 第0层 + if(baseBom.getBomHierarchy().equals("0")){ + List list = baseBomMapper.selectBaseBomList0(baseBom); + //判断 是否有HasChildren + for(BaseBom baseBom1 : list){ + if(baseBom1.getNumber() > 1){ + baseBom1.setHasChildren(Boolean.TRUE); + }else{ + baseBom1.setHasChildren(Boolean.FALSE); + } + } + return list; + }else if(baseBom.getBomHierarchy().equals("1")){ + List list = baseBomMapper.selectBaseBomList1(baseBom); + for(BaseBom baseBom1 : list){ + if(baseBom1.getHandle() == null){ + baseBom1.setHandle(IdUtils.fastSimpleUUID()); + } + Integer childNodes = baseBomMapper.selectChildNodes(baseBom1); + if(childNodes > 0){ + baseBom1.setHasChildren(Boolean.TRUE); + }else{ + baseBom1.setHasChildren(Boolean.FALSE); + } + } + return list; + }else{ + //2层以及以上 多条list + List list = baseBomMapper.selectBaseBomList2(baseBom); + for(BaseBom baseBom1 : list){ + if(baseBom1.getHandle() == null){ + baseBom1.setHandle(IdUtils.fastSimpleUUID()); + } + Integer childNodes = baseBomMapper.selectChildNodes(baseBom1); + if(childNodes > 0){ + baseBom1.setHasChildren(Boolean.TRUE); + }else{ + baseBom1.setHasChildren(Boolean.FALSE); + } + } + return list; + } } /** diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml index 745959337..acb447337 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml @@ -35,8 +35,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select factory_code, production_version, bom_code, optional_bom, optional_bom_text, pvvd, pved, bom_calculate_number, bom_calculate_unit, bom_base_number, bom_base_unit, component_unit, component_pro_flag, msi, sanka, attr1, attr2, attr3, create_by, create_time, update_by, update_time, remark, current_version from base_bom - select + count(bb.bom_bo) AS number, + bbc.bom_code as bomCode, + bb.bom_bo as handle, + b1.product_desc_zh as productDescZh, + bbc.product_code as productCode + from base_bom_component bbc + left join base_product b1 on right(b1.product_code,11) = bbc.product_code + left join base_bom bb on bb.bom_code = bbc.bom_code + left join base_product bp on right(bp.product_code,11) = bbc.component + + and bbc.bom_code like concat('%', #{bomCode}, '%') + + GROUP BY bbc.bom_code,bb.bom_bo,b1.product_desc_zh,bbc.product_code + order by bbc.bom_code desc + + + + + + + @@ -183,4 +254,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{factoryCode} + + + + + \ No newline at end of file From 72512329aeb24f9985dd85fc762885137b8992d2 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Fri, 12 Jan 2024 13:37:27 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/op/quality/controller/QuaController.java | 7 +++---- .../quality/service/impl/QcCheckTaskIncomeServiceImpl.java | 3 ++- .../resources/mapper/quality/QcCheckTaskProduceMapper.xml | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java index 71a878e42..a08ed161d 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java @@ -158,14 +158,13 @@ public class QuaController extends BaseController { * 获取待检验信息列表 */ @GetMapping(value = "getCheckTaskList") - public TableDataInfo getCheckTaskList(QcCheckTaskIncome qcCheckTaskIncome) { + public List getCheckTaskList(QcCheckTaskIncome qcCheckTaskIncome) { if(StringUtils.isNotBlank(qcCheckTaskIncome.getCheckStatus())){ qcCheckTaskIncome.setCheckStatus("'"+ qcCheckTaskIncome.getCheckStatus().replace(",","','")+"'"); } - startPage(); List list = qcProCheckService.getCheckTaskList(qcCheckTaskIncome); - return getDataTable(list); + return list; } /** * 获取待检验信息列表 @@ -189,7 +188,7 @@ public class QuaController extends BaseController { if(CollectionUtils.isEmpty(qcCheckTaskIncome.getQcCheckTaskDetails())){ return error("[List]不能为空"); } - return success(qcCheckTaskIncomeService.commitCheckResults(qcCheckTaskIncome)); + return toAjax(qcCheckTaskIncomeService.commitCheckResults(qcCheckTaskIncome)); } /** * 检验单位 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 7127788b5..0d197e742 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 @@ -548,6 +548,7 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { } @Override + @Transactional(rollbackFor = Exception.class) public int commitCheckResults(QcCheckTaskIncome qcCheckTaskIncome) { List details = qcCheckTaskIncome.getQcCheckTaskDetails(); DynamicDataSourceContextHolder.push(qcCheckTaskIncome.getFactoryCode()); @@ -656,7 +657,7 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { //TODO;不走OA oaR.put("code","200"); } - if((oaR.get("code").toString()).equals("200")){ + if(oaR!=null && (oaR.get("code").toString()).equals("200")){ /**qc_check_unqualified**/ unqualified.setRequestid(oaR.get("data").toString()); } diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml index 31eb4ce1d..396c9db09 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml @@ -158,7 +158,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" left join pro_order_workorder pow on qct.order_no = pow.workorder_code where check_type = 'checkTypeSCXJ' and CONVERT(varchar(10),income_time, 120) = CONVERT(varchar(10),GETDATE(), 120) - and pow.status = 'w2' + and pow.status = 'w2' and pow.parent_order = '0' group by qct.factory_code, qct.order_no,qct.material_code,qct.material_name, qct.quality,qct.unit,qct.supplier_code,qct.supplier_name, From 272b52b9e1ab2a5d004107546973a3cd4103e40f Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Fri, 12 Jan 2024 14:36:14 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/op/quality/controller/QuaController.java | 1 + .../quality/service/impl/QcCheckTaskIncomeServiceImpl.java | 4 ++-- .../resources/mapper/quality/QcCheckTaskIncomeMapper.xml | 5 ++--- .../resources/mapper/quality/QcCheckTaskProduceMapper.xml | 7 ++++++- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java index a08ed161d..c0f5a9942 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QuaController.java @@ -185,6 +185,7 @@ public class QuaController extends BaseController { */ @PostMapping(value = "commitCheckResults") public AjaxResult commitCheckResults(@RequestBody QcCheckTaskIncome qcCheckTaskIncome) { + DynamicDataSourceContextHolder.push(qcCheckTaskIncome.getFactoryCode()); if(CollectionUtils.isEmpty(qcCheckTaskIncome.getQcCheckTaskDetails())){ return error("[List]不能为空"); } 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 0d197e742..8d67f647b 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 @@ -551,7 +551,7 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { @Transactional(rollbackFor = Exception.class) public int commitCheckResults(QcCheckTaskIncome qcCheckTaskIncome) { List details = qcCheckTaskIncome.getQcCheckTaskDetails(); - DynamicDataSourceContextHolder.push(qcCheckTaskIncome.getFactoryCode()); + Date nowTime = DateUtils.getNowDate(); String factoryCode = qcCheckTaskIncome.getFactoryCode(); String updateBy = qcCheckTaskIncome.getUpdateBy(); @@ -655,7 +655,7 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { oaR = this.createProduceOA(qcCheckTaskIncome); }else if("product".equals(qcCheckTaskIncome.getTypeCode())) { //TODO;不走OA - oaR.put("code","200"); + oaR.put("code","500"); } if(oaR!=null && (oaR.get("code").toString()).equals("200")){ /**qc_check_unqualified**/ 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 86b2529dd..7cf02aa3f 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 @@ -51,9 +51,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" qct.supplier_code, qct.supplier_name, qct.income_time, qct.check_loc, qct.check_status, qct.check_man_code, qct.check_man_name,qct.check_time, qct.check_result, qct.status, qct.create_by,qct.create_time, qct.update_by, qct.update_time,qct.check_type,qct.noOk_quality, - q.type_code + qct.type_code from qc_check_task qct - left join qc_check_type q on q.id = qct.check_type and qct.check_no = #{checkNo} and qct.income_batch_no = #{incomeBatchNo} @@ -76,7 +75,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and CONVERT(varchar(30),qct.check_time, 120) >= #{checkTimeStart} and #{checkTimeEnd} > CONVERT(varchar(30),qct.check_time, 120) and qct.check_type = #{checkType} - and q.type_code = #{typeCode} + and qct.type_code = #{typeCode} diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml index 396c9db09..f4ed5ecc4 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml @@ -354,6 +354,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GROUP BY qct.order_no, qct.material_code, qct.material_name, qct.quality, qct.unit, qct.supplier_code, qct.supplier_name, qct.income_time, qct.check_type,CONVERT(varchar(10),qct.create_time, 120) - ) t order by t.order_no,t.createTimeStr desc + ) t + where 1=1 + + and t.check_type = #{checkType} + + order by t.order_no,t.createTimeStr desc From 6cffc89eadbbd98e717d21efbccc5ebd83ef1efe Mon Sep 17 00:00:00 2001 From: A0010407 Date: Fri, 12 Jan 2024 15:40:50 +0800 Subject: [PATCH 4/8] =?UTF-8?q?2024-1-12=20=E5=9F=BA=E7=A1=80=E4=BF=A1?= =?UTF-8?q?=E6=81=AF-BOM=E6=A8=A1=E7=B3=8A=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml index acb447337..f9ccc8263 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/BaseBomMapper.xml @@ -48,6 +48,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" left join base_product bp on right(bp.product_code,11) = bbc.component and bbc.bom_code like concat('%', #{bomCode}, '%') + and b1.product_desc_zh like concat('%', #{productDescZh}, '%') + and bbc.product_code like concat('%', #{productCode}, '%') GROUP BY bbc.bom_code,bb.bom_bo,b1.product_desc_zh,bbc.product_code order by bbc.bom_code desc From f92f8ceb2d798c693efa5b9e9c1885fb224c06fd Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Fri, 12 Jan 2024 15:52:12 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/quality/domain/QcCheckUnqualified.java | 18 ++++++++++++++++++ .../quality/QcCheckTaskProduceMapper.xml | 3 ++- .../quality/QcCheckUnqualifiedMapper.xml | 3 ++- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckUnqualified.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckUnqualified.java index 50d0a2071..d23ad5966 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckUnqualified.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckUnqualified.java @@ -88,6 +88,24 @@ public class QcCheckUnqualified extends BaseEntity { private String checkResult; private String requestid; private String typeCode; + private String sampleQuality; + private String noOkQuality; + + public String getSampleQuality() { + return sampleQuality; + } + + public void setSampleQuality(String sampleQuality) { + this.sampleQuality = sampleQuality; + } + + public String getNoOkQuality() { + return noOkQuality; + } + + public void setNoOkQuality(String noOkQuality) { + this.noOkQuality = noOkQuality; + } public String getTypeCode() { return typeCode; diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml index f4ed5ecc4..4ecd9d7c7 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml @@ -36,6 +36,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -90,7 +92,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" qct.check_man_code, qct.check_man_name,qct.check_time, qct.check_result, qct.status, qct.create_by,qct.create_time, qct.update_by, qct.update_time, qct.check_type,qct.sample_quality,qct.noOk_quality, - qct.aNoOkquality,qct.bNoOkquality,qct.cNoOkquality, q.type_code,q.check_name from qc_check_task qct left join qc_check_type q on q.id = qct.check_type 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 8df2eb9e2..ebe4817f7 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 @@ -34,7 +34,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" qcu.create_time createTime, qct.check_type checkType,qtn.check_name checkName,qct.check_no checkNo,qct.income_batch_no incomeBatchNo,qct.order_no orderNo, qct.material_code materialCode,qct.material_name materialName,qct.quality,qct.unit,qct.supplier_code supplierCode, - qct.supplier_name supplierName,qct.income_time incomeTime,qct.check_loc checkLoc,qct.check_status checkStatus,qct.check_man_code checkManCode, + qct.supplier_name supplierName,qct.income_time incomeTime,qct.check_loc checkLoc,qct.check_status checkStatus, + qct.check_man_code checkManCode,qct.sample_quality sampleQuality,qct.noOk_quality noOkQuality, qct.check_man_name checkManName,qct.check_time checkTime,qct.check_result checkResult from qc_check_unqualified qcu left join qc_check_task qct on qcu.task_id = qct.record_id From a3d169cbea5bc1c91f26e246620f1034cbe239a2 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Fri, 12 Jan 2024 17:21:49 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/quality/domain/QcCheckTaskDetail.java | 12 +++++- .../impl/QcCheckTaskIncomeServiceImpl.java | 37 +------------------ .../quality/QcCheckTaskIncomeMapper.xml | 3 +- 3 files changed, 14 insertions(+), 38 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java index 40ce75663..67d5a108f 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java @@ -82,7 +82,7 @@ public class QcCheckTaskDetail extends BaseEntity { /** 删除标识1删除0正常 */ private String delFlag; - + private String remark; private String projectId; private String projectNo; private Integer sort; @@ -99,6 +99,16 @@ public class QcCheckTaskDetail extends BaseEntity { private String fileListStr; private List files; + @Override + public String getRemark() { + return remark; + } + + @Override + public void setRemark(String remark) { + this.remark = remark; + } + public List getFiles() { return files; } 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 8d67f647b..6ee70097e 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 @@ -388,25 +388,7 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { unqualified.setCreateBy(qcCheckTaskIncome.getUpdateBy()); unqualified.setFactoryCode(factoryCode); unqualified.setType(qcCheckTaskIncome.getCheckType()); - qcCheckTaskIncome.setUpdateBy(SecurityUtils.getUsername()); - AjaxResult oaR = new AjaxResult(); - if("material".equals(qcCheckTaskIncome.getTypeCode())) { - qcCheckTaskIncome.setRecordId(qcCheckTaskIncome.getRecordId());//检验任务主表id - oaR = this.createLLOA(qcCheckTaskIncome); - }else if("produce".equals(qcCheckTaskIncome.getTypeCode())){ - oaR = this.createProduceOA(qcCheckTaskIncome); - }else if("product".equals(qcCheckTaskIncome.getTypeCode())) { - //TODO;不走OA - oaR.put("code","200"); - } - - if((oaR.get("code").toString()).equals("200")){ - /**qc_check_unqualified**/ - qcCheckTaskIncome.setFactoryCode(factoryCode); - unqualified.setRequestid(oaR.get("data").toString()); - qcCheckUnqualifiedMapper.insertQcCheckUnqualified(unqualified); - } - + qcCheckUnqualifiedMapper.insertQcCheckUnqualified(unqualified); } return n ; @@ -644,23 +626,6 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { unqualified.setCreateBy(updateBy); unqualified.setFactoryCode(factoryCode); unqualified.setType(checkType); - - //发起来料检验OA流程 - AjaxResult oaR = new AjaxResult(); - if("material".equals(qcCheckTaskIncome.getTypeCode())) { - qcCheckTaskIncome.setRecordId(belongId);//检验任务主表id - oaR = this.createLLOA(qcCheckTaskIncome); - }else if("produce".equals(qcCheckTaskIncome.getTypeCode())){ - qcCheckTaskIncome.setRecordId(belongId);//检验任务主表id - oaR = this.createProduceOA(qcCheckTaskIncome); - }else if("product".equals(qcCheckTaskIncome.getTypeCode())) { - //TODO;不走OA - oaR.put("code","500"); - } - if(oaR!=null && (oaR.get("code").toString()).equals("200")){ - /**qc_check_unqualified**/ - unqualified.setRequestid(oaR.get("data").toString()); - } n = qcCheckUnqualifiedMapper.insertQcCheckUnqualified(unqualified); logger.info("qc_check_unqualified:" + n); } 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 7cf02aa3f..1ddc6892b 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 @@ -293,7 +293,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" actual_value = #{item.actualValue}, status = #{item.status}, update_by = #{item.updateBy}, - update_time = #{item.updateTime} + update_time = #{item.updateTime}, + remark = #{item.remark} where record_id = #{item.recordId} From af4f0111f1ec13926ae59168dabf05d0c3517b22 Mon Sep 17 00:00:00 2001 From: shaoyong Date: Fri, 12 Jan 2024 17:51:40 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E8=BF=87=E7=A8=8B=E6=A3=80=E9=AA=8CABC?= =?UTF-8?q?=E4=B8=8D=E8=89=AF=E6=95=B0=E6=8D=AE=E5=8A=A8=E6=80=81=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=EF=BC=8C=E6=8A=BD=E6=A0=B7=E8=A7=84=E5=88=99=E4=BC=98?= =?UTF-8?q?=E5=8C=96=EF=BC=8C=E7=89=A9=E6=96=99=E7=BB=84=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/QcDefectTypeController.java | 6 + .../QcMaterialGroupDetailController.java | 8 +- .../op/quality/domain/QcCheckTaskProduce.java | 9 ++ .../mapper/QcCheckTaskDefectMapper.java | 69 +++++++++ .../op/quality/mapper/QcDefectTypeMapper.java | 2 + .../mapper/QcMaterialGroupDetailMapper.java | 2 + .../service/IQcCheckTaskDefectService.java | 64 +++++++++ .../quality/service/IQcDefectTypeService.java | 2 + .../IQcMaterialGroupDetailService.java | 14 +- .../impl/QcCheckTaskDefectServiceImpl.java | 117 +++++++++++++++ .../impl/QcCheckTaskProduceServiceImpl.java | 35 ++++- .../service/impl/QcDefectTypeServiceImpl.java | 6 + .../QcMaterialGroupDetailServiceImpl.java | 5 + .../quality/QcCheckTaskDefectMapper.xml | 134 ++++++++++++++++++ .../mapper/quality/QcDefectTypeMapper.xml | 6 + .../quality/QcMaterialGroupDetailMapper.xml | 4 + 16 files changed, 480 insertions(+), 3 deletions(-) create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskDefectMapper.java create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskDefectService.java create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskDefectServiceImpl.java create mode 100644 op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java index 980096f2f..5a0405d26 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java @@ -89,4 +89,10 @@ public class QcDefectTypeController extends BaseController { public AjaxResult remove(@PathVariable String[] defectIds) { return toAjax(qcDefectTypeService.deleteQcDefectTypeByDefectIds(defectIds)); } + + @GetMapping("/getDefectTypeListByDefectType/{defectType}") + public TableDataInfo getDefectTypeListByDefectType(@PathVariable("defectType") String defectType) { + List list = qcDefectTypeService.getDefectTypeListByDefectType(defectType); + return getDataTable(list); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupDetailController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupDetailController.java index 73d670bd1..142d4c26d 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupDetailController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcMaterialGroupDetailController.java @@ -74,7 +74,13 @@ public class QcMaterialGroupDetailController extends BaseController { @Log(title = "物料组成员", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody QcMaterialGroupDetail qcMaterialGroupDetail) { - return toAjax(qcMaterialGroupDetailService.insertQcMaterialGroupDetail(qcMaterialGroupDetail)); + Boolean isNotUnique = qcMaterialGroupDetailService.validationGroupDetailData(qcMaterialGroupDetail.getMaterialCode()); + if (isNotUnique) { + return AjaxResult.error("此物料已在组中,请重新选择!"); + } else { + return toAjax(qcMaterialGroupDetailService.insertQcMaterialGroupDetail(qcMaterialGroupDetail)); + } + } /** diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskProduce.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskProduce.java index 324b3107a..120227d3f 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskProduce.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskProduce.java @@ -149,6 +149,15 @@ public class QcCheckTaskProduce extends BaseEntity { private BigDecimal cNoOkquality; private String checkName; private List checkInfos; + private List defects; + + public List getDefects() { + return defects; + } + + public void setDefects(List defects) { + this.defects = defects; + } public List getCheckInfos() { return checkInfos; diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskDefectMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskDefectMapper.java new file mode 100644 index 000000000..8129434ab --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskDefectMapper.java @@ -0,0 +1,69 @@ +package com.op.quality.mapper; + +import java.util.List; + +import com.op.quality.domain.QcCheckTaskDefect; +import org.apache.ibatis.annotations.Mapper; + +/** + * 来料检验任务--不良数量Mapper接口 + * + * @author Open Platform + * @date 2024-01-11 + */ +@Mapper +public interface QcCheckTaskDefectMapper { + /** + * 查询来料检验任务--不良数量 + * + * @param recordId 来料检验任务--不良数量主键 + * @return 来料检验任务--不良数量 + */ + public QcCheckTaskDefect selectQcCheckTaskDefectByRecordId(String recordId); + + /** + * 查询来料检验任务--不良数量列表 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 来料检验任务--不良数量集合 + */ + public List selectQcCheckTaskDefectList(QcCheckTaskDefect qcCheckTaskDefect); + + /** + * 新增来料检验任务--不良数量 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 结果 + */ + public int insertQcCheckTaskDefect(QcCheckTaskDefect qcCheckTaskDefect); + + /** + * 修改来料检验任务--不良数量 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 结果 + */ + public int updateQcCheckTaskDefect(QcCheckTaskDefect qcCheckTaskDefect); + + /** + * 删除来料检验任务--不良数量 + * + * @param recordId 来料检验任务--不良数量主键 + * @return 结果 + */ + public int deleteQcCheckTaskDefectByRecordId(String recordId); + + /** + * 批量删除来料检验任务--不良数量 + * + * @param recordIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQcCheckTaskDefectByRecordIds(String[] recordIds); + + public int deleteQcCheckTaskDefectByBelongTo(String belongTo); + + public List selectDefectByBelongTo(String belongTo); + + +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java index 156516a03..02d99afd8 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java @@ -67,4 +67,6 @@ public interface QcDefectTypeMapper { */ int selectSerialNumber(); + public List getDefectTypeListByDefectType(String defectType); + } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcMaterialGroupDetailMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcMaterialGroupDetailMapper.java index 421feea7a..9ea8fe20d 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcMaterialGroupDetailMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcMaterialGroupDetailMapper.java @@ -64,4 +64,6 @@ public interface QcMaterialGroupDetailMapper { public QcMaterialGroupDetail getGroupByMaterial(String materialCode); public List validationData(String materialCode); + + public List validationGroupDetailData(String materialCode); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskDefectService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskDefectService.java new file mode 100644 index 000000000..731fb90dd --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskDefectService.java @@ -0,0 +1,64 @@ +package com.op.quality.service; + +import java.util.List; +import com.op.quality.domain.QcCheckTaskDefect; + +/** + * 来料检验任务--不良数量Service接口 + * + * @author Open Platform + * @date 2024-01-11 + */ +public interface IQcCheckTaskDefectService { + /** + * 查询来料检验任务--不良数量 + * + * @param recordId 来料检验任务--不良数量主键 + * @return 来料检验任务--不良数量 + */ + public QcCheckTaskDefect selectQcCheckTaskDefectByRecordId(String recordId); + + /** + * 查询来料检验任务--不良数量列表 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 来料检验任务--不良数量集合 + */ + public List selectQcCheckTaskDefectList(QcCheckTaskDefect qcCheckTaskDefect); + + /** + * 新增来料检验任务--不良数量 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 结果 + */ + public int insertQcCheckTaskDefect(QcCheckTaskDefect qcCheckTaskDefect); + + /** + * 修改来料检验任务--不良数量 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 结果 + */ + public int updateQcCheckTaskDefect(QcCheckTaskDefect qcCheckTaskDefect); + + /** + * 批量删除来料检验任务--不良数量 + * + * @param recordIds 需要删除的来料检验任务--不良数量主键集合 + * @return 结果 + */ + public int deleteQcCheckTaskDefectByRecordIds(String[] recordIds); + + /** + * 删除来料检验任务--不良数量信息 + * + * @param recordId 来料检验任务--不良数量主键 + * @return 结果 + */ + public int deleteQcCheckTaskDefectByRecordId(String recordId); + + public int deleteQcCheckTaskDefectByBelongTo(String belongTo); + + public List selectDefectByBelongTo(String belongTo); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java index e1f4f2d28..1403564cd 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java @@ -59,4 +59,6 @@ public interface IQcDefectTypeService { * @return 结果 */ public int deleteQcDefectTypeByDefectId(String defectId); + + public List getDefectTypeListByDefectType(String defectType); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcMaterialGroupDetailService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcMaterialGroupDetailService.java index 6a4c1cce4..e7bf27147 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcMaterialGroupDetailService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcMaterialGroupDetailService.java @@ -58,5 +58,17 @@ public interface IQcMaterialGroupDetailService { */ public int deleteQcMaterialGroupDetailById(String id); - public boolean validationData(String id); + /** + * 验证此成员下有没有检测规则 + * @param materialCode + * @return + */ + public boolean validationData(String materialCode); + + /** + * 成员的唯一性校验 + * @param materialCode + * @return + */ + public boolean validationGroupDetailData(String materialCode); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskDefectServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskDefectServiceImpl.java new file mode 100644 index 000000000..3e68774b6 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskDefectServiceImpl.java @@ -0,0 +1,117 @@ +package com.op.quality.service.impl; + +import java.util.List; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.uuid.IdUtils; +import com.op.common.security.utils.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.op.quality.mapper.QcCheckTaskDefectMapper; +import com.op.quality.domain.QcCheckTaskDefect; +import com.op.quality.service.IQcCheckTaskDefectService; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; + +/** + * 来料检验任务--不良数量Service业务层处理 + * + * @author Open Platform + * @date 2024-01-11 + */ +@Service +public class QcCheckTaskDefectServiceImpl implements IQcCheckTaskDefectService { + @Autowired + private QcCheckTaskDefectMapper qcCheckTaskDefectMapper; + + /** + * 查询来料检验任务--不良数量 + * + * @param recordId 来料检验任务--不良数量主键 + * @return 来料检验任务--不良数量 + */ + @Override + @DS("#header.poolName") + public QcCheckTaskDefect selectQcCheckTaskDefectByRecordId(String recordId) { + return qcCheckTaskDefectMapper.selectQcCheckTaskDefectByRecordId(recordId); + } + + /** + * 查询来料检验任务--不良数量列表 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 来料检验任务--不良数量 + */ + @Override + @DS("#header.poolName") + public List selectQcCheckTaskDefectList(QcCheckTaskDefect qcCheckTaskDefect) { + return qcCheckTaskDefectMapper.selectQcCheckTaskDefectList(qcCheckTaskDefect); + } + + /** + * 新增来料检验任务--不良数量 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertQcCheckTaskDefect(QcCheckTaskDefect qcCheckTaskDefect) { + qcCheckTaskDefect.setRecordId(IdUtils.fastSimpleUUID()); + qcCheckTaskDefect.setCreateBy(SecurityUtils.getUsername()); + qcCheckTaskDefect.setCreateTime(DateUtils.getNowDate()); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + qcCheckTaskDefect.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); + return qcCheckTaskDefectMapper.insertQcCheckTaskDefect(qcCheckTaskDefect); + } + + /** + * 修改来料检验任务--不良数量 + * + * @param qcCheckTaskDefect 来料检验任务--不良数量 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateQcCheckTaskDefect(QcCheckTaskDefect qcCheckTaskDefect) { + qcCheckTaskDefect.setUpdateTime(DateUtils.getNowDate()); + qcCheckTaskDefect.setUpdateBy(SecurityUtils.getUsername()); + return qcCheckTaskDefectMapper.updateQcCheckTaskDefect(qcCheckTaskDefect); + } + + /** + * 批量删除来料检验任务--不良数量 + * + * @param recordIds 需要删除的来料检验任务--不良数量主键 + * @return 结果 + */ + @Override + public int deleteQcCheckTaskDefectByRecordIds(String[] recordIds) { + return qcCheckTaskDefectMapper.deleteQcCheckTaskDefectByRecordIds(recordIds); + } + + /** + * 删除来料检验任务--不良数量信息 + * + * @param recordId 来料检验任务--不良数量主键 + * @return 结果 + */ + @Override + public int deleteQcCheckTaskDefectByRecordId(String recordId) { + return qcCheckTaskDefectMapper.deleteQcCheckTaskDefectByRecordId(recordId); + } + + @Override + public int deleteQcCheckTaskDefectByBelongTo(String belongTo) { + return qcCheckTaskDefectMapper.deleteQcCheckTaskDefectByBelongTo(belongTo); + } + + @Override + public List selectDefectByBelongTo(String belongTo) { + return qcCheckTaskDefectMapper.selectDefectByBelongTo(belongTo); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java index 99118b52a..8968e71fc 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java @@ -21,6 +21,7 @@ import com.op.common.core.web.domain.AjaxResult; import com.op.common.security.utils.SecurityUtils; import com.op.quality.domain.*; import com.op.quality.mapper.*; +import com.op.quality.service.IQcCheckTaskDefectService; import com.op.quality.service.IQcCheckTaskUserService; import com.op.system.api.RemoteUserService; import com.op.system.api.domain.SysUser; @@ -74,6 +75,9 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService @Autowired private QcCheckTaskIncomeMapper qcCheckTaskIncomeMapper; + @Autowired + private IQcCheckTaskDefectService qcCheckTaskDefectService; + /** * 查询生产过程检验任务 * @@ -92,6 +96,12 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService if (StringUtils.isNotBlank(qcCheckTaskUser.getManCodes())) { qcCheckTaskProduce.setCheckManCode(qcCheckTaskUser.getManCodes()); } + //获取不良品检验信息 + List qcCheckTaskDefectList = qcCheckTaskDefectService.selectDefectByBelongTo(recordId); + if (!CollectionUtils.isEmpty(qcCheckTaskDefectList)) { + qcCheckTaskProduce.setDefects(qcCheckTaskDefectList); + } + return qcCheckTaskProduce; } @@ -204,7 +214,17 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService logger.info("检查人新增"+m+"成功"); } } - /**qc_check_task**/ + /** 不良品数据插入 */ + List defectList = qcCheckTaskProduce.getDefects(); + if (CollectionUtils.isEmpty(defectList)) { + return 0; + } else { + for (QcCheckTaskDefect defect : defectList) { + defect.setBelongTo(beLongId); + qcCheckTaskDefectService.insertQcCheckTaskDefect(defect); + } + } + /**qc_check_task**/ qcCheckTaskProduceMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); /**qc_check_task_detail**/ @@ -246,6 +266,19 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService qcCheckTaskUserList.add(qcCheckTaskUser); } qcCheckTaskUserService.updateQcCheckTaskUser(qcCheckTaskUserList); + /** 不良品数据修改 **/ + List defectList = qcCheckTaskProduce.getDefects(); + if (CollectionUtils.isEmpty(defectList)) { + return 0; + } else { + String belongTo = qcCheckTaskProduce.getRecordId(); + qcCheckTaskDefectService.deleteQcCheckTaskDefectByBelongTo(belongTo); + for (QcCheckTaskDefect defect : defectList) { + defect.setBelongTo(belongTo); + qcCheckTaskDefectService.insertQcCheckTaskDefect(defect); + } + } + return qcCheckTaskProduceMapper.updateQcCheckTaskProduce(qcCheckTaskProduce); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java index 8f69798a4..4a6ed61e7 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java @@ -166,4 +166,10 @@ public class QcDefectTypeServiceImpl implements IQcDefectTypeService { public int deleteQcDefectTypeByDefectId(String defectId) { return qcDefectTypeMapper.deleteQcDefectTypeByDefectId(defectId); } + + @Override + @DS("#header.poolName") + public List getDefectTypeListByDefectType(String defectType) { + return qcDefectTypeMapper.getDefectTypeListByDefectType(defectType); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcMaterialGroupDetailServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcMaterialGroupDetailServiceImpl.java index 0d8325da1..cd41c9ec3 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcMaterialGroupDetailServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcMaterialGroupDetailServiceImpl.java @@ -111,4 +111,9 @@ public class QcMaterialGroupDetailServiceImpl implements IQcMaterialGroupDetailS public boolean validationData(String materialCode) { return qcMaterialGroupDetailMapper.validationData(materialCode).size() > 0; } + + @Override + public boolean validationGroupDetailData(String materialCode) { + return qcMaterialGroupDetailMapper.validationGroupDetailData(materialCode).size() > 0; + } } diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml new file mode 100644 index 000000000..03a3d5609 --- /dev/null +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + select record_id, defect_code, defect_subclass, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time, factory_code, del_flag, belong_to, ok_quality, noOk_quality from qc_check_task_defect + + + + + + + + insert into qc_check_task_defect + + record_id, + defect_code, + defect_subclass, + attr1, + attr2, + attr3, + attr4, + create_by, + create_time, + update_by, + update_time, + factory_code, + del_flag, + belong_to, + ok_quality, + noOk_quality, + + + #{recordId}, + #{defectCode}, + #{defectSubclass}, + #{attr1}, + #{attr2}, + #{attr3}, + #{attr4}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{factoryCode}, + #{delFlag}, + #{belongTo}, + #{okQuality}, + #{noOkQuality}, + + + + + update qc_check_task_defect + + defect_code = #{defectCode}, + defect_subclass = #{defectSubclass}, + attr1 = #{attr1}, + attr2 = #{attr2}, + attr3 = #{attr3}, + attr4 = #{attr4}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + factory_code = #{factoryCode}, + del_flag = #{delFlag}, + belong_to = #{belongTo}, + ok_quality = #{okQuality}, + noOk_quality = #{noOkQuality}, + + where record_id = #{recordId} + + + + delete from qc_check_task_defect where record_id = #{recordId} + + + + delete from qc_check_task_defect where record_id in + + #{recordId} + + + + + delete from qc_check_task_defect where belong_to = #{belongTo} + + + + + \ No newline at end of file diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml index 9bc55f475..cf33f6354 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml @@ -128,4 +128,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{defectId} + diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcMaterialGroupDetailMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcMaterialGroupDetailMapper.xml index 47207f0f2..38d271865 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcMaterialGroupDetailMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcMaterialGroupDetailMapper.xml @@ -110,4 +110,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from qc_check_type_project where material_code = #{materialCode} + From dadbb054813acc189511c582d8e336e9ba7e6de7 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Mon, 15 Jan 2024 09:55:59 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/QcCheckTaskIncomeServiceImpl.java | 75 ------------------- .../impl/QcCheckTaskProduceServiceImpl.java | 4 +- .../quality/QcCheckTaskProduceMapper.xml | 3 +- 3 files changed, 4 insertions(+), 78 deletions(-) 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 6ee70097e..adb2c76c1 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 @@ -393,82 +393,7 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { return n ; } - /*来料检验不良OA流程 - * CQ 厂区、 OEMCM 厂名 、 LLLB 来料类别【0、1】、MATNR 物料编号、MAKTX 物料名称、suppliernum 供应商编码 - * supplier 供应商名称、CHARG 生产批号、comeQty 来料数量、testDate 检验日期 、 JYBH 检验编号、 - * BJY 仓储报检人(OEM产品提报人)、WLLY 物料来源、ZCF 转出方、 ZCOEMCM 转出OEM厂名、 - * memo 不合格情况描述 、PZGLBZG QC主管 - */ - private AjaxResult createLLOA(QcCheckTaskIncome qcCheckTaskIncome){ - QcCheckTaskIncome detailInfo = qcCheckTaskIncomeMapper.getTaskInfo(qcCheckTaskIncome.getRecordId()); - - //发起来料检验OA流程 - Map paramMap = new HashMap<>(); - paramMap.put("user",qcCheckTaskIncome.getUpdateBy());//提交人工号 - paramMap.put("requestLevel",0);//流程紧急度 - paramMap.put("requestName","ZL0020-来料检验不合格审批流程(订单:"+qcCheckTaskIncome.getOrderNo()+")");//流程名称 - paramMap.put("workflowId",26235);//该流程对应的唯- workFlowld - - StringBuffer mainObject = new StringBuffer(); - mainObject.append("{"); - mainObject.append("\"CQ\":"+qcCheckTaskIncome.getFactoryCode());//厂区 - mainObject.append(",\"LLLB\":"+0);//来料类别【0、1】 - mainObject.append(",\"MATNR\":"+"\""+detailInfo.getMaterialCode()+"\"");//物料编码 - mainObject.append(",\"MAKTX\":"+"\""+detailInfo.getMaterialName()+"\"");//物料名称 - mainObject.append(",\"suppliernum\":"+"\""+detailInfo.getSupplierCode()+"\"");//供应商编码 - mainObject.append(",\"supplier\":"+"\""+detailInfo.getSupplierName()+"\"");//供应商名称 - mainObject.append(",\"CHARG\":"+"\""+detailInfo.getIncomeBatchNo()+"\"");//生产批号 - mainObject.append(",\"comeQty\":"+"\""+detailInfo.getQuality()+"\"");//来料数量 - mainObject.append(",\"memo\":"+"\""+detailInfo.getRemark()+"\"");//不合格情况描述 - mainObject.append("}"); - - paramMap.put("mainObject",mainObject.toString()); - logger.info("流程Id 26235:"+ JSONObject.toJSONString(paramMap)); - AjaxResult oaR = remoteOpenService.OAInspection(paramMap); - logger.info("流程Id 26235:"+ JSONObject.toJSONString(oaR)); - return oaR; - } - /*生产过程不良OA流程 - * ZL0020-成品检验控制流程:"workflowId": 26234 - * - * --------主表------- - * PGBCJ 申请部门/SSCJ 所属车间/ZRPSN报检人/GJZ关键字/SCLX生产类型/OEM OEM厂名/DH 单号/DW单位/MEMO01 不合格描述/ - * MEMO03 备注/SFXZG 是否需要QC主管审核/PGZG QC主管 - * PGZRJL 品管主任 - * ----------明细表--- - * 请求示例:{"colNames":"PROCODE,PRONAME,SCCODE......","details":[{"PROCODE":"","PRONAME":"",.....},{},{},.....]} - * PROCODE 产品编码、PRONAME 产品名称、SCCODE 批次号、SCTOTAL 数量、 - * BJDATE 报检日期、JYCODE 检验编号、JYDATE 检验日期、JYRESULT检验结果:0合格 2不合格、 - * PROCODEBAK 、BZ 备注、CPCYS 产品抽样数(PC)、JYBHGMS 不合格情况描述*/ - private AjaxResult createProduceOA(QcCheckTaskIncome qcCheckTaskIncome){ - - QcCheckTaskIncome detailInfo = qcCheckTaskIncomeMapper.getTaskInfo(qcCheckTaskIncome.getRecordId()); - - //发起来料检验OA流程 - Map paramMap = new HashMap<>(); - paramMap.put("user",qcCheckTaskIncome.getUpdateBy());//提交人工号qcCheckTaskIncome.getUpdateBy() - paramMap.put("requestLevel",0);//流程紧急度 - paramMap.put("requestName","ZL0010-成品检验控制流程(订单:"+qcCheckTaskIncome.getOrderNo()+")");//流程名称 - paramMap.put("workflowId",26234);//该流程对应的唯- workFlowld - - StringBuffer mainObject = new StringBuffer(); - mainObject.append("{"); - mainObject.append("\"SSCJ\":"+detailInfo.getSupplierName());//所属车间 - mainObject.append(",\"ZRPSN\":"+"\""+qcCheckTaskIncome.getUpdateBy()+"\"");//报检人 - mainObject.append(",\"OEM\":"+"\""+qcCheckTaskIncome.getFactoryCode()+"\"");//OEM厂名 - mainObject.append(",\"DH\":"+"\""+qcCheckTaskIncome.getWorkorderCodeSap()+"\"");//单号 - mainObject.append(",\"MEMO01\":"+"\""+detailInfo.getRemark()+"\"");//不合格情况描述 - mainObject.append("}"); - - - - paramMap.put("mainObject",mainObject.toString()); - logger.info("流程Id 26234:"+ JSONObject.toJSONString(paramMap)); - AjaxResult oaR = remoteOpenService.OAInspection(paramMap); - logger.info("流程Id 26234:"+ JSONObject.toJSONString(oaR)); - return oaR; - } @Override @DS("#header.poolName") public List getDefectList(QcDefectType qcDefectType) { diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java index 8968e71fc..9e7887413 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskProduceServiceImpl.java @@ -90,10 +90,10 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService QcCheckTaskProduce qcCheckTaskProduce = qcCheckTaskProduceMapper.selectQcCheckTaskProduceByRecordId(recordId); //获取拼接好的检验人员信息 QcCheckTaskUser qcCheckTaskUser = qcCheckTaskUserService.selectQcCheckTaskUserByBelongTo(recordId); - if (StringUtils.isNotBlank(qcCheckTaskUser.getManNames())) { + if (qcCheckTaskUser != null && StringUtils.isNotBlank(qcCheckTaskUser.getManNames())) { qcCheckTaskProduce.setCheckManName(qcCheckTaskUser.getManNames()); } - if (StringUtils.isNotBlank(qcCheckTaskUser.getManCodes())) { + if (qcCheckTaskUser != null && StringUtils.isNotBlank(qcCheckTaskUser.getManCodes())) { qcCheckTaskProduce.setCheckManCode(qcCheckTaskUser.getManCodes()); } //获取不良品检验信息 diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml index 4ecd9d7c7..01c7860d6 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml @@ -141,7 +141,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id,check_name checkName from qc_check_type - where type_code = #{typeCode} and del_flag='0' + where del_flag='0' + and type_code = #{typeCode}