From 3bcfebe3912bdaf8abf2d29b6913b771bad3804c Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 20 十月 2025 08:44:46 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 302 ++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 267 insertions(+), 35 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index 1e5f49d..4cd06b4 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -1,5 +1,6 @@
package com.zy.asrs.service.impl;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -13,19 +14,23 @@
import com.zy.asrs.mapper.LocMastMapper;
import com.zy.asrs.mapper.ManLocDetlMapper;
import com.zy.asrs.service.*;
+import com.zy.asrs.utils.MathUtils;
import com.zy.asrs.utils.OrderInAndOutUtil;
import com.zy.common.model.DetlDto;
import com.zy.common.model.enums.WorkNoType;
import com.zy.common.service.CommonService;
-import com.zy.nc.entity.NccJcQilibcBarcodeflowWms;
+import com.zy.common.utils.HttpHandler;
import com.zy.nc.service.NccJcQilibcBarcodeflowWmsService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.math.BigDecimal;
import java.util.*;
+import java.util.stream.Collectors;
/**
* 绉诲姩绔湇鍔℃牳蹇冪被
@@ -34,6 +39,9 @@
@Slf4j
@Service
public class MobileServiceImpl implements MobileService {
+
+ @Value("${wcs.url}")
+ private String wcsUrl;
@Autowired
private MatService matService;
@@ -47,6 +55,8 @@
private BasDevpService basDevpService;
@Autowired
private WrkMastService wrkMastService;
+ @Autowired
+ private WorkService workService;
@Autowired
private WrkDetlService wrkDetlService;
@Autowired
@@ -73,6 +83,14 @@
private ManLocDetlService manLocDetlService;
@Autowired
private ManLocDetlMapper manLocDetlMapper;
+ @Autowired
+ private ReportToThirdService reportToThirdService;
+
+ @Autowired
+ private InventoryCheckOrderService inventoryCheckOrderService;
+
+ @Autowired
+ private InventoryCheckOrderDetlService inventoryCheckOrderDetlService;
@Autowired
private AdjDetlService adjDetlService;
@@ -523,7 +541,7 @@
ArrayList<PickMatParam> maps = new ArrayList<>();
for (OrderDetl orderDetl : list) {
//鍓╀綑鍙敤鏁伴噺
- double count = orderDetl.getAnfme() - orderDetl.getWorkQty();
+ double count = MathUtils.subtract(orderDetl.getAnfme(), orderDetl.getWorkQty());
if (count <= 0) {
continue;
}
@@ -546,9 +564,15 @@
if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) {
throw new CoolException(BaseRes.PARAM);
}
- if (param.getCombMats().size() > 1) {
- throw new CoolException("璇锋彁鍙栦竴涓晢鍝侊紝鎴栬�呭埛鏂伴噸鏂扮粍鎵橈紒");
+ List<String> codes = param.getCombMats().stream().map(CombParam.CombMat::getTiaoma).collect(Collectors.toList());
+ Set<String> sets = new HashSet<>();
+ if (codes.stream().anyMatch(item -> !sets.add(item))) {
+ throw new CoolException("鏉$爜閲嶅鎵爜浜�");
}
+ // if (param.getCombMats().size() > 1) {
+// throw new CoolException("璇锋彁鍙栦竴涓晢鍝侊紝鎴栬�呭埛鏂伴噸鏂扮粍鎵橈紒");
+// }
+
// 鍒ゆ柇鏄惁鏈夌浉鍚屾潯鐮佺殑鏁版嵁
if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
@@ -558,9 +582,9 @@
if (param.getBarcode().length() != 8) {
throw new CoolException("鏉$爜闀垮害涓嶆槸8浣�===>>" + param.getBarcode());
}
- if (param.getCombMats().size() > 1) {
- throw new CoolException("涓嶅厑璁告贩鏂�===>>" + param.getBarcode());
- }
+// if (param.getCombMats().size() > 1) {
+// throw new CoolException("涓嶅厑璁告贩鏂�===>>" + param.getBarcode());
+// }
int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode()));
int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", param.getBarcode()));
@@ -572,17 +596,20 @@
Date now = new Date();
// 鏃犲崟缁勬墭
- if (Cools.isEmpty(param.getOrderNo())) {
+ if (Cools.isEmpty(param.getCombMats().get(0).getOrderNo())) {
// 鐢熸垚鍏ュ簱閫氱煡妗�
List<DetlDto> detlDtos = new ArrayList<>();
param.getCombMats().forEach(elem -> {
DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getBrand(), elem.getStandby1(), elem.getStandby2(), elem.getStandby3(),
elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3(), elem.getAnfme());
+ detlDto.setWeight(elem.getWeight());
+ detlDto.setCstateid(elem.getCstateid());
if (DetlDto.has(detlDtos, detlDto)) {
DetlDto one = DetlDto.findDto(detlDtos, detlDto);
assert one != null;
one.setAnfme(one.getAnfme() + detlDto.getAnfme());
+ one.setWeight(one.getWeight() + detlDto.getWeight());
} else {
detlDtos.add(detlDto);
}
@@ -596,6 +623,7 @@
}
WaitPakin waitPakin = new WaitPakin();
waitPakin.sync(mat);
+ waitPakin.setWeight(detlDto.getWeight());
waitPakin.setBatch(detlDto.getBatch());
waitPakin.setZpallet(param.getBarcode()); // 鎵樼洏鐮�
waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵��
@@ -605,6 +633,14 @@
waitPakin.setAppeTime(now);
waitPakin.setModiUser(userId);
waitPakin.setModiTime(now);
+ waitPakin.setBoxType1(detlDto.getBoxType1());
+ waitPakin.setBoxType2(detlDto.getBoxType2());
+ waitPakin.setBoxType3(detlDto.getBoxType3());
+ waitPakin.setStandby1(detlDto.getStandby1());
+ waitPakin.setStandby2(detlDto.getStandby2());
+ waitPakin.setStandby3(detlDto.getStandby3());
+ waitPakin.setTkFlag(param.getTkFlag());
+ waitPakin.setCstateid(detlDto.getCstateid());
if (!waitPakinService.insert(waitPakin)) {
throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
}
@@ -612,28 +648,35 @@
// 鍏宠仈缁勬墭
} else {
// Order order = orderService.selectByNo(param.getOrderNo());
- Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, param.getOrderNo());
- if (Cools.isEmpty(order) || order.getSettle() > 2) {
- throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
- }
+
// 鐢熸垚鍏ュ簱閫氱煡妗�
List<DetlDto> detlDtos = new ArrayList<>();
param.getCombMats().forEach(elem -> {
- // TODO 涓嶈�冭檻浠g爜鏁堢巼锛屽洜涓烘棫浠g爜bug灏�
- if (!Cools.isEmpty(elem.getVbarcode())) {
- NccJcQilibcBarcodeflowWms vbarcode1 = barcodeflowWmsService.selectOne(new EntityWrapper<NccJcQilibcBarcodeflowWms>().eq("vbarcode", elem.getVbarcode()));
- elem.setBatch(vbarcode1.getVbatchcode());
- elem.setMatnr(vbarcode1.getWlbm());
- elem.setAnfme(vbarcode1.getNastnum().doubleValue());
+ Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, elem.getOrderNo());
+ if (Cools.isEmpty(order)) {
+ throw new CoolException("鍗曟嵁缂栧彿涓嶅瓨鍦�");
+ }
+ if (order.getSettle() > 2) {
+ throw new CoolException("鍗曟嵁缂栧彿宸蹭綔涓氬畬鎴�");
+ }
+
+ List<WaitPakin> waitPakinList = waitPakinService.selectList(new EntityWrapper<WaitPakin>()
+ .eq("matnr", elem.getMatnr())
+ .eq("batch", elem.getBatch())
+ .eq("order_no", elem.getOrderNo())
+ .eq("anfme", elem.getAnfme())
+ .eq("standby1", elem.getStandby1())
+ );
+ if (!waitPakinList.isEmpty()) {
+ throw new CoolException("璇ヨ鍗曠墿鏂欏凡缁忕粍鎵橈紒");
}
// 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
-// OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch());
OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, order.getId(), elem.getMatnr(), elem.getBatch(), elem.getBrand(), elem.getStandby1(), elem.getStandby2(), elem.getStandby3(),
elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3());
if (elem.getAnfme() > orderDetl.getEnableQty()) {
- throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�");
+ throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�,宸茬粡瓒呰繃鍗曟嵁鍏ュ簱鏁伴噺");
}
// 淇敼璁㈠崟浣滀笟鏁伴噺
// if (!orderDetlService.increaseWorkQty(order.getId(), elem.getMatnr(), elem.getBatch(), elem.getAnfme())) {
@@ -643,13 +686,19 @@
elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3(), elem.getAnfme());
DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getBrand(), elem.getStandby1(), elem.getStandby2(), elem.getStandby3(),
elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3(), elem.getAnfme());
+ detlDto.setOrderNo(elem.getOrderNo());
+ detlDto.setWeight(elem.getWeight());
+ detlDto.setCstateid(elem.getCstateid());
if (DetlDto.has(detlDtos, detlDto)) {
DetlDto one = DetlDto.findDto(detlDtos, detlDto);
assert one != null;
one.setAnfme(one.getAnfme() + detlDto.getAnfme());
+ one.setWeight(one.getWeight() + detlDto.getWeight());
} else {
detlDtos.add(detlDto);
}
+
+ OrderInAndOutUtil.updateOrder(Boolean.TRUE, order.getId(), 2L, userId);
});
for (DetlDto detlDto : detlDtos) {
Mat mat = matService.selectByMatnr(detlDto.getMatnr());
@@ -658,7 +707,7 @@
}
WaitPakin waitPakin = new WaitPakin();
waitPakin.sync(mat);
- waitPakin.setOrderNo(order.getOrderNo()); // 鍗曟嵁缂栧彿
+ waitPakin.setOrderNo(detlDto.getOrderNo()); // 鍗曟嵁缂栧彿
waitPakin.setBatch(detlDto.getBatch()); // 搴忓垪鐮�
waitPakin.setZpallet(param.getBarcode()); // 鎵樼洏鐮�
waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵��
@@ -668,14 +717,69 @@
waitPakin.setAppeTime(now);
waitPakin.setModiUser(userId);
waitPakin.setModiTime(now);
+ waitPakin.setBoxType1(detlDto.getBoxType1());
+ waitPakin.setBoxType2(detlDto.getBoxType2());
+ waitPakin.setBoxType3(detlDto.getBoxType3());
+ waitPakin.setStandby1(detlDto.getStandby1());
+ waitPakin.setStandby2(detlDto.getStandby2());
+ waitPakin.setStandby3(detlDto.getStandby3());
+ waitPakin.setWeight(detlDto.getWeight());
+ waitPakin.setCstateid(detlDto.getCstateid());
if (!waitPakinService.insert(waitPakin)) {
throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
}
}
// orderService.updateSettle(order.getId(), 2L, userId);
- OrderInAndOutUtil.updateOrder(Boolean.TRUE, order.getId(), 2L, userId);
+
}
+ }
+
+ @Override
+ public void combCancel(CombCancelParam param, Long userId) {
+ if (Cools.isEmpty(param.getBarcode())) {
+ throw new CoolException(BaseRes.PARAM);
+ }
+
+ List<WaitPakin> waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().
+ eq("zpallet", param.getBarcode()));
+ if (waitPakins.isEmpty()) {
+ throw new CoolException("鎵樼洏鏈粍鎵�");
+ }
+
+ for (WaitPakin waitPakin : waitPakins) {
+ if (!Cools.isEmpty(waitPakin.getOrderNo())) {
+ Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, waitPakin.getOrderNo());
+ if (Cools.isEmpty(order)) {
+ throw new CoolException("鍗曟嵁缂栧彿涓嶅瓨鍦�");
+ }
+
+ if (order.getSettle() > 2) {
+ throw new CoolException("鍗曟嵁缂栧彿宸蹭綔涓氬畬鎴�");
+ }
+
+ // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
+ OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(order.getId(), waitPakin.getMatnr(), waitPakin.getBatch(), waitPakin.getBrand(), waitPakin.getStandby1(), waitPakin.getStandby2(), waitPakin.getStandby3(),
+ waitPakin.getBoxType1(), waitPakin.getBoxType2(), waitPakin.getBoxType3());
+ if (orderDetlPakin == null) {
+ continue;
+ }
+
+ Double workQty = orderDetlPakin.getWorkQty();
+ BigDecimal workQtyDecimal = new BigDecimal(workQty);
+ workQtyDecimal = workQtyDecimal.subtract(BigDecimal.valueOf(waitPakin.getAnfme()));
+
+ double newWorkQty = workQtyDecimal.doubleValue();
+ if (newWorkQty <= 0) {
+ newWorkQty = 0D;
+ }
+ orderDetlPakin.setWorkQty(newWorkQty);
+ orderDetlPakinService.updateById(orderDetlPakin);
+ }
+ }
+
+ waitPakinService.delete(new EntityWrapper<WaitPakin>()
+ .eq("zpallet", param.getBarcode()));
}
// 鍟嗗搧涓婃灦
@@ -737,22 +841,21 @@
@Override
@Transactional
public void adjust(MobileAdjustParam param, Long userId) {
- BasDevp basDevp = basDevpService.selectById(param.getStaNo());
- if (null == basDevp || basDevp.getWrkNo() == null) {
- throw new CoolException(param.getStaNo() + "鐩樼偣绔欐棤鏁�");
- }
- if (!param.getWrkNo().equals(basDevp.getWrkNo())) {
- throw new CoolException(param.getStaNo() + "鐩樼偣绔欐洿鏂帮紝璇烽噸鏂版绱�");
- }
- WrkMast wrkMast = wrkMastService.selectById(param.getWrkNo());
+// BasDevp basDevp = basDevpService.selectById(param.getStaNo());
+// if (null == basDevp || basDevp.getWrkNo() == null) {
+// throw new CoolException(param.getStaNo() + "鐩樼偣绔欐棤鏁�");
+// }
+// if (!param.getWrkNo().equals(basDevp.getWrkNo())) {
+// throw new CoolException(param.getStaNo() + "鐩樼偣绔欐洿鏂帮紝璇烽噸鏂版绱�");
+// }
+ WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarcode());
if (wrkMast.getWrkSts() < 10) {
throw new CoolException("鐩樼偣鏃犳晥锛屼换鍔″凡鐩樼偣鍐嶅叆搴�");
}
Date now = new Date();
List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
- List<WrkDetl> list = param.getWrkDetls();
-
+ List<WrkDetl> list = JSON.parseArray(JSON.toJSONString(param.getWrkDetls()), WrkDetl.class);
// 淇敼鏁伴噺
Iterator<WrkDetl> iterator = wrkDetls.iterator();
while (iterator.hasNext()) {
@@ -771,6 +874,7 @@
throw new CoolException(wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "鎵瑰彿淇敼鏁伴噺澶辫触");
}
}
+ //濡傛灉宸茬粡鎷f枡鍥炲簱锛屽氨闇�瑕佸彇locNo瀛楁
iterator.remove();
iterator1.remove();
}
@@ -804,14 +908,29 @@
}
}
+ List<WrkDetl> paramWrkDetls = JSON.parseArray(JSON.toJSONString(param.getWrkDetls()), WrkDetl.class);
+ for (WrkDetl wrkDetl : paramWrkDetls) {
+ String locNo = Cools.isEmpty(wrkMast.getLocNo()) ? wrkMast.getSourceLocNo() : wrkMast.getLocNo();
+ List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>()
+ .eq("loc_no", locNo)
+ .eq("area", wrkDetl.getWrkNo())
+ );
+ for (InventoryCheckOrderDetl checkOrderDetl : checkOrderDetls) {
+ if (wrkDetl.getMatnr().equals(checkOrderDetl.getMatnr()) && Cools.eq(wrkDetl.getBatch(), checkOrderDetl.getBatch())) {
+ checkOrderDetl.setCheckAnfme(wrkDetl.getAnfme());
+ checkOrderDetl.setStatus("2");
+ inventoryCheckOrderDetlService.updateById(checkOrderDetl);
+ }
+ }
+ }
+
// 淇敼鐩樼偣浠诲姟涓绘。鐘舵��
- wrkMast.setFullPlt(wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()).size() != 0 ? "Y" : "N");
+ wrkMast.setFullPlt("Y");
wrkMast.setModiTime(now);
wrkMast.setModiUser(userId);
if (!wrkMastService.updateById(wrkMast)) {
throw new CoolException("淇敼鐩樼偣浠诲姟涓绘。澶辫触");
}
-
}
@Override
@@ -1018,7 +1137,7 @@
}
//鍙嚭搴撴暟閲� = 璁㈠崟鏁伴噺 - 浣滀笟涓暟閲�
- Double outQty = orderDetl.getAnfme() - orderDetl.getWorkQty();
+ Double outQty = MathUtils.subtract(orderDetl.getAnfme(), orderDetl.getWorkQty());
if (outQty <= 0) {
break;
}
@@ -1123,4 +1242,117 @@
throw new CoolException(locDetl.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
}
}
+
+ @Override
+ public void checkOutSubmit(Integer orderId, Long userId) {
+ InventoryCheckOrder inventoryCheckOrder = inventoryCheckOrderService.selectOne(new EntityWrapper<InventoryCheckOrder>()
+ .eq("id", orderId));
+ if (inventoryCheckOrder == null) {
+ throw new CoolException("鐩樼偣鍗曚笉瀛樺湪");
+ }
+
+ if (!inventoryCheckOrder.getStatus().equals("1")) {
+ throw new CoolException("鐩樼偣鍗曠姸鎬佸凡涓婃姤");
+ }
+
+ List<InventoryCheckOrderDetl> checkOrderDetlList = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>()
+ .eq("order_no", inventoryCheckOrder.getOrderNo())
+ );
+ if (checkOrderDetlList.isEmpty()) {
+ throw new CoolException("鐩樼偣鍗曟棤鐗╂枡鏄庣粏");
+ }
+
+ boolean complete = true;
+ for (InventoryCheckOrderDetl checkOrderDetl : checkOrderDetlList) {
+ if (!checkOrderDetl.getStatus().equals("2")) {
+ complete = false;
+ }
+ }
+ if (complete) {
+ boolean result = reportToThirdService.reportCheckOrder(checkOrderDetlList);
+ if (!result) {
+ throw new CoolException("鐩樼偣鍗曚笂鎶ュけ璐�");
+ }
+ }else {
+ throw new CoolException("鐩樼偣鏈畬鎴愭棤娉曚笂鎶�");
+ }
+ }
+
+ @Override
+ public void toOutSta(PalletToOutStaParam param, Long userId) {
+ WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarcode());
+ if (wrkMast == null) {
+ throw new CoolException("宸ヤ綔妗d笉瀛樺湪");
+ }
+
+ if (wrkMast.getIoType() != 103) {
+ throw new CoolException("宸ヤ綔妗g被鍨嬩笉鏄嫞鏂欏嚭搴�");
+ }
+
+ if (wrkMast.getWrkSts() != 14) {
+ throw new CoolException("宸ヤ綔鐘舵�佹湭澶勪簬宸插嚭搴�");
+ }
+
+ String response = "";
+ try {
+ HashMap<String, Object> map = new HashMap<>();
+ map.put("wrkNo", wrkMast.getWrkNo());
+ map.put("sourceStaNo", wrkMast.getStaNo());
+ map.put("staNo", 1075);
+
+ response = new HttpHandler.Builder()
+ .setUri(wcsUrl)
+ .setPath("/open/toOutSta")
+ .setJson(JSON.toJSONString(map))
+ .build()
+ .doPost();
+ log.info("toOutSta:{},{}",map, response);
+ } catch (Exception e) {
+ log.error("fail", e);
+ }
+ }
+
+ @Override
+ public void toAllOut(PalletToAllOutParam param, Long userId) {
+ String barcodeSize = param.getBarcode().substring(0, 2);
+ String newBarcodeSize = param.getNewBarcode().substring(0, 2);
+ if (!barcodeSize.equals(newBarcodeSize)) {
+ throw new CoolException("鎵樼洏灏哄涓嶄竴鑷�");
+ }
+
+ WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarcode());
+ if (wrkMast == null) {
+ throw new CoolException("宸ヤ綔妗d笉瀛樺湪");
+ }
+
+ if (wrkMast.getIoType() != 103) {
+ throw new CoolException("宸ヤ綔妗g被鍨嬩笉鏄嫞鏂欏嚭搴�");
+ }
+
+ if (wrkMast.getWrkSts() != 14) {
+ throw new CoolException("宸ヤ綔鐘舵�佹湭澶勪簬宸插嚭搴�");
+ }
+
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo()));
+ if (locMast == null) {
+ throw new CoolException("搴撲綅涓嶅瓨鍦�");
+ }
+
+ if (!locMast.getLocSts().equals("P")) {
+ throw new CoolException("搴撲綅绫诲瀷涓嶆槸鎷f枡鍑哄簱");
+ }
+
+ wrkMast.setBarcode(param.getNewBarcode());
+ wrkMast.setModiTime(new Date());
+ wrkMast.setModiUser(userId);
+ wrkMastService.updateById(wrkMast);
+
+ wrkDetlService.updateBarcode(wrkMast.getWrkNo(), param.getNewBarcode());
+
+ locMast.setBarcode(param.getNewBarcode());
+ locMast.setModiTime(new Date());
+ locMastService.updateById(locMast);
+
+ locDetlService.updateBarcode(locMast.getLocNo(), param.getNewBarcode());
+ }
}
--
Gitblit v1.9.1