feat(wms): 新增采购订单物料列表查询功能并优化盘点相关功能

- 在 IWmsPurchaseOrderDetailService 中新增 queryListWithInstockedQty 方法,用于查询带已入库数量统计的采购订单物料列表
- 修改 RemoteInventoryCheckServiceImpl 中的 generateOrderCode 方法,根据盘点任务类型生成不同前缀的订单号
- 在 WmsPurchaseOrderController 中为新增采购订单设置默认订单类型
master
zangch@mesnac.com 2 days ago
parent 227559e2e6
commit 3274c2904d

@ -77,6 +77,7 @@ public class WmsPurchaseOrderController extends BaseController {
@RepeatSubmit() @RepeatSubmit()
@PostMapping() @PostMapping()
public R<WmsPurchaseOrder> add(@RequestBody WmsPurchaseOrderBo bo) { public R<WmsPurchaseOrder> add(@RequestBody WmsPurchaseOrderBo bo) {
bo.setPoType("1");//订单类型(1人工创建,2ERP同步,3后台创建4)
return R.ok(wmsPurchaseOrderService.insertByBo(bo)); return R.ok(wmsPurchaseOrderService.insertByBo(bo));
} }

@ -77,7 +77,7 @@ public class RemoteInventoryCheckServiceImpl implements RemoteInventoryCheckServ
checkBo.setCheckType(task.getWmsCheckTaskType()); checkBo.setCheckType(task.getWmsCheckTaskType());
checkBo.setCheckStatus("0"); // 盘点状态0计划2盘点中3盘点完成 checkBo.setCheckStatus("0"); // 盘点状态0计划2盘点中3盘点完成
// checkBo.setBeginTime(new Date());// 盘点开始时间 // checkBo.setBeginTime(new Date());// 盘点开始时间
checkBo.setCheckCode(generateOrderCode());// 私有方法根据规则生成盘点单号 checkBo.setCheckCode(generateOrderCode(task));// 私有方法根据规则生成盘点单号
wmsInventoryCheckService.insertByBo(checkBo); wmsInventoryCheckService.insertByBo(checkBo);
String checkCode = checkBo.getCheckCode(); // 已生成 String checkCode = checkBo.getCheckCode(); // 已生成
@ -141,14 +141,17 @@ public class RemoteInventoryCheckServiceImpl implements RemoteInventoryCheckServ
* *
* @return String ST + yyMMddHHssmm + 4 * @return String ST + yyMMddHHssmm + 4
*/ */
private String generateOrderCode(){ private String generateOrderCode(WmsCheckTaskVo task){
// 获取当前时间并格式化为订单日期部分 // 获取当前时间并格式化为订单日期部分
Date date = new Date(); Date date = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHssmm"); SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHssmm");
String orderDate = format.format(date).substring(2); String orderDate = format.format(date).substring(2);
// 初始化订单前缀和后缀变量 // 初始化订单前缀和后缀变量
String order = "ST"; String order = "PD";
if (task.getWmsCheckTaskType().equals("0")){
order = "CJ";
}
String orderLast=""; String orderLast="";
// 获取下一个序列值并根据长度判断是否需要重置序列 // 获取下一个序列值并根据长度判断是否需要重置序列

@ -1,10 +1,9 @@
package org.dromara.wms.service; package org.dromara.wms.service;
import org.dromara.wms.domain.WmsPurchaseOrderDetail;
import org.dromara.wms.domain.vo.WmsPurchaseOrderDetailVo;
import org.dromara.wms.domain.bo.WmsPurchaseOrderDetailBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.wms.domain.bo.WmsPurchaseOrderDetailBo;
import org.dromara.wms.domain.vo.WmsPurchaseOrderDetailVo;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
@ -68,4 +67,14 @@ public interface IWmsPurchaseOrderDetailService {
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
int deleteByPos(Collection<String> pos, Boolean isValid); int deleteByPos(Collection<String> pos, Boolean isValid);
/**
* -
*
* @param bo
* @return -
*/
List<WmsPurchaseOrderDetailVo> queryListWithInstockedQty(WmsPurchaseOrderDetailBo bo);
} }

Loading…
Cancel
Save