From 8b7258c9427882bb1798f1502eaa35184c6e374e Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 09 Aug 2024 14:29:18 +0800
Subject: [PATCH] 短信指定楼栋发送

---
 src/main/java/org/springblade/modules/system/controller/UserController.java |   85 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 77 insertions(+), 8 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 01f7529..da5ab3b 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -27,9 +27,12 @@
 import io.swagger.annotations.*;
 import lombok.AllArgsConstructor;
 import org.springblade.common.cache.CacheNames;
+import org.springblade.common.param.ToObject;
 import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.launch.constant.AppConstant;
+import org.springblade.core.log.annotation.ApiLog;
+import org.springblade.core.log.logger.BladeLogger;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.redis.cache.BladeRedis;
@@ -40,11 +43,14 @@
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
 import org.springblade.core.tool.constant.RoleConstant;
+import org.springblade.core.tool.jackson.JsonUtil;
 import org.springblade.core.tool.utils.DateUtil;
 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.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;
@@ -60,6 +66,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;
 
 /**
@@ -77,6 +84,7 @@
 
 	private final IUserService userService;
 	private final BladeRedis bladeRedis;
+	private final BladeLogger bladeLogger;
 
 	/**
 	 * 查询单条
@@ -124,8 +132,8 @@
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "列表", notes = "传入account和realName")
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
-	public R<IPage<UserVO>> list(@ApiIgnore @RequestParam Map<String, Object> user, Query query, BladeUser bladeUser) {
-		QueryWrapper<User> queryWrapper = Condition.getQueryWrapper(user, User.class);
+	public R<IPage<UserVO>> list(@ApiIgnore User user, Query query, BladeUser bladeUser) {
+		QueryWrapper<User> queryWrapper = Condition.getQueryWrapper(user);
 		IPage<User> pages = userService.page(Condition.getPage(query), (!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(User::getTenantId, bladeUser.getTenantId()) : queryWrapper);
 		return R.data(UserWrapper.build().pageVO(pages));
 	}
@@ -134,7 +142,7 @@
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "搜索用户", notes = "传入name")
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
-	public R<List<UserVO>> searchUser(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
+	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()));
 	}
@@ -159,7 +167,9 @@
 	@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) {
+	@ApiLog("自定义用户列表")
+	public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, String deptId, BladeUser bladeUser) {
+		bladeLogger.info("自定义用户列表", JsonUtil.toJson(user));
 		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));
 	}
@@ -181,9 +191,11 @@
 	 */
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 4)
+	@ApiLog("新增或修改")
 	@ApiOperation(value = "新增或修改", notes = "传入User")
 	@PreAuth("hasAnyRole('administrator', 'admin','wygly')")
 	public R submit(@Valid @RequestBody User user) {
+		bladeLogger.info("新增或修改", JsonUtil.toJson(user));
 		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.submit(user));
 	}
@@ -193,9 +205,12 @@
 	 */
 	@PostMapping("/update")
 	@ApiOperationSupport(order = 5)
+	@ApiLog("修改")
 	@ApiOperation(value = "修改", notes = "传入User")
 	public R update(@Valid @RequestBody User user) {
+		bladeLogger.info("修改", JsonUtil.toJson(user));
 		CacheUtil.clear(USER_CACHE);
+		CacheUtil.clear(SYS_CACHE);
 		return R.status(userService.updateUser(user));
 	}
 
@@ -206,7 +221,9 @@
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "删除", notes = "传入id集合")
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@ApiLog("删除")
 	public R remove(@RequestParam String ids) {
+		bladeLogger.info("删除", JsonUtil.toJson(ids));
 		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.removeUser(ids));
 	}
@@ -216,10 +233,12 @@
 	 */
 	@PostMapping("/grant")
 	@ApiOperationSupport(order = 7)
+	@ApiLog("设置菜单权限")
 	@ApiOperation(value = "权限设置", notes = "传入roleId集合以及menuId集合")
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R grant(@ApiParam(value = "userId集合", required = true) @RequestParam String userIds,
 				   @ApiParam(value = "roleId集合", required = true) @RequestParam String roleIds) {
+		bladeLogger.info("设置菜单权限", JsonUtil.toJson(userIds));
 		boolean temp = userService.grant(userIds, roleIds);
 		return R.status(temp);
 	}
@@ -230,8 +249,10 @@
 	@PostMapping("/reset-password")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "初始化密码", notes = "传入userId集合")
+	@ApiLog("重置密码")
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R resetPassword(@ApiParam(value = "userId集合", required = true) @RequestParam String userIds) {
+		bladeLogger.info("重置密码", JsonUtil.toJson(userIds));
 		boolean temp = userService.resetPassword(userIds);
 		return R.status(temp);
 	}
@@ -241,10 +262,12 @@
 	 */
 	@PostMapping("/update-password")
 	@ApiOperationSupport(order = 9)
+	@ApiLog("修改密码")
 	@ApiOperation(value = "修改密码", notes = "传入密码")
 	public R updatePassword(BladeUser user, @ApiParam(value = "旧密码", required = true) @RequestParam String oldPassword,
 							@ApiParam(value = "新密码", required = true) @RequestParam String newPassword,
 							@ApiParam(value = "新密码", required = true) @RequestParam String newPassword1) {
+		bladeLogger.info("修改密码", JsonUtil.toJson(ToObject.toMap("oldPassword:" + oldPassword, "newPassword:" + newPassword, "newPassword1:" + newPassword1)));
 		boolean temp = userService.updatePassword(user.getUserId(), oldPassword, newPassword, newPassword1);
 		return R.status(temp);
 	}
@@ -253,9 +276,11 @@
 	 * 修改基本信息
 	 */
 	@PostMapping("/update-info")
+	@ApiLog("自定义用户列表")
 	@ApiOperationSupport(order = 10)
 	@ApiOperation(value = "修改基本信息", notes = "传入User")
 	public R updateInfo(@Valid @RequestBody User user) {
+		bladeLogger.info("修改基本信息", JsonUtil.toJson(user));
 		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.updateUserInfo(user));
 	}
@@ -277,6 +302,7 @@
 	 */
 	@PostMapping("import-user")
 	@ApiOperationSupport(order = 12)
+	@ApiLog("导入用户")
 	@ApiOperation(value = "导入用户", notes = "传入excel")
 	public R importUser(MultipartFile file, Integer isCovered) {
 		UserImporter userImporter = new UserImporter(userService, isCovered == 1);
@@ -288,15 +314,20 @@
 	 * 导出用户
 	 */
 	@GetMapping("export-user")
+	@ApiLog("导出用户")
 	@ApiOperationSupport(order = 13)
 	@ApiOperation(value = "导出用户", notes = "传入user")
 	public void exportUser(@ApiIgnore @RequestParam Map<String, Object> user, BladeUser bladeUser, HttpServletResponse response) {
+		bladeLogger.info("导出用户", JsonUtil.toJson(bladeUser));
+		String deptId = (String) user.get("deptId");
+		// 置空
+		user.put("deptId", "");
 		QueryWrapper<User> queryWrapper = Condition.getQueryWrapper(user, User.class);
 		if (!AuthUtil.isAdministrator()) {
 			queryWrapper.lambda().eq(User::getTenantId, bladeUser.getTenantId());
 		}
 		queryWrapper.lambda().eq(User::getIsDeleted, BladeConstant.DB_NOT_DELETED);
-		List<UserExcel> list = userService.exportUser(queryWrapper);
+		List<UserExcel> list = userService.exportUser(queryWrapper, deptId);
 		ExcelUtil.export(response, "用户数据" + DateUtil.time(), "用户数据表", list, UserExcel.class);
 	}
 
@@ -366,8 +397,10 @@
 	 */
 	@PostMapping("/unlock")
 	@ApiOperationSupport(order = 19)
+	@ApiLog("用户解锁")
 	@ApiOperation(value = "账号解锁", notes = "传入id")
 	public R unlock(String userIds) {
+		bladeLogger.info("用户解锁", JsonUtil.toJson(userIds));
 		if (StringUtil.isBlank(userIds)) {
 			return R.fail("请至少选择一个用户");
 		}
@@ -378,10 +411,11 @@
 
 	/**
 	 * 获取用户信息
+	 *
 	 * @return
 	 */
 	@GetMapping("/getUserInfo")
-	public R getUserInfo(){
+	public R getUserInfo() {
 		//根据保安员编码查询保安员信息
 		return R.data(userService.getUserInfo(AuthUtil.getUserId()));
 	}
@@ -411,8 +445,8 @@
 	 */
 	@GetMapping("/getUserInfoByPropertyCompanyId")
 	@ApiOperation(value = "通过机构查询物业公司人员", notes = "propertyCompanyId")
-	public R getUserInfoByPropertyId(@RequestParam("propertyCompanyId") String propertyCompanyId,@RequestParam("roleId") String roleId) {
-		return R.data(userService.getUserInfoByPropertyId(propertyCompanyId,roleId));
+	public R getUserInfoByPropertyId(@RequestParam("propertyCompanyId") String propertyCompanyId, @RequestParam("roleId") String roleId) {
+		return R.data(userService.getUserInfoByPropertyId(propertyCompanyId, roleId));
 	}
 
 	/**
@@ -431,4 +465,39 @@
 		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")
+	@ApiLog("通过经纬度查询最近的民警人员")
+	@ApiOperation(value = "通过经纬度查询最近的民警人员")
+	public R getPoliceUser(@RequestParam("longitude") String longitude, @RequestParam(value = "latitude") String latitude, @RequestParam(value = "houseCode", required = false) String houseCode) {
+		bladeLogger.info("通过经纬度查询最近的民警人员", JsonUtil.toJson(ToObject.toMap("longitude:" + longitude, "latitude:" + latitude, "houseCode:" + houseCode)));
+		return R.data(userService.getPoliceUser(longitude, latitude, houseCode));
+	}
+
+
+	/**
+	 * 注册用户
+	 */
+	@PostMapping("/register-user")
+	@ApiOperationSupport(order = 15)
+	@ApiOperation(value = "注册用户", notes = "传入user")
+	public R registerUser(@RequestBody UserVO user ) {
+		return R.status(userService.registerUser(user ));
+	}
+
 }

--
Gitblit v1.9.3