|
|
|
@ -64,7 +64,8 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesProductionRecordRepository productionRecordRao;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesWorkOrderRepository mesWorkOrderRDao;
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesProduceSnRepository mesProduceSnRao;
|
|
|
|
|
@Autowired
|
|
|
|
@ -423,7 +424,7 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesWorkOrder.getPartNo(), "partNo", ddlPackBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesWorkOrder.getErpWorkCenter(), "workCenterCode", ddlPackBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesWorkOrder.getProductVersion(), "productVersion", ddlPackBean);
|
|
|
|
|
// DdlPreparedPack.getStringEqualPack(mesWorkOrder.getProductVersion(), "productVersion", ddlPackBean);
|
|
|
|
|
MesProductVersion mesProductVersion = mesProductVersionRDao.getByProperty(ddlPackBean);
|
|
|
|
|
if (null == mesProductVersion) {
|
|
|
|
|
MesPcnException.throwMesBusiException("物料【%s】生产版本信息不存在", mesWorkOrder.getPartNo());
|
|
|
|
@ -459,8 +460,9 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(workCenterCode,"workCenterCode",ddlPackBean);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack( MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_50.getValue(),"reportStatus",ddlPackBean);
|
|
|
|
|
//获取前一天的早班到当天早班的区间的所有加工记录,统计个数
|
|
|
|
|
DdlPreparedPack.timeBuilder(TimeTool.getToday()+" 08:00:00",
|
|
|
|
|
DdlPreparedPack.timeBuilder(
|
|
|
|
|
new SimpleDateFormat("yyyy-MM-dd").format(TimeTool.getDateBefore(new Date(),1))+" 08:00:00",
|
|
|
|
|
TimeTool.getToday()+" 08:00:00",
|
|
|
|
|
"completeDateTime", ddlPackBean, false);
|
|
|
|
|
|
|
|
|
|
return productionRecordRao.findByHqlWhere(ddlPackBean);
|
|
|
|
@ -577,10 +579,15 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
String orderNo = orderList.get(0);
|
|
|
|
|
DdlPackBean orderPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(orderNo, "workOrderNo", orderPackBean);
|
|
|
|
|
if (mesWorkCenterRDao.isExitByHql(orderPackBean)) {
|
|
|
|
|
if (mesWorkOrderRDao.isExitByHql(orderPackBean)) {
|
|
|
|
|
MesPcnException.throwMesBusiException("单号流水码生成重复");
|
|
|
|
|
}
|
|
|
|
|
item.setWorkOrderNo(orderNo);
|
|
|
|
|
item.setPartName(mesProduceSn.getPartName());
|
|
|
|
|
//生产时间新增取当天
|
|
|
|
|
item.setProduceTime(TimeTool.getToday());
|
|
|
|
|
item.setUnCompleteQty(0d);
|
|
|
|
|
item.setQty(value.stream().mapToDouble(MesProduceSn::getQty).sum());
|
|
|
|
|
//校验标识
|
|
|
|
|
//若工单类型为排序
|
|
|
|
|
List<MesWorkOrderToWms> saveMesWorkOrderToWms = new ArrayList<>();
|
|
|
|
@ -600,19 +607,13 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
//发送工单信息给WMS
|
|
|
|
|
saveMesWorkOrderToWms.addAll(saveMesWorkOrderToWms(item, bomList));
|
|
|
|
|
}
|
|
|
|
|
//物料名称不存在,从物料信息中获取
|
|
|
|
|
|
|
|
|
|
item.setPartName(mesProduceSn.getPartName());
|
|
|
|
|
//生产时间新增取当天
|
|
|
|
|
item.setProduceTime(TimeTool.getToday());
|
|
|
|
|
item.setUnCompleteQty(0d);
|
|
|
|
|
|
|
|
|
|
// if (item.getWorkOrderType() == MesExtEnumUtil.ORDER_TYPE.UN_SORT.getValue()){
|
|
|
|
|
// //生产工单-非排序手工插单,关闭该零件当天之前日期非排序工单
|
|
|
|
|
// List<String> partNoList = Collections.singletonList(item.getPartNo());
|
|
|
|
|
// deleteUnSortOrder(orderNo,partNoList);
|
|
|
|
|
// }
|
|
|
|
|
item.setQty(value.stream().mapToDouble(MesProduceSn::getQty).sum());
|
|
|
|
|
|
|
|
|
|
item.setSystemSyncStatus(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
|
|
|
|
|
ConvertBean.serviceModelInitialize(item, userName);
|
|
|
|
|
MesWorkOrder mesWorkOrder = workOrderRepository.insert(item);
|
|
|
|
|