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/OpenDoorLogCmd.java |   64 ++++++++++++++++++++++++++-----
 1 files changed, 53 insertions(+), 11 deletions(-)

diff --git a/service-common/src/main/java/com/java110/common/cmd/machine/OpenDoorLogCmd.java b/service-common/src/main/java/com/java110/common/cmd/machine/OpenDoorLogCmd.java
index 3863ce0..46405bb 100644
--- a/service-common/src/main/java/com/java110/common/cmd/machine/OpenDoorLogCmd.java
+++ b/service-common/src/main/java/com/java110/common/cmd/machine/OpenDoorLogCmd.java
@@ -12,11 +12,15 @@
 import com.java110.dto.file.FileDto;
 import com.java110.dto.machine.MachineDto;
 import com.java110.dto.machine.MachineRecordDto;
+import com.java110.dto.owner.OwnerDto;
+import com.java110.dto.user.UserDto;
 import com.java110.intf.common.IFileInnerServiceSMO;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.common.IMachineInnerServiceSMO;
 import com.java110.intf.common.IMachineRecordInnerServiceSMO;
 import com.java110.intf.job.IDataBusInnerServiceSMO;
+import com.java110.intf.user.IOwnerV1InnerServiceSMO;
+import com.java110.intf.user.IUserV1InnerServiceSMO;
 import com.java110.po.file.FileRelPo;
 import com.java110.po.machine.MachineRecordPo;
 import com.java110.utils.constant.BusinessTypeConstant;
@@ -48,14 +52,14 @@
 )
 
 @Java110ParamsDoc(params = {
-        @Java110ParamDoc(name = "userId",  length = 30, defaultValue = "-1", remark = "鐢ㄦ埛ID锛屽鏋滄病鏈夊~鍐�-1"),
-        @Java110ParamDoc(name = "userName", type = "String", length = 64,  remark = "鐢ㄦ埛 鍚嶇О"),
-        @Java110ParamDoc(name = "machineCode", type = "String", length = 64,  remark = "璁惧缂栧彿"),
-        @Java110ParamDoc(name = "openTypeCd", type = "String", length = 64,  remark = "寮�闂ㄧ被鍨� 1000 浜鸿劯"),
-        @Java110ParamDoc(name = "similar", type = "String", length = 64,  remark = "鐩镐技搴� 0-1 涔嬮棿"),
-        @Java110ParamDoc(name = "dateTime", type = "String", length = 64,  remark = "寮�闂ㄦ椂闂� YYYY-MM-DD hh24:mi:ss"),
-        @Java110ParamDoc(name = "extCommunityId", type = "String", length = 64,  remark = "灏忓尯ID"),
-        @Java110ParamDoc(name = "recordTypeCd", type = "String", length = 64,  remark = "8888 寮�闂ㄨ褰�"),
+        @Java110ParamDoc(name = "userId", length = 30, defaultValue = "-1", remark = "鐢ㄦ埛ID锛屽鏋滄病鏈夊~鍐�-1"),
+        @Java110ParamDoc(name = "userName", type = "String", length = 64, remark = "鐢ㄦ埛 鍚嶇О"),
+        @Java110ParamDoc(name = "machineCode", type = "String", length = 64, remark = "璁惧缂栧彿"),
+        @Java110ParamDoc(name = "openTypeCd", type = "String", length = 64, remark = "寮�闂ㄧ被鍨� 1000 浜鸿劯"),
+        @Java110ParamDoc(name = "similar", type = "String", length = 64, remark = "鐩镐技搴� 0-1 涔嬮棿"),
+        @Java110ParamDoc(name = "dateTime", type = "String", length = 64, remark = "寮�闂ㄦ椂闂� YYYY-MM-DD hh24:mi:ss"),
+        @Java110ParamDoc(name = "extCommunityId", type = "String", length = 64, remark = "灏忓尯ID"),
+        @Java110ParamDoc(name = "recordTypeCd", type = "String", length = 64, remark = "8888 寮�闂ㄨ褰�"),
 })
 
 @Java110ResponseDoc(
@@ -66,14 +70,14 @@
 )
 
 @Java110ExampleDoc(
-        reqBody="{'userId':'123123','userName':'admin','machineCode':'sss','openTypeCd':'1000','similar':'0.9','dateTime':'2022-10-22 10:10:10','extCommunityId':'123123','recordTypeCd':'8888'}",
-        resBody="{'code':0,'msg':'鎴愬姛'}"
+        reqBody = "{'userId':'123123','userName':'admin','machineCode':'sss','openTypeCd':'1000','similar':'0.9','dateTime':'2022-10-22 10:10:10','extCommunityId':'123123','recordTypeCd':'8888'}",
+        resBody = "{'code':0,'msg':'鎴愬姛'}"
 )
 /**
  * 闂ㄧ寮�闂� 鐗╄仈缃� 瑙﹀彂璋冪敤 cmd
  */
 @Java110Cmd(serviceCode = "/machine/openDoorLog")
-public class OpenDoorLogCmd extends Cmd{
+public class OpenDoorLogCmd extends Cmd {
 
     @Autowired
     private IFileInnerServiceSMO fileInnerServiceSMOImpl;
@@ -89,6 +93,12 @@
 
     @Autowired
     private IDataBusInnerServiceSMO dataBusInnerServiceSMOImpl;
+
+    @Autowired
+    private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IOwnerV1InnerServiceSMO ownerV1InnerServiceSMOImpl;
 
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
@@ -120,6 +130,9 @@
         } else {
             machineRecordDto.setTel("-1");
         }
+
+        //鏍规嵁鐢ㄦ埛ID鏌ヨ鎵嬫満鍙峰槢
+        addTelByUserId(reqJson, machineRecordDto);
 
         machineRecordDto.setMachineRecordId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_machineRecordId));
         if (!StringUtil.isEmpty(machineRecordDto.getPhoto())) {
@@ -166,4 +179,33 @@
 //                BusinessTypeConstant.BUSINESS_TYPE_DATABUS_SEND_OPEN_LOG, BeanConvertUtil.beanCovertJson(machineRecordPo)));
         context.setResponseEntity(ResultVo.success());
     }
+
+    private void addTelByUserId(JSONObject reqJson, MachineRecordDto machineRecordDto) {
+
+        if (!reqJson.containsKey("userId") || "-1".equals(reqJson.getString("userId"))) {
+            return;
+        }
+
+        if(!"-1".equals(machineRecordDto.getTel())){
+            return ;
+        }
+
+        UserDto userDto = new UserDto();
+        userDto.setUserId(reqJson.getString("userId"));
+        List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto);
+
+        if(userDtos != null && userDtos.size()> 0){
+            machineRecordDto.setTel(userDtos.get(0).getTel());
+            return ;
+        }
+
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setMemberId(reqJson.getString("userId"));
+        List<OwnerDto> ownerDtos = ownerV1InnerServiceSMOImpl.queryOwners(ownerDto);
+
+        if(ownerDtos == null || ownerDtos.size()<1){
+            return ;
+        }
+        machineRecordDto.setTel(ownerDtos.get(0).getLink());
+    }
 }

--
Gitblit v1.8.0