Ver código fonte

优化代码

java110 5 anos atrás
pai
commit
2c354f6caf

+ 2 - 1
service-api/src/main/java/com/java110/api/bmo/ownerAttr/impl/OwnerAttrBMOImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.ApiBaseBMO;
 import com.java110.api.bmo.ApiBaseBMO;
 import com.java110.api.bmo.ownerAttr.IOwnerAttrBMO;
 import com.java110.api.bmo.ownerAttr.IOwnerAttrBMO;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.context.DataFlowContext;
+import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.smo.user.IOwnerAttrInnerServiceSMO;
 import com.java110.core.smo.user.IOwnerAttrInnerServiceSMO;
 import com.java110.po.owner.OwnerAttrPo;
 import com.java110.po.owner.OwnerAttrPo;
 import com.java110.utils.constant.BusinessTypeConstant;
 import com.java110.utils.constant.BusinessTypeConstant;
@@ -26,7 +27,7 @@ public class OwnerAttrBMOImpl extends ApiBaseBMO implements IOwnerAttrBMO {
      */
      */
     public void addOwnerAttr(JSONObject paramInJson, DataFlowContext dataFlowContext) {
     public void addOwnerAttr(JSONObject paramInJson, DataFlowContext dataFlowContext) {
 
 
-        paramInJson.put("attrId", "-1");
+        paramInJson.put("attrId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
         OwnerAttrPo ownerAttrPo = BeanConvertUtil.covertBean(paramInJson, OwnerAttrPo.class);
         OwnerAttrPo ownerAttrPo = BeanConvertUtil.covertBean(paramInJson, OwnerAttrPo.class);
         super.insert(dataFlowContext, ownerAttrPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_ATTR_INFO);
         super.insert(dataFlowContext, ownerAttrPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_ATTR_INFO);
     }
     }

+ 27 - 0
service-api/src/main/java/com/java110/api/listener/owner/EditOwnerListener.java

@@ -1,7 +1,9 @@
 package com.java110.api.listener.owner;
 package com.java110.api.listener.owner;
 
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.owner.IOwnerBMO;
 import com.java110.api.bmo.owner.IOwnerBMO;
+import com.java110.api.bmo.ownerAttr.IOwnerAttrBMO;
 import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.context.DataFlowContext;
@@ -13,6 +15,7 @@ import com.java110.dto.file.FileDto;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.utils.constant.ServiceCodeConstant;
 import com.java110.utils.constant.ServiceCodeConstant;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.Assert;
+import com.java110.utils.util.StringUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
@@ -35,6 +38,9 @@ public class EditOwnerListener extends AbstractServiceApiPlusListener {
     @Autowired
     @Autowired
     private IOwnerBMO ownerBMOImpl;
     private IOwnerBMO ownerBMOImpl;
 
 
+    @Autowired
+    private IOwnerAttrBMO ownerAttrBMOImpl;
+
     @Autowired
     @Autowired
     private IFileInnerServiceSMO fileInnerServiceSMOImpl;
     private IFileInnerServiceSMO fileInnerServiceSMOImpl;
 
 
@@ -66,6 +72,8 @@ public class EditOwnerListener extends AbstractServiceApiPlusListener {
         Assert.jsonObjectHaveKey(reqJson, "ownerTypeCd", "请求报文中未包含sex");
         Assert.jsonObjectHaveKey(reqJson, "ownerTypeCd", "请求报文中未包含sex");
         Assert.jsonObjectHaveKey(reqJson, "communityId", "请求报文中未包含communityId");
         Assert.jsonObjectHaveKey(reqJson, "communityId", "请求报文中未包含communityId");
         // Assert.jsonObjectHaveKey(paramIn, "idCard", "请求报文中未包含身份证号");
         // Assert.jsonObjectHaveKey(paramIn, "idCard", "请求报文中未包含身份证号");
+
+        Assert.judgeAttrValue(reqJson);
     }
     }
 
 
     @Override
     @Override
@@ -91,6 +99,25 @@ public class EditOwnerListener extends AbstractServiceApiPlusListener {
 
 
         }
         }
         ownerBMOImpl.editOwner(reqJson, context);
         ownerBMOImpl.editOwner(reqJson, context);
+
+
+        JSONArray attrs = reqJson.getJSONArray("attrs");
+        if (attrs.size() < 1) {
+            return;
+        }
+
+
+        JSONObject attr = null;
+        for (int attrIndex = 0; attrIndex < attrs.size(); attrIndex++) {
+            attr = attrs.getJSONObject(attrIndex);
+            attr.put("memberId", reqJson.getString("memberId"));
+            attr.put("communityId", reqJson.getString("communityId"));
+            if (!attr.containsKey("attrId") || attr.getString("attrId").startsWith("-") || StringUtil.isEmpty(attr.getString("attrId"))) {
+                ownerAttrBMOImpl.addOwnerAttr(attr, context);
+                continue;
+            }
+            ownerAttrBMOImpl.updateOwnerAttr(attr, context);
+        }
     }
     }
 
 
 
 

+ 35 - 4
service-api/src/main/java/com/java110/api/listener/owner/SaveOwnerListener.java

@@ -1,18 +1,20 @@
 package com.java110.api.listener.owner;
 package com.java110.api.listener.owner;
 
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.owner.IOwnerBMO;
 import com.java110.api.bmo.owner.IOwnerBMO;
+import com.java110.api.bmo.ownerAttr.IOwnerAttrBMO;
 import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 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.factory.SendSmsFactory;
 import com.java110.core.factory.SendSmsFactory;
-import com.java110.intf.common.ISmsInnerServiceSMO;
-import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
-import com.java110.intf.common.IFileInnerServiceSMO;
 import com.java110.dto.file.FileDto;
 import com.java110.dto.file.FileDto;
 import com.java110.dto.msg.SmsDto;
 import com.java110.dto.msg.SmsDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.intf.common.IFileInnerServiceSMO;
+import com.java110.intf.common.ISmsInnerServiceSMO;
+import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.utils.cache.MappingCache;
 import com.java110.utils.cache.MappingCache;
 import com.java110.utils.constant.ServiceCodeConstant;
 import com.java110.utils.constant.ServiceCodeConstant;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.Assert;
@@ -37,6 +39,9 @@ public class SaveOwnerListener extends AbstractServiceApiPlusListener {
     @Autowired
     @Autowired
     private IOwnerBMO ownerBMOImpl;
     private IOwnerBMO ownerBMOImpl;
 
 
+    @Autowired
+    private IOwnerAttrBMO ownerAttrBMOImpl;
+
     @Autowired
     @Autowired
     private ISmsInnerServiceSMO smsInnerServiceSMOImpl;
     private ISmsInnerServiceSMO smsInnerServiceSMOImpl;
 
 
@@ -91,6 +96,8 @@ public class SaveOwnerListener extends AbstractServiceApiPlusListener {
                 throw new IllegalArgumentException(smsDto.getMsg());
                 throw new IllegalArgumentException(smsDto.getMsg());
             }
             }
         }
         }
+        //属性校验
+        Assert.judgeAttrValue(reqJson);
     }
     }
 
 
     @Override
     @Override
@@ -129,6 +136,8 @@ public class SaveOwnerListener extends AbstractServiceApiPlusListener {
             ownerBMOImpl.addOwnerPhoto(reqJson, context);
             ownerBMOImpl.addOwnerPhoto(reqJson, context);
         }
         }
 
 
+        dealOwnerAttr(reqJson, context);
+
     }
     }
 
 
     /**
     /**
@@ -144,6 +153,28 @@ public class SaveOwnerListener extends AbstractServiceApiPlusListener {
         }
         }
     }
     }
 
 
+    private void dealOwnerAttr(JSONObject paramObj, DataFlowContext context) {
+
+        if (!paramObj.containsKey("attrs")) {
+            return;
+        }
+
+        JSONArray attrs = paramObj.getJSONArray("attrs");
+        if (attrs.size() < 1) {
+            return;
+        }
+
+
+        JSONObject attr = null;
+        for (int attrIndex = 0; attrIndex < attrs.size(); attrIndex++) {
+            attr = attrs.getJSONObject(attrIndex);
+            attr.put("communityId", paramObj.getString("communityId"));
+            attr.put("memberId", paramObj.getString("memberId"));
+            ownerAttrBMOImpl.addOwnerAttr(attr, context);
+        }
+
+    }
+
 
 
     public IFileInnerServiceSMO getFileInnerServiceSMOImpl() {
     public IFileInnerServiceSMO getFileInnerServiceSMOImpl() {
         return fileInnerServiceSMOImpl;
         return fileInnerServiceSMOImpl;