Administrator
2025-05-19 9b51a95fa8bc9b3a86108c6900e17fc55f8db467
src/main/java/cc/mrbird/febs/mall/controller/CommonController.java
@@ -2,20 +2,22 @@
import cc.mrbird.febs.common.annotation.ControllerEndpoint;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.enumerates.CommonDictionaryEnum;
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.utils.*;
import cc.mrbird.febs.mall.dto.AccountAndCodeDto;
import cc.mrbird.febs.mall.dto.Base64UploadDto;
import cc.mrbird.febs.mall.entity.DataDictionaryCustom;
import cc.mrbird.febs.mall.service.ICommonService;
import cc.mrbird.febs.mall.vo.ScoreSignVo;
import cc.mrbird.febs.mall.vo.common.ApiCommonSetVo;
import cc.mrbird.febs.mall.vo.common.ApiIndexSetVo;
import cn.hutool.core.io.file.FileNameUtil;
import cn.hutool.core.lang.UUID;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.thoughtworks.xstream.core.BaseException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.*;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import net.coobird.thumbnailator.Thumbnails;
@@ -189,6 +191,84 @@
        return new FebsResponse().success().data(dic);
    }
    @ApiOperation(value = "小程序系统公共设置")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiCommonSetVo.class)
    })
    @GetMapping(value = "/commonSet")
    public FebsResponse commonSet() {
        ApiCommonSetVo apiCommonSetVo = new ApiCommonSetVo();
        String graySet = commonService.getDicByTypeAndCode(
                CommonDictionaryEnum.GRAY_SET.getType(),
                CommonDictionaryEnum.GRAY_SET.getCode()
        );
        if (graySet == null) {
            graySet = "0";
        }
        apiCommonSetVo.setGrayState(graySet);
        return new FebsResponse().success().data(apiCommonSetVo);
    }
    @ApiOperation(value = "小程序开屏页设置")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiIndexSetVo.class)
    })
    @GetMapping(value = "/indexSet")
    public FebsResponse indexSet() {
        ApiIndexSetVo apiIndexSetVo = new ApiIndexSetVo();
        String pngUrl = commonService.getDicByTypeAndCode(
                CommonDictionaryEnum.PNG_URL_INDEX.getType(),
                CommonDictionaryEnum.PNG_URL_INDEX.getCode()
        );
        if (pngUrl == null) {
            pngUrl = "";
        }
        apiIndexSetVo.setPngUrl(pngUrl);
        String timeStop = commonService.getDicByTypeAndCode(
                CommonDictionaryEnum.TIME_URL_INDEX.getType(),
                CommonDictionaryEnum.TIME_URL_INDEX.getCode()
        );
        if (timeStop == null) {
            timeStop = "3";
        }
        apiIndexSetVo.setTimeStop(timeStop);
        return new FebsResponse().success().data(apiIndexSetVo);
    }
    @ApiOperation(value = "base64FileUpload上传")
    @PostMapping(value = "/base64FileUpload")
    public Map<String,Object> base64FileUpload(@RequestBody @Validated MultipartFile file) throws IOException {
        if (file == null || file.isEmpty()) {
            return new FebsResponse().message("上传文件为空").fail();
        }
        try {
            byte[] fileBytes = file.getBytes();
            String base64Str = java.util.Base64.getEncoder().encodeToString(fileBytes);
            String imageSuffix = "." + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".") + 1);
            String imageNames = System.currentTimeMillis() + IdUtil.simpleUUID() + imageSuffix;
            String imageName = "hc/" + imageNames;
            OssUtils.uploadFileWithBase64(base64Str, imageName);
            String bucket_name = "https://excoin.oss-cn-hangzhou.aliyuncs.com";
            String url = bucket_name + "/" + imageName;
            Map<String,Object> map = new HashMap<String,Object>();
            Map<String,Object> map2 = new HashMap<String,Object>();
            map2.put("src",url);//图片url
            map2.put("title",imageNames);//图片名称,这个会显示在输入框里
            map.put("code",0);//0表示成功,1失败
            map.put("msg","上传成功");//提示消息
            map.put("data",map2);
            return map;
        } catch (IOException e) {
            log.error("上传失败: {}", e.getMessage());
            return new FebsResponse().message("上传失败").fail();
        }
    }
    @ApiOperation(value = "base64上传")
    @PostMapping(value = "/base64Upload")
    public FebsResponse base64Upload(@RequestBody @Validated Base64UploadDto base64UploadDto) {
@@ -199,7 +279,7 @@
        String imageFuffix = ".jpg";
        String imageNames = System.currentTimeMillis() + IdUtil.simpleUUID() + imageFuffix;
        String imageName = "uploadeFile/" + imageNames;
        String imageName = "hc/" + imageNames;
        OssUtils.uploadFileWithBase64(base64Str, imageName);
        String bucket_name ="https://excoin.oss-cn-hangzhou.aliyuncs.com";
        String url = bucket_name + "/" + imageName;