From b672d835f9314c10a8fd949e309816ee766df22b Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 27 七月 2023 10:49:50 +0800 Subject: [PATCH] 修改发布清单的分页查询接口,添加数据目录、数据类别参数 --- src/main/java/com/lf/server/service/data/PublishService.java | 10 +++-- src/main/java/com/lf/server/controller/data/PublishController.java | 39 ++++++++++++++++++- src/main/java/com/lf/server/mapper/data/PublishMapper.java | 16 +++++--- src/main/resources/mapper/data/PublishMapper.xml | 18 ++++++++- 4 files changed, 68 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/lf/server/controller/data/PublishController.java b/src/main/java/com/lf/server/controller/data/PublishController.java index 137c5ed..7d45cc5 100644 --- a/src/main/java/com/lf/server/controller/data/PublishController.java +++ b/src/main/java/com/lf/server/controller/data/PublishController.java @@ -133,22 +133,25 @@ @ApiOperation(value = "鍒嗛〉鏌ヨ骞惰繑鍥炶褰曟暟") @ApiImplicitParams({ @ApiImplicitParam(name = "name", value = "鍚嶇О", dataType = "String", paramType = "query", example = ""), + @ApiImplicitParam(name = "dircode", value = "鐩綍", dataType = "String", paramType = "query", example = ""), + @ApiImplicitParam(name = "type", value = "绫诲埆", dataType = "String", paramType = "query", example = ""), @ApiImplicitParam(name = "pageSize", value = "姣忛〉鏉℃暟", dataType = "Integer", paramType = "query", example = "10"), @ApiImplicitParam(name = "pageIndex", value = "鍒嗛〉鏁帮紙浠�1寮�濮嬶級", dataType = "Integer", paramType = "query", example = "1") }) @GetMapping(value = "/selectByPageAndCount") - public ResponseMsg<List<PublishEntity>> selectByPageAndCount(String name, Integer pageSize, Integer pageIndex) { + public ResponseMsg<List<PublishEntity>> selectByPageAndCount(String name, String dircode, String type, Integer pageSize, Integer pageIndex) { try { if (pageSize < 1 || pageIndex < 1) { return fail("姣忛〉椤垫暟鎴栧垎椤垫暟灏忎簬1", null); } + type = getPubType(type); - int count = publishService.selectCount(name); + int count = publishService.selectCount(name, dircode, type); if (count == 0) { return success(0, null); } - List<PublishEntity> rs = publishService.selectByPage(name, pageSize, pageSize * (pageIndex - 1)); + List<PublishEntity> rs = publishService.selectByPage(name, dircode, type, pageSize, pageSize * (pageIndex - 1)); return success(count, rs); } catch (Exception ex) { @@ -156,6 +159,36 @@ } } + /** + * 鑾峰彇鍙戝竷绫诲瀷 + */ + private String getPubType(String type) { + if (StringHelper.isEmpty(type)) { + return null; + } + + switch (type) { + case "DOM": + return "type = 'DOM'"; + case "DEM": + return "type = 'DEM'"; + case "MPT": + return "type = 'mpt'"; + case "3DML": + return "type = '3dml'"; + case "CPT": + return "type = 'cpt'"; + case "BIM": + return "type in ('ifc', 'fbx', 'rvt')"; + case "LAS": + return "type in ('las', 'laz')"; + case "OSGB": + return "type = 'osgb'"; + default: + return null; + } + } + @SysLog() @ApiOperation(value = "鏍规嵁ID鏌ヨ") @ApiImplicitParams({ diff --git a/src/main/java/com/lf/server/mapper/data/PublishMapper.java b/src/main/java/com/lf/server/mapper/data/PublishMapper.java index 042f634..1086c56 100644 --- a/src/main/java/com/lf/server/mapper/data/PublishMapper.java +++ b/src/main/java/com/lf/server/mapper/data/PublishMapper.java @@ -17,20 +17,24 @@ /** * 鏌ヨ璁板綍鏁� * - * @param name 鍚嶇О + * @param name 鍚嶇О + * @param dircode 鐩綍缂栫爜 + * @param type 绫诲埆 * @return 璁板綍鏁� */ - public Integer selectCount(String name); + public Integer selectCount(String name, String dircode, String type); /** * 鍒嗛〉鏌ヨ * - * @param name 鍚嶇О - * @param limit 璁板綍鏁� - * @param offset 鍋忕Щ閲� + * @param name 鍚嶇О + * @param dircode 鐩綍缂栫爜 + * @param type 绫诲埆 + * @param limit 璁板綍鏁� + * @param offset 鍋忕Щ閲� * @return 鍒楄〃 */ - public List<PublishEntity> selectByPage(String name, Integer limit, Integer offset); + public List<PublishEntity> selectByPage(String name, String dircode, String type, Integer limit, Integer offset); /** * 鏌ヨ鎵�鏈� diff --git a/src/main/java/com/lf/server/service/data/PublishService.java b/src/main/java/com/lf/server/service/data/PublishService.java index 3ea8815..5137f56 100644 --- a/src/main/java/com/lf/server/service/data/PublishService.java +++ b/src/main/java/com/lf/server/service/data/PublishService.java @@ -47,17 +47,19 @@ private final static Log log = LogFactory.getLog(PublishService.class); @Override - public Integer selectCount(String name) { + public Integer selectCount(String name, String dircode, String type) { name = StringHelper.getLikeUpperStr(name); + dircode = StringHelper.getRightLike(dircode); - return publishMapper.selectCount(name); + return publishMapper.selectCount(name, dircode, type); } @Override - public List<PublishEntity> selectByPage(String name, Integer limit, Integer offset) { + public List<PublishEntity> selectByPage(String name, String dircode, String type, Integer limit, Integer offset) { name = StringHelper.getLikeUpperStr(name); + dircode = StringHelper.getRightLike(dircode); - return publishMapper.selectByPage(name, limit, offset); + return publishMapper.selectByPage(name, dircode, type, limit, offset); } @Override diff --git a/src/main/resources/mapper/data/PublishMapper.xml b/src/main/resources/mapper/data/PublishMapper.xml index 17ce303..2b0d68a 100644 --- a/src/main/resources/mapper/data/PublishMapper.xml +++ b/src/main/resources/mapper/data/PublishMapper.xml @@ -48,8 +48,15 @@ <select id="selectCount" resultType="java.lang.Integer"> select count(*) from lf.sys_publish <where> + 1 = 1 <if test="name != null"> - upper(name) like #{name} + and upper(name) like #{name} + </if> + <if test="dircode != null"> + and dirid like #{dircode} + </if> + <if test="type != null"> + and ${type} </if> </where> </select> @@ -58,8 +65,15 @@ select ST_AsText(geom) "geom", a.*, fn_get_fullname(a.depid, 1) depName, fn_get_fullname(a.dirid, 2) dirName, fn_uname(create_user) createName, fn_uname(update_user) updateName from lf.sys_publish a <where> + 1 = 1 <if test="name != null"> - upper(name) like #{name} + and upper(name) like #{name} + </if> + <if test="dircode != null"> + and dirid like #{dircode} + </if> + <if test="type != null"> + and ${type} </if> </where> order by id desc -- Gitblit v1.9.3