装配目视单预览

tags/yfai-mes-ext-v2.3
jun 6 months ago
parent 4a152acc95
commit 5e6a5c79ce

@ -216,6 +216,28 @@ public class MesWorkOrderController extends BaseMesController<MesWorkOrder> {
}
}
@GetMapping(value = "/show-work-order")
@ApiOperation(value = "装配目视单预览查询")
public ResultBean doShowWorkOrderPrint(String partNo, String workCenterCode, String partProdGroupCode, String carModelCode, String organizeCode, String userName ) {
try {
ValidatorBean.checkNotNull(partNo, "零件号不能为空");
ValidatorBean.checkNotNull(workCenterCode, "产线不能为空");
ValidatorBean.checkNotNull(partProdGroupCode, "生产组代码不能为空");
ValidatorBean.checkNotNull(carModelCode, "车型代码不能为空");
ValidatorBean.checkNotNull(organizeCode, "工厂代码不能为空");
ValidatorBean.checkNotNull(userName, "操作人不能为空");
return ResultBean.success("装配目视单预览查询成功")
.setResultList(mesWorkOrderService.doShowWorkOrderPrint(partNo, workCenterCode, partProdGroupCode, carModelCode, organizeCode, userName))
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PutMapping(value = "/reopen")
@ApiOperation(value = "重新打开")

@ -64,7 +64,7 @@ public class MesPartProdGroupService extends BaseMesService<MesPartProdGroup> im
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getInPackList(partProdGroupCodeList, MesExtConstWords.PART_PROD_GROUP_CODE, packBean);
List<MesPartProdGroup> partProdGroupList = baseRDao.findByHqlWhere(packBean);
return partProdGroupList.stream().collect(Collectors.toMap(MesPartProdGroup::getPartProdGroupCode, Function.identity(), (x, y) -> y));
return CollectionUtils.isEmpty(partProdGroupList) ? null : partProdGroupList.stream().collect(Collectors.toMap(MesPartProdGroup::getPartProdGroupCode, Function.identity(), (x, y) -> y));
}

@ -1255,9 +1255,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
// 根据id 获取工单数据
List<MesWorkOrder> mesWorkOrderList = getMesWorkOrderList(ids, organizeCode);
List<Map<String, Object>> resultMapList = packPrintResultMap(organizeCode, mesWorkOrderList, userName);
return resultMapList;
return packPrintResultMap(organizeCode, mesWorkOrderList, userName);
}
@ -1272,7 +1270,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
List<MesWorkCenter> mesWorkCenters = workCenterService.queryMesWorkCenterList(workCenterCodeList, organizeCode);
// 产线名称集合
Map<String, String> workCenterNameMap = mesWorkCenters.stream().collect(Collectors.toMap(MesWorkCenter::getWorkCenterCode, MesWorkCenter::getWorkCenterName, (x, y) -> y));
Map<String, String> workCenterNameMap = CollectionUtils.isEmpty(mesWorkCenters) ? null : mesWorkCenters.stream().collect(Collectors.toMap(MesWorkCenter::getWorkCenterCode, MesWorkCenter::getWorkCenterName, (x, y) -> y));
// 生产零件号
List<String> partProdGroupCodeList = mesWorkOrderList.stream().map(MesWorkOrder::getPartProdGroupCode).distinct().collect(Collectors.toList());
@ -1299,9 +1297,9 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
continue;
}
mesWorkOrder.setWorkCenterName(workCenterNameMap.get(mesWorkOrder.getWorkCenterCode()));
mesWorkOrder.setWorkCenterName(!Objects.isNull(workCenterNameMap) && workCenterNameMap.containsKey(mesWorkOrder.getWorkCenterCode()) ? workCenterNameMap.get(mesWorkOrder.getWorkCenterCode()) : "");
MesPartProdGroup mesPartProdGroup = partProdGroupMap.get(mesWorkOrder.getPartProdGroupCode());
MesPartProdGroup mesPartProdGroup = !Objects.isNull(partProdGroupMap) && partProdGroupMap.containsKey(mesWorkOrder.getPartProdGroupCode()) ? partProdGroupMap.get(mesWorkOrder.getPartProdGroupCode()) : null;
if (mesPartProdGroup == null) {
MesException.throwMesBusiException("工单【%s】关联零件生产组【%s】不存在", mesWorkOrder.getWorkOrderNo(), mesWorkOrder.getPartProdGroupCode());
@ -1324,11 +1322,12 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
modelMap.put("mesWorkOrder", mesWorkOrder);
modelMap.put("mesPartProdGroup", mesPartProdGroup);
MesCustomerCarModel customerCarModel = carModelMapByCode.get(mesWorkOrder.getCarModelCode());
MesCustomerCarModel customerCarModel = !Objects.isNull(carModelMapByCode) && carModelMapByCode.containsKey(mesWorkOrder.getCarModelCode()) ? carModelMapByCode.get(mesWorkOrder.getCarModelCode()) : null;
if (customerCarModel != null) {
modelMap.put("mesCustomerCarModel", customerCarModel);
}
List<MesWorkOrderAssembly> workOrderAssemblyListByWorkOrderNo = workOrderAssemblyMapByWorkOrderNo.get(mesWorkOrder.getWorkOrderNo());
List<MesWorkOrderAssembly> workOrderAssemblyListByWorkOrderNo = !Objects.isNull(workOrderAssemblyMapByWorkOrderNo) && workOrderAssemblyMapByWorkOrderNo.containsKey(mesWorkOrder.getWorkOrderNo()) ? workOrderAssemblyMapByWorkOrderNo.get(mesWorkOrder.getWorkOrderNo()) : null;
if (!CollectionUtils.isEmpty(workOrderAssemblyListByWorkOrderNo)) {
modelMap.put("mesWorkOrderAssemblyList", workOrderAssemblyListByWorkOrderNo);
}
@ -1373,6 +1372,9 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
DdlPreparedPack.getStringEqualPack(carModelCode, MesExtConstWords.CAR_MODEL_CODE, packBean);
packBean.setOrderByStr(" order by createDatetime desc ");
MesWorkOrder workOrder = workOrderRepository.getByProperty(packBean);
if (Objects.isNull(workOrder)) {
MesException.throwMesBusiException("零件【%s】产线【%s】生产组【%s】车型【%s】的工单不存在", partNo, workCenterCode, partProdGroupCode, carModelCode);
}
List<MesWorkOrder> workOrderList = new ArrayList<>();
workOrderList.add(workOrder);
@ -1387,7 +1389,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
DdlPreparedPack.getInPackList(carModelCodeList, MesExtConstWords.CAR_MODEL_CODE, packBean);
List<MesCustomerCarModel> customerCarModelList = customerCarModelRepository.findByHqlWhere(packBean);
return customerCarModelList.stream().collect(Collectors.toMap(MesCustomerCarModel::getCarModelCode, Function.identity(), (x, y) -> y));
return CollectionUtils.isEmpty(customerCarModelList) ? null : customerCarModelList.stream().collect(Collectors.toMap(MesCustomerCarModel::getCarModelCode, Function.identity(), (x, y) -> y));
}
private Map<String, List<MesWorkOrderAssembly>> getWorkOrderAssemblyMapByWorkOrderNo(String organizeCode, Map<String, MesWorkOrder> workOrderMapByWorkOrderNo) {
@ -1395,8 +1397,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getInPackList(workOrderNoList, MesExtConstWords.WORK_ORDER_NO, packBean);
List<MesWorkOrderAssembly> workOrderAssemblyList = workOrderAssemblyRepository.findByHqlWhere(packBean);
Map<String, List<MesWorkOrderAssembly>> workOrderAssemblyMapByWorkOrderNo = workOrderAssemblyList.stream().collect(Collectors.groupingBy(MesWorkOrderAssembly::getWorkOrderNo));
return workOrderAssemblyMapByWorkOrderNo;
return CollectionUtils.isEmpty(workOrderAssemblyList) ? null : workOrderAssemblyList.stream().collect(Collectors.groupingBy(MesWorkOrderAssembly::getWorkOrderNo));
}
private List<MesProductOffLine> getMesProductOffLineList(WmsProductModel model, String nowTime) {

Loading…
Cancel
Save