From 09284f08c7a901f684cf26ccb0e51a9204d9cd64 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 30 五月 2024 09:30:27 +0800
Subject: [PATCH] #订单组托
---
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java | 20 ++++++++++
zy-asrs-common/src/main/java/com/zy/asrs/common/domain/dto/OrderNameListDto.java | 8 ++++
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/MobileService.java | 2 +
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderService.java | 3 +
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java | 6 +++
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java | 45 +++++++++++++++++++++-
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderServiceImpl.java | 23 +++++++++++
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java | 10 +++++
8 files changed, 114 insertions(+), 3 deletions(-)
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/dto/OrderNameListDto.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/dto/OrderNameListDto.java
new file mode 100644
index 0000000..1170796
--- /dev/null
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/dto/OrderNameListDto.java
@@ -0,0 +1,8 @@
+package com.zy.asrs.common.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class OrderNameListDto {
+ private String order_no;
+}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/MobileService.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/MobileService.java
index 6fe3eee..3151787 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/MobileService.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/MobileService.java
@@ -17,4 +17,6 @@
void adjust(MobileAdjustParam param, Long userId, Long hostId);
R WarehouseIn(String locNo, String barcode,Long hostId);
+
+ R WarehouseOut(CombParam combParam, Long hostId);
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderService.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderService.java
index 13b876c..07c11b9 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderService.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderService.java
@@ -1,6 +1,7 @@
package com.zy.asrs.common.wms.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.zy.asrs.common.domain.dto.OrderNameListDto;
import com.zy.asrs.common.wms.entity.Order;
import com.zy.asrs.common.wms.entity.OrderDetl;
import com.zy.asrs.common.wms.entity.WrkDetl;
@@ -22,4 +23,6 @@
void checkComplete(String orderNo, Long hostId);
+
+ List<OrderNameListDto> selectAllorderNo(Long hostId);
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java
index ee572f3..2b2fef2 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java
@@ -103,7 +103,7 @@
}
}
// 鍏宠仈缁勬墭
- } else {
+ } else {
Order order = orderService.selectByNo(param.getOrderNo(), hostId);
if (order.getSettle() > 2) {
throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
@@ -118,7 +118,7 @@
throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�");
}
// 淇敼璁㈠崟鏄庣粏鏁伴噺
- if (!orderDetlService.increase(order.getId(), hostId, elem.getMatnr(), elem.getBatch(), elem.getAnfme())) {
+ if (!orderDetlService.increaseWorkQtyByOrderNo(order.getOrderNo(), elem.getMatnr(), elem.getBatch(), elem.getAnfme(), hostId)) {
throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
}
@@ -237,7 +237,7 @@
@Override
@Transactional
public R WarehouseIn(String locNo, String barcode,Long hostId) {
- //鍒ゆ柇搴撲綅鐘舵��
+ //鍒ゆ柇搴撲綅鐘舵��
LocMast locMast = locMastService.getOne(new LambdaQueryWrapper<LocMast>().eq(LocMast::getLocNo, locNo).eq(LocMast::getHostId,hostId));
if (Cools.isEmpty(locMast)){
return R.error("璇ュ簱浣嶄笉瀛樺湪");
@@ -266,11 +266,28 @@
locDetl.setModiTime(now);
locDetl.setAppeTime(now);
locDetlService.save(locDetl);
+ //鏄惁灞炰簬璁㈠崟鏁版嵁
+ if (!Cools.isEmpty(waitPakin.getOrderNo())){
+ Order order = orderService.selectByNo(waitPakin.getOrderNo(), hostId);
+ if (Cools.isEmpty(order)){
+ continue;
+ }
+ OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), waitPakin.getMatnr(), waitPakin.getBatch());
+ if (Cools.isEmpty(orderDetl)){
+ continue;
+ }
+ // 淇敼璁㈠崟鏄庣粏瀹屾垚鏁伴噺
+ if (!orderDetlService.increase(order.getId(), hostId, waitPakin.getMatnr(), waitPakin.getBatch(), waitPakin.getAnfme())) {
+ throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
+ }
+ }
}
//淇敼搴撲綅鐘舵��
locMast.setLocSts("F");
locMast.setModiTime(now);
locMastService.updateById(locMast);
+
+
// 淇濆瓨鍏ュ簱閫氱煡妗e巻鍙叉。
if (!waitPakinLogService.saveToHistory(barcode, hostId)) {
@@ -282,4 +299,26 @@
}
return R.ok("涓婃灦鎴愬姛");
}
+
+ @Override
+ public R WarehouseOut(CombParam combParam, Long hostId) {
+ //鍒ゆ柇搴撲綅鐘舵��
+ LocMast locMast = locMastService.getOne(new LambdaQueryWrapper<LocMast>().eq(LocMast::getLocNo, combParam.getLocno()).eq(LocMast::getHostId,hostId));
+ if (Cools.isEmpty(locMast)){
+ return R.error("璇ュ簱浣嶄笉瀛樺湪");
+ }
+ if (!locMast.getLocSts().equals("F")){
+ return R.error("璇ュ簱浣嶇姸鎬佷负锛�"+locMast.getLocSts()+",绂佹鍑哄簱");
+ }
+ //鏌ヨ搴撳瓨鏁版嵁
+ List<LocDetl> locDetls = locDetlService.list(new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getZpallet, combParam.getBarcode()).eq(LocDetl::getLocNo, combParam.getLocno()).eq(LocDetl::getHostId, hostId));
+ if (Cools.isEmpty(locDetls)){
+ return R.error("鏈煡璇㈠埌搴撳瓨鏁版嵁");
+ }
+ for (LocDetl locDetl: locDetls){
+
+ }
+
+ return R.ok();
+ }
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderServiceImpl.java
index 1428c9a..5417f72 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderServiceImpl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderServiceImpl.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.asrs.common.domain.dto.DetlDto;
+import com.zy.asrs.common.domain.dto.OrderNameListDto;
import com.zy.asrs.common.domain.param.OpenOrderPakinParam;
import com.zy.asrs.common.domain.param.OpenOrderPakoutParam;
import com.zy.asrs.common.wms.entity.*;
@@ -11,6 +12,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.DateUtils;
+import com.zy.asrs.framework.common.R;
import com.zy.asrs.framework.common.SnowflakeIdWorker;
import com.zy.asrs.framework.exception.CoolException;
import org.springframework.beans.factory.annotation.Autowired;
@@ -156,4 +158,25 @@
}
}
+
+ @Override
+ public List<OrderNameListDto> selectAllorderNo(Long hostId) {
+ List<Order> list = list(new LambdaQueryWrapper<Order>().eq(Order::getHostId, hostId));
+ if (Cools.isEmpty(list)){
+ return null;
+ }
+ ArrayList<OrderNameListDto> orderNameListDtos = new ArrayList<>();
+ for (Order order :list){
+ DocType docType = docTypeService.getOne(new LambdaQueryWrapper<DocType>().eq(DocType::getDocId, order.getDocType()));
+
+ if (docType.getPakin() == 1){
+ OrderNameListDto orderNameListDto = new OrderNameListDto();
+ orderNameListDto.setOrder_no(order.getOrderNo());
+ orderNameListDtos.add(orderNameListDto);
+ }
+ }
+
+ return orderNameListDtos;
+
+ }
}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java
index 5d3bb49..508415c 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java
@@ -28,6 +28,16 @@
@Autowired
private MatService matService;
+ @RequestMapping(value = "/locDetl/forLocNoAndBarcode/auth")
+ @ManagerAuth
+ public R forLocNoAndBarcode(@RequestParam String locNo,@RequestParam String barcode) {
+ List<LocDetl> detls = locDetlService.list(new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getLocNo, locNo).eq(LocDetl::getZpallet, barcode).eq(LocDetl::getHostId, getHostId()));
+ if (Cools.isEmpty(detls)){
+ return R.error("鏈煡璇㈠埌搴撳瓨鏁版嵁");
+ }
+ return R.ok(detls);
+ }
+
@RequestMapping(value = "/locDetl/{id}/auth")
@ManagerAuth
public R get(@PathVariable("id") String id) {
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java
index c96a715..fdf52ff 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java
@@ -70,6 +70,12 @@
return mobileService.WarehouseIn(locNo,barcode,getHostId());
}
+ @RequestMapping("/pda/WarehouseOut")
+ @ManagerAuth
+ public R WarehouseOut(@RequestBody CombParam combParam){
+ return mobileService.WarehouseOut(combParam,getHostId());
+ }
+
@RequestMapping("/menu/pda/auth")
@ManagerAuth
public R menuPda(){
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
index 92226a3..9494019 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
@@ -23,6 +23,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
+import java.math.BigDecimal;
import java.util.*;
@RestController
@@ -47,6 +48,25 @@
@Autowired
private DocTypeService docTypeService;
+ @RequestMapping(value = "/order/list/orderNo")
+ public R orderListorderNo(@RequestParam String orderNo) {
+ //鏁伴噺淇敼鎴愪负瀹屾垚鏁伴噺
+ List<OrderDetl> orderDetl1=orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderNo,orderNo));
+ List<OrderDetl> orderDetls= new ArrayList<OrderDetl>();
+ for (OrderDetl o: orderDetl1) {
+ BigDecimal c1 = new BigDecimal(o.getEnableQty()).setScale(2,BigDecimal.ROUND_HALF_UP);
+ o.setAnfme(c1.doubleValue());
+ orderDetls.add(o);
+ }
+ return R.ok(orderDetls);
+ }
+
+ @RequestMapping(value = "/order/list/all")
+ @ManagerAuth
+ public R orderList() {
+ return R.ok(orderService.selectAllorderNo(getHostId()));
+ }
+
@RequestMapping(value = "/order/{id}/auth")
@ManagerAuth
public R get(@PathVariable("id") String id) {
--
Gitblit v1.9.1