From 2cc4ff419e5ad9abdc70556146adb4af4d258af3 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期二, 01 十一月 2022 11:13:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/huacheng_test' into huacheng_test

---
 springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java |   93 +++++++++++++++++++++++++++++++++++-----------
 1 files changed, 71 insertions(+), 22 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 4c5ed8d..b01003d 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
@@ -17,6 +17,8 @@
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ArrayUtil;
 import cn.hutool.core.util.NumberUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.core.util.*;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
@@ -222,6 +224,10 @@
             sysUserDO1.setPassword(encode);
             sysUserDO1.setType(1);
             sysUserDO1.setAppId(appId);
+            //设置默认头像地址
+            sysUserDO1.setImageUrl("https://www.psciio.com//idcard/f15c91f940624ed59537ecced1059f18.jpg");
+            //设置默认用户名
+            sysUserDO1.setNickName("用户" + RandomUtil.randomString(8));
             num = userDao.insert(sysUserDO1);
         } else {
             String encode = new BCryptPasswordEncoder().encode(UserConstants.PASSWORD);
@@ -325,6 +331,9 @@
             return R.fail();
         }
         LoginUserInfoVO loginUserInfoVO = new LoginUserInfoVO();
+        if (nonNull(sysUserDO.getStreetId())){
+            loginUserInfoVO.setStreetId(sysUserDO.getStreetId());
+        }
         loginUserInfoVO.setUserId(sysUserDO.getUserId());
         loginUserInfoVO.setName(sysUserDO.getName());
         loginUserInfoVO.setPassword(sysUserDO.getPassword());
@@ -354,6 +363,13 @@
             roleDOList.forEach(sysRoleDO -> {
                 set.add(sysRoleDO.getRoleKey());
             });
+        }
+        //是否为人大代表
+        if (StringUtils.isNotEmpty(sysUserDO.getPhone()) && StringUtils.isNotEmpty(sysUserDO.getName())){
+            int i = userDao.isDpcMember(sysUserDO.getPhone(), sysUserDO.getName());
+            if (i>0){
+                loginUserInfoVO.setIsDpcMember(1);
+            }
         }
         return R.ok(loginUserInfoVO);
     }
@@ -478,31 +494,53 @@
         if(countSocialOrg>0){
             loginUserInfoVO.setUserType(3);
         }
-        else {
-            if(loginUserInfoVO.getStreetId()!=null){
-                loginUserInfoVO.setUserType(1);
+        if (nonNull(sysUserDO.getAccount())){
+            if (isStreetAccount(sysUserDO.getAccount())){
+                //街道账号
                 loginUserInfoVO.setLevel(3);
             }
-            else {
-                loginUserInfoVO.setUserType(2);
-                loginUserInfoVO.setLevel(4);
+            if (sysUserDO.getAccount().equals("admin")){
+                loginUserInfoVO.setLevel(1);
             }
         }
+        if (loginUserInfoVO.getType().equals(3)){
+            loginUserInfoVO.setLevel(4);
+        }
         if (sysUserDO.getType().equals(11)){
+            //专家
             loginUserInfoVO.setLevel(5);
         }else if (sysUserDO.getType().equals(12)){
+            //行业分中心
             loginUserInfoVO.setLevel(2);
-        }else if (isNull(loginUserInfoVO.getLevel())){
-            loginUserInfoVO.setLevel(1);
         }
         //是否为三说会堂专家
         ComSanshuoExpertVO expertVO=userDao.isExpert(loginUserInfoVO.getPhone());
         if (nonNull(expertVO)){
             loginUserInfoVO.setType(13);
         }
+        //是否为人大代表
+        if (StringUtils.isNotEmpty(phone) && StringUtils.isNotEmpty(sysUserDO.getName())){
+            int i = userDao.isDpcMember(phone, sysUserDO.getName());
+            if (i>0){
+                loginUserInfoVO.setIsDpcMember(1);
+            }
+        }
         return R.ok(loginUserInfoVO);
     }
 
+    /**
+     * 是否为综治后台街道账号
+     * */
+    public Boolean isStreetAccount(String name){
+        Boolean flag=false;
+        String[] account={"glpz","qxpjd","tjdjd","dbdjd","yqjd","bcg","hmkjd","dhjd","jsgyy","dzhljd"};
+        if (nonNull(name)){
+            if (ArrayUtil.contains(account,name)){
+                flag=true;
+            }
+        }
+        return flag;
+    }
 
 
     /**
@@ -1580,6 +1618,11 @@
         }
         page.setSize(pageSize);
         page.setCurrent(pageNum);
+        //因操作日志数据量太大,如果没有时间查询条件,默认查询最近十五天的数据
+        if (StrUtil.isEmpty(sysOperLogVO.getStartTime()) && StrUtil.isEmpty(sysOperLogVO.getEndTime())){
+            sysOperLogVO.setStartTime(com.panzhihua.common.utlis.DateUtils.getBeforeDay(15));
+            sysOperLogVO.setEndTime(com.panzhihua.common.utlis.DateUtils.getCurrentDateymd());
+        }
         IPage<SysOperLogVO> iPage = sysOperLogDAO.pageOperLog(page, sysOperLogVO);
         return R.ok(iPage);
     }
@@ -3257,16 +3300,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();
     }
 
@@ -3558,15 +3604,18 @@
                 activeDate = getMonthTwentyDays();
             }
         }
-
         //获取最近活跃人数
-        Map<String, Long> active = userDao.getActive(activeX, streetId, areaCode, appId);
+        List<UsersStatisticsDTO> actives = userDao.getActive(activeX, streetId, areaCode, appId);
         //获取最近注册人数
-        Map<String, Long> dailyAdd = userDao.getDailyAdd(activeX, streetId, areaCode, appId);
+        List<UsersStatisticsDTO> dailyAdds = userDao.getDailyAdd(activeX, streetId, areaCode, appId);
+        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");
-            activeY.add(active.containsKey(dateStr) ? active.get("activeUser").toString() : "0");
-            adY.add(dailyAdd.containsKey(dateStr) ? dailyAdd.get("addUser").toString() : "0");
+            activeY.add(activeMap.containsKey(dateStr) ? activeMap.get(dateStr) : "0");
+            adY.add(dailyAddMap.containsKey(dateStr) ? dailyAddMap.get(dateStr) : "0");
 
         }
         vo.setUserX(getMAndD(activeDate));
@@ -3584,7 +3633,7 @@
                 String accessToken = "";
                 WxXCXTempSend util = new WxXCXTempSend();
                 try {
-                    accessToken = util.getAccessToken();
+                    accessToken = util.getAccessToken("wx118de8a734d269f0");
                 } catch (Exception e) {
                     e.printStackTrace();
                 }

--
Gitblit v1.7.1