Reiskuchen il y a 5 ans
Parent
commit
3c46b09d13

+ 30 - 7
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportController.java

@@ -106,15 +106,20 @@ public class ReportController {
     }
 
     /**
-     * 获取所有未审批通过的报告
+     * 根据审核状态分页获取报告
+     * pageIndex 分页索引
+     * pageSize 分页大小
+     * state 筛选状态 -1-全部 0-未审核 1-已通过 2-未通过
+     * date 日期 可传 不传即全部
      */
-//    @RequestMapping("/uncensoredList")
-//    public HttpRespMsg getUncensoredList(HttpServletRequest request) {
-//        return reportService.getUncensoredList(request);
-//    }
+    @RequestMapping("/listByType")
+    public HttpRespMsg getListByState(@RequestParam Integer pageIndex, @RequestParam Integer pageSize,
+                                      @RequestParam Integer state, String date, HttpServletRequest request) {
+        return reportService.getListByState(pageIndex, pageSize, state, date, request);
+    }
 
     /**
-     * 审批通过报告
+     * 按某人某日期审批通过报告
      * id 要通过的报告的用户id
      * date 日期 格式yyyy-mm-dd
      */
@@ -124,7 +129,7 @@ public class ReportController {
     }
 
     /**
-     * 审批未通过报告 撤销通过报告
+     * 按某人某日期审批未通过报告 撤销通过报告
      * id 要未通过的报告的用户id
      * date 日期 格式yyyy-mm-dd
      */
@@ -132,5 +137,23 @@ public class ReportController {
     public HttpRespMsg denyReport(@RequestParam String id, @RequestParam String date, HttpServletRequest request) {
         return reportService.denyReport(id, date, request);
     }
+
+    /**
+     * 单条审批通过报告
+     * id 要通过的报告id
+     */
+    @RequestMapping("/singleApprove")
+    public HttpRespMsg singleApproveReport(@RequestParam Integer id, HttpServletRequest request) {
+        return reportService.singleApproveReport(id, request);
+    }
+
+    /**
+     * 单条审批未通过报告 撤销通过报告
+     * id 要未通过的报告id
+     */
+    @RequestMapping("/singleDeny")
+    public HttpRespMsg singleDenyReport(@RequestParam Integer id, HttpServletRequest request) {
+        return reportService.singleDenyReport(id, request);
+    }
 }
 

+ 10 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ReportMapper.java

@@ -1,10 +1,10 @@
 package com.management.platform.mapper;
 
-import com.management.platform.entity.Report;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.management.platform.entity.Report;
 import org.apache.ibatis.annotations.Param;
 
-import java.time.LocalDate;
 import java.util.List;
 import java.util.Map;
 
@@ -23,5 +23,12 @@ public interface ReportMapper extends BaseMapper<Report> {
 
     List<Map<String, Object>> getReportNameByDate(@Param("date") String date, @Param("companyId") Integer companyId);
 
-    List<Map<String, Object>> getUncensoredList(@Param("companyId") Integer companyId);
+    List<Map<String, Object>> getListByState(Page page,
+                                             @Param("companyId") Integer companyId,
+                                             @Param("state") Integer state,
+                                             @Param("date") String date);
+
+    Integer countByState(@Param("companyId") Integer companyId,
+                         @Param("state") Integer state,
+                         @Param("date") String date);
 }

+ 6 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ReportService.java

@@ -26,9 +26,14 @@ public interface ReportService extends IService<Report> {
 
     HttpRespMsg deleteReport(Integer reportId);
 
-    HttpRespMsg getUncensoredList(HttpServletRequest request);
+    HttpRespMsg getListByState(Integer pageIndex, Integer pageSize, Integer state, String date,
+                               HttpServletRequest request);
 
     HttpRespMsg approveReport(String id, String date, HttpServletRequest request);
 
     HttpRespMsg denyReport(String id, String date, HttpServletRequest request);
+
+    HttpRespMsg singleApproveReport(Integer id, HttpServletRequest request);
+
+    HttpRespMsg singleDenyReport(Integer id, HttpServletRequest request);
 }

+ 47 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -1,6 +1,7 @@
 package com.management.platform.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.management.platform.entity.*;
 import com.management.platform.mapper.*;
@@ -220,11 +221,18 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
 
     //获取未经审核的报告列表
     @Override
-    public HttpRespMsg getUncensoredList(HttpServletRequest request) {
+    public HttpRespMsg getListByState(Integer pageIndex, Integer pageSize, Integer state, String date,
+                                      HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         try {
+            if (state == -1) {
+                state = null;
+            }
             Integer companyId = userMapper.selectById(request.getHeader("Token")).getCompanyId();
-            httpRespMsg.data = reportMapper.getUncensoredList(companyId);
+            Map<String, Object> map = new HashMap<>();
+            map.put("records", reportMapper.getListByState(new Page<>(pageIndex, pageSize), state, companyId, date));
+            map.put("total", reportMapper.countByState(state, companyId, date));
+            httpRespMsg.data = map;
         } catch (NullPointerException e) {
             httpRespMsg.setError("验证失败");
             return httpRespMsg;
@@ -232,7 +240,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
         return httpRespMsg;
     }
 
-    //审核通过
+    //审核通过某天某人
     @Override
     public HttpRespMsg approveReport(String id, String date, HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
@@ -251,7 +259,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
         return httpRespMsg;
     }
 
-    //审核未通过 以及 撤销审核
+    //审核未通过 以及 撤销审核某天某人
     @Override
     public HttpRespMsg denyReport(String id, String date, HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
@@ -271,6 +279,41 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
         return httpRespMsg;
     }
 
+    //审核通过某条
+    @Override
+    public HttpRespMsg singleApproveReport(Integer id, HttpServletRequest request) {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        try {
+            User user = userMapper.selectById(request.getHeader("Token"));
+            if (user.getRole() == 0) {
+                httpRespMsg.setError("无修改权限");
+            } else {
+                reportMapper.updateById(reportMapper.selectById(id).setState(1));
+            }
+        } catch (NullPointerException e) {
+            httpRespMsg.setError("验证失败");
+            return httpRespMsg;
+        }
+        return httpRespMsg;
+    }
+
+    //审核未通过 以及 撤销审核某条
+    @Override
+    public HttpRespMsg singleDenyReport(Integer id, HttpServletRequest request) {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        try {
+            User user = userMapper.selectById(request.getHeader("Token"));
+            if (user.getRole() == 0) {
+                httpRespMsg.setError("无修改权限");
+            } else {
+                reportMapper.updateById(reportMapper.selectById(id).setState(2));
+            }
+        } catch (NullPointerException e) {
+            httpRespMsg.setError("验证失败");
+            return httpRespMsg;
+        }
+        return httpRespMsg;
+    }
 
     //导出报告
     @Override

+ 24 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ReportMapper.xml

@@ -59,14 +59,35 @@
         </if>
     </select>
 
-    <!--获取未经审核的报告列表-->
-    <select id="getUncensoredList" resultType="java.util.Map">
+    <!--报告列表-->
+    <select id="getListByState" resultType="java.util.Map">
         SELECT a.id, b.name AS user, c.project_name AS project, a.create_date AS date, a.working_time AS time, a.content
         FROM report AS a
         LEFT JOIN user AS b ON a.creator_id=b.id
         JOIN project AS c ON a.project_id = c.id
         WHERE c.company_id = #{companyId}
-        AND a.state IN (0,2)
+        <if test="state != null and state != ''">
+            AND a.state = #{state}
+        </if>
+        <if test="date != null and date != ''">
+            AND a.create_date = #{date}
+        </if>
+        ORDER BY a.id DESC
+    </select>
+
+    <!--报告列表数据-->
+    <select id="getListByState" resultType="java.lang.Integer">
+        SELECT COUNT(a.id)
+        FROM report AS a
+        LEFT JOIN user AS b ON a.creator_id=b.id
+        JOIN project AS c ON a.project_id = c.id
+        WHERE c.company_id = #{companyId}
+        <if test="state != null and state != ''">
+            AND a.state = #{state}
+        </if>
+        <if test="date != null and date != ''">
+            AND a.create_date = #{date}
+        </if>
     </select>
 
 </mapper>