parent
6d86e349ef
commit
a29fb12b8a
@ -0,0 +1,46 @@
|
||||
package cn.iocoder.mall.system.biz.enums.user;
|
||||
|
||||
import cn.iocoder.common.framework.core.IntArrayValuable;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @Author: jiangweifan
|
||||
* @Date: 2020/5/12
|
||||
* @Description: 用户状态枚举
|
||||
*/
|
||||
public enum UserStatusEnum implements IntArrayValuable {
|
||||
|
||||
ENABLED(1, "启用"),
|
||||
DISABLED(2, "禁用");
|
||||
|
||||
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(UserStatusEnum::getStatus).toArray();
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private final Integer status;
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private final String name;
|
||||
|
||||
UserStatusEnum(Integer status, String name) {
|
||||
this.status = status;
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] array() {
|
||||
return ARRAYS;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,54 @@
|
||||
package cn.iocoder.mall.system.rest.controller.admin;
|
||||
|
||||
import cn.iocoder.common.framework.constant.MallConstants;
|
||||
import cn.iocoder.common.framework.vo.CommonResult;
|
||||
import cn.iocoder.common.framework.vo.PageResult;
|
||||
import cn.iocoder.mall.system.biz.bo.user.UserBO;
|
||||
import cn.iocoder.mall.system.biz.service.user.UserService;
|
||||
import cn.iocoder.mall.system.rest.convert.admin.AdminsUserConvert;
|
||||
import cn.iocoder.mall.system.rest.request.admin.AdminsUserPageRequest;
|
||||
import cn.iocoder.mall.system.rest.request.admin.AdminsUserUpdateRequest;
|
||||
import cn.iocoder.mall.system.rest.request.admin.AdminsUserUpdateStatusRequest;
|
||||
import cn.iocoder.mall.system.rest.response.admin.AdminsUserPageResponse;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import static cn.iocoder.common.framework.vo.CommonResult.success;
|
||||
|
||||
/**
|
||||
* @Author: jiangweifan
|
||||
* @Date: 2020/5/12
|
||||
* @Description: 管理员 - 用户信息
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping(MallConstants.ROOT_PATH_ADMIN + "/user-info")
|
||||
@Api(tags = "管理员 - 用户信息 API")
|
||||
public class AdminsUserController {
|
||||
|
||||
@Autowired
|
||||
private UserService userService;
|
||||
|
||||
@GetMapping("/page")
|
||||
@ApiOperation(value = "用户分页列表")
|
||||
public CommonResult<PageResult<AdminsUserPageResponse>> page(AdminsUserPageRequest adminsUserPageRequest) {
|
||||
PageResult<UserBO> userPage = userService.getUserPage(AdminsUserConvert.INSTANCE.convertToPageDTO(adminsUserPageRequest));
|
||||
return success(AdminsUserConvert.INSTANCE.convertToPageResponse(userPage));
|
||||
}
|
||||
|
||||
@PostMapping("/update")
|
||||
@ApiOperation(value = "更新用户基本信息")
|
||||
public CommonResult<Boolean> update(AdminsUserUpdateRequest adminsUserUpdateRequest) {
|
||||
return success(userService.updateUserInfo(AdminsUserConvert.INSTANCE.convertToUpdateDTO(adminsUserUpdateRequest)));
|
||||
}
|
||||
|
||||
@PostMapping("/update_status")
|
||||
@ApiOperation(value = "更新用户状态")
|
||||
public CommonResult<Boolean> updateStatus(AdminsUserUpdateStatusRequest adminsUserUpdateStatusRequest) {
|
||||
return success(userService.updateUserStatus(AdminsUserConvert.INSTANCE.convertToUpdateStatusDTO(adminsUserUpdateStatusRequest)));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,52 @@
|
||||
package cn.iocoder.mall.system.rest.convert.admin;
|
||||
|
||||
import cn.iocoder.common.framework.vo.PageResult;
|
||||
import cn.iocoder.mall.system.biz.bo.user.UserBO;
|
||||
import cn.iocoder.mall.system.biz.dto.user.UserPageDTO;
|
||||
import cn.iocoder.mall.system.biz.dto.user.UserUpdateDTO;
|
||||
import cn.iocoder.mall.system.biz.dto.user.UserUpdateStatusDTO;
|
||||
import cn.iocoder.mall.system.rest.request.admin.AdminsUserPageRequest;
|
||||
import cn.iocoder.mall.system.rest.request.admin.AdminsUserUpdateRequest;
|
||||
import cn.iocoder.mall.system.rest.request.admin.AdminsUserUpdateStatusRequest;
|
||||
import cn.iocoder.mall.system.rest.response.admin.AdminsUserPageResponse;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
/**
|
||||
* @Author: jiangweifan
|
||||
* @Date: 2020/5/12
|
||||
* @Description: 管理后台 - 用户数据转换
|
||||
*/
|
||||
@Mapper
|
||||
public interface AdminsUserConvert {
|
||||
|
||||
AdminsUserConvert INSTANCE = Mappers.getMapper(AdminsUserConvert.class);
|
||||
|
||||
/**
|
||||
* 分页获取用户列表 - Request转DTO
|
||||
* @param adminsUserPageRequest
|
||||
* @return
|
||||
*/
|
||||
UserPageDTO convertToPageDTO(AdminsUserPageRequest adminsUserPageRequest);
|
||||
|
||||
/**
|
||||
* 更新用户信息 - Request转DTO
|
||||
* @param adminsUserUpdateRequest
|
||||
* @return
|
||||
*/
|
||||
UserUpdateDTO convertToUpdateDTO(AdminsUserUpdateRequest adminsUserUpdateRequest);
|
||||
|
||||
/**
|
||||
* 更新用户状态 - Request转DTO
|
||||
* @param adminsUserUpdateStatusRequest
|
||||
* @return
|
||||
*/
|
||||
UserUpdateStatusDTO convertToUpdateStatusDTO(AdminsUserUpdateStatusRequest adminsUserUpdateStatusRequest);
|
||||
|
||||
/**
|
||||
* 分页获取用户列表 - BO转Response
|
||||
* @param userPage
|
||||
* @return
|
||||
*/
|
||||
PageResult<AdminsUserPageResponse> convertToPageResponse(PageResult<UserBO> userPage);
|
||||
}
|
||||
@ -0,0 +1,29 @@
|
||||
package cn.iocoder.mall.system.rest.request.admin;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* @Author: jiangweifan
|
||||
* @Date: 2020/5/12
|
||||
* @Description: 管理员 - 用户信息 - 更新用户信息
|
||||
*/
|
||||
@ApiModel("更新用户信息Request")
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class AdminsUserUpdateRequest {
|
||||
|
||||
@ApiModelProperty(name = "id", value = "用户编号", required = true, example = "1")
|
||||
@NotNull(message = "用户编号不能为空")
|
||||
private Integer id;
|
||||
|
||||
@ApiModelProperty(name = "nickname", value = "昵称", required = true, example = "小王")
|
||||
private String nickname;
|
||||
|
||||
@ApiModelProperty(name = "avatar", value = "头像", required = true, example = "http://www.iocoder.cn/xxx.jpg")
|
||||
private String avatar;
|
||||
}
|
||||
Loading…
Reference in new issue