diff --git a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java index 198a5f2d..e7b079ed 100644 --- a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java +++ b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java @@ -276,25 +276,38 @@ public class OpenServiceImpl implements OpenService { @Override public AjaxResult machineRepair(EquRepairOrderDTO equRepairOrderDTO) { + if (equRepairOrderDTO.getFactory() == null) { + return error("工厂源不可为空!"); + } DynamicDataSourceContextHolder.push("ds_" + equRepairOrderDTO.getFactory());// 这是数据源的key // 创建报修单 DeviceRepairOrder equRepairOrder = new DeviceRepairOrder(); // 获取故障报修流水号 String serialNum = String.format("%03d", openMapper.selectOrderCodeSerialNumber()); + if (equRepairOrderDTO.getEquipmentCode() == null) { + return error("设备信息不可为空!"); + } equRepairOrder.setOrderCode("BX" + DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equRepairOrderDTO.getEquipmentCode() + serialNum);// 报修单号 equRepairOrder.setOrderId(IdUtils.fastSimpleUUID());// id equRepairOrder.setEquipmentCode(equRepairOrderDTO.getEquipmentCode()); equRepairOrder.setOrderSource("上位机");// 故障来源 equRepairOrder.setOrderTime(DateUtils.getNowDate());// 报修时间 equRepairOrder.setOrderBreakdownTime(DateUtils.getNowDate());// 故障时间 - equRepairOrder.setOrderRepairmanCode(equRepairOrderDTO.getUserName());// 用户账号 - equRepairOrder.setOrderRepairmanName(equRepairOrderDTO.getUserNickName());// 用户名称 + if (equRepairOrderDTO.getUserName() != null) { + equRepairOrder.setOrderRepairmanCode(equRepairOrderDTO.getUserName());// 用户账号 + } + if (equRepairOrderDTO.getUserNickName() != null) { + equRepairOrder.setOrderRepairmanName(equRepairOrderDTO.getUserNickName());// 用户名称 + } + equRepairOrder.setCreateTime(DateUtils.getNowDate()); equRepairOrder.setCreateBy(equRepairOrderDTO.getUserName()); equRepairOrder.setOrderStatus("待审核");// 报修单状态 equRepairOrder.setFactoryCode(equRepairOrderDTO.getFactory());// 工厂 - equRepairOrder.setOrderConnection(equRepairOrderDTO.getPhoneNumber());// 联系方式 + if (equRepairOrderDTO.getPhoneNumber() != null) { + equRepairOrder.setOrderConnection(equRepairOrderDTO.getPhoneNumber());// 联系方式 + } openMapper.insertEquRepairOrder(equRepairOrder); @@ -397,6 +410,7 @@ public class OpenServiceImpl implements OpenService { String requestName = paramMap.get("requestName").toString(); String workflowId = paramMap.get("workflowId").toString(); String mainObject = paramMap.get("mainObject").toString(); + String details = paramMap.get("details").toString(); // Building the postData string using StringBuilder StringBuilder postDataBuilder = new StringBuilder(); @@ -406,7 +420,7 @@ public class OpenServiceImpl implements OpenService { .append("&workflowId=").append(workflowId) .append("&mainObject=").append(URLEncoder.encode(mainObject, StandardCharsets.UTF_8.toString())); if (Constants.WORKFLOWID_ZL0020.equals(workflowId)) { - postDataBuilder.append("&details=").append(URLEncoder.encode(mainObject, StandardCharsets.UTF_8.toString())); + postDataBuilder.append("&details=").append(URLEncoder.encode(details, StandardCharsets.UTF_8.toString())); } String postData = postDataBuilder.toString(); String result = HttpUtils.sendPostOA(oa_url, postData); diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskProduceController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskProduceController.java index efe7536e..d536705c 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskProduceController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskProduceController.java @@ -49,15 +49,15 @@ public class QcCheckTaskProduceController extends BaseController { @GetMapping("/list") public TableDataInfo list(QcCheckTaskProduce qcCheckTaskProduce) { - //默认时间范围T 00:00:00~T+1 00:00:00 - if(StringUtils.isEmpty(qcCheckTaskProduce.getIncomeTimeStart())){ - qcCheckTaskProduce.setIncomeTimeStart(DateUtils.getDate()+" 00:00:00");//start - LocalDate date = LocalDate.now(); - LocalDate dateEnd = date.plusDays(1); - DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - String dateEndStr = dtf.format(dateEnd)+" 00:00:00"; - qcCheckTaskProduce.setIncomeTimeEnd(dateEndStr);//end - } +// //默认时间范围T 00:00:00~T+1 00:00:00 +// if(StringUtils.isEmpty(qcCheckTaskProduce.getIncomeTimeStart())){ +// qcCheckTaskProduce.setIncomeTimeStart(DateUtils.getDate()+" 00:00:00");//start +// LocalDate date = LocalDate.now(); +// LocalDate dateEnd = date.plusDays(1); +// DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd"); +// String dateEndStr = dtf.format(dateEnd)+" 00:00:00"; +// qcCheckTaskProduce.setIncomeTimeEnd(dateEndStr);//end +// } // if(StringUtils.isEmpty(qcCheckTaskProduce.getCheckTimeStart())){ // qcCheckTaskProduce.setCheckTimeStart(qcCheckTaskProduce.getProduceDateStart());//start @@ -77,15 +77,15 @@ public class QcCheckTaskProduceController extends BaseController { @PostMapping("/export") public void export(HttpServletResponse response, QcCheckTaskProduce qcCheckTaskProduce) { - //默认时间范围T 00:00:00~T+1 00:00:00 - if(StringUtils.isEmpty(qcCheckTaskProduce.getIncomeTimeStart())){ - qcCheckTaskProduce.setIncomeTimeStart(DateUtils.getDate()+" 00:00:00");//start - LocalDate date = LocalDate.now(); - LocalDate dateEnd = date.plusDays(1); - DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - String dateEndStr = dtf.format(dateEnd)+" 00:00:00"; - qcCheckTaskProduce.setIncomeTimeEnd(dateEndStr);//end - } +// //默认时间范围T 00:00:00~T+1 00:00:00 +// if(StringUtils.isEmpty(qcCheckTaskProduce.getIncomeTimeStart())){ +// qcCheckTaskProduce.setIncomeTimeStart(DateUtils.getDate()+" 00:00:00");//start +// LocalDate date = LocalDate.now(); +// LocalDate dateEnd = date.plusDays(1); +// DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd"); +// String dateEndStr = dtf.format(dateEnd)+" 00:00:00"; +// qcCheckTaskProduce.setIncomeTimeEnd(dateEndStr);//end +// } // if(StringUtils.isEmpty(qcCheckTaskProduce.getCheckTimeStart())){ // qcCheckTaskProduce.setCheckTimeStart(qcCheckTaskProduce.getProduceDateStart());//start diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java index 8fb6c60d..a4ab7034 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java @@ -80,7 +80,7 @@ public class QcStaticTableController extends BaseController { /** * 生产过程质量报表 */ - @RequiresPermissions("quality:gcTableProduce:list") + @RequiresPermissions("quality:qcTableProduce:list") @GetMapping("/getProduceChartData") public QcStaticTable getProduceChartData(QcStaticTable qcStaticTable) { QcStaticTable resultdto = new QcStaticTable(); diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskIncome.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskIncome.java index eef2a553..e51f28c6 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskIncome.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskIncome.java @@ -140,6 +140,24 @@ public class QcCheckTaskIncome extends BaseEntity { private String fileList; private List files; private String remark; + private String belongTo; + private String oldBelongTo; + + public String getOldBelongTo() { + return oldBelongTo; + } + + public void setOldBelongTo(String oldBelongTo) { + this.oldBelongTo = oldBelongTo; + } + + public String getBelongTo() { + return belongTo; + } + + public void setBelongTo(String belongTo) { + this.belongTo = belongTo; + } @Override public String getRemark() { diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckUnqualifiedMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckUnqualifiedMapper.java index 6a1951e7..8e0e0b29 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckUnqualifiedMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckUnqualifiedMapper.java @@ -84,4 +84,9 @@ public interface QcCheckUnqualifiedMapper { List getProductWorkOrder(QcCheckTaskIncome qcCheckTaskIncome); void updatePutStatus(QcCheckTaskIncome qcCheckTaskIncome); + + int repeatCheckTask(QcCheckTaskIncome recheck); + int repeatCheckTaskDefect(QcCheckTaskIncome recheck); + int repeatCheckTaskDetail(QcCheckTaskIncome recheck); + int repeatCheckTaskUser(QcCheckTaskIncome recheck); } 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 adb2c76c..493ca14e 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 @@ -494,7 +494,8 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { noOkQquality = noOkQquality.add(defect.getNoOkQuality()); } qcCheckTask.setNoOkQuality(noOkQquality);//累计不合格数 - + qcCheckTask.setCheckManCode(qcCheckTaskIncome.getUpdateBy()); + qcCheckTask.setCheckManName(qcCheckTaskIncome.getUpdateByName()); qcCheckTask.setSampleQuality(qcCheckTaskIncome.getSampleQuality()); /**qc_check_task**/ n = qcCheckTaskIncomeMapper.updateQcCheckTask(qcCheckTask); @@ -536,6 +537,28 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { /**pro_order_workorder_batch-->status->w5**/ qcCheckTaskIncome.setStatus("2"); qcCheckUnqualifiedMapper.updateWorkOrderBatchStatus(qcCheckTaskIncome); + if("checkTypeSC".equals(qcCheckTaskIncome.getCheckType())&&"N".equals(result)){ + + QcCheckTaskIncome recheck = new QcCheckTaskIncome(); + recheck.setOldBelongTo(belongId); + recheck.setBelongTo(recheck.getRecordId()); + recheck.setCreateBy(updateBy); + recheck.setCreateTime(nowTime); + //首件不合格触发复检 + recheck.setRecordId(IdUtils.fastSimpleUUID()); + n = qcCheckUnqualifiedMapper.repeatCheckTask(recheck); + logger.info("复检表qc_check_task:" + n); + recheck.setRecordId(IdUtils.fastSimpleUUID()); + n = qcCheckUnqualifiedMapper.repeatCheckTaskDefect(recheck); + logger.info("复检表qc_check_task_defect:" + n); + recheck.setRecordId(IdUtils.fastSimpleUUID()); + n = qcCheckUnqualifiedMapper.repeatCheckTaskDetail(recheck); + logger.info("复检表qc_check_task_detail:" + n); + recheck.setRecordId(IdUtils.fastSimpleUUID()); + n = qcCheckUnqualifiedMapper.repeatCheckTaskUser(recheck); + logger.info("复检表qc_check_task_user:" + n); + + } }else if("product".equals(qcCheckTaskIncome.getTypeCode())){ /**wms_product_put-->check_status->1**/ qcCheckTaskIncome.setStatus("2"); 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 9e788741..b4811f46 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.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -215,15 +216,16 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService } } /** 不良品数据插入 */ + BigDecimal noOkQuality = new BigDecimal(0); List defectList = qcCheckTaskProduce.getDefects(); - if (CollectionUtils.isEmpty(defectList)) { - return 0; - } else { + if (!CollectionUtils.isEmpty(defectList)) { for (QcCheckTaskDefect defect : defectList) { - defect.setBelongTo(beLongId); + defect.setBelongTo(beLongId); qcCheckTaskDefectService.insertQcCheckTaskDefect(defect); + noOkQuality = noOkQuality.add(defect.getNoOkQuality()==null?new BigDecimal("0"):defect.getNoOkQuality()); } } + qcCheckTaskProduce.setNoOkQuality(noOkQuality); /**qc_check_task**/ qcCheckTaskProduceMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); @@ -267,17 +269,19 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService } qcCheckTaskUserService.updateQcCheckTaskUser(qcCheckTaskUserList); /** 不良品数据修改 **/ + BigDecimal noOkQuality = new BigDecimal(0); List defectList = qcCheckTaskProduce.getDefects(); - if (CollectionUtils.isEmpty(defectList)) { - return 0; - } else { - String belongTo = qcCheckTaskProduce.getRecordId(); + String belongTo = qcCheckTaskProduce.getRecordId(); + //不是空执行下一步,空不做操作 + if (!CollectionUtils.isEmpty(defectList)) { qcCheckTaskDefectService.deleteQcCheckTaskDefectByBelongTo(belongTo); for (QcCheckTaskDefect defect : defectList) { defect.setBelongTo(belongTo); qcCheckTaskDefectService.insertQcCheckTaskDefect(defect); + noOkQuality = noOkQuality.add(defect.getNoOkQuality()==null?new BigDecimal("0"):defect.getNoOkQuality()); } } + qcCheckTaskProduce.setNoOkQuality(noOkQuality); return qcCheckTaskProduceMapper.updateQcCheckTaskProduce(qcCheckTaskProduce); } 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 1ddc6892..7b66cc70 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 @@ -149,7 +149,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select powb.batch_id batchId, powb.batch_code batchCode from pro_order_workorder_batch powb - left join pro_order_workorder pow on powb.workorder_id = pow.workorder_id + left join pro_order_workorder pow on powb.workorder_id = pow.workorder_id where powb.del_flag = '0' and pow.del_flag = '0' and pow.workorder_code = #{workorderCode} @@ -272,8 +272,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update qc_check_task set check_status = #{checkStatus}, - check_man_code = #{updateBy}, - check_man_name =#{updateByName}, + check_man_code = #{checkManCode}, + check_man_name =#{checkManName}, check_time = #{checkTime}, sample_quality = #{sampleQuality}, noOk_quality = #{noOkQuality}, @@ -352,7 +352,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" qct.quality, t.remark from qc_check_task qct - left join( + left join( SELECT belong_to, STUFF( 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 01c7860d..61b02ebd 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 @@ -142,7 +142,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" id,check_name checkName from qc_check_type where del_flag='0' - and type_code = #{typeCode} + and type_code = #{typeCode} @@ -178,6 +178,67 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{requestid}, + + insert into qc_check_task( + record_id,check_no,income_batch_no,order_no, + material_code,material_name,quality,unit, + supplier_code,supplier_name,income_time, + check_status, + create_by,create_time,factory_code,del_flag, + check_type,noOk_quality,sample_quality,type_code,order_type + ) + select + #{recordId},check_no,income_batch_no ,order_no , + material_code,material_name,quality ,unit , + supplier_code,supplier_name,income_time, + '0', + #{createBy},#{createTime},factory_code,del_flag, + check_type,noOk_quality,sample_quality,type_code ,'reCheckCS' + from qc_check_task where record_id = #{oldBelongTo} and del_flag = '0' + + + insert qc_check_task_defect( + record_id, + defect_code,defect_subclass, + create_by,create_time, + factory_code,del_flag, + belong_to,noOk_quality) + select + REPLACE(NEWID(), '-',''), + defect_code,defect_subclass, + #{createBy},#{createTime}, + factory_code,del_flag, + #{belongTo},noOk_quality + from qc_check_task_defect where belong_to = #{oldBelongTo} and del_flag = '0' + + + insert into qc_check_task_detail( + record_id,belong_to,order_num,rule_name,property_code, + check_mode,check_tool,unit_code,check_standard,actual_value, + create_by,create_time,factory_code,del_flag, + project_id,project_no,type_project_id,defect_code + ) + select + REPLACE(NEWID(), '-',''),#{belongTo},order_num,rule_name,property_code, + check_mode,check_tool,unit_code,check_standard,actual_value, + #{createBy},#{createTime},factory_code,del_flag, + project_id,project_no,type_project_id,defect_code + from qc_check_task_detail where belong_to = #{oldBelongTo} and del_flag = '0' + + + insert into qc_check_task_user( + record_id,check_no, + check_man_code,check_man_name, + create_by,create_time, + factory_code,del_flag,belong_to + ) + select + REPLACE(NEWID(), '-',''),check_no, + check_man_code,check_man_name, + #{createBy},#{createTime}, + factory_code,del_flag,#{belongTo} + from qc_check_task_user where belong_to = #{oldBelongTo} and del_flag = '0' + update qc_check_unqualified diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcProjectTypeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcProjectTypeMapper.xml index 95970101..79812c8f 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcProjectTypeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcProjectTypeMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -26,7 +26,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + - + insert into qc_project_type @@ -55,7 +55,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" factory_code, del_flag, standard_no, - version = #{version} + version, #{id}, @@ -68,8 +68,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{updateTime}, #{factoryCode}, #{delFlag}, - #{standardNo} - #{version} + #{standardNo}, + #{version}, @@ -96,9 +96,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - delete from qc_project_type where id in + delete from qc_project_type where id in #{id} - \ No newline at end of file +