From 9f8f9d13c42ca8cdccbf351069082a5fdccef2e4 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Mon, 25 Mar 2024 17:30:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/main/java/org/springblade/modules/system/controller/UserController.java | 148 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 145 insertions(+), 3 deletions(-)
diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java
index f081684..7874546 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -17,6 +17,9 @@
package org.springblade.modules.system.controller;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.PropertyNamingStrategy;
+import com.alibaba.fastjson.serializer.SerializeConfig;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -41,7 +44,10 @@
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringPool;
import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.modules.house.vo.HouseholdVO;
import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.excel.PoliceUserExcel;
+import org.springblade.modules.system.excel.PoliceUserImporter;
import org.springblade.modules.system.excel.UserExcel;
import org.springblade.modules.system.excel.UserImporter;
import org.springblade.modules.system.service.IUserService;
@@ -57,6 +63,7 @@
import java.util.List;
import java.util.Map;
+import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE;
import static org.springblade.core.cache.constant.CacheConstant.USER_CACHE;
/**
@@ -67,7 +74,7 @@
@NonDS
//@ApiIgnore
@RestController
-@RequestMapping(AppConstant.APPLICATION_SYSTEM_NAME+"/user")
+@RequestMapping(AppConstant.APPLICATION_SYSTEM_NAME + "/user")
@AllArgsConstructor
@Api(value = "用户管理", tags = "用户管理")
public class UserController {
@@ -85,6 +92,18 @@
public R<UserVO> detail(User user) {
User detail = userService.getOne(Condition.getQueryWrapper(user));
return R.data(UserWrapper.build().entityVO(detail));
+ }
+
+ @ApiOperationSupport(order = 1)
+ @ApiOperation(value = "查看详情返回String", notes = "传入id")
+ @GetMapping("/details")
+// @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+ public R<String> details(User user) {
+ UserVO detail = userService.getuserById(user.getId());
+ SerializeConfig config = new SerializeConfig();
+ config.propertyNamingStrategy = PropertyNamingStrategy.SnakeCase;
+ String json1 = JSON.toJSONString(detail, config);
+ return R.data(json1);
}
/**
@@ -115,6 +134,24 @@
return R.data(UserWrapper.build().pageVO(pages));
}
+ @GetMapping("/searchUser")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "搜索用户", notes = "传入name")
+ @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+ public R<List<UserVO>> searchUser(@ApiIgnore User user, Query query, String deptId, BladeUser bladeUser) {
+ IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
+ return R.data(UserWrapper.build().listVO(pages.getRecords()));
+ }
+
+ @GetMapping("/searchUserByDistrictId")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "通过小区Id搜索用户", notes = "传入districtId")
+ // @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+ public R<List<UserVO>> searchUserByDistrictId(String districtId) {
+ List<User> resutl = userService.searchUserByDistrictId(districtId);
+ return R.data(UserWrapper.build().listVO(resutl));
+ }
+
/**
* 自定义用户列表
*/
@@ -126,9 +163,21 @@
@ApiOperationSupport(order = 3)
@ApiOperation(value = "列表", notes = "传入account和realName")
// @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
- public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
+ public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, String deptId, BladeUser bladeUser) {
IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
return R.data(UserWrapper.build().pageVO(pages));
+ }
+
+
+ /**
+ * 按条件查询用户信息
+ *
+ * @param user
+ * @return
+ */
+ @GetMapping("/getUserListByParam")
+ public R getUserListByParam(UserVO user) {
+ return R.data(userService.getUserListByParam(user));
}
/**
@@ -137,7 +186,7 @@
@PostMapping("/submit")
@ApiOperationSupport(order = 4)
@ApiOperation(value = "新增或修改", notes = "传入User")
- @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+ @PreAuth("hasAnyRole('administrator', 'admin','wygly')")
public R submit(@Valid @RequestBody User user) {
CacheUtil.clear(USER_CACHE);
return R.status(userService.submit(user));
@@ -151,6 +200,7 @@
@ApiOperation(value = "修改", notes = "传入User")
public R update(@Valid @RequestBody User user) {
CacheUtil.clear(USER_CACHE);
+ CacheUtil.clear(SYS_CACHE);
return R.status(userService.updateUser(user));
}
@@ -331,4 +381,96 @@
return R.success("操作成功");
}
+ /**
+ * 获取用户信息
+ *
+ * @return
+ */
+ @GetMapping("/getUserInfo")
+ public R getUserInfo() {
+ //根据保安员编码查询保安员信息
+ return R.data(userService.getUserInfo(AuthUtil.getUserId()));
+ }
+
+ /**
+ * 修改
+ */
+ @GetMapping("/getUserInfoByCode")
+ @ApiOperation(value = "查询物业人员/网格人员", notes = "houseCode")
+ public R getUserInfoByCode(@RequestParam("houseCode") String houseCode, @RequestParam(value = "type", defaultValue = "2") String type) {
+ return R.data(userService.getUserInfoByCode(houseCode, type));
+ }
+
+
+ /**
+ * 通过小区id查询物业人员/网格人员
+ */
+ @GetMapping("/getUserInfoByDistrictId")
+ @ApiOperation(value = "查询物业人员/网格人员", notes = "houseCode")
+ public R getUserInfoByDistrictId(@RequestParam("districtId") String districtId, @RequestParam(value = "building", required = false) String building) {
+ return R.data(userService.getUserInfoByDistrictId(districtId, building));
+ }
+
+ /**
+ * 通过小区id查询用户
+ */
+ @GetMapping("/getUserInfoByDistrictIds")
+ @ApiOperation(value = "通过小区id查询用户")
+ public R<IPage<HouseholdVO>> getUserInfoByDistrictIds(@RequestParam("districtIds") String districtIds
+ , @RequestParam(value = "building", required = false) String building
+ , @RequestParam(value = "unit", required = false) String unit
+ , @RequestParam(value = "name", required = false) String name
+ , Query query) {
+ IPage<HouseholdVO> pages = userService.getUserInfoByDistrictIds(districtIds, building, unit, name, Condition.getPage(query));
+ return R.data(pages);
+ }
+
+
+ /**
+ * 通过机构查询物业公司人员
+ */
+ @GetMapping("/getUserInfoByPropertyCompanyId")
+ @ApiOperation(value = "通过机构查询物业公司人员", notes = "propertyCompanyId")
+ public R getUserInfoByPropertyId(@RequestParam("propertyCompanyId") String propertyCompanyId, @RequestParam("roleId") String roleId) {
+ return R.data(userService.getUserInfoByPropertyId(propertyCompanyId, roleId));
+ }
+
+ /**
+ * 处理漏绑定的user_dept
+ */
+ @GetMapping("/handleUserDept")
+ public R handleUserDept() {
+ return R.data(userService.handleUserDept());
+ }
+
+ /**
+ * 处理漏绑定的user_dept
+ */
+ @GetMapping("/handleUser")
+ public R handleUser() {
+ return R.data(userService.handleUser());
+ }
+
+
+ /**
+ * 民警数据导入
+ */
+ @PostMapping("/policemanDataHandle")
+ public R policemanDataHandle(MultipartFile file) {
+ PoliceUserImporter policeUserImporter = new PoliceUserImporter(userService);
+ ExcelUtil.save(file, policeUserImporter, PoliceUserExcel.class);
+ return R.success("操作成功");
+ }
+
+ /**
+ * 通过经纬度查询最近的民警人员
+ * longitude
+ * latitude
+ */
+ @GetMapping("/getPoliceUser")
+ @ApiOperation(value = "通过经纬度查询最近的民警人员")
+ public R getPoliceUser(@RequestParam("longitude") String longitude, @RequestParam(value = "latitude") String latitude, @RequestParam(value = "houseCode", required = false) String houseCode) {
+ return R.data(userService.getPoliceUser(longitude, latitude, houseCode));
+ }
+
}
--
Gitblit v1.9.3