package com.example.caseData.controller; import com.example.caseData.common.Response; import com.example.caseData.config.EnvConfig; import com.example.caseData.dto.publicDto.GetOssSignDto; import com.example.caseData.dto.publicDto.LoginDto; import com.example.caseData.dto.user.UserDto; import com.example.caseData.extend.aliyun.Oss; import com.example.caseData.request.publicRequest.GetOssSignRequest; import com.example.caseData.request.publicRequest.LoginHcpRequest; import com.example.caseData.request.publicRequest.LoginRequest; import com.example.caseData.request.UserRequest.UserRequest; import com.example.caseData.service.UserService; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletRequest; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.Objects; @RestController @RequestMapping("/api") public class PublicController { @Resource private UserService userService; @Resource private HttpServletRequest httpServletRequest; @Resource private EnvConfig envConfig; // 登陆 @PostMapping("/login/wechat/mobile") public Response loginWechatMobile(@Validated({LoginRequest.Login.class}) @ModelAttribute LoginRequest request) { // 微信手机号授权登录 // 获取手机号 // 获取用户openid // 临时测试使用 String phone = "18221234167"; // 用户登陆 LoginDto g = userService.UserLoginWithMobile(phone); return Response.success(g); } // 登陆 @PostMapping("/login/hcp") public Response loginHcp(@Validated() @ModelAttribute LoginHcpRequest request) { // 用户登陆 LoginDto g = userService.UserLoginWithApp(request.getToken()); return Response.success(g); } // 获取签名 @GetMapping("/sign/oss") public Response GetOssSign( @Validated() @ModelAttribute GetOssSignRequest request ) { String userId = (String) httpServletRequest.getAttribute("userId"); String ossPath = "dev/"; if (Objects.equals(envConfig.getActive(), "prod")){ ossPath = "prod/"; } if (request.getScene() == 1){ ossPath = ossPath + "static/images/exchange/"; }else if (request.getScene() == 2){ ossPath = ossPath + "static/video/exchange/"; }else{ return Response.error(); } // 生成签名 GetOssSignDto g = Oss.getOssSign(ossPath); return Response.success(g); } }