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

---
 service-acct/src/main/java/com/java110/acct/cmd/couponUser/ListCouponUserCmd.java |   67 +++++++++++++++++++++++++++++----
 1 files changed, 58 insertions(+), 9 deletions(-)

diff --git a/service-acct/src/main/java/com/java110/acct/cmd/couponUser/ListCouponUserCmd.java b/service-acct/src/main/java/com/java110/acct/cmd/couponUser/ListCouponUserCmd.java
index 6887e27..97a10a2 100644
--- a/service-acct/src/main/java/com/java110/acct/cmd/couponUser/ListCouponUserCmd.java
+++ b/service-acct/src/main/java/com/java110/acct/cmd/couponUser/ListCouponUserCmd.java
@@ -20,20 +20,24 @@
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.log.LoggerFactory;
+import com.java110.dto.CommunityMemberDto;
+import com.java110.dto.couponUser.CouponUserDto;
+import com.java110.dto.owner.OwnerDto;
 import com.java110.intf.acct.ICouponUserV1InnerServiceSMO;
+import com.java110.intf.community.ICommunityMemberV1InnerServiceSMO;
+import com.java110.intf.user.IOwnerV1InnerServiceSMO;
 import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.vo.ResultVo;
-import org.springframework.beans.factory.annotation.Autowired;
-import com.java110.dto.couponUser.CouponUserDto;
-
-import java.util.List;
-import java.util.ArrayList;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.HttpStatus;
 import org.slf4j.Logger;
-import com.java110.core.log.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+
+import java.util.ArrayList;
+import java.util.List;
 
 
 /**
@@ -53,9 +57,17 @@
     @Autowired
     private ICouponUserV1InnerServiceSMO couponUserV1InnerServiceSMOImpl;
 
+    @Autowired
+    private ICommunityMemberV1InnerServiceSMO communityMemberV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IOwnerV1InnerServiceSMO ownerV1InnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         super.validatePageInfo(reqJson);
+        Assert.hasKeyAndValue(reqJson, "tel", "鏈寘鍚墜鏈哄彿");
+        Assert.hasKeyAndValue(reqJson, "communityId", "鏈寘鍚皬鍖�");
     }
 
     @Override
@@ -63,6 +75,43 @@
 
         CouponUserDto couponUserDto = BeanConvertUtil.covertBean(reqJson, CouponUserDto.class);
 
+        //鏄惁鍖呭惈灏忓尯ID
+        CommunityMemberDto communityMemberDto = new CommunityMemberDto();
+        communityMemberDto.setCommunityId(reqJson.getString("communityId"));
+        communityMemberDto.setMemberTypeCd(CommunityMemberDto.MEMBER_TYPE_PROPERTY);
+        communityMemberDto.setPage(1);
+        communityMemberDto.setRow(1);
+        List<CommunityMemberDto> communityMemberDtos = communityMemberV1InnerServiceSMOImpl.queryCommunityMembers(communityMemberDto);
+
+        Assert.listOnlyOne(communityMemberDtos, "灏忓尯鐗╀笟涓嶅瓨鍦�");
+
+        //鏌ヨ鎵�鏈夊搴垚鍛�
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setLink(reqJson.getString("tel"));
+        ownerDto.setCommunityId(reqJson.getString("communityId"));
+        ownerDto.setPage(1);
+        ownerDto.setRow(1);
+        List<OwnerDto> ownerDtos = ownerV1InnerServiceSMOImpl.queryOwners(ownerDto);
+
+        if (ownerDtos == null || ownerDtos.size() < 1) {
+            return;
+        }
+
+        ownerDto = new OwnerDto();
+        ownerDto.setOwnerId(ownerDtos.get(0).getOwnerId());
+        ownerDto.setCommunityId(reqJson.getString("communityId"));
+        ownerDtos = ownerV1InnerServiceSMOImpl.queryOwners(ownerDto);
+        if (ownerDtos == null || ownerDtos.size() < 1) {
+            return;
+        }
+        List<String> tels = new ArrayList<>();
+        for (OwnerDto tmpOwnerDto : ownerDtos) {
+            tels.add(tmpOwnerDto.getLink());
+        }
+
+        couponUserDto.setTel("");
+        couponUserDto.setTels(tels.toArray(new String[tels.size()]));
+
         int count = couponUserV1InnerServiceSMOImpl.queryCouponUsersCount(couponUserDto);
 
         List<CouponUserDto> couponUserDtos = null;

--
Gitblit v1.8.0