客户条码补打

tags/yfai-pcn-ext-v2.3
jun 7 months ago
parent 2ab2ecdb80
commit 31de710227

@ -0,0 +1,21 @@
package cn.estsh.i3plus.ext.mes.pcn.api.busi;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
import cn.estsh.i3plus.pojo.mes.bean.MesPrintedSnLog;
import io.swagger.annotations.ApiOperation;
/**
* @Description :
* @Reference :
* @Author : junsheng.li
* @CreateDate 2024/10/16 13:10
* @Modify:
**/
public interface IMesPrintedSnLogService {
@ApiOperation(value = "条码打印记录表")
MesPrintedSnLog getMesPrintedSnLog(String userName, String organizeCode, MesProduceSnPrintDataModel printDataModel);
@ApiOperation(value = "写入条码打印记录表")
void insertMesPrintedSnLog(MesPrintedSnLog mesPrintedSnLog,String userName);
}

@ -18,10 +18,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.Objects;
@ -71,7 +68,7 @@ public class MesProduceSnPrintController {
}
}
@GetMapping("/mes-produce-sn/find")
@PostMapping("/mes-produce-sn/find")
@ApiOperation(value = "查询信息")
public ResultBean findMesProduceSn(MesProduceSnPrintModel mesProduceSnPrintModel) {
try {
@ -85,7 +82,7 @@ public class MesProduceSnPrintController {
}
}
@GetMapping("/do-print")
@PostMapping("/do-print")
@ApiOperation(value = "打印")
public ResultBean doPrint(MesProduceSnPrintModel mesProduceSnPrintModel) {
try {

@ -0,0 +1,49 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.mes.bean.MesPrintedSnLog;
import cn.estsh.i3plus.pojo.mes.repository.IMesPrintedSnLogRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @Description :
* @Reference :
* @Author : junsheng.li
* @CreateDate 2024/10/16 13:11
* @Modify:
**/
@Slf4j
@Service
public class MesPrintedSnLogServiceImpl implements IMesPrintedSnLogService {
@Autowired
private IMesPrintedSnLogRepository mesPrintedSnLogRepository;
@Override
public MesPrintedSnLog getMesPrintedSnLog(String userName, String organizeCode, MesProduceSnPrintDataModel printDataModel) {
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel, snLog);
snLog.setOrganizeCode(organizeCode);
snLog.setPrintData(JSONObject.toJSONString(printDataModel));
snLog.setPrintType(MesExtEnumUtil.PRINT_LOG_TYPE.PRINT_LOG_TYPE_10.getValue());
ConvertBean.serviceModelInitialize(snLog, userName);
return snLog;
}
@Override
public void insertMesPrintedSnLog(MesPrintedSnLog mesPrintedSnLog, String userName) {
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(mesPrintedSnLog, snLog, MesPcnExtConstWords.BASE_BEAN_FIELDS);
snLog.setPrintType(MesExtEnumUtil.PRINT_LOG_TYPE.PRINT_LOG_TYPE_20.getValue());
ConvertBean.serviceModelInitialize(snLog, userName);
mesPrintedSnLogRepository.insert(snLog);
}
}

@ -2,6 +2,7 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesTemplateService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProduceSnPrintService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesWorkOrderCutService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi.printqueue.IPrintQueueStrategyService;
@ -12,7 +13,6 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesWorkOrderCutPrintModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.mes.pcn.api.iservice.base.IConfigService;
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService;
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
@ -119,6 +119,9 @@ public class MesProduceSnPrintService implements IMesProduceSnPrintService {
@Autowired
private IMesPrintedSnLogRepository printedSnLogRepository;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
// 仅查询
public static final Integer CUT_QUERY_MODE_BY_QUERY = 1;
// 打印
@ -147,7 +150,7 @@ public class MesProduceSnPrintService implements IMesProduceSnPrintService {
@Override
public MesProduceSn findMesProduceSn(MesProduceSnPrintModel mesProduceSnPrintModel) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesProduceSnPrintModel.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(mesProduceSnPrintModel.getProductSn(), "productSn", ddlPackBean);
ddlPackBean.setWhereAppend(ddlPackBean.getWhereAppend() + " and (model.productSn = '"+mesProduceSnPrintModel.getProductSn()+"' or model.custSn = '"+mesProduceSnPrintModel.getProductSn()+"')");
MesProduceSn mesProduceSn = mesProduceSnRDao.getByProperty(ddlPackBean);
if (Objects.isNull(mesProduceSn)) {
MesPcnException.throwMesBusiException("条码【%s】信息不存在", mesProduceSnPrintModel.getProductSn());
@ -230,6 +233,8 @@ public class MesProduceSnPrintService implements IMesProduceSnPrintService {
BeanUtil.copyProperties(mesPrintedSnLog, model);
model.setPrintDate(TimeTool.getNowTime(true));
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(model);
//记录打印日志
mesPrintedSnLogService.insertMesPrintedSnLog(mesPrintedSnLog, model.getUserName());
}
//获取打印模板信息
mesProduceSnPrintModel.setMesLabelTemplate(mesTemplateService.getMesLabelTemplate(mesProduceSnPrintModel.getPrintTemplate(),organizeCode));

@ -223,7 +223,7 @@ public class MesPullingOrderInfoService implements IMesPullingOrderInfoService {
}
//查询拉动单主表是JIS拉动且拉动状态为10
String append = packBean.getWhereAppend() +
" AND EXISTS (select 1 from MesPullingOrderInfo po where po.pullingOrderNo = model.pullingOrderNo" +
" AND EXISTS (select 1 from MesPullingOrderInfo po where po.organizeCode = '"+ bean.getOrganizeCode() +"' and po.pullingOrderNo = model.pullingOrderNo" +
" and po.pullOrderType=20 and po.workCenterCode ='" + bean.getWorkCenterCode() + "' ";
packBean.setWhereAppend(append + " )");
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue(), CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"status", "pullingOrderNo"}, packBean);
@ -308,7 +308,9 @@ public class MesPullingOrderInfoService implements IMesPullingOrderInfoService {
// DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(mesPullingOrderPartInfo.getOrganizeCode());
// DdlPreparedPack.getStringEqualPack(mesPullingOrderPartInfo.getPullingOrderNo(), "pullingOrderNo", partPackBean);
// DdlPreparedPack.getStringEqualPack(mesPullingOrderPartInfo.getPartNo(), "partNo", partPackBean);
MesPullingOrderPartInfo partInfo = mesPullingOrderPartInfoRepository.getById(mesPullingOrderPartInfo.getId());
DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(mesPullingOrderPartInfo.getOrganizeCode());
DdlPreparedPack.getNumEqualPack(mesPullingOrderPartInfo.getId(),"id",partPackBean);
MesPullingOrderPartInfo partInfo = mesPullingOrderPartInfoRepository.getByProperty(partPackBean);
if (!StringUtil.isEmpty(partInfo)) {
//修改为已送料
partInfo.setStatus(MesExtEnumUtil.PULL_ORDER_PART_STATUS.SENTED.getValue());

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.StringUtilExt;
@ -62,6 +63,9 @@ public class AionPrintStrategy implements IPrintTemplateStrategyService {
@Autowired
private MesNumberRuleRepository numberRuleRepository;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule , StepResult stepResult, StationRequestBean reqBean, Boolean isStep) {
@ -87,11 +91,7 @@ public class AionPrintStrategy implements IPrintTemplateStrategyService {
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else {
numberRule = getNumberRule(organizeCode, mesPart);
@ -100,11 +100,7 @@ public class AionPrintStrategy implements IPrintTemplateStrategyService {
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, numberRule, custPartNo, organizeName);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;
}

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.StringUtilExt;
@ -62,6 +63,9 @@ public class GqaaPrintStrategy implements IPrintTemplateStrategyService {
@Autowired
private MesNumberRuleRepository numberRuleRepository;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) {
// 获取工厂名称
@ -85,11 +89,7 @@ public class GqaaPrintStrategy implements IPrintTemplateStrategyService {
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else {
numberRule = getNumberRule(organizeCode, mesPart);
@ -98,11 +98,7 @@ public class GqaaPrintStrategy implements IPrintTemplateStrategyService {
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, numberRule, mesCustomerPart.getCustPartNo(), organizeName);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;
}

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.StringUtilExt;
@ -59,8 +60,13 @@ public class GqxnyPrintStrategy implements IPrintTemplateStrategyService {
@Autowired
private MesCustomerPartRepository mesCustomerPartRDao;
@Autowired
private MesNumberRuleRepository numberRuleRepository;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule,StepResult stepResult, StationRequestBean reqBean,Boolean isStep) {
//获取客户零件号
@ -115,11 +121,7 @@ public class GqxnyPrintStrategy implements IPrintTemplateStrategyService {
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel, snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else {
numberRule = getNumberRule(organizeCode, mesPart);
@ -129,11 +131,7 @@ public class GqxnyPrintStrategy implements IPrintTemplateStrategyService {
printDataModel.setSupplierCode(configService.getMesConfigByCfgCodeKeyOrg(MesPcnExtConstWords.SUPPLIER_CODE, MesExtEnumUtil.MES_PRINT_TEMPLATE.GQXNY.getValue(), organizeCode).getCfgValue());
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;
}

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel;
@ -10,12 +11,14 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker;
import cn.estsh.i3plus.pojo.mes.bean.*;
import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart;
import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule;
import cn.estsh.i3plus.pojo.mes.bean.MesPart;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel;
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
import cn.estsh.i3plus.pojo.mes.model.StepResult;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.hutool.core.bean.BeanUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@ -43,6 +46,9 @@ public class MesCommonPrintStrategy implements IPrintTemplateStrategyService {
@Autowired
private IMesPartService mesPartService;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) {
String organizeCode = mesProduceSnPrintModel.getOrganizeCode();
@ -62,11 +68,7 @@ public class MesCommonPrintStrategy implements IPrintTemplateStrategyService {
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel, snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel));
}
}else{
MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0);
@ -74,11 +76,7 @@ public class MesCommonPrintStrategy implements IPrintTemplateStrategyService {
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel));
}
return mesProduceSnPrintModel;
}

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel;
@ -10,12 +11,14 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker;
import cn.estsh.i3plus.pojo.mes.bean.*;
import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart;
import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule;
import cn.estsh.i3plus.pojo.mes.bean.MesPart;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel;
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
import cn.estsh.i3plus.pojo.mes.model.StepResult;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.hutool.core.bean.BeanUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@ -44,6 +47,9 @@ public class MesDPBarcodeWhPrintStrategy implements IPrintTemplateStrategyServic
@Autowired
private IMesPartService mesPartService;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) {
String organizeCode = mesProduceSnPrintModel.getOrganizeCode();
@ -63,11 +69,7 @@ public class MesDPBarcodeWhPrintStrategy implements IPrintTemplateStrategyServic
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel, snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else{
MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0);
@ -75,11 +77,7 @@ public class MesDPBarcodeWhPrintStrategy implements IPrintTemplateStrategyServic
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;
}

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel;
@ -55,6 +56,9 @@ public class NoSortBarCodeGzStrategy implements IPrintTemplateStrategyService {
@Autowired
private MesNumberRuleRepository mesNumberRuleRDao;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule,StepResult stepResult, StationRequestBean reqBean,Boolean isStep) {
// noSortBarCodeGz
@ -84,11 +88,7 @@ public class NoSortBarCodeGzStrategy implements IPrintTemplateStrategyService {
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else {
//获取条码规则,根据条码规则中的序列号长度截取序列号
@ -105,11 +105,7 @@ public class NoSortBarCodeGzStrategy implements IPrintTemplateStrategyService {
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, serialNo, mesProduceSnPrintModel.getCustPartNo(), organizeName);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;
}

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
@ -8,7 +9,6 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.mes.pcn.api.iservice.base.IConfigService;
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService;
import cn.estsh.i3plus.mes.pcn.util.DateUtil;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
@ -23,14 +23,12 @@ import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesNumberRuleRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.hutool.core.bean.BeanUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.util.Date;
import java.util.Objects;
/**
* @Description :
@ -60,6 +58,9 @@ public class XiaoPengNewPrintStrategy implements IPrintTemplateStrategyService {
@Autowired
private MesNumberRuleRepository numberRuleRepository;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) {
Date date = new Date();
@ -94,11 +95,7 @@ public class XiaoPengNewPrintStrategy implements IPrintTemplateStrategyService {
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else {
numberRule = getNumberRule(organizeCode, mesPart);
@ -110,11 +107,7 @@ public class XiaoPengNewPrintStrategy implements IPrintTemplateStrategyService {
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, serialNo, custPartNo, organizeName);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
@ -8,7 +9,6 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.mes.pcn.api.iservice.base.IConfigService;
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService;
import cn.estsh.i3plus.mes.pcn.util.DateUtil;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
@ -23,14 +23,12 @@ import cn.estsh.i3plus.pojo.mes.repository.MesCustomerPartRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesNumberRuleRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.hutool.core.bean.BeanUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.util.Date;
import java.util.Objects;
/**
* @Description :
@ -60,6 +58,9 @@ public class XiaoPengPrintStrategy implements IPrintTemplateStrategyService {
@Autowired
private MesNumberRuleRepository numberRuleRepository;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) {
Date date = new Date();
@ -96,11 +97,7 @@ public class XiaoPengPrintStrategy implements IPrintTemplateStrategyService {
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else {
String sn = mesProduceSnPrintModel.getProductSn();
@ -111,11 +108,7 @@ public class XiaoPengPrintStrategy implements IPrintTemplateStrategyService {
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, serialNo, custPartNo, organizeName);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.strategy;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesPartService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesPrintedSnLogService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.print.IPrintTemplateStrategyService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintDataModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesProduceSnPrintModel;
@ -10,12 +11,14 @@ import cn.estsh.i3plus.mes.pcn.util.DateUtil;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker;
import cn.estsh.i3plus.pojo.mes.bean.*;
import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart;
import cn.estsh.i3plus.pojo.mes.bean.MesNumberRule;
import cn.estsh.i3plus.pojo.mes.bean.MesPart;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel;
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
import cn.estsh.i3plus.pojo.mes.model.StepResult;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.hutool.core.bean.BeanUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@ -44,6 +47,9 @@ public class wuHanLengDaoPrintStrategy implements IPrintTemplateStrategyService
@Autowired
private IMesPartService mesPartService;
@Autowired
private IMesPrintedSnLogService mesPrintedSnLogService;
@Override
public MesProduceSnPrintModel execute(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep) {
String organizeCode = mesProduceSnPrintModel.getOrganizeCode();
@ -63,11 +69,7 @@ public class wuHanLengDaoPrintStrategy implements IPrintTemplateStrategyService
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
mesProduceSnPrintModel.getMesProduceSnList().add(produceSn);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel, snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
}else{
MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0);
@ -75,11 +77,7 @@ public class wuHanLengDaoPrintStrategy implements IPrintTemplateStrategyService
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录
MesPrintedSnLog snLog = new MesPrintedSnLog();
BeanUtil.copyProperties(printDataModel,snLog);
snLog.setOrganizeCode(organizeCode);
ConvertBean.serviceModelInitialize(snLog, mesProduceSnPrintModel.getUserName());
mesProduceSnPrintModel.getMesPrintedSnLogList().add(snLog);
mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(),organizeCode,printDataModel));
}
return mesProduceSnPrintModel;
}

@ -17,6 +17,7 @@ import cn.estsh.i3plus.pojo.mes.model.StepResult;
import cn.estsh.i3plus.pojo.mes.repository.*;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.estsh.impp.framework.boot.util.SpringContextsUtil;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -97,7 +98,7 @@ public class MesProductSnPrintSortStepService extends BaseStepService {
// 获取零件信息上下文
Map<String, MesPart> partDataContext = productionDispatchContextStepService.getPartDataContext(reqBean);
List<MesWorkOrder> needModifyWorkOrderList = new ArrayList<>();
List<MesPrintedSnLog> snLogList = new ArrayList<>();
List<Map<String, Object>> resultMap = new ArrayList<>();
@ -159,8 +160,7 @@ public class MesProductSnPrintSortStepService extends BaseStepService {
// GenSerialNoModel model , MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule, StepResult stepResult, StationRequestBean reqBean, Boolean isStep
MesProduceSnPrintModel printModel = strategyService.execute(null, mesProduceSnPrintModel, numberRule, stepResult, reqBean, true);
resultMap.addAll(printModel.getPrintContextList());
needModifyWorkOrderList.add(workOrder);
snLogList.add(getMesPrintedSnLog(reqBean, workOrder, JSONObject.toJSONString(printModel.getPrintContextList().iterator().next().get(MesPcnExtConstWords.TEMPLATE_DATA))));
}
//前端接收到busiTyep是customComponent并且 dataType是file类型的消息就需要打印后续消息里的数据一个模板对应多个打印数据
@ -170,22 +170,22 @@ public class MesProductSnPrintSortStepService extends BaseStepService {
resultBean.setResultObj(resultMap);
//3. 发送数据给到前端
this.sendMessage(reqBean, resultBean);
List<MesPrintedSnLog> snLogList = new ArrayList<>();
//更新打印状态
for (MesWorkOrder workOrder : needModifyWorkOrderList) {
//保存打印条码记录
snLogRao.saveAll(snLogList);
return stepSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PROCESS.getValue()), stepResult, "打印成功!");
}
private MesPrintedSnLog getMesPrintedSnLog(StationRequestBean reqBean, MesWorkOrder workOrder,String printData) {
MesPrintedSnLog snLog = new MesPrintedSnLog();
snLog.setBarcode(workOrder.getCustSn());
snLog.setCustPartNo(workOrder.getCustPartNo());
snLog.setWorkOrderNo(workOrder.getWorkOrderNo());
snLog.setPartNo(workOrder.getPartNo());
snLog.setPartName(workOrder.getPartName());
snLog.setPrintData(printData);
ConvertBean.serviceModelInitialize(snLog, reqBean.getUserInfo());
snLog.setOrganizeCode(reqBean.getOrganizeCode());
snLogList.add(snLog);
}
//保存打印条码记录
snLogRao.saveAll(snLogList);
return stepSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PROCESS.getValue()), stepResult, "打印成功!");
return snLog;
}
private Map<String, MesWorkOrder> getMesWorkOrderMap(StationRequestBean reqBean, List<MesProductionPartContext> productionPartContextList) {

@ -54,4 +54,6 @@ public class MesProduceSnPrintDataModel {
@ApiParam("打印模板")
private String printDate;
@ApiParam("打印数据")
private String printData;
}
Loading…
Cancel
Save