package com.doumee.api.web; import com.doumee.core.annotation.LoginRequired; import com.doumee.core.annotation.trace.Trace; import com.doumee.core.model.ApiResponse; import com.doumee.dao.business.model.Member; import com.doumee.dao.dto.UpdMobileRequest; import com.doumee.dao.vo.UserCenterVO; import com.doumee.service.business.MemberService; import com.doumee.service.business.SmsrecordService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2025/7/10 9:29 */ @Api(tags = "2、用户信息") @Trace(exclude = true) @RestController @RequestMapping("/web/member") @Slf4j public class MemberApi extends ApiController{ @Autowired private MemberService memberService; @Autowired private SmsrecordService smsrecordService; @LoginRequired @ApiOperation(value = "获取个人信息", notes = "小程序端") @GetMapping("/getMemberInfo") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse getMemberInfo() { return ApiResponse.success("查询成功",memberService.getMemberInfo(getMemberId())); } @LoginRequired @ApiOperation(value = "编辑个人信息", notes = "小程序端") @PostMapping("/editMemberInfo") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse editMemberInfo(@RequestBody Member member) { member.setId(getMemberId()); memberService.editMemberInfo(member); return ApiResponse.success("操作成功"); } @LoginRequired @ApiOperation(value = "发送短信验证码", notes = "小程序端") @GetMapping("/sendSmsCode") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "phone", value = "手机号码", required = true) }) public ApiResponse sendSmsCode(@RequestParam String phone) { smsrecordService.sendSms(getMemberId(),phone); return ApiResponse.success("操作成功"); } @LoginRequired @ApiOperation(value = "验证短信验证码", notes = "小程序端") @GetMapping("/verifyCode") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "phone", value = "手机号码", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "code", value = "验证码", required = true) }) public ApiResponse verifyCode(@RequestParam String phone,@RequestParam String code) { smsrecordService.verifyCode(getMemberId(),phone,code); return ApiResponse.success("操作成功"); } @LoginRequired @ApiOperation("验证手机号") @PostMapping("/verifyUserPhone") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse verifyUserPhone(@RequestBody UpdMobileRequest request) { request.setMemberId(getMemberId()); memberService.verifyUserPhone(request); return ApiResponse.success("操作成功"); } @LoginRequired @ApiOperation("更换绑定手机号") @PostMapping("/updateUserPhone") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse updateUserPhone(@RequestBody UpdMobileRequest request) { request.setMemberId(getMemberId()); memberService.updateUserPhone(request); return ApiResponse.success("操作成功"); } }