Commit c819a8e6 authored by cq990612's avatar cq990612

优化代码结构

parent 86a84fc7
...@@ -38,7 +38,7 @@ public interface WorkTimeOrderMapper extends BaseMapper<WorkTimeOrder> { ...@@ -38,7 +38,7 @@ public interface WorkTimeOrderMapper extends BaseMapper<WorkTimeOrder> {
int updateStatusById(@Param("reviewerId") Integer reviewerId,@Param("id") Integer id,@Param("reason") String reason); int updateStatusById(@Param("reviewerId") Integer reviewerId,@Param("id") Integer id,@Param("reason") String reason);
List<WorkTimeOrder> queryByPage(@Param("status") Integer status, @Param("projectIds")List<Integer> projectIds, @Param("types") List<Integer> types); List<WorkTimeOrder> queryByPage(@Param("status") Integer status, @Param("projectId")Integer projectId, @Param("type")Integer type,@Param("deptId") Integer deptId);
/** /**
* 根据填报项目类型获取次数和工时汇总 * 根据填报项目类型获取次数和工时汇总
......
...@@ -112,20 +112,17 @@ ...@@ -112,20 +112,17 @@
FROM FROM
<include refid="table"/> <include refid="table"/>
<where> <where>
<if test="null != projectIds"> <if test="null != projectId">
AND project_id IN AND project_id = #{projectId}
<foreach collection="projectIds" item="projectId" open="(" close=")" separator=",">
#{projectId}
</foreach>
</if> </if>
<if test="null != status"> <if test="null != status">
AND status = #{status} AND status = #{status}
</if> </if>
<if test="null != types"> <if test="null != type">
AND type IN AND type = #{type}
<foreach collection="types" item="type" open="(" close=")" separator=","> </if>
#{type} <if test="null != type">
</foreach> AND dept_id = #{deptId}
</if> </if>
</where> </where>
ORDER BY work_day DESC ORDER BY work_day DESC
......
...@@ -888,22 +888,10 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -888,22 +888,10 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
PageHelper.startPage(page, size); PageHelper.startPage(page, size);
List<WorkTimeOrder> workTimeOrders = null; List<WorkTimeOrder> workTimeOrders = null;
Integer level = user.getLevel(); Integer level = user.getLevel();
List<Integer> types;
List<Integer> projectIds = new ArrayList<>();
if (0 != level) { if (0 != level) {
if (null == projectId) { Integer deptId = user.getDeptId();
List<ProjectDto> byManagerId = workProjectService.getByManagerId(user.getId()); workTimeOrders = workTimeOrderMapper.queryByPage(status, projectId, type,deptId);
if (!CollectionUtils.isEmpty(byManagerId)) {
for (ProjectDto projectDto : byManagerId) {
projectIds.add(projectDto.getId());
}
}
}
if (null != projectId) {
projectIds.add(projectId);
}
types = type == null ? Arrays.asList(1, 2, 5, 6, 7) : new ArrayList<>(Collections.singletonList(type));
workTimeOrders = workTimeOrderMapper.queryByPage(status, projectIds, types);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment