Ver Fonte

优化报表

sunyize há 2 anos atrás
pai
commit
e64e4b7f6c

+ 13 - 9
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckCustomerInfoMapper.java

@@ -128,6 +128,9 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
                     "(SELECT data_id,count(*) c from smc_special_check_log_history group by data_id ) a \n" +
                     "LEFT JOIN  sms_check_customer_info  info  on info.data_id =a.data_id \n" +
                     "LEFT JOIN  sms_check_task task  on  task.id=info.task_id where info.del_flag =0   ) aa  where 1=1  ");
+                    if (StringUtils.isNotBlank(parameterMap.get("count"))){
+                        sql.append(" and c = "+parameterMap.get("count").trim().replace("*","")+"  ");
+                    }
                     if (StringUtils.isNotBlank(parameterMap.get("customerNo"))){
                         sql.append(" and customer_no like '%"+parameterMap.get("customerNo").replace("*","")+"%' ");
                     }
@@ -200,7 +203,7 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
         public String countGroupCheck(   Map<String, String>  parameterMap){
             StringBuilder sql = new StringBuilder();
 
-            sql.append(" SELECT count(*) from sms_check_customer_info  info where 1=1 and info.del_flag=0  ");
+            sql.append(" SELECT count(*) from sms_check_customer_info  info where 1=1 and info.del_flag=0 and info.check_state =5 ");
 
             if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
                 sql.append(" and  info.create_time>='"+parameterMap.get("startDate")+"'  ");
@@ -214,17 +217,17 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
             sql.append(" union all  ");
 
 
-            sql.append(" select count(*) from (\n" +
-                    "SELECT create_date,info.type,info.del_flag from sms_check_customer_data_log_bill bill left join sms_check_customer_info  info on bill.info_id=info.id  \n" +
+            sql.append(" SELECT Sum(a) from ( select count(*)a from (\n" +
+                    "SELECT create_date,info.type,info.del_flag,info_id from sms_check_customer_data_log_bill bill left join sms_check_customer_info  info on bill.info_id=info.id  \n" +
                     " \n" +
                     "UNION all \n" +
-                    "SELECT create_date,info.type,info.del_flag from sms_lot_customer_data_log_bill bill left join sms_check_customer_info  info on bill.info_id=info.id  \n" +
+                    "SELECT create_date,info.type,info.del_flag,info_id from sms_lot_customer_data_log_bill bill left join sms_check_customer_info  info on bill.info_id=info.id  \n" +
                     "  \n" +
                     "UNION all \n" +
-                    "SELECT create_date,info.type,info.del_flag from sms_truck_customer_data_log_bill bill left join sms_check_customer_info  info on bill.info_id=info.id \n" +
+                    "SELECT create_date,info.type,info.del_flag,info_id from sms_truck_customer_data_log_bill bill left join sms_check_customer_info  info on bill.info_id=info.id \n" +
                     "UNION ALL\n" +
-                    "SELECT bill.create_time create_date,info.type,info.del_flag from  smc_special_check_log_history bill left join sms_check_customer_info  info on bill.info_id=info.id \n" +
-                    ") aa  where 1=1  and aa.del_flag=0  ");
+                    "SELECT bill.create_time create_date,info.type,info.del_flag,info_id from  smc_special_check_log_history bill left join sms_check_customer_info  info on bill.info_id=info.id \n" +
+                    ") aa  where 1=1  and aa.del_flag=0    ");
 
             if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
                 sql.append(" and  aa.create_date>='"+parameterMap.get("startDate")+"'  ");
@@ -235,12 +238,13 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
             if (StringUtils.isNotBlank(parameterMap.get("taskType")))  {
                 sql.append(" and  aa.type ="+parameterMap.get("taskType")+"  ");
             }
+                sql.append(" group by info_id  )a  ");
             return sql.toString();
         }
         public String warningCountGroup(   Map<String, String>  parameterMap){
             StringBuilder sql = new StringBuilder();
 
-            sql.append(" SELECT count(*) from sms_check_customer_info_become_due  due where 1=1 and due.del_flag=0 ");
+            sql.append(" SELECT count(*) from sms_check_customer_info_become_due  due where 1=1 and due.del_flag=0 and due.check_state=5 ");
 
             if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
                 sql.append(" and  due.create_time>='"+parameterMap.get("startDate")+"'  ");
@@ -266,7 +270,7 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
                 sql.append(" and  due.type ="+parameterMap.get("taskType")+"  ");
             }
 
-
+            sql.append("  GROUP BY due.info_id ");
             return sql.toString();
         }
         public String getWarningFiled(   Map<String, String>  parameterMap){

+ 1 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmsCheckCustomerInfoServiceImpl.java

@@ -302,6 +302,7 @@ public class SmsCheckCustomerInfoServiceImpl extends ServiceImpl<SmsCheckCustome
         List<Map<String, String>> maps = smsCheckCustomerInfoMapper.countGroupCheck(parameterMap);
 
         map.put("his",Integer.parseInt(String.valueOf(maps.get(1).get("count(*)"))));
+        // 完成数 - 整改数
         map.put("sum",Integer.parseInt(String.valueOf(maps.get(0).get("count(*)")))-Integer.parseInt(String.valueOf((maps.get(1).get("count(*)")))));
 
         return map;