From d5f42e7da3bd943f49880c8b687836a172579f6e Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 28 七月 2025 18:35:36 +0800 Subject: [PATCH] 调拔单功能优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TransferOrder.java | 2 rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/TransferOrderMapper.java | 12 +++ rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java | 4 rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TransferType.java | 24 ++++++ rsf-server/src/main/resources/mapper/manager/TransferOrderMapper.xml | 5 + rsf-server/src/main/java/com/vincent/rsf/server/common/CodeBuilder.java | 4 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java | 10 ++ rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Transfer.java | 10 +- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferOrderServiceImpl.java | 12 +++ rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TransferOrderService.java | 8 ++ rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TransferOrderController.java | 104 ++++++++++++++++++++++++++ rsf-server/src/main/resources/mapper/manager/TransferMapper.xml | 8 + rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderType.java | 4 + rsf-server/src/main/java/transferOrder.sql | 24 ++++++ 14 files changed, 220 insertions(+), 11 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/CodeBuilder.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/CodeBuilder.java index f29ee02..ee08141 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/common/CodeBuilder.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/CodeBuilder.java @@ -22,8 +22,8 @@ // generator.username="sa"; // generator.password="Zoneyung@zy56$"; - generator.table = "man_transfer_item"; - generator.tableDesc = "璋冩嫈鍗曟槑缁�"; + generator.table = "man_transfer_order"; + generator.tableDesc = "璋冩嫈鍗曡鍗曞叧鑱旇〃"; generator.packagePath = "com.vincent.rsf.server.manager"; generator.build(); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java index 8e6ff49..aa78e0c 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java @@ -58,8 +58,8 @@ BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<WkOrder, BaseParam> pageParam = new PageParam<>(baseParam, WkOrder.class); QueryWrapper<WkOrder> queryWrapper = pageParam.buildWrapper(true); - List<String> list = Arrays.asList(OrderType.ORDER_OUT.type, OrderType.ORDER_TRANSFER.type); - queryWrapper.in("type", list); +// List<String> list = Arrays.asList(OrderType.ORDER_OUT.type); +// queryWrapper.in("type", list); return R.ok().add(outStockService.page(pageParam, queryWrapper)); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TransferOrderController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TransferOrderController.java new file mode 100644 index 0000000..b4be6ee --- /dev/null +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TransferOrderController.java @@ -0,0 +1,104 @@ +package com.vincent.rsf.server.manager.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.vincent.rsf.framework.common.Cools; +import com.vincent.rsf.framework.common.R; +import com.vincent.rsf.server.common.utils.ExcelUtil; +import com.vincent.rsf.server.common.annotation.OperationLog; +import com.vincent.rsf.server.common.domain.BaseParam; +import com.vincent.rsf.server.common.domain.KeyValVo; +import com.vincent.rsf.server.common.domain.PageParam; +import com.vincent.rsf.server.manager.entity.TransferOrder; +import com.vincent.rsf.server.manager.service.TransferOrderService; +import com.vincent.rsf.server.system.controller.BaseController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.*; + +@RestController +public class TransferOrderController extends BaseController { + + @Autowired + private TransferOrderService transferOrderService; + + @PreAuthorize("hasAuthority('manager:transferOrder:list')") + @PostMapping("/transferOrder/page") + public R page(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<TransferOrder, BaseParam> pageParam = new PageParam<>(baseParam, TransferOrder.class); + return R.ok().add(transferOrderService.page(pageParam, pageParam.buildWrapper(true))); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:list')") + @PostMapping("/transferOrder/list") + public R list(@RequestBody Map<String, Object> map) { + return R.ok().add(transferOrderService.list()); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:list')") + @PostMapping({"/transferOrder/many/{ids}", "/transferOrders/many/{ids}"}) + public R many(@PathVariable Long[] ids) { + return R.ok().add(transferOrderService.listByIds(Arrays.asList(ids))); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:list')") + @GetMapping("/transferOrder/{id}") + public R get(@PathVariable("id") Long id) { + return R.ok().add(transferOrderService.getById(id)); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:save')") + @OperationLog("Create 璋冩嫈鍗曡鍗曞叧鑱旇〃") + @PostMapping("/transferOrder/save") + public R save(@RequestBody TransferOrder transferOrder) { + if (!transferOrderService.save(transferOrder)) { + return R.error("Save Fail"); + } + return R.ok("Save Success").add(transferOrder); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:update')") + @OperationLog("Update 璋冩嫈鍗曡鍗曞叧鑱旇〃") + @PostMapping("/transferOrder/update") + public R update(@RequestBody TransferOrder transferOrder) { + if (!transferOrderService.updateById(transferOrder)) { + return R.error("Update Fail"); + } + return R.ok("Update Success").add(transferOrder); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:remove')") + @OperationLog("Delete 璋冩嫈鍗曡鍗曞叧鑱旇〃") + @PostMapping("/transferOrder/remove/{ids}") + public R remove(@PathVariable Long[] ids) { + if (!transferOrderService.removeByIds(Arrays.asList(ids))) { + return R.error("Delete Fail"); + } + return R.ok("Delete Success").add(ids); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:list')") + @PostMapping("/transferOrder/query") + public R query(@RequestParam(required = false) String condition) { + List<KeyValVo> vos = new ArrayList<>(); + LambdaQueryWrapper<TransferOrder> wrapper = new LambdaQueryWrapper<>(); + if (!Cools.isEmpty(condition)) { + wrapper.like(TransferOrder::getId, condition); + } + transferOrderService.page(new Page<>(1, 30), wrapper).getRecords().forEach( + item -> vos.add(new KeyValVo(item.getId(), item.getId())) + ); + return R.ok().add(vos); + } + + @PreAuthorize("hasAuthority('manager:transferOrder:list')") + @PostMapping("/transferOrder/export") + public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { + ExcelUtil.build(ExcelUtil.create(transferOrderService.list(), TransferOrder.class), response); + } + +} diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Transfer.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Transfer.java index 29b290c..0d73fec 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Transfer.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Transfer.java @@ -56,13 +56,13 @@ private Integer type; /** - * 鏉ユ簮: 1: ERP绯荤粺 2: WMS绯荤粺鐢熸垚 3: EXCEL瀵煎叆 4: QMS绯荤粺 + * 鏉ユ簮: 1: ERP绯荤粺 2: WMS绯荤粺鐢熸垚 3: EXCEL瀵煎叆 4: QMS绯荤粺 */ @ApiModelProperty(value= "鏉ユ簮: 1: ERP绯荤粺 2: WMS绯荤粺鐢熸垚 3: EXCEL瀵煎叆 4: QMS绯荤粺 ") private Integer source; /** - * 鎵ц鐘舵��: 0: 鏈墽琛� 1: 鎵ц涓� 2: 鎵ц瀹屾垚 + * 鎵ц鐘舵��: 0: 鏈墽琛� 1: 鎵ц涓� 2: 鎵ц瀹屾垚 */ @ApiModelProperty(value= "鎵ц鐘舵��: 0: 鏈墽琛� 1: 鎵ц涓� 2: 鎵ц瀹屾垚 ") private Short exceStatus; @@ -116,13 +116,13 @@ private String tarAreaName; /** - * 鐘舵�� 1: 姝e父 0: 鍐荤粨 + * 鐘舵�� 1: 姝e父 0: 鍐荤粨 */ @ApiModelProperty(value= "鐘舵�� 1: 姝e父 0: 鍐荤粨 ") private Integer status; /** - * 鏄惁鍒犻櫎 1: 鏄� 0: 鍚� + * 鏄惁鍒犻櫎 1: 鏄� 0: 鍚� */ @ApiModelProperty(value= "鏄惁鍒犻櫎 1: 鏄� 0: 鍚� ") @TableLogic @@ -244,7 +244,7 @@ public String getExceStatus$() { if (Cools.isEmpty(this.exceStatus)){ - return ""; + return null; } DictDataService dictDataService = SpringUtils.getBean(DictDataService.class); DictData dictData = dictDataService.getOne(new LambdaQueryWrapper<DictData>() diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TransferOrder.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TransferOrder.java index d853eff..18eb434 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TransferOrder.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TransferOrder.java @@ -10,7 +10,7 @@ import java.io.Serializable; @Data -@Accessors +@Accessors(chain = true) @TableName("man_transfer_order") public class TransferOrder implements Serializable { diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderType.java index b3e6b75..dc85d6b 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderType.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderType.java @@ -30,6 +30,8 @@ return OrderType.ORDER_OUT.type; } else if (desc.equals(OrderType.ORDER_CHECK.desc)) { return OrderType.ORDER_CHECK.type; + } else if (desc.equals(OrderType.ORDER_TRANSFER.desc)) { + return OrderType.ORDER_TRANSFER.type; } return null; } @@ -41,6 +43,8 @@ return OrderType.ORDER_OUT.desc; } else if (type.equals(OrderType.ORDER_CHECK.type)) { return OrderType.ORDER_CHECK.desc; + } else if (type.equals(OrderType.ORDER_TRANSFER.type)) { + return OrderType.ORDER_TRANSFER.desc; } return null; } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TransferType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TransferType.java index 86a1331..1e05068 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TransferType.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TransferType.java @@ -1,5 +1,6 @@ package com.vincent.rsf.server.manager.enums; + /** * @author Ryan * @date 2025/7/25 @@ -21,4 +22,27 @@ this.desc = desc; } + + public static String getValType(Integer type) { + if (type.equals(TransferType.TRANSFER_TYPE_WAREHOUSE.val)) { + return TransferType.TRANSFER_TYPE_WAREHOUSE.desc; + } else if (type.equals(TransferType.TRANSFER_TYPE_AREAS.val)) { + return TransferType.TRANSFER_TYPE_AREAS.desc; + } else if (type.equals(TransferType.TRANSFER_TYPE_LOCAL.val)) { + return TransferType.TRANSFER_TYPE_LOCAL.desc; + } + return null; + } + + public static Integer getTypeVal(String desc) { + if (desc.equals(TransferType.TRANSFER_TYPE_WAREHOUSE.desc)) { + return TransferType.TRANSFER_TYPE_WAREHOUSE.val; + } else if (desc.equals(TransferType.TRANSFER_TYPE_AREAS.desc)) { + return TransferType.TRANSFER_TYPE_AREAS.val; + } else if (desc.equals(TransferType.TRANSFER_TYPE_LOCAL.desc)) { + return TransferType.TRANSFER_TYPE_LOCAL.val; + } + return null; + } + } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/TransferOrderMapper.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/TransferOrderMapper.java new file mode 100644 index 0000000..b1818e9 --- /dev/null +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/TransferOrderMapper.java @@ -0,0 +1,12 @@ +package com.vincent.rsf.server.manager.mapper; + +import com.vincent.rsf.server.manager.entity.TransferOrder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.springframework.stereotype.Repository; + +@Mapper +@Repository +public interface TransferOrderMapper extends BaseMapper<TransferOrder> { + +} diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TransferOrderService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TransferOrderService.java new file mode 100644 index 0000000..c9d3f8b --- /dev/null +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TransferOrderService.java @@ -0,0 +1,8 @@ +package com.vincent.rsf.server.manager.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.vincent.rsf.server.manager.entity.TransferOrder; + +public interface TransferOrderService extends IService<TransferOrder> { + +} diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferOrderServiceImpl.java new file mode 100644 index 0000000..84b0d33 --- /dev/null +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferOrderServiceImpl.java @@ -0,0 +1,12 @@ +package com.vincent.rsf.server.manager.service.impl; + +import com.vincent.rsf.server.manager.mapper.TransferOrderMapper; +import com.vincent.rsf.server.manager.entity.TransferOrder; +import com.vincent.rsf.server.manager.service.TransferOrderService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service("transferOrderService") +public class TransferOrderServiceImpl extends ServiceImpl<TransferOrderMapper, TransferOrder> implements TransferOrderService { + +} diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java index 29d4a58..9455749 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java @@ -38,6 +38,8 @@ private OutStockService outStockService; @Autowired private OutStockItemService outStockItemService; + @Autowired + private TransferOrderService transferOrderService; /** * @author Ryan @@ -231,6 +233,14 @@ if (!this.updateById(transfer)) { throw new CoolException("璋冩嫈鍗曟洿鏂板け璐ワ紒锛�"); } + + TransferOrder transferOrder = new TransferOrder(); + transferOrder.setTransferId(transfer.getId()).setOrderId(wkOrder.getId()).setExceStatus(1); + + if (!transferOrderService.save(transferOrder)) { + throw new CoolException("鍗曟嵁鍏宠仈澶辫触锛侊紒"); + } + return transfer; } } diff --git a/rsf-server/src/main/java/transferOrder.sql b/rsf-server/src/main/java/transferOrder.sql new file mode 100644 index 0000000..67173ab --- /dev/null +++ b/rsf-server/src/main/java/transferOrder.sql @@ -0,0 +1,24 @@ +-- save transferOrder record +-- mysql +insert into `sys_menu` ( `name`, `parent_id`, `route`, `component`, `type`, `sort`, `tenant_id`, `status`) values ( 'menu.transferOrder', '0', '/manager/transferOrder', 'transferOrder', '0' , '0', '1' , '1'); + +insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Query 璋冩嫈鍗曡鍗曞叧鑱旇〃', '', '1', 'manager:transferOrder:list', '0', '1', '1'); +insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Create 璋冩嫈鍗曡鍗曞叧鑱旇〃', '', '1', 'manager:transferOrder:save', '1', '1', '1'); +insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Update 璋冩嫈鍗曡鍗曞叧鑱旇〃', '', '1', 'manager:transferOrder:update', '2', '1', '1'); +insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Delete 璋冩嫈鍗曡鍗曞叧鑱旇〃', '', '1', 'manager:transferOrder:remove', '3', '1', '1'); + +-- locale menu name +transferOrder: 'TransferOrder', + +-- locale field +transferOrder: { + transferId: "transferId", + orderId: "orderId", + exceStatus: "exceStatus", +}, + +-- ResourceContent +import transferOrder from './transferOrder'; + +case 'transferOrder': + return transferOrder; diff --git a/rsf-server/src/main/resources/mapper/manager/TransferMapper.xml b/rsf-server/src/main/resources/mapper/manager/TransferMapper.xml index 09c532e..9b1eff9 100644 --- a/rsf-server/src/main/resources/mapper/manager/TransferMapper.xml +++ b/rsf-server/src/main/resources/mapper/manager/TransferMapper.xml @@ -6,6 +6,8 @@ SELECT id, `code`, + `po_code`, + `po_id`, `type`, `wk_type`, `anfme`, @@ -14,7 +16,11 @@ `warehouse_id`, `ware_area_id`, `wave_id`, - `exce_status` + `exce_status`, + `update_time`, + `update_by`, + `create_by`, + `update_by` FROM man_asn_order WHERE diff --git a/rsf-server/src/main/resources/mapper/manager/TransferOrderMapper.xml b/rsf-server/src/main/resources/mapper/manager/TransferOrderMapper.xml new file mode 100644 index 0000000..7703415 --- /dev/null +++ b/rsf-server/src/main/resources/mapper/manager/TransferOrderMapper.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.vincent.rsf.server.manager.mapper.TransferOrderMapper"> + +</mapper> -- Gitblit v1.9.1