package com.caimei.controller.admin.sys; import com.caimei.annotation.CurrentUser; import com.caimei.model.ResponseJson; import com.caimei.model.po.SysUser; import com.caimei.service.sys.SysUserService; import com.github.pagehelper.PageInfo; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; /** * Description * * @author : Charles * @date : 2021/12/2 */ @RestController @RequestMapping("/sys/user") public class SysUserApi { @Resource private SysUserService sysUserService; /** * 获取用户信息 */ @GetMapping("/info") public ResponseJson getUserInfo(@CurrentUser SysUser sysUser) { // String token = request.getHeader(ConstantKey.TOKEN_NAME); // String username = jwtService.getUsername(token); if (null == sysUser) { return ResponseJson.error("用户信息异常", null); } // 获取用户信息,直接取id即可 Integer authUserId = sysUser.getId(); if (null == authUserId) { return ResponseJson.error("供应商用户id不能为空", null); } return sysUserService.getInfoByUserId(authUserId); } /** * 退出登录 */ /*@PostMapping("/logout") public ResponseJson logout(HttpServletRequest request) { String token = request.getHeader(ConstantKey.TOKEN_NAME); return sysUserService.logout(token); }*/ /** * 获取用户列表 * * @param username 用户名 * @param linkMan 姓名 * @param pageNum 页码 * @param pageSize 每页大小 */ @GetMapping("/list") public ResponseJson> userList(@CurrentUser SysUser sysUser, String username, String linkMan, @RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "10") int pageSize) { if (null == sysUser) { return ResponseJson.error("用户信息异常", null); } // 获取供应商用户id Integer userIdentity = sysUser.getUserIdentity(); Integer authUserId = 2 == userIdentity ? sysUser.getId() : 3 == userIdentity ? sysUser.getParentId() : null; return sysUserService.getUserList(authUserId, username, linkMan, pageNum, pageSize); } /** * 根据ID获取用户 */ @GetMapping("/{id}") public ResponseJson getUser(@PathVariable("id") Integer id) { if (null == id || id <= 0) { return ResponseJson.error("用户Id不能为空!", null); } return sysUserService.getUser(id); } /** * 根据ID更新用户 */ @PostMapping("/update/{id}") public ResponseJson updateUser(@PathVariable("id") Integer id, @RequestBody SysUser sysUser) { if (null == id || id <= 0) { return ResponseJson.error("用户Id不能为空!", null); } return sysUserService.updateUser(id, sysUser); } /** * 添加管理员/供应商子用户 */ @PostMapping("/create") public ResponseJson createUser(@CurrentUser SysUser currentUser, @RequestBody SysUser sysUser) { if (null == currentUser) { return ResponseJson.error("用户信息异常", null); } Integer userIdentity = currentUser.getUserIdentity(); sysUser.setUserIdentity(1 == userIdentity ? 1 : 3); sysUser.setParentId(1 == userIdentity ? 1 : 2 == userIdentity ? currentUser.getId() : currentUser.getParentId()); sysUser.setCreateBy(currentUser.getId()); return sysUserService.createUser(sysUser); } /** * 根据ID删除用户 */ @PostMapping("/delete/{id}") public ResponseJson deleteUser(@PathVariable("id") Integer id) { if (null == id || id <= 0) { return ResponseJson.error("用户Id不能为空!", null); } return sysUserService.deleteUser(id); } /** * 根据ID更新用户状态 */ @PostMapping("/status/update/{id}") public ResponseJson updateUserStatus(@PathVariable("id") Integer id, @RequestBody SysUser sysUser) { if (null == id || id <= 0) { return ResponseJson.error("用户Id不能为空!", null); } if (null == sysUser || null == sysUser.getStatus()) { return ResponseJson.error("用户状态不能为空!", null); } return sysUserService.updateUserStatus(id, sysUser.getStatus()); } /* *//** * 用户修改资料 *//* @PostMapping("/update/profile") public ResponseJson updateUserProfile( @RequestBody UserProfile profile) { if (null == profile.getUserId() || profile.getUserId()<= 0) { return ResponseJson.error("用户Id不能为空!", null); } return sysUserService.updateUserProfile(profile); } *//** * 用户修改密码 *//* @PostMapping("/update/password") public ResponseJson updateUserPassword( @RequestBody UserProfile profile) { if (null == profile.getUserId() || profile.getUserId()<= 0) { return ResponseJson.error("用户Id不能为空!", null); } return sysUserService.updateUserPassword(profile); }*/ }