Selaa lähdekoodia

Merge branch 'master' of https://git.jiinfo.cn/cmc-project/cmc_weixin_sap

liupeng 5 vuotta sitten
vanhempi
commit
6bf2cd4854

+ 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) {

+ 8 - 0
code/sapparent/sapservice/src/main/java/org/fouram/core/base/service/BaseService.java

@@ -13,6 +13,7 @@ import org.fouram.core.util.Tools;
 import org.fouram.entity.SapUser;
 import org.springframework.http.HttpHeaders;
 
+import com.alibaba.fastjson.JSONObject;
 import com.google.common.collect.Lists;
 
 /**
@@ -122,4 +123,11 @@ public abstract class BaseService {
 
 		return map;
 	}
+	
+	public static JSONObject getPageResult(List<? extends Object> list, Object total){
+		JSONObject object = new JSONObject();
+		object.put("totalRecords", total);// 实际的行数
+		object.put("data", list);// 要以JSON格式返回
+		return object;
+	}
 }

+ 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>

+ 7 - 4
code/sapparent/sapservice/src/main/java/org/fouram/mapper/WxUserMapper.xml

@@ -6,8 +6,10 @@
 	</select>
 
 	<insert id="save">
-		insert into wx_user(userId,name,departId,firstDepartName,firstDepartId,secondDepartName,secondDepartId,sapExists) 
-		values (#{userId},#{name},#{departId},#{firstDepartName},#{firstDepartId},#{secondDepartName},#{secondDepartId},'0')
+		insert into wx_user(userId,name,departId,firstDepartName,firstDepartId,
+			secondDepartName,secondDepartId,sapExists,delFlag) 
+		values (#{userId},#{name},#{departId},#{firstDepartName},#{firstDepartId},
+			#{secondDepartName},#{secondDepartId},'0','0')
 	</insert>
 	
 	<update id="updateAllDelete">
@@ -16,8 +18,9 @@
 	
 	<update id="update">
 		update wx_user 
-		set departId=#{departId},firstDepartName=#{firstDepartName},firstDepartId=#{firstDepartId},
-			secondDepartName=#{secondDepartName},secondDepartId=#{secondDepartId},delFlag=0
+		set name=#{name},departId=#{departId},firstDepartName=#{firstDepartName},
+			firstDepartId=#{firstDepartId},secondDepartName=#{secondDepartName},
+			secondDepartId=#{secondDepartId},delFlag=0
 		where userId=#{userId}
 	</update>
 	

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

@@ -17,6 +17,7 @@ import org.fouram.entity.SapEmployeeTime;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import com.alibaba.fastjson.JSONObject;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Sets;
 
@@ -211,8 +212,17 @@ public class SapCheckService extends BaseService {
 		return false;
 	}
 
-	public Object findUserReports(String startDate, String endDate, String departId, String name, String state,
+	public JSONObject findUserReportPage(String startDate, String endDate, String departId, String name, String state,
 			Integer pageSize, Integer pageNumber) throws Exception {
+		List<Map<String, String>> list = findUserReports(startDate, endDate, departId, name, state, pageSize,
+				pageNumber);
+		Long total = findUserReportTotal(startDate, endDate, departId, name, state);
+		return getPageResult(list, total);
+	}
+
+	@SuppressWarnings("unchecked")
+	public List<Map<String, String>> findUserReports(String startDate, String endDate, String departId, String name,
+			String state, Integer pageSize, Integer pageNumber) throws Exception {
 		if (StringUtils.isNotBlank(departId) && departId.endsWith(",")) {
 			departId = departId.substring(0, departId.length() - 1);
 		}
@@ -233,6 +243,27 @@ public class SapCheckService extends BaseService {
 			pd.put("pageCurrent", String.valueOf(pageSize * (pageNumber - 1)));
 			pd.put("pageSize", String.valueOf(pageSize));
 		}
-		return findList("SapCheckMapper.findUserReports", pd);
+		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);
 	}
 }

+ 1 - 1
code/sapparent/sapservice/src/main/resources/spring/mybatis-config.xml

@@ -12,7 +12,7 @@
 		<!-- 驼峰转换 -->
 		<setting name="mapUnderscoreToCamelCase" value="true"/>
 		<!-- 打印查询语句 -->
-		<setting name="logImpl" value="STDOUT_LOGGING" />
+		<!-- <setting name="logImpl" value="STDOUT_LOGGING" /> -->
 	</settings>
 
 	<typeAliases>