Browse Source

修改代码结构

tanzhongran 3 years ago
parent
commit
241f374a3b

+ 1 - 1
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dao/mapper/ReportServiceMapper.java

@@ -29,7 +29,7 @@ public interface ReportServiceMapper  {
      * 生成码下载码总量
      * @param beginDate 开始时间
      * @param endDate 结束时间
-     * @param type 判断生成码/下载码
+     * @param type 判断 1-生成码 2-下载码
      * @return
      */
     ListPackageCodeVo queryPackageCodeNum(@Param("beginDate")LocalDateTime beginDate,@Param("endDate")LocalDateTime endDate,@Param("type")Integer type);

+ 24 - 69
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/ReportServiceImpl.java

@@ -209,6 +209,7 @@ public class ReportServiceImpl implements ReportService {
      */
     @Override
     public PackageCodeTypeRes queryPackageCodeGeneral(ReportReq reportReq) {
+        //0-准备时间参数
         Map<String,LocalDateTime> map=new HashMap<String,LocalDateTime>();
         //判断是否有参数值
         if(null!= reportReq.getValue()){
@@ -217,25 +218,41 @@ public class ReportServiceImpl implements ReportService {
         }
         PackageCodeTypeRes res = new PackageCodeTypeRes();
 
+        //1-查询本期
         //查询同期生成码(参数:开始时间,结束时间,1-生成码类型/2-下载码类型,1-同期/2-往期)
-        getGenerateCodeNum(reportReq.getBeginTime(),reportReq.getEndTime(),1,res,"1");
+        ListPackageCodeVo createBean = reportServiceMapper.queryPackageCodeNum(reportReq.getBeginTime(),reportReq.getEndTime(),1);
+        res.setCreateBoxNumber(createBean.getQrBoxNumber());
+        res.setCreateCapNumber(createBean.getQrCapNumber());
         //查询同期下载码
-        getGenerateCodeNum(reportReq.getBeginTime(),reportReq.getEndTime(),2,res,"1");
+        ListPackageCodeVo downloadBean = reportServiceMapper.queryPackageCodeNum(reportReq.getBeginTime(),reportReq.getEndTime(),2);
+        res.setLoadBoxNumber(downloadBean.getQrBoxNumber());
+        res.setLoadCapNumber(downloadBean.getQrCapNumber());
         //查询同期激活码 (参数:开始时间,结束时间,1-同期/2-往期)
-        getActivateCodeNum(reportReq.getBeginTime(),reportReq.getEndTime(),res,"1");
-        //查询往期
+        ListPackageCodeVo activateBean = reportServiceMapper.queryActivateCodeNum(reportReq.getBeginTime(),reportReq.getEndTime());
+        res.setActivateBoxNumber(activateBean.getQrBoxNumber());
+        res.setActivateCapNumber(activateBean.getQrCapNumber());
+
+        //2-查询往期并计算同比增长率
         if(!map.isEmpty()){
             //查询往期生成码
-            getGenerateCodeNum(map.get("beginDate"),map.get("endDate"),1,res,"2");
+            ListPackageCodeVo createPresentBean = reportServiceMapper.queryPackageCodeNum(map.get("beginDate"), map.get("endDate"), 1);
             //查询往期下载码(参数:开始时间,结束时间,1-生成码类型/2-下载码类型,1-同期/2-往期)
-            getGenerateCodeNum(map.get("beginDate"),map.get("endDate"),2,res,"2");
+            ListPackageCodeVo downloadPresentBean = reportServiceMapper.queryPackageCodeNum(map.get("beginDate"), map.get("endDate"), 2);
             //查询往期激活码(参数:开始时间,结束时间,1-同期/2-往期)
-            getActivateCodeNum(map.get("beginDate"),map.get("endDate"),res,"2");
+            ListPackageCodeVo activatePresentBean = reportServiceMapper.queryActivateCodeNum(map.get("beginDate"), map.get("endDate"));
+
+            //计算增长率
+            res.setCreatePercent(percentBigDecimal(res.getCreateBoxNumber()+res.getCreateCapNumber(), createPresentBean.getQrBoxNumber()+createPresentBean.getQrCapNumber()));
+            res.setCreatePercent(percentBigDecimal(res.getLoadBoxNumber()+res.getLoadCapNumber(), downloadPresentBean.getQrBoxNumber()+downloadPresentBean.getQrCapNumber()));
+            res.setCreatePercent(percentBigDecimal(res.getActivateBoxNumber()+res.getActivateCapNumber(), activatePresentBean.getQrBoxNumber()+activatePresentBean.getQrCapNumber()));
         }
+
         //返回参数
         return res;
     }
 
+
+
     /**
      * 封装入参
      * @param reportReq
@@ -247,68 +264,6 @@ public class ReportServiceImpl implements ReportService {
         return map;
     }
 
-    /**
-     * 获取生成码和下载码情况
-     * @param beginDate 开始时间
-     * @param endDate 结束时间
-     * @param type 判断是生成码还是下载码 1生成 2激活
-     * @param res 返回值
-     * @param value 判断是否往期
-     */
-    private void getGenerateCodeNum(LocalDateTime beginDate,LocalDateTime endDate,Integer type,PackageCodeTypeRes res,String value) {
-        ListPackageCodeVo entityBase = reportServiceMapper.queryPackageCodeNum(beginDate,endDate,type);
-        if(!ObjectUtils.isEmpty(entityBase)){
-            //判断是否往期
-            if("1".equals(value)){
-                //判断是否生成码使用情况/或者下载码使用情况
-                if("1".equals(type.toString())){
-                    res.setCreateBoxNumber(entityBase.getQrBoxNumber());
-                    res.setCreateCapNumber(entityBase.getQrCapNumber());
-                }else {
-                    res.setLoadBoxNumber(entityBase.getQrBoxNumber());
-                    res.setLoadCapNumber(entityBase.getQrCapNumber());
-                }
-            }else{
-                //判断是否生成码使用情况/或者下载码使用情况
-                if("1".equals(type.toString())){
-                    long present=res.getCreateBoxNumber()+res.getCreateCapNumber();
-                    long before=entityBase.getQrBoxNumber()+entityBase.getQrCapNumber();
-                    res.setCreatePercent(percentBigDecimal(present, before));
-                }else{
-                    long present=res.getLoadBoxNumber()+res.getLoadCapNumber();
-                    long before=entityBase.getQrBoxNumber()+entityBase.getQrCapNumber();
-                    res.setLoadPercent(percentBigDecimal(present, before));
-                }
-            }
-        }
-
-    }
-
-    /**
-     * 获取激活码情况
-     * @param beginDate 开始时间
-     * @param endDate 结束时间
-     * @param res 出参
-     * @param value 判断同期/往期
-     */
-    private void getActivateCodeNum(LocalDateTime beginDate,LocalDateTime endDate,PackageCodeTypeRes res,String value) {
-        ListPackageCodeVo activateEntity = reportServiceMapper.queryActivateCodeNum(beginDate,endDate);
-        //判断查询返回是否为空
-        if(!ObjectUtils.isEmpty(activateEntity)){
-            //判断同期还是往期
-            if("1".equals(value)){
-                res.setActivateBoxNumber(activateEntity.getQrBoxNumber());
-                res.setActivateCapNumber(activateEntity.getQrCapNumber());
-            }else{
-                long present=res.getActivateBoxNumber()+res.getActivateCapNumber();
-                long before=activateEntity.getQrBoxNumber()+activateEntity.getQrCapNumber();
-                String result = percentBigDecimal(present, before);
-                res.setActivatePercent(result);
-            }
-        }
-
-    }
-
     /**
      * @param present 同期数
      * @param before 往期数