From ad388e75b34a2145f12cf12215566eef900b4892 Mon Sep 17 00:00:00 2001
From: cp <513960435@qq.com>
Date: 星期六, 15 六月 2024 13:00:31 +0800
Subject: [PATCH] #
---
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java | 80 +++++++++++++++++++++++++++++++++++++--
1 files changed, 75 insertions(+), 5 deletions(-)
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 e285ae4..c6e0a66 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,7 +23,9 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
+import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
+import java.net.URLDecoder;
import java.util.*;
@RestController
@@ -67,6 +69,12 @@
return R.ok(orderService.selectAllorderNo(getHostId()));
}
+ @RequestMapping(value = "/outOrder/list/all")
+ @ManagerAuth
+ public R orderOutList() {
+ return R.ok(orderService.selectAllOutOrderNo(getHostId()));
+ }
+
@RequestMapping(value = "/order/{id}/auth")
@ManagerAuth
public R get(@PathVariable("id") String id) {
@@ -99,7 +107,7 @@
@RequestParam(defaultValue = "10")Integer limit,
@RequestParam(required = false)String orderByField,
@RequestParam(required = false)String orderByType,
- @RequestParam Map<String, Object> param){
+ @RequestParam Map<String, Object> param) throws UnsupportedEncodingException {
LambdaQueryWrapper<Order> wrapper = new LambdaQueryWrapper<>();
excludeTrash(param);
wrapper.eq(Order::getStatus, 1);
@@ -116,7 +124,8 @@
wrapper.eq(Order::getDocType, param.get("doc_type"));
}
if (!Cools.isEmpty(param.get("docName"))) {
- DocType docType = docTypeService.getOne(new LambdaQueryWrapper<DocType>().eq(DocType::getDocName, param.get("docName")));
+ String docName = URLDecoder.decode(param.get("docName").toString(), "UTF-8");
+ DocType docType = docTypeService.getOne(new LambdaQueryWrapper<DocType>().eq(DocType::getDocName, docName));
wrapper.eq(Order::getDocType, docType.getDocId());
}
if (!Cools.isEmpty(param.get("settle"))) {
@@ -205,10 +214,12 @@
double totalQty = 0;
double wrkQty = 0;
double lackQty = 0;
+ double endQty = 0;
for (OrderDetl orderDetl : orderDetls) {
totalQty = totalQty + orderDetl.getAnfme();
- wrkQty = wrkQty + orderDetl.getQty();
- double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D);
+ wrkQty = wrkQty + orderDetl.getWorkQty();
+ endQty = endQty + orderDetl.getQty();
+ double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getWorkQty()).orElse(0.0D);
if (issued > 0.0) {
List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), hostId);
for (LocDetl locDetl : locDetls) {
@@ -230,6 +241,9 @@
WrkMast wrkMast = wrkMastService.getOne(new LambdaQueryWrapper<WrkMast>().eq(WrkMast::getWrkNo, wrkDetl.getWrkNo()).eq(WrkMast::getIoTime, wrkDetl.getIoTime()));
if (wrkMast == null) {
WrkMastLog wrkMastLog = wrkMastLogService.getOne(new LambdaQueryWrapper<WrkMastLog>().eq(WrkMastLog::getWrkNo, wrkDetl.getWrkNo()).eq(WrkMastLog::getIoTime, wrkDetl.getIoTime()));
+ if (wrkMastLog.getIoType()==103){
+ wrkMastLog = wrkMastLogService.getOne(new LambdaQueryWrapper<WrkMastLog>().eq(WrkMastLog::getWrkNo, wrkDetl.getWrkNo()).eq(WrkMastLog::getIoTime, wrkDetl.getIoTime()).eq(WrkMastLog::getIoType,53));
+ }
if (wrkMastLog != null) {
wrkMast = new WrkMast();
BeanUtils.copyProperties(wrkMastLog, wrkMast);
@@ -258,6 +272,7 @@
.add("totalQty", totalQty)
.add("wrkQty", wrkQty)
.add("lackQty", lackQty)
+ .add("endQty",endQty)
);
}
@@ -320,7 +335,7 @@
for (OrderDetl orderDetl : param.getOrderDetlList()) {
DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
if (DetlDto.has(list, dto)) {
- OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch());
+ OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(), getHostId());
item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
if (!orderDetlService.updateById(item)) {
throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
@@ -373,4 +388,59 @@
return R.ok().add(orders);
}
+ @RequestMapping(value = "/order/form/modify/auth")
+ @ManagerAuth(memo = "鎵嬪姩淇敼璁㈠崟")
+ @Transactional
+ public R formModify(@RequestBody OrderDomainParam param){
+ Order order = orderService.getOne(new LambdaQueryWrapper<Order>()
+ .eq(Order::getId, param.getOrderId())
+ .eq(Order::getHostId, getHostId()));
+ if (order == null || order.getStatus() == 0) {
+ return R.error("璁㈠崟涓嶅瓨鍦�");
+ }
+ Date now = new Date();
+ Long userId = getUserId();
+ // 淇敼涓绘。
+ if (!param.getDocType().equals(order.getDocType())) {
+ order.setDocType(param.getDocType());
+ order.setUpdateBy(userId);
+ order.setUpdateTime(now);
+ if (!orderService.updateById(order)) {
+ throw new CoolException("淇敼璁㈠崟绫诲瀷澶辫触");
+ }
+ }
+ // 淇敼鏄庣粏妗�
+// List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
+ // 1.娓呯┖鏄庣粏妗�
+ if (!orderDetlService.remove(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId()))) {
+ throw new CoolException("娓呯┖璁㈠崟鏄庣粏澶辫触");
+ }
+ // 2.閲嶇粍鏁版嵁
+ List<DetlDto> list = new ArrayList<>();
+ for (OrderDetl orderDetl : param.getOrderDetlList()) {
+ DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
+ if (DetlDto.has(list, dto)) {
+ OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(), getHostId());
+ item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
+ if (!orderDetlService.updateById(item)) {
+ throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+ }
+ } else {
+ list.add(dto);
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setCreateBy(getUserId());
+ orderDetl.setCreateTime(now);
+ orderDetl.setUpdateBy(getUserId());
+ orderDetl.setUpdateTime(now);
+ orderDetl.setStatus(1);
+ orderDetl.setQty(0.0D);
+ if (!orderDetlService.save(orderDetl)) {
+ throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+ }
+ }
+ }
+ return R.ok("璁㈠崟淇敼鎴愬姛");
+ }
+
}
--
Gitblit v1.9.1