ソースを参照

月报、周报分页查询优化

Perperon 3 ヶ月 前
コミット
a4a23ed6d2

+ 1 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/WorkbenchMapper.java

@@ -39,6 +39,7 @@ public interface WorkbenchMapper {
 	List<Map<String,Object>> getYbList(@Param("varkind")String varkind,@Param("varbegin")String varbegin,@Param("varend")String varend,@Param("vardesc")String vardesc,@Param("varstatus")String varstatus
 	,@Param("varjsdd")String varjsdd,@Param("varlogin")String varlogin,@Param("varpage")Integer varpage,@Param("varnum")Integer varnum,@Param("outtotal")Integer outtotal);
 
+	List<Map<String,Object>> geYbFgwtList(@Param("queryVO")RptContQueryVO queryVO,@Param("pageNo")Integer pageNo, @Param("pageSize") Integer pageSize);
 
 	List<Map<String,Object>> getWeekAndMonthAlarm( @Param("loginName")String loginName);
 

+ 6 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/WorkbenchMapper.xml

@@ -18,6 +18,12 @@
 			)
 	</select>
 
+	<select id="geYbFgwtList"  resultType="java.util.Map" statementType="CALLABLE" useCache="false">
+		call total_get_yb_g_list(
+			#{queryVO.varkind},#{queryVO.varbegin},#{queryVO.varend},#{queryVO.vardesc},#{queryVO.varstatus},#{queryVO.varjsdd},#{queryVO.varlogin},#{pageNo},#{pageSize},#{queryVO.outtotal,mode=OUT,jdbcType=INTEGER}
+			)
+	</select>
+
 	<select id="getWeekAndMonthAlarm" resultType="java.util.Map" statementType="CALLABLE" useCache="false">
 		call total_waring_data(#{loginName})
 	</select>

+ 4 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/SubRptContService.java

@@ -9,6 +9,7 @@ import com.rtrh.projects.modules.projects.enums.RptContKindEnum;
 import com.rtrh.projects.modules.projects.po.RptCont;
 import com.rtrh.projects.modules.projects.vo.*;
 import com.rtrh.projects.modules.system.vo.LoginUserVO;
+import org.springframework.web.bind.annotation.RequestBody;
 
 public interface SubRptContService {
 
@@ -17,6 +18,9 @@ public interface SubRptContService {
 	List<RptCont> getListBySubId(String subId, RptContKindEnum kind,Date startDate,Date endDate);
 
 	List<Map<String, Object>> ListQuery(String varkind, String varbegin, String varend, String vardesc, String varstatus, String varjsdd, String varlogin,Integer varpage, Integer varnum, Integer outtotal);
+
+	Page listQuery(Page page, RptContQueryVO queryVO);
+
 	List<Map<String,Object>> ListQueryWeekAndMonthAlarm(String loginName);
 
 	void saveReport(WeekContentVO vo, LoginUserVO loginUserVO, RptContKindEnum contKindEnum);

+ 9 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubRptContServiceImpl.java

@@ -98,6 +98,15 @@ public class SubRptContServiceImpl implements SubRptContService {
 		return data;
 	}
 
+	@Override
+	@TargetDataSource("secondary")
+	public Page listQuery(Page page, RptContQueryVO queryVO) {
+		List<Map<String, Object>> list =workbenchMapper.geYbFgwtList(queryVO, page.getPageNo(), page.getPageSize());
+		page.setList(list);
+		page.setTotalCount(queryVO.getOuttotal());
+		return page;
+	}
+
 	@Override
 	public List<Map<String, Object>> ListQueryWeekAndMonthAlarm(String loginName) {
 		return workbenchMapper.getWeekAndMonthAlarm(loginName);

+ 4 - 4
projects/src/main/java/com/rtrh/projects/web/controller/projects/api/ProWeekReportApiController.java

@@ -53,7 +53,7 @@ public class ProWeekReportApiController extends BaseController {
 	@Autowired
 	private WeekAndMonthFileService weekAndMonthFileService;
 
-	@PostMapping(value="/queryReport")
+	/*@PostMapping(value="/queryReport")
 	public ListMessage queryReport(@RequestBody Page page, @RequestBody RptContQueryVO queryVO) {
 		ListMessage message = new ListMessage();
 		queryVO.setVarlogin(getCurUser().getLoginName());
@@ -66,9 +66,9 @@ public class ProWeekReportApiController extends BaseController {
 			message.add(e.getMessage());
 		}
 		return message;
-	}
+	}*/
 
-	/*@PostMapping(value="/queryReport")
+	@PostMapping(value="/queryReport")
 	public ListMessage queryReport(@RequestBody Page page, @RequestBody RptContQueryVO queryVO) {
 		ListMessage message = new ListMessage();
 		try {
@@ -80,7 +80,7 @@ public class ProWeekReportApiController extends BaseController {
 			message.add(e.getMessage());
 		}
 		return message;
-	}*/
+	}
 
 	@PostMapping(value="/saveReport")
 	@Log("周报保存")

+ 15 - 1
projects/src/main/java/com/rtrh/projects/web/controller/projects/api/ProjMonthReportApiController.java

@@ -58,7 +58,7 @@ public class ProjMonthReportApiController extends BaseController {
 	private WeekAndMonthFileService weekAndMonthFileService;
 
 
-	@PostMapping(value="/queryReport")
+	/*@PostMapping(value="/queryReport")
 	public ListMessage queryReport(@RequestBody Page page, @RequestBody RptContQueryVO queryVO) {
 		ListMessage message = new ListMessage();
 		queryVO.setVarlogin(getCurUser().getLoginName());
@@ -71,6 +71,20 @@ public class ProjMonthReportApiController extends BaseController {
 			message.add(e.getMessage());
 		}
 		return message;
+	}*/
+
+	@PostMapping(value="/queryReport")
+	public ListMessage queryReport(@RequestBody Page page, @RequestBody RptContQueryVO queryVO) {
+		ListMessage message = new ListMessage();
+		try {
+			queryVO.setVarlogin(getCurUser().getLoginName());
+			Page pageData = subRptContService.listQuery(page, queryVO);
+			message.add(pageData.getList(), pageData.getTotalCount());
+		} catch (Exception e) {
+			logger.error("",e);
+			message.add(e.getMessage());
+		}
+		return message;
 	}
 
 	@PostMapping(value="/saveReport")

+ 2 - 2
projects/src/main/webapp/vmodules/project/weekReport.jsp

@@ -669,8 +669,8 @@
                     vardesc:$("[name='proName']").val(),
                     varstatus:$("[name='isDo']").val(),
                     varjsdd: $("[name='jsdd']").val(),
-                    varpage: self.pageNo,
-                    varnum: self.pageSize,
+                    pageNo: self.pageNo,
+                    pageSize: self.pageSize,
                     outtotal: 1,
 
                 };