diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/table/ProjectPlanBookMapper.java b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/table/ProjectPlanBookMapper.java index 2ef1c55f953160109a94aaa141b22e2efdc2c86c..dfcbfca79e7f2051bf9208cf0efebc09e9a3afa6 100644 --- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/table/ProjectPlanBookMapper.java +++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/table/ProjectPlanBookMapper.java @@ -100,6 +100,7 @@ public interface ProjectPlanBookMapper extends BaseMapper<ProjectPlanBookPo> { * @param projectInfoPlanQry 椤圭洰瑙勫垝涔ry * @return {@link Page<ProjectInfoPlanDo>} */ + Page<ProjectInfoPlanDo> queryProjectInfoPlanPageByCurrentUserDept1(Page<ProjectPlanBookOut> page, @Param("pm") ProjectInfoPlanQry projectInfoPlanQry); Page<ProjectInfoPlanDo> queryProjectInfoPlanPageByCurrentUserDept(Page<ProjectPlanBookOut> page, @Param("pm") ProjectInfoPlanQry projectInfoPlanQry); Page<ProjectInfoPlanDo> queryProjectInfoPlanPageByCurrentUserDept2(Page<ProjectPlanBookOut> page, @Param("pm") ProjectInfoPlanQry projectInfoPlanQry); diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml index f9481c6dc968eee4341db9f6abc5a529a362c7f9..601d328831db15046df9bf54aa0aa08fdaeb12dd 100644 --- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml +++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml @@ -1593,4 +1593,77 @@ left join Budget_Quota_Test.dbo.template tb5 on tb4.FIPGR=tb5.code </if> </where> </select> + <select id="queryProjectInfoPlanPageByCurrentUserDept1" + resultType="com.seasky.projectplan.infrastructure.dataobject.co.ProjectInfoPlanDo"> + select + a.id, + a.year, + a.step_year, + a.project_name, + a.department_name, + a.department_code, + a.project_leader_id, + a.project_leader_name, + a.project_leader_code, + a.flow_id, + a.flow_type, + a.quota_money, + a.state, + a.plan_type, + a.project_library_id, + a.summary_json, + a.project_type, + a.quota_money2, + a.note, + a.second_quota_money, + a.project_daily_once_plan_id, + a.total_money, + a.xinghai_project_json, + a.project_plan_type, + a.remark + from + project_plan_book as a inner join plan_book_subject as c on a.id = c.plan_book_id and c.available = 'YES' and c.subject_name like concat('%','缁╂晥宸ヨ祫'.'%') + <where> + a.available = 'YES' + and a.plan_book_type = '1' + <if test="pm.year != null"> + and a.year = #{pm.year} + </if> + <if test="pm.projectName != null and pm.projectName != '' "> + and a.project_name like concat('%', #{pm.projectName}, '%') + </if> + <if test="pm.departmentName != null and pm.departmentName != '' "> + and a.department_name like concat('%', #{pm.departmentName}, '%') + </if> + <if test="pm.projectType != null and pm.projectType != '' "> + and a.project_type = #{pm.projectType} + </if> + <if test="pm.planType != null and pm.planType != '' "> + and a.plan_type = #{pm.planType} + </if> + <if test="pm.state != null and pm.state != '' "> + and a.state = #{pm.state} + </if> + <if test="pm.stepYear != null and pm.stepYear != '' "> + and a.step_year = #{pm.stepYear} + </if> + <if test="pm.projectPlanType != null and pm.projectPlanType != '' "> + and a.project_plan_type = #{pm.projectPlanType} + </if> + <if test="pm.deptCodeList != null and pm.deptCodeList.size() > 0"> + and a.department_code in + <foreach collection="pm.deptCodeList" item="dept" index="index" separator="," open="(" close=")"> + #{dept} + </foreach> + </if> + <if test="pm.projectTypeIds != null and pm.projectTypeIds.size() > 0"> + and a.project_type_id in + <foreach collection="pm.projectTypeIds" item="dept" index="index" separator="," open="(" close=")"> + #{dept} + </foreach> + </if> + </where> + order by + a.department_code asc + </select> </mapper> \ No newline at end of file diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java index 4070725bc46be1dd5a0419503e61e020138fdd24..922ef5b5bd41a58a905ec1b5007833a13af454a3 100644 --- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java +++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java @@ -275,7 +275,7 @@ public class ProjectPlanQueryServiceImpl extends AbstractService<ProjectPlanBook @Override public Pagination<ProjectPlanBookOut> queryAllProjectInfoPlanPage(ProjectInfoPlanQry projectInfoPlanQry) { Page<ProjectPlanBookOut> page = new Page<>(projectInfoPlanQry.getPageIndex(), projectInfoPlanQry.getPageSize()); - Page<ProjectInfoPlanDo> doList = mapper.queryProjectInfoPlanPageByCurrentUserDept(page, projectInfoPlanQry); + Page<ProjectInfoPlanDo> doList = mapper.queryProjectInfoPlanPageByCurrentUserDept1(page, projectInfoPlanQry); List<ProjectPlanBookOut> projectPlanBookOuts = ProjectPlanQueryConvert.infoDoToOutList(doList.getRecords()); for (ProjectPlanBookOut projectPlanBookOut : projectPlanBookOuts) { //褰撶敵鎶ラ」鐩墍灞炵被鍨嬩笉涓虹┖鏄紝璁剧疆鐢虫姤椤圭洰鎵€灞炵被鍨嬪悕瀛�