Просмотр исходного кода

处理投诉没有 照片问题

java110 лет назад: 5
Родитель
Сommit
af7399e10a

+ 30 - 27
service-api/src/main/java/com/java110/api/listener/complaint/SaveComplaintListener.java

@@ -1,8 +1,12 @@
 package com.java110.api.listener.complaint;
 package com.java110.api.listener.complaint;
 
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.complaint.IComplaintBMO;
 import com.java110.api.bmo.complaint.IComplaintBMO;
 import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.api.listener.AbstractServiceApiPlusListener;
+import com.java110.core.annotation.Java110Listener;
+import com.java110.core.context.DataFlowContext;
+import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.smo.common.IComplaintUserInnerServiceSMO;
 import com.java110.core.smo.common.IComplaintUserInnerServiceSMO;
 import com.java110.core.smo.common.IFileInnerServiceSMO;
 import com.java110.core.smo.common.IFileInnerServiceSMO;
@@ -10,15 +14,9 @@ import com.java110.dto.complaint.ComplaintDto;
 import com.java110.dto.file.FileDto;
 import com.java110.dto.file.FileDto;
 import com.java110.po.file.FileRelPo;
 import com.java110.po.file.FileRelPo;
 import com.java110.utils.constant.BusinessTypeConstant;
 import com.java110.utils.constant.BusinessTypeConstant;
-import com.java110.utils.util.Assert;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.utils.constant.ServiceCodeComplaintConstant;
 import com.java110.utils.constant.ServiceCodeComplaintConstant;
-
-
-import com.java110.core.annotation.Java110Listener;
+import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.BeanConvertUtil;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.HttpStatus;
@@ -59,26 +57,31 @@ public class SaveComplaintListener extends AbstractServiceApiPlusListener {
 
 
         complaintBMOImpl.addComplaint(reqJson, context);
         complaintBMOImpl.addComplaint(reqJson, context);
 
 
-        if (reqJson.containsKey("photo") && !StringUtils.isEmpty(reqJson.getString("photo"))) {
-            FileDto fileDto = new FileDto();
-            fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
-            fileDto.setFileName(fileDto.getFileId());
-            fileDto.setContext(reqJson.getString("photo"));
-            fileDto.setSuffix("jpeg");
-            fileDto.setCommunityId(reqJson.getString("communityId"));
-            String fileName = fileInnerServiceSMOImpl.saveFile(fileDto);
-            reqJson.put("ownerPhotoId", fileDto.getFileId());
-            reqJson.put("fileSaveName", fileName);
-
-            JSONObject businessUnit = new JSONObject();
-            businessUnit.put("fileRelId", "-1");
-            businessUnit.put("relTypeCd", "13000");
-            businessUnit.put("saveWay", "table");
-            businessUnit.put("objId", reqJson.getString("complaintId"));
-            businessUnit.put("fileRealName", fileDto.getFileId());
-            businessUnit.put("fileSaveName", fileName);
-            FileRelPo fileRelPo = BeanConvertUtil.covertBean(businessUnit, FileRelPo.class);
-            super.insert(context, fileRelPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FILE_REL);
+        if (reqJson.containsKey("photos") && reqJson.getJSONArray("photos").size() > 0) {
+            JSONArray photos = reqJson.getJSONArray("photos");
+            for (int photoIndex = 0; photoIndex < photos.size(); photoIndex++) {
+
+                JSONObject photoObj = photos.getJSONObject(photoIndex);
+                FileDto fileDto = new FileDto();
+                fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
+                fileDto.setFileName(fileDto.getFileId());
+                fileDto.setContext(photoObj.getString("photo"));
+                fileDto.setSuffix("jpeg");
+                fileDto.setCommunityId(reqJson.getString("communityId"));
+                String fileName = fileInnerServiceSMOImpl.saveFile(fileDto);
+                reqJson.put("ownerPhotoId", fileDto.getFileId());
+                reqJson.put("fileSaveName", fileName);
+
+                JSONObject businessUnit = new JSONObject();
+                businessUnit.put("fileRelId", "-1");
+                businessUnit.put("relTypeCd", "13000");
+                businessUnit.put("saveWay", "table");
+                businessUnit.put("objId", reqJson.getString("complaintId"));
+                businessUnit.put("fileRealName", fileDto.getFileId());
+                businessUnit.put("fileSaveName", fileName);
+                FileRelPo fileRelPo = BeanConvertUtil.covertBean(businessUnit, FileRelPo.class);
+                super.insert(context, fileRelPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FILE_REL);
+            }
         }
         }
 
 
         commit(context);
         commit(context);