From f3fb691a52a02954ca017a07ae39ac90b322aa1c Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期一, 11 十一月 2019 22:59:39 +0800
Subject: [PATCH] 修复 编辑时添加图片信息
---
Api/src/main/java/com/java110/api/listener/owner/EditOwnerListener.java | 91 +++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 91 insertions(+), 0 deletions(-)
diff --git a/Api/src/main/java/com/java110/api/listener/owner/EditOwnerListener.java b/Api/src/main/java/com/java110/api/listener/owner/EditOwnerListener.java
index 371fd22..c991d07 100644
--- a/Api/src/main/java/com/java110/api/listener/owner/EditOwnerListener.java
+++ b/Api/src/main/java/com/java110/api/listener/owner/EditOwnerListener.java
@@ -3,19 +3,31 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.api.listener.AbstractServiceApiDataFlowListener;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.smo.file.IFileInnerServiceSMO;
+import com.java110.core.smo.file.IFileRelInnerServiceSMO;
+import com.java110.dto.file.FileDto;
+import com.java110.dto.file.FileRelDto;
import com.java110.utils.constant.BusinessTypeConstant;
import com.java110.utils.constant.CommonConstant;
+import com.java110.utils.constant.ResponseConstant;
import com.java110.utils.constant.ServiceCodeConstant;
+import com.java110.utils.exception.ListenerExecuteException;
import com.java110.utils.util.Assert;
import com.java110.core.annotation.Java110Listener;
import com.java110.core.context.DataFlowContext;
import com.java110.entity.center.AppService;
import com.java110.event.service.api.ServiceDataFlowEvent;
+import com.java110.utils.util.BeanConvertUtil;
+import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
+
+import java.util.List;
/**
* @ClassName EditOwnerListener
@@ -29,6 +41,12 @@
public class EditOwnerListener extends AbstractServiceApiDataFlowListener {
private static Logger logger = LoggerFactory.getLogger(EditOwnerListener.class);
+
+ @Autowired
+ private IFileInnerServiceSMO fileInnerServiceSMOImpl;
+
+ @Autowired
+ private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
@Override
public String getServiceCode() {
@@ -61,6 +79,22 @@
if (!paramObj.containsKey("ownerId") || "1001".equals(paramObj.getString("ownerTypeCd"))) {
paramObj.put("ownerId", paramObj.getString("memberId"));
+ }
+
+ if (paramObj.containsKey("ownerPhoto") && !StringUtils.isEmpty(paramObj.getString("ownerPhoto"))) {
+ FileDto fileDto = new FileDto();
+ fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
+ fileDto.setFileName(fileDto.getFileId());
+ fileDto.setContext(paramObj.getString("ownerPhoto"));
+ fileDto.setSuffix("jpeg");
+ fileDto.setCommunityId(paramObj.getString("communityId"));
+ if (fileInnerServiceSMOImpl.saveFile(fileDto) < 1) {
+ throw new ListenerExecuteException(ResponseConstant.RESULT_PARAM_ERROR, "淇濆瓨鏂囦欢鍑洪敊");
+ }
+ paramObj.put("ownerPhotoId", fileDto.getFileId());
+
+ businesses.add(editOwnerPhoto(paramObj, dataFlowContext));
+
}
//娣诲姞灏忓尯妤�
businesses.add(editOwner(paramObj));
@@ -116,8 +150,65 @@
return business;
}
+ /**
+ * 娣诲姞鐗╀笟璐圭敤
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ private JSONObject editOwnerPhoto(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+ FileRelDto fileRelDto = new FileRelDto();
+ fileRelDto.setRelTypeCd("10000");
+ fileRelDto.setObjId(paramInJson.getString("memberId"));
+ List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
+ if(fileRelDtos == null || fileRelDtos.size() == 0){
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FILE_REL);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ businessUnit.put("fileRelId", "-1");
+ businessUnit.put("relTypeCd", "10000");
+ businessUnit.put("saveWay", "table");
+ businessUnit.put("objId", paramInJson.getString("memberId"));
+ businessUnit.put("fileRealName", paramInJson.getString("ownerPhotoId"));
+ businessUnit.put("fileSaveName", paramInJson.getString("ownerPhotoId"));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit);
+ return business;
+ }
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_FILE_REL);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ businessUnit.putAll(BeanConvertUtil.beanCovertMap(fileRelDtos.get(0)));
+ businessUnit.put("fileRealName", paramInJson.getString("ownerPhotoId"));
+ businessUnit.put("fileSaveName", paramInJson.getString("ownerPhotoId"));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit);
+ return business;
+
+
+ }
@Override
public int getOrder() {
return DEFAULT_ORDER;
}
+
+ public IFileInnerServiceSMO getFileInnerServiceSMOImpl() {
+ return fileInnerServiceSMOImpl;
+ }
+
+ public void setFileInnerServiceSMOImpl(IFileInnerServiceSMO fileInnerServiceSMOImpl) {
+ this.fileInnerServiceSMOImpl = fileInnerServiceSMOImpl;
+ }
+
+ public IFileRelInnerServiceSMO getFileRelInnerServiceSMOImpl() {
+ return fileRelInnerServiceSMOImpl;
+ }
+
+ public void setFileRelInnerServiceSMOImpl(IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl) {
+ this.fileRelInnerServiceSMOImpl = fileRelInnerServiceSMOImpl;
+ }
}
--
Gitblit v1.8.0