2021与蓝度共同重构项目,服务端
liuhaonan
2022-01-14 d3883dd2040c6f983cf6c975250c7618c9b34d05
功能完善
已添加5个文件
已修改5个文件
201 ■■■■ 文件已修改
dao/src/main/java/com/sandu/ximon/dao/domain/FileOperationRecord.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/java/com/sandu/ximon/dao/domain/LedSFile.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/java/com/sandu/ximon/dao/mapper/FileOperationRecordMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/resources/mapper/FileOperationRecordMapper.xml 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/resources/mapper/LedSFileMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sandu-common/src/main/java/com/sandu/common/file/impl/AliOssFileServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LedSFileController.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/FileOperationRecordService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedSFileService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/test/java/com/sandu/ximon/admin/tests/LedSFileControllerTests.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/java/com/sandu/ximon/dao/domain/FileOperationRecord.java
对比新文件
@@ -0,0 +1,66 @@
package com.sandu.ximon.dao.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
/**
 * 鏂囦欢鎿嶄綔璁板綍
 * @TableName file_operation_record
 */
@TableName(value ="file_operation_record")
@Data
public class FileOperationRecord implements Serializable {
    /**
     *
     */
    @TableId(type = IdType.AUTO)
    private Long fileId;
    /**
     * 鍘熷鍚嶇О
     */
    private String originName;
    /**
     * 鏂囦欢url
     */
    private String fileUrl;
    /**
     * 鏂囦欢绫诲瀷
     */
    private String fileType;
    /**
     * 鏂囦欢澶у皬
     */
    private Long fileSize;
    /**
     * 鍥剧墖楂樺害
     */
    private Integer height;
    /**
     * 鍥剧墖瀹藉害
     */
    private Integer width;
    /**
     *
     */
    private LocalDateTime createTime;
    /**
     * 鏂囦欢鍚嶇О
     */
    private String fileName;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
dao/src/main/java/com/sandu/ximon/dao/domain/LedSFile.java
@@ -34,7 +34,7 @@
    /**
     * 鏂囦欢鍚嶇О
     */
    private String originname;
    private String originName;
    /**
     * 鏂囦欢url
dao/src/main/java/com/sandu/ximon/dao/mapper/FileOperationRecordMapper.java
对比新文件
@@ -0,0 +1,17 @@
package com.sandu.ximon.dao.mapper;
import com.sandu.ximon.dao.domain.FileOperationRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
 * @Entity com.sandu.ximon.dao.domain.FileOperationRecord
 */
@Mapper
public interface FileOperationRecordMapper extends BaseMapper<FileOperationRecord> {
}
dao/src/main/resources/mapper/FileOperationRecordMapper.xml
对比新文件
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.sandu.ximon.dao.mapper.FileOperationRecordMapper">
    <resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.FileOperationRecord">
            <id property="fileId" column="file_id" jdbcType="BIGINT"/>
            <result property="originName" column="origin_name" jdbcType="VARCHAR"/>
            <result property="fileUrl" column="file_url" jdbcType="VARCHAR"/>
            <result property="fileType" column="file_type" jdbcType="VARCHAR"/>
            <result property="fileSize" column="file_size" jdbcType="BIGINT"/>
            <result property="height" column="height" jdbcType="INTEGER"/>
            <result property="width" column="width" jdbcType="INTEGER"/>
            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
            <result property="fileName" column="file_name" jdbcType="VARCHAR"/>
    </resultMap>
    <sql id="Base_Column_List">
        file_id,origin_name,file_url,
        file_type,file_size,height,
        width,create_time,file_name
    </sql>
</mapper>
dao/src/main/resources/mapper/LedSFileMapper.xml
@@ -8,7 +8,7 @@
            <id property="fileId" column="file_id" jdbcType="BIGINT"/>
            <result property="cilentId" column="cilent_id" jdbcType="BIGINT"/>
            <result property="userName" column="user_name" jdbcType="VARCHAR"/>
            <result property="originname" column="originName" jdbcType="VARCHAR"/>
            <result property="originName" column="origin_name" jdbcType="VARCHAR"/>
            <result property="fileUrl" column="file_url" jdbcType="VARCHAR"/>
            <result property="fileType" column="file_type" jdbcType="VARCHAR"/>
            <result property="fileSize" column="file_size" jdbcType="BIGINT"/>
@@ -19,7 +19,7 @@
    <sql id="Base_Column_List">
        file_id,cilent_id,user_name,
        originName,file_url,file_type,
        origin_name,file_url,file_type,
        file_size,height,width,
        create_time
    </sql>
sandu-common/src/main/java/com/sandu/common/file/impl/AliOssFileServiceImpl.java
@@ -45,7 +45,7 @@
        long size = multipartFile.getSize();
        String suffix = FileUtil.getSuffix(originalFilename);
        String dayStr = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmm"));
        String fileName = dayStr + UUID.fastUUID().toString() + "." + suffix;
        String fileName = dayStr + UUID.fastUUID()+ "." + suffix;
        FileUploadDto uploadDto = new FileUploadDto();
        OSS ossClient = new OSSClientBuilder().build(endPoint, keyId, keySecret);
@@ -102,6 +102,7 @@
                uploadDto.setHeight(img.getHeight());
            }
        }
        return uploadDto;
    }
}
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LedSFileController.java
@@ -3,16 +3,17 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageHelper;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.file.FileUploadDto;
import com.sandu.common.file.impl.AliOssFileServiceImpl;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.util.ResponseUtil;
import com.sandu.ximon.admin.param.LEDProgramFileParam;
import com.sandu.ximon.admin.service.LEDProgramFileService;
import com.sandu.ximon.admin.service.FileOperationRecordService;
import com.sandu.ximon.admin.service.LedSFileService;
import com.sandu.ximon.dao.domain.LEDProgramFile;
import com.sandu.ximon.dao.domain.FileOperationRecord;
import com.sandu.ximon.dao.domain.LedSFile;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -24,21 +25,21 @@
@Slf4j
@RestController
@AllArgsConstructor
@RequestMapping("/v1/file")
@RequestMapping("/v1/xixun/file")
public class LedSFileController {
    private final LedSFileService ledProgramFileService;
    private final AliOssFileServiceImpl aliOssFileService;
    private final FileOperationRecordService fileOperationRecordService;
    @PostMapping("/add")
    public ResponseVO<Object> addLEDProgram(@RequestParam("file") MultipartFile file) {
        //return ResponseUtil.success(ledProgramFileService.addProgramFile(file));
        return ResponseUtil.success(aliOssFileService.uploadFile(file));
        return ResponseUtil.success(ledProgramFileService.addProgramFile(file));
//        return ResponseUtil.success(aliOssFileService.uploadFile(file));
    }
  /*  @PostMapping("/delete/{fileId}")
    @PostMapping("/delete/{fileId}")
    public ResponseVO<Object> deleteLEDProgram(@PathVariable Long fileId) {
        return ResponseUtil.success(ledProgramFileService.deleteFile(fileId));
    }
@@ -46,10 +47,19 @@
    @GetMapping("/list")
    public ResponseVO<Object> listfile(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        LambdaQueryWrapper<LEDProgramFile> wrapper = ledProgramFileService.listFile();
        LambdaQueryWrapper<LedSFile> wrapper = ledProgramFileService.listFile();
        if (null != keyword) {
            wrapper.like(LEDProgramFile::getName, keyword);
            wrapper.like(LedSFile::getOriginName, keyword);
        }
        return ResponseUtil.successPage(ledProgramFileService.list(wrapper));
    }*/
        return ResponseUtil.success(ledProgramFileService.list(wrapper));
    }
    @PostMapping("/uploading")
    public ResponseVO<Object> uploadingFile(@RequestParam("file") MultipartFile file) {
        FileUploadDto fileUploadDto = aliOssFileService.uploadFile(file);
        FileOperationRecord fileOperationRecord = new FileOperationRecord();
        BeanUtils.copyProperties(fileUploadDto, fileOperationRecord);
        return ResponseUtil.success(fileOperationRecordService.save(fileOperationRecord));
    }
}
ximon-admin/src/main/java/com/sandu/ximon/admin/service/FileOperationRecordService.java
对比新文件
@@ -0,0 +1,17 @@
package com.sandu.ximon.admin.service;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.ximon.dao.domain.FileOperationRecord;
import com.sandu.ximon.dao.mapper.FileOperationRecordMapper;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
/**
 * @Author liuhaonan
 * @Date 2022/1/13 18:18
 * @Version 1.0
 */
@Service
@AllArgsConstructor
public class FileOperationRecordService extends BaseServiceImpl<FileOperationRecordMapper, FileOperationRecord> {
}
ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedSFileService.java
@@ -6,9 +6,8 @@
import com.sandu.common.file.FileUploadDto;
import com.sandu.common.file.impl.AliOssFileServiceImpl;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.ximon.admin.param.LEDProgramFileParam;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.dao.domain.LEDProgramFile;
import com.sandu.ximon.dao.domain.FileOperationRecord;
import com.sandu.ximon.dao.domain.LedSFile;
import com.sandu.ximon.dao.mapper.LedSFileMapper;
import lombok.AllArgsConstructor;
@@ -26,18 +25,22 @@
public class LedSFileService extends BaseServiceImpl<LedSFileMapper, LedSFile> {
    private final LedSFileMapper ledSFileMapper;
    private final AliOssFileServiceImpl aliOssFileService;
    private final FileOperationRecordService fileOperationRecordService;
    public FileUploadDto addProgramFile(MultipartFile file) {
    public boolean addProgramFile(MultipartFile file) {
        FileUploadDto fileUploadDto = aliOssFileService.uploadFile(file);
        FileOperationRecord fileOperationRecord=new FileOperationRecord();
        BeanUtils.copyProperties(fileUploadDto, fileOperationRecord);
        fileOperationRecordService.save(fileOperationRecord);
        LedSFile sFile = new LedSFile();
        BeanUtils.copyProperties(fileUploadDto, sFile);
        sFile.setCilentId(SecurityUtils.getClientId());
        if (SecurityUtils.getClientId() != null) {
            sFile.setUserName(SecurityUtils.getUsername());
        }
        save(sFile);
//        return save(sFile);
        return fileUploadDto;
//        save(sFile);
        return save(sFile);
//        return fileUploadDto;
    }
    public boolean deleteFile(Long id) {
ximon-admin/src/test/java/com/sandu/ximon/admin/tests/LedSFileControllerTests.java
对比新文件
@@ -0,0 +1,17 @@
package com.sandu.ximon.admin.tests;
import com.sandu.ximon.admin.base.BaseTest;
import com.sun.activation.registries.MailcapFile;
import org.junit.Test;
/**
 * @Author liuhaonan
 * @Date 2022/1/14 10:09
 * @Version 1.0
 */
public class LedSFileControllerTests extends BaseTest {
    @Test
    public void testAdd() throws Exception {
        checkPost("/v1/xixun/file/add",new MailcapFile("aaa.jpg"));
    }
}