From 3c09ffa8838d00ba72db53f35758eb1678ef6d07 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 08 十一月 2022 02:45:54 +0800
Subject: [PATCH] 优化保养计划添加功能

---
 service-community/src/main/java/com/java110/community/cmd/maintainance/SaveMaintainanceStandardItemCmd.java |   47 ++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 40 insertions(+), 7 deletions(-)

diff --git a/service-community/src/main/java/com/java110/community/cmd/maintainance/SaveMaintainanceStandardItemCmd.java b/service-community/src/main/java/com/java110/community/cmd/maintainance/SaveMaintainanceStandardItemCmd.java
index 851a7d5..5c89cd1 100644
--- a/service-community/src/main/java/com/java110/community/cmd/maintainance/SaveMaintainanceStandardItemCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/maintainance/SaveMaintainanceStandardItemCmd.java
@@ -15,6 +15,7 @@
  */
 package com.java110.community.cmd.maintainance;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.annotation.Java110Transactional;
@@ -22,6 +23,7 @@
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.maintainanceStandardItem.MaintainanceStandardItemDto;
 import com.java110.intf.community.IMaintainanceStandardItemV1InnerServiceSMO;
 import com.java110.po.maintainanceStandardItem.MaintainanceStandardItemPo;
 import com.java110.utils.exception.CmdException;
@@ -31,6 +33,8 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+
+import java.util.List;
 
 /**
  * 绫昏〃杩帮細淇濆瓨
@@ -55,8 +59,30 @@
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "standardId", "璇锋眰鎶ユ枃涓湭鍖呭惈standardId");
-Assert.hasKeyAndValue(reqJson, "itemId", "璇锋眰鎶ユ枃涓湭鍖呭惈itemId");
-Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
+        Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
+
+        if(!reqJson.containsKey("items")){
+            throw new CmdException("鏈寘鍚鏌ラ」");
+        }
+
+        JSONArray items = reqJson.getJSONArray("items");
+
+        if(items.size() < 1){
+            throw new CmdException("鏈寘鍚鏌ラ」");
+        }
+        String itemId = "";
+        MaintainanceStandardItemDto maintainanceStandardItemDto = new MaintainanceStandardItemDto();
+        maintainanceStandardItemDto.setStandardId(reqJson.getString("standardId"));
+        List<MaintainanceStandardItemDto> maintainanceStandardItemDtos = null;
+        for(int itemIndex = 0; itemIndex < items.size(); itemIndex++) {
+            itemId = items.getString(itemIndex);
+            maintainanceStandardItemDto.setItemId(itemId);
+            maintainanceStandardItemDtos = maintainanceStandardItemV1InnerServiceSMOImpl.queryMaintainanceStandardItems(maintainanceStandardItemDto);
+
+            if (maintainanceStandardItemDtos != null && maintainanceStandardItemDtos.size() >0) {
+                throw new CmdException(maintainanceStandardItemDtos.get(0).getItemTitle()+"宸茬粡娣诲姞");
+            }
+        }
 
     }
 
@@ -64,12 +90,19 @@
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
 
-       MaintainanceStandardItemPo maintainanceStandardItemPo = BeanConvertUtil.covertBean(reqJson, MaintainanceStandardItemPo.class);
-        maintainanceStandardItemPo.setMsiId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
-        int flag = maintainanceStandardItemV1InnerServiceSMOImpl.saveMaintainanceStandardItem(maintainanceStandardItemPo);
+        MaintainanceStandardItemPo maintainanceStandardItemPo = BeanConvertUtil.covertBean(reqJson, MaintainanceStandardItemPo.class);
+        JSONArray items = reqJson.getJSONArray("items");
+        String itemId = "";
+        int flag = 0;
+        for(int itemIndex = 0; itemIndex < items.size(); itemIndex++) {
+            itemId = items.getString(itemIndex);
+            maintainanceStandardItemPo.setItemId(itemId);
+            maintainanceStandardItemPo.setMsiId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+            flag = maintainanceStandardItemV1InnerServiceSMOImpl.saveMaintainanceStandardItem(maintainanceStandardItemPo);
 
-        if (flag < 1) {
-            throw new CmdException("淇濆瓨鏁版嵁澶辫触");
+            if (flag < 1) {
+                throw new CmdException("淇濆瓨鏁版嵁澶辫触");
+            }
         }
 
         cmdDataFlowContext.setResponseEntity(ResultVo.success());

--
Gitblit v1.8.0