项目维度 筛选标准

This commit is contained in:
yuezhihang
2021-08-13 18:28:28 +08:00
parent c660c36d40
commit 44a24c23b1
3 changed files with 29 additions and 10 deletions
@@ -24,4 +24,5 @@ public interface SarStandProjectLibraryDao extends BaseMapper<SarStandProjectLib
Integer selectCount(@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); Integer selectCount(@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag);
List<SarStandProjectLibrary> selectPagesWorkFlow(@Param("page")Integer page, @Param("size")Integer size,@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); List<SarStandProjectLibrary> selectPagesWorkFlow(@Param("page")Integer page, @Param("size")Integer size,@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag);
Integer selectCountWorkFlow(@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); Integer selectCountWorkFlow(@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag);
List<String> getAllStands();
} }
@@ -160,16 +160,31 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl<SarStandProje
} }
@Override @Override
public IPage<StandAttrInfoDto> queryStandInfo(int current, int pageSize, String standId) { public IPage<StandAttrInfoDto> queryStandInfo(int current, int pageSize, String standId) {
List<String> ids=sarStandProjectLibraryDao.getAllStands();
String id="";
for (String s:ids) {
id="'"+s+"',"+id;
}
QueryWrapper<SarStandardsInfo> wrapper1 = new QueryWrapper<>(); QueryWrapper<SarStandardsInfo> wrapper1 = new QueryWrapper<>();
wrapper1.select("ID","STAND_NUMBER","STAND_SORT","STAND_YEAR","STAND_NAME","STAND_EN_NAME","STAND_TYPE"); wrapper1.select("ID","STAND_NUMBER","STAND_SORT","STAND_YEAR","STAND_NAME","STAND_EN_NAME","STAND_TYPE");
wrapper1.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_standards_info.ID WHERE r.project_id ='"+ standId+"'"); if (ids.isEmpty()) {
wrapper1.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_standards_info.ID WHERE r.project_id ='" + standId + "'");
}else {
wrapper1.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_standards_info.ID WHERE r.project_id ='" + standId + "'" +
"and r.STAND_ID in (" + id.substring(0, id.length() - 1) + ")");
}
Page<SarStandardsInfo> page1 = new Page<>(current, pageSize); Page<SarStandardsInfo> page1 = new Page<>(current, pageSize);
IPage<SarStandardsInfo> userIPage1 = SarStandardsInfoDao.selectPage(page1, wrapper1); IPage<SarStandardsInfo> userIPage1 = SarStandardsInfoDao.selectPage(page1, wrapper1);
System.out.println("总条数"+userIPage1.getTotal()); System.out.println("总条数"+userIPage1.getTotal());
System.out.println("总页数"+userIPage1.getPages()); System.out.println("总页数"+userIPage1.getPages());
QueryWrapper<SarStandAttrInfo> wrapper2 = new QueryWrapper<>(); QueryWrapper<SarStandAttrInfo> wrapper2 = new QueryWrapper<>();
wrapper2.select("r.STAND_ID","SSRQ","XCXSSRQ","ZCCSSRQ","ZRBM","KCCVPPSBM","KCCVPPSCN","CYCVPPSBM","CYCVPPSCN"); wrapper2.select("r.STAND_ID","SSRQ","XCXSSRQ","ZCCSSRQ","ZRBM","KCCVPPSBM","KCCVPPSCN","CYCVPPSBM","CYCVPPSCN");
wrapper2.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_stand_attr_info.STAND_ID WHERE r.project_id ='"+ standId+"'"); if (ids.isEmpty()){
wrapper2.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_stand_attr_info.STAND_ID WHERE r.project_id ='"+ standId+"'");
}else {
wrapper2.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_stand_attr_info.STAND_ID WHERE r.project_id ='" + standId + "' " +
"and r.STAND_ID in (" + id.substring(0,id.length()-1) + ")");
}
Page<SarStandAttrInfo> page2 = new Page<>(current, pageSize); Page<SarStandAttrInfo> page2 = new Page<>(current, pageSize);
IPage<SarStandAttrInfo> userIPage2 = sarStandAttrInfoDao.selectPage(page2, wrapper2); IPage<SarStandAttrInfo> userIPage2 = sarStandAttrInfoDao.selectPage(page2, wrapper2);
System.out.println("总条数"+userIPage2.getTotal()); System.out.println("总条数"+userIPage2.getTotal());
@@ -148,11 +148,11 @@
LEFT JOIN ts_user tu ON project_manager = tu.USID LEFT JOIN ts_user tu ON project_manager = tu.USID
WHERE WHERE
( (
id IN ( SELECT DISTINCT project_id FROM sar_stand_project_relation WHERE project_id NOT in ( id IN ( SELECT DISTINCT project_id FROM sar_stand_project_relation WHERE project_id NOT in ( SELECT DISTINCT
SELECT DISTINCT project_id FROM sar_stand_project_relation WHERE stand_id NOT in (SELECT DISTINCT STAND_ID FROM STAND_ID FROM
sar_stand_items) sar_stand_items
) ) )
)
<if test="qu != null"> <if test="qu != null">
<if test="qu.projectNumber != null"> <if test="qu.projectNumber != null">
AND project_number LIKE concat(concat('%',#{qu.projectNumber}),'%') AND project_number LIKE concat(concat('%',#{qu.projectNumber}),'%')
@@ -203,9 +203,9 @@
LEFT JOIN ts_user tu ON project_manager = tu.USID LEFT JOIN ts_user tu ON project_manager = tu.USID
WHERE WHERE
( (
id IN ( SELECT DISTINCT project_id FROM sar_stand_project_relation WHERE project_id NOT in ( id IN ( SELECT DISTINCT project_id FROM sar_stand_project_relation WHERE project_id NOT in ( SELECT DISTINCT
SELECT DISTINCT project_id FROM sar_stand_project_relation WHERE stand_id NOT in (SELECT DISTINCT STAND_ID FROM STAND_ID FROM
sar_stand_items) sar_stand_items
)) ))
<if test="qu != null"> <if test="qu != null">
@@ -248,4 +248,7 @@
</if> </if>
) )
</select> </select>
<select id="getAllStands" resultType="java.lang.String">
SELECT DISTINCT STAND_ID FROM sar_stand_items
</select>
</mapper> </mapper>