diff --git a/common/src/main/java/com/foreverwin/mesnac/common/controller/PrintLogController.java b/common/src/main/java/com/foreverwin/mesnac/common/controller/PrintLogController.java index fd77817a..7f124c70 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/controller/PrintLogController.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/controller/PrintLogController.java @@ -1,5 +1,6 @@ package com.foreverwin.mesnac.common.controller; +import com.foreverwin.modular.core.exception.BusinessException; import com.foreverwin.modular.core.util.R; import com.foreverwin.modular.core.util.FrontPage; import com.foreverwin.modular.core.util.CommonMethods; @@ -15,8 +16,8 @@ import java.util.List; /** * - * @author Philip - * @since 2021-07-16 + * @author Leon.L + * @since 2021-07-21 */ @RestController @RequestMapping("/Z-PRINT-LOG") @@ -25,112 +26,44 @@ public class PrintLogController { @Autowired public PrintLogService printLogService; - /** - * 根据id查询 - * - * @param id 主键 - * @return - */ - @ResponseBody - @GetMapping("/{id:.+}") - public R getPrintLogById(@PathVariable String id) { - return R.ok( printLogService.getById(id)); - } - /** * 查询所有数据 * * @return */ @ResponseBody - @GetMapping("") - public R getPrintLogList(PrintLog printLog){ + @PostMapping("") + public R getPrintLogList(@RequestBody PrintLog printLog){ List result; - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.setEntity(printLog); - result = printLogService.list(queryWrapper); - return R.ok(result); - } + try { + String site = CommonMethods.getSite(); + printLog.setSite(site); - /** - * 分页查询数据 - * - * @param frontPage 分页信息 - * @return - */ - @ResponseBody - @GetMapping("/page") - public R page(FrontPage frontPage, PrintLog printLog){ - IPage result; - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.setEntity(printLog); - if (frontPage.getGlobalQuery() != null && !"".equals(frontPage.getGlobalQuery().trim())) { - //TODO modify global query - queryWrapper.lambda().and(wrapper -> wrapper - .like(PrintLog::getHandle, frontPage.getGlobalQuery()) - .or().like(PrintLog::getSite, frontPage.getGlobalQuery()) - .or().like(PrintLog::getCategory, frontPage.getGlobalQuery()) - .or().like(PrintLog::getPrintName, frontPage.getGlobalQuery()) - .or().like(PrintLog::getPrintTemplate, frontPage.getGlobalQuery()) - .or().like(PrintLog::getPrintParam, frontPage.getGlobalQuery()) - .or().like(PrintLog::getSfc, frontPage.getGlobalQuery()) - .or().like(PrintLog::getResrce, frontPage.getGlobalQuery()) - .or().like(PrintLog::getStepId, frontPage.getGlobalQuery()) - .or().like(PrintLog::getOperation, frontPage.getGlobalQuery()) - .or().like(PrintLog::getInventory, frontPage.getGlobalQuery()) - .or().like(PrintLog::getComments, frontPage.getGlobalQuery()) - .or().like(PrintLog::getOther1, frontPage.getGlobalQuery()) - .or().like(PrintLog::getOther2, frontPage.getGlobalQuery()) - .or().like(PrintLog::getOther3, frontPage.getGlobalQuery()) - .or().like(PrintLog::getOther4, frontPage.getGlobalQuery()) - .or().like(PrintLog::getOther5, frontPage.getGlobalQuery()) - .or().like(PrintLog::getCreateUser, frontPage.getGlobalQuery()) - .or().like(PrintLog::getModifyUser, frontPage.getGlobalQuery()) - ); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(printLog); + result = printLogService.list(queryWrapper); + } catch (Exception e) { + return R.failed(e.getMessage()); } - result = printLogService.page(frontPage.getPagePlus(), queryWrapper); - return R.ok(result); - } - - /** - * 新增 - * @param printLog 传递的实体 - * @return null 失败 实体成功 - */ - @PostMapping - public R save(@RequestBody PrintLog printLog) { - return R.ok(printLogService.save(printLog)); - } - /** - * 修改 - * @param printLog 传递的实体 - * @return null 失败 实体成功 - */ - @PutMapping - public R updateById(@RequestBody PrintLog printLog) { - return R.ok(printLogService.updateById(printLog)); + return R.ok(result); } - /** - * 根据id删除对象 - * @param id 实体ID - * @return 0 失败 1 成功 - */ @ResponseBody - @RequestMapping(method = RequestMethod.DELETE, value = "/{id:.+}") - public R removeById(@PathVariable("id") String id){ - return R.ok(printLogService.removeById(id)); - } + @PostMapping("/labelPrint") + public R labelPrint(@RequestBody List requestList) { + try { + if (requestList == null || requestList.size() <= 0) { + throw BusinessException.build("请选择至少一笔记录进行操作!"); + } - /** - * 批量删除对象 - * @param ids 实体集合ID - * @return 0 失败 1 成功 - */ - @ResponseBody - @RequestMapping(method = RequestMethod.POST, value = "/delete-batch") - public R removeByIds(List ids){ - return R.ok(printLogService.removeByIds(ids)); + String site = CommonMethods.getSite(); + String user = CommonMethods.getUser(); + printLogService.labelPrint(site, user, requestList); + } catch (Exception e) { + return R.failed(e.getMessage()); + } + + return R.ok(); } } \ No newline at end of file diff --git a/common/src/main/java/com/foreverwin/mesnac/common/model/PrintLog.java b/common/src/main/java/com/foreverwin/mesnac/common/model/PrintLog.java index 9b3c6507..d2dd6de1 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/model/PrintLog.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/model/PrintLog.java @@ -15,8 +15,8 @@ import com.baomidou.mybatisplus.annotation.IdType; * *

* - * @author Philip - * @since 2021-07-16 + * @author Leon.L + * @since 2021-07-21 */ @TableName("Z_PRINT_LOG") @@ -79,8 +79,14 @@ public class PrintLog extends Model { */ @TableField("INVENTORY") private String inventory; + @TableField("ITEM_BO") + private String itemBo; @TableField("COMMENTS") private String comments; + @TableField("IS_PRINT") + private String isPrint; + @TableField("PRINT_NUM") + private Integer printNum; @TableField("OTHER_1") private String other1; @TableField("OTHER_2") @@ -113,6 +119,12 @@ public class PrintLog extends Model { private LocalDateTime modifiedDateTime; + @TableField(value = "ITEM", exist = false) + private String item; + @TableField(value = "ITEM_DESCRIPTION", exist = false) + private String itemDescription; + + public String getHandle() { return handle; } @@ -201,6 +213,14 @@ public class PrintLog extends Model { this.inventory = inventory; } + public String getItemBo() { + return itemBo; + } + + public void setItemBo(String itemBo) { + this.itemBo = itemBo; + } + public String getComments() { return comments; } @@ -209,6 +229,22 @@ public class PrintLog extends Model { this.comments = comments; } + public String getIsPrint() { + return isPrint; + } + + public void setIsPrint(String isPrint) { + this.isPrint = isPrint; + } + + public Integer getPrintNum() { + return printNum; + } + + public void setPrintNum(Integer printNum) { + this.printNum = printNum; + } + public String getOther1() { return other1; } @@ -281,6 +317,22 @@ public class PrintLog extends Model { this.modifiedDateTime = modifiedDateTime; } + public String getItem() { + return item; + } + + public void setItem(String item) { + this.item = item; + } + + public String getItemDescription() { + return itemDescription; + } + + public void setItemDescription(String itemDescription) { + this.itemDescription = itemDescription; + } + public static final String HANDLE = "HANDLE"; public static final String SITE = "SITE"; @@ -303,8 +355,14 @@ public class PrintLog extends Model { public static final String INVENTORY = "INVENTORY"; + public static final String ITEM_BO = "ITEM_BO"; + public static final String COMMENTS = "COMMENTS"; + public static final String IS_PRINT = "IS_PRINT"; + + public static final String PRINT_NUM = "PRINT_NUM"; + public static final String OTHER_1 = "OTHER_1"; public static final String OTHER_2 = "OTHER_2"; @@ -343,7 +401,10 @@ public class PrintLog extends Model { ", stepId = " + stepId + ", operation = " + operation + ", inventory = " + inventory + + ", itemBo = " + itemBo + ", comments = " + comments + + ", isPrint = " + isPrint + + ", printNum = " + printNum + ", other1 = " + other1 + ", other2 = " + other2 + ", other3 = " + other3 + diff --git a/common/src/main/java/com/foreverwin/mesnac/common/service/PrintLogService.java b/common/src/main/java/com/foreverwin/mesnac/common/service/PrintLogService.java index 0da1865e..01c5b584 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/service/PrintLogService.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/service/PrintLogService.java @@ -3,6 +3,8 @@ package com.foreverwin.mesnac.common.service; import com.foreverwin.mesnac.common.model.PrintLog; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 服务类 @@ -19,4 +21,13 @@ public interface PrintLogService extends IService { * @param printLog */ void savePrintLog(String site, String user, PrintLog printLog); + + /** + * 标签打印 + * + * @param site + * @param user + * @param printList + */ + void labelPrint(String site, String user, List printList); } \ No newline at end of file diff --git a/common/src/main/java/com/foreverwin/mesnac/common/service/PrintService.java b/common/src/main/java/com/foreverwin/mesnac/common/service/PrintService.java deleted file mode 100644 index dbeb68cb..00000000 --- a/common/src/main/java/com/foreverwin/mesnac/common/service/PrintService.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.foreverwin.mesnac.common.service; - - -import com.foreverwin.mesnac.common.model.PrintRequest; - -/** - * @author Ervin Chen - * @date 2020/3/6 13:37 - */ -public interface PrintService { - - void print(PrintRequest printRequest); -} diff --git a/common/src/main/java/com/foreverwin/mesnac/common/service/impl/PrintLogServiceImpl.java b/common/src/main/java/com/foreverwin/mesnac/common/service/impl/PrintLogServiceImpl.java index 5d05cce4..7c35ed72 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/service/impl/PrintLogServiceImpl.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/service/impl/PrintLogServiceImpl.java @@ -1,16 +1,21 @@ package com.foreverwin.mesnac.common.service.impl; +import cn.hutool.http.HttpUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.foreverwin.mesnac.common.model.PrintLog; import com.foreverwin.mesnac.common.mapper.PrintLogMapper; import com.foreverwin.mesnac.common.service.PrintLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; +import java.util.List; /** *

@@ -24,6 +29,8 @@ import java.time.LocalDateTime; @Transactional(rollbackFor = Exception.class) public class PrintLogServiceImpl extends ServiceImpl implements PrintLogService { + @Value("${print.server}") + private String printServer; @Autowired private PrintLogMapper printLogMapper; @@ -40,4 +47,23 @@ public class PrintLogServiceImpl extends ServiceImpl i printLog.setModifiedDateTime(dateTime); this.save(printLog); } + + @Override + public void labelPrint(String site, String user, List printList) { + if (printList == null || printList.size() <= 0) { + return; + } + + + JSONArray jsonArray = new JSONArray(); + for (PrintLog printLog : printList) { + JSONObject _json = new JSONObject(); + _json.put("PRINTER", printLog.getPrintName()); + _json.put("PRINT_TEMPLATE", printLog.getPrintTemplate()); + _json.put("PRINT_PARAM", printLog.getPrintParam()); + jsonArray.add(_json); + } + + HttpUtil.post(printServer, jsonArray.toJSONString(), 30000); + } } \ No newline at end of file diff --git a/common/src/main/java/com/foreverwin/mesnac/common/service/impl/PrintServiceImpl.java b/common/src/main/java/com/foreverwin/mesnac/common/service/impl/PrintServiceImpl.java deleted file mode 100644 index 67cc7383..00000000 --- a/common/src/main/java/com/foreverwin/mesnac/common/service/impl/PrintServiceImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.foreverwin.mesnac.common.service.impl; - - -import com.foreverwin.mesnac.common.model.PrintRequest; -import com.foreverwin.mesnac.common.service.PrintService; -import com.foreverwin.mesnac.common.util.HttpUtils; -import com.foreverwin.mesnac.meapi.util.StringUtils; -import com.foreverwin.modular.core.exception.BusinessException; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; - - -/** - * @author Ervin Chen - * @date 2020/3/6 13:38 - */ -@Service -public class PrintServiceImpl implements PrintService { - - @Value("${print.server}") - private String printServer; - - @Override - public void print(PrintRequest printRequest) { - String printer = printRequest.getPrinter(); - String printTemplate = printRequest.getTemplate(); - - if (StringUtils.isBlank(printer)) { - throw BusinessException.build("打印机未维护"); - } - if (StringUtils.isBlank(printTemplate)) { - throw BusinessException.build("打印模板未维护"); - } - - //发送打印请求 - ResponseEntity responseEntity = HttpUtils.callPost(printServer, "REQUEST_DATA=" + printRequest.toString()); - } -} diff --git a/common/src/main/resources/mapper/PrintLogMapper.xml b/common/src/main/resources/mapper/PrintLogMapper.xml index 16ea32f5..cd250134 100644 --- a/common/src/main/resources/mapper/PrintLogMapper.xml +++ b/common/src/main/resources/mapper/PrintLogMapper.xml @@ -15,7 +15,12 @@ + + + + + @@ -29,7 +34,7 @@ - HANDLE, SITE, CATEGORY, PRINT_NAME, PRINT_TEMPLATE, PRINT_PARAM, SFC, RESRCE, STEP_ID, OPERATION, INVENTORY, COMMENTS, OTHER_1, OTHER_2, OTHER_3, OTHER_4, OTHER_5, CREATE_USER, CREATED_DATE_TIME, MODIFY_USER, MODIFIED_DATE_TIME + HANDLE, SITE, CATEGORY, PRINT_NAME, PRINT_TEMPLATE, PRINT_PARAM, SFC, RESRCE, STEP_ID, OPERATION, INVENTORY, ITEM_BO, COMMENTS, IS_PRINT, PRINT_NUM, OTHER_1, OTHER_2, OTHER_3, OTHER_4, OTHER_5, CREATE_USER, CREATED_DATE_TIME, MODIFY_USER, MODIFIED_DATE_TIME @@ -51,117 +56,38 @@ - - - - - - @@ -183,7 +109,10 @@ AND STEP_ID=#{ew.entity.stepId} AND OPERATION=#{ew.entity.operation} AND INVENTORY=#{ew.entity.inventory} + AND ITEM_BO=#{ew.entity.itemBo} AND COMMENTS=#{ew.entity.comments} + AND IS_PRINT=#{ew.entity.isPrint} + AND PRINT_NUM=#{ew.entity.printNum} AND OTHER_1=#{ew.entity.other1} AND OTHER_2=#{ew.entity.other2} AND OTHER_3=#{ew.entity.other3} @@ -222,7 +151,10 @@ AND STEP_ID=#{ew.entity.stepId} AND OPERATION=#{ew.entity.operation} AND INVENTORY=#{ew.entity.inventory} + AND ITEM_BO=#{ew.entity.itemBo} AND COMMENTS=#{ew.entity.comments} + AND IS_PRINT=#{ew.entity.isPrint} + AND PRINT_NUM=#{ew.entity.printNum} AND OTHER_1=#{ew.entity.other1} AND OTHER_2=#{ew.entity.other2} AND OTHER_3=#{ew.entity.other3} @@ -261,7 +193,10 @@ AND STEP_ID=#{ew.entity.stepId} AND OPERATION=#{ew.entity.operation} AND INVENTORY=#{ew.entity.inventory} + AND ITEM_BO=#{ew.entity.itemBo} AND COMMENTS=#{ew.entity.comments} + AND IS_PRINT=#{ew.entity.isPrint} + AND PRINT_NUM=#{ew.entity.printNum} AND OTHER_1=#{ew.entity.other1} AND OTHER_2=#{ew.entity.other2} AND OTHER_3=#{ew.entity.other3} @@ -300,7 +235,10 @@ AND STEP_ID=#{ew.entity.stepId} AND OPERATION=#{ew.entity.operation} AND INVENTORY=#{ew.entity.inventory} + AND ITEM_BO=#{ew.entity.itemBo} AND COMMENTS=#{ew.entity.comments} + AND IS_PRINT=#{ew.entity.isPrint} + AND PRINT_NUM=#{ew.entity.printNum} AND OTHER_1=#{ew.entity.other1} AND OTHER_2=#{ew.entity.other2} AND OTHER_3=#{ew.entity.other3} @@ -335,7 +273,10 @@ STEP_ID, OPERATION, INVENTORY, + ITEM_BO, COMMENTS, + IS_PRINT, + PRINT_NUM, OTHER_1, OTHER_2, OTHER_3, @@ -358,7 +299,10 @@ #{stepId}, #{operation}, #{inventory}, + #{itemBo}, #{comments}, + #{isPrint}, + #{printNum}, #{other1}, #{other2}, #{other3}, @@ -388,7 +332,10 @@ #{stepId}, #{operation}, #{inventory}, + #{itemBo}, #{comments}, + #{isPrint}, + #{printNum}, #{other1}, #{other2}, #{other3}, @@ -414,7 +361,10 @@ STEP_ID=#{et.stepId}, OPERATION=#{et.operation}, INVENTORY=#{et.inventory}, + ITEM_BO=#{et.itemBo}, COMMENTS=#{et.comments}, + IS_PRINT=#{et.isPrint}, + PRINT_NUM=#{et.printNum}, OTHER_1=#{et.other1}, OTHER_2=#{et.other2}, OTHER_3=#{et.other3}, @@ -440,7 +390,10 @@ STEP_ID=#{et.stepId}, OPERATION=#{et.operation}, INVENTORY=#{et.inventory}, + ITEM_BO=#{et.itemBo}, COMMENTS=#{et.comments}, + IS_PRINT=#{et.isPrint}, + PRINT_NUM=#{et.printNum}, OTHER_1=#{et.other1}, OTHER_2=#{et.other2}, OTHER_3=#{et.other3}, @@ -466,7 +419,10 @@ STEP_ID=#{et.stepId}, OPERATION=#{et.operation}, INVENTORY=#{et.inventory}, + ITEM_BO=#{et.itemBo}, COMMENTS=#{et.comments}, + IS_PRINT=#{et.isPrint}, + PRINT_NUM=#{et.printNum}, OTHER_1=#{et.other1}, OTHER_2=#{et.other2}, OTHER_3=#{et.other3}, @@ -491,7 +447,10 @@ AND STEP_ID=#{ew.entity.stepId} AND OPERATION=#{ew.entity.operation} AND INVENTORY=#{ew.entity.inventory} + AND ITEM_BO=#{ew.entity.itemBo} AND COMMENTS=#{ew.entity.comments} + AND IS_PRINT=#{ew.entity.isPrint} + AND PRINT_NUM=#{ew.entity.printNum} AND OTHER_1=#{ew.entity.other1} AND OTHER_2=#{ew.entity.other2} AND OTHER_3=#{ew.entity.other3} @@ -547,7 +506,10 @@ AND STEP_ID=#{ew.entity.stepId} AND OPERATION=#{ew.entity.operation} AND INVENTORY=#{ew.entity.inventory} + AND ITEM_BO=#{ew.entity.itemBo} AND COMMENTS=#{ew.entity.comments} + AND IS_PRINT=#{ew.entity.isPrint} + AND PRINT_NUM=#{ew.entity.printNum} AND OTHER_1=#{ew.entity.other1} AND OTHER_2=#{ew.entity.other2} AND OTHER_3=#{ew.entity.other3} diff --git a/console/src/main/resources/application-qas.yml b/console/src/main/resources/application-qas.yml index 4f9c33ac..fc3fd914 100644 --- a/console/src/main/resources/application-qas.yml +++ b/console/src/main/resources/application-qas.yml @@ -1,3 +1,4 @@ +#Spring spring: datasource: dynamic: @@ -5,4 +6,31 @@ spring: datasource: wip: driver-class-name: com.sap.db.jdbc.Driver - jndi-name: jdbc/jts/wipPool \ No newline at end of file + jndi-name: jdbc/jts/wipPool + activemq: + enabled: false + brokerUrl: tcp://121.36.58.109:61616?wireFormat.maxInactivityDuration=0 + password: admin + user: admin + pool: + enabled: true + max-connections: 10 + +#WebService +ws: + erp: + server: 172.16.251.223 + port: 8000 + user: mesd001 + pwd: a123456 + valid: N + +ftp: + host: + port: 21 + username: + password: + +#打印服务器配置 +print: + server: http://localhost:8080/CodeSoftPrintWeb/printService \ No newline at end of file diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/ItemBatchController.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/ItemBatchController.java index 4cc21e66..4270fdc0 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/ItemBatchController.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/ItemBatchController.java @@ -32,6 +32,38 @@ public class ItemBatchController { @Autowired public ItemBatchService itemBatchService; + /** + * 分页查询数据 + * + * @param frontPage 分页信息 + * @return + */ + @ResponseBody + @GetMapping("/getItemBatchPageList") + public R getItemBatchPageList(FrontPage frontPage, ItemBatch itemBatch){ + IPage result; + try { + String site = CommonMethods.getSite(); + itemBatch.setSite(site); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(itemBatch); + if (frontPage.getGlobalQuery() != null && !"".equals(frontPage.getGlobalQuery().trim())) { + queryWrapper + .like(ItemBatch.ITEM, frontPage.getGlobalQuery()) + .or().like(ItemBatch.BATCH, frontPage.getGlobalQuery()) + .or().like(ItemBatch.LABEL, frontPage.getGlobalQuery()) + .or().like(ItemBatch.SUPPLIER, frontPage.getGlobalQuery()); + } + + result = itemBatchService.page(frontPage.getPagePlus(), queryWrapper); + } catch (Exception e) { + return R.failed(e.getMessage()); + } + + return R.ok(result); + } + @GetMapping("/testErpJK") public R testErpJK (String shopOrder, String stepId) { diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ItemBatchService.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ItemBatchService.java index a923f461..6074e1c7 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ItemBatchService.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ItemBatchService.java @@ -1,6 +1,9 @@ package com.foreverwin.mesnac.dispatch.service; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.foreverwin.mesnac.dispatch.model.ItemBatch; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/ItemBatchServiceImpl.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/ItemBatchServiceImpl.java index c11e616b..af662e01 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/ItemBatchServiceImpl.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/ItemBatchServiceImpl.java @@ -1,6 +1,9 @@ package com.foreverwin.mesnac.dispatch.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.foreverwin.mesnac.common.util.StringUtil; import com.foreverwin.mesnac.dispatch.model.ItemBatch; import com.foreverwin.mesnac.dispatch.mapper.ItemBatchMapper; diff --git a/dispatch/src/main/resources/mapper/ItemBatchMapper.xml b/dispatch/src/main/resources/mapper/ItemBatchMapper.xml index 02d04e22..9cc0b51c 100644 --- a/dispatch/src/main/resources/mapper/ItemBatchMapper.xml +++ b/dispatch/src/main/resources/mapper/ItemBatchMapper.xml @@ -224,12 +224,12 @@ AND MODIFIED_DATE_TIME=#{ew.entity.modifiedDateTime} - ${ew.sqlSegment} + AND ${ew.sqlSegment} - ${ew.sqlSegment} + AND ${ew.sqlSegment} diff --git a/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java b/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java index 964543cb..11f67c82 100644 --- a/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java +++ b/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java @@ -1,8 +1,11 @@ package com.foreverwin.mesnac.integration.service.impl; +import com.alibaba.fastjson.JSONObject; import com.foreverwin.mesnac.common.constant.Constants; import com.foreverwin.mesnac.common.constant.CustomFieldConstant; import com.foreverwin.mesnac.common.enums.HandleEnum; +import com.foreverwin.mesnac.common.model.PrintLog; +import com.foreverwin.mesnac.common.service.PrintLogService; import com.foreverwin.mesnac.common.util.StringUtil; import com.foreverwin.mesnac.dispatch.model.ItemBatch; import com.foreverwin.mesnac.dispatch.service.ItemBatchService; @@ -53,6 +56,8 @@ public class InterfaceServiceImpl implements InterfaceService { @Autowired private ResrceService resrceService; @Autowired + private PrintLogService printLogService; + @Autowired private ShopOrderService shopOrderService; @Autowired private ItemBatchService itemBatchService; @@ -62,6 +67,7 @@ public class InterfaceServiceImpl implements InterfaceService { private CustomFieldsService customFieldsService; + @Override public void itemSync(String site, ItemSyncRequest itemSyncRequest) throws Exception{ //物料 @@ -772,13 +778,21 @@ public class InterfaceServiceImpl implements InterfaceService { String supplier = itemBatchReceiveRequest.getSUPPLIER(); LocalDateTime now = LocalDateTime.now(); + + + List printLogList = new ArrayList<>(); //循环处理 物料批次 for (int i = 0; i < itemBatchDtoList.size(); i++) { ItemBatchDto itemBatchDto = itemBatchDtoList.get(i); String item = itemBatchDto.getITEM(); if (StringUtil.isBlank(item)) { - throw BusinessException.build("物料参数不能为空"); + throw BusinessException.build("物料参数不能为空!"); } + Item itemModel = itemService.selectCurrent(site, item); + if (itemModel == null) { + throw BusinessException.build("物料【" +item+ "】没有维护当前版本!"); + } + String spec = itemBatchDto.getSPEC(); String texture = itemBatchDto.getTEXTURE(); String batch = itemBatchDto.getBATCH(); @@ -787,6 +801,7 @@ public class InterfaceServiceImpl implements InterfaceService { } String factory = itemBatchDto.getFACTORY(); + String inventory = item + "*" + batch; //查询物料和批次是否已经存在记录 List itemBatchList = itemBatchService.findItemBatch(site, item, batch); if (itemBatchList != null && itemBatchList.size() > 0) { @@ -808,12 +823,40 @@ public class InterfaceServiceImpl implements InterfaceService { itemBatch.setSpec(spec); itemBatch.setTexture(texture); itemBatch.setSupplier(supplier); - itemBatch.setLabel(item + "*" + batch); + itemBatch.setLabel(inventory); itemBatch.setIsPrint("false"); itemBatch.setCreateUser(Constants.SITE_ADMIN); itemBatch.setCreatedDateTime(now); itemBatchService.save(itemBatch); } + + //打印模板参数 + JSONObject jsonObject = new JSONObject(); + jsonObject.put("ITEM", item); + jsonObject.put("ITEM_DESC", itemModel.getDescription()); + jsonObject.put("SUPPLIER", supplier); + jsonObject.put("INVENTORY", inventory); + + + //记录打印数据 + PrintLog printLog = new PrintLog(); + printLog.setHandle(UUID.randomUUID().toString()); + printLog.setSite(site); + printLog.setCategory("INV"); + printLog.setPrintName(""); + printLog.setPrintTemplate("INV_LABEL"); + printLog.setPrintParam(jsonObject.toJSONString()); + printLog.setInventory(inventory); + printLog.setItemBo(itemModel.getHandle()); + printLog.setIsPrint("false"); + printLog.setPrintNum(0); + printLog.setCreateUser("SITE_ADMIN"); + printLog.setCreatedDateTime(LocalDateTime.now()); + printLogList.add(printLog); + } + + if (printLogList != null && printLogList.size() > 0) { + printLogService.saveBatch(printLogList); } } diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/PrinterController.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/PrinterController.java new file mode 100644 index 00000000..d189884d --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/PrinterController.java @@ -0,0 +1,130 @@ +package com.foreverwin.mesnac.meapi.controller; + +import com.foreverwin.modular.core.util.R; +import com.foreverwin.modular.core.util.FrontPage; +import com.foreverwin.modular.core.util.CommonMethods; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import com.foreverwin.mesnac.meapi.service.PrinterService; +import com.foreverwin.mesnac.meapi.model.Printer; +import java.util.List; + +/** + * + * @author Leon.L + * @since 2021-07-22 + */ +@RestController +@RequestMapping("/PRINTER") +public class PrinterController { + + @Autowired + public PrinterService printerService; + + /** + * 根据id查询 + * + * @param id 主键 + * @return + */ + @ResponseBody + @GetMapping("/{id:.+}") + public R getPrinterById(@PathVariable String id) { + return R.ok( printerService.getById(id)); + } + + /** + * 查询所有数据 + * + * @return + */ + @ResponseBody + @GetMapping("") + public R getPrinterList(Printer printer){ + List result; + try { + String site = CommonMethods.getSite(); + printer.setSite(site); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(printer); + result = printerService.list(queryWrapper); + } catch (Exception e) { + return R.failed(e.getMessage()); + } + + return R.ok(result); + } + + /** + * 分页查询数据 + * + * @param frontPage 分页信息 + * @return + */ + @ResponseBody + @GetMapping("/page") + public R page(FrontPage frontPage, Printer printer){ + IPage result; + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(printer); + if (frontPage.getGlobalQuery() != null && !"".equals(frontPage.getGlobalQuery().trim())) { + //TODO modify global query + queryWrapper.lambda().and(wrapper -> wrapper + .like(Printer::getHandle, frontPage.getGlobalQuery()) + .or().like(Printer::getSite, frontPage.getGlobalQuery()) + .or().like(Printer::getPrinter, frontPage.getGlobalQuery()) + .or().like(Printer::getDescription, frontPage.getGlobalQuery()) + .or().like(Printer::getEnabled, frontPage.getGlobalQuery()) + ); + } + result = printerService.page(frontPage.getPagePlus(), queryWrapper); + return R.ok(result); + } + + /** + * 新增 + * @param printer 传递的实体 + * @return null 失败 实体成功 + */ + @PostMapping + public R save(@RequestBody Printer printer) { + return R.ok(printerService.save(printer)); + } + + /** + * 修改 + * @param printer 传递的实体 + * @return null 失败 实体成功 + */ + @PutMapping + public R updateById(@RequestBody Printer printer) { + return R.ok(printerService.updateById(printer)); + } + + /** + * 根据id删除对象 + * @param id 实体ID + * @return 0 失败 1 成功 + */ + @ResponseBody + @RequestMapping(method = RequestMethod.DELETE, value = "/{id:.+}") + public R removeById(@PathVariable("id") String id){ + return R.ok(printerService.removeById(id)); + } + + /** + * 批量删除对象 + * @param ids 实体集合ID + * @return 0 失败 1 成功 + */ + @ResponseBody + @RequestMapping(method = RequestMethod.POST, value = "/delete-batch") + public R removeByIds(List ids){ + return R.ok(printerService.removeByIds(ids)); + } +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/ItemMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/ItemMapper.java index 450c1d44..88bb841b 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/ItemMapper.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/ItemMapper.java @@ -26,6 +26,8 @@ public interface ItemMapper extends BaseMapper { List selectPage(@Param("locale") String locale, IPage page, @Param("ew") Wrapper wrapper); + Item selectCurrentRevision(@Param("site") String site, @Param("item") String item); + Item selectById(@Param("locale") String locale, @Param("handle") String handle); List selectListByCriteria(@Param("locale") String locale, @Param("ew") Wrapper wrapper); diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/PrinterMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/PrinterMapper.java new file mode 100644 index 00000000..da30ef1c --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/PrinterMapper.java @@ -0,0 +1,18 @@ +package com.foreverwin.mesnac.meapi.mapper; + +import com.foreverwin.mesnac.meapi.model.Printer; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + *

+ * Mapper 接口 + *

+ * + * @author Leon.L + * @since 2021-07-22 + */ +@Repository +public interface PrinterMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/Printer.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/Printer.java new file mode 100644 index 00000000..dde11f5f --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/Printer.java @@ -0,0 +1,130 @@ +package com.foreverwin.mesnac.meapi.model; + +import java.io.Serializable; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import java.io.Serializable; +import com.baomidou.mybatisplus.annotation.IdType; + +/** + *

+ * + *

+ * + * @author Leon.L + * @since 2021-07-22 + */ + +@TableName("PRINTER") +public class Printer extends Model { + + private static final long serialVersionUID = 1L; + + @TableField("HANDLE") + private String handle; + @TableField("SITE") + private String site; + @TableField("PRINTER") + private String printer; + @TableField("DESCRIPTION") + private String description; + @TableField("ENABLED") + private String enabled; + @TableField("CREATED_DATE_TIME") + private LocalDateTime createdDateTime; + @TableField("MODIFIED_DATE_TIME") + private LocalDateTime modifiedDateTime; + + + public String getHandle() { + return handle; + } + + public void setHandle(String handle) { + this.handle = handle; + } + + public String getSite() { + return site; + } + + public void setSite(String site) { + this.site = site; + } + + public String getPrinter() { + return printer; + } + + public void setPrinter(String printer) { + this.printer = printer; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getEnabled() { + return enabled; + } + + public void setEnabled(String enabled) { + this.enabled = enabled; + } + + public LocalDateTime getCreatedDateTime() { + return createdDateTime; + } + + public void setCreatedDateTime(LocalDateTime createdDateTime) { + this.createdDateTime = createdDateTime; + } + + public LocalDateTime getModifiedDateTime() { + return modifiedDateTime; + } + + public void setModifiedDateTime(LocalDateTime modifiedDateTime) { + this.modifiedDateTime = modifiedDateTime; + } + + public static final String HANDLE = "HANDLE"; + + public static final String SITE = "SITE"; + + public static final String PRINTER = "PRINTER"; + + public static final String DESCRIPTION = "DESCRIPTION"; + + public static final String ENABLED = "ENABLED"; + + public static final String CREATED_DATE_TIME = "CREATED_DATE_TIME"; + + public static final String MODIFIED_DATE_TIME = "MODIFIED_DATE_TIME"; + + + @Override + protected Serializable pkVal() { + return this.handle; + } + + @Override + public String toString() { + return "Printer{" + + "handle = " + handle + + ", site = " + site + + ", printer = " + printer + + ", description = " + description + + ", enabled = " + enabled + + ", createdDateTime = " + createdDateTime + + ", modifiedDateTime = " + modifiedDateTime + + "}"; + } +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/PrinterService.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/PrinterService.java new file mode 100644 index 00000000..0e63e6a4 --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/PrinterService.java @@ -0,0 +1,28 @@ +package com.foreverwin.mesnac.meapi.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.foreverwin.mesnac.meapi.model.Printer; +import com.baomidou.mybatisplus.extension.service.IService; +import com.foreverwin.modular.core.util.FrontPage; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author Leon.L + * @since 2021-07-22 + */ +public interface PrinterService extends IService { + + /** + * 分页查询 + * @param frontPage + * @return + */ + IPage selectPage(FrontPage frontPage, Printer printer); + + List selectList(Printer printer); +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/ItemServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/ItemServiceImpl.java index f3a4605e..85b34e91 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/ItemServiceImpl.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/ItemServiceImpl.java @@ -84,15 +84,6 @@ public class ItemServiceImpl extends ServiceImpl implements It } @Override public Item selectCurrent(String site, String item) { - Locale locale = LocaleContextHolder.getLocale(); - //---------------------------------------------------------------------------------- - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(Item::getSite, site); - queryWrapper.eq(Item::getItem, item); - queryWrapper.orderByDesc(Item::getCurrentRevision); - //---------------------------------------------------------------------------------- - List resultLit = itemMapper.selectList(locale.getLanguage(), queryWrapper); - //---------------------------------------------------------------------------------- - return resultLit != null && resultLit.size() > 0 ? resultLit.get(0) : null; + return itemMapper.selectCurrentRevision(site, item); } } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/PrinterServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/PrinterServiceImpl.java new file mode 100644 index 00000000..3d461f85 --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/PrinterServiceImpl.java @@ -0,0 +1,46 @@ +package com.foreverwin.mesnac.meapi.service.impl; + +import com.foreverwin.modular.core.util.FrontPage; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.foreverwin.mesnac.meapi.model.Printer; +import com.foreverwin.mesnac.meapi.mapper.PrinterMapper; +import com.foreverwin.mesnac.meapi.service.PrinterService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +/** + *

+ * 服务实现类 + *

+ * + * @author Leon.L + * @since 2021-07-22 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class PrinterServiceImpl extends ServiceImpl implements PrinterService { + + + @Autowired + private PrinterMapper printerMapper; + + @Override + public IPage selectPage(FrontPage frontPage, Printer printer) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(printer); + return super.page(frontPage.getPagePlus(), queryWrapper); + } + + @Override + public List selectList(Printer printer) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(printer); + return super.list(queryWrapper); + } + + +} \ No newline at end of file diff --git a/meapi/src/main/resources/mapper/ItemMapper.xml b/meapi/src/main/resources/mapper/ItemMapper.xml index 31ebea80..f9c59c4a 100644 --- a/meapi/src/main/resources/mapper/ItemMapper.xml +++ b/meapi/src/main/resources/mapper/ItemMapper.xml @@ -85,6 +85,13 @@ WHERE I.HANDLE=#{handle} + + + SELECT + FROM PRINTER + + + + + ${k} = #{cm[${k}]} + + + + + + + + + + + + + + + + + + + + + + + INSERT INTO PRINTER + + HANDLE, + SITE, + PRINTER, + DESCRIPTION, + ENABLED, + CREATED_DATE_TIME, + MODIFIED_DATE_TIME, + VALUES + + #{handle}, + #{site}, + #{printer}, + #{description}, + #{enabled}, + #{createdDateTime}, + #{modifiedDateTime}, + + + + + INSERT INTO PRINTER + + + VALUES + + #{handle}, + #{site}, + #{printer}, + #{description}, + #{enabled}, + #{createdDateTime}, + #{modifiedDateTime}, + + + + + + + + + + UPDATE PRINTER + HANDLE=#{et.handle}, + SITE=#{et.site}, + PRINTER=#{et.printer}, + DESCRIPTION=#{et.description}, + ENABLED=#{et.enabled}, + CREATED_DATE_TIME=#{et.createdDateTime}, + MODIFIED_DATE_TIME=#{et.modifiedDateTime}, + + + + + HANDLE=#{ew.entity.handle} + AND SITE=#{ew.entity.site} + AND PRINTER=#{ew.entity.printer} + AND DESCRIPTION=#{ew.entity.description} + AND ENABLED=#{ew.entity.enabled} + AND CREATED_DATE_TIME=#{ew.entity.createdDateTime} + AND MODIFIED_DATE_TIME=#{ew.entity.modifiedDateTime} + + + ${ew.sqlSegment} + + + + + ${ew.sqlSegment} + + + + + + DELETE FROM PRINTER + + + + + ${k} = #{cm[${k}]} + + + + + + + + DELETE FROM PRINTER + + + + + HANDLE=#{ew.entity.handle} + + AND SITE=#{ew.entity.site} + AND PRINTER=#{ew.entity.printer} + AND DESCRIPTION=#{ew.entity.description} + AND ENABLED=#{ew.entity.enabled} + AND CREATED_DATE_TIME=#{ew.entity.createdDateTime} + AND MODIFIED_DATE_TIME=#{ew.entity.modifiedDateTime} + + + ${ew.sqlSegment} + + + + + ${ew.sqlSegment} + + + + + +