From 2d9f375aa63d2eb16fb4849f23536542e27caa2f Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期五, 30 九月 2022 13:29:48 +0800
Subject: [PATCH] 优化代码

---
 service-community/src/main/java/com/java110/community/cmd/inspectionItemTitle/SaveInspectionItemTitleCmd.java |   48 +++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 39 insertions(+), 9 deletions(-)

diff --git a/service-community/src/main/java/com/java110/community/cmd/inspectionItemTitle/SaveInspectionItemTitleCmd.java b/service-community/src/main/java/com/java110/community/cmd/inspectionItemTitle/SaveInspectionItemTitleCmd.java
index 70694db..dfc073e 100644
--- a/service-community/src/main/java/com/java110/community/cmd/inspectionItemTitle/SaveInspectionItemTitleCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/inspectionItemTitle/SaveInspectionItemTitleCmd.java
@@ -15,22 +15,26 @@
  */
 package com.java110.community.cmd.inspectionItemTitle;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.annotation.Java110Transactional;
 import com.java110.core.context.ICmdDataFlowContext;
-import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.inspectionItemTitle.InspectionItemTitleDto;
 import com.java110.intf.community.IInspectionItemTitleV1InnerServiceSMO;
+import com.java110.intf.community.IInspectionItemTitleValueV1InnerServiceSMO;
 import com.java110.po.inspectionItemTitle.InspectionItemTitlePo;
+import com.java110.po.inspectionItemTitleValue.InspectionItemTitleValuePo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.vo.ResultVo;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
 
 /**
  * 绫昏〃杩帮細淇濆瓨
@@ -43,7 +47,7 @@
  * // modify by 寮犱笁 at 2021-09-12 绗�10琛屽湪鏌愮鍦烘櫙涓嬪瓨鍦ㄦ煇绉峛ug 闇�瑕佷慨澶嶏紝娉ㄩ噴10鑷�20琛� 鍔犲叆 20琛岃嚦30琛�
  */
 @Java110Cmd(serviceCode = "inspectionItemTitle.saveInspectionItemTitle")
-public class SaveInspectionItemTitleCmd extends AbstractServiceCmdListener {
+public class SaveInspectionItemTitleCmd extends Cmd {
 
     private static Logger logger = LoggerFactory.getLogger(SaveInspectionItemTitleCmd.class);
 
@@ -52,21 +56,31 @@
     @Autowired
     private IInspectionItemTitleV1InnerServiceSMO inspectionItemTitleV1InnerServiceSMOImpl;
 
+
+    @Autowired
+    private IInspectionItemTitleValueV1InnerServiceSMO inspectionItemTitleValueV1InnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "itemId", "璇锋眰鎶ユ枃涓湭鍖呭惈itemId");
-Assert.hasKeyAndValue(reqJson, "itemTitle", "璇锋眰鎶ユ枃涓湭鍖呭惈itemTitle");
-Assert.hasKeyAndValue(reqJson, "titleType", "璇锋眰鎶ユ枃涓湭鍖呭惈titleType");
-Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
-Assert.hasKeyAndValue(reqJson, "seq", "璇锋眰鎶ユ枃涓湭鍖呭惈seq");
-
+        Assert.hasKeyAndValue(reqJson, "itemTitle", "璇锋眰鎶ユ枃涓湭鍖呭惈itemTitle");
+        Assert.hasKeyAndValue(reqJson, "titleType", "璇锋眰鎶ユ枃涓湭鍖呭惈titleType");
+        Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
+        Assert.hasKeyAndValue(reqJson, "seq", "璇锋眰鎶ユ枃涓湭鍖呭惈seq");
+        JSONArray titleValues = null;
+        if (!InspectionItemTitleDto.TITLE_TYPE_QUESTIONS.equals(reqJson.getString("titleType"))) {
+            titleValues = reqJson.getJSONArray("titleValues");
+            if (titleValues.size() < 1) {
+                throw new IllegalArgumentException("鏈寘鍚�夐」");
+            }
+        }
     }
 
     @Override
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
 
-       InspectionItemTitlePo inspectionItemTitlePo = BeanConvertUtil.covertBean(reqJson, InspectionItemTitlePo.class);
+        InspectionItemTitlePo inspectionItemTitlePo = BeanConvertUtil.covertBean(reqJson, InspectionItemTitlePo.class);
         inspectionItemTitlePo.setTitleId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
         int flag = inspectionItemTitleV1InnerServiceSMOImpl.saveInspectionItemTitle(inspectionItemTitlePo);
 
@@ -74,6 +88,22 @@
             throw new CmdException("淇濆瓨鏁版嵁澶辫触");
         }
 
+        if (InspectionItemTitleDto.TITLE_TYPE_QUESTIONS.equals(inspectionItemTitlePo.getTitleType())) {
+            cmdDataFlowContext.setResponseEntity(ResultVo.success());
+            return;
+        }
+        JSONArray titleValues = reqJson.getJSONArray("titleValues");
+        InspectionItemTitleValuePo reportInfoSettingTitleValuePo = null;
+        for (int titleValueIndex = 0; titleValueIndex < titleValues.size(); titleValueIndex++) {
+            reportInfoSettingTitleValuePo = new InspectionItemTitleValuePo();
+            reportInfoSettingTitleValuePo.setItemValue(titleValues.getJSONObject(titleValueIndex).getString("itemValue"));
+            reportInfoSettingTitleValuePo.setSeq(titleValues.getJSONObject(titleValueIndex).getString("seq"));
+            reportInfoSettingTitleValuePo.setTitleId(inspectionItemTitlePo.getTitleId());
+            reportInfoSettingTitleValuePo.setValueId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_valueId));
+            reportInfoSettingTitleValuePo.setCommunityId(inspectionItemTitlePo.getCommunityId());
+            inspectionItemTitleValueV1InnerServiceSMOImpl.saveInspectionItemTitleValue(reportInfoSettingTitleValuePo);
+        }
+
         cmdDataFlowContext.setResponseEntity(ResultVo.success());
     }
 }

--
Gitblit v1.8.0