Преглед изворни кода

优化 访客时加入拍照工能

java110 пре 6 година
родитељ
комит
77ca209b48

+ 1 - 1
service-api/src/main/java/com/java110/api/bmo/visit/impl/VisitBMOImpl.java

@@ -46,7 +46,7 @@ public class VisitBMOImpl extends ApiBaseBMO implements IVisitBMO {
 
         JSONObject businessVisit = new JSONObject();
         businessVisit.putAll(paramInJson);
-        businessVisit.put("vId", "-1");
+
         VisitPo visitPo = BeanConvertUtil.covertBean(businessVisit, VisitPo.class);
         super.insert(dataFlowContext, visitPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_VISIT);
     }

+ 35 - 1
service-api/src/main/java/com/java110/api/listener/visit/SaveVisitListener.java

@@ -1,13 +1,21 @@
 package com.java110.api.listener.visit;
 
 import com.alibaba.fastjson.JSONObject;
+import com.java110.api.bmo.owner.IOwnerBMO;
 import com.java110.api.bmo.visit.IVisitBMO;
 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.smo.file.IFileInnerServiceSMO;
+import com.java110.dto.file.FileDto;
+import com.java110.po.file.FileRelPo;
+import com.java110.utils.constant.BusinessTypeConstant;
 import com.java110.utils.constant.ServiceCodeVisitConstant;
 import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpMethod;
 
@@ -21,6 +29,10 @@ public class SaveVisitListener extends AbstractServiceApiPlusListener {
     @Autowired
     private IVisitBMO visitBMOImpl;
 
+
+    @Autowired
+    private IFileInnerServiceSMO fileInnerServiceSMOImpl;
+
     @Override
     protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
         //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
@@ -34,8 +46,30 @@ public class SaveVisitListener extends AbstractServiceApiPlusListener {
 
     @Override
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-
+        reqJson.put("vId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_vId));
         visitBMOImpl.addVisit(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("photoId", fileDto.getFileId());
+            reqJson.put("fileSaveName", fileName);
+
+            JSONObject businessUnit = new JSONObject();
+            businessUnit.put("fileRelId", "-1");
+            businessUnit.put("relTypeCd", "11000");
+            businessUnit.put("saveWay", "table");
+            businessUnit.put("objId", reqJson.getString("vId"));
+            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);
+        }
     }
 
     @Override