diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java index 680f81b76..f5840b140 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteOpenService.java @@ -6,6 +6,7 @@ import com.op.system.api.factory.RemoteOpenFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; import java.util.Map; @@ -16,8 +17,12 @@ import java.util.Map; */ @FeignClient(contextId = "remoteOpenService", value = ServiceNameConstants.OPEN_SERVICE, fallbackFactory = RemoteOpenFallbackFactory.class) public interface RemoteOpenService { - /**提交ZL0010-来料检验不合格控制流程**/ + /**提交流程**/ @PostMapping("/openInterface/OAInspection") public AjaxResult OAInspection(@RequestBody(required = false) Map paramMap); + /**获取流程信息**/ + + @PostMapping("/openInterface/GetOaNodeInfo") + public AjaxResult GetOaNodeInfo(@RequestParam String requestId); } diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java index b3d5bc637..8ef1ae4d9 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteOpenFallbackFactory.java @@ -8,6 +8,7 @@ import org.slf4j.LoggerFactory; import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; import java.util.Map; @@ -20,7 +21,12 @@ public class RemoteOpenFallbackFactory implements FallbackFactory paramMap) { - return AjaxResult.error("提交ZL0010-来料检验不合格控制流程失败"+throwable.getMessage()); + return AjaxResult.error("提交流程失败"+throwable.getMessage()); + } + + @Override + public AjaxResult GetOaNodeInfo(@RequestParam String requestId) { + return AjaxResult.error("获取流程失败"+throwable.getMessage()); } }; } diff --git a/op-common/op-common-core/src/main/java/com/op/common/core/constant/Constants.java b/op-common/op-common-core/src/main/java/com/op/common/core/constant/Constants.java index 81d7b51f7..55d6df0aa 100644 --- a/op-common/op-common-core/src/main/java/com/op/common/core/constant/Constants.java +++ b/op-common/op-common-core/src/main/java/com/op/common/core/constant/Constants.java @@ -148,9 +148,11 @@ public class Constants { //领料 public static final Integer LL=261; - //来料检验不合格控制流程workflowId + //ZL0010-来料检验不合格控制流程 - public static final Integer WORKFLOWID=26235; + public static final Integer WORKFLOWID_ZL0010=26235; + + //ZL0020-成品检验控制流程 + public static final Integer WORKFLOWID_ZL0020=26234; - //过程检验不合格控制流程workflowId } diff --git a/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java b/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java index 18d6e43dd..e54260326 100644 --- a/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java +++ b/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java @@ -72,8 +72,7 @@ public class DevicePDAController extends BaseController { return devicePDAService.updateInspectionRecord(equOrder); } - //报修 - + //////////报修 /** * 新增手持报修记录 * @@ -85,8 +84,7 @@ public class DevicePDAController extends BaseController { return devicePDAService.addRepairRecord(equRepairOrder); } - //维修 - + //////////维修 /** * 获取维修记录(待处理) * @@ -120,7 +118,6 @@ public class DevicePDAController extends BaseController { return devicePDAService.updateDowntime(equRepairWorkOrder); } - /** * 获取设备管理详细信息 */ @@ -198,6 +195,4 @@ public class DevicePDAController extends BaseController { public AjaxResult getFaultReasonList(EquFaultReason equFaultReason) { return devicePDAService.selectEquFaultReasonList(equFaultReason); } - - } diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/EquOperation.java b/op-modules/op-device/src/main/java/com/op/device/domain/EquOperation.java index 22668daf5..a9f42b88a 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/EquOperation.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/EquOperation.java @@ -95,6 +95,14 @@ public class EquOperation extends BaseEntity { /** 删除标识 */ private String delFlag; + /** 故障次数 */ + @Excel(name = "故障次数") + private Integer failureTimes; + + /** 停机次数 */ + @Excel(name = "停机次数") + private Integer shutdownTimes; + // 创建日期范围list private List createTimeArray; @@ -353,6 +361,22 @@ public class EquOperation extends BaseEntity { return intactRate; } + //故障次数 + public void setFailureTimes(Integer failureTimes) { + this.failureTimes = failureTimes; + } + public Integer getFailureTimes() { + return failureTimes; + } + + //停机次数 + public void setShutdownTimes(Integer shutdownTimes) { + this.shutdownTimes = shutdownTimes; + } + public Integer getShutdownTimes() { + return shutdownTimes; + } + @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/service/impl/DevicePDAServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java index 336385f6b..791fcedf8 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java @@ -785,18 +785,20 @@ public class DevicePDAServiceImpl implements IDevicePDAService { //2.3修改完好率报表 if(equOperation != null){ - DecimalFormat df = new DecimalFormat("#.##"); - //实际运行时间 = 实际运行时间 - 故障时间 - double result = Double.parseDouble(equOperation.getActualOperationTime()) - hour; - //故障时间 = 原来的故障时间 + 这次的故障时间 - double faultTime = Double.parseDouble(equOperation.getFaultTime()) + hour; - equOperation.setActualOperationTime(String.valueOf(df.format(result)));//实际运行时间 - equOperation.setFaultTime(String.valueOf(faultTime));//故障时间 - - BigDecimal faultTimeBD = new BigDecimal(faultTime);// 故障时间 - BigDecimal operationTimeBD = new BigDecimal(equOperation.getOperationTime());// 运行时间 - - equOperation.setFailureRate(faultTimeBD.multiply(new BigDecimal(100)).divide(operationTimeBD,2, RoundingMode.HALF_UP).toString()+"%"); + if (list.getWorkDownMachine().equals("1")) { + DecimalFormat df = new DecimalFormat("#.##"); + //实际运行时间 = 实际运行时间 - 故障时间 + double result = Double.parseDouble(equOperation.getActualOperationTime()) - hour; + //故障时间 = 原来的故障时间 + 这次的故障时间 + double faultTime = Double.parseDouble(equOperation.getFaultTime()) + hour; + BigDecimal faultTimeBD = new BigDecimal(faultTime);// 故障时间 + BigDecimal operationTimeBD = new BigDecimal(equOperation.getOperationTime());//运行时间 + equOperation.setActualOperationTime(String.valueOf(df.format(result)));//实际运行时间 + equOperation.setFaultTime(String.valueOf(faultTime));//故障时间 + equOperation.setFailureRate(faultTimeBD.multiply(new BigDecimal(100)).divide(operationTimeBD,2, RoundingMode.HALF_UP).toString()+"%"); + equOperation.setShutdownTimes(equOperation.getShutdownTimes()+1);//停机次数加1 + } + equOperation.setFailureTimes(equOperation.getFailureTimes()+1);//故障次数加1 equOperation.setUpdateBy(SecurityUtils.getUsername()); equOperation.setUpdateTime(DateUtils.getNowDate()); equOperationMapper.updateEquOperation(equOperation); 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 eea0cbf36..bbe336e4c 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 @@ -234,22 +234,25 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService String time = sdf.format(equRepairWorkOrder.getWorkEndTime()); EquOperation equOperation = equOperationMapper.selectEquipmentIntegrityRate(time,equRepairWorkOrder.getEquipmentCode()); - if(equOperation != null){ - DecimalFormat df = new DecimalFormat("#.##"); - //实际运行时间 = 实际运行时间 - 故障时间 - double result = Double.parseDouble(equOperation.getActualOperationTime()) - Double.parseDouble(hours); - //故障时间 = 原来的故障时间 + 这次的故障时间 - double faultTime = Double.parseDouble(equOperation.getFaultTime()) + Double.parseDouble(hours); - equOperation.setActualOperationTime(String.valueOf(df.format(result)));//实际运行时间 - equOperation.setFaultTime(String.valueOf(faultTime));//故障时间 - - BigDecimal faultTimeBD = new BigDecimal(faultTime);// 故障时间 - BigDecimal operationTimeBD = new BigDecimal(equOperation.getOperationTime());// 运行时间 - - // 故障率计算(故障时间/运行时间) - equOperation.setFailureRate(faultTimeBD.multiply(new BigDecimal(100)).divide(operationTimeBD,2, RoundingMode.HALF_UP).toString()+"%"); + if(equOperation != null){ + if (equRepairWorkOrder.getWorkDownMachine().equals("1")) { + DecimalFormat df = new DecimalFormat("#.##"); + //实际运行时间 = 实际运行时间 - 故障时间 + double result = Double.parseDouble(equOperation.getActualOperationTime()) - Double.parseDouble(hours); + //故障时间 = 原来的故障时间 + 这次的故障时间 + double faultTime = Double.parseDouble(equOperation.getFaultTime()) + Double.parseDouble(hours); + BigDecimal faultTimeBD = new BigDecimal(faultTime);// 故障时间 + BigDecimal operationTimeBD = new BigDecimal(equOperation.getOperationTime());// 运行时间 + equOperation.setFaultTime(String.valueOf(faultTime));//故障时间 + equOperation.setActualOperationTime(String.valueOf(df.format(result)));//实际运行时间 + // 故障率计算(故障时间/运行时间) + equOperation.setFailureRate(faultTimeBD.multiply(new BigDecimal(100)).divide(operationTimeBD,2, RoundingMode.HALF_UP).toString()+"%"); + equOperation.setShutdownTimes(equOperation.getShutdownTimes()+1);//停机次数加1 + } equOperation.setUpdateBy(SecurityUtils.getUsername()); equOperation.setUpdateTime(DateUtils.getNowDate()); + //故障次数增加,但是停机次数可能不增加 + equOperation.setFailureTimes(equOperation.getFailureTimes()+1);//故障次数加1 equOperationMapper.updateEquOperation(equOperation); } } @@ -258,7 +261,6 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService // BigDecimal sparePartsCost = equSpareApplyMapper.getSparePartsCost(equRepairWorkOrder.getOrderCode()); // BigDecimal orderCost = BigDecimal.valueOf(Double.valueOf(equRepairWorkOrder.getWorkCost())); // equRepairWorkOrder.setWorkCost(String.valueOf(sparePartsCost.add(orderCost))); - return equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder); } diff --git a/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml index 48089a27c..0cbc365c1 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml @@ -77,11 +77,14 @@ diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquFaultDescriptionMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquFaultDescriptionMapper.xml index 127957020..40eef9692 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquFaultDescriptionMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquFaultDescriptionMapper.xml @@ -45,6 +45,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and update_by like concat('%', #{updateBy}, '%') and del_flag = '0' + ORDER BY CAST(RIGHT(fault_code, 4) AS INTEGER) SELECT COUNT(fault_id)+1 AS serialNum FROM equ_fault_description - WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) + WHERE del_flag = '0' \ No newline at end of file diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquFaultMeasuresMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquFaultMeasuresMapper.xml index eaafe629a..6f98ab3b2 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquFaultMeasuresMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquFaultMeasuresMapper.xml @@ -45,6 +45,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and update_by like concat('%', #{updateBy}, '%') and del_flag = '0' + ORDER BY CAST(RIGHT(fault_code, 4) AS INTEGER) SELECT COUNT(fault_id)+1 AS serialNum FROM equ_fault_measures - WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) + WHERE del_flag = '0' \ No newline at end of file diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquFaultReasonMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquFaultReasonMapper.xml index 10b95ba12..4d1539d2d 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquFaultReasonMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquFaultReasonMapper.xml @@ -45,6 +45,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and update_by like concat('%', #{updateBy}, '%') and del_flag = '0' + ORDER BY CAST(RIGHT(fault_code, 4) AS INTEGER) SELECT COUNT(fault_id)+1 AS serialNum FROM equ_fault_reason - WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) + WHERE del_flag = '0' \ No newline at end of file diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquFaultTypeMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquFaultTypeMapper.xml index b9268d5f0..99fc05b3c 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquFaultTypeMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquFaultTypeMapper.xml @@ -50,7 +50,7 @@ and update_by like concat('%', #{updateBy}, '%') and del_flag = '0' - ORDER BY create_time DESC + ORDER BY CAST(RIGHT(fault_code, 4) AS INTEGER) SELECT COUNT(fault_id)+1 AS serialNum FROM equ_fault_type - WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) + WHERE del_flag = '0' diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml index cad742854..6da1e0043 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml @@ -29,6 +29,8 @@ + + @@ -55,7 +57,9 @@ create_by, create_time, update_by, - update_time + update_time, + failure_times, + shutdown_times from equ_operation @@ -159,6 +163,8 @@ create_time, update_by, update_time, + failure_times, + shutdown_times, #{id}, @@ -185,6 +191,8 @@ #{createTime}, #{updateBy}, #{updateTime}, + #{failureTimes}, + #{shutdownTimes}, @@ -236,6 +244,8 @@ create_time = #{createTime}, update_by = #{updateBy}, update_time = #{updateTime}, + failure_times = #{failureTimes}, + shutdown_times = #{shutdownTimes}, where id = #{id} 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 d70885d45..ad1e50eff 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 @@ -87,7 +87,7 @@ public class MesReportWorkController extends BaseController { // String dateEndStr = dtf.format(dateEnd)+" 00:00:00"; // mesReportWork.setCreateTimeEnd(dateEndStr);//end // } - List list = mesReportWorkService.selectMesReportWorkList(mesReportWork); + List list = mesReportWorkService.selectMesReportWorkList_S(mesReportWork); ExcelUtil util = new ExcelUtil(MesReportWork.class); util.exportExcel(response, list, "报工报表数据"); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesUnitPriceController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesUnitPriceController.java index 85374e655..cacf2b650 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesUnitPriceController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesUnitPriceController.java @@ -4,6 +4,7 @@ import java.io.IOException; import java.util.List; import javax.servlet.http.HttpServletResponse; +import com.op.common.security.utils.SecurityUtils; import com.op.mes.domain.MesUnitPrice; import com.op.mes.service.IMesUnitPriceService; import org.springframework.beans.factory.annotation.Autowired; @@ -23,6 +24,7 @@ import com.op.common.core.web.controller.BaseController; import com.op.common.core.web.domain.AjaxResult; import com.op.common.core.utils.poi.ExcelUtil; import com.op.common.core.web.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; /** * unitPriceController @@ -58,12 +60,25 @@ public class MesUnitPriceController extends BaseController { ExcelUtil util = new ExcelUtil(MesUnitPrice.class); util.exportExcel(response, list, "unitPrice数据"); } + + @Log(title = "计件薪资管理", businessType = BusinessType.IMPORT) + @RequiresPermissions("system:unitPrice:import") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { + ExcelUtil util = new ExcelUtil(MesUnitPrice.class); + List UnitPriceList = util.importExcel(file.getInputStream()); + String operName = SecurityUtils.getUsername(); + String message = mesUnitPriceService.importMesUnitPrice(UnitPriceList, updateSupport, operName); + return success(message); + } + @PostMapping("/importTemplate") public void importTemplate(HttpServletResponse response) throws IOException { ExcelUtil util = new ExcelUtil(MesUnitPrice.class); util.importTemplateExcel(response, "产品单价导入模板"); } + /** * 获取unitPrice详细信息 */ diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesReportWork.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesReportWork.java index df2eda833..49d5e5bd2 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesReportWork.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesReportWork.java @@ -21,19 +21,18 @@ public class MesReportWork extends BaseEntity { /** 记录id */ private String id; - - /** 报工单编号 */ - @Excel(name = "报工单编号") - private String reportCode; - - /** 报工类型,报工类型:SELF自行报工、UNI统一报工 */ - @Excel(name = "报工类型,报工类型:SELF上位机报工、UNI系统报工") - private String reportType; + /** 线体名称 */ + @Excel(name = "线体名称") + private String machineName; /** 生产工单编码 */ @Excel(name = "生产工单编码") private String workorderCode; + /** SAP订单号 */ + @Excel(name = "SAP订单号") + private String workorderCodeSap; + /** 产品编码 */ @Excel(name = "产品编码") private String productCode; @@ -42,22 +41,73 @@ public class MesReportWork extends BaseEntity { @Excel(name = "产品名称") private String productName; - /** 规格型号 */ - @Excel(name = "规格型号") - private String spec; + /** 批次号 */ + @Excel(name = "批次号") + private String batch; /** 单位 */ @Excel(name = "单位") private String unit; - /** 排产数量 */ - @Excel(name = "排产数量") - private BigDecimal quantity; - private BigDecimal quantitySplit; /** 本次报工数量 */ @Excel(name = "本次报工数量") private BigDecimal quantityFeedback; + /** 工时 */ + @Excel(name = "工时") + private Long workTime; + + @Excel(name = "用人") + private Long useMan; + + /** 报工人员 */ + @Excel(name = "报工人员") + private String nickName; + + /** 报工时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "报工时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date feedbackTime; + + /** 耗用物料编码 */ + @Excel(name = "耗用物料编码") + private String materialCode; + + + /** 耗用物料名称 */ + @Excel(name = "耗用物料名称") + private String materialName; + + /** 物料消耗数量 */ + @Excel(name = "物料消耗数量") + private BigDecimal quantity; + + /** 物料消耗数量 */ + @Excel(name = "物料消耗单位") + private String materialNameUnit; + + + + /** 报工单编号 */ +// @Excel(name = "报工单编号") + private String reportCode; + + /** 报工类型,报工类型:SELF自行报工、UNI统一报工 */ + //@Excel(name = "报工类型,报工类型:SELF上位机报工、UNI系统报工") + private String reportType; + + + /** 规格型号 */ + //@Excel(name = "规格型号") + private String spec; + + + + + + private BigDecimal quantitySplit; + + /** 合格数量 */ //@Excel(name = "合格数量") private BigDecimal quantityQualified; @@ -67,60 +117,50 @@ public class MesReportWork extends BaseEntity { private BigDecimal quantityUnqualified; /** 报工人员 */ - @Excel(name = "报工人员") + //@Excel(name = "报工人员") private String userName; - /** 人员名称 */ - @Excel(name = "人员名称") - private String nickName; + /** 报工途径:PAD、MOBILE、PC */ //@Excel(name = "报工途径:PAD、MOBILE、PC") private String feedbackChannel; - /** 报工时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "报工时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date feedbackTime; + private String feedbackTimeStr; /** 录入人员 */ - @Excel(name = "录入人员") + //@Excel(name = "录入人员") private String recordUser; /** 状态 */ - @Excel(name = "状态") + //@Excel(name = "状态") private String status; - /** 工时 */ - @Excel(name = "工时") - private Long workTime; - @Excel(name = "用人") - private Long useMan; + + /** 线体编码 */ - @Excel(name = "线体编码") + //@Excel(name = "线体编码") private String machineCode; - /** 线体名称 */ - @Excel(name = "线体名称") - private String machineName; + /** 班组编码 */ - @Excel(name = "班组编码") + //@Excel(name = "班组编码") private String teamCode; /** 班次编码 */ - @Excel(name = "班次编码") + //@Excel(name = "班次编码") private String shiftCode; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "SAP报工时间") + //@Excel(name = "SAP报工时间") private Date uploadTime; - @Excel(name = "SAP报工状态0待报工1成功2失败") + //@Excel(name = "SAP报工状态0待报工1成功2失败") private String uploadStatus; - @Excel(name = "SAP报工信息") + //@Excel(name = "SAP报工信息") private String uploadMsg; /** 预留字段1 */ //@Excel(name = "预留字段1") @@ -137,23 +177,23 @@ public class MesReportWork extends BaseEntity { /** 预留字段4 */ //@Excel(name = "预留字段4") private String attr4; - @Excel(name = "计划生产日期") + //@Excel(name = "计划生产日期") private String productDate; private String productDateStart; private String productDateEnd; - @Excel(name = "订单编号") + //@Excel(name = "订单编号") private String orderCode; - @Excel(name = "规格型号") + //@Excel(name = "规格型号") private String productSpc; - @Excel(name = "工序名称") + //@Excel(name = "工序名称") private String processName; - @Excel(name = "工序编码") + //@Excel(name = "工序编码") private String processCode; private String factoryCode; private String factoryName; private String carCode; private String carName; - private String workorderCodeSap; + private String routeCode; private String sac1; private String sac2; @@ -166,7 +206,7 @@ public class MesReportWork extends BaseEntity { private String createTimeEnd; private String feedbackTimeStart; private String feedbackTimeEnd; - private String batch; + private String endReport; private String parentOrder; private String workorderCodes; @@ -180,8 +220,33 @@ public class MesReportWork extends BaseEntity { private Long workTimes; private String workCenter; private String shiftId; + private List consumesInfos; + 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 getMaterialNameUnit() { + return materialNameUnit; + } + + public void setMaterialNameUnit(String materialNameUnit) { + this.materialNameUnit = materialNameUnit; + } + public String getShiftId() { return shiftId; } 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 1513a6cc2..35ccd15d5 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 @@ -125,4 +125,6 @@ public interface MesReportWorkMapper { public MesReportWork getReportWorkHz(MesReportWork mesReportWork); MesReportWork getEndReport(MesReportWork pWork); + + List selectMesReportWorkList_S(MesReportWork mesReportWork); } 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 6f89c2397..a543a2638 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 @@ -98,4 +98,6 @@ public interface IMesReportWorkService { int submitReportPS(List mesReportWorks); List getPrepareList(MesPrepareDetail mesPrepareDetail); + + List selectMesReportWorkList_S(MesReportWork mesReportWork); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesUnitPriceService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesUnitPriceService.java index be6a70360..66764c914 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesUnitPriceService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesUnitPriceService.java @@ -59,4 +59,7 @@ public interface IMesUnitPriceService { * @return 结果 */ public int deleteMesUnitPriceByPicId(String picId); + + + public String importMesUnitPrice(List UnitPriceList, Boolean updateSupport,String operName); } 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 3a05d7015..8d1d7fe94 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 @@ -169,6 +169,13 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { return mesReportWorkMapper.getPrepareList(mesPrepareDetail); } + @Override + @DS("#header.poolName") + public List selectMesReportWorkList_S(MesReportWork mesReportWork) { + List dtos = mesReportWorkMapper.selectMesReportWorkList_S(mesReportWork); + return dtos; + } + /** * 修改报工报表 * diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesUnitPriceServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesUnitPriceServiceImpl.java index a32b224f5..3015610c0 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesUnitPriceServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesUnitPriceServiceImpl.java @@ -3,10 +3,15 @@ package com.op.mes.service.impl; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.exception.ServiceException; import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.StringUtils; +import com.op.common.core.utils.uuid.IdUtils; import com.op.mes.domain.MesUnitPrice; import com.op.mes.mapper.MesUnitPriceMapper; import com.op.mes.service.IMesUnitPriceService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -19,9 +24,13 @@ import org.springframework.stereotype.Service; */ @Service public class MesUnitPriceServiceImpl implements IMesUnitPriceService { + + private static final Logger log = LoggerFactory.getLogger(IMesUnitPriceService.class); + @Autowired private MesUnitPriceMapper mesUnitPriceMapper; + /** * 查询unitPrice * @@ -90,4 +99,38 @@ public class MesUnitPriceServiceImpl implements IMesUnitPriceService { public int deleteMesUnitPriceByPicId(String picId) { return mesUnitPriceMapper.deleteMesUnitPriceByPicId(picId); } + + @Override + @DS("#header.poolName") + public String importMesUnitPrice(List UnitPriceList, Boolean updateSupport, String operName) { + if (StringUtils.isNull(UnitPriceList) || UnitPriceList.size() == 0) { + throw new ServiceException("导入数据不能为空!"); + } + int successNum = 0; + int failureNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + for (MesUnitPrice mesUnitPrice : UnitPriceList) { + try { + // 验证是否存在这个产线产品 + mesUnitPrice.setPicId(IdUtils.simpleUUID()); + mesUnitPriceMapper.insertMesUnitPrice(mesUnitPrice); + successNum++; + successMsg.append("导入成功"); + + } catch (Exception e) { + failureNum++; + String msg = "导入失败:"; + failureMsg.append(msg + e.getMessage()); + log.error(msg, e); + } + } + if (failureNum > 0) { + failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:"); + throw new ServiceException(failureMsg.toString()); + } else { + successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:"); + } + return successMsg.toString(); + } } diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml index 6656b4425..38a294a90 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml @@ -118,9 +118,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" equ.equipment_type_code + insert into mes_report_work diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesUnitPriceMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesUnitPriceMapper.xml index a57d2a122..c79b86c57 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesUnitPriceMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesUnitPriceMapper.xml @@ -30,6 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select qct.record_id, qct.check_no, qct.income_batch_no, - qct.order_no, qct.material_code, qct.material_name, qct.quality, qct.unit, - qct.supplier_code, qct.supplier_name, qct.income_time, qct.check_loc, qct.check_status, - qct.check_man_code, qct.check_man_name,qct.check_time, qct.check_result, qct.status,qct.sample_quality, - qct.create_by,qct.create_time, qct.update_by, qct.update_time,qct.check_type, - q.type_code,q.check_name + qct.order_no, qct.material_code, qct.material_name, qct.quality, qct.unit, + qct.supplier_code, qct.supplier_name, qct.income_time, qct.check_loc, qct.check_status, + qct.check_man_code, qct.check_man_name,qct.check_time, qct.check_result, qct.status,qct.sample_quality, + qct.create_by,qct.create_time, qct.update_by, qct.update_time,qct.check_type, + q.type_code,q.check_name from qc_check_task qct left join qc_check_type q on q.id = qct.check_type @@ -143,8 +143,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" left join qc_check_type_project qctp on td.type_project_id = qctp.id where td.belong_to = #{recordId} + - + insert into qc_check_task record_id, diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml index 77edb220d..31eb4ce1d 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml @@ -11,9 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - - + @@ -35,9 +33,44 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -266,4 +299,61 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{recordId} + diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java index 5602fa844..a9fe28d0e 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java @@ -318,28 +318,8 @@ public class SapItemSyncImpl implements SapItemSyncService { throw new RuntimeException("Function does not exist in SAP"); } JCoTable L_ITEM = func.getTableParameterList().getTable("L_ITEM"); - - // System.out.println(L_ITEM); - -// -// int successNum = 0; -// int failureNum = 0; -// StringBuilder successMsg = new StringBuilder(); -// StringBuilder failureMsg = new StringBuilder(); log.info("反冲物料开始过账----------------------------------------"); - -// for (int i = 0; i < sapBackflushMPQueryList.size(); i++) { -// L_ITEM.setRow(i); -// L_ITEM.appendRow(); -// L_ITEM.setValue("MATNR",sfp.getMatnr()); -// } for (SapBackflushMPQuery sfp:sapBackflushMPQueryList){ -// if (StringUtils.isEmpty(sfp.getMatnr())){ -// return R.fail("物料号为空!"); -// } -// if (StringUtils.isEmpty(sfp.getPlant())){ -// -// } L_ITEM.appendRow(); L_ITEM.setValue("MATNR",sfp.getMatnr()); L_ITEM.setValue("PLANT",sfp.getPlant()); @@ -350,7 +330,6 @@ public class SapItemSyncImpl implements SapItemSyncService { L_ITEM.setValue("MEINS",sfp.getMeins()); L_ITEM.setValue("BATCH",sfp.getBatch()); L_ITEM.setValue("MOVE_BATCH",sfp.getMove_batch()); - } func.execute(dest); JCoTable maraTable = func.getTableParameterList().getTable("LT_RETURN"); diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/SysFactory.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/SysFactory.java index 5b78ff86a..d47e38948 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/SysFactory.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/SysFactory.java @@ -47,6 +47,10 @@ public class SysFactory extends TreeEntity { @Excel(name = "工厂编码") private String factoryCode; + /** 工厂建模类型 */ + @Excel(name = "工厂建模类型") + private String fType; + //虚拟字段 private List> workCenter; private String value; @@ -111,6 +115,13 @@ public class SysFactory extends TreeEntity { this.factoryCode = factoryCode; } + public String getFType() { + return fType; + } + public void setFType(String fType) { + this.fType = fType; + } + public String getValue() { return value; } diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/SysFactoryMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/SysFactoryMapper.xml index f8f26d4e9..72b70fd88 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/SysFactoryMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/SysFactoryMapper.xml @@ -21,10 +21,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - select factory_id, parent_id, ancestors, factory_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time, factory_code,del_flag from sys_factory + select factory_id, parent_id, ancestors, factory_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time, factory_code,del_flag , f_type from sys_factory @@ -66,6 +68,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update_by, update_time, factory_code, + f_type, #{parentId}, @@ -82,6 +85,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{updateBy}, #{updateTime}, #{factoryCode}, + #{fType}, @@ -102,6 +106,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update_by = #{updateBy}, update_time = #{updateTime}, factory_code = #{factoryCode}, + f_type = #{fType}, where factory_id = #{factoryId}