diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesLoadingListService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesLoadingListService.java index ca0f962..3cfa3b4 100644 --- a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesLoadingListService.java +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesLoadingListService.java @@ -16,5 +16,5 @@ public interface IMesLoadingListService extends IBaseMesService @ApiOperation("根据发运单号查询装车单信息") MesLoadingList getMesLoadingListByShippingCode(String organizeCode, String shippingCode); - ResultBean doMesMesLoadingListPrint(List ids); + ResultBean doMesMesLoadingListPrint(List ids, boolean reprint); } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesLoadingListController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesLoadingListController.java index 00997b7..c647395 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesLoadingListController.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesLoadingListController.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.ext.mes.apiservice.controller.base; import cn.estsh.i3plus.ext.mes.api.base.IMesLoadingListService; import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant; +import cn.estsh.i3plus.ext.mes.pojo.model.PrintDataRequest; import cn.estsh.i3plus.pojo.mes.bean.shipping.MesLoadingList; import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement; import cn.estsh.impp.framework.boot.exception.ImppBusiException; @@ -27,10 +28,11 @@ public class MesLoadingListController extends BaseMesController @PostMapping(value = "/doPrint") @ApiOperation(value = "打印未打印发运单后修改状态") - public ResultBean doMesMesLoadingListPrint(@RequestBody List ids) { + public ResultBean doMesMesLoadingListPrint(@RequestBody PrintDataRequest request) { try { + boolean reprint = request.getIsReprint() != null ? request.getIsReprint() : false; // 数据校验 - return loadingListService.doMesMesLoadingListPrint(ids); + return loadingListService.doMesMesLoadingListPrint(request.getIds(), reprint); } catch (ImppBusiException e) { return ResultBean.fail(e).build(); } catch (Exception e) { diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesLoadingListService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesLoadingListService.java index 8516898..600e62d 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesLoadingListService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesLoadingListService.java @@ -267,7 +267,7 @@ public class MesLoadingListService extends BaseMesService implem } @Override - public ResultBean doMesMesLoadingListPrint(List ids) { + public ResultBean doMesMesLoadingListPrint(List ids, boolean reprint) { String organizeCode = AuthUtilExt.getOrganizeCode(); MesConfig config = configService.getConfigByCfgCode(MesExtConstWords.LOADING_LIST_PRINT_TEMPLATE, organizeCode); if (null == config || StringUtils.isEmpty(config.getCfgValue())) { @@ -288,7 +288,7 @@ public class MesLoadingListService extends BaseMesService implem organizeCode, loadingLists.size(), JSONObject.toJSONString(loadingLists), Thread.currentThread().getName()); IPrintTemplateStrategyService printStrategyService = (IPrintTemplateStrategyService) SpringContextsUtil.getBean(labelTemplate.getMethodCode()); - ResultBean resultBean = printStrategyService.execute(loadingLists); + ResultBean resultBean = printStrategyService.execute(loadingLists, reprint); log.info("工厂{}排序发运打印 --- 封装打印数据完成 --- {}", organizeCode, Thread.currentThread().getName()); diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/IPrintTemplateStrategyService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/IPrintTemplateStrategyService.java index d5f355e..6fdbe27 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/IPrintTemplateStrategyService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/IPrintTemplateStrategyService.java @@ -29,7 +29,7 @@ public interface IPrintTemplateStrategyService { MesProduceSnPrintModel execute(GenSerialNoModel model, MesProduceSnPrintModel mesProduceSnPrintModel, MesNumberRule numberRule); @ApiOperation(value = "装车单") - default ResultBean execute(List loadingLists) { + default ResultBean execute(List loadingLists, boolean reprint) { return null; } } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/loadingList/ChengDuLoadingListPrintStrategy.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/loadingList/ChengDuLoadingListPrintStrategy.java index 27f69c1..720134a 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/loadingList/ChengDuLoadingListPrintStrategy.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/print/loadingList/ChengDuLoadingListPrintStrategy.java @@ -6,6 +6,7 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.ext.mes.pojo.model.ChengDuLoadingListDetailPrintModel; import cn.estsh.i3plus.ext.mes.pojo.model.ChengDuLoadingListPrintModel; import cn.estsh.i3plus.ext.mes.pojo.model.MesProduceSnPrintModel; +import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; @@ -63,10 +64,10 @@ public class ChengDuLoadingListPrintStrategy implements IPrintTemplateStrategySe } @Override - public ResultBean execute(List loadingLists) { + public ResultBean execute(List loadingLists, boolean reprint) { List modelList = new ArrayList<>(); for (MesLoadingList loadingList : loadingLists) { - ChengDuLoadingListPrintModel model = getPrintData(loadingList); + ChengDuLoadingListPrintModel model = getPrintData(loadingList, reprint); if (model != null) { modelList.add(model); } @@ -74,7 +75,7 @@ public class ChengDuLoadingListPrintStrategy implements IPrintTemplateStrategySe return ResultBean.success("装车单打印成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(modelList); } - private ChengDuLoadingListPrintModel getPrintData(MesLoadingList loadingList) { + private ChengDuLoadingListPrintModel getPrintData(MesLoadingList loadingList, boolean reprint) { final String organizeCode = AuthUtilExt.getOrganizeCode(); final String userName = AuthUtilExt.getUserName(); @@ -155,6 +156,12 @@ public class ChengDuLoadingListPrintStrategy implements IPrintTemplateStrategySe loadingList.setLastPrintUser(userName); ConvertBean.serviceModelUpdate(loadingList, userName); loadingListRDao.update(loadingList); + + if (reprint) { + model.setRePrintDatetime(TimeTool.getNowTime(MesExtConstWords.DATETIME_FORMAT_SINGLE_SLASH)); + model.setRePrintUser(userName); + model.setIsRePrint("重打印"); + } return model; } } diff --git a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/model/ChengDuLoadingListPrintModel.java b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/model/ChengDuLoadingListPrintModel.java index 40c664f..a607253 100644 --- a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/model/ChengDuLoadingListPrintModel.java +++ b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/model/ChengDuLoadingListPrintModel.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.ext.mes.pojo.model; +import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -17,6 +18,15 @@ import java.util.List; @ApiModel("成都装车单打印") public class ChengDuLoadingListPrintModel { + @ApiModelProperty("是否重打印") + private String isRePrint = MesExtConstWords.EMPTY; + + @ApiModelProperty("重打印操作人") + private String rePrintUser = MesExtConstWords.EMPTY; + + @ApiModelProperty("重打印时间") + private String rePrintDatetime = MesExtConstWords.EMPTY; + @ApiModelProperty("车牌号") private String truckNo; diff --git a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/model/PrintDataRequest.java b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/model/PrintDataRequest.java new file mode 100644 index 0000000..b275e1b --- /dev/null +++ b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/model/PrintDataRequest.java @@ -0,0 +1,22 @@ +package cn.estsh.i3plus.ext.mes.pojo.model; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Description : 打印前端请求参数 + * @Reference : + * @Author : jason.niu + * @CreateDate 2025/3/15 15:48 + * @Modify: + **/ +@Data +public class PrintDataRequest { + @ApiModelProperty("是否为补打印") + private Boolean isReprint; + + @ApiModelProperty("打印对象ID") + private List ids; +} diff --git a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java index 956c13b..ebf0a5c 100644 --- a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java +++ b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java @@ -320,6 +320,8 @@ public class MesExtConstWords { //时间类型 public static final String DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss"; //时间类型 + public static final String DATETIME_FORMAT_SINGLE_SLASH = "yyyy/MM/dd HH:mm:ss"; + //时间类型 public static final String DATETIME_TRUNCATE_MINUTE_FORMAT = "yyyy-MM-dd HH"; //时间类型 public static final String TIME_TRUNCATE_SECOND_FORMAT = "HH:mm";