Browse Source

采纳或拒绝报价时,增加验证。

dongbw 7 years ago
parent
commit
a20edce9d1

+ 20 - 0
src/main/java/com/uas/ps/inquiry/service/impl/InquiryServiceImpl.java

@@ -495,6 +495,8 @@ public class InquiryServiceImpl implements InquiryService {
     @Override
     public void decideQuote(Long id, Short status) {
         PublicInquiryItem item = itemDao.findOne(id);
+        // 验证是否重复操作
+        validateInquiry(item);
         item.setAgreed(status);
         itemDao.save(item);
         // 更新询价推荐表相关信息
@@ -521,6 +523,8 @@ public class InquiryServiceImpl implements InquiryService {
     @Override
     public void adpotQuote(Long id, Short status) {
         PublicInquiryItem item = itemDao.findOne(id);
+        // 验证是否重复操作
+        validateInquiry(item);
         item.setAgreed(status);
         itemDao.save(item);
         // 更新询价推荐表相关信息
@@ -537,6 +541,20 @@ public class InquiryServiceImpl implements InquiryService {
         inquiryService.adoptMessage(item, InquirySource.MALL.name());
     }
 
+    /**
+     * 验证是否已采纳或拒绝
+     * @param item 报价单
+     */
+    private void validateInquiry(PublicInquiryItem item) {
+        if (null != item.getAgreed()) {
+            if (item.getAgreed().equals(Constant.YES)) {
+                throw new IllegalOperatorException("该报价已被采纳,请勿重复处理");
+            } else if (item.getAgreed().equals(Constant.NO)) {
+                throw new IllegalOperatorException("该报价已被拒绝,请勿重复处理");
+            }
+        }
+    }
+
     /**
      * 商城通过报价明细id拒绝对供应商报价
      *
@@ -546,6 +564,8 @@ public class InquiryServiceImpl implements InquiryService {
     @Override
     public void refuseQuote(Long id, Short status,String refusereason) {
         PublicInquiryItem item = itemDao.findOne(id);
+        // 验证是否重复操作
+        validateInquiry(item);
         item.setAgreed(status);
         item.setRefusereason(refusereason);
         itemDao.save(item);