展示组件

tags/yfai-pcn-ext-v1.0
微笑着面对明天 11 months ago
parent 371dd56277
commit 7765671dc1

@ -4,6 +4,7 @@ import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesConfigService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesEquipmentLogExtService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.schedulejob.MesReportNoSortJob;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesWorkOrderService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.schedulejob.MesReportWorkByPreDayJob;
import cn.estsh.i3plus.ext.mes.pcn.pojo.constant.MesCommonConstant;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
@ -36,6 +37,8 @@ public class TestController {
@Autowired
private MesReportNoSortJob mesReportNoSortJob;
@Autowired
private MesReportWorkByPreDayJob mesReportWorkByPreDayJob;
@Autowired
private IMesWorkOrderService workOrderService;
@ -109,4 +112,11 @@ public class TestController {
mesReportNoSortJob.executeMesJob(null, null);
}
@GetMapping("/reportOrder1")
@ApiOperation(value = "报工")
public void reportOrder1() {
mesReportWorkByPreDayJob.executeMesJob(null, null);
}
}

@ -17,6 +17,7 @@ import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.JobExecutionContext;
import org.springframework.beans.factory.annotation.Autowired;
@ -72,6 +73,10 @@ public class MesReportNoSortJob extends BaseMesScheduleJob {
private void handlerNoOrder(String organizeCode, String userName) {
List<MesProductionRecord> unReportMesProduceSn = workOrderService.getUnReportMesProduceSn(organizeCode);
if (CollectionUtils.isEmpty(unReportMesProduceSn)) {
LOGGER.error("没有加工记录,无需处理");
return;
}
try {
Map<String, Integer> map = new HashMap<>();
workOrderService.doProductReportByRecord(unReportMesProduceSn.get(0), organizeCode, userName);
@ -84,6 +89,10 @@ public class MesReportNoSortJob extends BaseMesScheduleJob {
private void handlerHasOrder(String organizeCode, String userName) {
List<MesProductionRecord> unReportMesProduceSn = workOrderService.getUnReportHasOrderMesProduceSn(organizeCode);
if (CollectionUtils.isEmpty(unReportMesProduceSn)) {
LOGGER.error("没有加工记录,无需处理");
return;
}
try {
Map<String, Integer> map = new HashMap<>();
workOrderService.doProductHasOrderReportByRecord(unReportMesProduceSn.get(0), organizeCode, userName);

@ -57,7 +57,7 @@ public class MesReportWorkByPreDayJob extends BaseMesScheduleJob {
public void executeMesJob(JobExecutionContext context, ApplicationProperties applicationProperties) {
String jobParam = this.getJobParam();
JSONObject jsonObject = JSONUtil.parseObj(jobParam);
String organizeCode = jsonObject.getStr("organizeCode");
String organizeCode = jsonObject.getStr("organizeCode") == null ? "CK01" : jsonObject.getStr("organizeCode");
String userName = "REPORT_PRE_DAY_JOB";
if (null == organizeCode) {
log.error("请添加需要报工的工厂代码!");
@ -87,6 +87,7 @@ public class MesReportWorkByPreDayJob extends BaseMesScheduleJob {
List<MesWorkOrder> mesWorkOrders = workOrderService.insertMesWorkOrder(unReportMesProduceSn, mesShiftList, organizeCode, userName);
if (CollectionUtils.isEmpty(mesWorkOrders)) {
continue;
}
LOGGER.info("产线:{}报工mesWorkOrders:{}", workCenterCode, mesWorkOrders);
//4.根据产线+物料产生的工单报工

@ -449,7 +449,7 @@ public class MesWorkOrderService implements IMesWorkOrderService {
private void updateProductionRecord(String organizeCode, String userName, String sn) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getStringEqualPack(sn, "productSn", ddlPackBean);
DdlPreparedPack.getStringEqualPack(sn, "custSn", ddlPackBean);
productionRecordRao.updateByProperties(new String[]{"modifyUser", "modifyDatetime","reportStatus"},
new Object[]{userName, TimeTool.getNowTime(true), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_50.getValue()},ddlPackBean);
}
@ -461,6 +461,7 @@ public class MesWorkOrderService implements IMesWorkOrderService {
MesWorkOrder oldMesWorkOrder = getMesWorkOrder(productionRecord, organizeCode);
if (oldMesWorkOrder == null) {
updateProductionRecord(organizeCode, userName, productionRecord.getProductSn());
return;
}
report(productionRecord, organizeCode, userName, oldMesWorkOrder);
@ -578,6 +579,9 @@ public class MesWorkOrderService implements IMesWorkOrderService {
* 线
*/
List<MesWorkOrder> oldMesWorkOrders = getMesWorkOrders(productionRecord, organizeCode, null);
if (CollectionUtils.isEmpty(oldMesWorkOrders)) {
return null;
}
// 获取当前班次
String shiftCode = productionRecord.getShiftCode();
String workCenterCode = productionRecord.getWorkCenterCode();
@ -653,9 +657,7 @@ public class MesWorkOrderService implements IMesWorkOrderService {
// 新增班次逻辑
//DdlPreparedPack.
List<MesWorkOrder> oldMesWorkOrders = workOrderRepository.findByHqlWhere(ddlPackBean);
if(CollectionUtils.isEmpty(oldMesWorkOrders)){
throw new ImppBusiException(String.format("物料【%s】状态已发布的工单信息不存在", productionRecord.getPartNo()));
}
return oldMesWorkOrders;
}
@ -703,9 +705,10 @@ public class MesWorkOrderService implements IMesWorkOrderService {
List<Integer> statusList = Stream.of(MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_10.getValue(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue()).collect(Collectors.toList());
DdlPreparedPack.getInPackList( statusList,"reportStatus",ddlPackBean);
DdlPreparedPack.getIsNull("workOrderNo",ddlPackBean);
//DdlPreparedPack.getStringEqualPack("B19CK01A", "workCenterCode",ddlPackBean);
String workCenterCodes = configService.getCfgValue(organizeCode, "MES_PCN_REPORT_CENTER");
List<String> centerList = Arrays.asList(workCenterCodes.split(","));
DdlPreparedPack.getInPackList(centerList, "workCenterCode",ddlPackBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"createDatetime"}, ddlPackBean);
List<MesProductionRecord> mesProductionRecordList = productionRecordRao.findByHqlTopWhere(ddlPackBean, 1);
@ -720,6 +723,10 @@ public class MesWorkOrderService implements IMesWorkOrderService {
List<Integer> statusList = Stream.of(MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_10.getValue(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue()).collect(Collectors.toList());
DdlPreparedPack.getInPackList( statusList,"reportStatus",ddlPackBean);
DdlPreparedPack.getIsNotNull("workOrderNo",ddlPackBean);
String workCenterCodes = configService.getCfgValue(organizeCode, "MES_PCN_REPORT_CENTER");
List<String> centerList = Arrays.asList(workCenterCodes.split(","));
DdlPreparedPack.getInPackList(centerList, "workCenterCode",ddlPackBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"createDatetime"}, ddlPackBean);
List<MesProductionRecord> mesProductionRecordList = productionRecordRao.findByHqlTopWhere(ddlPackBean, 1);

Loading…
Cancel
Save