蔡德晨 5 tahun lalu
induk
melakukan
679a7a1d15

+ 3 - 3
src/main/java/com/jeeplus/modules/sg/report/mapper/ReportMapper.java

@@ -14,9 +14,9 @@ import java.util.List;
 
 
 @MyBatisMapper
-public interface ReportMapper extends BaseMapper<Material> {
-   List<SgReport> findData();
+public interface ReportMapper extends BaseMapper<SgReport> {
+   List<SgReport> findData(SgReport sgReport);
    List<SgReport> findList(SgReport sgReport);
-   List<SgReport> findUnitData();
+   List<SgReport> findUnitData(SgReport sgReport);
    List<SgReport> findUnitList(SgReport sgReport);
 }

+ 34 - 6
src/main/java/com/jeeplus/modules/sg/report/mapper/xml/ReportMapper.xml

@@ -2,7 +2,7 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.jeeplus.modules.sg.report.mapper.ReportMapper">
 
-	<select id="findData" resultType="SgReport">
+	<select id="findData" resultType="SgReport" parameterType="SgReport">
 		SELECT a.department as name ,
 		sum(a.st1) as finishCount,
 		SUM(a.st2) as unfinishCount
@@ -10,7 +10,14 @@
 	    (SELECT department,
 	            if(firstFinish='否' or secondFinish = '否',0,1) as st1,
 	            if(firstFinish='否' or secondFinish = '否',1,0) as st2
-	            from sj_project_information) a
+	            from sj_project_information t1
+		        <where>
+			        1=1
+			         <if test="dataScope != null and dataScope != ''">
+				      ${dataScope}
+			         </if>
+		        </where>
+	            ) a
 	    GROUP BY department
 	</select>
 
@@ -31,7 +38,14 @@
 		department,
 		if(firstFinish='否' or secondFinish = '否',NOW(),if(secondFinish = '是',secondFinishDate,firstFinishDate) )as da ,
 		approvalDate ,if(firstFinish='否' or secondFinish = '否','0','1') as status
-		from sj_project_information) a
+		from sj_project_information t1
+		<where>
+			1=1
+			<if test="dataScope != null and dataScope != ''">
+				${dataScope}
+			</if>
+		</where>
+		) a
 		<where>
 			<if test="status != null and status != ''">
 				a.status = #{status} and
@@ -43,7 +57,7 @@
 	</select>
 
 
-	<select id="findUnitData" resultType="SgReport">
+	<select id="findUnitData" resultType="SgReport" parameterType="SgReport">
 		SELECT a.underCentralized as name ,
 		sum(a.st1) as finishCount,
 		SUM(a.st2) as unfinishCount
@@ -51,7 +65,14 @@
 	    (SELECT if(t2.underCentralized is null,'未知部门',t2.underCentralized) as underCentralized,
 	            if(t1.firstFinish='否' or t1.secondFinish = '否',0,1) as st1,
 	            if(t1.firstFinish='否' or t1.secondFinish = '否',1,0) as st2
-	            from sj_project_information t1 left join sj_project_append t2 on t1.project_id = t2.project_id) a
+	            from sj_project_information t1 left join sj_project_append t2 on t1.project_id = t2.project_id
+		<where>
+			1=1
+			<if test="dataScope != null and dataScope != ''">
+				${dataScope}
+			</if>
+		</where>
+	            ) a
 	    GROUP BY a.underCentralized
 	</select>
 
@@ -72,7 +93,14 @@
 		if(t2.underCentralized is null,'未知部门',t2.underCentralized) as underCentralized,
 		if(t1.firstFinish='否' or t1.secondFinish = '否',NOW(),if(t1.secondFinish = '是',t1.secondFinishDate,t1.firstFinishDate) )as da ,
 		t1.approvalDate ,if(t1.firstFinish='否' or t1.secondFinish = '否','0','1') as status
-		from sj_project_information t1 left join sj_project_append t2 on t1.project_id = t2.project_id) a
+		from sj_project_information t1 left join sj_project_append t2 on t1.project_id = t2.project_id
+		<where>
+			1=1
+			<if test="dataScope != null and dataScope != ''">
+				${dataScope}
+			</if>
+		</where>
+		) a
 		<where>
 			<if test="status != null and status != ''">
 				a.status = #{status} and

+ 10 - 5
src/main/java/com/jeeplus/modules/sg/report/service/ReportService.java

@@ -1,5 +1,6 @@
 package com.jeeplus.modules.sg.report.service;
 
+import com.jeeplus.core.service.CrudService;
 import com.jeeplus.modules.sg.information.entity.Information;
 import com.jeeplus.modules.sg.report.entity.SgReport;
 import com.jeeplus.modules.sg.report.mapper.ReportMapper;
@@ -12,24 +13,28 @@ import java.util.HashMap;
 import java.util.List;
 
 @Service
-public class ReportService {
+public class ReportService extends CrudService<ReportMapper, SgReport> {
     @Autowired
     private ReportMapper reportMapper;
 
 
-    public List<SgReport> findData(){
-        return reportMapper.findData();
+    public List<SgReport> findData(SgReport sgReport){
+        dataRuleFilter(sgReport);
+        return reportMapper.findData(sgReport);
     }
 
     public List<SgReport> findList(SgReport sgReport){
+        dataRuleFilter(sgReport);
         return reportMapper.findList(sgReport);
     }
 
-    public List<SgReport> findUnitData(){
-        return reportMapper.findUnitData();
+    public List<SgReport> findUnitData(SgReport sgReport){
+        dataRuleFilter(sgReport);
+        return reportMapper.findUnitData(sgReport);
     }
 
     public List<SgReport> findUnitList(SgReport sgReport){
+        dataRuleFilter(sgReport);
         return reportMapper.findUnitList(sgReport);
     }
 }

+ 3 - 3
src/main/java/com/jeeplus/modules/sg/report/web/ReportController.java

@@ -39,7 +39,7 @@ public class ReportController {
     public String list(SgReport sgReport, Model model) {
         String status = sgReport.getStatus();
         model.addAttribute("sgReport", sgReport);
-        List<SgReport> list = reportService.findData();
+        List<SgReport> list = reportService.findData(sgReport);
 //        List<SgReport> list1 = reportService.findList(sgReport);
         model.addAttribute("list",list);
 //        model.addAttribute("list1",list1);
@@ -58,7 +58,7 @@ public class ReportController {
     public String list1(SgReport sgReport, Model model) {
         String status = sgReport.getStatus();
         model.addAttribute("sgReport", sgReport);
-        List<SgReport> list = reportService.findUnitData();
+        List<SgReport> list = reportService.findUnitData(sgReport);
 //        List<SgReport> list1 = reportService.findList(sgReport);
         model.addAttribute("list",list);
 //        model.addAttribute("list1",list1);
@@ -80,7 +80,7 @@ public class ReportController {
     @RequestMapping(value = "data")
     public Map<String, Object> data(SgReport sgReport, HttpServletRequest request, HttpServletResponse response, Model model) {
         Map<String, Object> map = new HashMap<String, Object>();
-        List<SgReport> list = reportService.findData();
+        List<SgReport> list = reportService.findData(sgReport);
         map.put("rows", list);
         return map;
     }