From ae42d2da37fe9d161e7058b51367b95f24c3d97a Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 13 六月 2023 15:11:36 +0800
Subject: [PATCH] optimize

---
 service-common/src/main/java/com/java110/common/cmd/machine/SaveAccessControlWhiteCmd.java |   38 ++++++++++++++++++++++++++++++++++----
 1 files changed, 34 insertions(+), 4 deletions(-)

diff --git a/service-common/src/main/java/com/java110/common/cmd/machine/SaveAccessControlWhiteCmd.java b/service-common/src/main/java/com/java110/common/cmd/machine/SaveAccessControlWhiteCmd.java
index 2bc259a..8015998 100644
--- a/service-common/src/main/java/com/java110/common/cmd/machine/SaveAccessControlWhiteCmd.java
+++ b/service-common/src/main/java/com/java110/common/cmd/machine/SaveAccessControlWhiteCmd.java
@@ -15,6 +15,7 @@
  */
 package com.java110.common.cmd.machine;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.annotation.Java110Transactional;
@@ -25,8 +26,10 @@
 import com.java110.core.smo.IPhotoSMO;
 import com.java110.doc.annotation.*;
 import com.java110.dto.accessControlWhite.AccessControlWhiteDto;
+import com.java110.intf.common.IAccessControlWhiteAuthV1InnerServiceSMO;
 import com.java110.intf.common.IAccessControlWhiteV1InnerServiceSMO;
 import com.java110.po.accessControlWhite.AccessControlWhitePo;
+import com.java110.po.accessControlWhiteAuth.AccessControlWhiteAuthPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
@@ -34,7 +37,6 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 
 
 @Java110CmdDoc(title = "闂ㄧ鎺堟潈鐧藉悕鍗�",
@@ -71,8 +73,8 @@
 )
 
 @Java110ExampleDoc(
-        reqBody="{\"machineId\":\"102023012407190005\",\"personName\":\"寮犲揩閫抃",\"tel\":\"18909714562\",\"idCard\":\"\",\"personType\":\"3003\",\"startTime\":\"2023-01-05 02:10:00\",\"endTime\":\"2023-02-08 02:10:00\",\"accessControlKey\":\"\",\"photo\":\"https://java110.oss-cn-beijing.aliyuncs.com/hc/img/20230124/ec4cfb4f-4953-44f2-89ab-383dc955b005.jpg\",\"communityId\":\"2022121921870161\"}",
-        resBody="{\"code\":0,\"msg\":\"鎴愬姛\"}"
+        reqBody = "{\"machineId\":\"102023012407190005\",\"personName\":\"寮犲揩閫抃",\"tel\":\"18909714562\",\"idCard\":\"\",\"personType\":\"3003\",\"startTime\":\"2023-01-05 02:10:00\",\"endTime\":\"2023-02-08 02:10:00\",\"accessControlKey\":\"\",\"photo\":\"https://java110.oss-cn-beijing.aliyuncs.com/hc/img/20230124/ec4cfb4f-4953-44f2-89ab-383dc955b005.jpg\",\"communityId\":\"2022121921870161\"}",
+        resBody = "{\"code\":0,\"msg\":\"鎴愬姛\"}"
 )
 
 /**
@@ -96,11 +98,14 @@
     private IAccessControlWhiteV1InnerServiceSMO accessControlWhiteV1InnerServiceSMOImpl;
 
     @Autowired
+    private IAccessControlWhiteAuthV1InnerServiceSMO accessControlWhiteAuthV1InnerServiceSMOImpl;
+
+    @Autowired
     private IPhotoSMO photoSMOImpl;
 
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
-        Assert.hasKeyAndValue(reqJson, "machineId", "璇锋眰鎶ユ枃涓湭鍖呭惈machineId");
+        Assert.hasKey(reqJson, "machineIds", "璇锋眰鎶ユ枃涓湭鍖呭惈machineId");
         Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
         Assert.hasKeyAndValue(reqJson, "personName", "璇锋眰鎶ユ枃涓湭鍖呭惈personName");
         Assert.hasKeyAndValue(reqJson, "tel", "璇锋眰鎶ユ枃涓湭鍖呭惈tel");
@@ -117,6 +122,12 @@
             throw new CmdException(reqJson.getString("personName") + "-" + reqJson.getString("tel") + ",浜哄憳宸插瓨鍦紝鎮ㄥ彲浠ュ垹闄ら噸鏂版坊鍔狅紝鎴栬�呬慨鏀�");
         }
 
+        JSONArray machineIds = reqJson.getJSONArray("machineIds");
+        if (machineIds == null || machineIds.size() < 1) {
+            throw new CmdException("鏈寘鍚巿鏉冭澶�");
+        }
+
+
     }
 
     @Override
@@ -125,12 +136,31 @@
 
         AccessControlWhitePo accessControlWhitePo = BeanConvertUtil.covertBean(reqJson, AccessControlWhitePo.class);
         accessControlWhitePo.setAcwId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+        accessControlWhitePo.setMachineId("-1");
         int flag = accessControlWhiteV1InnerServiceSMOImpl.saveAccessControlWhite(accessControlWhitePo);
 
         if (flag < 1) {
             throw new CmdException("淇濆瓨鏁版嵁澶辫触");
         }
 
+        JSONArray machineIds = reqJson.getJSONArray("machineIds");
+
+        AccessControlWhiteAuthPo accessControlWhiteAuthPo = null;
+        for (int machineIndex = 0; machineIndex < machineIds.size(); machineIndex++) {
+            accessControlWhiteAuthPo = new AccessControlWhiteAuthPo();
+            accessControlWhiteAuthPo.setAcwaId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+            accessControlWhiteAuthPo.setAcwId(accessControlWhitePo.getAcwId());
+            accessControlWhiteAuthPo.setCommunityId(accessControlWhitePo.getCommunityId());
+            accessControlWhiteAuthPo.setMachineId(machineIds.getString(machineIndex));
+
+            flag = accessControlWhiteAuthV1InnerServiceSMOImpl.saveAccessControlWhiteAuth(accessControlWhiteAuthPo);
+
+            if (flag < 1) {
+                throw new CmdException("淇濆瓨鏁版嵁澶辫触");
+            }
+        }
+
+
         photoSMOImpl.savePhoto(reqJson, accessControlWhitePo.getAcwId(), reqJson.getString("communityId"));
 
 

--
Gitblit v1.8.0