Переглянути джерело

1.稽核工作报表相关

liuhy 3 роки тому
батько
коміт
9044677f76
17 змінених файлів з 453 додано та 32 видалено
  1. 14 1
      tnc-base/tnc-base-core/src/main/java/org/jeecg/common/api/vo/Result.java
  2. 14 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckCustomerInfoController.java
  3. 20 4
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckTaskController.java
  4. 75 3
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckWorkLogController.java
  5. 13 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsCustomerInfoGroupByCheckState.java
  6. 17 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/currency/AbnormalAudit.java
  7. 10 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/currency/DataYearMonth.java
  8. 23 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/DataYearMonthMapper.java
  9. 51 24
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckCustomerInfoMapper.java
  10. 126 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckWorkLogMapper.java
  11. 12 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/DataYearMonthService.java
  12. 3 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/ISmsCheckCustomerInfoService.java
  13. 14 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/ISmsCheckWorkLogService.java
  14. 25 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/DataYearMonthImpl.java
  15. 3 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmsCheckCustomerInfoLogServiceImpl.java
  16. 6 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmsCheckCustomerInfoServiceImpl.java
  17. 27 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmsCheckWorkLogServiceImpl.java

+ 14 - 1
tnc-base/tnc-base-core/src/main/java/org/jeecg/common/api/vo/Result.java

@@ -7,6 +7,7 @@ import lombok.Data;
 import org.jeecg.common.constant.CommonConstant;
 
 import java.io.Serializable;
+import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -69,7 +70,8 @@ public class Result<T> implements Serializable {
 		this.code = code;
 		this.message = message;
 	}
-	
+
+
 	public Result<T> success(String message) {
 		this.message = message;
 		this.code = CommonConstant.SC_OK_200;
@@ -109,6 +111,8 @@ public class Result<T> implements Serializable {
 		return r;
 	}
 
+
+
 	public static<T> Result<T> object(Object data) {
 		Result<T> r = new Result<T>();
 		r.setSuccess(true);
@@ -117,6 +121,15 @@ public class Result<T> implements Serializable {
 		return r;
 	}
 
+	public static<T> Result<T> ok(List[] data) {
+		Result<T> r = new Result<T>();
+		r.setSuccess(true);
+		r.setCode(CommonConstant.SC_OK_200);
+		r.setResultList(Arrays.asList(data));
+		return r;
+	}
+
+
 	public static<T> Result<T> OK() {
 		Result<T> r = new Result<T>();
 		r.setSuccess(true);

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

@@ -497,4 +497,18 @@ public class SmsCheckCustomerInfoController extends JeecgController<SmsCheckCust
         }
         return set;
     }
+
+
+    @GetMapping(value = "/status/refuse")
+    public  Result<?> groupCheckState(@RequestParam Map<String, String> parameterMap) {
+        String startDate = parameterMap.get("startDate");
+        String endDate = parameterMap.get("endDate");
+        String taskId = parameterMap.get("taskId");
+        try {
+            List<SmsCustomerInfoGroupByCheckState> smsCustomerInfoGroupByCheckStates = customerInfoService.groupCheckState(startDate, endDate,taskId);
+            return Result.ok(smsCustomerInfoGroupByCheckStates);
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
  }

+ 20 - 4
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckTaskController.java

@@ -24,9 +24,10 @@ import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.vo.DictModel;
 import org.jeecg.common.system.vo.LoginUser;
-import org.jeecg.common.system.vo.SysUserCacheInfo;
 import org.jeecg.modules.smscheck.entity.*;
+import org.jeecg.modules.smscheck.entity.currency.DataYearMonth;
 import org.jeecg.modules.smscheck.service.*;
+import org.jeecg.modules.smscheck.service.impl.DataYearMonthImpl;
 import org.jeecg.modules.smscheck.vo.SmsCheckCustomerInfoVo;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.entity.ImportParams;
@@ -66,6 +67,9 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
 
 	@Autowired
 	private ISysUserService sysUserService;
+
+	@Autowired
+	private DataYearMonthImpl dataYearMonth;
 	 /**
 	  * 分页列表查询
 	  *
@@ -121,7 +125,7 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
 		taskService.updateById(smsCheckTask);
 		return Result.OK("编辑成功!");
 	}
-	
+
 	 /**
 	  * 通过id删除
 	  *
@@ -135,7 +139,7 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
 		taskService.removeById(id);
 		return Result.OK("删除成功!");
 	}
-	
+
 	 /**
 	  * 批量删除
 	  *
@@ -149,7 +153,7 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
 		this.taskService.removeByIds(Arrays.asList(ids.split(",")));
 		return Result.OK("批量删除成功!");
 	}
-	
+
 	 /**
 	  * 通过id查询
 	  *
@@ -388,4 +392,16 @@ public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCh
 		 return dataList;
 	 }
 
+
+	 @GetMapping(value = "/year/list")
+	 public Result<List[]> yearList() {
+		 List<DataYearMonth> taskYearList = dataYearMonth.getTaskYearList();
+		 List<DataYearMonth> taskMonthList = dataYearMonth.getTaskMonthList();
+		 List[] Dates = new List[2];
+		 Dates[0] = taskYearList;
+		 Dates[1] = taskMonthList;
+		 return Result.OK(Dates);
+	 }
+
+
  }

+ 75 - 3
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckWorkLogController.java

@@ -15,6 +15,8 @@ import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.modules.smscheck.entity.SmsCheckWorkLog;
+import org.jeecg.modules.smscheck.entity.SpecialExamination;
+import org.jeecg.modules.smscheck.entity.currency.AbnormalAudit;
 import org.jeecg.modules.smscheck.service.ISmsCheckWorkLogService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -91,7 +93,7 @@ public class SmsCheckWorkLogController extends JeecgController<SmsCheckWorkLog,
 		smsCheckWorkLogService.updateById(smsCheckWorkLog);
 		return Result.OK("编辑成功!");
 	}
-	
+
 	 /**
 	  * 通过id删除
 	  *
@@ -105,7 +107,7 @@ public class SmsCheckWorkLogController extends JeecgController<SmsCheckWorkLog,
 		smsCheckWorkLogService.removeById(id);
 		return Result.OK("删除成功!");
 	}
-	
+
 	 /**
 	  * 批量删除
 	  *
@@ -119,7 +121,7 @@ public class SmsCheckWorkLogController extends JeecgController<SmsCheckWorkLog,
 		this.smsCheckWorkLogService.removeByIds(Arrays.asList(ids.split(",")));
 		return Result.OK("批量删除成功!");
 	}
-	
+
 	 /**
 	  * 通过id查询
 	  *
@@ -172,4 +174,74 @@ public class SmsCheckWorkLogController extends JeecgController<SmsCheckWorkLog,
 		List<SmsCheckWorkLog> checkState = smsCheckWorkLogService.checkState(parameterMap);
 		return Result.ok(checkState);
 	}
+
+	@GetMapping(value = "/check/state/count")
+	public Result<List<AbnormalAudit>> basicCheckStateCount(@RequestParam Map<String, String> parameterMap){
+		String startDate = parameterMap.get("startDate");
+		String endDate = parameterMap.get("endDate");
+		String infoId = parameterMap.get("infoId");
+
+		List<AbnormalAudit> abnormalAudits = smsCheckWorkLogService.basicCheckStateCount(startDate, endDate, infoId);
+		for (AbnormalAudit basicCheck : abnormalAudits){
+			basicCheck.setName("basicCheckState");
+		}
+
+		List<AbnormalAudit> standardAudits = smsCheckWorkLogService.standardCheckStateCount(startDate, endDate, infoId);
+		for (AbnormalAudit standardCheck: standardAudits){
+			standardCheck.setName("standardState");
+			abnormalAudits.add(standardCheck);
+		}
+
+		List<AbnormalAudit> dataAudits = smsCheckWorkLogService.dataCheckStateCount(startDate, endDate, infoId);
+		for ( AbnormalAudit dataCheck: dataAudits){
+			dataCheck.setName("dataState");
+			abnormalAudits.add(dataCheck);
+		}
+		return Result.ok(abnormalAudits);
+	}
+
+	//废弃
+	@GetMapping(value = "/standard/check/state/count")
+	public Result<List<AbnormalAudit>> standardCheckStateCount(@RequestParam Map<String, String> parameterMap){
+		String startDate = parameterMap.get("startDate");
+		String endDate = parameterMap.get("endDate");
+		String infoId = parameterMap.get("infoId");
+		List<AbnormalAudit> abnormalAudits = smsCheckWorkLogService.standardCheckStateCount(startDate, endDate, infoId);
+		return Result.ok(abnormalAudits);
+	}
+	//废弃
+	@GetMapping(value = "/data/check/state/count")
+	public Result<List<AbnormalAudit>> dataCheckStateCount(@RequestParam Map<String, String> parameterMap){
+		String startDate = parameterMap.get("startDate");
+		String endDate = parameterMap.get("endDate");
+		String infoId = parameterMap.get("infoId");
+		List<AbnormalAudit> abnormalAudits = smsCheckWorkLogService.dataCheckStateCount(startDate, endDate, infoId);
+		return Result.ok(abnormalAudits);
+	}
+
+
+	@GetMapping(value = "/check/abnormal/count")
+	public Result<List<AbnormalAudit>> abnormalCreateCount(@RequestParam Map<String, String> parameterMap){
+		String startDate = parameterMap.get("startDate");
+		String endDate = parameterMap.get("endDate");
+			String infoId = parameterMap.get("infoId");
+		List<AbnormalAudit> abnormalAudits = smsCheckWorkLogService.abnormalCreateCount(startDate, endDate, infoId);
+		return Result.ok(abnormalAudits);
+	}
+
+
+	@GetMapping(value = "/find/staff/no/count")
+	public Result<List<AbnormalAudit>> findStaffNoCount(@RequestParam Map<String, String> parameterMap){
+		String startDate = parameterMap.get("startDate");
+		String endDate = parameterMap.get("endDate");
+		String infoId = parameterMap.get("infoId");
+		List<AbnormalAudit> abnormalAudits = smsCheckWorkLogService.findStaffNoCount(startDate, endDate, infoId);
+		return Result.ok(abnormalAudits);
+	}
+
+
+
+
+
+
 }

+ 13 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsCustomerInfoGroupByCheckState.java

@@ -0,0 +1,13 @@
+package org.jeecg.modules.smscheck.entity;
+
+import lombok.Data;
+
+@Data
+public class SmsCustomerInfoGroupByCheckState {
+
+    private Integer count;
+
+    private Integer checkState;
+
+
+}

+ 17 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/currency/AbnormalAudit.java

@@ -0,0 +1,17 @@
+package org.jeecg.modules.smscheck.entity.currency;
+
+import lombok.Data;
+
+@Data
+public class AbnormalAudit {
+    //异常名称
+    private String name;
+    //状态
+    private String state;
+    //数量
+    private String count;
+    //编码
+    private String staffNo;
+    //日期
+    private String createTime;
+}

+ 10 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/currency/DataYearMonth.java

@@ -0,0 +1,10 @@
+package org.jeecg.modules.smscheck.entity.currency;
+
+import lombok.Data;
+
+@Data
+public class DataYearMonth {
+    String yearTime;
+    String monthTime;
+
+}

+ 23 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/DataYearMonthMapper.java

@@ -0,0 +1,23 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+import org.jeecg.modules.smscheck.entity.currency.DataYearMonth;
+
+import java.util.List;
+
+@Mapper
+public interface DataYearMonthMapper {
+
+    @Select("SELECT DATE_FORMAT( task_start_time, '%Y' ) yearTime " +
+            "FROM sms_check_task " +
+            "GROUP BY yearTime " +
+            "ORDER BY yearTime DESC" )
+    List<DataYearMonth> getTaskYearList();
+    @Select("SELECT DATE_FORMAT( task_start_time, '%Y-%m' ) monthTime " +
+            "FROM sms_check_task " +
+            "GROUP BY monthTime " +
+            "ORDER BY monthTime DESC" )
+    List<DataYearMonth> getTaskMonthList();
+
+}

+ 51 - 24
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckCustomerInfoMapper.java

@@ -4,59 +4,86 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import org.apache.ibatis.annotations.SelectProvider;
 import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.SmsCustomerInfoGroupByCheckState;
 import org.jeecg.modules.smscheck.vo.SmsCheckCustomerInfoTaskVo;
 import org.jeecg.modules.smscheck.vo.SmsCheckTaskVo;
 
 import java.util.List;
 
 /**
- * @description 客户信息
  * @author jeecg-boot
- * @date 2022-06-22
  * @version V1.0
+ * @description 客户信息
+ * @date 2022-06-22
  */
 public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerInfo> {
 
-    @SelectProvider(type = ProviderClass.class,method = "selectCompanyList")
+    @SelectProvider(type = ProviderClass.class, method = "selectCompanyList")
     List<SmsCheckCustomerInfo> selectCompanyList(SmsCheckCustomerInfo smsCheckCustomerInfo);
 
-    @SelectProvider(type = ProviderClass.class,method = "checkInfoWarningCount")
+    @SelectProvider(type = ProviderClass.class, method = "checkInfoWarningCount")
     Integer checkInfoWarningCount(SmsCheckCustomerInfo smsCheckCustomerInfo);
 
-    @SelectProvider(type = ProviderClass.class,method = "checkInfoWarningCountTime")
+    @SelectProvider(type = ProviderClass.class, method = "checkInfoWarningCountTime")
     List<SmsCheckTaskVo> checkInfoWarningCountTime(SmsCheckCustomerInfo smsCheckCustomerInfo);
 
-    @SelectProvider(type = ProviderClass.class,method = "checkInfoWarningCountStaff")
+    @SelectProvider(type = ProviderClass.class, method = "checkInfoWarningCountStaff")
     List<SmsCheckTaskVo> checkInfoWarningCountStaff(SmsCheckCustomerInfo smsCheckCustomerInfo);
 
-    @SelectProvider(type = ProviderClass.class,method = "checkInfoWarningCountStaff")
+    @SelectProvider(type = ProviderClass.class, method = "checkInfoWarningCountStaff")
     List<SmsCheckCustomerInfoTaskVo> checkInfoWarningPageList(Integer pageNo, Integer pageSize);
 
-    class ProviderClass{
-        public String checkInfoWarningCount(SmsCheckCustomerInfo smsCheckCustomerInfo){
+    @SelectProvider(type = ProviderClass.class, method = "groupCheckState")
+    List<SmsCustomerInfoGroupByCheckState> groupCheckState(String startDate, String endDate,String taskId);
+
+    class ProviderClass {
+
+        public String groupCheckState(String startDate, String endDate, String taskId) {
+            StringBuilder sql = new StringBuilder();
+
+            sql.append("SELECT COUNT(id) as count ,check_state as checkState " +
+                    "from sms_check_customer_info ");
+
+            if (StringUtils.isNotBlank(startDate) && StringUtils.isNotBlank(endDate)){
+                sql.append(" WHERE create_time >= '" + startDate + "'");
+                sql.append(" and create_time <= '" + endDate + "'");
+
+            }
+
+            if (StringUtils.isNotBlank(taskId)){
+                sql.append(" and task_id = '" + taskId + "'");
+            }
+
+            sql.append(" GROUP BY check_state ");
+
+            return sql.toString();
+        }
+
+
+        public String checkInfoWarningCount(SmsCheckCustomerInfo smsCheckCustomerInfo) {
             StringBuilder sql = new StringBuilder();
             sql.append("SELECT COUNT(1) " +
                     "FROM sms_check_customer_info scci " +
                     "LEFT JOIN sms_check_task sct ON sct.id = scci.task_id");
             sql.append(" where NOW() > sct.task_end_time");
-            if(StringUtils.isNotBlank(smsCheckCustomerInfo.getStaffNo())){
+            if (StringUtils.isNotBlank(smsCheckCustomerInfo.getStaffNo())) {
                 sql.append(" AND scci.staff_no = '" + smsCheckCustomerInfo.getStaffNo() + "'");
             }
-            if (smsCheckCustomerInfo.getCheckState() != null){
+            if (smsCheckCustomerInfo.getCheckState() != null) {
                 sql.append(" AND scci.check_state = " + smsCheckCustomerInfo.getCheckState());
             }
             return sql.toString();
 
         }
 
-        public String checkInfoWarningCountTime(SmsCheckCustomerInfo smsCheckCustomerInfo){
+        public String checkInfoWarningCountTime(SmsCheckCustomerInfo smsCheckCustomerInfo) {
             StringBuilder sql = new StringBuilder();
             sql.append("SELECT COUNT(1) count,DATE_FORMAT( sct.task_end_time, '%Y%m%d' ) date");
             sql.append(" FROM sms_check_customer_info scci");
             sql.append(" LEFT JOIN sms_check_task sct ON sct.id = scci.task_id");
             sql.append(" WHERE NOW() > sct.task_end_time");
             sql.append(" AND scci.check_state IN (0,1,4)");
-            if(StringUtils.isNotBlank(smsCheckCustomerInfo.getStaffNo())){
+            if (StringUtils.isNotBlank(smsCheckCustomerInfo.getStaffNo())) {
                 sql.append(" AND scci.staff_no = '" + smsCheckCustomerInfo.getStaffNo() + "'");
             }
             sql.append(" GROUP BY sct.task_end_time");
@@ -65,7 +92,7 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
             return sql.toString();
         }
 
-        public String checkInfoWarningCountStaff(SmsCheckCustomerInfo smsCheckCustomerInfo){
+        public String checkInfoWarningCountStaff(SmsCheckCustomerInfo smsCheckCustomerInfo) {
             StringBuilder sql = new StringBuilder();
             sql.append(" SELECT COUNT(1) count,scci.staff_info staffInfo");
             sql.append(" FROM sms_check_customer_info scci");
@@ -76,7 +103,7 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
             return sql.toString();
         }
 
-        private String checkInfoWarningCountStaff(Integer pageNo, Integer pageSize){
+        private String checkInfoWarningCountStaff(Integer pageNo, Integer pageSize) {
             StringBuilder sql = new StringBuilder();
             sql.append("SELECT sct.task_name taskName,sct.task_end_time taskEndTime," +
                     "scci.customer_no customerNo,scci.customer_name customerName," +
@@ -85,27 +112,27 @@ public interface SmsCheckCustomerInfoMapper extends BaseMapper<SmsCheckCustomerI
             sql.append(" LEFT JOIN sms_check_task sct ON sct.id=scci.task_id ");
             sql.append(" WHERE NOW()> sct.task_end_time");
             sql.append(" AND scci.check_state IN (0,1,4)");
-            sql.append(" LIMIT "+ (pageNo-1)*pageSize + ","+pageSize);
+            sql.append(" LIMIT " + (pageNo - 1) * pageSize + "," + pageSize);
             return sql.toString();
 
         }
 
-        public String selectCompanyList(SmsCheckCustomerInfo smsCheckCustomerInfo){
+        public String selectCompanyList(SmsCheckCustomerInfo smsCheckCustomerInfo) {
             StringBuilder sql = new StringBuilder();
             sql.append("SELECT any_value(id) id, any_value(customer_no) customer_no,`customer_name`,any_value(account_manager) account_manager,any_value(account_manager_phone) account_manager_phone,any_value(network_access_time) network_access_time  FROM `sms_check_customer_info`");
             String customerNo = smsCheckCustomerInfo.getCustomerNo();
             String customerName = smsCheckCustomerInfo.getCustomerName();
-            if (!StringUtils.isEmpty(customerNo)){
+            if (!StringUtils.isEmpty(customerNo)) {
                 String customerNoNow = customerNo.replace("*", "%");
-                sql.append(" WHERE `customer_no` like '"+customerNoNow+"'");
-                if (!StringUtils.isEmpty(customerName)){
+                sql.append(" WHERE `customer_no` like '" + customerNoNow + "'");
+                if (!StringUtils.isEmpty(customerName)) {
                     String customerNameNow = customerName.replace("*", "%");
-                    sql.append(" AND `customer_name` like '"+customerNameNow+"'");
+                    sql.append(" AND `customer_name` like '" + customerNameNow + "'");
                 }
-            }else{
-                if (!StringUtils.isEmpty(customerName)){
+            } else {
+                if (!StringUtils.isEmpty(customerName)) {
                     String customerNameNow = customerName.replace("*", "%");
-                    sql.append(" WHERE `customer_name` like '"+customerNameNow+"'");
+                    sql.append(" WHERE `customer_name` like '" + customerNameNow + "'");
                 }
             }
             sql.append(" GROUP BY `customer_name`");

+ 126 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckWorkLogMapper.java

@@ -2,9 +2,11 @@ package org.jeecg.modules.smscheck.mapper;
 
 import com.alibaba.druid.util.StringUtils;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import io.netty.util.internal.StringUtil;
 import org.apache.ibatis.annotations.Select;
 import org.apache.ibatis.annotations.SelectProvider;
 import org.jeecg.modules.smscheck.entity.SmsCheckWorkLog;
+import org.jeecg.modules.smscheck.entity.currency.AbnormalAudit;
 
 import java.util.List;
 import java.util.Map;
@@ -28,7 +30,131 @@ public interface SmsCheckWorkLogMapper extends BaseMapper<SmsCheckWorkLog> {
 
 
 
+
+    @SelectProvider(type = SmsCheckWorkLogProvider.class,method = "basicCheckStateCount")
+    List<AbnormalAudit> basicCheckStateCount(String startDate, String endDate, String infoId);
+
+    @SelectProvider(type = SmsCheckWorkLogProvider.class,method = "standardCheckStateCount")
+    List<AbnormalAudit> standardCheckStateCount(String startDate, String endDate, String infoId);
+
+    @SelectProvider(type = SmsCheckWorkLogProvider.class,method = "dataCheckStateCount")
+    List<AbnormalAudit> dataCheckStateCount(String startDate, String endDate, String infoId);
+
+    @SelectProvider(type = SmsCheckWorkLogProvider.class,method = "abnormalCreateCount")
+    List<AbnormalAudit> abnormalCreateCount(String startDate, String endDate, String infoId);
+
+
+    @SelectProvider(type = SmsCheckWorkLogProvider.class,method = "findStaffNoCount")
+    List<AbnormalAudit> findStaffNoCount(String startDate, String endDate, String infoId);
+
+
+
+
+
     class SmsCheckWorkLogProvider{
+
+
+        public String findStaffNoCount(String startDate, String endDate, String infoId){
+            StringBuilder sql = new StringBuilder();
+            sql.append("SELECT COUNT( staff_no ) as count,staff_no as staffNo,staff_name as name ");
+            sql.append(" FROM sms_check_customer_info ");
+            sql.append(" WHERE  (check_state = 0 or check_state = 4) ");
+            if (!StringUtils.isEmpty(startDate)){
+                sql.append(" AND create_time >= '"+startDate+"' ");
+            }
+            if (!StringUtils.isEmpty(endDate)){
+                sql.append(" AND create_time <='" + endDate+"' ");
+            }
+            if (!StringUtils.isEmpty(infoId)){
+                sql.append(" AND id = '" + infoId + "' ");
+            }
+            sql.append(" GROUP BY staff_no,staff_name ORDER BY count desc ");
+
+            return sql.toString();
+        };
+
+
+        public String abnormalCreateCount(String startDate, String endDate, String infoId){
+            StringBuilder sql = new StringBuilder();
+            sql.append("SELECT DATE_FORMAT( create_time, '%Y-%m-%d' )  as createTime,COUNT( id ) as count ");
+            sql.append(" FROM sms_check_work_log ");
+            sql.append(" WHERE (basic_check_state = 1 or standard_check_state = 1 or data_check_state = 1)  ");
+            if (!StringUtils.isEmpty(startDate)){
+                sql.append(" AND create_time >= '"+startDate+"' ");
+            }
+            if (!StringUtils.isEmpty(endDate)){
+                sql.append(" AND create_time <='" + endDate+"' ");
+            }
+            if (!StringUtils.isEmpty(infoId)){
+                sql.append(" AND info_id = '" + infoId + "' ");
+            }
+            sql.append(" GROUP BY create_time");
+            sql.append(" ORDER BY create_time asc");
+            return sql.toString();
+        };
+
+
+        public String basicCheckStateCount(String startDate, String endDate, String infoId){
+            StringBuilder sql = new StringBuilder();
+            sql.append("SELECT scwl.basic_check_state as state, COUNT(scwl.basic_check_state) as count ");
+            sql.append(" FROM sms_check_customer_info scci ");
+            sql.append(" LEFT JOIN sms_check_work_log scwl ON scci.id = scwl.info_id ");
+            sql.append(" WHERE scwl.basic_check_state is not NULL ");
+            if (!StringUtils.isEmpty(startDate)){
+                sql.append(" AND scci.create_time >= '"+startDate+"' ");
+            }
+            if (!StringUtils.isEmpty(endDate)){
+                sql.append(" AND scci.create_time <='" + endDate+"' ");
+            }
+
+            if (!StringUtils.isEmpty(infoId)){
+                sql.append(" AND scwl.info_id = '" + infoId + "' ");
+            }
+            sql.append(" GROUP BY state");
+            return sql.toString();
+        };
+
+        public String standardCheckStateCount(String startDate, String endDate, String infoId){
+            StringBuilder sql = new StringBuilder();
+            sql.append("SELECT scwl.standard_check_state as state, COUNT(scwl.standard_check_state) as count ");
+            sql.append(" FROM sms_check_customer_info scci ");
+            sql.append(" LEFT JOIN sms_check_work_log scwl ON scci.id = scwl.info_id ");
+            sql.append(" WHERE scwl.standard_check_state is not NULL ");
+            if (!StringUtils.isEmpty(startDate)){
+                sql.append(" AND scci.create_time >= '"+startDate+"' ");
+            }
+            if (!StringUtils.isEmpty(endDate)){
+                sql.append(" AND scci.create_time <='" + endDate+"' ");
+            }
+            if (!StringUtils.isEmpty(infoId)){
+                sql.append(" AND scwl.info_id = '" + infoId + "' ");
+            }
+            sql.append(" GROUP BY state");
+            return sql.toString();
+        };
+
+        public String dataCheckStateCount(String startDate, String endDate, String infoId){
+            StringBuilder sql = new StringBuilder();
+            sql.append("SELECT scwl.data_check_state as state, COUNT(scwl.data_check_state) as count ");
+            sql.append(" FROM sms_check_customer_info scci ");
+            sql.append(" LEFT JOIN sms_check_work_log scwl ON scci.id = scwl.info_id ");
+            sql.append(" WHERE scwl.data_check_state is not NULL ");
+            if (!StringUtils.isEmpty(startDate)){
+                sql.append(" AND scci.create_time >= '"+startDate+"' ");
+            }
+            if (!StringUtils.isEmpty(endDate)){
+                sql.append(" AND scci.create_time <='" + endDate+"' ");
+            }
+            if (!StringUtils.isEmpty(infoId)){
+                sql.append(" AND scwl.info_id = '" + infoId + "' ");
+            }
+            sql.append(" GROUP BY state");
+            return sql.toString();
+        };
+
+
+
+
         public String basicCheckState(Map<String, String> parameterMap){
             StringBuilder sql = new StringBuilder();
             String basicCheckState = parameterMap.get("basicCheckState");

+ 12 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/DataYearMonthService.java

@@ -0,0 +1,12 @@
+package org.jeecg.modules.smscheck.service;
+
+import org.jeecg.modules.smscheck.entity.currency.DataYearMonth;
+
+import java.util.List;
+
+public interface DataYearMonthService {
+
+    List<DataYearMonth> getTaskYearList();
+
+    List<DataYearMonth> getTaskMonthList();
+}

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

@@ -2,6 +2,7 @@ package org.jeecg.modules.smscheck.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.SmsCustomerInfoGroupByCheckState;
 import org.jeecg.modules.smscheck.vo.SmsCheckCustomerInfoTaskVo;
 import org.jeecg.modules.smscheck.vo.SmsCheckTaskVo;
 
@@ -24,4 +25,6 @@ public interface ISmsCheckCustomerInfoService extends IService<SmsCheckCustomerI
     List<SmsCheckTaskVo> checkInfoWarningCountStaff(SmsCheckCustomerInfo smsCheckCustomerInfo);
 
     List<SmsCheckCustomerInfoTaskVo> checkInfoWarningPageList(Integer pageNo, Integer pageSize);
+
+    List<SmsCustomerInfoGroupByCheckState> groupCheckState(String startDate, String endDate,String taskId);
 }

+ 14 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/ISmsCheckWorkLogService.java

@@ -2,6 +2,7 @@ package org.jeecg.modules.smscheck.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.smscheck.entity.SmsCheckWorkLog;
+import org.jeecg.modules.smscheck.entity.currency.AbnormalAudit;
 
 import java.util.List;
 import java.util.Map;
@@ -15,4 +16,17 @@ import java.util.Map;
 public interface ISmsCheckWorkLogService extends IService<SmsCheckWorkLog> {
 
     List<SmsCheckWorkLog> checkState(Map<String, String> parameterMap);
+
+
+
+    List<AbnormalAudit> basicCheckStateCount(String startDate, String endDate, String infoId);
+
+    List<AbnormalAudit> standardCheckStateCount(String startDate, String endDate, String infoId);
+
+    List<AbnormalAudit> dataCheckStateCount(String startDate, String endDate, String infoId);
+
+    List<AbnormalAudit> abnormalCreateCount(String startDate, String endDate, String infoId);
+
+    List<AbnormalAudit> findStaffNoCount(String startDate, String endDate, String infoId);
+
 }

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

@@ -0,0 +1,25 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import org.jeecg.modules.smscheck.entity.currency.DataYearMonth;
+import org.jeecg.modules.smscheck.mapper.DataYearMonthMapper;
+import org.jeecg.modules.smscheck.service.DataYearMonthService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@Service
+public class DataYearMonthImpl implements DataYearMonthService {
+    @Resource
+    private DataYearMonthMapper dataYearMonthMapper;
+
+    @Override
+    public List<DataYearMonth> getTaskYearList() {
+        return dataYearMonthMapper.getTaskYearList();
+    }
+
+    @Override
+    public List<DataYearMonth> getTaskMonthList() {
+        return dataYearMonthMapper.getTaskMonthList();
+    }
+}

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

@@ -15,4 +15,7 @@ import org.springframework.stereotype.Service;
 @Service
 public class SmsCheckCustomerInfoLogServiceImpl extends ServiceImpl<SmsCheckCustomerInfoLogMapper, SmsCheckCustomerInfoLog> implements ISmsCheckCustomerInfoLogService {
 
+
+
+
 }

+ 6 - 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 org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.SmsCustomerInfoGroupByCheckState;
 import org.jeecg.modules.smscheck.vo.SmsCheckCustomerInfoTaskVo;
 import org.jeecg.modules.smscheck.vo.SmsCheckTaskVo;
 import org.jeecg.modules.smscheck.mapper.SmsCheckCustomerInfoMapper;
@@ -42,6 +43,11 @@ public class SmsCheckCustomerInfoServiceImpl extends ServiceImpl<SmsCheckCustome
         return smsCheckCustomerInfoMapper.checkInfoWarningPageList(pageNo,pageSize);
     }
 
+    @Override
+    public List<SmsCustomerInfoGroupByCheckState> groupCheckState(String startDate, String endDate,String id) {
+        return smsCheckCustomerInfoMapper.groupCheckState( startDate,  endDate,id);
+    }
+
     @Override
     public List<SmsCheckCustomerInfo> selectCompanyList(SmsCheckCustomerInfo smsCheckCustomerInfo) {
         return smsCheckCustomerInfoMapper.selectCompanyList(smsCheckCustomerInfo);

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

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.modules.smscheck.entity.SmsCheckWorkLog;
+import org.jeecg.modules.smscheck.entity.currency.AbnormalAudit;
 import org.jeecg.modules.smscheck.mapper.SmsCheckWorkLogMapper;
 import org.jeecg.modules.smscheck.service.ISmsCheckWorkLogService;
 import org.springframework.stereotype.Service;
@@ -43,4 +44,30 @@ public class SmsCheckWorkLogServiceImpl extends ServiceImpl<SmsCheckWorkLogMappe
         return checkState;
     }
 
+    @Override
+    public List<AbnormalAudit> basicCheckStateCount(String startDate, String endDate, String infoId) {
+        return smsCheckWorkLogMapper.basicCheckStateCount(startDate,endDate,infoId);
+    }
+
+    @Override
+    public List<AbnormalAudit> standardCheckStateCount(String startDate, String endDate, String infoId) {
+        return smsCheckWorkLogMapper.standardCheckStateCount(startDate,endDate,infoId);
+    }
+
+    @Override
+    public List<AbnormalAudit> dataCheckStateCount(String startDate, String endDate, String infoId) {
+        return smsCheckWorkLogMapper.dataCheckStateCount(startDate,endDate,infoId);
+    }
+
+    @Override
+    public List<AbnormalAudit> abnormalCreateCount(String startDate, String endDate, String infoId) {
+        return smsCheckWorkLogMapper.abnormalCreateCount(startDate,endDate,infoId);
+    }
+
+    @Override
+    public List<AbnormalAudit> findStaffNoCount(String startDate, String endDate, String infoId) {
+        return smsCheckWorkLogMapper.findStaffNoCount(startDate,endDate,infoId);
+    }
+
+
 }