From 1fc5eb0f49503520ee7dc3bd717c965011625b27 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Tue, 19 Dec 2023 15:11:41 +0800
Subject: [PATCH] 新增地址查询详情接口(判断是否有权限查看),场所信息查询新增条件
---
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml | 5 ++
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java | 7 +++
src/main/java/org/springblade/modules/doorplateAddress/service/IDoorplateAddressService.java | 5 ++
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java | 5 ++
src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java | 30 +++++++++++++++
src/main/java/org/springblade/modules/doorplateAddress/controller/DoorplateAddressController.java | 8 ++++
src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java | 10 +++++
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml | 8 +++
8 files changed, 76 insertions(+), 2 deletions(-)
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/controller/DoorplateAddressController.java b/src/main/java/org/springblade/modules/doorplateAddress/controller/DoorplateAddressController.java
index 737af5f..aef1f56 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/controller/DoorplateAddressController.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/controller/DoorplateAddressController.java
@@ -64,6 +64,14 @@
}
/**
+ * 门牌地址表(总台账数据) 自定义详情
+ */
+ @GetMapping("/getDetail")
+ public R getDetail(DoorplateAddressVO doorplateAddress) {
+ return R.data(doorplateAddressService.getDetail(doorplateAddress));
+ }
+
+ /**
* 门牌地址表(总台账数据) 分页
*/
@GetMapping("/list")
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
index 47c4f02..017bc4b 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
@@ -196,4 +196,11 @@
* @return
*/
List<DoorplateAddressEntity> getPlaceList();
+
+ /**
+ * 查询详情
+ * @param doorplateAddress
+ * @return
+ */
+ DoorplateAddressVO getDoorplateAddressVODetail(@Param("doorplateAddress") DoorplateAddressVO doorplateAddress);
}
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
index 641c412..235dcfa 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
+++ b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -454,4 +454,9 @@
)
) a on jda.id = a.id
</select>
+
+ <!--查询所有的地址表和场所表差集集合(小区和非小区的)-->
+ <select id="getDoorplateAddressVODetail" resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO">
+ select jda.* from jczz_doorplate_address jda where address_code = #{doorplateAddress.addressCode}
+ </select>
</mapper>
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/service/IDoorplateAddressService.java b/src/main/java/org/springblade/modules/doorplateAddress/service/IDoorplateAddressService.java
index 07577f6..038dba5 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/service/IDoorplateAddressService.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/service/IDoorplateAddressService.java
@@ -110,4 +110,9 @@
* @return
*/
Object placeDataHandle();
+
+ /**
+ * 门牌地址表(总台账数据) 自定义详情
+ */
+ Object getDetail(DoorplateAddressVO doorplateAddress);
}
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java b/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
index ec84d7a..530a69f 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -706,4 +706,34 @@
// 返回
return null;
}
+
+ /**
+ * 门牌地址表(总台账数据) 自定义详情
+ */
+ @Override
+ public Object getDetail(DoorplateAddressVO doorplateAddress) {
+ List<String> list = new ArrayList<>();
+ // 扫码时调用,需判断是否有权限查看
+ DoorplateAddressVO one = baseMapper.getDoorplateAddressVODetail(doorplateAddress);
+ if (null!=one){
+ if (!Strings.isBlank(doorplateAddress.getRoleName())) {
+ // 判断是否有权限
+ if (doorplateAddress.getRoleName().equals("网格员")) {
+ list = gridService.getAddressCodeListByUserId(AuthUtil.getUserId());
+ boolean contains = list.contains(doorplateAddress.getAddressCode());
+ if (list.size()==0 || !contains){
+ // 无权限
+ one.setIsJur(2);
+ }else {
+ one.setIsJur(1);
+ }
+ }else {
+ // 不限制
+ one.setIsJur(1);
+ }
+ }
+ return one;
+ }
+ return null;
+ }
}
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java b/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java
index 663bf19..1430d3e 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/vo/DoorplateAddressVO.java
@@ -31,5 +31,15 @@
//对应address_code
private String stdId;
+ /**
+ * roleName
+ */
+ private String roleName;
+
+ /**
+ * 是否有权限 1:是 2:否
+ */
+ private Integer isJur;
+
}
diff --git a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
index 5eb0894..2f8844e 100644
--- a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
+++ b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -29,7 +29,7 @@
) b on a.id = b.id
) jppl on jppl.place_id = jp.id
where jp.is_deleted = 0
- <if test="place.roleName!=null and place.roleName!=''">
+ <if test="place.roleName!=null and place.roleName!='' and place.createUser!=null">
<choose>
<when test="place.roleName=='网格员'">
and
@@ -57,6 +57,12 @@
<if test="place.principalPhone!=null and place.principalPhone!=''">
and jp.principal_phone like concat('%',#{place.principalPhone},'%')
</if>
+ <if test="place.houseCode!=null and place.houseCode!=''">
+ and jp.house_code = #{place.houseCode}
+ </if>
+ <if test="place.id!=null">
+ and jp.id = #{place.id}
+ </if>
<if test="place.isPerfect==1">
and
(
diff --git a/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java b/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
index 004b686..119b81b 100644
--- a/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
+++ b/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -84,9 +84,12 @@
if (place.getRoleName().equals("网格员")){
// 查询对应的房屋地址code
list = gridService.getAddressCodeListByUserId(AuthUtil.getUserId());
+ place.setCreateUser(AuthUtil.getUserId());
+ }
+ if (!place.getRoleName().equals("系统管理员")){
+ place.setCreateUser(AuthUtil.getUserId());
}
}
- place.setCreateUser(AuthUtil.getUserId());
return page.setRecords(baseMapper.selectPlacePage(page, place,list));
}
--
Gitblit v1.9.3