From 645da5e4e48dd94b760ea4dcbf80e22bf2a3f33c Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 11 一月 2025 17:20:08 +0800
Subject: [PATCH] #添加播种站点功能

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java |   77 ++++++++++++++++++++++++++++++++------
 1 files changed, 65 insertions(+), 12 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java
index d155b5c..3e4a0a5 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaveSeedServiceImpl.java
@@ -1,12 +1,65 @@
-package com.zy.asrs.wms.asrs.service.impl;
-
-import com.zy.asrs.wms.asrs.mapper.WaveSeedMapper;
-import com.zy.asrs.wms.asrs.entity.WaveSeed;
-import com.zy.asrs.wms.asrs.service.WaveSeedService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.stereotype.Service;
-
-@Service("waveSeedService")
-public class WaveSeedServiceImpl extends ServiceImpl<WaveSeedMapper, WaveSeed> implements WaveSeedService {
-
-}
+package com.zy.asrs.wms.asrs.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.zy.asrs.framework.exception.CoolException;
+import com.zy.asrs.wms.apis.wcs.entity.response.SowSeeds;
+import com.zy.asrs.wms.asrs.entity.param.WaveSeedReviewParam;
+import com.zy.asrs.wms.asrs.mapper.WaveSeedMapper;
+import com.zy.asrs.wms.asrs.entity.WaveSeed;
+import com.zy.asrs.wms.asrs.service.WaveSeedService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Optional;
+
+@Service("waveSeedService")
+public class WaveSeedServiceImpl extends ServiceImpl<WaveSeedMapper, WaveSeed> implements WaveSeedService {
+
+    @Override
+    public void waveSeedReview(WaveSeedReviewParam param) {
+        if (param == null) {
+            throw new CoolException("鍙傛暟涓嶈兘涓虹┖");
+        }
+
+        if (param.getWaveSeedId() == null) {
+            throw new CoolException("鎾鏁版嵁涓嶈兘涓虹┖");
+        }
+
+        if (param.getReviewNum() == null) {
+            throw new CoolException("鎾鏁伴噺涓嶈兘涓虹┖");
+        }
+
+        if (param.getReviewNum() <= 0) {
+            throw new CoolException("鎾鏁伴噺闇�瑕佸ぇ浜�0");
+        }
+
+        WaveSeed waveSeed = this.getById(param.getWaveSeedId());
+        if (waveSeed == null) {
+            throw new CoolException("鎾鏁版嵁涓嶅瓨鍦�");
+        }
+
+        Double stock = Optional.of(waveSeed.getAnfme() - waveSeed.getWorkQty()).orElse(0.0D);
+        if (stock - param.getReviewNum() < 0) {
+            throw new CoolException("鎾鏁伴噺宸叉弧");
+        }
+
+        waveSeed.setWorkQty(waveSeed.getWorkQty() + param.getReviewNum());
+        waveSeed.setUpdateTime(new Date());
+        if (!this.updateById(waveSeed)) {
+            throw new CoolException("鎾澶嶆牳鏇存柊澶辫触");
+        }
+    }
+
+    @Override
+    public List<SowSeeds> selectSeedsList() {
+       return this.baseMapper.getSeedsList(new LambdaQueryWrapper<WaveSeed>().eq(WaveSeed::getStatus, 1).eq(WaveSeed::getDeleted, 0));
+    }
+
+    @Override
+    public int removeSowById(Long id) {
+        return this.baseMapper.update(new LambdaUpdateWrapper<WaveSeed>().eq(WaveSeed::getId, id).set(WaveSeed::getDeleted, 1).set(WaveSeed::getStatus, 0));
+    }
+}

--
Gitblit v1.9.1