From 7bcd0d2d7510cb2ba67099cd768e1b2b6d047dc2 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 22 Feb 2024 17:16:27 +0800
Subject: [PATCH] 投票人员查询优化

---
 src/main/java/org/springblade/modules/system/controller/UserController.java |  128 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 125 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..881a73f 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;
@@ -42,6 +45,8 @@
 import org.springblade.core.tool.utils.StringPool;
 import org.springblade.core.tool.utils.StringUtil;
 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;
@@ -67,7 +72,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 +90,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 +132,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 +161,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 +184,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));
@@ -331,4 +378,79 @@
 		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 = "查询物业人员By小区id", notes = "houseCode")
+	public R getUserInfoByDistrictIds(@RequestParam("districtIds") String districtIds) {
+		return R.data(userService.getUserInfoByDistrictIds(districtIds));
+	}
+
+
+	/**
+	 * 通过机构查询物业公司人员
+	 */
+	@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("操作成功");
+	}
+
 }

--
Gitblit v1.9.3