武汉汇报job&装配目视单打印问题修复

tags/yfai-pcn-ext-v2.3
jun 7 months ago
parent 36560566f1
commit 3b3e8014b5

@ -64,6 +64,9 @@ public interface IMesWorkOrderService {
@ApiOperation("排序汇报job") @ApiOperation("排序汇报job")
void doMesWorkOrderSortReport(String organizeCode, Integer pageSize, String userName); void doMesWorkOrderSortReport(String organizeCode, Integer pageSize, String userName);
@ApiOperation("非排序汇报job")
void doMesWorkOrderNoSortReport(String organizeCode, Integer pageSize, String userName);
@ApiOperation("根据工单查询工单零件信息") @ApiOperation("根据工单查询工单零件信息")
List<MesWorkOrderPart> findMesWorkOrderPartByOrderNo(String organizeCode,List<String> workOrderNoList); List<MesWorkOrderPart> findMesWorkOrderPartByOrderNo(String organizeCode,List<String> workOrderNoList);
} }

@ -15,5 +15,5 @@ import java.util.List;
public interface IMesProductionRecordDao { public interface IMesProductionRecordDao {
@ApiOperation("查询汇报的加工记录") @ApiOperation("查询汇报的加工记录")
List<MesProductionRecord> findMesProductionRecordNoReport(String organizeCode, Integer workOrderType, Integer pageSize); List<MesProductionRecord> findMesProductionRecordNoReport(String organizeCode, Integer workOrderType, Integer pageSize, List<String> workCenterList);
} }

@ -13,10 +13,7 @@ import org.springframework.util.StringUtils;
import javax.persistence.EntityManager; import javax.persistence.EntityManager;
import javax.persistence.Query; import javax.persistence.Query;
import java.util.HashMap; import java.util.*;
import java.util.List;
import java.util.Map;
import java.util.StringJoiner;
/** /**
* @Description : * @Description :
@ -54,7 +51,7 @@ public class MesInsertBatchDaoImpl implements IMesInsertBatchDao {
public void insertMesRecyclablePackageBindingLogLimit(List<MesRecyclablePackageBindingLog> logList, String organizeCode) { public void insertMesRecyclablePackageBindingLogLimit(List<MesRecyclablePackageBindingLog> logList, String organizeCode) {
String fieldStr = "`id`,`create_date_time`,`create_user`,`description`,`is_deleted`,`is_valid`,`organize_code`,`remark`,`system_sync_date_time`,`system_sync_status`,`hanger_code`,`hanger_package_sn`,`hanger_rule_code`,`lot_number`,`modify_type`,`order_code`,`package_sn`,`part_name`,`part_no`,`product_sn`,`qty`,`status`,`total_qty`,`type_code`"; String fieldStr = "id,create_date_time,create_user,description,is_deleted,is_valid,organize_code,remark,system_sync_date_time,system_sync_status,hanger_code,hanger_package_sn,hanger_rule_code,lot_number,modify_type,order_code,package_sn,part_name,part_no,product_sn,qty,status,total_qty,type_code";
//拼接字段 //拼接字段
StringBuilder fieldBuilder = new StringBuilder(); StringBuilder fieldBuilder = new StringBuilder();
String[] splitField = fieldStr.split(MesPcnExtConstWords.COMMA); String[] splitField = fieldStr.split(MesPcnExtConstWords.COMMA);
@ -66,11 +63,9 @@ public class MesInsertBatchDaoImpl implements IMesInsertBatchDao {
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) insertStr.append(MesPcnExtConstWords.E_UNDERLINE).append(organizeCode.toLowerCase()); if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) insertStr.append(MesPcnExtConstWords.E_UNDERLINE).append(organizeCode.toLowerCase());
insertStr.append("(").append(fieldStr).append(") VALUES( "); insertStr.append("(").append(fieldStr).append(") VALUES( ");
//sql组装 //sql组装
Map<String, Object> parameterMap = new HashMap<>();
StringBuilder builder = new StringBuilder();
for (int i = MesPcnExtConstWords.ZERO; i < logList.size(); i++) { for (int i = MesPcnExtConstWords.ZERO; i < logList.size(); i++) {
Map<String, Object> parameterMap = new LinkedHashMap<>();
int j = MesPcnExtConstWords.ZERO; int j = MesPcnExtConstWords.ZERO;
builder.append(insertStr).append(fieldBuilder.substring(MesPcnExtConstWords.ZERO, fieldBuilder.lastIndexOf(MesPcnExtConstWords.COMMA) - MesPcnExtConstWords.ONE).replaceAll("%s", String.valueOf(i))).append(" ); ");
parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), snowflakeIdMaker.nextId()); parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), snowflakeIdMaker.nextId());
parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getCreateDatetime()); parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getCreateDatetime());
parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getCreateUser()); parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getCreateUser());
@ -95,12 +90,12 @@ public class MesInsertBatchDaoImpl implements IMesInsertBatchDao {
parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getStatus()); parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getStatus());
parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getTotalQty()); parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j++]).add(String.valueOf(i)).toString(), logList.get(i).getTotalQty());
parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j]).add(String.valueOf(i)).toString(), logList.get(i).getTypeCode()); parameterMap.put(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(splitField[j]).add(String.valueOf(i)).toString(), logList.get(i).getTypeCode());
Query queryObject = entityManager.createNativeQuery(insertStr + fieldBuilder.substring(MesPcnExtConstWords.ZERO, fieldBuilder.lastIndexOf(MesPcnExtConstWords.COMMA) - MesPcnExtConstWords.ONE).replaceAll("%s", String.valueOf(i)) + " ); ");
//数据填充
for (String key : parameterMap.keySet()) {
queryObject.setParameter(key, parameterMap.get(key));
}
queryObject.executeUpdate();
} }
Query queryObject = entityManager.createNativeQuery(builder.toString());
//数据填充
for (String key : parameterMap.keySet()) {
queryObject.setParameter(key, parameterMap.get(key));
}
queryObject.executeUpdate();
} }
} }

@ -8,6 +8,7 @@ import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import groovy.util.logging.Slf4j; import groovy.util.logging.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.persistence.EntityManager; import javax.persistence.EntityManager;
import javax.persistence.Query; import javax.persistence.Query;
@ -31,12 +32,15 @@ public class MesProductionRecordImpl implements IMesProductionRecordDao {
private EntityManager entityManager; private EntityManager entityManager;
@Override @Override
public List<MesProductionRecord> findMesProductionRecordNoReport(String organizeCode, Integer workOrderType, Integer pageSize) { public List<MesProductionRecord> findMesProductionRecordNoReport(String organizeCode, Integer workOrderType, Integer pageSize, List<String> workCenterList) {
StringBuilder hql = new StringBuilder(); StringBuilder hql = new StringBuilder();
hql.append(" select record from MesProductionRecord record left join MesWorkCenter center on record.workCenterCode = center.workCenterCode where 1=1"); hql.append(" select record from MesProductionRecord record left join MesWorkCenter center on record.workCenterCode = center.workCenterCode where 1=1");
hql.append(" and record.organizeCode = :organizeCode and record.isValid = :isValid and record.isDeleted = :isDeleted "); hql.append(" and record.organizeCode = :organizeCode and record.isValid = :isValid and record.isDeleted = :isDeleted ");
hql.append(" and center.organizeCode = :organizeCode and center.isValid = :isValid and center.isDeleted = :isDeleted "); hql.append(" and center.organizeCode = :organizeCode and center.isValid = :isValid and center.isDeleted = :isDeleted ");
hql.append(" and center.centerType = :centerType and record.reportStatus in (:reportStatus) and record.reportType != :reportType "); hql.append(" and center.centerType = :centerType and record.reportStatus in (:reportStatus) and record.reportType != :reportType ");
if (!CollectionUtils.isEmpty(workCenterList)) {
hql.append(" and record.workCenterCode not in (:workCenterList)");
}
hql.append(" order by record.reportStatus asc,record.createDatetime asc "); hql.append(" order by record.reportStatus asc,record.createDatetime asc ");
Query hqlQuery = entityManager.createQuery(hql.toString(), MesProductionRecord.class); Query hqlQuery = entityManager.createQuery(hql.toString(), MesProductionRecord.class);
hqlQuery.setParameter("organizeCode", organizeCode); hqlQuery.setParameter("organizeCode", organizeCode);
@ -45,6 +49,9 @@ public class MesProductionRecordImpl implements IMesProductionRecordDao {
hqlQuery.setParameter("centerType", workOrderType); hqlQuery.setParameter("centerType", workOrderType);
hqlQuery.setParameter("reportType", MesExtEnumUtil.MES_REPORT_TYPE.NO_REPORT.getValue()); hqlQuery.setParameter("reportType", MesExtEnumUtil.MES_REPORT_TYPE.NO_REPORT.getValue());
hqlQuery.setParameter("reportStatus", Stream.of(MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_10.getValue(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue()).collect(Collectors.toList())); hqlQuery.setParameter("reportStatus", Stream.of(MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_10.getValue(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue()).collect(Collectors.toList()));
if (!CollectionUtils.isEmpty(workCenterList)) {
hqlQuery.setParameter("workCenterList",workCenterList);
}
hqlQuery.setFirstResult(MesPcnExtConstWords.ZERO).setMaxResults(Objects.isNull(pageSize) ? MesPcnExtConstWords.ONE_HUNDRED : pageSize); hqlQuery.setFirstResult(MesPcnExtConstWords.ZERO).setMaxResults(Objects.isNull(pageSize) ? MesPcnExtConstWords.ONE_HUNDRED : pageSize);
return hqlQuery.getResultList(); return hqlQuery.getResultList();
} }

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.schedulejob; package cn.estsh.i3plus.ext.mes.pcn.apiservice.schedulejob;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesWorkOrderService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesWorkOrderService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.platform.common.tool.JsonUtilTool; import cn.estsh.i3plus.platform.common.tool.JsonUtilTool;
import cn.estsh.i3plus.pojo.model.wms.WmsJobParamModel; import cn.estsh.i3plus.pojo.model.wms.WmsJobParamModel;
import cn.estsh.impp.framework.boot.init.ApplicationProperties; import cn.estsh.impp.framework.boot.init.ApplicationProperties;
@ -24,14 +25,14 @@ import java.util.List;
@Slf4j @Slf4j
@DisallowConcurrentExecution @DisallowConcurrentExecution
@Component @Component
@ApiOperation("排序报工job") @ApiOperation("MES汇报报工job")
public class MesReportSortJob extends BaseMesScheduleJob { public class MesProductReportJob extends BaseMesScheduleJob {
@Autowired @Autowired
private IMesWorkOrderService workOrderService; private IMesWorkOrderService workOrderService;
public MesReportSortJob() { public MesProductReportJob() {
super(MesReportSortJob.class, "排序报工job"); super(MesProductReportJob.class, "MES汇报报工job");
} }
@Override @Override
@ -39,14 +40,24 @@ public class MesReportSortJob extends BaseMesScheduleJob {
List<WmsJobParamModel> wmsJobParamModelList = JsonUtilTool.toList(this.getJobParam(), WmsJobParamModel.class); List<WmsJobParamModel> wmsJobParamModelList = JsonUtilTool.toList(this.getJobParam(), WmsJobParamModel.class);
if (!CollectionUtils.isEmpty(wmsJobParamModelList)) { if (!CollectionUtils.isEmpty(wmsJobParamModelList)) {
for (WmsJobParamModel wmsJobParamModel : wmsJobParamModelList) { for (WmsJobParamModel wmsJobParamModel : wmsJobParamModelList) {
//排序汇报
try { try {
long startTime = System.currentTimeMillis(); long startTime = System.currentTimeMillis();
workOrderService.doMesWorkOrderSortReport(wmsJobParamModel.getOrganizeCode(), wmsJobParamModel.getPageSize(), "job"); workOrderService.doMesWorkOrderSortReport(wmsJobParamModel.getOrganizeCode(), wmsJobParamModel.getPageSize(), MesPcnExtConstWords.JOB);
long endTime = System.currentTimeMillis(); long endTime = System.currentTimeMillis();
log.info("工厂{}排序报工job --- END --- 耗时: {} ms", wmsJobParamModel.getOrganizeCode(), endTime - startTime); log.info("工厂{}排序报工job --- END --- 耗时: {} ms", wmsJobParamModel.getOrganizeCode(), endTime - startTime);
} catch (Exception e) { } catch (Exception e) {
log.info("工厂{}排序报工job 执行失败{}", wmsJobParamModel.getOrganizeCode(), e); log.info("工厂{}排序报工job 执行失败{}", wmsJobParamModel.getOrganizeCode(), e);
} }
//非排序汇报
try {
long startTime = System.currentTimeMillis();
workOrderService.doMesWorkOrderNoSortReport(wmsJobParamModel.getOrganizeCode(), wmsJobParamModel.getPageSize(), MesPcnExtConstWords.JOB);
long endTime = System.currentTimeMillis();
log.info("工厂{}非排序报工JOB --- END --- 耗时: {} ms", wmsJobParamModel.getOrganizeCode(), endTime - startTime);
} catch (Exception e) {
log.info("工厂{}非排序报工JOB 执行失败{}", wmsJobParamModel.getOrganizeCode(), e);
}
} }
}else{ }else{
log.info("排序报工job 参数不能为空"); log.info("排序报工job 参数不能为空");

@ -266,8 +266,7 @@ public class MesBoxingErrorProofingService implements IMesBoxingErrorProofingSer
} }
private List<MesPackingDefineDetails> getMesPackingDefineDetails(String organizeCode, String packCode) { private List<MesPackingDefineDetails> getMesPackingDefineDetails(String organizeCode, String packCode) {
DdlPackBean ddlPackBean; DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getStringEqualPack(packCode, "packCode", ddlPackBean); DdlPreparedPack.getStringEqualPack(packCode, "packCode", ddlPackBean);
List<MesPackingDefineDetails> defineDetails = mesPackingDefineDetailsRDao.findByHqlWhere(ddlPackBean); List<MesPackingDefineDetails> defineDetails = mesPackingDefineDetailsRDao.findByHqlWhere(ddlPackBean);
if (CollectionUtils.isEmpty(defineDetails)) { if (CollectionUtils.isEmpty(defineDetails)) {

@ -206,7 +206,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
//查询发运单信息 发运跳过 //查询发运单信息 发运跳过
DdlPackBean orderManagementPackBean = DdlPackBean.getDdlPackBean(shippingOrderManagement.getOrganizeCode()); DdlPackBean orderManagementPackBean = DdlPackBean.getDdlPackBean(shippingOrderManagement.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(shippingOrderManagement.getShippingCode(), "shippingCode", orderManagementPackBean); DdlPreparedPack.getStringEqualPack(shippingOrderManagement.getShippingCode(), "shippingCode", orderManagementPackBean);
DdlPreparedPack.getNumberSmallerPack(MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPED.getValue(), "status", orderManagementPackBean); // DdlPreparedPack.getNumberSmallerPack(MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPED.getValue(), "status", orderManagementPackBean);
MesShippingOrderManagement orderManagement = shippingOrderManagementRepository.getByProperty(orderManagementPackBean); MesShippingOrderManagement orderManagement = shippingOrderManagementRepository.getByProperty(orderManagementPackBean);
if (StringUtils.isEmpty(orderManagement)) { if (StringUtils.isEmpty(orderManagement)) {
throw new ImppBusiException(String.format("【%s】此发运单不存在请检查数据", shippingOrderManagement.getShippingCode())); throw new ImppBusiException(String.format("【%s】此发运单不存在请检查数据", shippingOrderManagement.getShippingCode()));
@ -247,15 +247,17 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
} }
DdlPreparedPack.getStringEqualPack(orderManagement.getShippingGroupCode(), "shippingGroupCode", orderManagementPackBean); DdlPreparedPack.getStringEqualPack(orderManagement.getShippingGroupCode(), "shippingGroupCode", orderManagementPackBean);
DdlPreparedPack.getInPackList(Stream.of(MesExtEnumUtil.SHIPPING_ORDER_STATUS.CREATE.getValue(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.PUBLISHED.getValue(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPING.getValue(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.PRINTED.getValue()).collect(Collectors.toList()), "status", orderManagementPackBean); DdlPreparedPack.getInPackList(Stream.of(MesExtEnumUtil.SHIPPING_ORDER_STATUS.CREATE.getValue(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.PUBLISHED.getValue(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPING.getValue(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.PRINTED.getValue()).collect(Collectors.toList()), "status", orderManagementPackBean);
if (shippingOrderManagementRepository.isExitByHql(orderManagementPackBean)) { DdlPreparedPack.getOrderBy("seq", CommonEnumUtil.ASC_OR_DESC.ASC.getValue(), orderManagementPackBean);
MesShippingOrderManagement shippingOrder = shippingOrderManagementRepository.getByProperty(orderManagementPackBean);
if (!Objects.isNull(shippingOrder)) {
//1强过 //1强过
if ((!Objects.isNull(shippingOrderManagement.getIsPass()) && Objects.equals(MesPcnExtConstWords.ONE, shippingOrderManagement.getIsPass()))) { if ((!Objects.isNull(shippingOrderManagement.getIsPass()) && Objects.equals(MesPcnExtConstWords.ONE, shippingOrderManagement.getIsPass()))) {
orderManagement.setRemark(MesPcnExtConstWords.STRONGER_PASS); orderManagement.setRemark(MesPcnExtConstWords.STRONGER_PASS);
ConvertBean.serviceModelUpdate(orderManagement, shippingOrderManagement.getModifyUser()); ConvertBean.serviceModelUpdate(orderManagement, shippingOrderManagement.getModifyUser());
vehiclesOrderRepository.update(orderManagement); vehiclesOrderRepository.update(orderManagement);
} else { } else {
throw new ImppBusiException(String.format("【%s】发运单对应排序【%s】前存在未扫描发运的发运单,请检查数据!", throw new ImppBusiException(String.format("【%s】发运单对应排序【%s】前存在未扫描发运的发运单【%s】序号【%s】,请检查数据!",
orderManagement.getShippingCode(), orderManagement.getSeq())); orderManagement.getShippingCode(), orderManagement.getSeq(),shippingOrder.getShippingCode(),shippingOrder.getSeq()));
} }
} }
} }

@ -1080,6 +1080,38 @@ public class MesWorkOrderService implements IMesWorkOrderService {
} }
} }
@Override
public void doMesWorkOrderNoSortReport(String organizeCode, Integer pageSize, String userName) {
String workCenterCodes = configService.getCfgValue(organizeCode, "MES_PCN_REPORT_CENTER");
//查询所有非排序工单
List<MesProductionRecord> recordNoReportList = mesProductionRecordDao.findMesProductionRecordNoReport(organizeCode, MesExtEnumUtil.WORK_CENTER_TYPE.NOSORT.getValue(), pageSize, !StringUtils.isEmpty(workCenterCodes) ? Arrays.asList(workCenterCodes.split(",")) : null);
if (CollectionUtils.isEmpty(recordNoReportList)) {
LOGGER.error("非排序加工单加工记录中没有数据,无需处理");
return;
}
List<MesProductionRecord> recordNoReportNotHasOrderNoList = recordNoReportList.stream().filter(item -> StringUtils.isEmpty(item.getWorkOrderNo())).collect(Collectors.toList());
List<MesProductionRecord> recordNoReportHasOrderNoList = recordNoReportList.stream().filter(item -> !StringUtils.isEmpty(item.getWorkOrderNo())).collect(Collectors.toList());
//处理无工单加工记录
if(!CollectionUtils.isEmpty(recordNoReportNotHasOrderNoList)){
for (MesProductionRecord mesProductionRecord : recordNoReportNotHasOrderNoList) {
LOGGER.info("----------处理无工单加工记录报工开始-------{}", mesProductionRecord.getProductSn());
doProductReportByRecord(mesProductionRecord, organizeCode, userName);
LOGGER.info("----------处理无工单加工记录报工结束-------{}", mesProductionRecord.getProductSn());
}
}
//处理有工单加工记录
if(!CollectionUtils.isEmpty(recordNoReportHasOrderNoList)){
try {
for (MesProductionRecord mesProductionRecord : recordNoReportHasOrderNoList) {
LOGGER.info("----------处理有工单加工记录报工开始-------{}", mesProductionRecord.getProductSn());
doProductHasOrderReportByRecord(mesProductionRecord, organizeCode, userName);
LOGGER.info("----------处理有工单加工记录报工结束-------{}", mesProductionRecord.getProductSn());
}
} catch (ImppBusiException e) {
}
}
}
private MesProductVersion getProductVersion(String organizeCode,String partNo,String productVersion) { private MesProductVersion getProductVersion(String organizeCode,String partNo,String productVersion) {
MesProductVersion mesProductVersion = mesProductVersionService.getMesProductVersion(organizeCode,partNo,productVersion); MesProductVersion mesProductVersion = mesProductVersionService.getMesProductVersion(organizeCode,partNo,productVersion);
if (null == mesProductVersion) { if (null == mesProductVersion) {
@ -1317,7 +1349,7 @@ public class MesWorkOrderService implements IMesWorkOrderService {
} }
public MesWorkOrderSortReportModel initMesWorkOrderSortReportModel(String organizeCode, Integer pageSize, String userName) { public MesWorkOrderSortReportModel initMesWorkOrderSortReportModel(String organizeCode, Integer pageSize, String userName) {
MesWorkOrderSortReportModel model = new MesWorkOrderSortReportModel(organizeCode, userName, mesProductionRecordDao.findMesProductionRecordNoReport(organizeCode, MesExtEnumUtil.WORK_CENTER_TYPE.SORT.getValue(), pageSize)); MesWorkOrderSortReportModel model = new MesWorkOrderSortReportModel(organizeCode, userName, mesProductionRecordDao.findMesProductionRecordNoReport(organizeCode, MesExtEnumUtil.WORK_CENTER_TYPE.SORT.getValue(), pageSize,null));
model.setMesWorkOrderList(workOrderExtService.getWorkOrderList(organizeCode, model.getWorkOrderList())); model.setMesWorkOrderList(workOrderExtService.getWorkOrderList(organizeCode, model.getWorkOrderList()));
model.setMesMoveRuleList(mesMoveRuleService.findMesMoveRuleByPartProdGroupCode(model.getPartProdGroupCodeList(), organizeCode)); model.setMesMoveRuleList(mesMoveRuleService.findMesMoveRuleByPartProdGroupCode(model.getPartProdGroupCodeList(), organizeCode));
model.setMesWorkOrderPartList(findMesWorkOrderPartByOrderNo(organizeCode, model.getWorkOrderList())); model.setMesWorkOrderPartList(findMesWorkOrderPartByOrderNo(organizeCode, model.getWorkOrderList()));

@ -65,7 +65,7 @@ public class AssemblyVisualListPrintStrategy implements IPrintTemplateStrategySe
// vinCode // vinCode
resultMap.put(MesPcnExtConstWords.VIN_CODE, workOrder.getVinCode()); resultMap.put(MesPcnExtConstWords.VIN_CODE, workOrder.getVinCode());
// vinCode 后四位 // vinCode 后四位
resultMap.put(MesPcnExtConstWords.VIN_CODE_AFTER_FOUR, workOrder.getVinCode()); resultMap.put(MesPcnExtConstWords.VIN_CODE_AFTER_FOUR, !StringUtils.isEmpty(workOrder.getVinCode()) && workOrder.getVinCode().length() > MesPcnExtConstWords.FOUR ? workOrder.getVinCode().substring(workOrder.getVinCode().length() - MesPcnExtConstWords.FOUR) : workOrder.getVinCode());
// 总成零件号 // 总成零件号
resultMap.put(MesPcnExtConstWords.PART_NO, workOrder.getPartNo()); resultMap.put(MesPcnExtConstWords.PART_NO, workOrder.getPartNo());
// 工单标识 // 工单标识

Loading…
Cancel
Save