package com.unisinsight.project.controller; import cn.hutool.json.JSONUtil; import com.unisinsight.project.entity.req.DeleteIdReq; import com.unisinsight.project.entity.req.DeviceUserReq; import com.unisinsight.project.entity.req.UserReq; import com.unisinsight.project.entity.res.ImageRes; import com.unisinsight.project.entity.res.PageResult; import com.unisinsight.project.entity.res.UserRes; import com.unisinsight.project.exception.BaseErrorCode; import com.unisinsight.project.exception.Result; import com.unisinsight.project.service.DeviceUserMappingService; import com.unisinsight.project.service.UserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.List; import java.util.Objects; /** * @description: UserController * @author: rdpnr_puzhi * @create: 2025/08/06 */ @Slf4j @RestController @RequestMapping("/api/nex/v1/user") @Api(tags = "用户处理Controller") public class UserController { @Resource private UserService userService; @Resource private DeviceUserMappingService deviceUserMappingService; @ApiOperation(value = "用户新增") @PostMapping("/add") public Result insertUser(@RequestBody UserReq userReq) { if (Objects.isNull(userReq)) { return Result.errorResult(BaseErrorCode.PARAMS_CHK_ERROR); } log.info("用户新增请求参数为:{}", JSONUtil.toJsonStr(userReq)); return userService.insert(userReq); } @ApiOperation(value = "用户修改") @PostMapping("/update") public Result updateUser(@RequestBody UserReq userReq) { if (Objects.isNull(userReq)) { return Result.errorResult(BaseErrorCode.PARAMS_CHK_ERROR); } log.info("用户修改请求参数为:{}", JSONUtil.toJsonStr(userReq)); return userService.update(userReq); } @ApiOperation(value = "用户查询") @PostMapping("/query") public Result queryUser(@RequestBody UserReq userReq) { if (Objects.isNull(userReq)) { return Result.errorResult(BaseErrorCode.PARAMS_CHK_ERROR); } log.info("用户查询请求参数为:{}", JSONUtil.toJsonStr(userReq)); return userService.query(userReq); } @ApiOperation(value = "用户删除") @PostMapping("/delete") public Result deleteUser(@RequestBody DeleteIdReq deleteIdReq) { if (Objects.isNull(deleteIdReq)) { return Result.errorResult(BaseErrorCode.PARAMS_CHK_ERROR); } log.info("用户删除请求参数为:{}", JSONUtil.toJsonStr(deleteIdReq)); return userService.delete(deleteIdReq); } @ApiOperation(value = "分页查询用户") @PostMapping("/select/page") public Result> selectPageUser(@RequestBody UserReq userReq) { if (Objects.isNull(userReq)) { return Result.errorResult(BaseErrorCode.PARAMS_CHK_ERROR); } log.info("分页查询用户请求参数为:{}", JSONUtil.toJsonStr(userReq)); return userService.selectPageUser(userReq); } @ApiOperation(value = "用户认证") @PostMapping("/auth") public Result> authentication(@RequestParam("deviceId") String deviceId) { if (Objects.isNull(deviceId)) { return Result.errorResult(BaseErrorCode.PARAMS_CHK_ERROR); } log.info("用户认证请求参数为:{}", deviceId); return Result.successResult(); } @ApiOperation(value = "用户登录") @PostMapping("/login") public Result loginUser(@RequestParam("deviceId") String deviceId, @RequestParam("username") String username, @RequestParam("password") String password) { if (Objects.isNull(deviceId) || Objects.isNull(username) || Objects.isNull(password)) { return Result.errorResult(BaseErrorCode.PARAMS_CHK_ERROR); } log.info("用户登录请求参数为,deviceId:{},username:{},password:{}", deviceId, username, password); DeviceUserReq deviceUserReq = new DeviceUserReq(); deviceUserReq.setDeviceId(deviceId); deviceUserReq.setUserName(username); deviceUserReq.setPassword(password); return deviceUserMappingService.loginUser(deviceUserReq); } }