liupeng 5 лет назад
Родитель
Сommit
283e3e61e9

+ 1 - 1
code/sapparent/sapcms/src/main/java/org/fouram/controller/ApiController.java

@@ -242,7 +242,7 @@ public class ApiController extends BaseController {
 			if (dto.getPageNumber() == null) {
 				return ResultUtil.error("参数pageNumber为空");
 			}
-			Object result = sapCheckService.findUserReports(dto.getStartDate(), dto.getEndDate(), dto.getDepartId(),
+			Object result = sapCheckService.findUserReportPage(dto.getStartDate(), dto.getEndDate(), dto.getDepartId(),
 					dto.getName(), dto.getState(), dto.getPageSize(), dto.getPageNumber());
 			return ResultUtil.success(result, "操作成功");
 		} catch (Exception e) {

+ 21 - 0
code/sapparent/sapservice/src/main/java/org/fouram/mapper/SapCheckMapper.xml

@@ -174,4 +174,25 @@
 			limit ${pageCurrent},${pageSize}
 		</if>
 	</select>
+	
+	<select id="findUserReportTotal" resultType="Long">
+		SELECT count(1) 
+		from sap_check_report a, sap_checkdate b, wx_user c 
+		where b.weekday = 1 and a.checkinDay=b.checkinDay and a.userId = c.userId
+		<if test="departId != null and departId != ''">
+			and (a.firstDepartId=#{departId} or a.secondDepartId=#{departId})
+		</if>
+		<if test="startDate != null and startDate != ''">
+			and a.checkinDay >= #{startDate} 
+		</if>
+		<if test="endDate != null and endDate != ''">
+			and a.checkinDay &lt;= #{endDate} 
+		</if>
+		<if test="name != null and name != ''">
+			and a.name like CONCAT(CONCAT('%', #{name}),'%')
+		</if>
+		<if test="state != null and state != ''">
+			and a.result = #{state} 
+		</if>
+	</select>
 </mapper>

+ 23 - 2
code/sapparent/sapservice/src/main/java/org/fouram/service/SapCheckService.java

@@ -215,8 +215,8 @@ public class SapCheckService extends BaseService {
 			Integer pageSize, Integer pageNumber) throws Exception {
 		List<Map<String, String>> list = findUserReports(startDate, endDate, departId, name, state, pageSize,
 				pageNumber);
-		List<Map<String, String>> totalList = findUserReports(startDate, endDate, departId, name, state, null, null);
-		return getPageResult(list, totalList.size());
+		Long total = findUserReportTotal(startDate, endDate, departId, name, state);
+		return getPageResult(list, total);
 	}
 
 	@SuppressWarnings("unchecked")
@@ -244,4 +244,25 @@ public class SapCheckService extends BaseService {
 		}
 		return (List<Map<String, String>>) findList("SapCheckMapper.findUserReports", pd);
 	}
+	
+	public Long findUserReportTotal(String startDate, String endDate, String departId, String name,
+			String state) throws Exception {
+		if (StringUtils.isNotBlank(departId) && departId.endsWith(",")) {
+			departId = departId.substring(0, departId.length() - 1);
+		}
+		if (StringUtils.isNotBlank(state)) {
+			if ("1".equals(state)) {
+				state = "正常";
+			} else {
+				state = "异常";
+			}
+		}
+		Map<String, String> pd = Maps.newHashMap();
+		pd.put("startDate", startDate);
+		pd.put("endDate", endDate);
+		pd.put("departId", departId);
+		pd.put("name", name);
+		pd.put("state", state);
+		return (Long) findObject("SapCheckMapper.findUserReportTotal", pd);
+	}
 }