sunyize %!s(int64=2) %!d(string=hai) anos
pai
achega
c12974fc91

+ 47 - 0
tnc-base/tnc-base-core/src/main/java/org/jeecg/common/constant/enums/CheckTaskTypeEnum.java

@@ -0,0 +1,47 @@
+package org.jeecg.common.constant.enums;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-07-27  17:25
+ */
+public enum CheckTaskTypeEnum {
+
+    Line("1", "行短稽核"),
+    Business("2", "物联网业务稽核"),
+    Reopening("3", "复开审批"),
+    TrunkLineAudit("4", "中继线稽核");
+
+    static Map<String,String> enumMap=new HashMap<String, String>();
+    static{
+        for(CheckTaskTypeEnum type: CheckTaskTypeEnum.values()){
+            enumMap.put(type.getCode(), type.getName());
+        }
+    }
+
+    public static String getDisplayName(String value) {
+        return enumMap.get(value);
+    }
+
+    private String code;
+    private String name;
+
+    CheckTaskTypeEnum(String code, String name) {
+        this.code = code;
+        this.name = name;
+    }
+
+    public String getCode() {
+        return this.code;
+    }
+
+    public String getName() {
+        return this.name;
+    }
+
+
+
+}

+ 89 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckStatisticsController.java

@@ -0,0 +1,89 @@
+package org.jeecg.modules.smscheck.controller;
+
+import cn.hutool.core.lang.Dict;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.PermissionData;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.SmsStatisticsCheckVo;
+import org.jeecg.modules.smscheck.service.ISmsCheckCustomerInfoService;
+import org.jeecg.modules.smscheck.service.SmsCheckStatisticsService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.util.Arrays;
+import java.util.Map;
+
+/**
+ * @Author: Syze
+ * @description  稽核统计
+ * @Date: 2023-07-27  09:55
+ */
+@Api(tags = "稽核统计")
+@RestController
+@RequestMapping("/smsCheck/statistics")
+@Slf4j
+public class SmsCheckStatisticsController extends JeecgController<SmsCheckCustomerInfo, ISmsCheckCustomerInfoService> {
+
+
+    @Resource
+    private SmsCheckStatisticsService smsCheckStatisticsService;
+
+    /**
+     * 分页列表查询
+     *
+     * @param   smsStatisticsCheckVo
+     * @param pageNo               页码
+     * @param pageSize             每页条数
+     * @param request              请求
+     * @return 结果
+     */
+    @ApiOperation(value = "稽核统计-分页列表查询", notes = "稽核统计-分页列表查询")
+    @GetMapping(value = "/list")
+    @PermissionData(pageComponent = "statistics/SmsCheckStatistics")
+    public Result< Map<String, Object>> queryPageList(SmsStatisticsCheckVo smsStatisticsCheckVo,
+                                                             @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                             @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                             HttpServletRequest request ) {
+        Page<SmsStatisticsCheckVo> page = new Page<>(pageNo, pageSize);
+        String infoId = request.getParameterMap().get("infoId")==null?"": Arrays.toString(request.getParameterMap().get("infoId")).replace("[", "").replace("]", "");
+        String endDate = request.getParameterMap().get("endDate")==null?"": Arrays.toString(request.getParameterMap().get("endDate")).replace("[", "").replace("]", "");
+        String startDate = request.getParameterMap().get("startDate")==null?"": Arrays.toString(request.getParameterMap().get("startDate")).replace("[", "").replace("]", "");
+        Map<String, Object> stringObjectMap = smsCheckStatisticsService.smsCheckStatisticsList(smsStatisticsCheckVo, page,startDate,endDate,infoId);
+        return Result.OK(stringObjectMap);
+    }
+
+
+    /**
+     * 根据稽核点 查 稽核统计数
+     *
+     * @return 数据
+     */
+    @ApiOperation(value = "根据稽核点 查 稽核统计数", notes = "根据稽核点 查 稽核统计数")
+    @GetMapping(value = "/count")
+    @PermissionData(pageComponent = "statistics/SmsCheckStatistics")
+    public Result<Map<String, Object>> count(   HttpServletRequest request) {
+        String infoId = request.getParameterMap().get("infoId")==null?"": Arrays.toString(request.getParameterMap().get("infoId")).replace("[", "").replace("]", "");
+        String endDate = request.getParameterMap().get("endDate")==null?"": Arrays.toString(request.getParameterMap().get("endDate")).replace("[", "").replace("]", "");
+        String startDate = request.getParameterMap().get("startDate")==null?"": Arrays.toString(request.getParameterMap().get("startDate")).replace("[", "").replace("]", "");
+        String type = request.getParameterMap().get("type")==null?"": Arrays.toString(request.getParameterMap().get("type")).replace("[", "").replace("]", "");
+        Map<String, Object> stringObjectMap = smsCheckStatisticsService.statisticsCountListByType(type,  startDate,  endDate,infoId);
+
+        return Result.OK(stringObjectMap);
+    }
+
+
+}

+ 264 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsStatisticsCheckVo.java

@@ -0,0 +1,264 @@
+package org.jeecg.modules.smscheck.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-07-27  12:28
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="sms_check_customer_info对象", description="客户信息")
+public class SmsStatisticsCheckVo {
+    private static final long serialVersionUID = 1L;
+
+    /** 主键 */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+    /** 任务id */
+    @Excel(name = "任务id", width = 15)
+    @ApiModelProperty(value = "任务id")
+    private String taskId;
+    /** 客户编号 */
+    @Excel(name = "客户编号", width = 15)
+    @ApiModelProperty(value = "客户编号")
+    private String customerNo;
+    /** 客户名称 */
+    @Excel(name = "客户名称", width = 15)
+    @ApiModelProperty(value = "客户名称")
+    private String customerName;
+    /** 服务号码(全) */
+    @Excel(name = "服务号码(全)", width = 15)
+    @ApiModelProperty(value = "服务号码(全)")
+    private String smsNumber;
+    /** 用户编号 */
+    @Excel(name = "用户编号", width = 15)
+    @ApiModelProperty(value = "用户编号")
+    private String userNo;
+    /** 入网时间 */
+    @Excel(name = "入网时间", width = 15)
+    @ApiModelProperty(value = "入网时间")
+    private String networkAccessTime;
+    /** 用户状态 */
+    @Excel(name = "用户状态", width = 15)
+    @ApiModelProperty(value = "用户状态")
+    private String userState;
+    /** 用户发展员工 */
+    @Excel(name = "用户发展员工", width = 15)
+    @ApiModelProperty(value = "用户发展员工")
+    private String staffInfo;
+    /** 员工姓名 */
+    @Excel(name = "员工姓名", width = 15)
+    @ApiModelProperty(value = "员工姓名")
+    private String staffUsername;
+    /** 员工姓名 */
+    @Excel(name = "员工姓名", width = 15)
+    @ApiModelProperty(value = "员工姓名")
+    private String staffName;
+    /** 员工编号 */
+    @Excel(name = "员工姓名", width = 15)
+    @ApiModelProperty(value = "员工编号")
+    private String staffNo;
+    /** 用户发展二级部门 */
+    @Excel(name = "用户发展二级部门", width = 15)
+    @ApiModelProperty(value = "用户发展二级部门")
+    private String staffDeptLevel2;
+    /** 员工二级部门 */
+    @Excel(name = "员工二级部门", width = 15)
+    @ApiModelProperty(value = "员工二级部门")
+    private String staffDeptLevel2Name;
+    /** 员工二级部门编号 */
+    @Excel(name = "员工二级部门编号", width = 15)
+    @ApiModelProperty(value = "员工二级部门编号")
+    private String staffDeptLevel2No;
+    /** 用户发展三级部门 */
+    @Excel(name = "用户发展三级部门", width = 15)
+    @ApiModelProperty(value = "用户发展三级部门")
+    private String staffDeptLevel3;
+    /** 员工三级部门 */
+    @Excel(name = "员工三级部门", width = 15)
+    @ApiModelProperty(value = "员工三级部门")
+    private String staffDeptLevel3Name;
+    /** 员工三级部门编号 */
+    @Excel(name = "员工三级部门编号", width = 15)
+    @ApiModelProperty(value = "员工三级部门编号")
+    private String staffDeptLevel3No;
+    /** 用户开通状态 (1:开通;2:拆机)*/
+    @Excel(name = "用户开通状态", width = 15)
+    @ApiModelProperty(value = "用户开通状态")
+    private Integer userOpenState;
+    /** 码号 */
+    @Excel(name = "码号", width = 15)
+    @ApiModelProperty(value = "码号")
+    private String smsNumberPrefix;
+    /** 号码详细用途 */
+    @Excel(name = "号码详细用途", width = 15)
+    @ApiModelProperty(value = "号码详细用途")
+    private String smsNumberUsage;
+    /** 客户经理 */
+    @Excel(name = "客户经理", width = 15)
+    @ApiModelProperty(value = "客户经理")
+    private String accountManager;
+    /** 客户经理手机号 */
+    @Excel(name = "客户经理手机号", width = 15)
+    @ApiModelProperty(value = "客户经理手机号")
+    private String accountManagerPhone;
+    /** 码号使用单位联系人 */
+    @Excel(name = "码号使用单位联系人", width = 15)
+    @ApiModelProperty(value = "码号使用单位联系人")
+    private String customerContacts;
+    /** 码号使用单位联系人手机号 */
+    @Excel(name = "码号使用单位联系人手机号", width = 15)
+    @ApiModelProperty(value = "码号使用单位联系人手机号")
+    private String customerContactsPhone;
+    /** 合同到期时间(YYYY-MM-DD) */
+    @Excel(name = "合同到期时间(YYYY-MM-DD)", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "合同到期时间(YYYY-MM-DD)")
+    private Date contractExpireTime;
+    /** 码号证书到期时间(YYYY-MM-DD) */
+    @Excel(name = "码号证书到期时间(YYYY-MM-DD)", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "码号证书到期时间(YYYY-MM-DD)")
+    private Date smsNumberCertificateExpireTime;
+    /** 备案通知到期时间(YYYY-MM-DD) */
+    @Excel(name = "备案通知到期时间(YYYY-MM-DD)", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "备案通知到期时间(YYYY-MM-DD)")
+    private Date recordNoticeExpireTime;
+    /** 增值业务许可证到期时间(YYYY-MM-DD) */
+    @Excel(name = "增值业务许可证到期时间(YYYY-MM-DD)", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "增值业务许可证到期时间(YYYY-MM-DD)")
+    private Date valueAddedLicenceExpireTime;
+    /** 营业执照到期时间(YYYY-MM-DD) */
+    @Excel(name = "营业执照到期时间(YYYY-MM-DD)", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "营业执照到期时间(YYYY-MM-DD)")
+    private Date businessLicenceExpireTime;
+    /** 合同签署主体与实际开通客户是否一致 */
+    @Excel(name = "合同签署主体与实际开通客户是否一致", width = 15)
+    @ApiModelProperty(value = "合同签署主体与实际开通客户是否一致")
+    private Integer contractOpenCustomerSame;
+    /** 是否有集团价格审批 */
+    @Excel(name = "是否有集团价格审批", width = 15)
+    @ApiModelProperty(value = "是否有集团价格审批")
+    private Integer groupPriceApproval;
+    /** 资料是否完整 */
+    @Excel(name = "资料是否完整", width = 15)
+    @ApiModelProperty(value = "资料是否完整")
+    private Integer dataComplete;
+    /** 是否完成整改 */
+    @Excel(name = "是否完成整改", width = 15)
+    @ApiModelProperty(value = "是否完成整改")
+    private Integer rectifyReformOver;
+    /** 稽核状态 0:未处理;1:未完善;2:待稽核;3:已整改;4:待整改;5:稽核通过; */
+    @Excel(name = "稽核状态", width = 15, dicCode = "sms_check_check_state")
+    @Dict(dicCode = "sms_check_check_state")
+    @ApiModelProperty(value = "稽核状态")
+    private Integer checkState;
+    /** 描述 */
+    @Excel(name = "描述", width = 15)
+    @ApiModelProperty(value = "描述")
+    private String description;
+    /** 删除标识 */
+    @Excel(name = "删除标识", width = 15)
+    @ApiModelProperty(value = "删除标识")
+    private Integer delFlag;
+    /** 创建人 */
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+    /** 创建日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+    /** 更新人 */
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+    /** 更新日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+    /** 所属部门 */
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;
+
+    //**********************
+    /** 稽核类型 */
+    @Excel(name = "稽核类型", width = 15)
+    @ApiModelProperty(value = "稽核类型")
+    private String type;
+
+    /** 稽核类型 */
+    @Excel(name = "任务名称", width = 15)
+    @ApiModelProperty(value = "任务名称")
+    private String taskName;
+
+    /** 任务状态 */
+    @Excel(name = "任务状态", width = 15)
+    @ApiModelProperty(value = "任务状态")
+    private String taskState;
+
+    /** 任务开始时间 */
+    @Excel(name = "任务开始时间(YYYY-MM-DD)", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "任务开始时间(YYYY-MM-DD)")
+    private Date taskStartTime;
+
+    /** 任务开始时间 */
+    @Excel(name = "任务结束时间(YYYY-MM-DD)", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "任务结束时间(YYYY-MM-DD)")
+    private Date taskEndTime;
+
+    /** 客户总数 */
+    @Excel(name = "客户总数", width = 15)
+    @ApiModelProperty(value = "客户总数")
+    private String customerCount;
+
+
+    /** 待稽核数 */
+    @Excel(name = "待稽核数", width = 15)
+    @ApiModelProperty(value = "待稽核数")
+    private String uncheckCount;
+
+    /** 已稽核数 */
+    @Excel(name = "已稽核数", width = 15)
+    @ApiModelProperty(value = "已稽核数")
+    private String checkCount;
+
+
+
+    /** 文件路径 */
+    @ApiModelProperty(value = "文件路径")
+    private String fileUrl;
+
+
+
+
+}

+ 34 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckStaticsMapper.java

@@ -0,0 +1,34 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.smscheck.entity.SmsStatisticsCheckVo;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-07-27  14:21
+ */
+@Mapper
+public interface SmsCheckStaticsMapper  extends BaseMapper<SmsStatisticsCheckVo> {
+
+    /**
+     *  分页查询
+     * @param type
+     * @param start
+     * @param size
+     * @return
+     */
+    List<Map<String,Object>> selectCheckStaticsList(@Param("type") String type,@Param("start") Long start,@Param("size") Long size,@Param("startDate")String startDate,@Param("endDate")String endDate,@Param("taskId") String taskId);
+
+    /**
+     * 获取总记录条数
+     * @return
+     */
+    Long selectTotal(@Param("type") String type,@Param("startDate")String startDate,@Param("endDate")String endDate,@Param("taskId") String taskId);
+
+}

+ 61 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/xml/SmsCheckStaticsMapper.xml

@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="org.jeecg.modules.smscheck.mapper.SmsCheckStaticsMapper">
+
+
+
+
+
+    <select id="selectCheckStaticsList"   parameterType="org.jeecg.modules.smscheck.entity.SmsStatisticsCheckVo" resultType ="org.jeecg.modules.smscheck.entity.SmsStatisticsCheckVo">
+        select
+        task_id   taskId,customer_no  customerNo,customer_name  customerName,sms_number  smsNumber,user_no  userNo,
+        network_access_time
+        networkAccessTime,user_state  userState,staff_info  staffInfo,staff_id  staffId,
+        staff_username
+        staffUsername,staff_name  staffName,staff_no  staffNo,staff_dept_level2  staffDeptLevel2,
+        staff_dept_level2_name
+        staffDeptLevel2Name,staff_dept_level2_no  staffDeptLevel2No,staff_dept_level3  staffDeptLevel3,
+        staff_dept_level3_name
+        staffDeptLevel3Name,staff_dept_level3_no  staffDeptLevel3No,user_open_state  userOpenState,
+        sms_number_prefix
+        smsNumberPrefix,sms_number_usage  smsNumberUsage,account_manager  accountManager,
+        account_manager_phone
+        accountManagerPhone,customer_contacts  customerContacts,customer_contacts_phone  customerContactsPhone,
+        contract_expire_time
+        contractExpireTime,sms_number_certificate_expire_time  smsNumberCertificateExpireTime,record_notice_expire_time  recordNoticeExpireTime,
+        value_added_licence_expire_time
+        valueAddedLicenceExpireTime,business_licence_expire_time  businessLicenceExpireTime,contract_open_customer_same  contractOpenCustomerSame,
+        group_price_approval
+        groupPriceApproval,data_complete  dataComplete,rectify_reform_over  rectifyReformOver,check_state  checkState,
+        a.description,a.del_flag  delFlag,a.create_by  createBy,a.create_time  createTime,a.update_by  updateBy,
+        a.update_time  updateTime,a.sys_org_code  sysOrgCode,b.type  type,b.task_name  taskName,
+        b.task_state  taskState,b.task_start_time  taskStartTime,b.task_end_time taskEndTime,
+        b.customer_count  customerCount,b.uncheck_count uncheckCount,b.check_count checkCount,
+        b.file_url  fileUrl,b.sys_org_code  sysOrgCode
+        from sms_check_customer_info a
+        LEFT JOIN sms_check_task b   on a.task_id =b.id
+        where 1=1 and b.type in (1,2,3,4)  and a.del_flag =0
+        <if test="type != null and type != '' "> and  b.type= #{type} </if>
+        <if test="startDate != null and startDate!='' "> and  a.create_time >= #{startDate} </if>
+        <if test="endDate != null   and endDate!='' "> and a.create_time <![CDATA[<=]]> #{endDate} </if>
+        <if test="taskId != null   and taskId!='' "> and  a.task_id = #{taskId} </if>
+        order BY a.create_time  desc
+        <if test="start != null and size != null">
+            LIMIT #{start},#{size}
+        </if>
+    </select>
+
+
+    <select id="selectTotal" resultType="java.lang.Long">
+        select  count(*)
+        from sms_check_customer_info a
+        LEFT JOIN sms_check_task b   on a.task_id =b.id
+        where 1=1 and b.type in (1,2,3,4)  and a.del_flag =0
+        <if test="type != null and type != '' "> and  b.type= #{type} </if>
+        <if test="startDate != null and startDate!='' "> and  a.create_time >= #{startDate} </if>
+        <if test="endDate != null   and endDate!='' "> and a.create_time <![CDATA[<=]]> #{endDate} </if>
+        <if test="taskId != null   and taskId!='' "> and  a.task_id = #{taskId} </if>
+    </select>
+
+</mapper>

+ 24 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/SmsCheckStatisticsService.java

@@ -0,0 +1,24 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.SmsStatisticsCheckVo;
+import org.jeecg.modules.smscheck.entity.currency.AbnormalAudit;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author: Syze
+ * @description  稽核统计service
+ * @Date: 2023-07-27  10:54
+ *
+ */
+public interface SmsCheckStatisticsService extends IService<SmsStatisticsCheckVo> {
+
+    Map<String,Object>  smsCheckStatisticsList(SmsStatisticsCheckVo smsStatisticsCheckVo, Page page,String startDate,String endDate,String infoId);
+
+    Map<String,Object>  statisticsCountListByType(String type,String startDate,String endDate,String infoId);
+}

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

@@ -0,0 +1,104 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.common.constant.enums.CheckTaskTypeEnum;
+import org.jeecg.modules.smscheck.entity.SmsStatisticsCheckVo;
+import org.jeecg.modules.smscheck.mapper.SmsCheckStaticsMapper;
+import org.jeecg.modules.smscheck.service.SmsCheckStatisticsService;
+
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-07-27  10:55
+ */
+@Service
+public class SmsCheckStatisticsServiceImpl extends ServiceImpl<SmsCheckStaticsMapper, SmsStatisticsCheckVo> implements SmsCheckStatisticsService {
+
+    @Resource
+    private SmsCheckStaticsMapper smsCheckStaticsMapper;
+
+    @Override
+    public Map<String,Object> smsCheckStatisticsList(SmsStatisticsCheckVo smsStatisticsCheckVo, Page page,String startDate,String endDate,String taskId) {
+
+        Map<String,Object> mapResult = new HashMap<>();
+
+        //计算page size  第几页
+        long current = page.getCurrent();//当前页数
+
+        long size = page.getSize();//每页显示数
+
+        long start = (current - 1) * size;//开始位置
+
+        List<Map<String, Object>> maps = smsCheckStaticsMapper.selectCheckStaticsList(smsStatisticsCheckVo.getType(), start,size,startDate,endDate,taskId);
+
+        Long total = smsCheckStaticsMapper.selectTotal(smsStatisticsCheckVo.getType(),startDate,endDate,taskId);
+
+        //构建返回对象内容
+        mapResult.put("current",current);
+
+        mapResult.put("records",maps);
+
+        mapResult.put("size",size);
+
+        mapResult.put("total",total);
+
+        long totalPages;//总页数
+        totalPages = total / size;
+        if (total % size != 0){
+            totalPages ++;
+        }
+        mapResult.put("pages",totalPages);
+
+        return mapResult;
+    }
+
+
+    @Override
+    public Map<String, Object> statisticsCountListByType(String type,String startDate,String endDate,String infoId) {
+
+        //总数
+        Long totalNum = smsCheckStaticsMapper.selectTotal(null,startDate,endDate,infoId);
+
+        //1:行短稽核
+        String line = CheckTaskTypeEnum.Line.getCode();
+        Long lineNum = smsCheckStaticsMapper.selectTotal(line,startDate,endDate,infoId);
+
+        //2:物联网业务稽核
+        String business = CheckTaskTypeEnum.Business.getCode();
+        Long businessNum = smsCheckStaticsMapper.selectTotal(business,startDate,endDate,infoId);
+
+        //3.复开审批
+        String reopening = CheckTaskTypeEnum.Reopening.getCode();
+        Long reopeningNum = smsCheckStaticsMapper.selectTotal(reopening,startDate,endDate,infoId);
+
+        //4.中继线稽核
+        String trunkLineAudit = CheckTaskTypeEnum.TrunkLineAudit.getCode();
+        Long trunkLineAuditNum = smsCheckStaticsMapper.selectTotal(trunkLineAudit,startDate,endDate,infoId);
+
+        Map<String,Object> mapNums = new HashMap<>();
+
+
+        // 根据日期选择
+
+        mapNums.put("totalNum",totalNum);
+        mapNums.put("lineNum",lineNum);
+        mapNums.put("businessNum",businessNum);
+        mapNums.put("reopeningNum",reopeningNum);
+        mapNums.put("trunkLineAuditNum",trunkLineAuditNum);
+
+        return mapNums;
+    }
+
+
+}