FileController.java 2.05 KB
Newer Older
张辰's avatar
张辰 committed
1 2
package com.tanpu.community.controller;

张辰's avatar
张辰 committed
3
import com.fasterxml.jackson.core.type.TypeReference;
张辰's avatar
张辰 committed
4
import com.tanpu.common.api.CommonResp;
张辰's avatar
张辰 committed
5 6
import com.tanpu.common.auth.AuthLogin;
import com.tanpu.common.auth.UserHolder;
张辰's avatar
张辰 committed
7 8
import com.tanpu.common.util.JsonUtil;
import com.tanpu.community.api.beans.qo.ThemeQo;
刘基明's avatar
刘基明 committed
9
import com.tanpu.community.api.beans.resp.FileUploadResp;
张辰's avatar
张辰 committed
10
import com.tanpu.community.api.enums.OssDirEnum;
张辰's avatar
张辰 committed
11
import com.tanpu.community.cache.RedisCache;
张辰's avatar
张辰 committed
12
import com.tanpu.community.manager.FileManager;
张辰's avatar
张辰 committed
13
import com.tanpu.community.service.RankLogService;
张辰's avatar
张辰 committed
14 15
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
张辰's avatar
张辰 committed
16
import org.springframework.cache.caffeine.CaffeineCacheManager;
张辰's avatar
张辰 committed
17 18 19
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

张辰's avatar
张辰 committed
20
import javax.annotation.Resource;
张辰's avatar
张辰 committed
21 22 23
import java.util.Arrays;
import java.util.List;

张辰's avatar
张辰 committed
24 25 26 27 28 29 30 31
@RestController
@Slf4j
@RequestMapping(value = "/api/file")
public class FileController {

    @Autowired
    private FileManager fileManager;

张辰's avatar
张辰 committed
32 33 34
    @Autowired
    private RankLogService rankLogService;

张辰's avatar
张辰 committed
35 36
    @Resource
    private UserHolder userHolder;
张辰's avatar
张辰 committed
37

张辰's avatar
张辰 committed
38 39
    @PostMapping("/uploadFile")
    @ResponseBody
张辰's avatar
张辰 committed
40
    @AuthLogin
刘基明's avatar
刘基明 committed
41
    public CommonResp<FileUploadResp> uploadToRemote(@RequestParam(value = "file") MultipartFile file) {
张辰's avatar
张辰 committed
42 43 44 45 46 47 48 49 50 51
        String userId = userHolder.getUserId();
        return CommonResp.success(fileManager.uploadFile(file, OssDirEnum.Others, userId));
    }

    @PostMapping("/uploadThemePic")
    @ResponseBody
    @AuthLogin
    public CommonResp<FileUploadResp> uploadThemePic(@RequestParam(value = "file") MultipartFile file) {
        String userId = userHolder.getUserId();
        return CommonResp.success(fileManager.uploadFile(file, OssDirEnum.Theme_Pic, userId));
张辰's avatar
张辰 committed
52
    }
张辰's avatar
张辰 committed
53

张辰's avatar
张辰 committed
54 55 56 57 58 59 60 61
    @GetMapping("/clearRankLog")
    public String clearRankLog() {
        Thread t = new Thread(new Runnable() {
            @Override
            public void run() {
                rankLogService.clearRankLog();
            }
        });
张辰's avatar
张辰 committed
62

张辰's avatar
张辰 committed
63 64
        t.start();
        return "success";
张辰's avatar
张辰 committed
65
    }
张辰's avatar
张辰 committed
66
}