Merge remote-tracking branch 'origin/master'

master
philip 4 years ago
commit e80b18df27

@ -983,11 +983,8 @@
</select>
<select id="findScrapDtoBySfc" resultMap="scrapDto">
SELECT S.SFC SFC, CASE WHEN S2.STATUS = '401' THEN '新建'
WHEN S2.STATUS = '402' THEN '排队'
WHEN S2.STATUS = '403' THEN '活动'
WHEN S2.STATUS = '407' THEN '报废'
END STATUS,
SELECT S.SFC SFC,
S2.STATUS 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,
ZSD.RESRCE RESRCE,ZSD.SHOP_ORDER SHOP_ORDER,
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";
//物料描述
String itemDescription = itemSyncRequest.getMAKTX();
//计量单位
String unitOfMeasure = itemSyncRequest.getUNIT_OF_MEASURE();
//状态
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);
//物料类型(FERT(已完成)/ROH(原始)/HALB(半成品)/KMAT(可配置)/INST(安装)/VERP(包装)/FHMI(生产资源/工具)/CSTM(自定义))
String itemType = itemSyncRequest.getITEM_TYPE();
if (!"FERT".equals(itemType) && !"ROH".equals(itemType) && !"HALB".equals(itemType)) {
throw BusinessException.build("物料类型可维护的值为FERT(已完成)、ROH(原始)、HALB(半成品)");
}
//采购类型(M(制造)/P(采购)/B(制造/采购))
String procurementType = itemSyncRequest.getPROCUREMENT_TYPE();
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();
lotSize = StringUtil.notBlank(lotSize) ? lotSize : "999999";
@ -96,8 +106,6 @@ public class InterfaceServiceImpl implements InterfaceService {
String assyDataType = itemSyncRequest.getASSY_DATA_TYPE();
//库存接收数据类型
String invAssyDataType = itemSyncRequest.getINV_ASSY_DATA_TYPE();
//计量单位
String unitOfMeasure = itemSyncRequest.getUNIT_OF_MEASURE();
//物料标准API
ItemConfigurationServiceInterface itemServiceInterFace = MEServices.create("com.sap.me.productdefinition", "ItemConfigurationService", site);
@ -118,6 +126,8 @@ public class InterfaceServiceImpl implements InterfaceService {
itemConfiguration.setUnitOfMeasurement(unitOfMeasure);
itemConfiguration.setMaterialType(MaterialType.fromValue(itemType));
String dataTypeBo = "DataTypeBO:" +site+ ",ASSEMBLY,INV_NAC";
itemConfiguration.setInventoryAssemblyDataTypeRef(dataTypeBo);
//物料描述赋值
List<ItemTranslation> itemTranslationList = new ArrayList<>();
ItemTranslation itemTranslation = new ItemTranslation();
@ -521,9 +531,18 @@ public class InterfaceServiceImpl implements InterfaceService {
RouterStepDto routerStepDto = routerStepDtoList.get(i);
String stepId = routerStepDto.getSTEP_ID();
String erpWorkCenter = routerStepDto.getOPERATION().trim();
String operation = null;
String operationBo = null;
if (StringUtil.isBlank(erpWorkCenter)) {
continue;
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;
@ -533,7 +552,7 @@ public class InterfaceServiceImpl implements InterfaceService {
if (i > 0) {
RouterNextStep routerNextStep = new RouterNextStep();
routerNextStep.setNextStepId(stepId);
routerStepList.get(i-1).getRouterNextStepList().add(routerNextStep);
routerStepList.get(i - 1).getRouterNextStepList().add(routerNextStep);
}
@ -545,10 +564,11 @@ public class InterfaceServiceImpl implements InterfaceService {
*/
Operation operationModel = operationService.queryOperationByErpWorkCenter(site, erpWorkCenter);
if (operationModel == null) {
throw BusinessException.build("步骤标识【" +stepId+ "】下ERP工作中心【" +erpWorkCenter+"】对应的MES工序未维护");
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();

@ -139,8 +139,6 @@ public class SfcScrapController {
*/
@GetMapping("/getScrapDtoBysfc")
public R getScrapDtoBysfc(String site,String 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);
wordMap.put("SCRAP_MARK","线下质量贴红色标签");
wordMap.put("OPERATOR",user);
if(!StringUtil.isBlank(wordMap.get("TYPE"))){
wordMap.put("GF",(wordMap.get("TYPE").contains("GF"))? "✔": "");
wordMap.put("LF",(wordMap.get("TYPE").contains("LF"))? "✔": "");
wordMap.put("OT",(wordMap.get("TYPE").contains("QT"))? "✔": "");
}
wordMap.put("OPINION","报废");
wordMap.put("YEAR",year + "");
wordMap.put("MONTH",month + "");

Loading…
Cancel
Save