From daf1dd052ec8afbc9a566694a824c79c77d9b96b Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 12 四月 2025 17:25:42 +0800
Subject: [PATCH] no message
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java | 29 +++++++++++++++++++++++++++--
1 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
index 15498b2..08d52a5 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
@@ -231,6 +231,21 @@
return R.ok("鏀惰揣鎴愬姛锛侊紒");
}
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R closeOrder(Long id) {
+ AsnOrder order = this.getById(id);
+ if (Objects.isNull(order)) {
+ throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
+ }
+ try {
+ operateOrderLogs(order);
+ } catch (Exception e) {
+ throw new CoolException("鍗曟嵁鍏抽棴澶辫触锛侊紒");
+ }
+ return null;
+ }
+
/**
* @author Ryan
* @description 鍒犻櫎鍘熶富鍗曞強鏄庣粏锛屽姞鍏ュ巻鍙叉。
@@ -243,9 +258,18 @@
if (Objects.isNull(asrder) || Objects.isNull(asrder.getId())) {
throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
- if (Objects.isNull(asrder.getAnfme()) || asrder.getAnfme().compareTo(0.00) == 0) {
- throw new CoolException("鏀惰揣鏁伴噺涓嶈兘涓洪浂锛侊紒");
+ asrder.setExceStatus(Short.parseShort(AsnExceStatus.ASN_EXCE_STATUS_TASK_CLOSE.val));
+
+ if (!this.updateById(asrder)) {
+ throw new CoolException("鍗曟嵁鍏抽棴澶辫触锛侊紒");
}
+ List<AsnOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getAsnId, asrder.getId()));
+ if (orderItems.isEmpty()) {
+ throw new CoolException("鏀惰揣鏄庣粏涓虹┖锛侊紒");
+ }
+// if (Objects.isNull(asrder.getAnfme()) || asrder.getAnfme().compareTo(0.00) == 0) {
+// throw new CoolException("鏀惰揣鏁伴噺涓嶈兘涓洪浂锛侊紒");
+// }
AsnOrder order = this.getById(asrder.getId());
AsnOrderLog orderLog = new AsnOrderLog();
order.setExceStatus(Short.parseShort(AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val));
@@ -266,6 +290,7 @@
AsnOrderItemLog itemLog = new AsnOrderItemLog();
BeanUtils.copyProperties(item, itemLog);
itemLog.setAsnItemId(itemLog.getId())
+ .setLogId(orderLog.getId())
.setAsnId(item.getAsnId());
logs.add(itemLog);
});
--
Gitblit v1.9.1