diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/device/EquRepairOrderDTO.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/device/EquRepairOrderDTO.java index 434d1060..fd56d71b 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/domain/device/EquRepairOrderDTO.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/device/EquRepairOrderDTO.java @@ -12,6 +12,8 @@ public class EquRepairOrderDTO { private String userNickName; // 联系方式 private String phoneNumber; + // 故障描述 + private String orderDesc; public String getUserNickName() { return userNickName; @@ -52,4 +54,12 @@ public class EquRepairOrderDTO { public void setEquipmentCode(String equipmentCode) { this.equipmentCode = equipmentCode; } + + public String getOrderDesc() { + return orderDesc; + } + + public void setOrderDesc(String orderDesc) { + this.orderDesc = orderDesc; + } } diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/HRInfo.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/HRInfo.java index 7e8f4eef..19ad7422 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/HRInfo.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/HRInfo.java @@ -1,15 +1,11 @@ package com.op.system.api.domain.quality; import com.op.common.core.web.domain.BaseEntity; -import com.op.common.core.xss.Xss; import com.op.system.api.domain.SysDept; import com.op.system.api.domain.SysRole; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; -import javax.validation.constraints.Email; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Size; import java.util.Date; import java.util.List; @@ -72,6 +68,25 @@ public class HRInfo extends BaseEntity { private String poscd;//岗位编码 private String ounam;//部门名称 private String oucod;//部门编码 + private String wxId; + private String section; + private String peSnr; + + public String getSection() { + return section; + } + + public void setSection(String section) { + this.section = section; + } + + public String getPeSnr() { + return peSnr; + } + + public void setPeSnr(String peSnr) { + this.peSnr = peSnr; + } public String getPeWorkID() { return peWorkID; @@ -161,8 +176,6 @@ public class HRInfo extends BaseEntity { this.datasourceId = datasourceId; } - //新增 微信账号 - private String wxId; public String getWxId() { return wxId; diff --git a/op-common/op-common-core/src/main/java/com/op/common/core/utils/poi/ExcelMapUtil.java b/op-common/op-common-core/src/main/java/com/op/common/core/utils/poi/ExcelMapUtil.java index a94ac60f..f58dfdbc 100644 --- a/op-common/op-common-core/src/main/java/com/op/common/core/utils/poi/ExcelMapUtil.java +++ b/op-common/op-common-core/src/main/java/com/op/common/core/utils/poi/ExcelMapUtil.java @@ -43,9 +43,11 @@ public class ExcelMapUtil { Cell titleCell = sheetTitleRow.createCell(i*rangeVal+1);//创建第一行第一个单元格 titleCell.setCellValue(title1s[i]);//传值 titleCell.setCellStyle(getHeaderFont(sheet.getWorkbook()));//设置样式 - //主标题行合并单元格 - CellRangeAddress cellAddresses = new CellRangeAddress(0, 0, i*rangeVal+1, (i+1)*rangeVal); - sheet.addMergedRegion(cellAddresses); + if((i*rangeVal+1)!=(i+1)*rangeVal){ + //主标题行合并单元格 + CellRangeAddress cellAddresses = new CellRangeAddress(0, 0, i*rangeVal+1, (i+1)*rangeVal); + sheet.addMergedRegion(cellAddresses); + } } //创建表头行(第二行) diff --git a/op-modules/op-energy/src/main/resources/mapper/record/RecordDnbInstantMapper.xml b/op-modules/op-energy/src/main/resources/mapper/record/RecordDnbInstantMapper.xml index 1305bcbc..12c38729 100644 --- a/op-modules/op-energy/src/main/resources/mapper/record/RecordDnbInstantMapper.xml +++ b/op-modules/op-energy/src/main/resources/mapper/record/RecordDnbInstantMapper.xml @@ -44,7 +44,7 @@ </if> <if test="monitorSubset != null and monitorSubset != ''"> and (record_dnb_instant.monitor_id = #{monitorSubset} OR record_dnb_instant.monitor_id IN - (SELECT t.monitor_id FROM base_monitor_info t WHERE FIND_IN_SET(#{monitorSubset}, ancestors))) + (SELECT t.monitor_id FROM base_monitor_info t WHERE dbo.FIND_IN_SET(#{monitorSubset}, ancestors) > 0)) </if> <if test="vA != null ">and vA = #{vA}</if> <if test="vB != null ">and vB = #{vB}</if> @@ -82,7 +82,7 @@ <if test="monitorId != null and monitorId != ''">and rdi.monitor_id = #{monitorId}</if> <if test="monitorSubset != null and monitorSubset != ''"> and (rdi.monitor_id = #{monitorSubset} OR rdi.monitor_id IN - (SELECT t.monitor_id FROM base_monitor_info t WHERE FIND_IN_SET(#{monitorSubset}, ancestors))) + (SELECT t.monitor_id FROM base_monitor_info t WHERE dbo.FIND_IN_SET(#{monitorSubset}, ancestors) > 0)) </if> <if test="params.monitorIdList != null and params.monitorIdList.size > 0"> and rdi.monitor_id IN @@ -93,7 +93,7 @@ </where> group by rdi.monitor_id) md on md.monitor_id = d.monitor_id and md.collect_time = d.collect_time left join base_monitor_info m on m.monitor_id = d.monitor_id - left join (select rpd.monitor_id, ifnull(sum(rpd.expend), 0) consumption + left join (select rpd.monitor_id, isnull(sum(rpd.expend), 0) consumption from report_point_dnb rpd <if test="params.beginCollectTime != null and params.beginCollectTime != '' and params.endCollectTime != null and params.endCollectTime != ''"> where rpd.begin_time between #{params.beginCollectTime} and #{params.endCollectTime} @@ -116,7 +116,7 @@ <if test="monitorId != null and monitorId != ''">and bmi.monitor_id = #{monitorId}</if> <if test="monitorSubset != null and monitorSubset != ''"> and (bmi.monitor_id = #{monitorSubset} OR bmi.monitor_id IN - (SELECT t.monitor_id FROM base_monitor_info t WHERE FIND_IN_SET(#{monitorSubset}, ancestors))) + (SELECT t.monitor_id FROM base_monitor_info t WHERE dbo.FIND_IN_SET(#{monitorSubset}, ancestors) > 0)) </if> </where> </select> diff --git a/op-modules/op-energy/src/main/resources/mapper/record/RecordWaterInstantMapper.xml b/op-modules/op-energy/src/main/resources/mapper/record/RecordWaterInstantMapper.xml index b0538665..8d0f070b 100644 --- a/op-modules/op-energy/src/main/resources/mapper/record/RecordWaterInstantMapper.xml +++ b/op-modules/op-energy/src/main/resources/mapper/record/RecordWaterInstantMapper.xml @@ -35,7 +35,7 @@ </if> <if test="monitorSubset != null and monitorSubset != ''"> and (record_water_instant.monitor_id = #{monitorSubset} OR record_water_instant.monitor_id IN - (SELECT t.monitor_id FROM base_monitor_info t WHERE FIND_IN_SET(#{monitorSubset}, ancestors))) + (SELECT t.monitor_id FROM base_monitor_info t WHERE dbo.FIND_IN_SET(#{monitorSubset}, ancestors) > 0)) </if> <if test="fluxFlow != null ">and flux_flow = #{fluxFlow}</if> <if test="waterFlow != null ">and water_flow = #{waterFlow}</if> @@ -63,7 +63,7 @@ <if test="monitorId != null and monitorId != ''">and rdi.monitor_id = #{monitorId}</if> <if test="monitorSubset != null and monitorSubset != ''"> and (rdi.monitor_id = #{monitorSubset} OR rdi.monitor_id IN - (SELECT t.monitor_id FROM base_monitor_info t WHERE FIND_IN_SET(#{monitorSubset}, ancestors))) + (SELECT t.monitor_id FROM base_monitor_info t WHERE dbo.FIND_IN_SET(#{monitorSubset}, ancestors) > 0)) </if> <if test="params.monitorIdList != null and params.monitorIdList.size > 0"> and rdi.monitor_id IN @@ -74,7 +74,7 @@ </where> group by rdi.monitor_id) md on md.monitor_id = d.monitor_id and md.collect_time = d.collect_time left join base_monitor_info m on m.monitor_id = d.monitor_id - left join (select rpd.monitor_id, ifnull(sum(rpd.expend), 0) consumption + left join (select rpd.monitor_id, isnull(sum(rpd.expend), 0) consumption from report_point_dnb rpd <if test="params.beginCollectTime != null and params.beginCollectTime != '' and params.endCollectTime != null and params.endCollectTime != ''"> where rpd.begin_time between #{params.beginCollectTime} and #{params.endCollectTime} @@ -94,7 +94,7 @@ <if test="monitorId != null and monitorId != ''">and bmi.monitor_id = #{monitorId}</if> <if test="monitorSubset != null and monitorSubset != ''"> and (bmi.monitor_id = #{monitorSubset} OR bmi.monitor_id IN - (SELECT t.monitor_id FROM base_monitor_info t WHERE FIND_IN_SET(#{monitorSubset}, ancestors))) + (SELECT t.monitor_id FROM base_monitor_info t WHERE dbo.FIND_IN_SET(#{monitorSubset}, ancestors) > 0)) </if> </where> </select> diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesPrepareDetailController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesPrepareDetailController.java index 22968024..b82b0b24 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesPrepareDetailController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesPrepareDetailController.java @@ -40,12 +40,18 @@ public class MesPrepareDetailController extends BaseController { * @return */ @RequiresPermissions("mes:prepareDetail:export") - @Log(title = "mes备料打印", businessType = BusinessType.EXPORT) - @GetMapping("/printPrepareByCode/{workorderCode}") - public AjaxResult printPrepareByCode(@PathVariable("workorderCode") String workorderCode) { - return mesPrepareDetailService.printPrepareByCode(workorderCode); + @Log(title = "mes备料打印生产物料", businessType = BusinessType.EXPORT) + @GetMapping("/printPrepareByCode/{workorderCode}/{recoil}") + public AjaxResult printPrepareByCode(@PathVariable("workorderCode") String workorderCode,@PathVariable("recoil") String recoil) { + return mesPrepareDetailService.printPrepareByCode(workorderCode,recoil); } + @RequiresPermissions("mes:prepareDetail:export") + @Log(title = "mes备料打印某天的反冲物料", businessType = BusinessType.EXPORT) + @GetMapping("/printPrepareXByCode/{productDate}") + public AjaxResult printPrepareXByCode(@PathVariable("productDate") String productDate) { + return mesPrepareDetailService.printPrepareXByCode(productDate); + } /** * 查询mes备料单明细列表 */ diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java index 03531d04..8803c218 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java @@ -533,6 +533,13 @@ public class MesReportWorkController extends BaseController { public AjaxResult deleteBomRowNow(@PathVariable String id) { return toAjax(mesReportWorkService.deleteBomRowNow(id)); } + + /**删除报工数据**/ + @DeleteMapping("/deleteReportNow/{reportCode}") + public AjaxResult deleteReportNow(@PathVariable String reportCode) { + return toAjax(mesReportWorkService.deleteReportNow(reportCode)); + } + //获取仓库下拉列表 @GetMapping("/getWarehouseList") public List<MesReportWorkConsume> getWarehouseList(MesReportWorkConsume workConsume) { diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepare.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepare.java index c2e9db33..d64aaf86 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepare.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepare.java @@ -173,9 +173,17 @@ public class MesPrepare extends BaseEntity { */ @Excel(name = "工厂编码") private String factoryCode; - + private String prodLineCode; private String dayStr; + public String getProdLineCode() { + return prodLineCode; + } + + public void setProdLineCode(String prodLineCode) { + this.prodLineCode = prodLineCode; + } + public String getWorkorderCodeSap() { return workorderCodeSap; } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepareDetail.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepareDetail.java index 932242f7..d1754627 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepareDetail.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesPrepareDetail.java @@ -66,7 +66,7 @@ public class MesPrepareDetail extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "工单生产日期", width = 30, dateFormat = "yyyy-MM-dd") private Date productDate; - + private String productDateStr; /** * 班次 */ @@ -118,6 +118,23 @@ public class MesPrepareDetail extends BaseEntity { private String buyFlag; private String workorderCode; private String parentOrder; + private String prodLineCode; + + public String getProductDateStr() { + return productDateStr; + } + + public void setProductDateStr(String productDateStr) { + this.productDateStr = productDateStr; + } + + public String getProdLineCode() { + return prodLineCode; + } + + public void setProdLineCode(String prodLineCode) { + this.prodLineCode = prodLineCode; + } public String getParentOrder() { return parentOrder; diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesPrepareDetailMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesPrepareDetailMapper.java index c1bf16f4..22a64a4f 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesPrepareDetailMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesPrepareDetailMapper.java @@ -68,8 +68,10 @@ public interface MesPrepareDetailMapper { /** * 通过主领料单id查询领料详情list * - * @param workorderCode + * @param dto * @return */ - List<MesPrepareDetail> selectPrintPrepareDetailList(String workorderCode); + List<MesPrepareDetail> selectPrintPrepareDetailList(MesPrepareDetail dto); + + List<MesPrepareDetail> selectPreDetailHzList(MesPrepareDetail qodetail); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java index 2e9ea33c..09e9bdcc 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java @@ -157,4 +157,9 @@ public interface MesReportWorkMapper { List<MesReportWork> getProductProData(MesReportWork dto); List<MesMachineReport> getMachineProductionList(MesMachineReport mesMachineReport); + + String getUploadStatusByReportCode(String reportCode); + + int deleteReport(String reportCode); + int deleteReportConsume(String reportCode); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesPrepareDetailService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesPrepareDetailService.java index f732b88b..09807e52 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesPrepareDetailService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesPrepareDetailService.java @@ -65,5 +65,7 @@ public interface IMesPrepareDetailService { * * @return */ - AjaxResult printPrepareByCode(String workorderCode); + AjaxResult printPrepareByCode(String workorderCode,String recoil); + + AjaxResult printPrepareXByCode(String productDate); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java index d7ec54e8..c8a52065 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java @@ -127,4 +127,6 @@ public interface IMesReportWorkService { LineChartDto getMonthProData(MesReportProduction mesReportProduction); List<DynamicColumnVo> getMachineProductionTitle(MesMachineReport mesMachineReport); + + int deleteReportNow(String reportCode); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesPrepareDetailServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesPrepareDetailServiceImpl.java index 0a316968..99828f87 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesPrepareDetailServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesPrepareDetailServiceImpl.java @@ -102,9 +102,35 @@ public class MesPrepareDetailServiceImpl implements IMesPrepareDetailService { */ @Override @DS("#header.poolName") - public AjaxResult printPrepareByCode(String workorderCode) { + public AjaxResult printPrepareByCode(String workorderCode,String recoil) { MesPrepare mesPrepare = mesPrepareMapper.selectMesPrepareByCode(workorderCode); - List<MesPrepareDetail> mesPrepareDetailList = mesPrepareDetailMapper.selectPrintPrepareDetailList(workorderCode); + MesPrepareDetail qodetail = new MesPrepareDetail(); + qodetail.setWorkorderCode(workorderCode); + qodetail.setRecoil("0".equals(recoil)?"":recoil); + List<MesPrepareDetail> mesPrepareDetailList = mesPrepareDetailMapper.selectPrintPrepareDetailList(qodetail); + mesPrepare.setProdLineCode(mesPrepareDetailList.get(0).getProdLineCode().split(",")[1] + .replace("\"","") + .replace("\"","") + .replace("]]","")); + PrintPrepareVo printPrepareVo = new PrintPrepareVo(); + printPrepareVo.setMesPrepare(mesPrepare); + printPrepareVo.setMesPrepareDetailList(mesPrepareDetailList); + return AjaxResult.success(printPrepareVo); + } + + /** + * 通过日期打印反冲物料的备料单 + * + * @return + */ + @Override + @DS("#header.poolName") + public AjaxResult printPrepareXByCode(String productDate) { + MesPrepare mesPrepare = new MesPrepare(); + MesPrepareDetail qodetail = new MesPrepareDetail(); + qodetail.setProductDateStr(productDate); + qodetail.setRecoil("X"); + List<MesPrepareDetail> mesPrepareDetailList = mesPrepareDetailMapper.selectPreDetailHzList(qodetail); PrintPrepareVo printPrepareVo = new PrintPrepareVo(); printPrepareVo.setMesPrepare(mesPrepare); printPrepareVo.setMesPrepareDetailList(mesPrepareDetailList); diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java index eb893d50..b0279ef1 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java @@ -576,6 +576,18 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { return dynamicColumn; } + @Override + @DS("#header.poolName") + public int deleteReportNow(String reportCode) { + String uploadStatus = mesReportWorkMapper.getUploadStatusByReportCode(reportCode); + if("1".equals(uploadStatus)){ + return 0; + } + int reportNum = mesReportWorkMapper.deleteReport(reportCode); + int consumeNum = mesReportWorkMapper.deleteReportConsume(reportCode); + return reportNum; + } + @Override @DS("#header.poolName") public List<Map<String, Object>> getMachineProductionList(MesMachineReport mesMachineReport) { diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesPrepareDetailMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesPrepareDetailMapper.xml index b451787b..ae78454a 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesPrepareDetailMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesPrepareDetailMapper.xml @@ -65,7 +65,8 @@ where record_id = #{recordId} </select> - <select id="selectPrintPrepareDetailList" parameterType="String" resultType="com.op.mes.domain.MesPrepareDetail"> + <select id="selectPrintPrepareDetailList" parameterType="com.op.mes.domain.MesPrepareDetail" + resultType="com.op.mes.domain.MesPrepareDetail"> select mp.workorder_name workorderCode, mpd.material_code materialCode, @@ -76,13 +77,34 @@ mpd.fund_quanlity fundQuanlity, mpd.factory_code factoryCode, mpd.recoil, - ow.product_date productDate + ow.product_date productDate, + ow.prod_line_code prodLineCode from pro_order_workorder ow - left join mes_prepare mp on ow.workorder_code = mp.workorder_code - left join mes_prepare_detail mpd on mp.prepare_id = mpd.prepare_id + left join mes_prepare mp on ow.workorder_code = mp.workorder_code + left join mes_prepare_detail mpd on mp.prepare_id = mpd.prepare_id where ow.belong_work_order = #{workorderCode} + and mpd.recoil = #{recoil} and mp.del_flag = '0' and mpd.del_flag = '0' order by mpd.recoil </select> + <select id="selectPreDetailHzList" resultType="com.op.mes.domain.MesPrepareDetail"> + select + mpd.material_code materialCode, + mpd.material_name materialName, + sum(mpd.quantity) quantity, + mpd.unit, + sum(CONVERT(DECIMAL(10, 3), mpd.fund_quanlity)) fundQuanlity, + mpd.factory_code factoryCode,mpd.recoil + from pro_order_workorder ow + left join mes_prepare mp on ow.workorder_code = mp.workorder_code + left join mes_prepare_detail mpd on mp.prepare_id = mpd.prepare_id + where ow.product_date = #{productDateStr} + and mpd.recoil = #{recoil} and mp.del_flag = '0' and mpd.del_flag = '0' + GROUP BY mpd.material_code, + mpd.material_name, + mpd.unit, + mpd.factory_code,mpd.recoil + order by mpd.material_code + </select> <insert id="insertMesPrepareDetail" parameterType="MesPrepareDetail"> insert into mes_prepare_detail diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml index b06517c6..f16ff3f4 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml @@ -563,7 +563,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mrw.use_man useMan, mrw.create_time createTime, pow.workorder_code_sap workorderCodeSap, - mrw.remark,mrw.report_code reportCode + mrw.remark,mrw.report_code reportCode, + mrw.machine_code machineCode from mes_report_work mrw left join pro_order_workorder pow on mrw.workorder_code = pow.workorder_code where mrw.del_flag='0' and pow.del_flag = '0' @@ -782,9 +783,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" pow.product_code, pow.product_name </select> + <select id="getUploadStatusByReportCode" resultType="java.lang.String"> + select top 1 upload_status from mes_report_work where report_code = #{reportCode} + </select> - - <insert id="insertMesReportWork" parameterType="MesReportWork"> + <insert id="insertMesReportWork" parameterType="MesReportWork"> insert into mes_report_work <trim prefix="(" suffix=")" suffixOverrides=","> <if test="id != null">id,</if> @@ -999,4 +1002,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" set del_flag = '1' where record_id = #{id} </delete> + <delete id="deleteReport"> + update mes_report_work set del_flag = '1' where report_code = #{reportCode} + </delete> + <delete id="deleteReportConsume"> + update mes_report_work_consume set del_flag = '1' where report_code = #{reportCode} + </delete> </mapper> 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 29811b5b..ea98a3c8 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 @@ -282,6 +282,7 @@ public class OpenServiceImpl implements OpenService { equRepairOrder.setOrderId(IdUtils.fastSimpleUUID());// id equRepairOrder.setEquipmentCode(equRepairOrderDTO.getEquipmentCode()); equRepairOrder.setOrderSource("上位机");// 故障来源 + equRepairOrder.setOrderDesc(equRepairOrderDTO.getOrderDesc());//故障描述 新增加的 equRepairOrder.setOrderTime(DateUtils.getNowDate());// 报修时间 equRepairOrder.setOrderBreakdownTime(DateUtils.getNowDate());// 故障时间 if (equRepairOrderDTO.getUserName() != null) { @@ -392,7 +393,7 @@ public class OpenServiceImpl implements OpenService { qcCheckTaskProduce.setFactoryCode(factoryCode); qcCheckTaskProduce.setCreateTime(nowDate); qcCheckTaskProduce.setTypeCode("produce");//大检验节点 - qcCheckTaskProduce.setIncomeTime(qcCheckTaskProduce.getProduceDate()); + qcCheckTaskProduce.setIncomeTime(DateUtils.getNowDate()); qcCheckTaskProduce.setSupplierCode(qcCheckTaskProduce.getCarCode()); qcCheckTaskProduce.setSupplierName(qcCheckTaskProduce.getCarName()); qcCheckTaskProduce.setCheckManName(null); diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java index bf3f8750..5eb59c91 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java @@ -826,13 +826,13 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { BigDecimal newSapQuantityNum = new BigDecimal(proOrder.getQuantity()) .subtract(new BigDecimal(proOrder.getAtrr1())); sapChange.setQuantity(newSapQuantityNum.toString());//母订单新数量 - logger.info("母订单" + proOrder.getOrderCode() + - "订单数量变更:修改前" + proOrder.getQuantity() + "," + - "已拆数量" + proOrder.getAtrr1() + "," + - "给sap汇报数量" + newSapQuantityNum.toString()); - R rSapChange = remoteSapService.shopUpdateSync(sapChange);//sap只能同步指定日期的数据 - logger.info("母订单" + proOrder.getOrderCode() + - "订单数量变更结果:" + rSapChange.getCode() + "," + rSapChange.getMsg()); +// logger.info("母订单" + proOrder.getOrderCode() + +// "订单数量变更:修改前" + proOrder.getQuantity() + "," + +// "已拆数量" + proOrder.getAtrr1() + "," + +// "给sap汇报数量" + newSapQuantityNum.toString()); +// R rSapChange = remoteSapService.shopUpdateSync(sapChange);//sap只能同步指定日期的数据 +// logger.info("母订单" + proOrder.getOrderCode() + +// "订单数量变更结果:" + rSapChange.getCode() + "," + rSapChange.getMsg()); } // 获得对应工单----------------------------------------------------------------------------? @@ -1015,13 +1015,13 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { BigDecimal newSapQuantityNum = new BigDecimal(proOrder.getQuantity()) .subtract(new BigDecimal(proOrder.getAtrr1())); sapChange.setQuantity(newSapQuantityNum.toString());//母订单新数量 - logger.info("母订单" + proOrder.getOrderCode() + - "订单数量变更:修改前" + proOrder.getQuantity() + "," + - "已拆数量" + proOrder.getAtrr1() + "," + - "给sap汇报数量" + newSapQuantityNum.toString()); - R rSapChange = remoteSapService.shopUpdateSync(sapChange);//sap只能同步指定日期的数据 - logger.info("母订单" + proOrder.getOrderCode() + - "订单数量变更结果:" + rSapChange.getCode() + "," + rSapChange.getMsg()); +// logger.info("母订单" + proOrder.getOrderCode() + +// "订单数量变更:修改前" + proOrder.getQuantity() + "," + +// "已拆数量" + proOrder.getAtrr1() + "," + +// "给sap汇报数量" + newSapQuantityNum.toString()); +// R rSapChange = remoteSapService.shopUpdateSync(sapChange);//sap只能同步指定日期的数据 +// logger.info("母订单" + proOrder.getOrderCode() + +// "订单数量变更结果:" + rSapChange.getCode() + "," + rSapChange.getMsg()); } // 获得对应工单----------------------------------------------------------------------------? @@ -1144,7 +1144,7 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { public AjaxResult checkWorkOrder(String id) { ProOrderWorkorder proOrderWorkorder = proOrderWorkorderMapper.selectProOrderWorkorderByWorkorderId(id); if (!(proOrderWorkorder.getStatus().equals("w0") || proOrderWorkorder.getStatus().equals("w1"))) { - return error("工单已生产,不可变更!"); + return error("工单只有未派发和已派发才可变更!"); } return success(); } diff --git a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderMapper.xml b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderMapper.xml index 679f9847..37b06efd 100644 --- a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderMapper.xml +++ b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderMapper.xml @@ -126,6 +126,7 @@ LEFT JOIN pro_order_workorder pow ON powb.workorder_id = pow.workorder_id WHERE pow.workorder_id = #{workorderId} and powb.del_flag = '0' + order by powb.batch_code </select> <select id="selectPackageLine" resultType="com.op.plan.domain.ProLine"> diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskIncomeController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskIncomeController.java index ca699691..9e318ff9 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskIncomeController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskIncomeController.java @@ -471,5 +471,9 @@ public class QcCheckTaskIncomeController extends BaseController { dynamicRoutingDataSource.removeDataSource(dataSourceProperty.getPoolName()); return R.ok(); } + @GetMapping("/getWeightValue/{id}") + public AjaxResult getWeightValue(@PathVariable String id) { + return success(qcCheckTaskIncomeService.getWeightValue(id)); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskIncomeService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskIncomeService.java index 1ef4918f..b0c97b03 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskIncomeService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskIncomeService.java @@ -100,4 +100,6 @@ public interface IQcCheckTaskIncomeService { List<QcDefectType> getCheckLocList(QcDefectType qcDefectType); List<String> getTodayIncomeLists(); + + public String getWeightValue(String id); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckReportIncomeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckReportIncomeServiceImpl.java index 6f6b40bf..9cd273c5 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckReportIncomeServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckReportIncomeServiceImpl.java @@ -1,8 +1,6 @@ package com.op.quality.service.impl; -import com.alibaba.fastjson2.JSONArray; 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; 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 e66489a3..ad2621a6 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 @@ -86,6 +86,8 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements @Autowired private IQcCheckUnqualifiedService qcCheckUnqualifiedService; + @Autowired + private QcProCheckService qcProCheckService; /** * 查询来料检验 @@ -124,6 +126,32 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements public List<QcCheckTaskIncome> selectQcCheckTaskIncomeList(QcCheckTaskIncome qcCheckTaskIncome) { qcCheckTaskIncome.setDelFlag("0"); qcCheckTaskIncome.setTypeCode("material"); + +// //发企业微信--------------------开始(跟班组无关) +// SysNoticeGroup noticeQo = new SysNoticeGroup(); +// noticeQo.setNoticeId(6L); +// List<SysNoticeGroup> notices = qcCheckTaskIncomeMapper.getNotices(noticeQo); +// if(!CollectionUtils.isEmpty(notices)) { +// List<WechartDTO> wecharts = new ArrayList<>(); +// +// List<String> wxids = new ArrayList<>(); +// wxids.add("MES002"); +// for (String wxid : wxids) { +// WechartDTO wechart0 = new WechartDTO(); +// wechart0.setUserId(wxid); +// wechart0.setText("您好,有一条新的来料检验任务,需要您登陆手持进行处理。"); +// wecharts.add(wechart0); +// } +// logger.info("来料检验企业微信提醒请求:" + JSONObject.toJSONString(wecharts)); +// if (!CollectionUtils.isEmpty(wecharts)) { +// new Thread(() -> { +// AjaxResult result = remoteOpenService.sendWeChartMessage(wecharts); +// logger.info("来料检验企业微信提醒结果:" + JSONObject.toJSONString(result)); +// +// }).start(); +// } +// //发企业微信--------------------结束 +// } return qcCheckTaskIncomeMapper.selectQcCheckTaskIncomeList(qcCheckTaskIncome); } @@ -270,34 +298,34 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements } int s = qcCheckTaskDetailMapper.addBatch(items); - //发企业微信--------------------开始(跟班组无关) - SysNoticeGroup noticeQo = new SysNoticeGroup(); - noticeQo.setNoticeId(6L); - List<SysNoticeGroup> notices = qcCheckTaskIncomeMapper.getNotices(noticeQo); - if(!CollectionUtils.isEmpty(notices)) { - List<WechartDTO> wecharts = new ArrayList<>(); - //去主库查微信id - DynamicDataSourceContextHolder.push("master");// 这是数据源的key - List<String> userCodes = users.stream() - .map(QcUserMaterialDTO::getUserCode) - .collect(Collectors.toList()); - List<String> wxids = qcCheckTaskIncomeMapper.getWxId(userCodes); - for (String wxid : wxids) { - WechartDTO wechart0 = new WechartDTO(); - wechart0.setUserId(wxid); - wechart0.setText(notices.get(0).getNoticeContent()); - wecharts.add(wechart0); - } - logger.info("来料检验企业微信提醒请求:" + JSONObject.toJSONString(wecharts)); - if (!CollectionUtils.isEmpty(wecharts)) { - new Thread(() -> { - AjaxResult result = remoteOpenService.sendWeChartMessage(wecharts); - logger.info("来料检验企业微信提醒结果:" + JSONObject.toJSONString(result)); - - }).start(); - } - //发企业微信--------------------结束 - } +// //发企业微信--------------------开始(跟班组无关) +// SysNoticeGroup noticeQo = new SysNoticeGroup(); +// noticeQo.setNoticeId(6L); +// List<SysNoticeGroup> notices = qcCheckTaskIncomeMapper.getNotices(noticeQo); +// if(!CollectionUtils.isEmpty(notices)) { +// List<WechartDTO> wecharts = new ArrayList<>(); +// //去主库查微信id +// DynamicDataSourceContextHolder.push("master");// 这是数据源的key +// List<String> userCodes = users.stream() +// .map(QcUserMaterialDTO::getUserCode) +// .collect(Collectors.toList()); +// List<String> wxids = qcCheckTaskIncomeMapper.getWxId(userCodes); +// for (String wxid : wxids) { +// WechartDTO wechart0 = new WechartDTO(); +// wechart0.setUserId(wxid); +// wechart0.setText(notices.get(0).getNoticeContent()); +// wecharts.add(wechart0); +// } +// logger.info("来料检验企业微信提醒请求:" + JSONObject.toJSONString(wecharts)); +// if (!CollectionUtils.isEmpty(wecharts)) { +// new Thread(() -> { +// AjaxResult result = remoteOpenService.sendWeChartMessage(wecharts); +// logger.info("来料检验企业微信提醒结果:" + JSONObject.toJSONString(result)); +// +// }).start(); +// } +// //发企业微信--------------------结束 +// } return s; } @@ -879,4 +907,22 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements } + @Override + public String getWeightValue(String id) { + if (StringUtils.isEmpty(id)) { + return ""; + } + QcCheckTaskDetail qcCheckTaskDetail = new QcCheckTaskDetail(); + qcCheckTaskDetail.setRecordId(id); + + ///获取当前所选工厂 + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + String factoryCode = request.getHeader(key.substring(8)); + qcCheckTaskDetail.setFactoryCode(factoryCode); + + return qcProCheckService.getWeightInfo(qcCheckTaskDetail); + } + + } 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 323e9444..0e4352ce 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 @@ -254,6 +254,7 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService //试产 qcCheckTaskProduce.setProductType("c"); } + qcCheckTaskProduce.setIncomeTime(DateUtils.getNowDate()); qcCheckTaskProduceMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); /**qc_check_task_detail**/ diff --git a/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml b/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml index 22d19da5..773f5703 100644 --- a/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -189,12 +189,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" insert into sys_user (user_name,nick_name,post,dept_id, phonenumber,sex,status, - create_by,create_time,del_flag) + create_by,create_time,del_flag, + section,pe_snr) VALUES <foreach collection="list" index="index" item="item" separator=","> (#{item.userName},#{item.nickName},#{item.post},#{item.deptId}, #{item.phonenumber},#{item.sex},#{item.status}, - #{item.createBy},#{item.createTime},'0') + #{item.createBy},#{item.createTime},'0',#{item.section},#{item.peSnr}) </foreach> </insert> @@ -238,6 +239,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" <if test="item.deptId!=null">section = #{item.deptId},</if> <if test="item.post!=null">post = #{item.post},</if> <if test="item.phonenumber!=null">phonenumber = #{item.phonenumber},</if> + <if test="item.section!=null">section = #{item.section},</if> + <if test="item.peSnr!=null">pe_snr = #{item.peSnr},</if> sex = #{item.sex}, del_flag = #{item.delFlag}, update_by = #{item.updateBy},