From 0916bb4ea987c0599b6af6bb8dd251a071770e05 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期四, 23 十月 2025 14:32:15 +0800
Subject: [PATCH] 通用下拉选择框值从视图获取
---
src/main/java/com/zy/asrs/controller/MobileController.java | 608 +++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 546 insertions(+), 62 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index d5408bd..8393fff 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -1,25 +1,30 @@
package com.zy.asrs.controller;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.BaseRes;
import com.core.common.Cools;
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.MobileLocDetlVo;
+import com.zy.asrs.utils.SaasUtils;
+import com.zy.common.model.WrkDto;
import com.zy.common.web.BaseController;
+import com.zy.system.entity.User;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
-import java.util.ArrayList;
-import java.util.List;
+import java.math.BigDecimal;
+import java.text.ParseException;
+import java.util.*;
/**
* 绉诲姩绔帴鍙f帶鍒跺櫒
@@ -27,7 +32,8 @@
*/
@RestController
@RequestMapping("mobile")
-public class MobileController extends BaseController {
+@Slf4j
+public class MobileController extends BaseController {
@Autowired
private MobileService mobileService;
@@ -38,6 +44,8 @@
@Autowired
private OrderService orderService;
@Autowired
+ private OrderDetlService orderDetlService;
+ @Autowired
private DocTypeService docTypeService;
@Autowired
private WrkMastService wrkMastService;
@@ -47,6 +55,32 @@
private BasDevpService basDevpService;
@Autowired
private PackService packService;
+ @Autowired
+ private ManLocDetlMapper manLocDetlMapper;
+ @Autowired
+ private PlaService plaService;
+ @Autowired
+ private NodeService nodeService;
+ @Autowired
+ private OpenService openService;
+
+
+ // 鍟嗗搧涓婃灦
+ @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("涓嬫灦鎴愬姛");
+ }
+
// 缁勬墭 ----------------------------------------------------------------------------------------------------
@@ -56,7 +90,7 @@
*/
@RequestMapping("/order/search/orderNo/auth")
@ManagerAuth
- public R orderSearchByBarcode(@RequestParam String orderNo){
+ public R orderSearchByBarcode(@RequestParam String orderNo) {
Order order = orderService.selectByNo(orderNo);
if (order == null) {
return R.ok();
@@ -69,24 +103,29 @@
return R.ok();
}
List<OrderDetl> orderDetls = orderService.selectWorkingDetls(order.getId());
- if (Cools.isEmpty(orderDetls)) {
+ ArrayList<OrderDetl> orderDetls2 = new ArrayList<>();
+ for (OrderDetl orderDetl : orderDetls) {
+ orderDetl.setAnfme(new BigDecimal(orderDetl.getAnfme()).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+ orderDetl.setWorkQty(new BigDecimal(orderDetl.getWorkQty()).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+ orderDetl.setQty(new BigDecimal(orderDetl.getQty()).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+ orderDetls2.add(orderDetl);
+ }
+ if (Cools.isEmpty(orderDetls) || Cools.isEmpty(orderDetls2)) {
return R.ok();
}
- return R.ok().add(orderDetls);
+ return R.ok().add(orderDetls2);
}
-
@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();
@@ -98,10 +137,179 @@
}
@RequestMapping("/pack/comb/auth")
- @ManagerAuth(memo = "缁勬墭")
- public R packComb(@RequestBody CombParam combParam){
- mobileService.comb(combParam, getUserId());
+ @ManagerAuth(memo = "涓嬬嚎缁勬墭")
+ public R packComb(@RequestBody CombParam combParam) {
+// mobileService.packComb(combParam, getUserId());
return R.ok("缁勬墭鎴愬姛");
+ }
+
+
+ // 鍑哄簱 ---------------------------------------------------------------------------------------------------
+
+ @RequestMapping("/pakout/query/auth")
+ @ManagerAuth
+ @Deprecated
+ public R pakoutQuery(@RequestParam(required = false) String barcode,
+ @RequestParam(required = false) Integer staNo,
+ @RequestParam(required = false) String matnr) {
+ if (Cools.isEmpty(barcode) && Cools.isEmpty(matnr)) {
+ return R.ok();
+ }
+ if (!Cools.isEmpty(barcode)) {
+ List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("zpallet", barcode));
+ return R.ok().add(wrkDetls);
+ }
+ if (!Cools.isEmpty(matnr)) {
+ if (!Cools.isEmpty(staNo)) {
+ List<WrkDetl> wrkDetls = wrkDetlService.selectPakoutQuery(staNo, matnr);
+ return R.ok().add(wrkDetls);
+ }
+ }
+ return R.ok();
+ }
+
+ /**
+ * 鍑哄簱纭 - 鎵墭鐩樼爜
+ * 1.鍏ㄦ澘 杩斿洖 101
+ * 2.鎷f枡 杩斿洖 103
+ */
+ @RequestMapping("/pakout/confirm/barcode/auth")
+ @ManagerAuth
+ public R pakoutQueryByBarcode(@RequestParam(required = false) String barcode) {
+ if (Cools.isEmpty(barcode)) {
+ return R.ok();
+ }
+ WrkMast wrkMast = wrkMastService.selectByBarcode(barcode);
+ if (wrkMast != null) {
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ // 鍘婚櫎宸插嚭搴撶‘璁ょ殑鏄庣粏
+ wrkDetls.removeIf(wrkDetl -> wrkDetl.getInspect() != null && wrkDetl.getInspect() != 0);
+ return R.ok().add(Cools.add("wrkNo", wrkMast.getWrkNo()).add("ioType", wrkMast.getIoType()).add("list", wrkDetls));
+ }
+ 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) {
+ if (Cools.isEmpty(wrkNo)) {
+ return R.ok();
+ }
+ if (Cools.isEmpty(matnr)) {
+ return R.ok();
+ }
+ WrkMast wrkMast = wrkMastService.selectById(wrkNo);
+ if (wrkMast == null) {
+ return R.ok();
+ }
+ String orderNo = null;
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ for (WrkDetl wrkDetl : wrkDetls) {
+ if (Cools.isEmpty(orderNo)) {
+ orderNo = wrkDetl.getOrderNo();
+ }
+ if ((wrkDetl.getMatnr() + "-" + wrkDetl.getBatch()).equals(matnr)) {
+ return R.ok().add(wrkDetl);
+ }
+ }
+ // 鏇挎崲 鏄庣粏
+ List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()));
+ for (LocDetl locDetl : locDetls) {
+ if ((locDetl.getMatnr() + "-" + locDetl.getBatch()).equals(matnr)) {
+ WrkDetl wrkDetl = new WrkDetl();
+ wrkDetl.sync(locDetl);
+ wrkDetl.setOrderNo(orderNo);
+ wrkDetl.setIoTime(wrkMast.getIoTime());
+ wrkDetl.setWrkNo(wrkNo);
+ return R.ok().add(wrkDetl);
+ }
+ }
+ return R.error("绯荤粺閿欒锛屾潯鐮佷笉瀛樺湪");
+ }
+
+
+ @RequestMapping("/pakout/confirm/auth")
+ @ManagerAuth
+ @Transactional
+ public R pakoutConfirm(@RequestBody List<WrkDetl> list) {
+ if (Cools.isEmpty(list)) {
+ return R.ok();
+ }
+ Set<Integer> wrkNos = new HashSet<>();
+ List<WrkDto> dtos = new ArrayList<>();
+ for (WrkDetl wrkDetl : list) {
+ if (wrkNos.contains(wrkDetl.getWrkNo())) {
+ for (WrkDto dto : dtos) {
+ if (dto.getWrkNo().equals(wrkDetl.getWrkNo())) {
+ dto.getWrkDetls().add(wrkDetl);
+ break;
+ }
+ }
+ } else {
+ wrkNos.add(wrkDetl.getWrkNo());
+ dtos.add(new WrkDto(wrkDetl.getWrkNo(), wrkDetl));
+ }
+ }
+
+ for (WrkDto dto : dtos) {
+ WrkMast wrkMast = wrkMastService.selectById(dto.getWrkNo());
+ if (wrkMast != null) {
+ // 101
+ if (wrkMast.getIoType() == 101) {
+ for (WrkDetl wrkDetl : dto.getWrkDetls()) {
+ wrkDetlService.updateInspect(wrkDetl.getWrkNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ }
+ }
+ // 103
+ if (wrkMast.getIoType() == 103) {
+ if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) {
+ throw new CoolException("鎷f枡鍑哄簱纭澶辫触");
+ }
+ for (WrkDetl wrkDetl : dto.getWrkDetls()) {
+ wrkDetl.setInspect(1);
+ if (!wrkDetlService.insert(wrkDetl)) {
+ throw new CoolException("鎷f枡鍑哄簱纭澶辫触");
+ }
+ }
+ }
+ }
+ }
+
+ for (Integer wrkNo : wrkNos) {
+ WrkMast wrkMast = wrkMastService.selectById(wrkNo);
+ if (wrkMast.getWrkSts() == 14 && (Cools.isEmpty(wrkMast.getInvWh()) || wrkMast.getInvWh().equals("N"))) {
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkNo);
+ boolean complete = true;
+ for (WrkDetl wrkDetl : wrkDetls) {
+ if (wrkDetl.getInspect() == null || wrkDetl.getInspect() == 0) {
+ complete = false;
+ break;
+ }
+ }
+ if (complete) {
+ wrkMast.setInvWh("Y");
+ wrkMast.setModiTime(new Date());
+ if (!wrkMastService.updateById(wrkMast)) {
+ throw new CoolException("淇敼宸ヤ綔妗�" + wrkNo + "澶辫触");
+ }
+ }
+ }
+ }
+ return R.ok("瀹屾垚纭");
}
@@ -132,51 +340,327 @@
@RequestMapping("/adjust/auth")
@ManagerAuth(memo = "鐩樼偣")
- public R adjust(@RequestBody MobileAdjustParam combParam){
+ public R adjust(@RequestBody MobileAdjustParam combParam) {
mobileService.adjust(combParam, getUserId());
return R.ok("鐩樼偣鎴愬姛");
}
-
- /**
- * 鏍规嵁搴撲綅鍙锋煡鎵惧簱瀛樻槑缁�
- */
- @RequestMapping("/locDetl")
- @ManagerAuth
- public R getLocDetl(@RequestParam(required = false)String locNo,
- @RequestParam(required = false)String matNo){
- if (!Cools.isEmpty(locNo)) {
- LocMast locMast = locMastService.selectById(locNo);
- if (null == locMast || !"F".equals(locMast.getLocSts())) {
- return R.parse(BaseRes.EMPTY);
- }
- List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>()
- .eq("loc_no", locNo).orderBy("appe_time", false));
- List<MobileLocDetlVo> res = new ArrayList<>();
- locDetls.forEach(locDetl -> {
- MobileLocDetlVo vo = new MobileLocDetlVo();
- vo.setLocNo(locDetl.getLocNo());
- vo.setMatnr(locDetl.getMatnr());
- vo.setMaktx(locDetl.getMaktx());
- vo.setCount(locDetl.getAnfme());
- res.add(vo);
- });
- return R.ok().add(res);
- }
- if (!Cools.isEmpty(matNo)) {
- List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>()
- .eq("matnr", matNo).orderBy("appe_time", false));
- List<MobileLocDetlVo> res = new ArrayList<>();
- locDetls.forEach(locDetl -> {
- MobileLocDetlVo vo = new MobileLocDetlVo();
- vo.setLocNo(locDetl.getLocNo());
- vo.setMatnr(locDetl.getMatnr());
- vo.setMaktx(locDetl.getMaktx());
- vo.setCount(locDetl.getAnfme());
- res.add(vo);
- });
- return R.ok().add(res);
- }
- return R.parse(BaseRes.PARAM);
+ @RequestMapping("/adjustNew/auth")
+ @ManagerAuth(memo = "pda鐩樼偣")
+ public R adjustNew(@RequestBody MobileAdjustNewParam combParam) {
+ mobileService.adjustNew(combParam, getUserId());
+ return R.ok("鐩樼偣鎴愬姛");
}
+
+ @PostMapping("/order/out/pakout/auth")
+ @ManagerAuth(memo = "璁㈠崟鍑哄簱")
+ public synchronized R pakoutByOrder(@RequestBody JSONObject param) {
+ if (!param.containsKey("staNo") || !param.containsKey("orderNo")) {
+ return R.parse(BaseRes.PARAM);
+ }
+ mobileService.pakoutByOrder(param, getUserId());
+ return R.ok("鍑哄簱鎴愬姛");
+ }
+
+ //骞冲簱pda涓婃灦
+ @RequestMapping("/manDetl/in")
+ @ManagerAuth(memo = "璁㈠崟涓婃灦")
+ public R manDetlAdd(@RequestBody JSONObject json) {
+ if (json == null) {
+ return R.error("浼犲叆鏁版嵁涓虹┖");
+ }
+ return mobileService.manDetlIn(json, getUser());
+ }
+
+ //骞冲簱pda涓嬫灦
+ @RequestMapping("/manDetl/out")
+ @ManagerAuth(memo = "璁㈠崟涓嬫灦")
+ public R manDetlDelete(@RequestBody JSONObject json) {
+ if (json == null) {
+ return R.error("浼犲叆鏁版嵁涓虹┖");
+ }
+ return mobileService.manDetlOut(json, getUser());
+ }
+
+ @RequestMapping("/manDetl/in/barcode")
+ @ManagerAuth(memo = "璁㈠崟涓婃灦(鎵樼洏鐮�)")
+ public R manDetlAddbarcode(@RequestBody JSONObject json) {
+ if (json == null) {
+ return R.error("浼犲叆鏁版嵁涓虹┖");
+ }
+ return mobileService.manDetlInBarcode(json, getUser());
+ }
+
+ @RequestMapping("/manDetl/in/origin")
+ @ManagerAuth(memo = "骞冲簱涓婃灦")
+ public R manDetlIn(@RequestBody JSONObject json) {
+ if (json == null) {
+ return R.error("浼犲叆鏁版嵁涓虹┖");
+ }
+ return mobileService.manDetlOrigin(json, getUser());
+ }
+
+ @RequestMapping("/manDetl/in/no/origin")
+ @ManagerAuth(memo = "骞冲簱涓婃灦")
+ public R manDetlInNo(@RequestBody JSONObject json) {
+ if (json == null) {
+ return R.error("浼犲叆鏁版嵁涓虹┖");
+ }
+ return mobileService.manDetlOrigInNo(json, getUser());
+ }
+
+// @RequestMapping("/manDetl/out/origin")
+// @ManagerAuth(memo = "骞冲簱涓嬫灦")
+// public R manDetlout(@RequestBody JSONObject json){
+// if (json == null){
+// return R.error("浼犲叆鏁版嵁涓虹┖");
+// }
+// return mobileService.manDetlOriginOut(json,getUser());
+// }
+
+ @RequestMapping("/manDetl/out/origin")
+ @ManagerAuth(memo = "骞冲簱涓嬫灦")
+ public R manDetlout2(@RequestBody JSONObject json) {
+ if (json == null) {
+ return R.error("浼犲叆鏁版嵁涓虹┖");
+ }
+ return mobileService.manDetlOriginOut(json, getUser());
+ }
+
+// @RequestMapping("/plaDetl/packin/v1")
+// //@ManagerAuth(memo="pla鍏ュ簱")
+// @Transactional
+// public R plaPackIn(@RequestBody JSONObject json) throws ParseException {
+// String locNo = json.get("locNo").toString();
+// JSONArray jsonArray = JSONArray.parseArray(json.getJSONArray("pla").toJSONString());
+// //鍒ゆ柇姝ゆ鍏ュ簱鏄惁杈惧埌搴撳瓨涓婇檺
+// if(!mobileService.checkMaximum(locNo,jsonArray.size())){
+// return R.error("褰撳墠鍏ュ簱鍖呮暟宸茶秴杩囧簱瀛樹笂闄�");
+// }
+// for (Object o : jsonArray){
+// JSONObject jsonObject = (JSONObject)o;
+// String brand = jsonObject.get("brand").toString();
+// String batch = jsonObject.get("batch").toString();
+// Integer packageNo = Integer.parseInt(jsonObject.get("packageNo").toString());
+// if(Cools.isEmpty(locNo) || Cools.isEmpty(batch) || Cools.isEmpty(packageNo)){
+// return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱");
+// }
+// //娴嬭瘯
+// if(true){
+// User user = new User();
+// user.setUsername("test");
+// mobileService.plaPakin(brand,locNo,batch,packageNo,user);
+// }
+// }
+// //鍏ュ簱鎴愬姛鍚庝笂鎶RP
+// //openService.pakinReportErp(json);
+// return R.ok("鍏ュ簱鎴愬姛");
+// }
+
+ @RequestMapping("/plaDetl/packin/v1")
+ @ManagerAuth(memo = "pla鍏ュ簱")
+ @Transactional
+ public R plaPackInTestErp(@RequestBody JSONObject json) throws ParseException {
+ log.info("璇锋眰鍙傛暟锛歿}", json);
+ String locNo = json.get("locNo").toString();
+ JSONArray jsonArray = JSONArray.parseArray(json.getJSONArray("pla").toJSONString());
+ //鍒ゆ柇姝ゆ鍏ュ簱鏄惁杈惧埌搴撳瓨涓婇檺
+ if (!mobileService.checkMaximum(locNo, jsonArray.size())) {
+ return R.error("褰撳墠鍏ュ簱鍖呮暟宸茶秴杩囧簱瀛樹笂闄�");
+ }
+ for (Object o : jsonArray) {
+ JSONObject jsonObject = (JSONObject) o;
+ String brand = jsonObject.get("brand").toString();
+ String batch = jsonObject.get("batch").toString();
+ Integer packageNo = Integer.parseInt(jsonObject.get("packageNo").toString());
+ if (Cools.isEmpty(locNo) || Cools.isEmpty(batch) || Cools.isEmpty(packageNo)) {
+ return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱");
+ }
+ //娴嬭瘯
+ if (false) {
+ User user = new User();
+ user.setUsername("test");
+ mobileService.plaPakin(brand, locNo, batch, packageNo, user);
+ json.put("user", user.getUsername());
+ } else {
+ mobileService.plaPakin(brand, locNo, batch, packageNo, getUser());
+ json.put("user", getUser().getUsername());
+ }
+ }
+ //鍏ュ簱鎴愬姛鍚庝笂鎶RP
+ openService.pakinReportErp(json);
+ return R.ok("鍏ュ簱鎴愬姛");
+ }
+
+ @RequestMapping("/plaDetl/packout1/v1")
+ @ManagerAuth(memo="pla鍑哄簱packout1")
+ public R plaPackOut1(@RequestBody JSONObject json) {
+ String locNo = json.get("locNo").toString();
+ String brand = json.get("brand").toString();
+ String batch = json.get("batch").toString();
+ Integer packageNo = Integer.parseInt(json.get("packageNo").toString());
+ String orderNo = json.get("orderNo").toString();
+ String orderDetlId = json.get("orderDetlId").toString();
+ String wrkNo = json.get("wrkNo").toString();
+ Double anfme = Double.parseDouble(json.get("anfme").toString());
+ boolean isReplace = Cools.eq(json.get("replace").toString(), "y");
+
+ if (Cools.isEmpty(locNo) || Cools.isEmpty(batch) || Cools.isEmpty(packageNo)) {
+ return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱");
+ }
+
+ mobileService.plaPakout(brand, locNo, batch, packageNo, orderNo, orderDetlId, wrkNo, anfme, isReplace);
+ return R.ok();
+ }
+
+ @RequestMapping("/plaDetl/packout/v1")
+ @ManagerAuth(memo="pla鍑哄簱v1")
+ public R plaPackOut(@RequestBody JSONObject json) {
+ String locNo = json.get("locNo").toString();
+ String brand = json.get("brand").toString();
+ String batch = json.get("batch").toString();
+ Integer packageNo = Integer.parseInt(json.get("packageNo").toString());
+ String orderNo = json.get("orderNo").toString();
+ String plaQtyId = json.get("orderDetlId").toString();
+ String wrkNo = json.get("wrkNo").toString();
+ Double anfme = Double.parseDouble(json.get("anfme").toString());
+ boolean isReplace = !Cools.isEmpty(json.get("replace")) && Cools.eq(json.get("replace").toString(), "y");
+
+ if (Cools.isEmpty(locNo) || Cools.isEmpty(batch) || Cools.isEmpty(packageNo)) {
+ return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱");
+ }
+
+ mobileService.plaPakout(brand, locNo, batch, packageNo, orderNo, plaQtyId, wrkNo, anfme, isReplace);
+ return R.ok();
+ }
+
+ /*
+ 鏃犺鍗曟嫞璐у嚭搴�
+ */
+ @RequestMapping("/plaDetl/packout/noOrder/v1")
+ @ManagerAuth(memo="pla鎵嬪姩鍑哄簱")
+ public R plaPackOutWithoutOrder(@RequestBody List<PlaParam> params) {
+
+ for (PlaParam param : params) {
+ mobileService.plaPackOutWithoutOrder(param.getBrand(), param.getBatch(), param.getPackageNo(), param.getAnfme());
+ }
+
+ return R.ok();
+ }
+
+
+ @RequestMapping("/plaDetl/check/v1")
+ public R plaDetlCheck(@RequestBody JSONObject json) {
+ String brand = json.get("brand").toString();
+ String batch = json.get("batch").toString();
+ Integer packageNo = Integer.parseInt(json.get("packageNo").toString());
+ Integer type = Integer.parseInt(json.get("type").toString());
+ if (Cools.isEmpty(batch) || Cools.isEmpty(packageNo)) {
+ return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱");
+ }
+
+ Pla pla = plaService.selectByBatchAndPackageNo(batch, packageNo, brand);
+ if ((Cools.isEmpty(pla))) {
+ return R.error("璇ュ寘鐗╂枡鏈綍鍏ワ紝鏃犳硶鏌ヨ鍒扮浉鍏充俊鎭�").add(pla);
+ }
+ if (!(Cools.eq(pla.getStatus(), GlobleParameter.PLA_STATUS_0) || Cools.eq(pla.getStatus(), GlobleParameter.PLA_STATUS_00)) && type != 2) {
+ return R.error("璇ュ寘鐗╂枡鐨勭姸鎬佷负" + pla.getStatus() + "锛屾棤娉曡繘琛屽叆搴撴搷浣�").add(pla);
+ }
+ return R.ok(pla);
+ }
+
+ /*
+ pla绉诲簱
+ */
+ @RequestMapping("/plaDetl/move/v1")
+ @ManagerAuth(memo = "move" )
+ public R plaDetlMove(@RequestBody PlaMoveParam param) {
+
+ String locNo = param.getLocNo();
+
+ Node node = nodeService.selectByUuid(locNo);
+ if (Cools.isEmpty(node)) {
+ throw new CoolException("搴撲綅淇℃伅涓嶆纭�");
+ }
+
+ List<PlaMoveParam.PlaMove> plas = param.getPlas();
+ //鍒ゆ柇姝ゆ鍏ュ簱鏄惁杈惧埌搴撳瓨涓婇檺
+ if (!mobileService.checkMaximum(locNo, plas.size())) {
+ return R.error("褰撳墠鍏ュ簱鍖呮暟宸茶秴杩囧簱瀛樹笂闄�");
+ }
+
+ param.getPlas().forEach(p -> {
+ String brand = p.getBrand();
+ String batch = p.getBatch();
+ Integer packageNo = p.getPackageNo();
+ if (Cools.isEmpty(batch) || Cools.isEmpty(packageNo)) {
+ throw new CoolException("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱");
+ }
+ Pla pla = plaService.selectByBatchAndPackageNo(batch, packageNo, brand);
+ if ((Cools.isEmpty(pla))) {
+ throw new CoolException("璇ュ寘鐗╂枡鏈綍鍏ワ紝鏃犳硶鏌ヨ鍒扮浉鍏充俊鎭�");
+ }
+ if (!Cools.eq(pla.getStatus(), GlobleParameter.PLA_STATUS_1) && !Cools.eq(pla.getStatus(), GlobleParameter.PLA_STATUS_3)) {
+ throw new CoolException("璇ュ寘鐗╂枡鐨勭姸鎬佷负" + pla.getStatus() + "锛屾棤娉曡繘琛屽叆搴撴搷浣�");
+ }
+
+ String sourceLocNo = pla.getLocNo();
+ pla.setLocNo(locNo);
+ pla.setStash(node.getParentName());
+ pla.setModifyTime(new Date());
+
+ plaService.updateById(pla);
+ SaasUtils.insertLog(2, sourceLocNo, pla.getBrand(), pla.getWeightAnfme(), getUser().getUsername(),
+ locNo, pla.getBatch(), pla.getPackageNo(), pla.getOwner(), pla.getWorkshop(), null);
+
+ });
+
+ return R.ok("绉诲簱鎴愬姛");
+ }
+
+ /*
+ 鏍规嵁鎷h揣鍗曞嚭搴� ------> 鑾峰彇鎷h揣鍗�
+ */
+ @RequestMapping("/manpakout/check/v1")
+ public R getManPakout(@RequestBody JSONObject json) {
+
+ String orderNo = json.get("orderNo").toString();
+
+ return R.ok(mobileService.getManPakoutByOrderNo(orderNo));
+ }
+
+ @RequestMapping("/manpakout/pakout/v1")
+ public R pakout(@RequestBody JSONObject json) {
+
+ String batch = json.get("batch").toString();
+ Integer packageNo = Integer.parseInt(json.get("packageNo").toString());
+ String orderNo = json.get("orderNo").toString();
+
+
+ return R.ok();
+ }
+
+ @RequestMapping("select/mat/information/v1")
+ @ManagerAuth
+ public R pdaSelectInformation(@RequestParam String barcode) {
+ List<Pla> locDetls = mobileService.pdaSelectInfmt(barcode);
+ return R.ok(locDetls);
+ }
+
+
+ public static void main(String[] args) {
+// String aa = "[{\"batch\":\"2023090304\",\"packageNo\":\"8\"},{\"batch\":\"2023090304\",\"packageNo\":\"8\"}]";
+// JSONArray jsonArray = JSON.parseArray(aa);
+// Object o = jsonArray.get(0);
+// System.out.println(o.toString());
+// JSONObject jsonObject = (JSONObject)o;
+// System.out.println(jsonObject);
+
+ String s = "2024010502";
+ System.out.println(s.substring(8, 10));
+
+ Object s1 = "8";
+ System.out.println(Integer.parseInt(s1.toString()));
+ }
+
}
--
Gitblit v1.9.1