From acad71339e2a131f6ef72c9be912b9e70dd00af0 Mon Sep 17 00:00:00 2001
From: mrzhssss <pro6@qq.com>
Date: 星期四, 24 三月 2022 15:17:16 +0800
Subject: [PATCH] #
---
src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java | 206 ++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 169 insertions(+), 37 deletions(-)
diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
index 47c3b4e..e1542c4 100644
--- a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
+++ b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
@@ -14,6 +14,7 @@
import zy.cloud.wms.common.model.MatnrDto;
import zy.cloud.wms.common.model.OrderStoDto;
import zy.cloud.wms.common.model.ReceiveStoDto;
+import zy.cloud.wms.common.model.WaveStoDto;
import zy.cloud.wms.common.service.MainService;
import zy.cloud.wms.common.utils.VersionUtils;
import zy.cloud.wms.manager.entity.*;
@@ -62,6 +63,10 @@
private ReceiveDetlService receiveDetlService;
@Autowired
ReceiveLogService receiveLogService;
+ @Autowired
+ private WaveService waveService;
+ @Autowired
+ private WaveDetlService waveDetlService;
@Override
@@ -295,12 +300,12 @@
@Override
public R stockOutPreview(StockOutParam param, Long userId, Long hostId) {
- Wrapper<Receive> wrapper = new EntityWrapper<Receive>()
+ Wrapper<Order> wrapper = new EntityWrapper<Order>()
.eq("order_no", param.getOrderNo());
if (hostId != null) {
wrapper.eq("host_id", hostId);
}
- Receive order_no = receiveService.selectOne(wrapper);
+ Order order_no = orderService.selectOne(wrapper);
if (order_no.getSettle() != 1){
return R.error("姝ゅ崟鎹棤娉曠敓鎴愭嫞璐у崟");
@@ -309,8 +314,8 @@
// if (order.getSettle() != 1) {
// return R.error("姝ゅ崟鎹棤娉曠敓鎴愭嫞璐у崟");
// }
- List<ReceiveDetl> receiveDetls = receiveDetlService.selectByOrderNo(order_no.getOrderNo(), hostId);
- if (Cools.isEmpty(receiveDetls)) {
+ List<OrderDetl> orderDetls = orderDetlService.selectByOrderNo(order_no.getOrderNo(), hostId);
+ if (Cools.isEmpty(orderDetls)) {
return R.error("姝ゅ崟鎹凡澶辨晥锛岃鑱旂郴绠$悊鍛�");
}
// List<OrderDetl> orderDetls = orderDetlService.selectByOrderNo(order.getOrderNo(), hostId);
@@ -318,27 +323,27 @@
// return R.error("姝ゅ崟鎹凡澶辨晥锛岃鑱旂郴绠$悊鍛�");
// }
- ReceiveStoDto receiveStoDto = new ReceiveStoDto().create(order_no.getOrderNo(), receiveDetls);
+ OrderStoDto orderStoDto = new OrderStoDto().create(order_no.getOrderNo(), orderDetls);
// OrderStoDto dto = new OrderStoDto().create(order.getOrderNo(), orderDetls);
- return R.ok().add(mainService.receiveStockOutPreview(receiveStoDto, hostId));
+ return R.ok().add(mainService.orderOutPreview(orderStoDto, hostId));
}
@Override
public R stockOutCreate(StockOutParam param, Long userId, Long hostId) {
- Receive receive = receiveService.selectByOrderNo(param.getOrderNo(), hostId);
-// Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId);
- if (receive.getSettle() != 1) {
+// Receive receive = receiveService.selectByOrderNo(param.getOrderNo(), hostId);
+ Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId);
+ if (order.getSettle() != 1) {
return R.error("姝ゅ崟鎹棤娉曠敓鎴愭嫞璐у崟");
}
- List<ReceiveDetl> receiveDetls = receiveDetlService.selectByOrderNo(param.getOrderNo(), hostId);
+ List<OrderDetl> orderDetls = orderDetlService.selectByOrderNo(param.getOrderNo(), hostId);
// List<OrderDetl> orderDetls = orderDetlService.selectByOrderNo(param.getOrderNo(), hostId);
- if (Cools.isEmpty(receiveDetls)) {
+ if (Cools.isEmpty(orderDetls)) {
return R.error("姝ゅ崟鎹凡澶辨晥锛岃鑱旂郴绠$悊鍛�");
}
- ReceiveStoDto receiveStoDto = new ReceiveStoDto().create(receive.getOrderNo(), receiveDetls);
+ OrderStoDto orderStoDto = new OrderStoDto().create(order.getOrderNo(), orderDetls);
// OrderStoDto dto = new OrderStoDto().create(receive.getOrderNo(), receiveDetls);
// 寮�濮嬫暣鐞嗗嚭搴撴暟鎹�
- mainService.receiveStockOutProcess(receiveStoDto,hostId);
+ mainService.orderStockOutProcess(orderStoDto,hostId,userId);
return R.ok("鐢熸垚鎷h揣鍗曟垚鍔�");
}
@@ -691,9 +696,9 @@
order1.setOrderNo(param.getOrderNo());
order1.setOrderTime(param.getOrderTime());
order1.setDocType(param.getDocType());
- order1.setItemId(item.getId());
+ order1.setItemId(item == null? null : item.getId());
order1.setItemName(param.getItem());
- order1.setCstmr(cstmr.getId());
+ order1.setCstmr(cstmr == null? null : cstmr.getId());
order1.setCstmrName(param.getCstmr());
order1.setSettle(1L);
order1.setStatus(1);
@@ -773,28 +778,29 @@
log.error("{}鍟嗗搧涓嶅瓨鍦ㄣ��", dto.getMatnr());
continue;
}
- ReceiveDetl receiveDetl = new ReceiveDetl();
- receiveDetl.setHostId(hostId);
- receiveDetl.setOrderId(order1.getId());
- receiveDetl.setAnfme(dto.getCount());
- receiveDetl.setCreateTime(now);
- receiveDetl.setCreateBy(userId);
- receiveDetl.setUpdateBy(userId);
- receiveDetl.setUpdateTime(now);
- receiveDetl.setStatus(1);
- receiveDetl.setMatnr(mat.getMatnr());
- receiveDetl.setMaktx(mat.getMaktx());
- receiveDetl.setName(mat.getName());
- receiveDetl.setSpecs(mat.getSpecs());
- receiveDetl.setModel(mat.getModel());
- receiveDetl.setBatch(mat.getBatch());
- receiveDetl.setUnit(mat.getUnit());
- receiveDetl.setBarcode(mat.getBarcode());
- receiveDetl.setItemNum(mat.getItemNum());
- receiveDetl.setCount(Double.valueOf(mat.getCount()));
- receiveDetl.setUnitPrice(mat.getPrice());
- receiveDetl.setWeight(mat.getWeight());
- if (!receiveDetlService.insert(receiveDetl)) {
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.setHostId(hostId);
+ orderDetl.setOrderId(order1.getId());
+ orderDetl.setOrderNo(order1.getOrderNo());
+ orderDetl.setAnfme(dto.getCount());
+ orderDetl.setCreateTime(now);
+ orderDetl.setCreateBy(userId);
+ orderDetl.setUpdateBy(userId);
+ orderDetl.setUpdateTime(now);
+ orderDetl.setStatus(1);
+ orderDetl.setMatnr(mat.getMatnr());
+ orderDetl.setMaktx(mat.getMaktx());
+ orderDetl.setName(mat.getName());
+ orderDetl.setSpecs(mat.getSpecs());
+ orderDetl.setModel(mat.getModel());
+ orderDetl.setBatch(mat.getBatch());
+ orderDetl.setUnit(mat.getUnit());
+ orderDetl.setBarcode(mat.getBarcode());
+ orderDetl.setItemNum(mat.getItemNum());
+ orderDetl.setCount(mat.getCount() == null ? 0 : mat.getCount());
+ orderDetl.setUnitPrice(mat.getPrice());
+ orderDetl.setWeight(mat.getWeight());
+ if (!orderDetlService.insert(orderDetl)) {
throw new CoolException("淇濆瓨璁㈠崟鏄庣粏澶辫触");
}
}
@@ -1000,4 +1006,130 @@
return R.ok();
}
+ @Override
+// @Transactional
+ public R initOutOrder(InitOrderParam param, Long userId, Long hostId) {
+ Order order_no = orderService.selectOne(new EntityWrapper<Order>()
+ .eq("order_no", param.getOrderNo()));
+// Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId);
+ if (order_no != null) {
+ return R.error("鎶辨瓑鍗曞彿宸插瓨鍦紝璇蜂慨鏀瑰崟鍙�");
+ }
+ Date now = new Date();
+ Item item = itemService.selectByName(param.getItem());
+ Cstmr cstmr = cstmrService.selectByName(param.getCstmr());
+
+ // 鏂板璁㈠崟琛ㄥご
+ order_no = new Order();
+ order_no.setHostId(hostId);
+ order_no.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
+ order_no.setOrderNo(param.getOrderNo());
+ order_no.setOrderTime(param.getOrderTime());
+ order_no.setDocType(param.getDocType());
+ order_no.setItemId(item==null?null:item.getId());
+ order_no.setItemName(param.getItem());
+ order_no.setCstmr(cstmr==null?null:cstmr.getId());
+ order_no.setCstmrName(param.getCstmr());
+ order_no.setSettle(1L);
+ order_no.setStatus(1);
+ order_no.setCreateTime(now);
+ order_no.setCreateBy(userId);
+ order_no.setUpdateTime(now);
+ order_no.setUpdateBy(userId);
+
+// if (!orderService.insert(order)) {
+// throw new CoolException("淇濆瓨璁㈠崟琛ㄥご澶辫触锛�");
+// }
+ if (!orderService.insert(order_no)) {
+ throw new CoolException("淇濆瓨璁㈠崟琛ㄥご澶辫触锛�");
+ }
+
+// // 閬嶅巻鍟嗗搧鏁伴噺骞朵繚瀛�
+// for (MatnrDto dto : param.getList()){
+// Mat mat = matService.selectByMatnr(hostId, dto.getMatnr());
+// if (mat == null) {
+// log.error("{}鍟嗗搧涓嶅瓨鍦ㄣ��", dto.getMatnr());
+// continue;
+// }
+// OrderDetl orderDetl = new OrderDetl();
+// orderDetl.setHostId(hostId);
+// orderDetl.setOrderId(order.getId()); // 璁㈠崟鍐呯爜
+// orderDetl.setAnfme(dto.getCount()); // 鏁伴噺
+// orderDetl.setCreateBy(userId);
+// orderDetl.setCreateTime(now);
+// orderDetl.setUpdateBy(userId);
+// orderDetl.setUpdateTime(now);
+// orderDetl.setStatus(1);
+// VersionUtils.setOrderDetl(orderDetl, mat);
+// if (!orderDetlService.insert(orderDetl)) {
+// throw new CoolException("淇濆瓨璁㈠崟鏄庣粏澶辫触");
+// }
+// }
+ // 閬嶅巻鍟嗗搧鏁伴噺骞朵繚瀛�
+ for (MatnrDto dto : param.getList()){
+ Mat mat = matService.selectByMatnr(hostId, dto.getMatnr());
+ if (mat == null) {
+ log.error("{}鍟嗗搧涓嶅瓨鍦ㄣ��", dto.getMatnr());
+ continue;
+ }
+ OrderDetl orderDtel = new OrderDetl();
+ orderDtel.setHostId(hostId);
+ orderDtel.setOrderId(order_no.getId());
+ orderDtel.setAnfme(dto.getCount());
+ orderDtel.setCreateTime(now);
+ orderDtel.setCreateBy(userId);
+ orderDtel.setUpdateBy(userId);
+ orderDtel.setUpdateTime(now);
+ orderDtel.setStatus(1);
+ orderDtel.setMatnr(mat.getMatnr());
+ orderDtel.setMaktx(mat.getMaktx());
+ orderDtel.setName(mat.getName());
+ orderDtel.setSpecs(mat.getSpecs());
+ orderDtel.setModel(mat.getModel());
+ orderDtel.setBatch(mat.getBatch());
+ orderDtel.setUnit(mat.getUnit());
+ orderDtel.setBarcode(mat.getBarcode());
+ orderDtel.setItemNum(mat.getItemNum());
+ orderDtel.setCount(mat.getCount() == null ? 0 : mat.getCount());
+ orderDtel.setUnitPrice(mat.getPrice());
+ orderDtel.setWeight(mat.getWeight());
+ if (!orderDetlService.insert(orderDtel)) {
+ throw new CoolException("淇濆瓨璁㈠崟鏄庣粏澶辫触");
+ }
+ }
+ return R.ok("鍒涘缓璁㈠崟鎴愬姛");
+ }
+
+ @Override
+ public R wavePreview(StockOutParam stockOutParam, Long userId, Long hostId) {
+ Wrapper<Wave> wrapper = new EntityWrapper<Wave>()
+ .eq("id", stockOutParam.getOrderNo());
+
+ if (hostId != null) {
+ wrapper.eq("host_id", hostId);
+ }
+ Wave wave = waveService.selectOne(wrapper);
+
+ if (wave.getStatus() != 0){
+ return R.error("姝ゅ崟鎹棤娉曠敓鎴愭嫞璐у崟");
+ }
+// Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId);
+// if (order.getSettle() != 1) {
+// return R.error("姝ゅ崟鎹棤娉曠敓鎴愭嫞璐у崟");
+// }
+ List<WaveDetl> waveDetls = waveDetlService.selectList(new EntityWrapper<WaveDetl>()
+ .eq("wave_id", stockOutParam.getOrderNo()));
+ if (Cools.isEmpty(waveDetls)) {
+ return R.error("姝ゅ崟鎹凡澶辨晥锛岃鑱旂郴绠$悊鍛�");
+ }
+// List<OrderDetl> orderDetls = orderDetlService.selectByOrderNo(order.getOrderNo(), hostId);
+// if (Cools.isEmpty(orderDetls)) {
+// return R.error("姝ゅ崟鎹凡澶辨晥锛岃鑱旂郴绠$悊鍛�");
+// }
+
+ WaveStoDto waveStoDto = new WaveStoDto().create(stockOutParam.getOrderNo(),waveDetls);
+// OrderStoDto dto = new OrderStoDto().create(order.getOrderNo(), orderDetls);
+ return R.ok().add(mainService.waveOutPreview(waveStoDto, hostId));
+ }
+
}
--
Gitblit v1.9.1