|
|
@ -11,6 +11,7 @@ import org.nl.wms.database.material.service.IMdBaseMaterialService; |
|
|
|
import org.nl.wms.database.material.service.dao.MdBaseMaterial; |
|
|
|
import org.nl.wms.ext.mes.service.WmsToMesService; |
|
|
|
import org.nl.wms.ext.mes.service.dao.mapper.MesRequestMapper; |
|
|
|
import org.nl.wms.ext.mes.service.dto.MesProductDataDto; |
|
|
|
import org.nl.wms.ext.mes.service.dto.MesWorkOrderDto; |
|
|
|
import org.nl.wms.ext.mes.service.dto.MesMudConsumptionDto; |
|
|
|
import org.nl.wms.ext.record.service.ISysInteractRecordService; |
|
|
@ -18,6 +19,8 @@ import org.nl.wms.pdm.consumption.service.dao.PdmBdMudConsumption; |
|
|
|
import org.nl.wms.pdm.consumption.service.dao.mapper.PdmBdMudConsumptionMapper; |
|
|
|
import org.nl.wms.pdm.workorder.service.IPdmBdWorkorderService; |
|
|
|
import org.nl.wms.pdm.workorder.service.dao.PdmBdWorkorder; |
|
|
|
import org.nl.wms.sch.group.service.ISchBaseVehiclematerialgroupService; |
|
|
|
import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; |
|
|
|
import org.nl.wms.sch.point.service.ISchBasePointService; |
|
|
|
import org.nl.wms.sch.point.service.dao.SchBasePoint; |
|
|
|
import org.nl.wms.sch.task_manage.GeneralDefinition; |
|
|
@ -49,6 +52,8 @@ public class WmsToMesServiceImpl implements WmsToMesService { |
|
|
|
private ISchBasePointService pointService; |
|
|
|
@Autowired |
|
|
|
private IPdmBdWorkorderService pdmBdWorkorderService; |
|
|
|
@Autowired |
|
|
|
private ISchBaseVehiclematerialgroupService vehiclematerialgroupService; |
|
|
|
@Override |
|
|
|
public void reportMudConsumption(MesMudConsumptionDto mudObject) { |
|
|
|
log.info("上报mes消耗泥料记录的信息: {}", mudObject); |
|
|
@ -100,6 +105,45 @@ public class WmsToMesServiceImpl implements WmsToMesService { |
|
|
|
mesRequestMapper.updateWorkOrderRead(collect); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void reportProductData(String groupId) { |
|
|
|
log.info("压机产出数据记录"); |
|
|
|
// 获取组盘信息
|
|
|
|
SchBaseVehiclematerialgroup vehiclematerialgroup = vehiclematerialgroupService.getById(groupId); |
|
|
|
String workorderCode = vehiclematerialgroup.getWorkorder_code(); |
|
|
|
// 获取工单
|
|
|
|
PdmBdWorkorder workorder = pdmBdWorkorderService.getByCode(workorderCode); |
|
|
|
String extData = workorder.getExt_data(); |
|
|
|
MesWorkOrderDto mesWorkOrderDto = JSON.parseObject(extData, MesWorkOrderDto.class); |
|
|
|
log.info("获取mes给的工单数据:{}", mesWorkOrderDto); |
|
|
|
SchBasePoint basePoint = pointService.getById(workorder.getPoint_code()); |
|
|
|
MesProductDataDto mesProductDataDto = new MesProductDataDto(); |
|
|
|
mesProductDataDto.setMSGID(IdUtil.simpleUUID()); |
|
|
|
mesProductDataDto.setFORDER_NO(mesWorkOrderDto.getFORDER_NO()); |
|
|
|
mesProductDataDto.setPWORKSCHE_ID(mesWorkOrderDto.getPWORKSCHE_ID()); |
|
|
|
mesProductDataDto.setFPRODUCT_MATERIAL_ID(mesWorkOrderDto.getFPRODUCT_MATERIAL_ID()); |
|
|
|
mesProductDataDto.setFPRODUCT_MATERIAL_NAME(mesWorkOrderDto.getFPRODUCT_MATERIAL_NAME()); |
|
|
|
mesProductDataDto.setFMATSPEC(mesProductDataDto.getFMATSPEC()); |
|
|
|
mesProductDataDto.setFMATMODEL(mesProductDataDto.getFMATMODEL()); |
|
|
|
mesProductDataDto.setBATCHNO(workorder.getBatch_no()); |
|
|
|
mesProductDataDto.setPRESSUNIT(basePoint.getExt_point_code()); |
|
|
|
mesProductDataDto.setFTEAM(workorder.getTeam()); |
|
|
|
mesProductDataDto.setTRAY_NO(vehiclematerialgroup.getVehicle_code()); |
|
|
|
mesProductDataDto.setPRO_SUBNUM(String.valueOf(vehiclematerialgroup.getMaterial_qty()));// 数量
|
|
|
|
mesProductDataDto.setPRO_SUBUNIT("块"); |
|
|
|
mesProductDataDto.setCHECKERIN_TIM(DateUtil.now()); |
|
|
|
mesProductDataDto.setPRODATE(workorder.getProduce_date()); |
|
|
|
mesProductDataDto.setCREATE_TM(DateUtil.now()); |
|
|
|
mesProductDataDto.setOP_FLAG("0"); |
|
|
|
log.info("返给MES的数据:{}", mesProductDataDto); |
|
|
|
// 插入mes数据库
|
|
|
|
try { |
|
|
|
mesRequestMapper.insertProductData(mesProductDataDto); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("反馈压机产出插入mes数据库失败: {}", e.getMessage()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public List<PdmBdWorkorder> toWorkOrderList(List<MesWorkOrderDto> mesWorkOrderInfos) { |
|
|
|
List<PdmBdWorkorder> list = new CopyOnWriteArrayList<>(); |
|
|
|
mesWorkOrderInfos.forEach(mesWorkOrderDto -> { |
|
|
|