guoshilong
2023-11-06 21ad7244723fd12c4fe278e5d735051cf5b8a0b5
报事查询,报事数据统计接口
6 files modified
1 files added
74 ■■■■■ changed files
src/main/java/org/springblade/modules/task/controller/TaskReportForRepairsController.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/entity/TaskReportForRepairsEntity.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java 7 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml 32 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/service/ITaskReportForRepairsService.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/vo/TaskReportStatistics.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/controller/TaskReportForRepairsController.java
@@ -122,5 +122,10 @@
        return R.status(taskReportForRepairsService.deleteLogic(Func.toLongList(ids)));
    }
    @GetMapping("/getStatisticsCount")
    public R statisticsCount(){
        return R.data(taskReportForRepairsService.getStatisticsCount());
    }
}
src/main/java/org/springblade/modules/task/entity/TaskReportForRepairsEntity.java
@@ -22,6 +22,7 @@
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
import org.springblade.core.tenant.mp.TenantEntity;
/**
@@ -34,7 +35,7 @@
@TableName("jczz_task_report_for_repairs")
@ApiModel(value = "TaskReportForRepairs对象", description = "报事报修任务表")
@EqualsAndHashCode(callSuper = true)
public class TaskReportForRepairsEntity extends TenantEntity {
public class TaskReportForRepairsEntity extends BaseEntity {
    /**
     * 类型 1公共维修,2居家维修,3矛盾纠纷,4投诉举报
@@ -61,5 +62,4 @@
     */
    @ApiModelProperty(value = "图片路径")
    private String imageUrls;
}
src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java
@@ -16,10 +16,14 @@
 */
package org.springblade.modules.task.mapper;
import liquibase.pro.packaged.P;
import org.apache.ibatis.annotations.Param;
import org.springblade.modules.task.entity.TaskReportForRepairsEntity;
import org.springblade.modules.task.vo.TaskReportForRepairsVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.modules.task.vo.TaskReportStatistics;
import java.util.List;
/**
@@ -37,7 +41,8 @@
     * @param taskReportForRepairs
     * @return
     */
    List<TaskReportForRepairsVO> selectTaskReportForRepairsPage(IPage page, TaskReportForRepairsVO taskReportForRepairs);
    List<TaskReportForRepairsVO> selectTaskReportForRepairsPage(IPage page,@Param("vo") TaskReportForRepairsVO taskReportForRepairs);
    TaskReportStatistics getStatisticsCount();
}
src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
@@ -20,6 +20,38 @@
    <select id="selectTaskReportForRepairsPage" resultMap="taskReportForRepairsResultMap">
        select * from jczz_task_report_for_repairs where is_deleted = 0
        <if test="vo.createUser != null and vo.createUser != ''">
            AND create_user = #{vo.createUser}
        </if>
        <if test="vo.type != null and vo.type != ''">
            AND type = #{vo.type}
        </if>
        ORDER BY create_time DESC
    </select>
    <select id="getStatisticsCount" resultType="org.springblade.modules.task.vo.TaskReportStatistics">
        SELECT
            CASE
                TEMP.TOTAL
                WHEN TEMP.TOTAL != 0 THEN
                    TEMP.TOTAL ELSE 0
                END AS TOTAL,
            CASE
                TEMP.HANDLE
                WHEN TEMP.HANDLE != 0 THEN
                    TEMP.HANDLE ELSE 0
                END AS HANDLE
        FROM
            (
                SELECT
                    COUNT( 1 ) AS total,
                    SUM( CASE WHEN STATUS = 10 THEN 1 ELSE 0 END ) AS handle
                FROM
                    jczz_task_report_for_repairs
                WHERE
                    is_deleted = 0
            ) TEMP
    </select>
src/main/java/org/springblade/modules/task/service/ITaskReportForRepairsService.java
@@ -20,6 +20,7 @@
import org.springblade.modules.task.vo.TaskReportForRepairsVO;
import org.springblade.core.mp.base.BaseService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.modules.task.vo.TaskReportStatistics;
/**
 * 报事报修任务表 服务类
@@ -39,4 +40,5 @@
    IPage<TaskReportForRepairsVO> selectTaskReportForRepairsPage(IPage<TaskReportForRepairsVO> page, TaskReportForRepairsVO taskReportForRepairs);
    TaskReportStatistics getStatisticsCount();
}
src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java
@@ -21,6 +21,7 @@
import org.springblade.modules.task.mapper.TaskReportForRepairsMapper;
import org.springblade.modules.task.service.ITaskReportForRepairsService;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.modules.task.vo.TaskReportStatistics;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -38,5 +39,10 @@
        return page.setRecords(baseMapper.selectTaskReportForRepairsPage(page, taskReportForRepairs));
    }
    @Override
    public TaskReportStatistics getStatisticsCount() {
        return baseMapper.getStatisticsCount();
    }
}
src/main/java/org/springblade/modules/task/vo/TaskReportStatistics.java
New file
@@ -0,0 +1,18 @@
package org.springblade.modules.task.vo;
import lombok.Data;
/**
 * 上报统计数据
 */
@Data
public class TaskReportStatistics {
    //总申请
    private Integer total;
    //已处理
    private Integer handle;
}