Kaynağa Gözat

页面连数据

sunyize 2 yıl önce
ebeveyn
işleme
703e6ee573

+ 90 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckCustomerInfoController.java

@@ -54,6 +54,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.lang.reflect.Field;
 import java.lang.reflect.InvocationTargetException;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
@@ -1541,7 +1542,96 @@ public class SmsCheckCustomerInfoController extends JeecgController<SmsCheckCust
         }
     }
 
+    @GetMapping(value = "/status/getHistory")
+    public Result<?> getHistory(@RequestParam Map<String, String> parameterMap, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,HttpServletRequest request) {
 
+        List<Map<String, String>> maps = customerInfoService.selectHistoryListPage(pageNo, pageSize, parameterMap);
+        Page<Map<String, String>> smsCheckCustomerInfoBecomeDueAndInfoPage = new Page<Map<String, String>>(pageNo, pageSize).setRecords(maps);
+        return Result.ok(smsCheckCustomerInfoBecomeDueAndInfoPage);
+    }
+
+    @GetMapping(value = "/status/getBillList")
+    public Result<?> getBillList(@RequestParam Map<String, String> parameterMap, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,HttpServletRequest request) {
+
+        List<Map<String, String>> maps = customerInfoService.selectBillsListPage(pageNo, pageSize, parameterMap);
+        Page<Map<String, String>> smsCheckCustomerInfoBecomeDueAndInfoPage = new Page<Map<String, String>>(pageNo, pageSize).setRecords(maps);
+        return Result.ok(smsCheckCustomerInfoBecomeDueAndInfoPage);
+    }
+
+
+    @GetMapping(value = "/status/getTableView")
+    public Result<?> getTableView( @RequestParam Map<String, String> parameterMap) {
+
+        List<Map<String, Integer>>  maps = customerInfoService.selectMapGroup(  parameterMap);
+
+        Map<Object,Object> hashMap =new HashMap<>();
+
+        StringBuilder all = new StringBuilder();
+        List<String> list =new ArrayList<>();
+        for (Map<String, Integer> map : maps) {
+            hashMap.put( map.get("update_field"),map.get("count(*)"));
+            all.append( "-"+map.get("count(*)"));
+        }
+        String[] split = all.toString().split("-");
+        int c=0;
+        for (String s : split) {
+            if (StringUtils.isNotBlank(s)){
+                c+=Integer.parseInt(s);
+            }
+        }
+        hashMap.put("all",c);
+        return Result.ok(hashMap);
+    }
+
+    @GetMapping(value = "/status/getTaksCount")
+    public Result<?> getTaksCount( @RequestParam Map<String, String> parameterMap) {
+
+        Map<Object,Object>   hashMap = customerInfoService.getTaskCount(  parameterMap);
+
+        return Result.ok(hashMap);
+    }
+
+    @GetMapping(value = "/status/getWarningCount")
+    public Result<?> getWarningCount( @RequestParam Map<String, String> parameterMap) {
+
+        Map<Object,Object>   hashMap = customerInfoService.getWarningCount(  parameterMap);
+
+        return Result.ok(hashMap);
+    }
+
+    @GetMapping(value = "/status/getWarningCountOrg")
+    public Result<?> getWarningCountOrg( @RequestParam Map<String, String> parameterMap) {
+
+        Map<Object,Object>   hashMap = customerInfoService.getWarningCountOrg(  parameterMap);
+
+        return Result.ok(hashMap);
+    }
+
+    @GetMapping(value = "/status/getTableViewJb")
+    public Result<?> getTableViewJb( @RequestParam Map<String, String> parameterMap) {
+
+        List<Map<String, Integer>>  maps = customerInfoService.selectMapGroupJb(  parameterMap);
+
+        Map<Object,Object> hashMap =new HashMap<>();
+
+        StringBuilder all = new StringBuilder();
+        List<String> list =new ArrayList<>();
+        for (Map<String, Integer> map : maps) {
+            hashMap.put( map.get("update_field"),map.get("count(*)"));
+            all.append( "-"+map.get("count(*)"));
+        }
+        String[] split = all.toString().split("-");
+        int c=0;
+        for (String s : split) {
+            if (StringUtils.isNotBlank(s)){
+                c+=Integer.parseInt(s);
+            }
+        }
+        hashMap.put("all",c);
+        return Result.ok(hashMap);
+    }
     @GetMapping(value = "/phone/customerPhone")
     public Result<?> customerPhone(@RequestParam Map<String, String> parameterMap) {
         String customerNo = parameterMap.get("customerNo");

+ 232 - 8
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckCustomerInfoMapper.java

@@ -12,6 +12,7 @@ import org.jeecg.modules.smscheck.vo.SmsCheckCustomerInfoTaskVo;
 import org.jeecg.modules.smscheck.vo.SmsCheckTaskVo;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author jeecg-boot
@@ -52,8 +53,231 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
     @SelectProvider(type = ProviderClass.class, method = "selectListPage")
     List<SmsCheckCustomerInfoBecomeDueAndInfo> selectListPage(Integer pageNo, Integer pageSize, SmsCheckCustomerInfo smsCheckCustomerInfo, SysPermissionDataRuleModel sysPermissionDataRuleModel, SysUser sysUser );
 
+
+    @SelectProvider(type = ProviderClass.class, method = "selectMapGroup")
+    List<Map<String, Integer>> selectMapGroup(  Map<String, String> parameterMap );
+
+    @SelectProvider(type = ProviderClass.class, method = "getTaskCount")
+    List<Map<String, Integer>> getTaskCount(  Map<String, String> parameterMap );
+
+
+    @SelectProvider(type = ProviderClass.class, method = "getTaskCountOrg")
+    List<Map<String, Integer>> getTaskCountOrg(  Map<String, String> parameterMap );
+    @SelectProvider(type = ProviderClass.class, method = "getWarningFiled")
+    List<Map<String, Integer>> getWarningFiled(  Map<String, String> parameterMap );
+
+
+    @SelectProvider(type = ProviderClass.class, method = "selectMapGroupJb")
+    List<Map<String, Integer>> selectMapGroupJb(  Map<String, String> parameterMap );
+    @SelectProvider(type = ProviderClass.class, method = "selectHistoryListPage")
+    List<Map<String, String>> selectHistoryListPage(Integer pageNo, Integer pageSize, Map<String, String> parameterMap);
+
+    @SelectProvider(type = ProviderClass.class, method = "selectBillsListPage")
+    List<Map<String, String>> selectBillsListPage(Integer pageNo, Integer pageSize, Map<String, String> parameterMap);
+
+
     class ProviderClass {
 
+
+        public String selectBillsListPage(Integer pageNo, Integer pageSize,  Map<String, String>  parameterMap){
+
+            StringBuilder sql = new StringBuilder();
+
+            sql.append("  SELECT * from (  \n" +
+                    " SELECT task.task_name,task.type,info.customer_no,info.user_no ,task.task_start_time,task.task_end_time,info.staff_no,a.c,info.check_state  from \n" +
+                    "(SELECT data_id,count(*) c from sms_lot_customer_data_log_bill 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 is not null \n" +
+                    "UNION all \n" +
+                    " SELECT task.task_name,task.type,info.customer_no,info.user_no ,task.task_start_time,task.task_end_time,info.staff_no,a.c,info.check_state  from \n" +
+                    "(SELECT data_id,count(*) c from sms_truck_customer_data_log_bill 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 is not null  \n" +
+                    "UNION all \n" +
+                    "SELECT task.task_name,task.type,info.customer_no,info.user_no ,task.task_start_time,task.task_end_time,info.staff_no,a.c,info.check_state  from \n" +
+                    "(SELECT data_id,count(*) c from sms_check_customer_data_log_bill 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 is not null  \n" +
+                    "UNION all \n" +
+                    "SELECT task.task_name,task.type,info.customer_no,info.user_no ,task.task_start_time,task.task_end_time,info.staff_no,a.c,info.check_state  from \n" +
+                    "(SELECT data_id,count(*) c from sms_check_customer_data_log_bill 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 is not null   ");
+
+            sql.append("  ) aa  ORDER BY aa.c DESC  LIMIT " + (pageNo - 1) * pageSize + "," + pageSize);
+
+            return sql.toString();
+        }
+        public String getTaskCount(   Map<String, String>  parameterMap){
+            StringBuilder sql = new StringBuilder();
+            sql.append(" SELECT sms_check_task.task_name,count(*)count  from sms_check_customer_info_become_due due  \n" +
+                    "LEFT JOIN sms_check_task on sms_check_task.id = due.task_id \n" +
+                    "LEFT JOIN sms_check_customer_info info on info.id = due.info_id where  1=1 and info.del_flag=0  ");
+            if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
+                sql.append(" and  info.create_time>='"+parameterMap.get("startDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("endDate")))  {
+                sql.append(" and  info.create_time<='"+parameterMap.get("endDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("taskType")))  {
+                sql.append(" and  sms_check_task.type ="+parameterMap.get("taskType")+"  ");
+            }
+            sql.append("  GROUP BY sms_check_task.task_name    ");
+            return sql.toString();
+        }
+
+        public String getTaskCountOrg(   Map<String, String>  parameterMap){
+            StringBuilder sql = new StringBuilder();
+            sql.append(" SELECT dep.depart_name,count(*) count  from sms_check_customer_info_become_due due   \n" +
+                    "  LEFT JOIN sms_check_task on sms_check_task.id = due.task_id \n" +
+                    "  LEFT JOIN sms_check_customer_info info on info.id = due.info_id\n" +
+                    "  LEFT JOIN sys_depart dep on dep.org_code=due.sys_org_code\n" +
+                    "  where  1=1 and info.del_flag=0  ");
+            if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
+                sql.append(" and  info.create_time>='"+parameterMap.get("startDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("endDate")))  {
+                sql.append(" and  info.create_time<='"+parameterMap.get("endDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("taskType")))  {
+                sql.append(" and  sms_check_task.type ="+parameterMap.get("taskType")+"  ");
+            }
+            sql.append(" GROUP BY dep.depart_name     ");
+            return sql.toString();
+        }
+        public String sql( Map<String, String>  parameterMap){
+            StringBuilder sql = new StringBuilder();
+            if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
+                sql.append(" and  info.create_time>='"+parameterMap.get("startDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("endDate")))  {
+                sql.append(" and  info.create_time<='"+parameterMap.get("endDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("taskType")))  {
+                sql.append(" and  info.type ="+parameterMap.get("taskType")+"  ");
+            }
+            return sql.toString();
+        }
+
+        public String getWarningFiled(   Map<String, String>  parameterMap){
+            StringBuilder sql = new StringBuilder();
+            sql.append("    SELECT count(*),'行短码号证书是否到期' from sms_check_customer_info_become_due due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id  \n" +
+                    " where    short_now_code_number_date_is =1 and info.del_flag=0    ");
+            sql.append(sql(parameterMap));
+
+
+            sql.append("   UNION all \n" +
+                    "SELECT count(*),'行短备案通知是否到期' from sms_check_customer_info_become_due due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id    \n" +
+                    " where   short_now_filings_data_is  =1  and info.del_flag=0   ");
+            sql.append(sql(parameterMap));
+
+
+            sql.append("  UNION all \n" +
+                    "SELECT count(*),'行短增值业务许可证是否到期' from sms_check_customer_info_become_due due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id    \n" +
+                    " where    short_now_permit_date_is  =1  and info.del_flag=0    ");
+            sql.append(sql(parameterMap));
+
+
+            sql.append("  UNION all \n" +
+                    " SELECT count(*),'行短合同是否到期' from sms_check_customer_info_become_due  due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id   \n" +
+                    " where    short_now_contract_date_is    =1  and info.del_flag=0  ");
+            sql.append(sql(parameterMap));
+
+
+            sql.append("    UNION all \n" +
+                    " SELECT count(*),'物联网合同是否到期' from sms_check_customer_info_become_due  due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id   \n" +
+                    " where    lot_contract_date_is    =1  and info.del_flag=0   ");
+            sql.append(sql(parameterMap));
+
+
+            sql.append("    UNION all \n" +
+                    " SELECT count(*),'中继线业务合同是否到期' from sms_check_customer_info_become_due due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id    \n" +
+                    " where    truck_contract_date_is   =1  and info.del_flag=0     ");
+            sql.append(sql(parameterMap));
+
+
+            sql.append("    UNION all \n" +
+                    " SELECT count(*),'中继线房屋租凭合同是否到期' from sms_check_customer_info_become_due due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id   \n" +
+                    "\twhere    truck_house_date_is  =1  and info.del_flag=0     ");
+            sql.append(sql(parameterMap));
+
+
+            sql.append("     UNION all \n" +
+                    "  SELECT count(*),'中继线增值业务许可证是否到期' from sms_check_customer_info_become_due due \n" +
+                    " LEFT JOIN sms_check_customer_info info  on due.info_id= info.id    \n" +
+                    " where    truck_added_license_date_is  =1  and info.del_flag=0  ");
+            sql.append(sql(parameterMap));
+
+            return sql.toString();
+        }
+
+
+        public String selectMapGroup(   Map<String, String>  parameterMap){
+            StringBuilder sql = new StringBuilder();
+            sql.append(" \t\t\tselect update_field,count(*) from (\n" +
+                    "      select  history.*  from sms_check_zg_history  history\n" +
+                    "      LEFT JOIN  sms_check_customer_info info  on info.data_id = history.data_id \n" +
+                    "\t\t\tLEFT JOIN  sms_check_task task    on task.id = info.task_id where  1=1  and info.del_flag=0 ");
+            if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
+                sql.append(" and  info.create_time>='"+parameterMap.get("startDate")+"'  ");
+            }
+
+             if (StringUtils.isNotBlank(parameterMap.get("endDate")))  {
+                 sql.append(" and  info.create_time<='"+parameterMap.get("endDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("taskType")))  {
+                sql.append(" and  task.type ="+parameterMap.get("taskType")+"  ");
+            }
+                sql.append(" ) a   GROUP BY a.update_field  HAVING a.update_field like '%资料%'   ");
+            return sql.toString();
+        }
+        public String selectMapGroupJb(   Map<String, String>  parameterMap){
+            StringBuilder sql = new StringBuilder();
+            sql.append(" \t\t\tselect update_field,count(*) from (\n" +
+                    "      select  history.*  from sms_check_zg_history  history\n" +
+                    "      LEFT JOIN  sms_check_customer_info info  on info.data_id = history.data_id \n" +
+                    "\t\t\tLEFT JOIN  sms_check_task task    on task.id = info.task_id where  1=1  and info.del_flag=0  ");
+            if (StringUtils.isNotBlank(parameterMap.get("startDate"))){
+                sql.append(" and  info.create_time>='"+parameterMap.get("startDate")+"'  ");
+            }
+
+            if (StringUtils.isNotBlank(parameterMap.get("endDate")))  {
+                sql.append(" and  info.create_time<='"+parameterMap.get("endDate")+"'  ");
+            }
+            if (StringUtils.isNotBlank(parameterMap.get("taskType")))  {
+                sql.append(" and  task.type ="+parameterMap.get("taskType")+"  ");
+            }
+            sql.append(" ) a   GROUP BY a.update_field  HAVING a.update_field not like '%资料%'   ");
+            return sql.toString();
+        }
+
+
+        public String selectHistoryListPage(Integer pageNo, Integer pageSize,  Map<String, String>  parameterMap){
+
+            StringBuilder sql = new StringBuilder();
+
+            sql.append("        \n" +
+                    "      select a.*,info.*,task.task_start_time,task_end_time,task.task_name from \n" +
+                    "      (\n" +
+                    "      select data_id,GROUP_CONCAT( update_field) filed from sms_check_zg_history   GROUP BY data_id \n" +
+                    "      ) 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 1=1 and info.del_flag =0" +
+                    " ");
+
+            sql.append(" ORDER BY info.create_time DESC  LIMIT " + (pageNo - 1) * pageSize + "," + pageSize);
+
+            return sql.toString();
+        }
+
+
         public String selectListPage(Integer pageNo, Integer pageSize, SmsCheckCustomerInfo smsCheckCustomerInfo,SysPermissionDataRuleModel sysPermissionDataRuleModel,  SysUser sysUser ){
 
 
@@ -268,7 +492,7 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
             StringBuilder sql = new StringBuilder();
             //取最新的  并合并某个字段
             sql.append("SELECT\n" +
-                    "\t`id`,t1. `address`,t1. `phone`,t1. `calltest_results`,t1. `id_card_address`,t1. `current_address`,\n" +
+                    "  `id`,t1. `address`,t1. `phone`,t1. `calltest_results`,t1. `id_card_address`,t1. `current_address`,\n" +
                     "         `operator`,t1. `operator_type`,t1. `operator_type_note`,t1. `use_life`,t1. `phone_purpose`,\n" +
                     "         `is_dx_number`,t1. `is_dx_number_note`,t1. `is_broadband`,t1. `is_broadband_note`,\n" +
                     "         `is_use_to`,t1. `is_use_to_note`,t1. `is_refund`,t1. `is_refund_note`,t1. `is_shut_down`,\n" +
@@ -282,15 +506,15 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
                     "         `status`,t1. `user_id`,t1. `direct_requirements`,t1. `pass_one`,t1. `non_conformance`,t1. `direct_requirements_node`,\n" +
                     "         `non_conformance_node`,t1. `pass_one_node`,t1. `age`,t1. `up_time`,t1. `current_dept` ,t3.new_phone\n" +
                     "FROM\n" +
-                    "\tas_business_reminder_card t1\n" +
-                    "\tINNER JOIN ( SELECT MAX( id ) AS min_id FROM as_business_reminder_card GROUP BY card_no,card_name ) t2 ON t1.id = t2.min_id\n" +
-                    "\tLEFT JOIN  (select card_no,card_name ,GROUP_CONCAT(new_phone) new_phone from as_business_reminder_card  GROUP BY card_no,card_name  )t3\n" +
-                    "  on t1.card_no=t3.card_no and t1.card_name =t3.card_name \t");
+                    "  as_business_reminder_card t1\n" +
+                    "  INNER JOIN ( SELECT MAX( id ) AS min_id FROM as_business_reminder_card GROUP BY card_no,card_name ) t2 ON t1.id = t2.min_id\n" +
+                    "  LEFT JOIN  (select card_no,card_name ,GROUP_CONCAT(new_phone) new_phone from as_business_reminder_card  GROUP BY card_no,card_name  )t3\n" +
+                    "  on t1.card_no=t3.card_no and t1.card_name =t3.card_name   ");
             //分组合并
-//            sql.append(" \tSELECT\n" +
-//                    "\tcard_no, card_name  ,GROUP_CONCAT(new_phone) new_phone\n" +
+//            sql.append("   SELECT\n" +
+//                    "  card_no, card_name  ,GROUP_CONCAT(new_phone) new_phone\n" +
 //                    "FROM\n" +
-//                    "\tas_business_reminder_card t1   GROUP BY card_no ,card_name ");
+//                    "  as_business_reminder_card t1   GROUP BY card_no ,card_name ");
             String cardNo = businessReminderCard.getCardNo();
             String cardName = businessReminderCard.getCardName();
             if (!StringUtils.isEmpty(cardNo)) {

+ 13 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/ISmsCheckCustomerInfoService.java

@@ -8,6 +8,7 @@ import org.jeecg.modules.smscheck.vo.SmsCheckCustomerInfoTaskVo;
 import org.jeecg.modules.smscheck.vo.SmsCheckTaskVo;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @description 客户信息
@@ -37,5 +38,17 @@ public interface ISmsCheckCustomerInfoService extends IService<SmsCheckCustomerI
 
     List<SmsCheckCustomerInfoBecomeDueAndInfo> selectCompanyListPage(Integer pageNo, Integer pageSize, SmsCheckCustomerInfo smsCheckCustomerInfo, SysPermissionDataRuleModel sysPermissionDataRuleModel, String username);
 
+    List<Map<String,String>> selectHistoryListPage(Integer pageNo, Integer pageSize,  Map<String, String>  parameterMap );
 
+    List<Map<String,String>> selectBillsListPage(Integer pageNo, Integer pageSize,  Map<String, String>  parameterMap );
+
+    Map<Object,Object>  getTaskCount(  Map<String, String>  parameterMap);
+
+    Map<Object,Object>  getWarningCount(  Map<String, String>  parameterMap);
+
+    Map<Object,Object>  getWarningCountOrg(  Map<String, String>  parameterMap);
+
+    List<Map<String, Integer>>  selectMapGroup(  Map<String, String>  parameterMap);
+
+    List<Map<String, Integer>>  selectMapGroupJb(  Map<String, String>  parameterMap);
 }

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

@@ -1,6 +1,7 @@
 package org.jeecg.modules.smscheck.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import org.checkerframework.checker.units.qual.A;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.vo.SysDepartModel;
@@ -15,7 +16,9 @@ import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @description 客户信息
@@ -73,6 +76,132 @@ public class SmsCheckCustomerInfoServiceImpl extends ServiceImpl<SmsCheckCustome
         return smsCustomerInfoGroupByCheckStates;
     }
 
+    @Override
+    public List<Map<String, String>> selectHistoryListPage(Integer pageNo, Integer pageSize, Map<String, String>  parameterMap) {
+        List<Map<String, String>> smsCustomerInfoGroupByCheckStates = smsCheckCustomerInfoMapper.selectHistoryListPage(pageNo, pageSize, parameterMap);
+
+        return smsCustomerInfoGroupByCheckStates;
+    }
+    @Override
+    public List<Map<String, String>> selectBillsListPage(Integer pageNo, Integer pageSize, Map<String, String>  parameterMap) {
+        List<Map<String, String>> smsCustomerInfoGroupByCheckStates = smsCheckCustomerInfoMapper.selectBillsListPage(pageNo, pageSize, parameterMap);
+
+        return smsCustomerInfoGroupByCheckStates;
+    }
+
+    @Override
+    public  List<Map<String, Integer>>  selectMapGroup(  Map<String, String>  parameterMap) {
+        return smsCheckCustomerInfoMapper.selectMapGroup( parameterMap);
+
+    }
+
+    public  Map<Object,Object>   getTaskCount ( Map<String, String>  parameterMap) {
+
+        List<Map<String, Integer>> maps = smsCheckCustomerInfoMapper.getTaskCount(parameterMap);
+
+        Map<Object,Object> hashMap =new HashMap<>();
+
+        StringBuilder all = new StringBuilder();
+        for (Map<String, Integer> map : maps) {
+            hashMap.put( map.get("task_name"),map.get("count"));
+            all.append( "-"+map.get("count"));
+        }
+        String[] split = all.toString().split("-");
+        int c=0;
+        for (String s : split) {
+            if (StringUtils.isNotBlank(s)){
+                c+=Integer.parseInt(s);
+            }
+        }
+        hashMap.put("all",c);
+
+        return hashMap;
+
+    }
+
+    @Override
+    public Map<Object, Object> getWarningCountOrg(Map<String, String> parameterMap) {
+
+        List<Map<String, Integer>> maps = smsCheckCustomerInfoMapper.getTaskCountOrg( parameterMap);
+
+        Map<Object,Object> hashMap =new HashMap<>();
+
+        StringBuilder all = new StringBuilder();
+        for (Map<String, Integer> map : maps) {
+            hashMap.put( map.get("depart_name"),map.get("count"));
+            all.append( "-"+map.get("count"));
+        }
+        String[] split = all.toString().split("-");
+        int c=0;
+        for (String s : split) {
+            if (StringUtils.isNotBlank(s)){
+                c+=Integer.parseInt(s);
+            }
+        }
+        hashMap.put("all",  c);
+
+        return hashMap;
+    }
+
+    @Override
+    public Map<Object, Object> getWarningCount(Map<String, String> parameterMap) {
+        List<Map<String, Integer>> maps = smsCheckCustomerInfoMapper.getWarningFiled( parameterMap);
+
+        Map<Object,Object> hashMap =new HashMap<>();
+
+        StringBuilder all = new StringBuilder();
+        for (Map<String, Integer> map : maps) {
+            if ( map.get("行短码号证书是否到期")!=null){
+                hashMap.put( map.get("行短码号证书是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+            if ( map.get("行短备案通知是否到期")!=null){
+                hashMap.put( map.get("行短备案通知是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+            if ( map.get("行短增值业务许可证是否到期")!=null){
+                hashMap.put( map.get("行短增值业务许可证是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+            if ( map.get("行短合同是否到期")!=null){
+                hashMap.put( map.get("行短合同是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+            if ( map.get("物联网合同是否到期")!=null){
+                hashMap.put( map.get("物联网合同是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+            if ( map.get("中继线业务合同是否到期")!=null){
+                hashMap.put( map.get("中继线业务合同是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+            if ( map.get("中继线房屋租凭合同是否到期")!=null){
+                hashMap.put( map.get("中继线房屋租凭合同是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+            if ( map.get("中继线增值业务许可证是否到期")!=null){
+                hashMap.put( map.get("中继线增值业务许可证是否到期"),map.get("count(*)"));
+                all.append( "-"+map.get("count(*)"));
+            }
+        }
+        String[] split = all.toString().split("-");
+        int c=0;
+        for (String s : split) {
+            if (StringUtils.isNotBlank(s)){
+                c+=Integer.parseInt(s);
+            }
+        }
+        hashMap.put("all",c);
+
+
+        return hashMap;
+    }
+
+    @Override
+    public List<Map<String, Integer>> selectMapGroupJb(Map<String, String> parameterMap) {
+        return smsCheckCustomerInfoMapper.selectMapGroupJb( parameterMap);
+    }
+
     @Override
     public List<SmsCheckCustomerInfo> selectCompanyList(SmsCheckCustomerInfo smsCheckCustomerInfo) {
         return smsCheckCustomerInfoMapper.selectCompanyList(smsCheckCustomerInfo);