Merge remote-tracking branch 'origin/master'

master
philip 4 years ago
commit e80b18df27

@ -983,11 +983,8 @@
</select> </select>
<select id="findScrapDtoBySfc" resultMap="scrapDto"> <select id="findScrapDtoBySfc" resultMap="scrapDto">
SELECT S.SFC SFC, CASE WHEN S2.STATUS = '401' THEN '新建' SELECT S.SFC SFC,
WHEN S2.STATUS = '402' THEN '排队' S2.STATUS STATUS,
WHEN S2.STATUS = '403' THEN '活动'
WHEN S2.STATUS = '407' THEN '报废'
END STATUS,
SUBSTR(SS.OPERATION_BO ,INSTR(SS.OPERATION_BO ,',',1)+1,(INSTR(SS.OPERATION_BO ,'#',1)-1)-(INSTR(SS.OPERATION_BO ,',',1)+1)) || '/' || SS.STEP_ID OPERATION, SUBSTR(SS.OPERATION_BO ,INSTR(SS.OPERATION_BO ,',',1)+1,(INSTR(SS.OPERATION_BO ,'#',1)-1)-(INSTR(SS.OPERATION_BO ,',',1)+1)) || '/' || SS.STEP_ID OPERATION,
ZSD.RESRCE RESRCE,ZSD.SHOP_ORDER SHOP_ORDER, ZSD.RESRCE RESRCE,ZSD.SHOP_ORDER SHOP_ORDER,
CASE WHEN I.ITEM != 'NULL' THEN I.ITEM || '/' || I.REVISION END ITEM, CASE WHEN I.ITEM != 'NULL' THEN I.ITEM || '/' || I.REVISION END ITEM,

@ -79,16 +79,26 @@ public class InterfaceServiceImpl implements InterfaceService {
revision = StringUtil.notBlank(revision) ? revision : "A"; revision = StringUtil.notBlank(revision) ? revision : "A";
//物料描述 //物料描述
String itemDescription = itemSyncRequest.getMAKTX(); String itemDescription = itemSyncRequest.getMAKTX();
//计量单位
String unitOfMeasure = itemSyncRequest.getUNIT_OF_MEASURE();
//状态 //状态
String status = itemSyncRequest.getSTATUS(); String status = itemSyncRequest.getSTATUS();
if (!"210".equals(status) && !"202".equals(status) && !"203".equals(status) && !"204".equals(status) && !"205".equals(status)) {
throw BusinessException.build("物料状态可维护的值为201(可下达)、202(冻结)、203(作废)、204(保留)、205(新建)");
}
String statusBo = HandleEnum.STATUS.getHandle(site, status); String statusBo = HandleEnum.STATUS.getHandle(site, status);
//物料类型(FERT(已完成)/ROH(原始)/HALB(半成品)/KMAT(可配置)/INST(安装)/VERP(包装)/FHMI(生产资源/工具)/CSTM(自定义)) //物料类型(FERT(已完成)/ROH(原始)/HALB(半成品)/KMAT(可配置)/INST(安装)/VERP(包装)/FHMI(生产资源/工具)/CSTM(自定义))
String itemType = itemSyncRequest.getITEM_TYPE(); String itemType = itemSyncRequest.getITEM_TYPE();
if (!"FERT".equals(itemType) && !"ROH".equals(itemType) && !"HALB".equals(itemType)) {
throw BusinessException.build("物料类型可维护的值为FERT(已完成)、ROH(原始)、HALB(半成品)");
}
//采购类型(M(制造)/P(采购)/B(制造/采购)) //采购类型(M(制造)/P(采购)/B(制造/采购))
String procurementType = itemSyncRequest.getPROCUREMENT_TYPE(); String procurementType = itemSyncRequest.getPROCUREMENT_TYPE();
if (!"M".equals(procurementType) && !"P".equals(procurementType) && !"B".equals(procurementType)) { if (!"M".equals(procurementType) && !"P".equals(procurementType) && !"B".equals(procurementType)) {
throw BusinessException.build("参数【PROCUREMENT_TYPE】支持的值为【M、P、B】"); throw BusinessException.build("采购类型可维护的值为M(制造)、P(采购)、B(制造/采购)");
} }
//批次大小 //批次大小
String lotSize = itemSyncRequest.getLOT_SIZE(); String lotSize = itemSyncRequest.getLOT_SIZE();
lotSize = StringUtil.notBlank(lotSize) ? lotSize : "999999"; lotSize = StringUtil.notBlank(lotSize) ? lotSize : "999999";
@ -96,8 +106,6 @@ public class InterfaceServiceImpl implements InterfaceService {
String assyDataType = itemSyncRequest.getASSY_DATA_TYPE(); String assyDataType = itemSyncRequest.getASSY_DATA_TYPE();
//库存接收数据类型 //库存接收数据类型
String invAssyDataType = itemSyncRequest.getINV_ASSY_DATA_TYPE(); String invAssyDataType = itemSyncRequest.getINV_ASSY_DATA_TYPE();
//计量单位
String unitOfMeasure = itemSyncRequest.getUNIT_OF_MEASURE();
//物料标准API //物料标准API
ItemConfigurationServiceInterface itemServiceInterFace = MEServices.create("com.sap.me.productdefinition", "ItemConfigurationService", site); ItemConfigurationServiceInterface itemServiceInterFace = MEServices.create("com.sap.me.productdefinition", "ItemConfigurationService", site);
@ -118,6 +126,8 @@ public class InterfaceServiceImpl implements InterfaceService {
itemConfiguration.setUnitOfMeasurement(unitOfMeasure); itemConfiguration.setUnitOfMeasurement(unitOfMeasure);
itemConfiguration.setMaterialType(MaterialType.fromValue(itemType)); itemConfiguration.setMaterialType(MaterialType.fromValue(itemType));
String dataTypeBo = "DataTypeBO:" +site+ ",ASSEMBLY,INV_NAC";
itemConfiguration.setInventoryAssemblyDataTypeRef(dataTypeBo);
//物料描述赋值 //物料描述赋值
List<ItemTranslation> itemTranslationList = new ArrayList<>(); List<ItemTranslation> itemTranslationList = new ArrayList<>();
ItemTranslation itemTranslation = new ItemTranslation(); ItemTranslation itemTranslation = new ItemTranslation();
@ -521,34 +531,44 @@ public class InterfaceServiceImpl implements InterfaceService {
RouterStepDto routerStepDto = routerStepDtoList.get(i); RouterStepDto routerStepDto = routerStepDtoList.get(i);
String stepId = routerStepDto.getSTEP_ID(); String stepId = routerStepDto.getSTEP_ID();
String erpWorkCenter = routerStepDto.getOPERATION().trim(); String erpWorkCenter = routerStepDto.getOPERATION().trim();
if (StringUtil.isBlank(erpWorkCenter)) {
continue;
}
if (StringUtil.isBlank(entryRouterStep)) {
entryRouterStep = stepId;
}
//上一步骤添加当前步骤为下一步骤
if (i > 0) {
RouterNextStep routerNextStep = new RouterNextStep();
routerNextStep.setNextStepId(stepId);
routerStepList.get(i-1).getRouterNextStepList().add(routerNextStep);
}
String operation = null;
String operationBo = null;
if (StringUtil.isBlank(erpWorkCenter)) {
operation = (i == 0) ? "HJ01_6106GX" : "6106GX";
Operation operationModel = operationService.getCurrentRevisionRef(site, operation);
if (operationModel == null) {
throw BusinessException.build("工序编号【" +operation+ "】不存在");
}
operation = operationModel.getOperation();
operationBo = operationModel.getHandle();
} else {
/** if (StringUtil.isBlank(entryRouterStep)) {
* entryRouterStep = stepId;
* 1.ERP }
* 2.MES=_ERP
* 3.MES=MES //上一步骤添加当前步骤为下一步骤
*/ if (i > 0) {
Operation operationModel = operationService.queryOperationByErpWorkCenter(site, erpWorkCenter); RouterNextStep routerNextStep = new RouterNextStep();
if (operationModel == null) { routerNextStep.setNextStepId(stepId);
throw BusinessException.build("步骤标识【" +stepId+ "】下ERP工作中心【" +erpWorkCenter+"】对应的MES工序未维护"); routerStepList.get(i - 1).getRouterNextStepList().add(routerNextStep);
}
/**
*
* 1.ERP
* 2.MES=_ERP
* 3.MES=MES
*/
Operation operationModel = operationService.queryOperationByErpWorkCenter(site, erpWorkCenter);
if (operationModel == null) {
throw BusinessException.build("步骤标识【" + stepId + "】下ERP工作中心【" + erpWorkCenter + "】对应的MES工序未维护");
}
operation = operationModel.getOperation();
operationBo = operationModel.getHandle();
} }
String operation = operationModel.getOperation();
String operationBo = operationModel.getHandle();
//工艺路线步骤 //工艺路线步骤
RouterStep routerStep = new RouterStep(); RouterStep routerStep = new RouterStep();

@ -139,8 +139,6 @@ public class SfcScrapController {
*/ */
@GetMapping("/getScrapDtoBysfc") @GetMapping("/getScrapDtoBysfc")
public R getScrapDtoBysfc(String site,String sfc){ public R getScrapDtoBysfc(String site,String sfc){
return R.ok(anomalyService.getScrapDtoBysfc(site,sfc)); return R.ok(anomalyService.getScrapDtoBysfc(site,sfc));
} }

@ -212,9 +212,11 @@ public class SfcScrapServiceImpl extends ServiceImpl<SfcScrapMapper, SfcScrap> i
Map<String, String> wordMap = sfcScrapMapper.generatorWord(site,locale ,shopOrder, sfc); Map<String, String> wordMap = sfcScrapMapper.generatorWord(site,locale ,shopOrder, sfc);
wordMap.put("SCRAP_MARK","线下质量贴红色标签"); wordMap.put("SCRAP_MARK","线下质量贴红色标签");
wordMap.put("OPERATOR",user); wordMap.put("OPERATOR",user);
wordMap.put("GF",(wordMap.get("TYPE").contains("GF"))? "✔": ""); if(!StringUtil.isBlank(wordMap.get("TYPE"))){
wordMap.put("LF",(wordMap.get("TYPE").contains("LF"))? "✔": ""); wordMap.put("GF",(wordMap.get("TYPE").contains("GF"))? "✔": "");
wordMap.put("OT",(wordMap.get("TYPE").contains("QT"))? "✔": ""); wordMap.put("LF",(wordMap.get("TYPE").contains("LF"))? "✔": "");
wordMap.put("OT",(wordMap.get("TYPE").contains("QT"))? "✔": "");
}
wordMap.put("OPINION","报废"); wordMap.put("OPINION","报废");
wordMap.put("YEAR",year + ""); wordMap.put("YEAR",year + "");
wordMap.put("MONTH",month + ""); wordMap.put("MONTH",month + "");

Loading…
Cancel
Save