From e62569856fdfb0c7c31ee88cf96628af08eabf85 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 03 十一月 2025 12:34:15 +0800
Subject: [PATCH] 标准wms2.0
---
src/main/java/com/zy/asrs/controller/MobileController.java | 290 +++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 258 insertions(+), 32 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index 0b1729b..19defbf 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -9,14 +9,13 @@
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
-import com.zy.asrs.entity.param.CombParam;
-import com.zy.asrs.entity.param.MobileAdjustParam;
+import com.zy.asrs.entity.param.*;
import com.zy.asrs.entity.result.MobileAdjustResult;
+import com.zy.asrs.mapper.ManLocDetlMapper;
import com.zy.asrs.service.*;
-import com.zy.common.model.LocDto;
-import com.zy.common.model.TaskDto;
import com.zy.common.model.WrkDto;
import com.zy.common.web.BaseController;
+import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
@@ -29,28 +28,170 @@
*/
@RestController
@RequestMapping("mobile")
-public class MobileController extends BaseController {
+public class MobileController extends BaseController {
@Autowired
private MobileService mobileService;
+
@Autowired
private LocMastService locMastService;
+
@Autowired
private LocDetlService locDetlService;
- @Autowired
- private OrderService orderService;
- @Autowired
- private OrderDetlService orderDetlService;
+
@Autowired
private DocTypeService docTypeService;
+
@Autowired
private WrkMastService wrkMastService;
+
@Autowired
private WrkDetlService wrkDetlService;
+
@Autowired
private BasDevpService basDevpService;
+
@Autowired
private PackService packService;
+
+ @Autowired
+ private ManLocDetlMapper manLocDetlMapper;
+
+ @Autowired
+ private StaDescService staDescService;
+
+ @Autowired
+ private OrderPakinService orderPakinService;
+
+ @Autowired
+ private OrderDetlPakinService orderDetlPakinService;
+
+ @Autowired
+ private OrderPakoutService orderPakoutService;
+
+
+ @Autowired
+ private OrderDetlPakoutService orderDetlPakoutService;
+
+
+ @RequestMapping("/pda/WarehouseOut/v1")
+ @ManagerAuth(memo = "骞舵澘閫斾腑鎷f枡-鍙傝�冨康鍒�")
+ public R WarehouseOutV1(@RequestBody CombParam combParam) {
+ return mobileService.WarehouseOutV1(combParam, getHostId(), getUserId());
+ }
+
+ @RequestMapping("/pda/WarehouseOutPickMerge/v1")
+ @ManagerAuth(memo = "鎷f枡閫斾腑骞舵澘")
+ public R WarehouseOutPickMergeV1(@RequestBody WarehouseOutPickMergeParam param) {
+ if (Cools.isEmpty(param, param.getLocNo(), param.getBarcode(), param.getCombMats())) {
+ return R.parse("鍙傛暟涓嶈兘涓虹┖锛�");
+ }
+ return mobileService.WarehouseOutPickMergeV1(param, getHostId(), getUserId());
+ }
+
+ @RequestMapping("/pick/in")
+ @ManagerAuth(memo = "骞舵澘鍏ュ簱")
+ public R pickConfirm(@RequestBody PickConfirmParam param) {
+
+ if (Cools.isEmpty(param, param.getList(), param.getLocNo(), param.getStaNo())) {
+ return R.parse("鍙傛暟涓嶅畬鏁�");
+ }
+ return mobileService.pickConfirm(param, getUserId());
+ }
+
+ @RequestMapping("/barcode/list/all")
+ @ManagerAuth(memo = "骞舵澘鍏ュ簱閫斾腑鎷f枡鍑哄簱鑾峰彇浠诲姟淇℃伅")
+ public R orderOutListOrder(@RequestParam(required = false) String barcode) {
+ return mobileService.orderOutListOrder(barcode, getUserId());
+ }
+
+ @RequestMapping("/barcode/list/pick")
+ @ManagerAuth(memo = "鎷f枡鍏ュ簱閫斾腑骞舵澘鑾峰彇浠诲姟淇℃伅")
+ public R orderOutListOrderPick(@RequestParam(required = false) String barcode) {
+ return mobileService.orderOutListOrderPick(barcode, getUserId());
+ }
+
+ @RequestMapping("/loc/f/list")
+ @ManagerAuth(memo = "鑾峰彇鍦ㄥ簱搴撲綅")
+ public R locNoF(@RequestParam(required = false) String locNo) {
+ Wrapper<LocMast> wrapper = new EntityWrapper<LocMast>()
+ .eq("loc_sts", "F");
+ if (!Cools.isEmpty(locNo)) {
+ wrapper.like("loc_no", locNo);
+ }
+ List<LocMast> list = locMastService.selectList(wrapper);
+ return R.ok().add(list);
+ }
+
+ @RequestMapping("/pick/sta/list")
+ @ManagerAuth(memo = "鑾峰彇骞舵澘绔�")
+ public R pickSta() {
+ List<StaDesc> list = staDescService.selectList(new EntityWrapper<StaDesc>()
+ .eq("type_no", 104));
+ return R.ok().add(list);
+ }
+
+ @RequestMapping("/pick/mat/list")
+ @ManagerAuth(memo = "鑾峰彇骞舵澘鐗╂枡")
+ public R pickMats(@RequestParam(required = false) String matnr, @RequestParam(required = false) String orderNo) {
+ return mobileService.pickMats(matnr, orderNo);
+ }
+
+ @PostMapping("/scan/order/mats")
+ @ManagerAuth(memo = "鎵爜鑾峰彇缁勬墭鐗╂枡")
+ public R scanMats(@RequestBody PakinMatsByQRParams params) {
+ if (Objects.isNull(params)) {
+ return R.parse("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ return mobileService.getMatsByQRcode(params);
+ }
+
+ // 鍟嗗搧涓婃灦
+ @RequestMapping("/mat/onSale/auth")
+ @ManagerAuth
+ public R matOnSale(@RequestBody CombParam combParam) {
+ mobileService.onSale(combParam);
+ return R.ok("涓婃灦鎴愬姛");
+ }
+
+ // 鍟嗗搧涓嬫灦
+ @RequestMapping("/mat/offSale/auth")
+ //@ManagerAuth
+ public R matOffSale(@RequestBody OffSaleParam offSaleParam) {
+ mobileService.offSale(offSaleParam);
+ return R.ok("涓嬫灦鎴愬姛");
+ }
+
+
+ @GetMapping("/cache/locs")
+ @ManagerAuth
+ @ApiOperation("鑾峰彇缂撳瓨鍖哄簱浣嶄俊鎭�")
+ public R getCacheLocs() {
+ return mobileService.getCacheLocs();
+ }
+
+
+ @PostMapping("/cache/agv/call")
+ @ApiOperation("鍛煎彨AGV鎼繍")
+ @ManagerAuth
+ public R callAgvMove(@RequestBody AgvCallParams params) {
+ if (Objects.isNull(params)) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ return mobileService.callAgvMove(params, getUserId());
+ }
+
+
+ @PostMapping("/cache/out/call")
+ @ApiOperation("鍛煎彨AGV鎼繍")
+ @ManagerAuth
+ public R OutCallAgv(@RequestBody AgvCallParams params) {
+ if (Objects.isNull(params)) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ return mobileService.OutCallAgv(params, getUserId());
+ }
+
// 缁勬墭 ----------------------------------------------------------------------------------------------------
@@ -58,37 +199,81 @@
* 鏍规嵁鍗曞彿妫�绱㈠崟鎹暟鎹�
* http://localhost:8081/jkwms/mobile/order/serach/orderNo/auth?orderNo=123123
*/
+// @RequestMapping("/order/search/orderNo/auth")
+// @ManagerAuth
+// public R orderSearchByBarcode(@RequestParam String orderNo){
+// Order order = orderService.selectByNo(orderNo);
+// if (order == null) {
+// return R.ok();
+// }
+// DocType docType = docTypeService.selectById(order.getDocType());
+// if (docType.getPakin() == null || docType.getPakin() != 1) {
+// return R.ok();
+// }
+// if (order.getSettle() > 2) {
+// return R.ok();
+// }
+// List<OrderDetl> orderDetls = orderService.selectWorkingDetls(order.getId());
+// if (Cools.isEmpty(orderDetls)) {
+// return R.ok();
+// }
+// return R.ok().add(orderDetls);
+// }
@RequestMapping("/order/search/orderNo/auth")
@ManagerAuth
- public R orderSearchByBarcode(@RequestParam String orderNo){
- Order order = orderService.selectByNo(orderNo);
- if (order == null) {
+ public R orderSearchByBarcode(@RequestParam String orderNo) {
+ if (Cools.isEmpty(orderNo)) {
+ orderNo = null;
+ }
+ List<OrderPakin> orders = orderPakinService.selectorderNoL(orderNo);
+ if (Cools.isEmpty(orders)) {
return R.ok();
}
- DocType docType = docTypeService.selectById(order.getDocType());
- if (docType.getPakin() == null || docType.getPakin() != 1) {
- return R.ok();
+ LinkedList<CombParam> combParams = new LinkedList<>();
+ if (!Cools.isEmpty(orders)) {
+ for (OrderPakin order : orders) {
+ CombParam combParam = new CombParam();
+ if (order == null) {
+ continue;
+ }
+ DocType docType = docTypeService.selectById(order.getDocType());
+ if (docType.getPakin() == null || docType.getPakin() != 1) {
+ continue;
+ }
+ if (order.getSettle() > 2) {
+ continue;
+ }
+ List<OrderDetlPakin> orderDetls = orderDetlPakinService.selectByOrderId(order.getId());
+ if (!Cools.isEmpty(orderDetls)) {
+ LinkedList<CombParam.CombMat> combMats = new LinkedList<>();
+ for (OrderDetlPakin orderDetl : orderDetls) {
+ CombParam.CombMat combMat = new CombParam.CombMat();
+ combMat.setMatnr(orderDetl.getMatnr());
+ combMat.setBatch(orderDetl.getBatch());
+ combMat.setAnfme(orderDetl.getAnfme() - orderDetl.getWorkQty());
+ combMat.setMaktx(orderDetl.getMaktx());
+ combMat.setSpecs(orderDetl.getSpecs());
+ combMats.add(combMat);
+ }
+ combParam.setCombMats(combMats);
+ }
+ combParam.setOrderNo(order.getOrderNo());
+ combParams.add(combParam);
+ }
}
- if (order.getSettle() > 2) {
- return R.ok();
- }
- List<OrderDetl> orderDetls = orderService.selectWorkingDetls(order.getId());
- if (Cools.isEmpty(orderDetls)) {
- return R.ok();
- }
- return R.ok().add(orderDetls);
+ return R.ok().add(combParams);
}
@RequestMapping("/comb/auth")
@ManagerAuth(memo = "缁勬墭")
- public R comb(@RequestBody CombParam combParam){
+ public R comb(@RequestBody CombParam combParam) {
mobileService.comb(combParam, getUserId());
return R.ok("缁勬墭鎴愬姛");
}
@RequestMapping("/pack/get/auth")
@ManagerAuth
- public R packGet(@RequestParam String barcode){
+ public R packGet(@RequestParam String barcode) {
Pack pack = packService.selectByBarcode(barcode);
if (pack == null) {
return R.ok();
@@ -101,7 +286,7 @@
@RequestMapping("/pack/comb/auth")
@ManagerAuth(memo = "涓嬬嚎缁勬墭")
- public R packComb(@RequestBody CombParam combParam){
+ public R packComb(@RequestBody CombParam combParam) {
mobileService.packComb(combParam, getUserId());
return R.ok("缁勬墭鎴愬姛");
}
@@ -114,7 +299,7 @@
@Deprecated
public R pakoutQuery(@RequestParam(required = false) String barcode,
@RequestParam(required = false) Integer staNo,
- @RequestParam(required = false) String matnr){
+ @RequestParam(required = false) String matnr) {
if (Cools.isEmpty(barcode) && Cools.isEmpty(matnr)) {
return R.ok();
}
@@ -138,7 +323,7 @@
*/
@RequestMapping("/pakout/confirm/barcode/auth")
@ManagerAuth
- public R pakoutQueryByBarcode(@RequestParam(required = false) String barcode){
+ public R pakoutQueryByBarcode(@RequestParam(required = false) String barcode) {
if (Cools.isEmpty(barcode)) {
return R.ok();
}
@@ -153,12 +338,53 @@
}
/**
+ * 鍑哄簱纭 - 鎵揣鐗� 骞垮痉瀹滅鐗�
+ * 1.鍏ㄦ澘 杩斿洖 101
+ * 2.鎷f枡 杩斿洖 103
+ */
+ @RequestMapping("/pakout/confirm/goods/auth") //寰呭畬鍠� 鍘熷洜锛堝鎴锋湭缁欏嚭璇︾粏淇℃伅锛�
+ @ManagerAuth
+ public R pakoutQueryByGoods(@RequestBody GDYKConfirmGoodsParam combParam) {
+ if (Cools.isEmpty(combParam)) {
+ return R.ok();
+ }
+ List<OrderPakout> orders = orderPakoutService.selectorderNoL(combParam.getOrderNo());
+ List<OrderDetlPakout> orderDetlList = orderDetlPakoutService.selectList(new EntityWrapper<OrderDetlPakout>().eq("matnr", combParam.getMatnr()).eq("batch", combParam.getBatch()).eq("order_no", combParam.getOrderNo()));
+ OrderDetlPakout orderDetl = null;
+ for (OrderDetlPakout orderDetl1 : orderDetlList) {
+ if (combParam.getMatnr().equals(orderDetl1.getMatnr()) && combParam.getBatch().equals(orderDetl1.getBatch())) {
+ orderDetl = orderDetl1;
+ break;
+ }
+ }
+ if (Cools.isEmpty(orderDetl)) {
+ return R.error("鏈煡鍒版暟鎹�");
+ }
+ if (!orderDetl.getQty$().equals("宸插畬鎴�")) {
+ return R.error("浠诲姟鏈畬鎴�");
+ }
+ orderDetl.setSource(1);
+ orderDetlPakoutService.updateById(orderDetl);
+ return R.ok();
+ }
+
+ // 鏍规嵁搴撲綅鐮佸拰鍟嗗搧鐮佹悳绱㈠晢鍝�
+ @RequestMapping("/mat/find/auth")
+ public R find(@RequestParam(required = false) String locNo
+ , @RequestParam(required = false) String matnr) {
+ //List<ManLocDetl> manLocDetls = manLocDetlMapper.selectItem0(locNo, matnr);
+ ManLocDetl manLocDetl = manLocDetlMapper.selectLocNo0(locNo, matnr);
+ return R.ok(manLocDetl);
+ //return R.ok(manLocDetlMapper.selectItem0(locNo, matnr));
+ }
+
+ /**
* 鍑哄簱纭 - 鎷f枡鍑哄簱 - 閫夋嫨鍏蜂綋鏉$爜鍟嗗搧
*/
@RequestMapping("/pakout/confirm/pick/auth")
@ManagerAuth
public R pakoutQueryByBarcode(@RequestParam(required = false) Integer wrkNo
- , @RequestParam(required = false) String matnr){
+ , @RequestParam(required = false) String matnr) {
if (Cools.isEmpty(wrkNo)) {
return R.ok();
}
@@ -293,7 +519,7 @@
@RequestMapping("/adjust/auth")
@ManagerAuth(memo = "鐩樼偣")
- public R adjust(@RequestBody MobileAdjustParam combParam){
+ public R adjust(@RequestBody MobileAdjustParam combParam) {
mobileService.adjust(combParam, getUserId());
return R.ok("鐩樼偣鎴愬姛");
}
@@ -301,10 +527,10 @@
@PostMapping("/order/out/pakout/auth")
@ManagerAuth(memo = "璁㈠崟鍑哄簱")
public synchronized R pakoutByOrder(@RequestBody JSONObject param) {
- if(!param.containsKey("staNo") || !param.containsKey("orderNo")){
+ if (!param.containsKey("staNo") || !param.containsKey("orderNo")) {
return R.parse(BaseRes.PARAM);
}
- mobileService.pakoutByOrder(param,getUserId());
+ mobileService.pakoutByOrder(param, getUserId());
return R.ok("鍑哄簱鎴愬姛");
}
--
Gitblit v1.9.1