From 21ad7244723fd12c4fe278e5d735051cf5b8a0b5 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 06 Nov 2023 16:38:01 +0800
Subject: [PATCH] 报事查询,报事数据统计接口

---
 src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java            |    7 +++
 src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java |    6 +++
 src/main/java/org/springblade/modules/task/entity/TaskReportForRepairsEntity.java            |    4 +-
 src/main/java/org/springblade/modules/task/service/ITaskReportForRepairsService.java         |    2 +
 src/main/java/org/springblade/modules/task/vo/TaskReportStatistics.java                      |   18 +++++++++
 src/main/java/org/springblade/modules/task/controller/TaskReportForRepairsController.java    |    5 ++
 src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml             |   32 ++++++++++++++++
 7 files changed, 71 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/springblade/modules/task/controller/TaskReportForRepairsController.java b/src/main/java/org/springblade/modules/task/controller/TaskReportForRepairsController.java
index 999d8af..8869a2e 100644
--- a/src/main/java/org/springblade/modules/task/controller/TaskReportForRepairsController.java
+++ b/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());
+	}
+
 
 }
diff --git a/src/main/java/org/springblade/modules/task/entity/TaskReportForRepairsEntity.java b/src/main/java/org/springblade/modules/task/entity/TaskReportForRepairsEntity.java
index a3fdbb6..a8b3b15 100644
--- a/src/main/java/org/springblade/modules/task/entity/TaskReportForRepairsEntity.java
+++ b/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;
-
 }
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java
index 8621675..f4f480d 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java
+++ b/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();
 }
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
index 17150fa..98a861d 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
+++ b/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>
 
 
diff --git a/src/main/java/org/springblade/modules/task/service/ITaskReportForRepairsService.java b/src/main/java/org/springblade/modules/task/service/ITaskReportForRepairsService.java
index db47541..759ba26 100644
--- a/src/main/java/org/springblade/modules/task/service/ITaskReportForRepairsService.java
+++ b/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();
 }
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java
index c21ab97..2393f27 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java
+++ b/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();
+	}
+
 
 }
diff --git a/src/main/java/org/springblade/modules/task/vo/TaskReportStatistics.java b/src/main/java/org/springblade/modules/task/vo/TaskReportStatistics.java
new file mode 100644
index 0000000..90f76eb
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/vo/TaskReportStatistics.java
@@ -0,0 +1,18 @@
+package org.springblade.modules.task.vo;
+
+import lombok.Data;
+
+/**
+ * 上报统计数据
+ */
+@Data
+public class TaskReportStatistics {
+
+	//总申请
+	private Integer total;
+
+	//已处理
+	private Integer handle;
+
+
+}

--
Gitblit v1.9.3