|
|
|
@ -2,10 +2,12 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.base;
|
|
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.base.IPartExtService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.base.IProcedureOnSiteService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.base.ISxPcnHttpService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesOnSiteOrder;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesOnSiteOrderDetail;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesProcedureProject;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesProjectSort;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.WmsSnInfoModel;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.repository.MesOnSiteOrderDetailRepository;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.repository.MesOnSiteOrderRepository;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.repository.MesProcedureProjectRepository;
|
|
|
|
@ -13,8 +15,10 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.repository.MesProjectSortRepository;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtEnumUtil;
|
|
|
|
|
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService;
|
|
|
|
|
import cn.estsh.i3plus.mes.pcn.util.PcnHttpUtil;
|
|
|
|
|
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
|
|
|
|
|
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
|
|
|
|
|
import cn.estsh.i3plus.platform.common.tool.JsonUtilTool;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.BaseResultBean;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
|
|
@ -26,14 +30,16 @@ import cn.estsh.i3plus.pojo.mes.repository.MesWorkOrderRepository;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.sqlpack.MesPcnHqlPack;
|
|
|
|
|
import cn.estsh.impp.framework.boot.auth.AuthUtil;
|
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
import org.springframework.util.StringUtils;
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.io.UnsupportedEncodingException;
|
|
|
|
|
import java.util.*;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
@ -42,6 +48,7 @@ import java.util.stream.Collectors;
|
|
|
|
|
* @Description:
|
|
|
|
|
**/
|
|
|
|
|
@Service
|
|
|
|
|
@Slf4j
|
|
|
|
|
public class ProcedureOnSiteService implements IProcedureOnSiteService {
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
@ -68,6 +75,9 @@ public class ProcedureOnSiteService implements IProcedureOnSiteService {
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesProjectSortRepository mesProjectSortRDao;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private ISxPcnHttpService pcnHttpService;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<MesWorkOrder> findMesWorkOrderByWoStatus(String workCenterCode, String organizeCode) {
|
|
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
@ -185,7 +195,8 @@ public class ProcedureOnSiteService implements IProcedureOnSiteService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Boolean updateMesOnSiteOrderDetail(MesOnSiteOrderDetail mesOnSiteOrderDetail, String userName) {
|
|
|
|
|
public Map<String, Object> updateMesOnSiteOrderDetail(MesOnSiteOrderDetail mesOnSiteOrderDetail, String userName) {
|
|
|
|
|
Map<String, Object> updateResultMap = new HashMap<>();
|
|
|
|
|
//修改巡检单明细数据
|
|
|
|
|
MesOnSiteOrderDetail onSiteOrderDetail = mesOnSiteOrderDetailRDao.getById(mesOnSiteOrderDetail.getId());
|
|
|
|
|
if (null == onSiteOrderDetail) {
|
|
|
|
@ -195,6 +206,13 @@ public class ProcedureOnSiteService implements IProcedureOnSiteService {
|
|
|
|
|
.setErrorDetail("数据不存在")
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String updateMemoResult = updateOnSiteOrderDetailMemo(mesOnSiteOrderDetail, onSiteOrderDetail);
|
|
|
|
|
|
|
|
|
|
if (!StringUtils.isEmpty(updateMemoResult)) {
|
|
|
|
|
updateResultMap.put("UPDATE_MEMO_RESULT", updateMemoResult);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
BeanUtils.copyProperties(mesOnSiteOrderDetail, onSiteOrderDetail);
|
|
|
|
|
onSiteOrderDetail.setSystemSyncStatus(MesPcnExtEnumUtil.IF_SYNC_STATUS.NO_SYNC.getValue());
|
|
|
|
|
ConvertBean.serviceModelUpdate(onSiteOrderDetail, userName);
|
|
|
|
@ -214,21 +232,55 @@ public class ProcedureOnSiteService implements IProcedureOnSiteService {
|
|
|
|
|
new Object[]{mesOnSiteOrderDetail.getOrganizeCode(), CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(),
|
|
|
|
|
MesPcnExtEnumUtil.IS_VAILD.VAILD.getValue(), mesOnSiteOrderDetail.getOrderNo()});
|
|
|
|
|
if (oDetailsTotal.size() == oDetails.size()) {
|
|
|
|
|
// mesOnSiteOrder.setOrderStatus(MesPcnExtEnumUtil.MES_ORJ_ORDER_STATUS.CHECK_COMPLETE.getValue());
|
|
|
|
|
// ConvertBean.serviceModelUpdate(mesOnSiteOrder, userName);
|
|
|
|
|
//
|
|
|
|
|
// mesOnSiteOrderRDao.save(mesOnSiteOrder);
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
updateResultMap.put("RESULT", true);
|
|
|
|
|
return updateResultMap;
|
|
|
|
|
} else {
|
|
|
|
|
mesOnSiteOrder.setOrderStatus(MesPcnExtEnumUtil.MES_ORJ_ORDER_STATUS.CHECKING.getValue());
|
|
|
|
|
ConvertBean.serviceModelUpdate(mesOnSiteOrder, userName);
|
|
|
|
|
|
|
|
|
|
mesOnSiteOrderRDao.save(mesOnSiteOrder);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
updateResultMap.put("RESULT", false);
|
|
|
|
|
return updateResultMap;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String updateOnSiteOrderDetailMemo(MesOnSiteOrderDetail mesOnSiteOrderDetail, MesOnSiteOrderDetail onSiteOrderDetail) {
|
|
|
|
|
if (!StringUtils.isEmpty(mesOnSiteOrderDetail.getMemo())) {
|
|
|
|
|
String requestUrl = pcnHttpService.getRequestUrl(mesOnSiteOrderDetail.getOrganizeCode(), MesPcnExtConstWords.FIND_PART_NO);
|
|
|
|
|
Map<String, String> params = new HashMap<>();
|
|
|
|
|
params.put(MesPcnExtConstWords.SN, mesOnSiteOrderDetail.getMemo());
|
|
|
|
|
params.put(MesPcnExtConstWords.ORGANIZE_CODE, mesOnSiteOrderDetail.getOrganizeCode());
|
|
|
|
|
WmsSnInfoModel wmsSnInfoModel = null;
|
|
|
|
|
try {
|
|
|
|
|
String data = PcnHttpUtil.doGet(requestUrl, params);
|
|
|
|
|
BaseResultBean baseResultBean = null;
|
|
|
|
|
|
|
|
|
|
if (!StringUtils.isEmpty(data)) baseResultBean = JsonUtilTool.decode(data, BaseResultBean.class);
|
|
|
|
|
else log.error("updateMesOnSiteOrderDetail --- HTTP[{}]调用主接口失败 --- THREAD:[{}]", requestUrl, Thread.currentThread().getName());
|
|
|
|
|
|
|
|
|
|
log.error("updateMesOnSiteOrderDetail --- 工程巡检校验物料[{}]时获取WMS数据[{}] --- THREAD:[{}]", mesOnSiteOrderDetail.getMemo(), data, Thread.currentThread().getName());
|
|
|
|
|
|
|
|
|
|
if (null != baseResultBean && baseResultBean.success) {
|
|
|
|
|
LinkedHashMap resultObject = (LinkedHashMap) baseResultBean.getResultObject();
|
|
|
|
|
wmsSnInfoModel= JsonUtilTool.decode(JSONObject.toJSONString(resultObject), WmsSnInfoModel.class);
|
|
|
|
|
}
|
|
|
|
|
if (wmsSnInfoModel == null) {
|
|
|
|
|
log.error("updateMesOnSiteOrderDetail --- 工程巡检校验物料[{}]时获取WMS数据失败 HTTP[{}]调用主接口 无法获取此条码信息 --- THREAD:[{}]", mesOnSiteOrderDetail.getMemo(),requestUrl, Thread.currentThread().getName());
|
|
|
|
|
}
|
|
|
|
|
} catch (UnsupportedEncodingException e) {
|
|
|
|
|
log.error("updateMesOnSiteOrderDetail --- 工程巡检校验物料[{}]时获取WMS数据失败 HTTP[{}]调用主接口失败 --- THREAD:[{}]", mesOnSiteOrderDetail.getMemo(), requestUrl, Thread.currentThread().getName());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (wmsSnInfoModel == null) {
|
|
|
|
|
onSiteOrderDetail.setMemo(mesOnSiteOrderDetail.getMemo());
|
|
|
|
|
return String.format("条码[%s]不存在", mesOnSiteOrderDetail.getMemo());
|
|
|
|
|
} else {
|
|
|
|
|
onSiteOrderDetail.setMemo(wmsSnInfoModel.getPartNo());
|
|
|
|
|
return "";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return "";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|