From c20f18b987d597b04e110665c57c0cc6eb796525 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期三, 05 七月 2023 10:06:51 +0800
Subject: [PATCH] 修改新增社区 不同区域同名字社区添加报错

---
 springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java |  286 ++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 241 insertions(+), 45 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
index d3eb23b..612ce4b 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -31,6 +31,7 @@
 import com.panzhihua.common.model.vos.community.acid.ComActAcidRecordVO;
 import com.panzhihua.common.model.vos.community.microCommercialStreet.McsLoginUserInfoVO;
 import com.panzhihua.common.model.vos.sanshuo.ComSanshuoExpertVO;
+import com.panzhihua.common.model.vos.shop.ComShopUserAddressVO;
 import com.panzhihua.common.model.vos.user.*;
 import com.panzhihua.common.service.community.CommunityService;
 import com.panzhihua.common.utlis.*;
@@ -309,7 +310,7 @@
         Boolean isIndustryOrExpertAccount=(userDao.isIndustryCenterAccount(name)>0 || userDao.isExpertAccount(name)>0);
         if (1 == type) {
             sysUserDO = userDao.selectOne(
-                new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, type).eq(SysUserDO::getOpenid, name));
+                new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, type).eq(SysUserDO::getOpenid, name).eq(SysUserDO::getAppId, appId));
         }else if(isIndustryOrExpertAccount) {
             //三说会堂行业分中心或专家后台账号登陆
             sysUserDO = userDao.selectOne(
@@ -331,6 +332,14 @@
             return R.fail();
         }
         LoginUserInfoVO loginUserInfoVO = new LoginUserInfoVO();
+        //获取后台商家user
+        SysUserDO sysUser = userDao.selectOne(
+                new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, 5).eq(SysUserDO::getPhone, sysUserDO.getPhone()).eq(SysUserDO::getAppId, appId));
+        //判断是否是商家账号
+        if (nonNull(sysUser)){
+            loginUserInfoVO.setBackstageUserId(sysUser.getUserId());
+            loginUserInfoVO.setBackstageType(5);
+        }
         if (nonNull(sysUserDO.getStreetId())){
             loginUserInfoVO.setStreetId(sysUserDO.getStreetId());
         }
@@ -369,6 +378,13 @@
             int i = userDao.isDpcMember(sysUserDO.getPhone(), sysUserDO.getName());
             if (i>0){
                 loginUserInfoVO.setIsDpcMember(1);
+            }
+        }
+        //是否为物业公司账号
+        if (nonNull(sysUserDO.getPhone())){
+            Long propertyAccount = userDao.isPropertyAccount(sysUserDO.getPhone());
+            if (nonNull(propertyAccount)){
+                loginUserInfoVO.setPropertyId(propertyAccount);
             }
         }
         return R.ok(loginUserInfoVO);
@@ -524,6 +540,37 @@
             if (i>0){
                 loginUserInfoVO.setIsDpcMember(1);
             }
+        }
+        //获取后台商家user
+        SysUserDO sysUser = userDao.selectOne(
+                new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, 5).eq(SysUserDO::getPhone, sysUserDO.getPhone()).eq(SysUserDO::getAppId, "wx118de8a734d269f0"));
+        //判断是否是商家账号
+        if (nonNull(sysUser)){
+            loginUserInfoVO.setBackstageUserId(sysUser.getUserId());
+            loginUserInfoVO.setBackstageType(5);
+            Long storeId = userDao.selectStoreIdIdByUserId(sysUser.getUserId());
+            loginUserInfoVO.setStoreIdId(storeId);
+
+        }
+        //是否为物业公司账号
+        if (nonNull(sysUserDO.getPhone())){
+            Long propertyAccount = userDao.isPropertyAccount(sysUserDO.getPhone());
+            if (nonNull(propertyAccount)){
+                loginUserInfoVO.setPropertyId(propertyAccount);
+            }
+        }
+        //获取自提点账号
+        if (StrUtil.isNotBlank(sysUserDO.getPhone())){
+            if(userDao.checkPoint(sysUserDO.getPhone()) > 0){
+                loginUserInfoVO.setIsPoint(true);
+            }else {
+                loginUserInfoVO.setIsPoint(false);
+            }
+        }
+        //默认地址
+        ComShopUserAddressVO comShopUserAddressVO = userDao.selectDefaultAddressVO(userId);
+        if (nonNull(comShopUserAddressVO)){
+            loginUserInfoVO.setComShopUserAddressVO(comShopUserAddressVO);
         }
         return R.ok(loginUserInfoVO);
     }
@@ -792,6 +839,13 @@
         //是否是防疫工作人员
         loginUserInfoVO.setIsAcidMember(0);
         ComActAcidMemberVO acidMember = userDao.selectAcidMemberByPhone(loginUserInfoVO.getPhone());
+        //是否为普达物业公司后台账号
+        if (nonNull(sysUserDO.getPhone())){
+            Long propertyAccount = userDao.isPropertyAccount(sysUserDO.getPhone());
+            if (nonNull(propertyAccount)){
+                loginUserInfoVO.setPropertyId(propertyAccount);
+            }
+        }
         if (nonNull(acidMember)) {
             if (acidMember.getRelationName().equals("panzhihua") || acidMember.getRelationName().equals("西区") || acidMember.getRelationName().equals("东区") || acidMember.getRelationName().equals("仁和区") || acidMember.getRelationName().equals("米易县") || acidMember.getRelationName().equals("盐边县")) {
                 loginUserInfoVO.setIsAcidMember(1);
@@ -832,6 +886,18 @@
         if (sysUserDO.getBindingCheckUnitId() != null) {
             loginUserInfoVO.setBackstageType(4);
         }
+        //判断是否是商家账号
+        Long storeId = userDao.selectStoreIdIdByUserId(sysUserDO.getUserId());
+        if (null != storeId){
+            loginUserInfoVO.setBackstageUserId(sysUserDO.getUserId());
+            loginUserInfoVO.setBackstageType(5);
+            loginUserInfoVO.setStoreIdId(storeId);
+        }
+
+        SysUserRoleDO sysUserRoleDO=sysUserRoleDAO.selectOne(new QueryWrapper<SysUserRoleDO>()
+                .lambda().eq(SysUserRoleDO::getUserId,sysUserDO.getUserId()));
+        loginUserInfoVO.setRoleId(sysUserRoleDO.getRoleId().toString());
+
         return R.ok(loginUserInfoVO);
     }
 
@@ -1001,7 +1067,7 @@
                 userDao.updateComPbMemberUserId(idCard, sysUserDO.getUserId());
             }
 
-            SysUserDO user = userDao.selectById(loginUserInfoVO.getUserId());
+            /*SysUserDO user = userDao.selectById(loginUserInfoVO.getUserId());
             if (user != null) {
                 // 实名认证成功推送订阅消息给用户
                 try {
@@ -1014,7 +1080,7 @@
                 } catch (Exception e) {
                     log.error("推送用户订阅消息失败,失败原因:" + e.getMessage());
                 }
-            }
+            }*/
             return R.ok();
         }
         return R.fail();
@@ -1190,6 +1256,15 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public R addUserBackstage(AdministratorsUserVO administratorsUserVO) {
+
+        List<SysUserDO> list=userDao.selectList(new QueryWrapper<SysUserDO>().lambda().
+                       eq(SysUserDO::getAppId,administratorsUserVO.getAppid()).
+                eq(SysUserDO::getAccount,administratorsUserVO.getAccount()));
+        if(list!=null && list.size()>0)
+        {
+            return R.fail("账户已存在!");
+        }
+
         ComActVO comActVO = userDao.selectCommunity(administratorsUserVO.getCommunityId());
         if (nonNull(comActVO)) {
             List<ComAreaTownCommunityVO> areaTownList = userDao.selectAreaTownCommunity(comActVO.getName());
@@ -1222,11 +1297,29 @@
             }
             sysRoleDO.setRoleSort(0);
             sysRoleDO.setCreateBy(administratorsUserVO.getUserId());
-            int insert = roleDAO.insert(sysRoleDO);
-            if (insert > 0) {
-                SysRoleDO sysRoleDO1 = roleDAO.selectOne(
-                        new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey()));
-                roleId = sysRoleDO1.getRoleId();
+            sysRoleDO.setRoleId(Snowflake.getId());
+
+            SysRoleDO sysRoleDOSelext = roleDAO.selectOne(
+                    new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey()));
+
+            if(sysRoleDOSelext==null)
+            {
+                int insert = roleDAO.insert(sysRoleDO);
+                if (insert > 0) {
+                    SysRoleDO sysRoleDO1 = roleDAO.selectOne(
+                            new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleId, sysRoleDO.getRoleId()));
+                    roleId = sysRoleDO1.getRoleId();
+                    // 新角色设置所有权限
+                    MenuRoleVO menuRoleVO = new MenuRoleVO();
+                    menuRoleVO.setIsAll(1);
+                    menuRoleVO.setCommunityId(communityId);
+                    menuRoleVO.setRoleId(roleId);
+                    this.putMenuRole(menuRoleVO);
+                }
+            }
+            else
+            {
+                roleId = sysRoleDOSelext.getRoleId();
                 // 新角色设置所有权限
                 MenuRoleVO menuRoleVO = new MenuRoleVO();
                 menuRoleVO.setIsAll(1);
@@ -1234,6 +1327,7 @@
                 menuRoleVO.setRoleId(roleId);
                 this.putMenuRole(menuRoleVO);
             }
+
         }
         if (roleId.intValue() == 777777777) {
             SysRoleDO sysRoleDO = new SysRoleDO();
@@ -1241,11 +1335,47 @@
             sysRoleDO.setRoleKey(Constants.STREET_ROLE_KEY + administratorsUserVO.getStreetId());
             sysRoleDO.setRoleSort(0);
             sysRoleDO.setCreateBy(administratorsUserVO.getUserId());
-            int insert = roleDAO.insert(sysRoleDO);
-            if (insert > 0) {
-                SysRoleDO sysRoleDO1 = roleDAO.selectOne(
-                        new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey()));
-                roleId = sysRoleDO1.getRoleId();
+            sysRoleDO.setRoleId(Snowflake.getId());
+
+            SysRoleDO sysRoleDOSelext = roleDAO.selectOne(
+                    new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey()));
+
+            if(sysRoleDOSelext==null)
+            {
+                int insert = roleDAO.insert(sysRoleDO);
+                if (insert > 0) {
+//                    SysRoleDO sysRoleDO1 = roleDAO.selectOne(
+//                            new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleId, sysRoleDO.getRoleId()));
+                    roleId = sysRoleDOSelext.getRoleId();
+                    // 新街道管理员角色设置固定三社权限
+                    MenuRoleVO menuRoleVO = new MenuRoleVO();
+                    List<Long> menu = new ArrayList<>();
+                    if (administratorsUserVO.getSocialType() == 1) {
+                        menu.add(233L);
+                        menu.add(234L);
+                        menu.add(235L);
+                        menu.add(236L);
+                        menu.add(237L);
+                    } else if (administratorsUserVO.getSocialType() == 2) {
+                        menu.add(233L);
+                        menu.add(234L);
+                        menu.add(236L);
+                        menu.add(237L);
+                        menu.add(238L);
+                    } else if (administratorsUserVO.getSocialType() == 3) {
+                        menu.add(233L);
+                        menu.add(237L);
+                    } else {
+                        menuRoleVO.setIsAll(1);
+                    }
+                    menuRoleVO.setMenuIds(menu);
+                    menuRoleVO.setRoleId(roleId);
+                    this.putMenuRole(menuRoleVO);
+                }
+            }
+            else
+            {
+                roleId = sysRoleDOSelext.getRoleId();
                 // 新街道管理员角色设置固定三社权限
                 MenuRoleVO menuRoleVO = new MenuRoleVO();
                 List<Long> menu = new ArrayList<>();
@@ -1271,6 +1401,7 @@
                 menuRoleVO.setRoleId(roleId);
                 this.putMenuRole(menuRoleVO);
             }
+
         }
         SysRoleDO roleDO = roleDAO.selectById(roleId);
         if (ObjectUtils.isEmpty(roleDO)) {
@@ -1337,13 +1468,12 @@
                 menu.add(300L);
                 menu.add(303L);
             }
-
             sysRoleDO.setRoleSort(0);
             sysRoleDO.setCreateBy(administratorsUserVO.getUserId());
-            SysRoleDO sysRoleDO1 = roleDAO.selectOne(
+            List<SysRoleDO> sysRoleDO1 = roleDAO.selectList(
                     new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey()));
-            if (sysRoleDO1 != null) {
-                sysRoleDO = sysRoleDO1;
+            if (sysRoleDO1 != null && sysRoleDO1.size()>0 ) {
+                sysRoleDO = sysRoleDO1.get(0);
                 roleId = sysRoleDO.getRoleId();
             } else {
                 roleDAO.insert(sysRoleDO);
@@ -1354,6 +1484,8 @@
                 this.putMenuRole(menuRoleVO);
             }
         }
+        log.info("======================type"+administratorsUserVO.getType());
+        log.info("=======================roleId"+roleId);
         SysRoleDO roleDO = roleDAO.selectById(roleId);
         if (ObjectUtils.isEmpty(roleDO)) {
             return R.fail("角色不存在");
@@ -1361,6 +1493,9 @@
         String encode = new BCryptPasswordEncoder().encode(administratorsUserVO.getPassword());
         administratorsUserVO.setPassword(encode);
         BeanUtils.copyProperties(administratorsUserVO, sysUserDO);
+        if (nonNull(administratorsUserVO.getAppid())){
+            sysUserDO.setAppId(administratorsUserVO.getAppid());
+        }
         int insert = 0;
         try {
             insert = userDao.insert(sysUserDO);
@@ -1374,7 +1509,6 @@
             } else if (e.getMessage().contains("23000")) {
                 throw new ServiceException("手机号已存在");
             }
-
         }
         if (insert > 0) {
             SysUserDO sysUserDO1 = userDao
@@ -2845,7 +2979,8 @@
     @Transactional(rollbackFor = Exception.class)
     public R addConvenientMerchantUser(ConvenientMerchantDTO convenientMerchantDTO) {
         SysUserDO sysUserDO;
-        sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount, convenientMerchantDTO.getAccount()));
+        sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount, convenientMerchantDTO.getAccount())
+                .eq(SysUserDO::getPhone,convenientMerchantDTO.getMobilePhone()).eq(SysUserDO::getAppId,"wx118de8a734d269f0"));
         if (nonNull(sysUserDO)) {
             return R.fail("账户已经存在");
         }
@@ -2854,12 +2989,13 @@
         String encode = new BCryptPasswordEncoder().encode(convenientMerchantDTO.getPassword());
         BeanUtils.copyProperties(convenientMerchantDTO, sysUserDO);
         sysUserDO.setAccount(convenientMerchantDTO.getAccount());
-        sysUserDO.setType(10);
+        sysUserDO.setType(5);
         sysUserDO.setAreaId(null);
         sysUserDO.setStatus(1);
-        sysUserDO.setPhone(null);
+        sysUserDO.setPhone(convenientMerchantDTO.getMobilePhone());
         sysUserDO.setName(convenientMerchantDTO.getContacts());
         sysUserDO.setPassword(encode);
+        sysUserDO.setAppId("wx118de8a734d269f0");
         try {
             userDao.insert(sysUserDO);
             return R.ok(sysUserDO.getUserId());
@@ -2973,14 +3109,24 @@
         }
 
         // 获取最近二十天数据
-        List<Date> serverndays = com.panzhihua.common.utlis.DateUtils.getOldDays();
-        serverndays.forEach(date -> {
-            // 查询社区活动数量
-            DataKanbanDTO dataKanbanDTO = userDao.selectCommunityAddUserOrder(dataKanBansDto.getAppId(), date);
+        List<Date> activeDate = getTwentyDays();
+
+        String twentyDay = com.panzhihua.common.utlis.DateUtils.getTwentyDay();
+        //获取最近活跃人数
+        List<UsersStatisticsDTO> actives = userDao.selectActive(twentyDay, dataKanBansDto.getAppId());
+        //获取最近注册人数
+        List<UsersStatisticsDTO> dailyAdds = userDao.selectDailyAdd(twentyDay, dataKanBansDto.getAppId());
+
+        Map<String, String> activeMap = actives.stream().collect(Collectors.toMap(UsersStatisticsDTO::getSpecificDate, UsersStatisticsDTO::getTotal));
+        Map<String, String> dailyAddMap = dailyAdds.stream().collect(Collectors.toMap(UsersStatisticsDTO::getSpecificDate, UsersStatisticsDTO::getTotal));
+
+
+        for (Date date : activeDate) {
+            String dateStr = DateUtil.format(date, "yyyy-MM-dd");
             communityActiveUserX.add(DateFormatUtils.format(date, "MM-dd"));
-            communityActiveUserY.add(dataKanbanDTO.getNum());
-            communityActiveUserZ.add(dataKanbanDTO.getDayNum());
-        });
+            communityActiveUserY.add(dailyAddMap.containsKey(dateStr) ? Integer.parseInt(dailyAddMap.get(dateStr)) : 0);
+            communityActiveUserZ.add(activeMap.containsKey(dateStr) ? Integer.parseInt(activeMap.get(dateStr)) : 0);
+        }
         indexDataKanbanVO.setCommunityActiveUserX(communityActiveUserX);
         indexDataKanbanVO.setCommunityAddUserY(communityActiveUserY);
         indexDataKanbanVO.setCommunityActiveUserY(communityActiveUserZ);
@@ -3300,16 +3446,19 @@
 
     @Override
     public R updateUserPartyStatus(Long userId) {
-        SysUserDO sysUserDO = userDao.selectById(userId);
-        if (sysUserDO != null) {
-            sysUserDO.setIsPartymember(1);
-            int updated = userDao.updateById(sysUserDO);
-            if (updated > 0) {
-                // 删除用户信息缓存
-                String userKey = UserConstants.LOGIN_USER_INFO + sysUserDO.getUserId();
-                stringRedisTemplate.delete(userKey);
+        List<SysUserDO> sysUserDOs = userDao.selectByUserId(userId);
+        for (SysUserDO sysUserDO : sysUserDOs) {
+            if (sysUserDO != null) {
+                sysUserDO.setIsPartymember(1);
+                int updated = userDao.updateById(sysUserDO);
+                if (updated > 0) {
+                    // 删除用户信息缓存
+                    String userKey = UserConstants.LOGIN_USER_INFO + sysUserDO.getUserId();
+                    stringRedisTemplate.delete(userKey);
+                }
             }
         }
+
         return R.ok();
     }
 
@@ -3336,7 +3485,7 @@
         }
         Map<String, String> headerMap = new HashMap<>();
         headerMap.put("appid", appId);
-        String resultJson = HttpClientUtil.get("https://api.uucsh.cn/member/wx/get-access?province=" + uuLoginVO.getProvince() + "&city=" + uuLoginVO.getCity() + "&area=" + uuLoginVO.getArea() + "&appid=" + appId + "&timestamp=" + uuLoginVO.getTimestamp() + "&sign=" + uuLoginVO.getSign() + "&mobile=" + uuLoginVO.getMobile() + "&couponId=" + uuLoginVO.getCouponId(), headerMap, null);
+        String resultJson = HttpClientUtil.get("https://uu-api.imashuo.com/member/wx/get-access?province=" + uuLoginVO.getProvince() + "&city=" + uuLoginVO.getCity() + "&area=" + uuLoginVO.getArea() + "&appid=" + appId + "&timestamp=" + uuLoginVO.getTimestamp() + "&sign=" + uuLoginVO.getSign() + "&mobile=" + uuLoginVO.getMobile() + "&couponId=" + uuLoginVO.getCouponId(), headerMap, null);
         JSONObject result = JSON.parseObject(resultJson);
         if (result.get("status").equals(1)) {
             return R.ok(result.get("data"));
@@ -3630,7 +3779,7 @@
                 String accessToken = "";
                 WxXCXTempSend util = new WxXCXTempSend();
                 try {
-                    accessToken = util.getAccessToken();
+                    accessToken = util.getAccessToken("wx118de8a734d269f0");
                 } catch (Exception e) {
                     e.printStackTrace();
                 }
@@ -3640,15 +3789,15 @@
                         WxUtil.sendUuWash3(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "sU18zbyzxFldHAdOREaQCR5uq_uMvCKTmGtklO1xw-w");
                         break;
                     case 4:
-                        status = "车美已开始服务";
+                        status = "开始服务";
                         WxUtil.sendUuWash4(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "Eft5ksvsnOQANy2uNOGY43CC3pb33eDGA_lgCEoxuiw");
                         break;
                     case 6:
-                        status = "订单确认完成";
+                        status = "订单完成";
                         WxUtil.sendUuWash6(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "k1aV97H3pDNNcNcDTeZBD9jQemNDADnRE801HhTXweI");
                         break;
                     case 9:
-                        status = "订单已取消";
+                        status = "订单取消";
                         WxUtil.sendUuWash(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "9_2FhQPDxZoUqmAuIZ1L1zjjYXokdNvu7A0gzKfvruI");
                         break;
                 }
@@ -3676,15 +3825,15 @@
                         WxUtil.sendWsWash3(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "sNj6m-JBvW6rOokKGDX9X3-XH1AD0GY5_X0jA9JSLwc");
                         break;
                     case 4:
-                        status = "车美已开始服务";
+                        status = "开始服务";
                         WxUtil.sendWsWash4(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "Eft5ksvsnOQANy2uNOGY43CC3pb33eDGA_lgCEoxuiw");
                         break;
                     case 6:
-                        status = "订单确认完成";
+                        status = "订单完成";
                         WxUtil.sendWsWash6(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "iPS8yrsGDqy76hiP8bIbxkosveoX1xTFhdusSiGp-XM");
                         break;
                     case 9:
-                        status = "订单已取消";
+                        status = "订单取消";
                         WxUtil.sendWsWash(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "z_ysGXz9JWBc2rXuYZzVCXKJTyLf0w0WerrohuNoEng");
                         break;
                 }
@@ -3694,6 +3843,27 @@
     }
 
     @Override
+    public R getAllCommunityList() {
+        List<Integer> areaList = areaCodeList();
+        List<AreaVOStr> areaVOList = new ArrayList<>();
+        for (Integer code : areaList) {
+            AreaVOStr areaVO = new AreaVOStr();
+            areaVO.setId(code+"");
+            areaVO.setName(areaCodeToName(code.longValue()));
+            List<StreetVOStr> streetVOS = userDao.selectStreetByAreaCodeStr(code);
+            Iterator<StreetVOStr> iterator = streetVOS.listIterator();
+            while (iterator.hasNext()) {
+                StreetVOStr vo = iterator.next();
+                List<CommunityVO> communityVOS = userDao.selectCommunityByStreetId(Long.parseLong(vo.getId()), 3);
+                vo.setChildList(communityVOS);
+
+            }
+            areaVO.setChildList(streetVOS);
+            areaVOList.add(areaVO);
+        }
+        return R.ok(areaVOList);
+    }
+    @Override
     public R getCommunityList(String name, Long id) {
         //区级账号名
         String[] streetList = {"bingcaogangjiedao", "donghuajiedao", "nongnongpingjiedao", "dadukoujiedaojiedao", "guazipingjiedao",
@@ -3701,7 +3871,7 @@
                 "jingjiangzhen", "renhezhen", "pingdizhen", "datianzhen", "tongdezhen", "futianzhen", "qianjinzhen", "panlianzhen", "binguzhen", "baimazhen",
                 "salianzhen", "puweizhen", "deshizhen", "wanqiuyizuxiang", "caochangzhen", "xinshanlisuzuxiang", "tongzilinzhen", "yongxingzhen", "yumenzhen",
                 "honggezhen", "hongguoyizuxiang"};
-        List<Integer> ids = userDao.selectIdsByAccount(streetList);
+//        List<Integer> ids = userDao.selectIdsByAccount(streetList);
         //村或社区账号
         Integer type = isVilliage(name);
         //是否为市级账号
@@ -3915,6 +4085,32 @@
         return R.ok();
     }
 
+    @Override
+    public R feedBackReply(SysUserFeedbackVO sysUserFeedbackVO) {
+        if (isNull(sysUserFeedbackVO.getReply())){
+            return R.fail("回复内容不能为空");
+        }
+        SysUserFeedbackDO sysUserFeedbackDO1 = sysUserFeedbackDAO.selectById(sysUserFeedbackVO.getId());
+        sysUserFeedbackDO1.setReply(sysUserFeedbackVO.getReply());
+        return R.ok(sysUserFeedbackDAO.reply(sysUserFeedbackDO1));
+    }
+
+    @Override
+    public R myFeedBack(Long id,Integer type,Long propertyId) {
+        List<SysUserFeedbackDO> sysUserFeedbackDOS = sysUserFeedbackDAO.selectList(new QueryWrapper<SysUserFeedbackDO>().lambda().eq(SysUserFeedbackDO::getType, type).eq(SysUserFeedbackDO::getUserId, id).eq(SysUserFeedbackDO::getPropertyId,propertyId ));
+        return R.ok(sysUserFeedbackDOS);
+    }
+
+    @Override
+    public R propertyCheck(String phone) {
+        Long propertyAccount = userDao.isPropertyAccount(phone);
+        log.info("==============物业公司id"+propertyAccount);
+        if (isNull(propertyAccount)){
+            return R.fail();
+        }
+        return R.ok(propertyAccount);
+    }
+
 
     @Override
     public R getAreaAndStreet() {

--
Gitblit v1.7.1