package com.youlai.boot.mini.controller; import com.youlai.boot.common.annotation.Log; import com.youlai.boot.common.enums.ActionTypeEnum; import com.youlai.boot.common.enums.LogModuleEnum; import com.youlai.boot.common.result.Result; import com.youlai.boot.framework.security.util.SecurityUtils; import com.youlai.boot.mini.model.form.MiniUserUpdateForm; import com.youlai.boot.mini.model.vo.MiniUserInfoVO; import com.youlai.boot.mini.service.MiniUserService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.*; /** * C端用户信息接口 * * @author youlai * @since 2024 */ @Tag(name = "C端用户信息接口") @RestController @RequestMapping("/api/v1/mini/user") @RequiredArgsConstructor @Valid public class MiniUserController { private final MiniUserService miniUserService; @Operation(summary = "获取当前登录用户基本信息") @GetMapping("/info") @Log(module = LogModuleEnum.USER, value = ActionTypeEnum.LIST) public Result getCurrentUserInfo() { Long userId = SecurityUtils.getUserId(); MiniUserInfoVO userInfo = miniUserService.getCurrentUserInfo(userId); return Result.success(userInfo); } @Operation(summary = "修改当前登录用户基本信息") @PostMapping(value = "/updateInfo", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) @Log(module = LogModuleEnum.USER, value = ActionTypeEnum.UPDATE) public Result updateCurrentUserInfo(@Valid MiniUserUpdateForm form) { Long userId = SecurityUtils.getUserId(); miniUserService.updateCurrentUserInfo(userId, form); return Result.success(); } }