Merge remote-tracking branch 'origin/dev' into dev

tags/yfai-mes-ext-v2.4
xiangwei.zhang 5 months ago
commit 3533263701

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.api.base;
import cn.estsh.i3plus.pojo.mes.bean.MesMoveRule;
import io.swagger.annotations.ApiOperation;
import java.util.List;
@ -13,5 +14,6 @@ import java.util.List;
**/
public interface IMesMoveRuleService extends IBaseMesService<MesMoveRule> {
List<MesMoveRule> findMesMoveRuleByPartProdGroupCode(String code,String organizeCode);
@ApiOperation("根据组代码加code查询移库规则信息")
List<MesMoveRule> findMesMoveRuleByPartProdGroupCode(String code,String organizeCode,Integer groupType);
}

@ -1,4 +1,3 @@
import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant
import cn.estsh.i3plus.mes.api.iservice.busi.ISyncFuncService
import cn.estsh.i3plus.platform.common.tool.MathOperation
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean

@ -8,7 +8,7 @@ import org.slf4j.LoggerFactory
import org.springframework.beans.factory.annotation.Autowired
/**
* @Description : MES2PISCES-
* @Description : MES2PISCES-
* @Reference :
* @Author : junsheng.li
* @CreateDate 2024/11/18 20:37

@ -0,0 +1,83 @@
import cn.estsh.i3plus.mes.api.iservice.busi.ISyncFuncService
import cn.estsh.i3plus.platform.common.tool.MathOperation
import cn.estsh.i3plus.platform.common.tool.TimeTool
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement
import cn.estsh.i3plus.pojo.mes.dbinterface.MesInterfaceDataMapper
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel
import cn.estsh.i3plus.pojo.mes.repository.MesShippingOrderManagementRepository
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil
import org.slf4j.Logger
import org.slf4j.LoggerFactory
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.util.StringUtils
/**
* @Description : MES2PISCES-
* @Reference :
* @Author : junsheng.li
* @CreateDate 2024/11/29 15:18
* @Modify:
**/
class MesToPiscesMesJisShippingWuhu {
public static final Logger LOGGER = LoggerFactory.getLogger(MesToPiscesMesJisShippingWuhu.class)
@Autowired
private MesShippingOrderManagementRepository mesShippingOrderManagementRepository;
@Autowired
private ISyncFuncService syncFuncService;
def filterData(MesInterfaceDataMapper mapper, List<Map<String, Object>> srcData) throws Exception {
if (srcData == null || srcData.size() == 0) {
return srcData
}
Map<String, MesShippingOrderManagement> mesPartShippingGroupMap = new HashMap<>();
String organizeCode = mapper.getOrganizeCode();
Map<String, Map<String, Object>> destData = new HashMap<>();
for (Map<String, Object> rowMap : srcData) {
if (!StringUtils.isEmpty(rowMap.get("shipping_order_code"))) {
MesShippingOrderManagement mesShipping = getMesShipping(organizeCode, String.valueOf(rowMap.get("shipping_order_code")), mesPartShippingGroupMap)
if (!Objects.isNull(mesShipping)) {
rowMap.put("HANDLE_FID", mesShipping.getFid())
} else {
LOGGER.info("shipping_order_code:{}信息不存在", String.valueOf(rowMap.get("shipping_order_code")))
}
}
//
String key = String.valueOf(rowMap.get("HANDLE_FID")) + String.valueOf(rowMap.get("part_no"))
if (destData.containsKey(key)) {
destData.get(key).put("quantity_per_car", MathOperation.add(Double.valueOf(destData.get(key).get("quantity_per_car") + ""), Double.valueOf(rowMap.get("quantity_per_car") + "")))
} else {
destData.put(key, rowMap)
}
}
//TRANS_ID
if(mapper.getDestColumnMapping().contains("TRANS_ID")){
Date date = new Date();
GenSerialNoModel orderSeqSerialNoModel = new GenSerialNoModel("JIS_SHIPPING_TRANS_ID");
orderSeqSerialNoModel.setYear(MesExtEnumUtil.YEAR_SHORT.valueOfDescription(Integer.parseInt(TimeTool.getYear(date))))
orderSeqSerialNoModel.setMonth(MesExtEnumUtil.MONTH_SHORT.valueOfDescription(Integer.parseInt(TimeTool.getMonth(date))))
orderSeqSerialNoModel.setDay(TimeTool.getDay(date))
List<String> resultList = syncFuncService.syncSerialNo(orderSeqSerialNoModel.organizeCode(organizeCode), "MES2PISCES发运单", organizeCode, srcData.size()).getResultList();
int index = 0;
for (Map<String, Object> rowMap : srcData) {
rowMap.put("TRANS_ID", resultList.get(index));
index++;
}
}
return new ArrayList<>(destData.values());
}
private MesShippingOrderManagement getMesShipping(String organizeCode, String shippingCode, Map<String, MesShippingOrderManagement> mesPartShippingGroupMap) {
if (Objects.isNull(mesPartShippingGroupMap) || !mesPartShippingGroupMap.containsKey(shippingCode)) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getStringEqualPack(shippingCode, "shippingCode", ddlPackBean);
mesPartShippingGroupMap.put(shippingCode, mesShippingOrderManagementRepository.getByProperty(ddlPackBean))
}
return mesPartShippingGroupMap.get(shippingCode);
}
}

@ -29,7 +29,7 @@ class MesProductionRecordToPisces {
public static final Logger LOGGER = LoggerFactory.getLogger(MesProductionRecordToPisces.class)
private static final String[] workCenterCodeList = ["B19CK01A", "B15CK01A", "C06CK01A", "C06CK01B", "C09CK01A", "C12CK01A"] as String[];
private static final String[] workCenterCodeList = ["B19C901A", "B15C901A", "C06C901A", "C06C901B", "C09C901A", "C12C901A"] as String[];
@Autowired
private MesEquipmentRepository equipmentRepository;
@ -40,7 +40,7 @@ class MesProductionRecordToPisces {
@Autowired
private MesWorkOrderRepository workOrderRepository;
@Resource(name = "piscesDataSource")
@Resource(name = "pisces3DataSource")
private DynamicDataSourceProxy piscesDataSource;
@Resource(name = "mesDataSource")
@ -71,6 +71,7 @@ class MesProductionRecordToPisces {
List<Map<String, Object>> destData = new ArrayList<>();
for (Map<String, Object> rowMap : srcData) {
//
Map<String, Object> params = new HashMap<>();
params.put("partNo", rowMap.get("part_no"))
params.put("productSn", rowMap.get("product_sn"))
@ -81,7 +82,7 @@ class MesProductionRecordToPisces {
rowMap.put("BARCODE_ID", dataMap.iterator().next().get("ID"))
idList.add(rowMap.get("id").toString());
} else {
LOGGER.info("条码{}物料{}条码信息未同步,信息不存在", rowMap.get("product_sn"),rowMap.get("part_no"))
LOGGER.info("条码{}物料{}条码信息未同步,信息不存在", rowMap.get("product_sn"), rowMap.get("part_no"))
continue
}
String workCenterCode = String.valueOf(rowMap.get("work_center_code"));

@ -32,6 +32,7 @@ public class ShipmentDetailReportDaoImpl implements IShipmentDetailReportDao {
StringBuilder dataQueryHql = new StringBuilder();
StringBuilder countQueryHql = new StringBuilder();
StringBuilder commonQueryHql = new StringBuilder();
StringBuilder orderByHql = new StringBuilder();
dataQueryHql.append("select new ").append(ShippingReportModel.class.getName()).append(" ( ");
@ -117,6 +118,9 @@ public class ShipmentDetailReportDaoImpl implements IShipmentDetailReportDao {
if (!StringUtils.isEmpty(model.getCustCode())) {
commonQueryHql.append("AND ms.custCode like :custCode ");
}
if (!StringUtils.isEmpty(model.getCustOrganizeCode())) {
commonQueryHql.append("AND ms.custOrganizeCode = :custOrganizeCode ");
}
if (!StringUtils.isEmpty(model.getStartScanTimeStart()) && !StringUtils.isEmpty(model.getStartScanTimeEnd())) {
commonQueryHql.append("AND ms.startScanTime between :startScanTimeStart and :startScanTimeEnd ");
}
@ -127,7 +131,10 @@ public class ShipmentDetailReportDaoImpl implements IShipmentDetailReportDao {
commonQueryHql.append("AND ms.publishTime between :publishTimeStart and :publishTimeEnd ");
}
Query dataQuery = entityManager.createQuery(dataQueryHql.append(commonQueryHql).toString(), ShippingReportModel.class);
//按照结束扫描时间倒叙
orderByHql.append(" ORDER BY endScanTime DESC ");
Query dataQuery = entityManager.createQuery(dataQueryHql.append(commonQueryHql).append(orderByHql).toString(), ShippingReportModel.class);
setQueryParams(dataQuery, model);
Query countQuery = entityManager.createQuery(countQueryHql.append(commonQueryHql).toString());
setQueryParams(countQuery, model);
@ -160,6 +167,9 @@ public class ShipmentDetailReportDaoImpl implements IShipmentDetailReportDao {
if (!StringUtils.isEmpty(model.getCustCode())) {
dataQuery.setParameter("custCode", model.getCustCode() + "%");
}
if (!StringUtils.isEmpty(model.getCustOrganizeCode())) {
dataQuery.setParameter("custOrganizeCode", model.getCustOrganizeCode());
}
if (!StringUtils.isEmpty(model.getStartScanTimeStart()) && !StringUtils.isEmpty(model.getStartScanTimeEnd())) {
dataQuery.setParameter("startScanTimeStart", model.getStartScanTimeStart());
dataQuery.setParameter("startScanTimeEnd", model.getStartScanTimeEnd());

@ -48,12 +48,12 @@ public class MesWorkOrderSendToWmsJob extends BaseMesScheduleJob {
for (WmsJobParamModel wmsJobParamModel : wmsJobParamModelList) {
try {
long startTime = System.currentTimeMillis();
LOGGER.info("工厂{}根据拉动组和生产工单产生拉动单JOB --- start", wmsJobParamModel.getOrganizeCode());
LOGGER.info("工厂{}MES工单推送给WMSJOB --- start", wmsJobParamModel.getOrganizeCode());
mesWorkOrderService.doSendMesWorkOrderToWms(wmsJobParamModel.getOrganizeCode(), wmsJobParamModel.getPageSize(), MesExtConstWords.JOB);
long endTime = System.currentTimeMillis();
LOGGER.info("工厂{}根据拉动组和生产工单产生拉动单JOB --- end --- 耗时: {} ms", wmsJobParamModel.getOrganizeCode(), endTime - startTime);
LOGGER.info("工厂{}MES工单推送给WMSJOB --- end --- 耗时: {} ms", wmsJobParamModel.getOrganizeCode(), endTime - startTime);
} catch (Exception e) {
LOGGER.info("工厂{}根据拉动组和生产工单产生拉动单JOB 执行失败{}", wmsJobParamModel.getOrganizeCode(), e);
LOGGER.info("工厂{}MES工单推送给WMSJOB 执行失败{}", wmsJobParamModel.getOrganizeCode(), e);
}
}
}

@ -1,7 +1,10 @@
package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base;
import cn.estsh.i3plus.ext.mes.api.base.IMesEquipmentSpotCheckPartService;
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
import cn.estsh.i3plus.ext.mes.apiservice.config.AuthUtilExt;
import cn.estsh.i3plus.ext.mes.apiservice.utils.MesException;
import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
@ -9,7 +12,6 @@ import cn.estsh.i3plus.pojo.base.util.StringUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheck;
import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentSpotCheckPart;
import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentSpotCheckRepository;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -21,79 +23,70 @@ import java.util.List;
@Slf4j
public class MesEquipmentSpotCheckPartService extends BaseMesService<MesEquipmentSpotCheckPart> implements IMesEquipmentSpotCheckPartService {
@Autowired
private MesEquipmentSpotCheckRepository equipmentSpotCheckRepository;
@Override
protected void setPackQueryBean(MesEquipmentSpotCheckPart bean, DdlPackBean packBean) {
DdlPreparedPack.getNumEqualPack(bean.getPid(), "pid", packBean);
DdlPreparedPack.getStringLikerPack(bean.getPartNo(), "partNo", packBean);
}
@Override
public void validateImport(List<MesEquipmentSpotCheckPart> beanList) {
for (MesEquipmentSpotCheckPart item : beanList) {
// 数据校验
if(StringUtil.isEmpty(item.getPid())){
if (StringUtil.isEmpty(item.getPid())) {
ValidatorBean.checkNotNull(item.getSpotCheckCode(), "点检项目代码不能为空");
DdlPackBean seriesPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(item.getSpotCheckCode(), "spotCheckCode", seriesPackBean);
MesEquipmentSpotCheckPart itemFlg = baseRDao.getByProperty(seriesPackBean);
MesEquipmentSpotCheck itemFlg = equipmentSpotCheckRepository.getByProperty(seriesPackBean);
if (StringUtil.isEmpty(itemFlg)) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("【%s】点检项目代码不存在请检查数据", item.getSpotCheckCode())
.build();
MesException.throwMesBusiException("点检项目代码【%s】不存在请检查数据", item.getSpotCheckCode());
}
item.setPid(itemFlg.getPid());
}else {
ValidatorBean.checkNotNull(item.getId(), "点检项目id不能为空");
item.setPid(itemFlg.getId());
} else {
ValidatorBean.checkNotNull(item.getPid(), "点检项目id不能为空");
DdlPackBean seriesPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", seriesPackBean);
DdlPreparedPack.getNumEqualPack(item.getPid(), "id", seriesPackBean);
if (!baseRDao.isExitByHql(seriesPackBean)) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("【%s】点检项目id不存在请检查数据", item.getPid())
.build();
if (!equipmentSpotCheckRepository.isExitByHql(seriesPackBean)) {
MesException.throwMesBusiException("点检项目id【%s】不存在请检查数据", item.getPid());
}
}
item.setId(null);
item.setSystemSyncStatus(CommonEnumUtil.FALSE);
item.setSystemSyncDatetime("");
ConvertBean.serviceModelInitialize(item, AuthUtilExt.getUserName());
}
}
@Override
public List<MesEquipmentSpotCheckPart> validateReturnImport(List<MesEquipmentSpotCheckPart> beanList) {
for (MesEquipmentSpotCheckPart item : beanList) {
// 数据校验
if(StringUtil.isEmpty(item.getPid())){
if (StringUtil.isEmpty(item.getPid())) {
ValidatorBean.checkNotNull(item.getSpotCheckCode(), "点检项目代码不能为空");
DdlPackBean seriesPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(item.getSpotCheckCode(), "spotCheckCode", seriesPackBean);
MesEquipmentSpotCheck itemFlg = equipmentSpotCheckRepository.getByProperty(seriesPackBean);
if (StringUtil.isEmpty(itemFlg)) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("【%s】点检项目代码不存在请检查数据", item.getSpotCheckCode())
.build();
MesException.throwMesBusiException("点检项目代码【%s】不存在请检查数据", item.getSpotCheckCode());
}
item.setPid(itemFlg.getId());
}else {
ValidatorBean.checkNotNull(item.getId(), "点检项目id不能为空");
} else {
ValidatorBean.checkNotNull(item.getPid(), "点检项目id不能为空");
DdlPackBean seriesPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", seriesPackBean);
DdlPreparedPack.getNumEqualPack(item.getPid(), "id", seriesPackBean);
if (!baseRDao.isExitByHql(seriesPackBean)) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("【%s】点检项目id不存在请检查数据", item.getPid())
.build();
if (!equipmentSpotCheckRepository.isExitByHql(seriesPackBean)) {
MesException.throwMesBusiException("点检项目id【%s】不存在请检查数据", item.getPid());
}
}
}

@ -25,6 +25,7 @@ public class MesMoveRuleServiceImpl extends BaseMesService<MesMoveRule> implemen
@Override
protected void setPackQueryBean(MesMoveRule bean, DdlPackBean packBean) {
DdlPreparedPack.getNumEqualPack(bean.getGroupType(), "groupType", packBean);
DdlPreparedPack.getStringEqualPack(bean.getCode(), "code", packBean);
DdlPreparedPack.getStringEqualPack(bean.getSrcType(), "srcType", packBean);
}
@ -35,6 +36,7 @@ public class MesMoveRuleServiceImpl extends BaseMesService<MesMoveRule> implemen
checkNotNull(item);
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
DdlPreparedPack.getNumEqualPack(item.getGroupType(), "groupType", ddlPackBean);
DdlPreparedPack.getStringEqualPack(item.getCode(), "code", ddlPackBean);
DdlPreparedPack.getStringEqualPack(item.getSrcType(), "srcType", ddlPackBean);
@ -50,6 +52,7 @@ public class MesMoveRuleServiceImpl extends BaseMesService<MesMoveRule> implemen
checkNotNull(item);
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
DdlPreparedPack.getNumEqualPack(item.getGroupType(), "groupType", ddlPackBean);
DdlPreparedPack.getStringEqualPack(item.getCode(), "code", ddlPackBean);
DdlPreparedPack.getStringEqualPack(item.getSrcType(), "srcType", ddlPackBean);
DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", ddlPackBean);
@ -60,8 +63,9 @@ public class MesMoveRuleServiceImpl extends BaseMesService<MesMoveRule> implemen
}
@Override
public List<MesMoveRule> findMesMoveRuleByPartProdGroupCode(String code, String organizeCode) {
public List<MesMoveRule> findMesMoveRuleByPartProdGroupCode(String code, String organizeCode,Integer groupType) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getNumEqualPack(groupType, "groupType", ddlPackBean);
DdlPreparedPack.getStringEqualPack(code, "code", ddlPackBean);
List<MesMoveRule> moveRules = baseRDao.findByHqlWhere(ddlPackBean);
if (CollectionUtils.isEmpty(moveRules)) {
@ -76,5 +80,6 @@ public class MesMoveRuleServiceImpl extends BaseMesService<MesMoveRule> implemen
ValidatorBean.checkNotNull(item.getErpDestLocateNo(), "ERP目的库位不能为空");
ValidatorBean.checkNotNull(item.getSrcType(), "来源类型不能为空");
ValidatorBean.checkNotNull(item.getReportType(), "汇报类型不能为空");
ValidatorBean.checkNotNull(item.getGroupType(), "组类型不能为空");
}
}

@ -1475,7 +1475,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
MesMoveRule moveRule;
MesPart itemPart;
//查询零件生产组的移库规则
List<MesMoveRule> moveRules = mesMoveRuleService.findMesMoveRuleByPartProdGroupCode(mesWorkOrder.getPartProdGroupCode(), mesWorkOrder.getOrganizeCode());
List<MesMoveRule> moveRules = mesMoveRuleService.findMesMoveRuleByPartProdGroupCode(mesWorkOrder.getPartProdGroupCode(), mesWorkOrder.getOrganizeCode(), MesExtEnumUtil.MOVE_RULE_GROUP_TYPE.MOVE_RULE_GROUP_TYPE_20.getValue());
Map<String, List<MesMoveRule>> mesMoveRuleMap = moveRules.stream().filter(t -> Objects.nonNull(t.getSrcType())).collect(Collectors.groupingBy(MesMoveRule::getSrcType));
List<String> itemPartNoList = mesBoms.stream().map(MesBom::getItemPartNo).collect(Collectors.toList());
//子物料SAP下发信息
@ -1997,6 +1997,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
List<MesWorkOrder> mesWorkOrderListToWms = getMesWorkOrderListToWms(organizeCode, pageSize);
if (CollectionUtils.isEmpty(mesWorkOrderListToWms)) {
log.info("工厂:{}不存在未推送的工单", organizeCode);
return;
}
//获取物料信息
Map<String, MesPart> partMap = BeanMapUtilsExt.getBeanMap(mesPartRDao, MesExtConstWords.PART_NO, organizeCode, mesWorkOrderListToWms.stream().map(MesWorkOrder::getPartNo).distinct().collect(Collectors.toList()), "物料信息");

@ -468,7 +468,12 @@ public class IMesYfBoardServiceImpl implements IMesYfBoardService {
//计划开始时间
DdlPreparedPack.timeBuilder(timeZoneMap.get(workCenterCode).get(START_TIME),
timeZoneMap.get(workCenterCode).get(END_TIME), "planStartTime", ddlPackBean, true);
return mesWorkOrderRepository.findByHqlWhere(ddlPackBean);
List<MesWorkOrder> workOrderList = mesWorkOrderRepository.findByHqlWhere(ddlPackBean);
//剔除P单数据
workOrderList = CollectionUtils.isEmpty(workOrderList) ? null :
workOrderList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getOrderFlag()) &&
!o.getOrderFlag().equals(MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue()))).collect(Collectors.toList());
return workOrderList;
}
/**

@ -8,6 +8,7 @@ import cn.estsh.i3plus.ext.mes.api.busi.IMesSpotCheckOrderService;
import cn.estsh.i3plus.ext.mes.apiservice.config.AuthUtilExt;
import cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base.BaseMesService;
import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant;
import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords;
import cn.estsh.i3plus.icloud.core.sdk.ICoreUtilCloud;
import cn.estsh.i3plus.mes.api.iservice.base.IStateMachineRouteDesignService;
import cn.estsh.i3plus.mes.api.iservice.busi.ISyncFuncService;
@ -15,8 +16,6 @@ import cn.estsh.i3plus.mes.apiservice.util.DateUtil;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.WmsConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseResultBean;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
@ -126,18 +125,10 @@ public class MesSpotCheckOrderService extends BaseMesService<MesSpotCheckOrder>
}
//生成单据号
// GenSerialNoModel genSerialNoModel = new GenSerialNoModel(MesCommonConstant.SPOT_CHECK_ORDER_NO_RULE);
// List<String> resultList = syncFuncService.syncSerialNo(genSerialNoModel, bean.getCreateUser(), bean.getOrganizeCode(), 1).getResultList();
String orderNo="";
BaseResultBean<LinkedHashMap> orderResutlBean = sysOrderNoRuleCloud.getOrderNo(MesCommonConstant.SPOT_CHECK_ORDER_NO_RULE);
if (orderResutlBean != null && orderResutlBean.isSuccess()) {
orderNo = orderResutlBean.getResultObject().get(WmsConstWords.CORE_ORDER_NO).toString();
} else {
orderNo = TimeTool.getDateTime().replaceAll("-", "") + String.valueOf((int) (Math.random() * 9000) + 1000);
}
GenSerialNoModel genSerialNoModel = new GenSerialNoModel(MesCommonConstant.SPOT_CHECK_ORDER_NO_RULE);
String orderNo = (String) syncFuncService.syncSerialNo(genSerialNoModel, AuthUtil.getSessionUser().getUserName(), AuthUtil.getOrganizeCode(), MesExtConstWords.ONE).getResultList().iterator().next();
//保存单据
BeanUtils.copyProperties(equipmentSpotCheck, bean, "id");
BeanUtils.copyProperties(equipmentSpotCheck, bean, MesExtConstWords.ID);
bean.setSpotCheckOrderNo(orderNo);
bean.setSystemSyncStatus(CommonEnumUtil.FALSE);

Loading…
Cancel
Save