Parcourir la source

新增缓存key枚举类与角色id枚举类

longw il y a 1 an
Parent
commit
2e4cb257d7

+ 18 - 17
module_kzks/src/main/java/org/jeecg/modules/Index/service/impl/IndexServiceImpl.java

@@ -9,6 +9,7 @@ import org.jeecg.common.system.api.ISysBaseAPI;
 import org.jeecg.common.system.util.JwtUtil;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.RedisUtil;
+import org.jeecg.modules.Index.util.CacheKey;
 import org.jeecg.modules.Index.entity.dto.IndexInfoParamDto;
 import org.jeecg.modules.Index.entity.pojo.ContractAmount;
 import org.jeecg.modules.Index.entity.vo.*;
@@ -80,13 +81,7 @@ public class IndexServiceImpl implements IndexService {
     @SuppressWarnings("all")
     private IProjectCostService projectCostService;
 
-    private static final String INCOME_DATA_REDIS_KEY = "incomeDataRedisKey:";
 
-    private static final String CONTRACT_DATA_REDIS_KEY = "contractDataRedisKey:";
-
-    private static final String RECEIVED_DATA_REDIS_KEY = "receivedDataRedisKey:";
-
-    private static final String CONTRACT_CHART_INFO_DATA_REDIS_KEY = "ContractChartInfoVoDataRedisKey:";
 
     private static final String YEAR = "year";
 
@@ -95,6 +90,13 @@ public class IndexServiceImpl implements IndexService {
     /*合同额一层*/
     @Override
     public IndexTotalVo getTotalIncome(HttpServletRequest request) {
+
+        String userNameByToken = JwtUtil.getUserNameByToken(request);
+        LoginUser sysUser = sysBaseApi.getUserByName(userNameByToken);
+
+
+
+
         //首页收入渲染对象
         BigDecimal initValue = BigDecimal.valueOf(0);
         IndexTotalVo incomeDataInfoVO = new IndexTotalVo();
@@ -105,8 +107,7 @@ public class IndexServiceImpl implements IndexService {
         incomeDataInfoVO.setMonthHb(initValue);
         incomeDataInfoVO.setMonthTb(initValue);
 
-        String userNameByToken = JwtUtil.getUserNameByToken(request);
-        LoginUser sysUser = sysBaseApi.getUserByName(userNameByToken);
+
 
         List<String> departNames = sysDepartMapper.getSysUserOfDepartNameList(sysUser.getId());
         if (departNames.isEmpty()) return incomeDataInfoVO;
@@ -116,7 +117,7 @@ public class IndexServiceImpl implements IndexService {
             stringBuilder.append(departName).append("|");
         }
         String depart = stringBuilder.toString();
-        IndexTotalVo cacheObject = (IndexTotalVo) redisUtil.get(INCOME_DATA_REDIS_KEY + depart);
+        IndexTotalVo cacheObject = (IndexTotalVo) redisUtil.get(CacheKey.INCOME_DATA_REDIS_KEY + depart);
         if (ObjectUtils.isNotEmpty(cacheObject)) {
             incomeDataInfoVO = cacheObject;
             return incomeDataInfoVO;
@@ -244,7 +245,7 @@ public class IndexServiceImpl implements IndexService {
         incomeDataInfoVO.setMonthTb(incomeYearMothTb);
         incomeDataInfoVO.setMonthHb(incomeMothHb);
 
-        redisUtil.set(INCOME_DATA_REDIS_KEY + depart, incomeDataInfoVO, 1000L * 60 * 60 * 2);
+        redisUtil.set(CacheKey.INCOME_DATA_REDIS_KEY + depart, incomeDataInfoVO, 1000L * 60 * 60 * 2);
 
         return incomeDataInfoVO;
     }
@@ -253,7 +254,7 @@ public class IndexServiceImpl implements IndexService {
     /*合同数量一层*/
     @Override
     public IndexTotalVo getTotalContractNum(HttpServletRequest request) {
-        //首页收入渲染对象
+        //首页合同数量渲染对象
         BigDecimal initValue = BigDecimal.valueOf(0);
         IndexTotalVo totalContractNumInfoVO = new IndexTotalVo();
         totalContractNumInfoVO.setYearTotal(initValue);
@@ -274,7 +275,7 @@ public class IndexServiceImpl implements IndexService {
             stringBuilder.append(departName).append("|");
         }
         String depart = stringBuilder.toString();
-        IndexTotalVo cacheObject = (IndexTotalVo) redisUtil.get(CONTRACT_DATA_REDIS_KEY + depart);
+        IndexTotalVo cacheObject = (IndexTotalVo) redisUtil.get(CacheKey.CONTRACT_DATA_REDIS_KEY + depart);
         if (ObjectUtils.isNotEmpty(cacheObject)) {
             totalContractNumInfoVO = cacheObject;
             return totalContractNumInfoVO;
@@ -402,7 +403,7 @@ public class IndexServiceImpl implements IndexService {
         totalContractNumInfoVO.setMonthTb(yearMothTb);
         totalContractNumInfoVO.setMonthHb(mothHb);
 
-        redisUtil.set(CONTRACT_DATA_REDIS_KEY + depart, totalContractNumInfoVO, 1000L * 60 * 60 * 2);
+        redisUtil.set(CacheKey.CONTRACT_DATA_REDIS_KEY + depart, totalContractNumInfoVO, 1000L * 60 * 60 * 2);
 
         return totalContractNumInfoVO;
     }
@@ -411,7 +412,7 @@ public class IndexServiceImpl implements IndexService {
     /*已收款一层*/
     @Override
     public IndexTotalVo getTotalReceived(HttpServletRequest request) {
-        //首页收入渲染对象
+        //首页已收款渲染对象
         BigDecimal initValue = BigDecimal.valueOf(0);
         IndexTotalVo indexTotalVo = new IndexTotalVo();
         indexTotalVo.setYearTotal(initValue);
@@ -432,7 +433,7 @@ public class IndexServiceImpl implements IndexService {
             stringBuilder.append(departName).append("|");
         }
         String depart = stringBuilder.toString();
-        IndexTotalVo cacheObject = (IndexTotalVo) redisUtil.get(RECEIVED_DATA_REDIS_KEY + depart);
+        IndexTotalVo cacheObject = (IndexTotalVo) redisUtil.get(CacheKey.RECEIVED_DATA_REDIS_KEY + depart);
         if (ObjectUtils.isNotEmpty(cacheObject)) {
             indexTotalVo = cacheObject;
             return indexTotalVo;
@@ -558,7 +559,7 @@ public class IndexServiceImpl implements IndexService {
         indexTotalVo.setMonthTb(yearMothTb);
         indexTotalVo.setMonthHb(mothHb);
 
-        redisUtil.set(RECEIVED_DATA_REDIS_KEY + depart, indexTotalVo, 1000L * 60 * 60 * 2);
+        redisUtil.set(CacheKey.RECEIVED_DATA_REDIS_KEY + depart, indexTotalVo, 1000L * 60 * 60 * 2);
 
         return indexTotalVo;
     }
@@ -639,7 +640,7 @@ public class IndexServiceImpl implements IndexService {
             stringBuilder.append(departName).append("|");
         }
         String depart = stringBuilder.toString();
-        Object cacheObject = redisUtil.get(CONTRACT_CHART_INFO_DATA_REDIS_KEY + depart);
+        Object cacheObject = redisUtil.get(CacheKey.CONTRACT_CHART_INFO_DATA_REDIS_KEY + depart);
         ContractChartInfoVo Object = JSONObject.parseObject(JSONObject.toJSONString(cacheObject), new TypeReference<ContractChartInfoVo>() {
         });
         if (ObjectUtils.isNotEmpty(cacheObject)) {

+ 37 - 0
module_kzks/src/main/java/org/jeecg/modules/Index/threadPool/SingletonThreadPool.java

@@ -0,0 +1,37 @@
+package org.jeecg.modules.Index.ThreadPool;
+
+import java.util.concurrent.ArrayBlockingQueue;
+import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
+
+public class SingletonThreadPool {
+    private static volatile SingletonThreadPool instance;
+    private final ThreadPoolExecutor executor;
+    private SingletonThreadPool() {
+        // 私有构造方法
+        int corePoolSize = 8; // 核心线程池大小
+        int maxPoolSize = 16; // 最大线程池大小
+        long keepAliveTime = 60L; // 线程空闲时间
+        TimeUnit unit = TimeUnit.SECONDS; // 线程空闲时间单位
+        BlockingQueue<Runnable> workQueue = new ArrayBlockingQueue<>(1000); // 任务队列
+        executor = new ThreadPoolExecutor(corePoolSize, maxPoolSize, keepAliveTime, unit, workQueue);
+    }
+    public static SingletonThreadPool getInstance() {
+        if (instance == null) {
+            synchronized (SingletonThreadPool.class) {
+                if (instance == null) {
+                    instance = new SingletonThreadPool();
+                }
+            }
+        }
+        return instance;
+    }
+    public ThreadPoolExecutor getExecutor() {
+        return executor;
+    }
+    public static ThreadPoolExecutor getNewExecutor(){
+        instance = null;
+        return getInstance().getExecutor();
+    }
+}

+ 14 - 0
module_kzks/src/main/java/org/jeecg/modules/Index/util/AuthMark.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.Index.util;
+
+public class AuthMark {
+
+    /*总领导*/
+    public static String BOSS = "1705758794195161090";
+
+    /*部门领导*/
+    public static String DEPT_LEADER = "1705760017153544194";
+
+    public static String STAFF = "1705760110619414530";
+
+
+}

+ 12 - 0
module_kzks/src/main/java/org/jeecg/modules/Index/util/CacheKey.java

@@ -0,0 +1,12 @@
+package org.jeecg.modules.Index.util;
+
+public class CacheKey {
+
+    public static final String INCOME_DATA_REDIS_KEY = "incomeDataRedisKey:";
+
+    public static final String CONTRACT_DATA_REDIS_KEY = "contractDataRedisKey:";
+
+    public static final String RECEIVED_DATA_REDIS_KEY = "receivedDataRedisKey:";
+
+    public static final String CONTRACT_CHART_INFO_DATA_REDIS_KEY = "ContractChartInfoVoDataRedisKey:";
+}

+ 13 - 0
module_kzks/src/main/java/org/jeecg/modules/xmcbDetail/mapper/ComContractInfoExchangeMapper.java

@@ -43,14 +43,27 @@ public interface ComContractInfoExchangeMapper extends BaseMapper<ComContractInf
 
     BigDecimal getIncomeYearTotalByTasknoListAndByQsrqRange(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
 
+    BigDecimal getIncomeYearTotalByTasknoListAndByQsrqRangeIfBoss(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
+
+
     BigDecimal getContractNumYearTotalByTasknoListAndByQsrqRange(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
 
+    BigDecimal getContractNumYearTotalByTasknoListAndByQsrqRangeIfBoss(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
+
+
     BigDecimal getReceivedYearTotalByTasknoListAndByQsrqRange(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
 
+    BigDecimal getReceivedYearTotalByTasknoListAndByQsrqRangeIfBoss(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
+
     List<ContractAmount> getContractAmountandNumByYear(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
 
+    List<ContractAmount> getContractAmountandNumByYearIfBoss(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
+
+
     List<ContractAmount> getContractAmountandNumByMonth(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
 
+    List<ContractAmount> getContractAmountandNumByMonthIfBoss(@Param("tasknoList") List<String> tasknoList, @Param("beginDate") Date beginDate, @Param("endDate") Date endDate);
+
     /*按年查询已收款*/
     BigDecimal getReceivedByYear(@Param("tasknoList") List<String> tasknoList, @Param("year") String year);
 

+ 60 - 1
module_kzks/src/main/java/org/jeecg/modules/xmcbDetail/mapper/xml/ComContractInfoExchangeMapper.xml

@@ -12,6 +12,15 @@
             #{item}
         </foreach>
     </select>
+
+    <select id="getIncomeYearTotalByTasknoListAndByQsrqRangeIfBoss" resultType="java.math.BigDecimal">
+        select sum(a.htfpe)
+        from (select htfpe, qsrq from com_contract_info_exchange where sjly = 20) a
+        where a.qsrq between #{beginDate}
+                  and #{endDate}
+    </select>
+
+
     <select id="getContractNumYearTotalByTasknoListAndByQsrqRange" resultType="java.math.BigDecimal">
         select count(distinct(a.htbh))
         from (select rwbh,qsrq,htbh from com_contract_info_exchange where sjly = 20) a
@@ -23,6 +32,15 @@
             #{item}
         </foreach>
     </select>
+
+    <select id="getContractNumYearTotalByTasknoListAndByQsrqRangeIfBoss" resultType="java.math.BigDecimal">
+        select count(distinct(a.htbh))
+        from (select qsrq,htbh from com_contract_info_exchange where sjly = 20) a
+        where a.qsrq between #{beginDate}
+            and #{endDate}
+          and a.htbh is not null
+    </select>
+
     <select id="getReceivedYearTotalByTasknoListAndByQsrqRange" resultType="java.math.BigDecimal">
         select sum(a.rwskje)
         from (select rwbh,dkhpdqrq,rwskje from com_contract_info_exchange where sjly = 40) a
@@ -33,6 +51,16 @@
             #{item}
         </foreach>
     </select>
+
+    <select id="getReceivedYearTotalByTasknoListAndByQsrqRangeIfBoss" resultType="java.math.BigDecimal">
+        select sum(a.rwskje)
+        from (select dkhpdqrq, rwskje from com_contract_info_exchange where sjly = 40) a
+        where a.dkhpdqrq between #{beginDate}
+                  and #{endDate}
+    </select>
+
+
+
     <select id="getContractAmountandNumByMonth" resultType="org.jeecg.modules.Index.entity.pojo.ContractAmount">
         SELECT
         sum(htfpe) AS contractAmount,
@@ -41,7 +69,7 @@
         CONCAT(
         YEAR (qsrq),
         "-",
-        LPAD( MONTH (qsrq), 2, "0" )) AS Date
+        LPAD( MONTH (qsrq), 2, "0" )) AS date
         from (select rwbh,htfpe,qsrq,htbh from com_contract_info_exchange where sjly = 20) a
         where a.qsrq between #{beginDate}
         and #{endDate}
@@ -52,6 +80,22 @@
         GROUP BY YEAR(qsrq),MONTH (qsrq)
     </select>
 
+    <select id="getContractAmountandNumByMonthIfBoss"
+            resultType="org.jeecg.modules.Index.entity.pojo.ContractAmount">
+        SELECT
+        sum(htfpe) AS contractAmount,
+        count(
+        DISTINCT (htbh)) AS contractTotal,
+        CONCAT(
+        YEAR (qsrq),
+        "-",
+        LPAD( MONTH (qsrq), 2, "0" )) AS date
+        from (select rwbh,htfpe,qsrq,htbh from com_contract_info_exchange where sjly = 20) a
+        where a.qsrq between #{beginDate}
+        and #{endDate}
+        GROUP BY YEAR(qsrq),MONTH (qsrq)
+    </select>
+
     <select id="getContractAmountandNumByYear" resultType="org.jeecg.modules.Index.entity.pojo.ContractAmount">
         SELECT
         sum(htfpe) AS contractAmount,
@@ -68,6 +112,19 @@
         GROUP BY YEAR(qsrq)
     </select>
 
+    <select id="getContractAmountandNumByYearIfBoss"
+            resultType="org.jeecg.modules.Index.entity.pojo.ContractAmount">
+        SELECT
+        sum(htfpe) AS contractAmount,
+        count(
+        DISTINCT (htbh)) AS contractTotal,
+        YEAR (qsrq) AS Date
+        from (select rwbh,htfpe,qsrq,htbh from com_contract_info_exchange where sjly = 20) a
+        where a.qsrq between #{beginDate}
+        and #{endDate}
+        GROUP BY YEAR(qsrq)
+    </select>
+
     <!--按年查询已收款 -->
     <select id="getReceivedByYear" resultType="java.math.BigDecimal">
         select sum(a.rwskje)
@@ -89,4 +146,6 @@
         </foreach>
     </select>
 
+
+
 </mapper>