diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskUser.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskUser.java new file mode 100644 index 00000000..a914f905 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskUser.java @@ -0,0 +1,212 @@ +package com.op.quality.domain; + +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; + + +public class QcCheckTaskUser extends BaseEntity { + + + /** + * 生产过程检验任务--检验人 qc_check_task_user + * + * @author Open Platform + * @date 2023-12-22 + */ + + private static final long serialVersionUID = 1L; + + /** + * id + */ + private String recordId; + + /** + * 检验任务编号 + */ + @Excel(name = "检验任务编号") + private String checkNo; + + /** + * 检测人工号 + */ + @Excel(name = "检测人工号") + private String checkManCode; + + /** + * 检测人姓名 + */ + @Excel(name = "检测人姓名") + private String checkManName; + + /** + * 预留字段1 + */ + @Excel(name = "预留字段1") + private String attr1; + + /** + * 预留字段2 + */ + @Excel(name = "预留字段2") + private String attr2; + + /** + * 预留字段3 + */ + @Excel(name = "预留字段3") + private String attr3; + + /** + * 预留字段4 + */ + @Excel(name = "预留字段4") + private String attr4; + + /** + * 工厂编码 + */ + @Excel(name = "工厂编码") + private String factoryCode; + + /** + * 删除标识1删除0正常 + */ + private String delFlag; + + /** + * 属于 + */ + private String belongTo; + + private String manNames; + private String manCodes; + + public String getManNames() { + return manNames; + } + + public void setManNames(String manNames) { + this.manNames = manNames; + } + + public String getManCodes() { + return manCodes; + } + + public void setManCodes(String manCodes) { + this.manCodes = manCodes; + } + + public String getRecordId() { + return recordId; + } + + public void setRecordId(String recordId) { + this.recordId = recordId; + } + + public String getCheckNo() { + return checkNo; + } + + public void setCheckNo(String checkNo) { + this.checkNo = checkNo; + } + + public String getCheckManCode() { + return checkManCode; + } + + public void setCheckManCode(String checkManCode) { + this.checkManCode = checkManCode; + } + + public String getCheckManName() { + return checkManName; + } + + public void setCheckManName(String checkManName) { + this.checkManName = checkManName; + } + + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getAttr2() { + return attr2; + } + + public void setAttr2(String attr2) { + this.attr2 = attr2; + } + + public String getAttr3() { + return attr3; + } + + public void setAttr3(String attr3) { + this.attr3 = attr3; + } + + public String getAttr4() { + return attr4; + } + + public void setAttr4(String attr4) { + this.attr4 = attr4; + } + + public String getFactoryCode() { + return factoryCode; + } + + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getBelongTo() { + return belongTo; + } + + public void setBelongTo(String belongTo) { + this.belongTo = belongTo; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("recordId", getRecordId()) + .append("checkNo", getCheckNo()) + .append("checkManCode", getCheckManCode()) + .append("checkManName", getCheckManName()) + .append("attr1", getAttr1()) + .append("attr2", getAttr2()) + .append("attr3", getAttr3()) + .append("attr4", getAttr4()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("factoryCode", getFactoryCode()) + .append("delFlag", getDelFlag()) + .toString(); + } + + +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskIncomeMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskIncomeMapper.java index 92fb3a7f..8ace14a8 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskIncomeMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskIncomeMapper.java @@ -86,4 +86,6 @@ public interface QcCheckTaskIncomeMapper { List getBatchList(QcCheckTaskIncome qcCheckTaskIncome); String getTypeCode(String checkType); + + List selectQcCheckTaskCheckNoByRecordIds(String[] recordIds); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskProduceMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskProduceMapper.java index 958b8dad..4fb4a4af 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskProduceMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskProduceMapper.java @@ -71,4 +71,6 @@ public interface QcCheckTaskProduceMapper { List getCheckTypes(QcCheckType qcCheckType); List getOrderWorks(ProOrderWorkorderDTO qoWork); + + List selectQcCheckTaskCheckNoByRecordIds(String[] recordIds); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskUserMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskUserMapper.java new file mode 100644 index 00000000..28eb3772 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckTaskUserMapper.java @@ -0,0 +1,74 @@ +package com.op.quality.mapper; + +import java.util.List; + +import com.op.quality.domain.QcCheckTaskUser; +import org.apache.ibatis.annotations.Mapper; + +/** + * 来料检验任务--检查人Mapper接口 + * + * @author Open Platform + * @date 2023-12-22 + */ +@Mapper +public interface QcCheckTaskUserMapper { + /** + * 查询来料检验任务--检查人 + * + * @param recordId 来料检验任务--检查人主键 + * @return 来料检验任务--检查人 + */ + public QcCheckTaskUser selectQcCheckTaskUserByRecordId(String recordId); + + /** + * 查询来料检验任务--检查人列表 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 来料检验任务--检查人集合 + */ + public List selectQcCheckTaskUserList(QcCheckTaskUser qcCheckTaskUser); + + /** + * 新增来料检验任务--检查人 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 结果 + */ + public int insertQcCheckTaskUser(QcCheckTaskUser qcCheckTaskUser); + + /** + * 修改来料检验任务--检查人 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 结果 + */ + public int updateQcCheckTaskUser(QcCheckTaskUser qcCheckTaskUser); + + /** + * 删除来料检验任务--检查人 + * + * @param recordId 来料检验任务--检查人主键 + * @return 结果 + */ + public int deleteQcCheckTaskUserByRecordId(String recordId); + + /** + * 批量删除来料检验任务--检查人 + * + * @param recordIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQcCheckTaskUserByRecordIds(String[] recordIds); + + /** + * 批量插入检验人数据 + */ + public int insertQcCheckTaskUserList(List qcCheckTaskUserList); + + public int deleteQcCheckTaskUserByBelongTo(String belongTo); + + public QcCheckTaskUser selectQcCheckTaskUserByBelongTo(String belongTo); + + public int deleteQcCheckTaskUserByBelongTos(String[] belongToArray); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskUserService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskUserService.java new file mode 100644 index 00000000..c588ab9f --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskUserService.java @@ -0,0 +1,71 @@ +package com.op.quality.service; + +import java.util.List; +import com.op.quality.domain.QcCheckTaskUser; + +/** + * 来料检验任务--检查人Service接口 + * + * @author Open Platform + * @date 2023-12-22 + */ +public interface IQcCheckTaskUserService { + /** + * 查询来料检验任务--检查人 + * + * @param recordId 来料检验任务--检查人主键 + * @return 来料检验任务--检查人 + */ + public QcCheckTaskUser selectQcCheckTaskUserByRecordId(String recordId); + + /** + * 查询来料检验任务--检查人列表 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 来料检验任务--检查人集合 + */ + public List selectQcCheckTaskUserList(QcCheckTaskUser qcCheckTaskUser); + + /** + * 新增来料检验任务--检查人 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 结果 + */ + public int insertQcCheckTaskUser(QcCheckTaskUser qcCheckTaskUser); + + /** + * 修改来料检验任务--检查人 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 结果 + */ + public int updateQcCheckTaskUser(List qcCheckTaskUser); + + /** + * 批量删除来料检验任务--检查人 + * + * @param recordIds 需要删除的来料检验任务--检查人主键集合 + * @return 结果 + */ + public int deleteQcCheckTaskUserByRecordIds(String[] recordIds); + + public int deleteQcCheckTaskUserByBelongTos(String[] belongToArray); + + /** + * 删除来料检验任务--检查人信息 + * + * @param recordId 来料检验任务--检查人主键 + * @return 结果 + */ + public int deleteQcCheckTaskUserByRecordId(String recordId); + + /** + * 用户数据批量插入 + */ + public int insertQcCheckTaskUserList(List qcCheckTaskUserList); + /** + * 根据任务编号查询检验人 + */ + public QcCheckTaskUser selectQcCheckTaskUserByBelongTo(String belongTo); +} 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 767fffdf..8b4a925a 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 @@ -15,6 +15,7 @@ import com.op.common.security.utils.SecurityUtils; import com.op.quality.domain.*; import com.op.quality.mapper.*; import com.op.quality.service.IQcCheckTaskProduceService; +import com.op.quality.service.IQcCheckTaskUserService; import com.op.system.api.domain.SysUser; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -58,6 +59,9 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { @Autowired private QcCheckUnqualifiedMapper qcCheckUnqualifiedMapper; + @Autowired + private IQcCheckTaskUserService qcCheckTaskUserService; + /** * 查询来料检验 * @@ -139,7 +143,25 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { qcCheckTaskIncome.setCreateTime(nowDate); //String typeCode = qcCheckTaskIncomeMapper.getTypeCode(qcCheckTaskIncome.getCheckType()); qcCheckTaskIncome.setTypeCode("material");//大检验节点 + /**qc_task_user start**/ + String checkManName = qcCheckTaskIncome.getCheckManName(); + String checkManCode = qcCheckTaskIncome.getCheckManCode(); + qcCheckTaskIncome.setCheckManName(""); + qcCheckTaskIncome.setCheckManCode(""); + String[] splitNames = checkManName.split(","); + String[] splitCodes = checkManCode.split(","); + List qcCheckTaskUserList = new ArrayList<>(); + for (int i = 0; i < splitNames.length; i++) { + QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser(); + qcCheckTaskUser.setCheckManName(splitNames[i]); + qcCheckTaskUser.setCheckManCode(splitCodes[i]); + qcCheckTaskUser.setCheckNo(qcCheckTaskIncome.getCheckNo()); + qcCheckTaskUser.setBelongTo(beLongId); + qcCheckTaskUserList.add(qcCheckTaskUser); + } qcCheckTaskIncomeMapper.insertQcCheckTaskIncome(qcCheckTaskIncome); + //检验人插入 + qcCheckTaskUserService.insertQcCheckTaskUserList(qcCheckTaskUserList); /**qc_check_task_detail**/ for(QcCheckTaskDetail item:items){ item.setRecordId(IdUtils.fastSimpleUUID()); @@ -162,6 +184,24 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { @DS("#header.poolName") public int updateQcCheckTaskIncome(QcCheckTaskIncome qcCheckTaskIncome) { qcCheckTaskIncome.setUpdateTime(DateUtils.getNowDate()); + /**qc_task_user**/ + String checkManName = qcCheckTaskIncome.getCheckManName(); + String checkManCode = qcCheckTaskIncome.getCheckManCode(); + qcCheckTaskIncome.setCheckManName(""); + qcCheckTaskIncome.setCheckManCode(""); + String[] splitNames = checkManName.split(","); + String[] splitCodes = checkManCode.split(","); + + List qcCheckTaskUserList = new ArrayList<>(); + for (int i = 0; i < splitNames.length; i++) { + QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser(); + qcCheckTaskUser.setCheckManName(splitNames[i]); + qcCheckTaskUser.setCheckManCode(splitCodes[i]); + qcCheckTaskUser.setCheckNo(qcCheckTaskIncome.getCheckNo()); + qcCheckTaskUser.setBelongTo(qcCheckTaskIncome.getRecordId()); + qcCheckTaskUserList.add(qcCheckTaskUser); + } + qcCheckTaskUserService.updateQcCheckTaskUser(qcCheckTaskUserList); return qcCheckTaskIncomeMapper.updateQcCheckTaskIncome(qcCheckTaskIncome); } @@ -174,6 +214,7 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { @Override @DS("#header.poolName") public int deleteQcCheckTaskIncomeByRecordIds(String[] recordIds) { + qcCheckTaskUserService.deleteQcCheckTaskUserByBelongTos(recordIds); return qcCheckTaskIncomeMapper.deleteQcCheckTaskIncomeByRecordIds(recordIds); } 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 769112fb..32e76b3d 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 @@ -1,5 +1,6 @@ package com.op.quality.service.impl; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; @@ -22,6 +23,7 @@ import com.op.quality.domain.*; import com.op.quality.mapper.QcCheckTaskDetailMapper; import com.op.quality.mapper.QcCheckTypeProjectMapper; import com.op.quality.mapper.QcMaterialGroupDetailMapper; +import com.op.quality.service.IQcCheckTaskUserService; import com.op.system.api.RemoteUserService; import com.op.system.api.domain.SysUser; import com.op.system.api.domain.mes.ProOrderWorkorderDTO; @@ -31,7 +33,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.quality.mapper.QcCheckTaskProduceMapper; import com.op.quality.service.IQcCheckTaskProduceService; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -52,42 +58,55 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService @Autowired private QcCheckTaskProduceMapper qcCheckTaskProduceMapper; - @Autowired - private QcCheckTypeProjectMapper qcCheckTypeProjectMapper; + @Autowired + private QcCheckTypeProjectMapper qcCheckTypeProjectMapper; - @Autowired - private QcMaterialGroupDetailMapper qcMaterialGroupDetailMapper; + @Autowired + private QcMaterialGroupDetailMapper qcMaterialGroupDetailMapper; + + @Autowired + private QcCheckTaskDetailMapper qcCheckTaskDetailMapper; - @Autowired - private QcCheckTaskDetailMapper qcCheckTaskDetailMapper; @Autowired private RemoteUserService remoteUserService; - /** - * 查询生产过程检验任务 - * - * @param recordId 生产过程检验任务主键 - * @return 生产过程检验任务 - */ - @Override - @DS("#header.poolName") - public QcCheckTaskProduce selectQcCheckTaskProduceByRecordId(String recordId) { - return qcCheckTaskProduceMapper.selectQcCheckTaskProduceByRecordId(recordId); - } + @Autowired + private IQcCheckTaskUserService qcCheckTaskUserService; - /** - * 查询生产过程检验任务列表 - * - * @param qcCheckTaskProduce 生产过程检验任务 - * @return 生产过程检验任务 - */ - @Override - @DS("#header.poolName") - public List selectQcCheckTaskProduceList(QcCheckTaskProduce qcCheckTaskProduce) { - qcCheckTaskProduce.setDelFlag("0"); - qcCheckTaskProduce.setTypeCode("produce"); - return qcCheckTaskProduceMapper.selectQcCheckTaskProduceList(qcCheckTaskProduce); - } + /** + * 查询生产过程检验任务 + * + * @param recordId 生产过程检验任务主键 + * @return 生产过程检验任务 + */ + @Override + @DS("#header.poolName") + public QcCheckTaskProduce selectQcCheckTaskProduceByRecordId(String recordId) { + QcCheckTaskProduce qcCheckTaskProduce = qcCheckTaskProduceMapper.selectQcCheckTaskProduceByRecordId(recordId); + //获取拼接好的检验人员信息 + QcCheckTaskUser qcCheckTaskUser = qcCheckTaskUserService.selectQcCheckTaskUserByBelongTo(recordId); + if (StringUtils.isNotBlank(qcCheckTaskUser.getManNames())) { + qcCheckTaskProduce.setCheckManName(qcCheckTaskUser.getManNames()); + } + if (StringUtils.isNotBlank(qcCheckTaskUser.getManCodes())) { + qcCheckTaskProduce.setCheckManCode(qcCheckTaskUser.getManCodes()); + } + return qcCheckTaskProduce; + } + + /** + * 查询生产过程检验任务列表 + * + * @param qcCheckTaskProduce 生产过程检验任务 + * @return 生产过程检验任务 + */ + @Override + @DS("#header.poolName") + public List selectQcCheckTaskProduceList(QcCheckTaskProduce qcCheckTaskProduce) { + qcCheckTaskProduce.setDelFlag("0"); + qcCheckTaskProduce.setTypeCode("produce"); + return qcCheckTaskProduceMapper.selectQcCheckTaskProduceList(qcCheckTaskProduce); + } /** * 新增生产过程检验任务 @@ -115,8 +134,8 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService int liushuiNum = qcCheckTaskProduceMapper.getTodayMaxNum(qcCheckTaskProduce); String liushuiStr = String.format("%04d", liushuiNum); - String createBy = SecurityUtils.getUsername(); - Date nowDate= DateUtils.getNowDate(); + String createBy = SecurityUtils.getUsername(); + Date nowDate = DateUtils.getNowDate(); qcCheckTaskProduce.setCheckNo(bpDD+liushuiStr); @@ -141,37 +160,72 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService return 0;//没有找到检测项目 } - /**qc_check_task**/ - String beLongId = IdUtils.fastSimpleUUID(); - qcCheckTaskProduce.setRecordId(beLongId); - qcCheckTaskProduce.setFactoryCode(factoryCode); - qcCheckTaskProduce.setCreateTime(nowDate); - qcCheckTaskProduce.setTypeCode("produce");//大检验节点 - qcCheckTaskProduceMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); - /**qc_check_task_detail**/ - for(QcCheckTaskDetail item:items){ - item.setRecordId(IdUtils.fastSimpleUUID()); - item.setBelongTo(beLongId); - item.setCreateTime(nowDate); - item.setCreateBy(createBy); - item.setFactoryCode(factoryCode); - item.setStatus("Y"); - } - return qcCheckTaskDetailMapper.addBatch(items); - } + /**qc_check_task**/ + String beLongId = IdUtils.fastSimpleUUID(); + qcCheckTaskProduce.setRecordId(beLongId); + qcCheckTaskProduce.setFactoryCode(factoryCode); + qcCheckTaskProduce.setCreateTime(nowDate); + qcCheckTaskProduce.setTypeCode("produce");//大检验节点 + /**qc_task_user start**/ + String checkManName = qcCheckTaskProduce.getCheckManName(); + String checkManCode = qcCheckTaskProduce.getCheckManCode(); + qcCheckTaskProduce.setCheckManName(""); + qcCheckTaskProduce.setCheckManCode(""); + String[] splitNames = checkManName.split(","); + String[] splitCodes = checkManCode.split(","); + List qcCheckTaskUserList = new ArrayList<>(); + for (int i = 0; i < splitNames.length; i++) { + QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser(); + qcCheckTaskUser.setCheckManName(splitNames[i]); + qcCheckTaskUser.setCheckManCode(splitCodes[i]); + qcCheckTaskUser.setCheckNo(qcCheckTaskProduce.getCheckNo()); + qcCheckTaskUser.setBelongTo(beLongId); + qcCheckTaskUserList.add(qcCheckTaskUser); + } + qcCheckTaskProduceMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); + //检验人插入 + qcCheckTaskUserService.insertQcCheckTaskUserList(qcCheckTaskUserList); + /**qc_check_task_detail**/ + for (QcCheckTaskDetail item : items) { + item.setRecordId(IdUtils.fastSimpleUUID()); + item.setBelongTo(beLongId); + item.setCreateTime(nowDate); + item.setCreateBy(createBy); + item.setFactoryCode(factoryCode); + item.setStatus("Y"); + } + return qcCheckTaskDetailMapper.addBatch(items); + } - /** - * 修改生产过程检验任务 - * - * @param qcCheckTaskProduce 生产过程检验任务 - * @return 结果 - */ - @Override - @DS("#header.poolName") - public int updateQcCheckTaskProduce(QcCheckTaskProduce qcCheckTaskProduce) { - qcCheckTaskProduce.setUpdateTime(DateUtils.getNowDate()); - return qcCheckTaskProduceMapper.updateQcCheckTaskProduce(qcCheckTaskProduce); - } + /** + * 修改生产过程检验任务 + * + * @param qcCheckTaskProduce 生产过程检验任务 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateQcCheckTaskProduce(QcCheckTaskProduce qcCheckTaskProduce) { + qcCheckTaskProduce.setUpdateTime(DateUtils.getNowDate()); + /**qc_task_user**/ + String checkManName = qcCheckTaskProduce.getCheckManName(); + String checkManCode = qcCheckTaskProduce.getCheckManCode(); + qcCheckTaskProduce.setCheckManName(""); + qcCheckTaskProduce.setCheckManCode(""); + String[] splitNames = checkManName.split(","); + String[] splitCodes = checkManCode.split(","); + List qcCheckTaskUserList = new ArrayList<>(); + for (int i = 0; i < splitNames.length; i++) { + QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser(); + qcCheckTaskUser.setCheckManName(splitNames[i]); + qcCheckTaskUser.setCheckManCode(splitCodes[i]); + qcCheckTaskUser.setCheckNo(qcCheckTaskProduce.getCheckNo()); + qcCheckTaskUser.setBelongTo(qcCheckTaskProduce.getRecordId()); + qcCheckTaskUserList.add(qcCheckTaskUser); + } + qcCheckTaskUserService.updateQcCheckTaskUser(qcCheckTaskUserList); + return qcCheckTaskProduceMapper.updateQcCheckTaskProduce(qcCheckTaskProduce); + } /** * 批量删除生产过程检验任务 @@ -182,6 +236,7 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService @Override @DS("#header.poolName") public int deleteQcCheckTaskProduceByRecordIds(String[] recordIds) { + qcCheckTaskUserService.deleteQcCheckTaskUserByBelongTos(recordIds); return qcCheckTaskProduceMapper.deleteQcCheckTaskProduceByRecordIds(recordIds); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskUserServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskUserServiceImpl.java new file mode 100644 index 00000000..ea4c27ec --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskUserServiceImpl.java @@ -0,0 +1,155 @@ +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.StringUtils; +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.QcCheckTaskUserMapper; +import com.op.quality.domain.QcCheckTaskUser; +import com.op.quality.service.IQcCheckTaskUserService; +import org.springframework.util.CollectionUtils; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; + +/** + * 来料检验任务--检查人Service业务层处理 + * + * @author Open Platform + * @date 2023-12-22 + */ +@Service +public class QcCheckTaskUserServiceImpl implements IQcCheckTaskUserService { + @Autowired + private QcCheckTaskUserMapper qcCheckTaskUserMapper; + + /** + * 查询来料检验任务--检查人 + * + * @param recordId 来料检验任务--检查人主键 + * @return 来料检验任务--检查人 + */ + @Override + @DS("#header.poolName") + public QcCheckTaskUser selectQcCheckTaskUserByRecordId(String recordId) { + return qcCheckTaskUserMapper.selectQcCheckTaskUserByRecordId(recordId); + } + + /** + * 查询来料检验任务--检查人列表 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 来料检验任务--检查人 + */ + @Override + @DS("#header.poolName") + public List selectQcCheckTaskUserList(QcCheckTaskUser qcCheckTaskUser) { + return qcCheckTaskUserMapper.selectQcCheckTaskUserList(qcCheckTaskUser); + } + + /** + * 新增来料检验任务--检查人 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertQcCheckTaskUser(QcCheckTaskUser qcCheckTaskUser) { + qcCheckTaskUser.setCreateTime(DateUtils.getNowDate()); + return qcCheckTaskUserMapper.insertQcCheckTaskUser(qcCheckTaskUser); + } + + /** + * 修改来料检验任务--检查人 + * + * @param qcCheckTaskUser 来料检验任务--检查人 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateQcCheckTaskUser(List qcCheckTaskUserList) { + if (CollectionUtils.isEmpty(qcCheckTaskUserList)){ + return 0; + } + String belongTo = qcCheckTaskUserList.get(0).getBelongTo(); + //根据belongTo删除 + qcCheckTaskUserMapper.deleteQcCheckTaskUserByBelongTo(belongTo); + + //获取当前所选工厂 + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + String factoryCode = request.getHeader(key.substring(8)).replace("ds_", ""); + //遍历赋值 + for (QcCheckTaskUser qcCheckTaskUser : qcCheckTaskUserList){ + qcCheckTaskUser.setRecordId(IdUtils.fastSimpleUUID()); + qcCheckTaskUser.setCreateTime(DateUtils.getNowDate()); + qcCheckTaskUser.setCreateBy(SecurityUtils.getUsername()); + qcCheckTaskUser.setFactoryCode(factoryCode); + } + //重新插入数据 + return qcCheckTaskUserMapper.insertQcCheckTaskUserList(qcCheckTaskUserList); + } + + /** + * 批量删除来料检验任务--检查人 + * + * @param recordIds 需要删除的来料检验任务--检查人主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcCheckTaskUserByRecordIds(String[] recordIds) { + return qcCheckTaskUserMapper.deleteQcCheckTaskUserByRecordIds(recordIds); + } + + @Override + @DS("#header.poolName") + public int deleteQcCheckTaskUserByBelongTos(String[] belongToArray) { + return qcCheckTaskUserMapper.deleteQcCheckTaskUserByBelongTos(belongToArray); + } + + /** + * 删除来料检验任务--检查人信息 + * + * @param recordId 来料检验任务--检查人主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcCheckTaskUserByRecordId(String recordId) { + return qcCheckTaskUserMapper.deleteQcCheckTaskUserByRecordId(recordId); + } + + @Override + @DS("#header.poolName") + public int insertQcCheckTaskUserList(List qcCheckTaskUserList) { + if (CollectionUtils.isEmpty(qcCheckTaskUserList)){ + return 0; + } + //获取当前所选工厂 + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + String factoryCode = request.getHeader(key.substring(8)).replace("ds_", ""); + //遍历赋值 + for (QcCheckTaskUser qcCheckTaskUser : qcCheckTaskUserList){ + qcCheckTaskUser.setRecordId(IdUtils.fastSimpleUUID()); + qcCheckTaskUser.setCreateTime(DateUtils.getNowDate()); + qcCheckTaskUser.setCreateBy(SecurityUtils.getUsername()); + qcCheckTaskUser.setFactoryCode(factoryCode); + } + return qcCheckTaskUserMapper.insertQcCheckTaskUserList(qcCheckTaskUserList); + } + + @Override + @DS("#header.poolName") + public QcCheckTaskUser selectQcCheckTaskUserByBelongTo(String belongTo) { + return qcCheckTaskUserMapper.selectQcCheckTaskUserByBelongTo(belongTo); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskWarehousingServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskWarehousingServiceImpl.java index 3fd4328e..bdc73e26 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskWarehousingServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskWarehousingServiceImpl.java @@ -1,24 +1,24 @@ package com.op.quality.service.impl; +import java.util.ArrayList; import java.util.Date; import java.util.List; +import ch.qos.logback.core.net.SyslogOutputStream; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.StringUtils; import com.op.common.core.utils.uuid.IdUtils; import com.op.common.security.utils.SecurityUtils; -import com.op.quality.domain.QcCheckTaskDetail; -import com.op.quality.domain.QcCheckTypeProject; -import com.op.quality.domain.QcMaterialGroupDetail; +import com.op.quality.domain.*; import com.op.quality.mapper.QcCheckTaskDetailMapper; import com.op.quality.mapper.QcCheckTypeProjectMapper; import com.op.quality.mapper.QcMaterialGroupDetailMapper; +import com.op.quality.service.IQcCheckTaskUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.quality.mapper.QcCheckTaskWarehousingMapper; -import com.op.quality.domain.QcCheckTaskWarehousing; import com.op.quality.service.IQcCheckTaskWarehousingService; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -47,6 +47,9 @@ public class QcCheckTaskWarehousingServiceImpl implements IQcCheckTaskWarehousin @Autowired private QcCheckTaskDetailMapper qcCheckTaskDetailMapper; + @Autowired + private IQcCheckTaskUserService qcCheckTaskUserService; + /** * 查询成品入库检验任务 * @@ -128,7 +131,25 @@ public class QcCheckTaskWarehousingServiceImpl implements IQcCheckTaskWarehousin qcCheckTaskWarehousing.setFactoryCode(factoryCode); qcCheckTaskWarehousing.setCreateTime(nowDate); qcCheckTaskWarehousing.setTypeCode("product");//大检验节点 + /**qc_task_user start**/ + String checkManName = qcCheckTaskWarehousing.getCheckManName(); + String checkManCode = qcCheckTaskWarehousing.getCheckManCode(); + qcCheckTaskWarehousing.setCheckManName(""); + qcCheckTaskWarehousing.setCheckManCode(""); + String[] splitNames = checkManName.split(","); + String[] splitCodes = checkManCode.split(","); + List qcCheckTaskUserList = new ArrayList<>(); + for (int i = 0; i < splitNames.length; i++) { + QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser(); + qcCheckTaskUser.setCheckManName(splitNames[i]); + qcCheckTaskUser.setCheckManCode(splitCodes[i]); + qcCheckTaskUser.setCheckNo(qcCheckTaskWarehousing.getCheckNo()); + qcCheckTaskUser.setBelongTo(beLongId); + qcCheckTaskUserList.add(qcCheckTaskUser); + } qcCheckTaskWarehousingMapper.insertQcCheckTaskWarehousing(qcCheckTaskWarehousing); + //检验人插入 + qcCheckTaskUserService.insertQcCheckTaskUserList(qcCheckTaskUserList); /**qc_check_task_detail**/ for(QcCheckTaskDetail item:items){ item.setRecordId(IdUtils.fastSimpleUUID()); @@ -151,6 +172,23 @@ public class QcCheckTaskWarehousingServiceImpl implements IQcCheckTaskWarehousin @DS("#header.poolName") public int updateQcCheckTaskWarehousing(QcCheckTaskWarehousing qcCheckTaskWarehousing) { qcCheckTaskWarehousing.setUpdateTime(DateUtils.getNowDate()); + /**qc_task_user**/ + String checkManName = qcCheckTaskWarehousing.getCheckManName(); + String checkManCode = qcCheckTaskWarehousing.getCheckManCode(); + qcCheckTaskWarehousing.setCheckManName(""); + qcCheckTaskWarehousing.setCheckManCode(""); + String[] splitNames = checkManName.split(","); + String[] splitCodes = checkManCode.split(","); + List qcCheckTaskUserList = new ArrayList<>(); + for (int i = 0; i < splitNames.length; i++) { + QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser(); + qcCheckTaskUser.setCheckManName(splitNames[i]); + qcCheckTaskUser.setCheckManCode(splitCodes[i]); + qcCheckTaskUser.setCheckNo(qcCheckTaskWarehousing.getCheckNo()); + qcCheckTaskUser.setBelongTo(qcCheckTaskWarehousing.getRecordId()); + qcCheckTaskUserList.add(qcCheckTaskUser); + } + qcCheckTaskUserService.updateQcCheckTaskUser(qcCheckTaskUserList); return qcCheckTaskWarehousingMapper.updateQcCheckTaskWarehousing(qcCheckTaskWarehousing); } @@ -163,6 +201,7 @@ public class QcCheckTaskWarehousingServiceImpl implements IQcCheckTaskWarehousin @Override @DS("#header.poolName") public int deleteQcCheckTaskWarehousingByRecordIds(String[] recordIds) { + qcCheckTaskUserService.deleteQcCheckTaskUserByBelongTos(recordIds); return qcCheckTaskWarehousingMapper.deleteQcCheckTaskWarehousingByRecordIds(recordIds); } 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 429cf9f7..61a0faf9 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 @@ -304,4 +304,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{recordId} + + 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 9d311227..3dfb0c71 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 @@ -172,7 +172,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" del_flag, check_type, type_code, - sample_quality, #{recordId}, @@ -210,7 +209,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{delFlag}, #{checkType}, #{typeCode}, - #{sampleQuality}, @@ -249,7 +247,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update_time = #{updateTime}, factory_code = #{factoryCode}, del_flag = #{delFlag}, - sample_quality = #{sampleQuality}, where record_id = #{recordId} @@ -264,4 +261,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{recordId} + + diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskUserMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskUserMapper.xml new file mode 100644 index 00000000..06375fb7 --- /dev/null +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskUserMapper.xml @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + select record_id, check_no, check_man_code, check_man_name, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time, factory_code, del_flag from qc_check_task_user + + + + + + + + insert into qc_check_task_user + + record_id, + check_no, + check_man_code, + check_man_name, + attr1, + attr2, + attr3, + attr4, + create_by, + create_time, + update_by, + update_time, + factory_code, + del_flag, + belong_to, + + + #{recordId}, + #{checkNo}, + #{checkManCode}, + #{checkManName}, + #{attr1}, + #{attr2}, + #{attr3}, + #{attr4}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{factoryCode}, + #{delFlag}, + #{belongTo}, + + + + + update qc_check_task_user + + check_no = #{checkNo}, + check_man_code = #{checkManCode}, + check_man_name = #{checkManName}, + 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}, + + where record_id = #{recordId} + + + + delete from qc_check_task_user where record_id = #{recordId} + + + + delete from qc_check_task_user where record_id in + + #{recordId} + + + + + delete from qc_check_task_user where belong_to = #{belongTo} + + + + insert into qc_check_task_user( + record_id, + check_no, + check_man_code, + check_man_name, + attr1, + attr2, + attr3, + attr4, + create_by, + create_time, + update_by, + update_time, + factory_code, + del_flag, + belong_to + ) + values + + ( + #{item.recordId}, + #{item.checkNo}, + #{item.checkManCode}, + #{item.checkManName}, + #{item.attr1}, + #{item.attr2}, + #{item.attr3}, + #{item.attr4}, + #{item.createBy}, + #{item.createTime}, + #{item.updateBy}, + #{item.updateTime}, + #{item.factoryCode}, + #{item.delFlag}, + #{item.belongTo} + ) + + + + + + + delete from qc_check_task_user where belong_to in + + #{belongTo} + + + + \ No newline at end of file