From 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 19 七月 2022 21:49:55 +0800
Subject: [PATCH] 优化添加设备 功能

---
 service-user/src/main/java/com/java110/user/cmd/owner/EditOwnerCmd.java |   69 ++++++++++++++++++++--------------
 1 files changed, 40 insertions(+), 29 deletions(-)

diff --git a/service-user/src/main/java/com/java110/user/cmd/owner/EditOwnerCmd.java b/service-user/src/main/java/com/java110/user/cmd/owner/EditOwnerCmd.java
index 8c38631..c69fd57 100644
--- a/service-user/src/main/java/com/java110/user/cmd/owner/EditOwnerCmd.java
+++ b/service-user/src/main/java/com/java110/user/cmd/owner/EditOwnerCmd.java
@@ -5,7 +5,7 @@
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.annotation.Java110Transactional;
 import com.java110.core.context.ICmdDataFlowContext;
-import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.dto.file.FileDto;
@@ -14,7 +14,7 @@
 import com.java110.dto.owner.OwnerDto;
 import com.java110.intf.common.IFileInnerServiceSMO;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
-import com.java110.intf.community.IOwnerV1InnerServiceSMO;
+import com.java110.intf.user.IOwnerV1InnerServiceSMO;
 import com.java110.intf.user.IOwnerAppUserInnerServiceSMO;
 import com.java110.intf.user.IOwnerAppUserV1InnerServiceSMO;
 import com.java110.intf.user.IOwnerAttrInnerServiceSMO;
@@ -23,6 +23,7 @@
 import com.java110.po.owner.OwnerAppUserPo;
 import com.java110.po.owner.OwnerAttrPo;
 import com.java110.po.owner.OwnerPo;
+import com.java110.utils.cache.MappingCache;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
@@ -33,7 +34,7 @@
 import java.util.List;
 
 @Java110Cmd(serviceCode = "owner.editOwner")
-public class EditOwnerCmd extends AbstractServiceCmdListener {
+public class EditOwnerCmd extends Cmd {
 
 
     @Autowired
@@ -61,7 +62,6 @@
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
         Assert.jsonObjectHaveKey(reqJson, "memberId", "璇锋眰鎶ユ枃涓湭鍖呭惈ownerId");
         Assert.jsonObjectHaveKey(reqJson, "name", "璇锋眰鎶ユ枃涓湭鍖呭惈name");
-        Assert.jsonObjectHaveKey(reqJson, "userId", "璇锋眰鎶ユ枃涓湭鍖呭惈userId");
         Assert.jsonObjectHaveKey(reqJson, "age", "璇锋眰鎶ユ枃涓湭鍖呭惈age");
         Assert.jsonObjectHaveKey(reqJson, "link", "璇锋眰鎶ユ枃涓湭鍖呭惈link");
         Assert.jsonObjectHaveKey(reqJson, "sex", "璇锋眰鎶ユ枃涓湭鍖呭惈sex");
@@ -69,19 +69,9 @@
         Assert.jsonObjectHaveKey(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
         // Assert.jsonObjectHaveKey(paramIn, "idCard", "璇锋眰鎶ユ枃涓湭鍖呭惈韬唤璇佸彿");
         Assert.judgeAttrValue(reqJson);
-    }
 
-    @Override
-    @Java110Transactional
-    public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
-        if (!reqJson.containsKey("ownerId") || OwnerDto.OWNER_TYPE_CD_OWNER.equals(reqJson.getString("ownerTypeCd"))) {
-            reqJson.put("ownerId", reqJson.getString("memberId"));
-        }
         //鑾峰彇鎵嬫満鍙�(鍒ゆ柇鎵嬫満鍙锋槸鍚﹂噸澶�)
         String link = reqJson.getString("link");
-        if (link.length() != 11) {
-            throw new IllegalArgumentException("鎵嬫満鍙疯緭鍏ヤ笉姝g‘锛�");
-        }
         if (!StringUtil.isEmpty(link) && link.contains("*")) {
             OwnerDto ownerDto = new OwnerDto();
             ownerDto.setOwnerId(reqJson.getString("ownerId"));
@@ -91,19 +81,6 @@
             Assert.listOnlyOne(ownerDtos, "鏌ヨ涓氫富淇℃伅閿欒锛�");
             link = ownerDtos.get(0).getLink();
             reqJson.put("link", link);
-        }
-        OwnerDto ownerDto = new OwnerDto();
-        ownerDto.setLink(link);
-        ownerDto.setCommunityId(reqJson.getString("communityId"));
-        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryAllOwners(ownerDto);
-        if (ownerDtos != null && ownerDtos.size() > 1) {
-            throw new IllegalArgumentException("鎵嬫満鍙烽噸澶嶏紝璇烽噸鏂拌緭鍏�");
-        } else if (ownerDtos != null && ownerDtos.size() == 1) {
-            for (OwnerDto owner : ownerDtos) {
-                if ((!StringUtil.isEmpty(reqJson.getString("ownerId")) && !owner.getOwnerId().equals(reqJson.getString("ownerId"))) || (!StringUtil.isEmpty(reqJson.getString("memberId")) && !owner.getMemberId().equals(reqJson.getString("memberId")))) {
-                    throw new IllegalArgumentException("鎵嬫満鍙烽噸澶嶏紝璇烽噸鏂拌緭鍏�");
-                }
-            }
         }
         //鑾峰彇韬唤璇佸彿(鍒ゆ柇韬唤璇佸彿鏄惁閲嶅)
         String idCard = reqJson.getString("idCard");
@@ -116,6 +93,26 @@
             Assert.listOnlyOne(owners, "鏌ヨ涓氫富淇℃伅閿欒锛�");
             idCard = owners.get(0).getIdCard();
             reqJson.put("idCard", idCard);
+        }
+
+        String userValidate = MappingCache.getValue("USER_VALIDATE");
+
+        if(!"ON".equals(userValidate)){
+            return ;
+        }
+
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setLink(link);
+        ownerDto.setCommunityId(reqJson.getString("communityId"));
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryAllOwners(ownerDto);
+        if (ownerDtos != null && ownerDtos.size() > 1) {
+            throw new IllegalArgumentException("鎵嬫満鍙烽噸澶嶏紝璇烽噸鏂拌緭鍏�");
+        } else if (ownerDtos != null && ownerDtos.size() == 1) {
+            for (OwnerDto owner : ownerDtos) {
+                if ((!StringUtil.isEmpty(reqJson.getString("ownerId")) && !owner.getOwnerId().equals(reqJson.getString("ownerId"))) || (!StringUtil.isEmpty(reqJson.getString("memberId")) && !owner.getMemberId().equals(reqJson.getString("memberId")))) {
+                    throw new IllegalArgumentException("鎵嬫満鍙烽噸澶嶏紝璇烽噸鏂拌緭鍏�");
+                }
+            }
         }
         if (!StringUtil.isEmpty(idCard)) {
             OwnerDto owner = new OwnerDto();
@@ -132,6 +129,19 @@
                 }
             }
         }
+    }
+
+    @Override
+    @Java110Transactional
+    public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+        if (!reqJson.containsKey("ownerId") || OwnerDto.OWNER_TYPE_CD_OWNER.equals(reqJson.getString("ownerTypeCd"))) {
+            reqJson.put("ownerId", reqJson.getString("memberId"));
+        }
+
+        //杩欓噷娉ㄩ噴 鍥犱负 鏈夊浗澶栫殑鎵嬫満鍙� 涓嶆槸11浣�
+//        if (link.length() != 11) {
+//            throw new IllegalArgumentException("鎵嬫満鍙疯緭鍏ヤ笉姝g‘锛�");
+//        }
         if (reqJson.containsKey("ownerPhoto") && !StringUtils.isEmpty(reqJson.getString("ownerPhoto"))) {
             FileDto fileDto = new FileDto();
             fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
@@ -195,6 +205,7 @@
         }
         OwnerAppUserDto ownerAppUserDto = new OwnerAppUserDto();
         ownerAppUserDto.setMemberId(paramInJson.getString("ownerId"));
+
         //鏌ヨapp鐢ㄦ埛琛�
         List<OwnerAppUserDto> ownerAppUserDtos = ownerAppUserInnerServiceSMOImpl.queryOwnerAppUsers(ownerAppUserDto);
         if (ownerAppUserDtos != null && ownerAppUserDtos.size() > 0) {
@@ -219,12 +230,12 @@
         List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
         if (fileRelDtos == null || fileRelDtos.size() == 0) {
             JSONObject businessUnit = new JSONObject();
-            businessUnit.put("fileRelId", "-1");
+            businessUnit.put("fileRelId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_fileRelId));
             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"));
+            businessUnit.put("fileSaveName", paramInJson.getString("fileSaveName"));
             FileRelPo fileRelPo = BeanConvertUtil.covertBean(businessUnit, FileRelPo.class);
             flag = fileRelInnerServiceSMOImpl.saveFileRel(fileRelPo);
             if (flag < 1) {

--
Gitblit v1.8.0