From 357f12084dd380a23a1140b4935087bf6878e7c6 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期一, 24 四月 2023 14:54:13 +0800
Subject: [PATCH] optimize bug

---
 service-user/src/main/java/com/java110/user/bmo/questionAnswerTitle/impl/UpdateQuestionAnswerTitleBMOImpl.java |   37 +++++++++++++++++++++++++++++++++----
 1 files changed, 33 insertions(+), 4 deletions(-)

diff --git a/service-user/src/main/java/com/java110/user/bmo/questionAnswerTitle/impl/UpdateQuestionAnswerTitleBMOImpl.java b/service-user/src/main/java/com/java110/user/bmo/questionAnswerTitle/impl/UpdateQuestionAnswerTitleBMOImpl.java
old mode 100644
new mode 100755
index 8bb3ad2..ecc1c34
--- a/service-user/src/main/java/com/java110/user/bmo/questionAnswerTitle/impl/UpdateQuestionAnswerTitleBMOImpl.java
+++ b/service-user/src/main/java/com/java110/user/bmo/questionAnswerTitle/impl/UpdateQuestionAnswerTitleBMOImpl.java
@@ -1,8 +1,14 @@
 package com.java110.user.bmo.questionAnswerTitle.impl;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Transactional;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.questionAnswer.QuestionAnswerTitleDto;
 import com.java110.intf.user.IQuestionAnswerTitleInnerServiceSMO;
+import com.java110.intf.user.IQuestionAnswerTitleValueInnerServiceSMO;
 import com.java110.po.questionAnswerTitle.QuestionAnswerTitlePo;
+import com.java110.po.questionAnswerTitleValue.QuestionAnswerTitleValuePo;
 import com.java110.user.bmo.questionAnswerTitle.IUpdateQuestionAnswerTitleBMO;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -14,21 +20,44 @@
 
     @Autowired
     private IQuestionAnswerTitleInnerServiceSMO questionAnswerTitleInnerServiceSMOImpl;
+    @Autowired
+    private IQuestionAnswerTitleValueInnerServiceSMO questionAnswerTitleValueInnerServiceSMOImpl;
 
     /**
      * @param questionAnswerTitlePo
      * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
      */
     @Java110Transactional
-    public ResponseEntity<String> update(QuestionAnswerTitlePo questionAnswerTitlePo) {
+    public ResponseEntity<String> update(QuestionAnswerTitlePo questionAnswerTitlePo, JSONArray titleValues) {
 
         int flag = questionAnswerTitleInnerServiceSMOImpl.updateQuestionAnswerTitle(questionAnswerTitlePo);
 
-        if (flag > 0) {
+        if (flag < 0) {
+            return ResultVo.createResponseEntity(ResultVo.CODE_ERROR, "淇濆瓨澶辫触");
+
+        }
+        if (QuestionAnswerTitleDto.TITLE_TYPE_QUESTIONS.equals(questionAnswerTitlePo.getTitleType())) {
             return ResultVo.createResponseEntity(ResultVo.CODE_OK, "淇濆瓨鎴愬姛");
         }
-
-        return ResultVo.createResponseEntity(ResultVo.CODE_ERROR, "淇濆瓨澶辫触");
+        QuestionAnswerTitleValuePo questionAnswerTitleValuePo = null;
+        JSONObject value = null;
+        for (int titleValueIndex = 0; titleValueIndex < titleValues.size(); titleValueIndex++) {
+            questionAnswerTitleValuePo = new QuestionAnswerTitleValuePo();
+            value = titleValues.getJSONObject(titleValueIndex);
+            questionAnswerTitleValuePo.setQaValue(titleValues.getJSONObject(titleValueIndex).getString("qaValue"));
+            questionAnswerTitleValuePo.setSeq(titleValues.getJSONObject(titleValueIndex).getString("seq"));
+            questionAnswerTitleValuePo.setTitleId(questionAnswerTitlePo.getTitleId());
+            questionAnswerTitleValuePo.setObjId(questionAnswerTitlePo.getObjId());
+            questionAnswerTitleValuePo.setObjType(questionAnswerTitlePo.getObjType());
+            if (value.containsKey("valueId") && !value.getString("valueId").startsWith("-")) {
+                questionAnswerTitleValuePo.setValueId(value.getString("valueId"));
+                questionAnswerTitleValueInnerServiceSMOImpl.updateQuestionAnswerTitleValue(questionAnswerTitleValuePo);
+            } else {
+                questionAnswerTitleValuePo.setValueId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_valueId));
+                questionAnswerTitleValueInnerServiceSMOImpl.saveQuestionAnswerTitleValue(questionAnswerTitleValuePo);
+            }
+        }
+        return ResultVo.createResponseEntity(ResultVo.CODE_OK, "淇濆瓨鎴愬姛");
     }
 
 }

--
Gitblit v1.8.0