From 8c189a920cd9ce13729626310f20014a427dc9cb Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期六, 21 五月 2022 15:59:05 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/OrderController.java | 137 +++++++++++++++++++++++++++++++++------------
1 files changed, 100 insertions(+), 37 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index 6a0f070..d79943c 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -7,11 +7,14 @@
import com.core.annotations.ManagerAuth;
import com.core.common.*;
import com.core.exception.CoolException;
+import com.zy.asrs.entity.DocType;
import com.zy.asrs.entity.Order;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.entity.param.OrderDomainParam;
+import com.zy.asrs.service.DocTypeService;
import com.zy.asrs.service.OrderDetlService;
import com.zy.asrs.service.OrderService;
+import com.zy.common.model.DetlDto;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
@@ -28,6 +31,36 @@
private OrderDetlService orderDetlService;
@Autowired
private SnowflakeIdWorker snowflakeIdWorker;
+ @Autowired
+ private DocTypeService docTypeService;
+
+ @RequestMapping(value = "/order/nav/list/auth")
+ @ManagerAuth
+ public R navList(@RequestParam(required = false) String orderNo){
+ EntityWrapper<Order> wrapper = new EntityWrapper<>();
+ if (!Cools.isEmpty(orderNo)) {
+ wrapper.like("order_no", orderNo);
+ }
+ wrapper.le("settle", 2).eq("status", 1);
+ wrapper.orderBy("create_time", false);
+ List<Order> orders = orderService.selectList(wrapper);
+ // 淇濈暀鍑哄簱鍗�
+ if (!Cools.isEmpty(orders)) {
+ Iterator<Order> iterator = orders.iterator();
+ while (iterator.hasNext()) {
+ Order order = iterator.next();
+ if (order.getDocType() != null) {
+ DocType docType = docTypeService.selectById(order.getDocType());
+ if (docType != null) {
+ if (docType.getPakout() == 0) {
+ iterator.remove();
+ }
+ }
+ }
+ }
+ }
+ return R.ok().add(orders);
+ }
@RequestMapping(value = "/order/head/page/auth")
@ManagerAuth
@@ -40,7 +73,7 @@
excludeTrash(param);
convert(param, wrapper);
if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} else {
- wrapper.orderBy("create_time", false);
+ wrapper.orderBy("settle").orderBy("create_time", false);
}
wrapper.eq("status", 1);
return R.ok(orderService.selectPage(new Page<>(curr, limit), wrapper));
@@ -100,16 +133,28 @@
if (!orderService.insert(order)) {
throw new CoolException("淇濆瓨璁㈠崟涓绘。澶辫触");
}
+ List<DetlDto> list = new ArrayList<>();
for (OrderDetl orderDetl : param.getOrderDetlList()) {
- orderDetl.setOrderId(order.getId());
- orderDetl.setCreateBy(getUserId());
- orderDetl.setCreateTime(now);
- orderDetl.setUpdateBy(getUserId());
- orderDetl.setUpdateTime(now);
- orderDetl.setStatus(1);
- orderDetl.setQty(0.0D);
- if (!orderDetlService.insert(orderDetl)) {
- throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+ DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
+ if (DetlDto.has(list, dto)) {
+ OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch());
+ 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.insert(orderDetl)) {
+ throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+ }
}
}
return R.ok("璁㈠崟娣诲姞鎴愬姛");
@@ -135,33 +180,34 @@
}
}
// 淇敼鏄庣粏妗�
- List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
+// List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
// 1.娓呯┖鏄庣粏妗�
if (!orderDetlService.delete(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()))) {
throw new CoolException("娓呯┖璁㈠崟鏄庣粏澶辫触");
}
// 2.閲嶇粍鏁版嵁
+ List<DetlDto> list = new ArrayList<>();
for (OrderDetl orderDetl : param.getOrderDetlList()) {
- OrderDetl detl = orderDetlService.findByLook(orderDetls, order.getId(), orderDetl.getMatnr(), orderDetl.getBatch());
- // 鏂板
- if (detl == null) {
- detl = orderDetl;
- detl.setOrderId(order.getId());
- detl.setCreateTime(now);
- detl.setCreateBy(userId);
- detl.setUpdateTime(now);
- detl.setUpdateBy(userId);
- detl.setStatus(1);
- detl.setQty(0.0D);
- // 淇敼
+ DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
+ if (DetlDto.has(list, dto)) {
+ OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch());
+ item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
+ if (!orderDetlService.updateById(item)) {
+ throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+ }
} else {
- detl.setAnfme(orderDetl.getAnfme()); // 淇敼鏁伴噺
- detl.setUpdateTime(now);
- detl.setUpdateBy(userId);
- }
- // 鎸佷箙鍖�
- if (!orderDetlService.insert(detl)) {
- throw new CoolException("鏂板璁㈠崟鏄庣粏澶辫触");
+ 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.insert(orderDetl)) {
+ throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+ }
}
}
return R.ok("璁㈠崟淇敼鎴愬姛");
@@ -207,16 +253,33 @@
}
}
+ @RequestMapping(value = "/order/update/auth")
+ @ManagerAuth
+ public R update(Order order){
+ if (Cools.isEmpty(order) || null == order.getId()){
+ return R.error();
+ }
+ order.setUpdateBy(getUserId());
+ order.setUpdateTime(new Date());
+ if (!orderService.updateById(order)) {
+ throw new CoolException("淇敼璁㈠崟澶辫触");
+ }
+ return R.ok();
+ }
+
@RequestMapping(value = "/order/delete/auth")
@ManagerAuth(memo = "鎵嬪姩鍒犻櫎璁㈠崟")
+ @Transactional
public R delete(@RequestParam Long orderId){
- Order order = orderService.selectById(orderId);
- if (order != null) {
- order.setStatus(0);
- }
- if (!orderService.updateById(order)) {
- throw new CoolException("鍒犻櫎璁㈠崟澶辫触");
- }
+ orderService.remove(orderId);
+// Order order = orderService.selectById(orderId);
+// if (order != null) {
+// order.setStatus(0);
+// }
+// if (!orderService.updateById(order)) {
+// throw new CoolException("鍒犻櫎璁㈠崟澶辫触");
+// }
+// orderDetlService.modifyStatus(orderId, 0);
return R.ok();
}
--
Gitblit v1.9.1