From 02826fa5829598c2f8efbf4381e4048e5c20e5c7 Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期一, 26 八月 2024 10:18:05 +0800
Subject: [PATCH] order status
---
pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/order/OrderSv.java | 74 +++++++++++++++++++++++++------------
1 files changed, 50 insertions(+), 24 deletions(-)
diff --git a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/order/OrderSv.java b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/order/OrderSv.java
index c50b240..228b8d5 100644
--- a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/order/OrderSv.java
+++ b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/order/OrderSv.java
@@ -1,26 +1,21 @@
package com.dy.pmsProduct.order;
-import cn.hutool.core.codec.Base64;
import com.dy.common.webFilter.UserTokenContext;
import com.dy.common.webUtil.QueryResultVo;
-import com.dy.pmsGlobal.daoOth.OthFileMapper;
import com.dy.pmsGlobal.daoPr.*;
-import com.dy.pmsGlobal.dyFile.FileOperate;
import com.dy.pmsGlobal.pojoBa.BaUser;
-import com.dy.pmsGlobal.pojoPlt.PltProduct;
import com.dy.pmsGlobal.pojoPr.*;
import com.dy.pmsGlobal.util.UserUtil;
-import com.dy.pmsProduct.order.QueryVo;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
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 java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
import java.util.List;
import java.util.Map;
@@ -30,10 +25,6 @@
private PrOrderMapper orderDao;
private PrOrderItemMapper orderItemDao;
private UserUtil userUtil;
- private FileOperate fileOperate;
- private OthFileMapper othFileMapper;
- @Value("${dy.webFile.fmUrl}")
- private String fmUrl;
@Autowired
public void setOrderDao(PrOrderMapper orderDao) {
@@ -49,17 +40,6 @@
public void setUserUtil(UserUtil userUtil) {
this.userUtil = userUtil;
}
-
- @Autowired
- public void setFileOperate(FileOperate fileOperate) {
- this.fileOperate = fileOperate;
- }
-
- @Autowired
- public void setOthFileMapper(OthFileMapper othFileMapper) {
- this.othFileMapper = othFileMapper;
- }
-
@Transactional
public int save(PrOrder p) {
p.id = null;
@@ -67,6 +47,7 @@
if (orderDao.exists(p.name, p.id)) {
throw new RuntimeException("璁㈠崟鍚嶇О涓嶈兘閲嶅");
}
+ extractedCheck(p);
p.setDeleted(false);
BaUser loginUser = userUtil.getUser(UserTokenContext.get());
if (loginUser != null) {
@@ -82,6 +63,7 @@
if (orderDao.exists(p.name, p.id)) {
throw new RuntimeException("璁㈠崟鍚嶇О涓嶈兘閲嶅");
}
+ extractedCheck(p);
int count = orderDao.updateByPrimaryKeySelective(p);
if (count > 0) {
saveOrderItems(p);
@@ -114,6 +96,7 @@
public PrOrder selectById(String proId) {
PrOrder pro = orderDao.selectByPrimaryKey(Long.valueOf(proId));
+ changeRate(pro);
return pro;
}
@@ -162,11 +145,54 @@
}
}
}
- prOrder.setItems(items);
}
public List<PrOrder> selectAll(QueryVo queryVo) {
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
- return orderDao.selectAll(params);
+ List<PrOrder> orderList = orderDao.selectAll(params);
+ for (PrOrder prOrder : orderList) {
+ changeRate(prOrder);
+ }
+ return orderList;
+ }
+ /**
+ * 鍙洿鏂扮姸鎬�,涓嶆洿鏂板叾浠栧瓧娈�
+ * @param order
+ * 鏇存柊鐘舵�� 濡傛灉鏈夊湪鎵ц涓殑浠诲姟,涓嶈鏆傚仠
+ * @return
+ */
+ @Transactional
+ public int updateStatus(PrOrder order) {
+ if(order.status == OrderStatusEnum.NORMAL.getCode()){
+ PrOrder prOrder = orderDao.selectByPrimaryKey(order.id);
+ prOrder.status = order.status;
+ extractedCheck(prOrder);
+ }
+ PrOrder param = new PrOrder();
+ param.id =order.id;
+ param.status = order.status;
+ return orderDao.updateByPrimaryKeySelective(param);
+ }
+ //濡傛灉浜ゆ湡灏忎簬褰撳墠鏃堕棿,涓嶅厑璁歌缃负姝e父
+ private void extractedCheck(PrOrder order) {
+ if(order.status == OrderStatusEnum.NORMAL.getCode()){
+ String deliveryDateStr = order.getDeliveryDate();
+ LocalDate endDate = LocalDate.parse(deliveryDateStr, DateTimeFormatter.ISO_LOCAL_DATE);
+ LocalDate nextDay = endDate.plusDays(1);
+ LocalDate today = LocalDate.now(); // 鑾峰彇褰撳墠鏃ユ湡
+ if (nextDay.isBefore(today)) {
+ throw new RuntimeException("浜や粯鏃ユ湡蹇呴』澶т簬绛変簬褰撳墠鏃ユ湡,璇蜂慨鏀逛氦浠樻棩鏈�");
+ }
+ }
+ //濡傛灉鏈夊湪鐢熶骇鐨勪换鍔′笉鑳借缃负鏆傚仠 鎴� 缁撴潫
+ /*
+ PrProductionProcess process = processDao.selectByPrimaryKey(order.processId);
+ if(process == null || !process.proId.equals(order.proId)){
+ throw new RuntimeException("浜у搧涓庣敓浜ф祦绋嬩笉鍖归厤");
+ }
+ //寮�濮嬫棩鏈熻灏忎簬缁撴潫鏃ユ湡
+ if(order.startDate.compareTo(order.endDate) > 0){
+ throw new RuntimeException("寮�濮嬫棩鏈熶笉鑳藉ぇ浜庣粨鏉熸棩鏈�");
+ }*/
}
}
\ No newline at end of file
--
Gitblit v1.8.0