lisy
2023-07-12 2e21f2b0c99a2f2ab9aa22000472896e229db328
使用福利:上传用户头像接口
4个文件已修改
1个文件已添加
84 ■■■■■ 已修改文件
cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/model/vo/userBenefitDetail/IndexOfUserBenefirVo.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/util/OssUploadUtil.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java
@@ -17,8 +17,10 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.List;
@@ -98,6 +100,26 @@
    }
    @ResponseBody
    @PostMapping("/api/useBenefit/uploadImage")
    @ApiOperation(value = "上传用户头像", tags = {"APP-使用福利"})
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
            @ApiImplicitParam(name = "file",value = "图片字节",dataType = "MultipartFile")
    })
    public ResultUtil uploadAppUserProfile(MultipartFile file, HttpServletRequest request){
        try {
            Integer appUserId = tokenUtil.getUserIdFormRedis();
            if(null == appUserId){
                return ResultUtil.tokenErr();
            }
            return ResultUtil.success(tauService.uploadAppUserHeadImg(appUserId,file,request));
        }catch (Exception e){
            return ResultUtil.runErr();
        }
    }
    @ResponseBody
    @PostMapping("/api/useBenefit/cancellation")
cloud-server-account/src/main/java/com/dsh/account/model/vo/userBenefitDetail/IndexOfUserBenefirVo.java
@@ -16,7 +16,7 @@
    @ApiModelProperty(value = "用户名称")
    private String userName;
    @ApiModelProperty(value = "是否年度会员")
    @ApiModelProperty(value = "是否年度会员(字符:年度会员 或者 普通用户)")
    private String isMember;
    @ApiModelProperty(value = "玩湃币")
cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
@@ -9,7 +9,9 @@
import com.dsh.account.model.vo.classDetails.classInsVo.ClassInfoVo;
import com.dsh.account.model.vo.userBenefitDetail.*;
import com.dsh.account.util.ResultUtil;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
@@ -120,4 +122,6 @@
    PointMallDetailsResponse queryAppUserIntegral(MallRequest request, Integer userIdFormRedis);
    ResultUtil uploadAppUserHeadImg(Integer appUserId, MultipartFile file, HttpServletRequest request);
}
cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
@@ -45,8 +45,11 @@
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -691,4 +694,18 @@
        return detailsResponse;
    }
    @Override
    public ResultUtil uploadAppUserHeadImg(Integer appUserId, MultipartFile file, HttpServletRequest request) {
        try {
            String filePath = OssUploadUtil.ossUpload(request,file);
            TAppUser tAppUser = this.baseMapper.selectById(appUserId);
            tAppUser.setHeadImg(filePath);
            this.baseMapper.updateById(tAppUser);
        } catch (IOException e) {
            ResultUtil.error("头像上传失败!");
        }
        return ResultUtil.success();
    }
}
cloud-server-account/src/main/java/com/dsh/account/util/OssUploadUtil.java
New file
@@ -0,0 +1,39 @@
package com.dsh.account.util;
import com.aliyun.oss.OSSClient;
import com.aliyun.oss.model.ObjectMetadata;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.io.InputStream;
import java.util.UUID;
public class OssUploadUtil {
    //OSS图片访问域名
    public static String oss_domain = "https://newok.oss-cn-shenzhen.aliyuncs.com/";
    public static String accessKeyId = "LTAI4G9Zez9H4B36vakPXGy4";
    public static String accessKeySecret = "BOVPUeZndKVbrPOq6Ef5j6oiydB3XZ";
    public static String bucketName="newok";
    public static String endpoint = "oss-cn-shenzhen.aliyuncs.com";
    public static OSSClient ossClient = new OSSClient(endpoint, accessKeyId,accessKeySecret);
    public static String ossUpload(HttpServletRequest request, MultipartFile file) throws IOException{
        //CommonsMultipartFile file = (CommonsMultipartFile)multipartFile;
        String fileName = "";
            if(file!=null && !"".equals(file.getOriginalFilename()) && file.getOriginalFilename()!=null){
                InputStream content = file.getInputStream();//获得指定文件的输入流
                ObjectMetadata meta = new ObjectMetadata();// 创建上传Object的Metadata
                meta.setContentLength(file.getSize());  // 必须设置ContentLength
                String originalFilename = file.getOriginalFilename();
                fileName =  UUID.randomUUID().toString().replaceAll("-","") + originalFilename.subSequence(originalFilename.lastIndexOf("."), originalFilename.length());
                ossClient.putObject(bucketName,"img/"+fileName,content,meta);// 上传Object.
                if(fileName != null && !"".equals(fileName)){
                    System.out.println(fileName);
                    fileName = oss_domain+"img/"+fileName;
                }
            }
        return fileName;
    }
}