diff --git a/ABAP_AS_WITH_POOL.jcoDestination b/ABAP_AS_WITH_POOL.jcoDestination deleted file mode 100644 index 836417d9..00000000 --- a/ABAP_AS_WITH_POOL.jcoDestination +++ /dev/null @@ -1,11 +0,0 @@ -#for test only! -#Tue Oct 17 09:57:19 CST 2023 -jco.destination.pool_capacity=true -jco.client.lang=zh -jco.client.ashost=192.168.0.53 -jco.client.saprouter= -jco.client.user=MES -jco.client.sysnr=0 -jco.destination.peak_limit=20 -jco.client.passwd=123456 -jco.client.client=800 diff --git a/dev_jco_rfc.trc b/dev_jco_rfc.trc deleted file mode 100644 index 9731a6f6..00000000 --- a/dev_jco_rfc.trc +++ /dev/null @@ -1,114 +0,0 @@ - -**** Error file opened at 20230724 105509 China Standard Time Rel. 3.0.17 (2017-07-17) [721.913] -Error: >Mon Jul 24 10:55:09,173< RfcException: - message: Connect to SAP gateway failed -Connection parameters: TYPE=A DEST=ABAP_AS_WITH_POOL ASHOST=192.168.0.53 SYSNR=00 PCS=1 - -LOCATION CPIC (TCP/IP) on local host with Unicode -ERROR partner '192.168.0.53:3300' not reached -TIME Mon Jul 24 10:55:09 2023 -RELEASE 721 -COMPONENT NI (network interface) -VERSION 40 -RC -10 -MODULE nixxi.cpp -LINE 3289 -DETAIL NiPConnect2: 192.168.0.53:3300 -SYSTEM CALL connect -ERRNO 10060 -ERRNO TEXT WSAETIMEDOUT: Connection timed out -COUNTER 2 - - return code: RFC_FAILURE (1) - error group: 102 - key: RFC_ERROR_COMMUNICATION - -Error: >Mon Jul 24 10:55:30,220< RfcException: - message: Connect to SAP gateway failed -Connection parameters: TYPE=A DEST=ABAP_AS_WITH_POOL ASHOST=192.168.0.53 SYSNR=00 PCS=1 - -LOCATION CPIC (TCP/IP) on local host with Unicode -ERROR partner '192.168.0.53:3300' not reached -TIME Mon Jul 24 10:55:30 2023 -RELEASE 721 -COMPONENT NI (network interface) -VERSION 40 -RC -10 -MODULE nixxi.cpp -LINE 3289 -DETAIL NiPConnect2: 192.168.0.53:3300 -SYSTEM CALL connect -ERRNO 10060 -ERRNO TEXT WSAETIMEDOUT: Connection timed out -COUNTER 4 - - return code: RFC_FAILURE (1) - error group: 102 - key: RFC_ERROR_COMMUNICATION - - -**** Error file opened at 20230725 103104 China Standard Time Rel. 3.0.17 (2017-07-17) [721.913] -Error: >Tue Jul 25 10:31:04,628< RfcException: - message: Connect to SAP gateway failed -Connection parameters: TYPE=A DEST=ABAP_AS_WITH_POOL ASHOST=192.168.0.53 SYSNR=00 PCS=1 - -LOCATION CPIC (TCP/IP) on local host with Unicode -ERROR partner '192.168.0.53:3300' not reached -TIME Tue Jul 25 10:31:04 2023 -RELEASE 721 -COMPONENT NI (network interface) -VERSION 40 -RC -10 -MODULE nixxi.cpp -LINE 3289 -DETAIL NiPConnect2: 192.168.0.53:3300 -SYSTEM CALL connect -ERRNO 10060 -ERRNO TEXT WSAETIMEDOUT: Connection timed out -COUNTER 2 - - return code: RFC_FAILURE (1) - error group: 102 - key: RFC_ERROR_COMMUNICATION - -Error: >Tue Jul 25 10:31:25,675< RfcException: - message: Connect to SAP gateway failed -Connection parameters: TYPE=A DEST=ABAP_AS_WITH_POOL ASHOST=192.168.0.53 SYSNR=00 PCS=1 - -LOCATION CPIC (TCP/IP) on local host with Unicode -ERROR partner '192.168.0.53:3300' not reached -TIME Tue Jul 25 10:31:25 2023 -RELEASE 721 -COMPONENT NI (network interface) -VERSION 40 -RC -10 -MODULE nixxi.cpp -LINE 3289 -DETAIL NiPConnect2: 192.168.0.53:3300 -SYSTEM CALL connect -ERRNO 10060 -ERRNO TEXT WSAETIMEDOUT: Connection timed out -COUNTER 4 - - return code: RFC_FAILURE (1) - error group: 102 - key: RFC_ERROR_COMMUNICATION - - -**** Error file opened at 20230816 113444 China Standard Time Rel. 3.0.17 (2017-07-17) [721.913] -Error: >Wed Aug 16 11:34:44,064< >RfcGetException rc (7) message: Invalid value in OPTION field of value table for IN itab operator. operator. -Wed Aug 16 17:42:53,538< >RfcGetException rc (7) message: Invalid value in OPTION field of value table for IN itab operator. operator. -Wed Aug 16 17:44:47,079< >RfcGetException rc (7) message: Invalid value in OPTION field of value table for IN itab operator. operator. - list = equTeamService.getMaintenanceTeamList(equTeam); + return getDataTable(list); + } } diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/EquOutsourceWork.java b/op-modules/op-device/src/main/java/com/op/device/domain/EquOutsourceWork.java index 7af3b8ca..a4903fcb 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/EquOutsourceWork.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/EquOutsourceWork.java @@ -25,8 +25,12 @@ public class EquOutsourceWork extends BaseEntity { @Excel(name = "报修编码") private String orderCode; - /** 维修人员 */ - @Excel(name = "维修人员") + /** 维修编码 */ + @Excel(name = "维修编码") + private String repairCode; + + /** 委外维修人员 */ + @Excel(name = "委外维修人员") private String workPerson; /** 委外单位 */ @@ -41,16 +45,12 @@ public class EquOutsourceWork extends BaseEntity { @Excel(name = "原因") private String workReason; - /** 委外原因 */ - @Excel(name = "委外原因") - private String outSourceReason; - /** 委外类型 */ @Excel(name = "委外类型") private String workType; - /** 管理单号 */ - @Excel(name = "管理单号") + /** 设备编码 */ + @Excel(name = "设备编码") private String equipmentCode; /** 委外费用 */ @@ -80,10 +80,30 @@ public class EquOutsourceWork extends BaseEntity { @Excel(name = "工厂编码") private String factoryCode; + // 设备 + /** 设备名称 */ + @Excel(name = "设备名称") + private String equipmentName; + + /** 规格型号 */ + @Excel(name = "规格型号") + private String equipmentSpec; + + /** 设备类型名称 */ + @Excel(name = "设备类型名称") + private String equipmentTypeName; + + /** 设备位置 */ + @Excel(name = "设备位置") + private String equipmentLocation; + + /** 部门 */ + @Excel(name = "部门") + private String department; + public void setWorkId(String workId) { this.workId = workId; } - public String getWorkId() { return workId; } @@ -91,7 +111,6 @@ public class EquOutsourceWork extends BaseEntity { public void setOrderCode(String orderCode) { this.orderCode = orderCode; } - public String getOrderCode() { return orderCode; } @@ -99,107 +118,142 @@ public class EquOutsourceWork extends BaseEntity { public void setWorkCode(String workCode) { this.workCode = workCode; } - public String getWorkCode() { return workCode; } + + public void setRepairCode(String repairCode) { + this.repairCode = repairCode; + } + public String getRepairCode() { + return repairCode; + } + public void setWorkPerson(String workPerson) { this.workPerson = workPerson; } - public String getWorkPerson() { return workPerson; } + public void setWorkOutsourcingUnit(String workOutsourcingUnit) { this.workOutsourcingUnit = workOutsourcingUnit; } - public String getWorkOutsourcingUnit() { return workOutsourcingUnit; } + public void setWorkConnection(String workConnection) { this.workConnection = workConnection; } - public String getWorkConnection() { return workConnection; } + public void setWorkReason(String workReason) { this.workReason = workReason; } - public String getWorkReason() { return workReason; } + public void setWorkType(String workType) { this.workType = workType; } - public String getWorkType() { return workType; } + public void setEquipmentCode(String equipmentCode) { this.equipmentCode = equipmentCode; } - public String getEquipmentCode() { return equipmentCode; } + public void setWorkCost(String workCost) { this.workCost = workCost; } - public String getWorkCost() { return workCost; } + public void setWorkCostTime(String workCostTime) { this.workCostTime = workCostTime; } - public String getWorkCostTime() { return workCostTime; } + public void setAttr1(String attr1) { this.attr1 = attr1; } - public String getAttr1() { return attr1; } + public void setAttr2(String attr2) { this.attr2 = attr2; } - public String getAttr2() { return attr2; } + public void setAttr3(String attr3) { this.attr3 = attr3; } - public String getAttr3() { return attr3; } + public void setDelFlag(String delFlag) { this.delFlag = delFlag; } - public String getDelFlag() { return delFlag; } + public void setFactoryCode(String factoryCode) { this.factoryCode = factoryCode; } - public String getFactoryCode() { return factoryCode; } - public void setOutSourceReason(String outSourceReason) { - this.outSourceReason = outSourceReason; + //设备 + public void setEquipmentName(String equipmentName) { + this.equipmentName = equipmentName; + } + public String getEquipmentName() { + return equipmentName; + } + + public void setEquipmentSpec(String equipmentSpec) { + this.equipmentSpec = equipmentSpec; + } + public String getEquipmentSpec() { + return equipmentSpec; + } + + public void setEquipmentTypeName(String equipmentTypeName) { + this.equipmentTypeName = equipmentTypeName; + } + public String getEquipmentTypeName() { + return equipmentTypeName; + } + + public void setEquipmentLocation(String equipmentLocation) { + this.equipmentLocation = equipmentLocation; + } + public String getEquipmentLocation() { + return equipmentLocation; + } + + public void setDepartment(String department) { + this.department = department; } - public String getOutSourceReason() { - return outSourceReason; + public String getDepartment() { + return department; } @Override @@ -208,6 +262,7 @@ public class EquOutsourceWork extends BaseEntity { .append("workId", getWorkId()) .append("orderCode", getWorkCode()) .append("workCode", getWorkCode()) + .append("repairCode", getRepairCode()) .append("workPerson", getWorkPerson()) .append("workOutsourcingUnit", getWorkOutsourcingUnit()) .append("workConnection", getWorkConnection()) diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairOrder.java b/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairOrder.java index dfd01fd7..c0a3b409 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairOrder.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairOrder.java @@ -84,6 +84,10 @@ public class EquRepairOrder extends BaseEntity { /** 删除标志 */ private String delFlag; + /** 工厂编码 */ + @Excel(name = "工厂编码") + private String factoryCode; + //设备 /** 设备类型名称 */ @Excel(name = "设备类型名称") @@ -410,6 +414,13 @@ public class EquRepairOrder extends BaseEntity { return workDownMachine; } + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + public String getFactoryCode() { + return factoryCode; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairWorkOrder.java b/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairWorkOrder.java index 709ca98b..28068b08 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairWorkOrder.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/EquRepairWorkOrder.java @@ -1,6 +1,8 @@ package com.op.device.domain; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -73,10 +75,6 @@ public class EquRepairWorkOrder extends BaseEntity { @Excel(name = "原因分析") private String workReason; - /** 委外原因 */ - @Excel(name = "委外原因") - private String outSourceReason; - /** 故障描述 */ @Excel(name = "故障描述") private String workFaultDesc; @@ -131,7 +129,6 @@ public class EquRepairWorkOrder extends BaseEntity { @Excel(name = "维修结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private String workEndTime; - // 设备 /** 设备名称 */ @Excel(name = "设备名称") @@ -153,7 +150,6 @@ public class EquRepairWorkOrder extends BaseEntity { @Excel(name = "部门") private String department; - //报修 /** 故障描述 */ @Excel(name = "故障描述") @@ -181,6 +177,35 @@ public class EquRepairWorkOrder extends BaseEntity { @Excel(name = "联系方式") private String orderConnection; + //班组 + /** 班组名称 */ + @Excel(name = "班组名称") + private String teamName; + + /** 班组人员 */ + @Excel(name = "班组人员") + private String teamPerson; + + //时间列表 虚拟字段 + private List workPlanTimeArray; + private List workPlanDownTimeArray; + //计划开始时间、结束时间 + private String workPlanTimeStart; + private String workPlanTimeEnd; + //计划停机开始时间、结束时间 + private String workPlanDownTimeStart; + private String workPlanDownTimeEnd; + + //委外虚拟字段 + /** 委外维修人员 */ + private String outSourcePerson; + /** 委外维修原因 */ + private String outSourceReason; + /** 委外单位 */ + private String workOutsourcingUnit; + /** 联系方式 */ + private String workConnection; + //报修 public void setOrderDesc(String orderDesc) { @@ -263,14 +288,13 @@ public class EquRepairWorkOrder extends BaseEntity { public void setWorkId(String workId) { this.workId = workId; } - public String getWorkId() { return workId; } + public void setOrderId(String orderId) { this.orderId = orderId; } - public String getOrderId() { return orderId; } @@ -278,7 +302,6 @@ public class EquRepairWorkOrder extends BaseEntity { public void setWorkCode(String workCode) { this.workCode = workCode; } - public String getWorkCode() { return workCode; } @@ -286,155 +309,146 @@ public class EquRepairWorkOrder extends BaseEntity { public void setOrderCode(String orderCode) { this.orderCode = orderCode; } - public String getOrderCode() { return orderCode; } + public void setWorkHandle(String workHandle) { this.workHandle = workHandle; } - public String getWorkHandle() { return workHandle; } + public void setWorkPlanTime(Date workPlanTime) { this.workPlanTime = workPlanTime; } - public Date getWorkPlanTime() { return workPlanTime; } + public void setWorkPlanDownTime(Date workPlanDownTime) { this.workPlanDownTime = workPlanDownTime; } - public Date getWorkPlanDownTime() { return workPlanDownTime; } + public void setOrderRelevance(String orderRelevance) { this.orderRelevance = orderRelevance; } - public String getOrderRelevance() { return orderRelevance; } + public void setWorkPerson(String workPerson) { this.workPerson = workPerson; } - public String getWorkPerson() { return workPerson; } - public void setOutSourceReason(String outSourceReason) { - this.outSourceReason = outSourceReason; - } - public String getOutSourceReason() { - return outSourceReason; - } - public void setWorkTeam(String workTeam) { this.workTeam = workTeam; } - public String getWorkTeam() { return workTeam; } + public void setWorkOutsource(String workOutsource) { this.workOutsource = workOutsource; } - public String getWorkOutsource() { return workOutsource; } + public void setWorkDownMachine(String workDownMachine) { this.workDownMachine = workDownMachine; } - public String getWorkDownMachine() { return workDownMachine; } + public void setEquipmentCode(String equipmentCode) { this.equipmentCode = equipmentCode; } - public String getEquipmentCode() { return equipmentCode; } + public void setWorkReason(String workReason) { this.workReason = workReason; } - public String getWorkReason() { return workReason; } + public void setWorkFaultDesc(String workFaultDesc) { this.workFaultDesc = workFaultDesc; } - public String getWorkFaultDesc() { return workFaultDesc; } + public void setWorkCostTime(Date workCostTime) { this.workCostTime = workCostTime; } - public Date getWorkCostTime() { return workCostTime; } + public void setWorkCost(String workCost) { this.workCost = workCost; } - public String getWorkCost() { return workCost; } + public void setOutWorkId(String outWorkId) { this.outWorkId = outWorkId; } - public String getOutWorkId() { return outWorkId; } + public void setOutWorkCode(String outWorkCode) { this.outWorkCode = outWorkCode; } - public String getOutWorkCode() { return outWorkCode; } + public void setAttr1(String attr1) { this.attr1 = attr1; } - public String getAttr1() { return attr1; } + public void setAttr2(String attr2) { this.attr2 = attr2; } - public String getAttr2() { return attr2; } + public void setAttr3(String attr3) { this.attr3 = attr3; } - public String getAttr3() { return attr3; } + public void setDelFlag(String delFlag) { this.delFlag = delFlag; } - public String getDelFlag() { return delFlag; } + public void setFactoryCode(String factoryCode) { this.factoryCode = factoryCode; } - public String getFactoryCode() { return factoryCode; } @@ -443,7 +457,6 @@ public class EquRepairWorkOrder extends BaseEntity { public void setWorkStatus(String workStatus) { this.workStatus = workStatus; } - public String getWorkStatus() { return workStatus; } @@ -452,7 +465,6 @@ public class EquRepairWorkOrder extends BaseEntity { public void setWorkStartTime(String workStartTime) { this.workStartTime = workStartTime; } - public String getWorkStartTime() { return workStartTime; } @@ -460,11 +472,97 @@ public class EquRepairWorkOrder extends BaseEntity { public void setWorkEndTime(String workEndTime) { this.workEndTime = workEndTime; } - public String getWorkEndTime() { return workEndTime; } + //班组 + public void setTeamName(String teamName) { + this.teamName = teamName; + } + public String getTeamName() { + return teamName; + } + + public void setTeamPerson(String teamPerson) { + this.teamPerson = teamPerson; + } + public String getTeamPerson() { + return teamPerson; + } + + //时间列表 + public List getWorkPlanTimeArray() { + return workPlanTimeArray; + } + public void setWorkPlanTimeArray(List workPlanTimeArray) { + this.workPlanTimeArray = workPlanTimeArray; + } + + public List getWorkPlanDownTimeArray() { + return workPlanDownTimeArray; + } + public void setWorkPlanDownTimeArray(List workPlanDownTimeArray) { + this.workPlanDownTimeArray = workPlanDownTimeArray; + } + + //计划开始时间、结束时间 + public String getWorkPlanDownTimeStart() { + return workPlanDownTimeStart; + } + public void setWorkPlanDownTimeStart(String workPlanDownTimeStart) { + this.workPlanDownTimeStart = workPlanDownTimeStart; + } + public String getWorkPlanDownTimeEnd() { + return workPlanDownTimeEnd; + } + public void setWorkPlanDownTimeEnd(String workPlanDownTimeEnd) { + this.workPlanDownTimeEnd = workPlanDownTimeEnd; + } + + //计划停机开始时间、结束时间 + public String getWorkPlanTimeStart() { + return workPlanTimeStart; + } + public void setWorkPlanTimeStart(String workPlanTimeStart) { + this.workPlanTimeStart = workPlanTimeStart; + } + public String getWorkPlanTimeEnd() { + return workPlanTimeEnd; + } + public void setWorkPlanTimeEnd(String workPlanTimeEnd) { + this.workPlanTimeEnd = workPlanTimeEnd; + } + + //委外维修人员/委外维修原因 虚拟字段 + public void setOutSourceReason(String outSourceReason) { + this.outSourceReason = outSourceReason; + } + public String getOutSourceReason() { + return outSourceReason; + } + + public void setOutSourcePerson(String outSourcePerson) { + this.outSourcePerson = outSourcePerson; + } + public String getOutSourcePerson() { + return outSourcePerson; + } + + public void setWorkOutsourcingUnit(String workOutsourcingUnit) { + this.workOutsourcingUnit = workOutsourcingUnit; + } + public String getWorkOutsourcingUnit() { + return workOutsourcingUnit; + } + + public void setWorkConnection(String workConnection) { + this.workConnection = workConnection; + } + public String getWorkConnection() { + return workConnection; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) diff --git a/op-modules/op-device/src/main/java/com/op/device/mapper/EquTeamMapper.java b/op-modules/op-device/src/main/java/com/op/device/mapper/EquTeamMapper.java index 614f34e2..828fb06b 100644 --- a/op-modules/op-device/src/main/java/com/op/device/mapper/EquTeamMapper.java +++ b/op-modules/op-device/src/main/java/com/op/device/mapper/EquTeamMapper.java @@ -58,4 +58,7 @@ public interface EquTeamMapper { * @return 结果 */ public int deleteEquTeamByIds(String[] ids); + + //查询设备维修组列表 + public List getMaintenanceTeamList(EquTeam equTeam); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/IEquOutsourceWorkService.java b/op-modules/op-device/src/main/java/com/op/device/service/IEquOutsourceWorkService.java index 762872ef..906ae808 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/IEquOutsourceWorkService.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/IEquOutsourceWorkService.java @@ -2,6 +2,7 @@ package com.op.device.service; import java.util.List; import com.op.device.domain.EquOutsourceWork; +import com.op.device.domain.EquRepairWorkOrder; /** * 委外工单Service接口 diff --git a/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java b/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java index b6ffed93..fe2c5077 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java @@ -62,4 +62,7 @@ public interface IEquRepairWorkOrderService { //获取维修人员列表 public List getMaintenancePersonList(EquEquipment equEquipment); + + //委外申请 + public int applyEquOutsourceWork(EquRepairWorkOrder equRepairWorkOrder); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/IEquTeamService.java b/op-modules/op-device/src/main/java/com/op/device/service/IEquTeamService.java index 245d2530..2c80041c 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/IEquTeamService.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/IEquTeamService.java @@ -57,4 +57,7 @@ public interface IEquTeamService { * @return 结果 */ public int deleteEquTeamById(String id); + + //维修组列表 + List getMaintenanceTeamList(EquTeam equTeam); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java index 3bb88a81..869f0559 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java @@ -13,6 +13,10 @@ import org.springframework.stereotype.Service; import com.op.device.mapper.EquOutsourceWorkMapper; import com.op.device.domain.EquOutsourceWork; import com.op.device.service.IEquOutsourceWorkService; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; /** * 委外工单Service业务层处理 @@ -61,22 +65,18 @@ public class EquOutsourceWorkServiceImpl implements IEquOutsourceWorkService { @Override @DS("#header.poolName") public int insertEquOutsourceWork(EquOutsourceWork equOutsourceWork) { - //转委外 + equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID()); String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber()); String equipmentCode = equOutsourceWork.getEquipmentCode(); equOutsourceWork.setWorkCode("WW"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); - if(equOutsourceWork.getWorkId()!= null){ - EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder(); - equRepairWorkOrder.setWorkId(equOutsourceWork.getWorkId()); - equRepairWorkOrder.setWorkOutsource("1"); - equRepairWorkOrder.setOutWorkCode(equOutsourceWork.getWorkCode()); - equRepairWorkOrderMapper.updateWorkOutsource(equRepairWorkOrder); - equOutsourceWork.setWorkId(""); - } - equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID()); - equOutsourceWork.setWorkReason(equOutsourceWork.getOutSourceReason()); equOutsourceWork.setCreateTime(DateUtils.getNowDate()); equOutsourceWork.setCreateBy(SecurityUtils.getUsername()); + equOutsourceWork.setOrderCode("无"); + equOutsourceWork.setRepairCode("无"); + //工厂 + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + equOutsourceWork.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); return equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java index b4b6eda9..0fbbf8a4 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java @@ -17,6 +17,10 @@ import org.springframework.stereotype.Service; import com.op.device.mapper.EquRepairOrderMapper; import com.op.device.domain.EquRepairOrder; import com.op.device.service.IEquRepairOrderService; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; /** * 故障报修Service业务层处理 @@ -79,6 +83,9 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService { equRepairOrder.setCreateTime(DateUtils.getNowDate()); equRepairOrder.setCreateBy(SecurityUtils.getUsername()); equRepairOrder.setOrderStatus("待审核"); +// HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); +// String key = "#header.poolName"; +// equRepairOrder.setFactory(request.getHeader(key.substring(8)).replace("ds_","")); return equRepairOrderMapper.insertEquRepairOrder(equRepairOrder); } @@ -115,9 +122,14 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService { equRepairWorkOrder.setWorkDownMachine("0"); } equRepairWorkOrder.setWorkFaultDesc(equRepairOrder.getOrderDesc()); + equRepairWorkOrder.setWorkStatus("0"); equRepairWorkOrder.setWorkId(IdUtils.fastSimpleUUID()); equRepairWorkOrder.setCreateTime(DateUtils.getNowDate()); equRepairWorkOrder.setCreateBy(SecurityUtils.getUsername()); + //工厂 + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + equRepairWorkOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); equRepairWorkOrderMapper.insertEquRepairWorkOrder(equRepairWorkOrder); equRepairOrder.setOrderStatus("审核通过"); }else if(equRepairOrder.getRepairDestination().equals("不维修")){ @@ -129,11 +141,18 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService { equOutsourceWork.setOrderCode(equRepairOrder.getOrderCode()); String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber()); String equipmentCode = equRepairOrder.getEquipmentCode(); + equOutsourceWork.setEquipmentCode(equipmentCode); equOutsourceWork.setWorkCode("WW"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); + equOutsourceWork.setRepairCode("无"); equOutsourceWork.setWorkConnection(equRepairOrder.getWorkConnection()); equOutsourceWork.setWorkOutsourcingUnit(equRepairOrder.getWorkOutsourcingUnit()); equOutsourceWork.setWorkPerson(equRepairOrder.getOutSourcePerson()); equOutsourceWork.setWorkReason(equRepairOrder.getOutSourceReason()); + equOutsourceWork.setCreateBy(SecurityUtils.getUsername()); + equOutsourceWork.setCreateTime(DateUtils.getNowDate()); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + equOutsourceWork.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork); equRepairOrder.setOrderStatus("审核通过"); }else if(equRepairOrder.getRepairDestination().equals("立即维修")){ diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java index 04d24992..be3f3be3 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java @@ -1,5 +1,6 @@ package com.op.device.service.impl; +import java.text.SimpleDateFormat; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; @@ -7,11 +8,17 @@ import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.uuid.IdUtils; import com.op.common.security.utils.SecurityUtils; import com.op.device.domain.EquEquipment; +import com.op.device.domain.EquOutsourceWork; +import com.op.device.mapper.EquOutsourceWorkMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.device.mapper.EquRepairWorkOrderMapper; import com.op.device.domain.EquRepairWorkOrder; import com.op.device.service.IEquRepairWorkOrderService; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; /** * 维修工单Service业务层处理 @@ -24,6 +31,9 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService @Autowired private EquRepairWorkOrderMapper equRepairWorkOrderMapper; + @Autowired + private EquOutsourceWorkMapper equOutsourceWorkMapper; + /** * 查询维修工单 * @@ -45,6 +55,22 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService @Override @DS("#header.poolName") public List selectEquRepairWorkOrderList(EquRepairWorkOrder equRepairWorkOrder) { + if (equRepairWorkOrder.getWorkPlanTimeArray() != null) { + // 设置创建日期开始和结束值 + if (equRepairWorkOrder.getWorkPlanTimeArray().size() == 2) { + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); + equRepairWorkOrder.setWorkPlanTimeStart(formatter.format(equRepairWorkOrder.getWorkPlanTimeArray().get(0))); + equRepairWorkOrder.setWorkPlanTimeEnd(formatter.format(equRepairWorkOrder.getWorkPlanTimeArray().get(1))); + } + } + if (equRepairWorkOrder.getWorkPlanDownTimeArray() != null) { + // 设置更新日期开始和结束 + if (equRepairWorkOrder.getWorkPlanDownTimeArray().size() == 2) { + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); + equRepairWorkOrder.setWorkPlanDownTimeStart(formatter.format(equRepairWorkOrder.getWorkPlanDownTimeArray().get(0))); + equRepairWorkOrder.setWorkPlanDownTimeEnd(formatter.format(equRepairWorkOrder.getWorkPlanDownTimeArray().get(1))); + } + } return equRepairWorkOrderMapper.selectEquRepairWorkOrderList(equRepairWorkOrder); } @@ -62,9 +88,16 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService String serialNum = String.format("%03d", equRepairWorkOrderMapper.selectWorkCodeSerialNumber()); String equipmentCode = equRepairWorkOrder.getEquipmentCode(); //维修单号 + equRepairWorkOrder.setOrderCode("无"); + equRepairWorkOrder.setOutWorkCode("无"); + equRepairWorkOrder.setWorkStatus("待维修"); equRepairWorkOrder.setWorkCode("WX"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); equRepairWorkOrder.setCreateBy(SecurityUtils.getUsername()); equRepairWorkOrder.setCreateTime(DateUtils.getNowDate()); + //工厂号 + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + equRepairWorkOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); return equRepairWorkOrderMapper.insertEquRepairWorkOrder(equRepairWorkOrder); } @@ -72,11 +105,15 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService * 修改维修工单 * * @param equRepairWorkOrder 维修工单 - * @return 结果 + * @return 结果outSourcePerson */ @Override @DS("#header.poolName") public int updateEquRepairWorkOrder(EquRepairWorkOrder equRepairWorkOrder) { + if(equRepairWorkOrder.getWorkDownMachine().equals("0")){ + equRepairWorkOrder.setWorkPlanDownTime(null); + } + equRepairWorkOrder.setUpdateBy(SecurityUtils.getUsername()); equRepairWorkOrder.setUpdateTime(DateUtils.getNowDate()); return equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder); } @@ -110,4 +147,32 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService public List getMaintenancePersonList(EquEquipment equEquipment) { return equRepairWorkOrderMapper.getMaintenancePersonList(equEquipment); } + + //委外申请 + @Override + @DS("#header.poolName") + public int applyEquOutsourceWork(EquRepairWorkOrder equRepairWorkOrder) { + //转委外 + EquOutsourceWork equOutsourceWork = new EquOutsourceWork(); + equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID()); + //委外工单号 + String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber()); + String equipmentCode = equRepairWorkOrder.getEquipmentCode(); + equOutsourceWork.setOrderCode("无"); + equOutsourceWork.setWorkCode("WW"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); + equOutsourceWork.setEquipmentCode(equipmentCode); + equOutsourceWork.setRepairCode(equRepairWorkOrder.getWorkCode()); + equOutsourceWork.setWorkReason(equRepairWorkOrder.getOutSourceReason()); + equOutsourceWork.setWorkPerson(equRepairWorkOrder.getOutSourcePerson()); + equOutsourceWork.setWorkOutsourcingUnit(equRepairWorkOrder.getWorkOutsourcingUnit()); + equOutsourceWork.setWorkConnection(equRepairWorkOrder.getWorkConnection()); + equOutsourceWork.setCreateTime(DateUtils.getNowDate()); + equOutsourceWork.setCreateBy(SecurityUtils.getUsername()); + if(equRepairWorkOrder.getWorkId()!= null){ + equRepairWorkOrder.setWorkOutsource("1"); + equRepairWorkOrder.setOutWorkCode(equOutsourceWork.getWorkCode()); + equRepairWorkOrderMapper.updateWorkOutsource(equRepairWorkOrder); + } + return equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork); + } } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquTeamServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquTeamServiceImpl.java index 3491c18c..d4d76a1f 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquTeamServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquTeamServiceImpl.java @@ -99,4 +99,13 @@ public class EquTeamServiceImpl implements IEquTeamService { public int deleteEquTeamById(String id) { return equTeamMapper.deleteEquTeamById(id); } + + /** + * 查询设备维修组列表 + */ + @Override + @DS("#header.poolName") + public List getMaintenanceTeamList(EquTeam equTeam) { + return equTeamMapper.getMaintenanceTeamList(equTeam); + } } diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml index d171c4d3..b835a9c9 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml @@ -8,6 +8,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -25,24 +26,59 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + - select work_id, work_code,order_code, work_person, work_outsourcing_unit, work_connection, work_reason, work_type, equipment_code, work_cost, work_cost_time, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time, factory_code from equ_outsource_work + select work_id, work_code,order_code, repair_code, work_person, work_outsourcing_unit, work_connection, work_reason, work_type, equipment_code, work_cost, work_cost_time, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time, factory_code from equ_outsource_work @@ -66,6 +102,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" work_id, work_code, order_code, + repair_code, work_person, work_outsourcing_unit, work_connection, @@ -88,6 +125,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{workId}, #{workCode}, #{orderCode}, + #{repairCode}, #{workPerson}, #{workOutsourcingUnit}, #{workConnection}, @@ -113,6 +151,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" work_code = #{workCode}, order_code = #{orderCode}, + repair_code = #{repairCode}, work_person = #{workPerson}, work_outsourcing_unit = #{workOutsourcingUnit}, work_connection = #{workConnection}, diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml index 8f4dd627..090182f4 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml @@ -26,6 +26,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -46,7 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select order_id, order_code, equipment_code, order_desc, order_breakdown_time, order_source, order_time, order_handle, order_repairman, order_connection, order_status, order_relevance, order_picture, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time,repair_destination from equ_repair_order + select order_id, order_code, equipment_code, order_desc, order_breakdown_time, order_source, order_time, order_handle, order_repairman, order_connection, order_status, order_relevance, order_picture, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time,factory_code,repair_destination from equ_repair_order - + select + erwo.work_id, + erwo.order_id, + erwo.order_code, + erwo.work_code, + erwo.work_handle, + erwo.work_plan_time, + erwo.work_plan_down_time, + erwo.order_relevance, + erwo.work_person, + erwo.work_team, + erwo.work_outsource, + erwo.work_down_machine, + erwo.equipment_code, + erwo.work_reason, + erwo.work_fault_desc, + erwo.work_start_time, + erwo.work_end_time, + erwo.work_cost_time, + erwo.work_cost, + erwo.work_status, + erwo.out_work_id, + erwo.out_work_code, + erwo.attr1, + erwo.attr2, + erwo.attr3, + erwo.create_by, + erwo.create_time, + erwo.update_time, + erwo.update_by, + erwo.del_flag, + erwo.factory_code, + be.equipment_name, + et.team_name, + et.team_person + from equ_repair_work_order erwo + left join base_equipment be on erwo.equipment_code = be.equipment_code + left join equ_team et on erwo.work_team = et.team_code - and order_id = #{orderId} - and work_code like concat('%', #{workCode}, '%') - and order_code like concat('%', #{orderCode}, '%') + and erwo.order_id = #{orderId} + and erwo.work_code like concat('%', #{workCode}, '%') + and erwo.order_code like concat('%', #{orderCode}, '%') - and equipment_code like concat('%', #{equipmentCode}, '%') - and work_fault_desc = #{workFaultDesc} - and work_plan_time = #{workPlanTime} - and work_down_machine = #{workDownMachine} - and work_plan_down_time = #{workPlanDownTime} + and erwo.equipment_code like concat('%', #{equipmentCode}, '%') + and erwo.work_fault_desc = #{workFaultDesc} + and CONVERT(date,work_plan_time) >= #{workPlanTimeStart} + and #{workPlanTimeEnd} >= CONVERT(date,erwo.work_plan_time) + and erwo.work_down_machine = #{workDownMachine} + and CONVERT(date,work_plan_down_time) >= #{workPlanDownTimeStart} + and #{workPlanDownTimeEnd} >= CONVERT(date,erwo.work_plan_down_time) - and work_person like concat('%', #{workPerson}, '%') - and work_team like concat('%', #{workTeam}, '%') + and erwo.work_person like concat('%', #{workPerson}, '%') + and erwo.work_team like concat('%', #{workTeam}, '%') - and work_outsource = #{workOutsource} - and out_work_code = #{outWorkCode} + and erwo.work_outsource = #{workOutsource} + and erwo.out_work_code like concat('%', #{outWorkCode}, '%') - and work_reason = #{workReason} - and work_start_time = #{workStartTime} - and work_end_time = #{workEndTime} - and work_cost_time = #{workCostTime} - and work_cost = #{workCost} - and work_status = #{workStatus} - and factory_code = #{factoryCode} + and erwo.work_reason = #{workReason} + and erwo.work_start_time = #{workStartTime} + and erwo.work_end_time = #{workEndTime} + and erwo.work_cost_time = #{workCostTime} + and erwo.work_cost = #{workCost} + and erwo.work_status = #{workStatus} + and erwo.factory_code = #{factoryCode} - and work_handle = #{workHandle} - and order_relevance = #{orderRelevance} - and del_flag = '0' + and erwo.work_handle = #{workHandle} + and erwo.order_relevance = #{orderRelevance} + and erwo.del_flag = '0' - ORDER BY create_time DESC + ORDER BY erwo.create_time DESC where id = #{id} - where del_flag = '0' + and del_flag = '0' @@ -98,4 +98,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id} + + + \ No newline at end of file diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java index c5432c13..3221eee7 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java @@ -111,6 +111,7 @@ public class WCSInterfaceController extends BaseController { List tables = new ArrayList<>(); tables.add("mes_plc_log"); tables.add("mes_interface_log"); + tables.add("sys_sap_log"); return success(wCInterfaceService.dataClearTask(tables)); } //定期备份清理表 diff --git a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderController.java b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderController.java index 57cb0ef4..e819116b 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderController.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderController.java @@ -252,8 +252,8 @@ public class ProOrderController extends BaseController { */ @Log(title = "手动执行同步SAP订单", businessType = BusinessType.INSERT) @PostMapping("/syncSAP") - public AjaxResult syncSAP() { - return proOrderService.syncSAP(); + public void syncSAP() { + proOrderService.syncSAP(); } @Log(title = "自动同步SAP订单", businessType = BusinessType.INSERT) diff --git a/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderMapper.java b/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderMapper.java index 3a90dbc5..94ccc952 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderMapper.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderMapper.java @@ -9,6 +9,7 @@ import com.op.plan.domain.ProOrder; import com.op.plan.domain.ProShift; import com.op.plan.domain.*; import com.op.plan.domain.vo.CascaderDTO; +import com.op.system.api.domain.SysSapLog; import com.op.system.api.model.SapProOrder; import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Mapper; @@ -220,4 +221,6 @@ public interface ProOrderMapper { * @param orderCode */ void updateOrderStatusCompleteByOrderCode(String orderCode); + + void addSapLog(SysSapLog sysSapLog); } diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderService.java b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderService.java index 12864357..97a69c21 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderService.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderService.java @@ -97,7 +97,7 @@ public interface IProOrderService { public AjaxResult getOrderList(String id); - public AjaxResult syncSAP(); + public void syncSAP(); /** * 处理表格信息 diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java index 0f839de1..3d04a8d8 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java @@ -27,6 +27,7 @@ import com.op.plan.domain.dto.SplitOrderDTO; import com.op.plan.mapper.*; import com.op.system.api.RemoteSapService; import com.op.system.api.RemoteUserService; +import com.op.system.api.domain.SysSapLog; import com.op.system.api.domain.SysUser; import com.op.system.api.domain.sap.SapShopOrderQuery; import com.op.system.api.model.SapProOrder; @@ -418,32 +419,39 @@ public class ProOrderServiceImpl implements IProOrderService { */ @Override @DS("#header.poolName") - public AjaxResult syncSAP() { + public void syncSAP() { SapShopOrderQuery sapqo = new SapShopOrderQuery(); // sapqo.setCreateTime(DateUtils.addDays(DateUtils.getNowDate(),-4)); // //获取当前所选工厂 -// HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); -// String key = "#header.poolName"; -// sapqo.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + sapqo.setWerk(request.getHeader(key.substring(8)).replace("ds_","")); + SapProOrder maxCreateTime = proOrderMapper.getMaxCreatetime(); if(maxCreateTime == null ){ sapqo.setErdat(DateFormatUtils.format(new Date(), "yyyyMMdd"));//S_ERDAT(创建日期) 例如:20230923 }else{ sapqo.setErdat(maxCreateTime.getCreateTimeStr());//S_ERDAT(创建日期) 例如:20230923 } + + //添加调用sap日志 + SysSapLog sysSapLog = new SysSapLog(); + sysSapLog.setId(IdUtils.fastSimpleUUID()); + sysSapLog.setMesssge(sapqo.toString()); + sysSapLog.setMethod("syncSAP"); + sysSapLog.setReqcode("请求"); + sysSapLog.setCreateTime(DateUtils.getNowDate()); + proOrderMapper.addSapLog(sysSapLog); + //取>=20230923的sap数据 R> rSapProOrder = remoteSapService.shopOrderSync(sapqo);//sap只能同步指定日期的数据 - if(rSapProOrder == null){ - return AjaxResult.error("无"+sapqo.getErdat()+"之后的最新订单"); - } - List newOrders = rSapProOrder.getData(); - - - syncSAPFunc(newOrders,SecurityUtils.getUsername()); - - return success(); + if(CollectionUtils.isEmpty(newOrders)){ + System.out.println("无"+sapqo.getErdat()+"之后的最新订单"); + }else { + syncSAPFunc(newOrders, "Job"); + } } public String syncSAPFunc(List newOrders,String syncUser){ @@ -703,12 +711,22 @@ public class ProOrderServiceImpl implements IProOrderService { sapqo.setErdat(maxCreateTime.getCreateTimeStr());//S_ERDAT(创建日期) 例如:20230923 } + //添加调用sap日志 + SysSapLog sysSapLog = new SysSapLog(); + sysSapLog.setId(IdUtils.fastSimpleUUID()); + sysSapLog.setMesssge(sapqo.toString()); + sysSapLog.setMethod("shopOrderSync"); + sysSapLog.setReqcode("请求"); + sysSapLog.setCreateTime(DateUtils.getNowDate()); + proOrderMapper.addSapLog(sysSapLog); + R> rSapProOrder = remoteSapService.shopOrderSync(sapqo); List newOrders = rSapProOrder.getData(); if(CollectionUtils.isEmpty(newOrders)){ - logger.error("无"+sapqo.getErdat()+"之后的最新订单"); + System.out.println("无"+sapqo.getErdat()+"之后的最新订单"); + }else { + syncSAPFunc(newOrders, "Job"); } - syncSAPFunc(newOrders,"Job"); } /** @@ -873,7 +891,7 @@ public class ProOrderServiceImpl implements IProOrderService { proOrder.setUpdateBy(SecurityContextHolder.getUserName()); proOrder.setUpdateTime(date); // 订单状态逻辑 - if (proOrder.getQuantity().longValue() == (proOrder.getQuantitySplit().longValue() + Long.valueOf(proOrder.getAtrr1()))) { + if (proOrder.getQuantity().longValue() == proOrder.getQuantitySplit().longValue()) { // 已拆分 proOrder.setStatus("o2"); }else { 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 df172021..b0da33ed 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 @@ -17,6 +17,7 @@ import com.op.plan.domain.vo.CascaderDTO; import com.op.plan.mapper.*; import com.op.plan.service.IProOrderWorkorderService; import com.op.system.api.RemoteSapService; +import com.op.system.api.domain.SysSapLog; import com.op.system.api.domain.dto.MesPrepareDTO; import com.op.system.api.domain.dto.MesPrepareDetailDTO; import com.op.system.api.domain.sap.SapCreateOrder; @@ -264,6 +265,16 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { sap.setDates(DateUtils.parseDateToStr("yyyy-MM-dd", whiteOrder.getProductDate()));//开始时间 sap.setDatee(DateUtils.parseDateToStr("yyyy-MM-dd", whiteOrder.getProductDate()));//完成时间 sapList.add(sap); + + //添加调用sap日志 + SysSapLog sysSapLog = new SysSapLog(); + sysSapLog.setId(IdUtils.fastSimpleUUID()); + sysSapLog.setMesssge(sapList.toString()); + sysSapLog.setMethod("downProOrderWorkorderByWorkorderIds"); + sysSapLog.setReqcode("请求"); + sysSapLog.setCreateTime(DateUtils.getNowDate()); + proOrderMapper.addSapLog(sysSapLog); + R> r = remoteSapService.SapCreateOrder(sapList); logger.info("sap工单回传:" + r.getMsg()); if (500 == r.getCode()) { 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 e51f9e40..252b3d60 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 @@ -256,6 +256,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GETDATE(), + + insert into sys_sap_log + (id,messsge,create_time,reqcode,method,remark,status) + values( + #{id},#{messsge}, #{createTime}, #{reqcode},#{method},#{remark},#{status}) + update pro_order @@ -292,8 +298,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update pro_order - quantity_split += #{atrr1}, - quantity_split = #{atrr1}, + quantity_split = #{quantitySplit}, update_by = #{updateBy}, update_time = #{updateTime}, status = #{status}, 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 efbd9d4a..9df23bee 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 @@ -1,10 +1,13 @@ package com.op.quality.domain; +import com.fasterxml.jackson.annotation.JsonFormat; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.op.common.core.annotation.Excel; import com.op.common.core.web.domain.BaseEntity; +import java.util.Date; + /** * 不合格处理对象 qc_check_unqualified * @@ -61,6 +64,173 @@ public class QcCheckUnqualified extends BaseEntity { private String type; + private String checkType; + private String checkName; + private String checkNo; + private String incomeBatchNo; + private String orderNo; + private String materialCode; + private String materialName; + private String quality; + private String unit; + private String supplierCode; + private String supplierName; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "检验时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private Date incomeTime; + private String checkLoc; + private String checkStatus; + private String checkManCode; + private String checkManName; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "检验时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private String checkTime; + private String checkResult; + + public String getCheckType() { + return checkType; + } + + public void setCheckType(String checkType) { + this.checkType = checkType; + } + + public String getCheckName() { + return checkName; + } + + public void setCheckName(String checkName) { + this.checkName = checkName; + } + + public String getCheckNo() { + return checkNo; + } + + public void setCheckNo(String checkNo) { + this.checkNo = checkNo; + } + + public String getIncomeBatchNo() { + return incomeBatchNo; + } + + public void setIncomeBatchNo(String incomeBatchNo) { + this.incomeBatchNo = incomeBatchNo; + } + + public String getOrderNo() { + return orderNo; + } + + public void setOrderNo(String orderNo) { + this.orderNo = orderNo; + } + + public String getMaterialCode() { + return materialCode; + } + + public void setMaterialCode(String materialCode) { + this.materialCode = materialCode; + } + + public String getMaterialName() { + return materialName; + } + + public void setMaterialName(String materialName) { + this.materialName = materialName; + } + + public String getQuality() { + return quality; + } + + public void setQuality(String quality) { + this.quality = quality; + } + + public String getUnit() { + return unit; + } + + public void setUnit(String unit) { + this.unit = unit; + } + + public String getSupplierCode() { + return supplierCode; + } + + public void setSupplierCode(String supplierCode) { + this.supplierCode = supplierCode; + } + + public String getSupplierName() { + return supplierName; + } + + public void setSupplierName(String supplierName) { + this.supplierName = supplierName; + } + + public Date getIncomeTime() { + return incomeTime; + } + + public void setIncomeTime(Date incomeTime) { + this.incomeTime = incomeTime; + } + + public String getCheckLoc() { + return checkLoc; + } + + public void setCheckLoc(String checkLoc) { + this.checkLoc = checkLoc; + } + + public String getCheckStatus() { + return checkStatus; + } + + public void setCheckStatus(String checkStatus) { + this.checkStatus = checkStatus; + } + + 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 getCheckTime() { + return checkTime; + } + + public void setCheckTime(String checkTime) { + this.checkTime = checkTime; + } + + public String getCheckResult() { + return checkResult; + } + + public void setCheckResult(String checkResult) { + this.checkResult = checkResult; + } + public String getType() { return type; } 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 dbf6ab7f..aa4c805a 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 @@ -16,6 +16,7 @@ import com.op.system.api.domain.SysUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.quality.service.IQcCheckTaskIncomeService; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -99,12 +100,6 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { qcCheckTaskIncome.setCheckNo(bpDD+liushuiStr); - /**qc_check_task_income**/ - String beLongId = IdUtils.fastSimpleUUID(); - qcCheckTaskIncome.setRecordId(beLongId); - qcCheckTaskIncome.setFactoryCode(factoryCode); - qcCheckTaskIncome.setCreateTime(nowDate); - qcCheckTaskIncomeMapper.insertQcCheckTaskIncome(qcCheckTaskIncome); /**取检测项**/ QcCheckTypeProject qctp= new QcCheckTypeProject(); @@ -127,6 +122,13 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService { return 0;//没有找到检测项目 } + /**qc_check_task**/ + String beLongId = IdUtils.fastSimpleUUID(); + qcCheckTaskIncome.setRecordId(beLongId); + qcCheckTaskIncome.setFactoryCode(factoryCode); + qcCheckTaskIncome.setCreateTime(nowDate); + qcCheckTaskIncomeMapper.insertQcCheckTaskIncome(qcCheckTaskIncome); + /**qc_check_task_detail**/ for(QcCheckTaskDetail item:items){ item.setRecordId(IdUtils.fastSimpleUUID()); item.setBelongTo(beLongId); 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 8c21e88b..c8b075cc 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 @@ -99,13 +99,6 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService qcCheckTaskProduce.setCheckNo(bpDD+liushuiStr); - /**qc_check_task_produce**/ - String beLongId = IdUtils.fastSimpleUUID(); - qcCheckTaskProduce.setRecordId(beLongId); - qcCheckTaskProduce.setFactoryCode(factoryCode); - qcCheckTaskProduce.setCreateTime(nowDate); - qcCheckTaskProduceMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); - /**取检测项**/ QcCheckTypeProject qctp= new QcCheckTypeProject(); qctp.setTypeId(qcCheckTaskProduce.getCheckType());//生产过程检验 @@ -127,6 +120,13 @@ public class QcCheckTaskProduceServiceImpl implements IQcCheckTaskProduceService return 0;//没有找到检测项目 } + /**qc_check_task**/ + String beLongId = IdUtils.fastSimpleUUID(); + qcCheckTaskProduce.setRecordId(beLongId); + qcCheckTaskProduce.setFactoryCode(factoryCode); + qcCheckTaskProduce.setCreateTime(nowDate); + qcCheckTaskProduceMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); + /**qc_check_task_detail**/ for(QcCheckTaskDetail item:items){ item.setRecordId(IdUtils.fastSimpleUUID()); item.setBelongTo(beLongId); 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 c278f5dd..95a810f3 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 @@ -100,13 +100,6 @@ public class QcCheckTaskWarehousingServiceImpl implements IQcCheckTaskWarehousin qcCheckTaskWarehousing.setCheckNo(bpDD+liushuiStr); - /**qc_check_task_warehousing**/ - String beLongId = IdUtils.fastSimpleUUID(); - qcCheckTaskWarehousing.setRecordId(beLongId); - qcCheckTaskWarehousing.setFactoryCode(factoryCode); - qcCheckTaskWarehousing.setCreateTime(nowDate); - qcCheckTaskWarehousingMapper.insertQcCheckTaskWarehousing(qcCheckTaskWarehousing); - /**取检测项**/ QcCheckTypeProject qctp= new QcCheckTypeProject(); qctp.setTypeId(qcCheckTaskWarehousing.getCheckType());//生产过程检验 @@ -128,6 +121,13 @@ public class QcCheckTaskWarehousingServiceImpl implements IQcCheckTaskWarehousin return 0;//没有找到检测项目 } + /**qc_check_task**/ + String beLongId = IdUtils.fastSimpleUUID(); + qcCheckTaskWarehousing.setRecordId(beLongId); + qcCheckTaskWarehousing.setFactoryCode(factoryCode); + qcCheckTaskWarehousing.setCreateTime(nowDate); + qcCheckTaskWarehousingMapper.insertQcCheckTaskWarehousing(qcCheckTaskWarehousing); + /**qc_check_task_detail**/ for(QcCheckTaskDetail item:items){ item.setRecordId(IdUtils.fastSimpleUUID()); item.setBelongTo(beLongId); 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 020febbb..ff946001 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 @@ -29,29 +29,43 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from qc_check_unqualified - + select qcu.id,qcu.task_id taskId,qcu.status,qcu.next_node_code nextNodeCode,qcu.next_node_name nextNodeName,qcu.remark, + 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.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 + left join qc_check_type qtn on qtn.id = qct.check_type and task_id like concat('%', #{taskId}, '%') and status = #{status} + and qct.order_no like concat('%', #{orderNo}, '%') + and qct.check_no like concat('%', #{checkNo}, '%') and next_node_code = #{nextNodeCode} and next_node_name like concat('%', #{nextNodeName}, '%') - and attr1 = #{attr1} - and attr2 = #{attr2} - and attr3 = #{attr3} - and attr4 = #{attr4} - and del_flag = #{delFlag} - and CONVERT(varchar(30),create_time, 120) >= #{checkTimeStart} - and #{checkTimeEnd} > CONVERT(varchar(30),create_time, 120) - and factory_code = #{factoryCode} + and qct.material_code like concat('%', #{materialCode}, '%') + and qct.material_name like concat('%', #{materialName}, '%') + and qcu.del_flag = '0' + and CONVERT(varchar(30),qct.check_time, 120) >= #{checkTimeStart} + and #{checkTimeEnd} > CONVERT(varchar(30),qct.check_time, 120) + - + select qcu.id,qcu.task_id taskId,qcu.status,qcu.next_node_code nextNodeCode,qcu.next_node_name nextNodeName,qcu.remark, + 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.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 + left join qc_check_type qtn on qtn.id = qct.check_type + where qcu.id = #{id} diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java index 713846e6..796dfbf6 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java @@ -47,7 +47,7 @@ public class SapOrderServiceImpl implements SapOrderService { // S_WERKS(工厂) S_AUFNR(订单号) S_MATNR(物料号) S_ERDAT(创建日期) 例如:20230923 if (!StringUtils.isNull(sapShopOrderQuery.getWerk())){ - JCoTable S_WERKS = func.getTableParameterList().getTable("S_WERKS"); + JCoTable S_WERKS = func.getTableParameterList().getTable("S_PWERK"); S_WERKS.appendRow(); S_WERKS.setValue(Constants.SIGN, "I"); S_WERKS.setValue(Constants.OPTION, "EQ"); diff --git a/op-modules/op-technology/src/main/resources/mapper/technology/ProRouteProductMapper.xml b/op-modules/op-technology/src/main/resources/mapper/technology/ProRouteProductMapper.xml index dcc8b5bf..a0af3125 100644 --- a/op-modules/op-technology/src/main/resources/mapper/technology/ProRouteProductMapper.xml +++ b/op-modules/op-technology/src/main/resources/mapper/technology/ProRouteProductMapper.xml @@ -63,8 +63,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from pro_route_product pp where pp.route_id = #{routeId} ) - and bp.product_desc_zh like concat('%', #{itemName}, '%') - + and (bp.product_desc_zh like concat('%', #{itemName}, '%') + or bp.product_code like concat('%', #{itemName}, '%')) @@ -81,7 +81,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from pro_route_product pp left join base_product bp on pp.item_code = bp.product_code where pp.route_id = #{routeId} - and bp.product_desc_zh like concat('%', #{itemName}, '%') + and (bp.product_desc_zh like concat('%', #{itemName}, '%') + or bp.product_code like concat('%', #{itemName}, '%'))