Zhu Zhonghua
2025-04-07 dd38aba9aae63411b4c1944d2c49115c2333d6cc
新建
已添加10个文件
已修改1个文件
327 ■■■■■ 文件已修改
aps-modules/aps-upload/pom.xml 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/java/com/aps/upload/APSUploadApplication.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/java/com/aps/upload/controller/CoreController.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/java/com/aps/upload/mapper/CoreMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/java/com/aps/upload/service/ICoreService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/java/com/aps/upload/service/impl/CoreServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/resources/banner.txt 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/resources/bootstrap.yml 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/resources/logback.xml 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/src/main/resources/mapper/upload/CoreMapper.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/pom.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-upload/pom.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <groupId>com.aps</groupId>
        <artifactId>aps-modules</artifactId>
        <version>3.6.5</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <artifactId>aps-modules-upload</artifactId>
    <description>
        aps上传业务模块
    </description>
    <dependencies>
        <!-- SpringCloud Alibaba Nacos -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!-- SpringCloud Alibaba Nacos Config -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <!-- SpringCloud Alibaba Sentinel -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>
        <!-- SpringBoot Actuator -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!-- SpringBoot Web -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- Minio -->
        <dependency>
            <groupId>io.minio</groupId>
            <artifactId>minio</artifactId>
            <version>${minio.version}</version>
        </dependency>
        <!-- RuoYi Api System -->
        <dependency>
            <groupId>com.aps</groupId>
            <artifactId>aps-api-system</artifactId>
        </dependency>
    </dependencies>
    <build>
        <finalName>${project.artifactId}</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>
aps-modules/aps-upload/src/main/java/com/aps/upload/APSUploadApplication.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
package com.aps.upload;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
/**
 * æ–‡ä»¶æœåŠ¡
 *
 * @author ruoyi
 */
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })
public class APSUploadApplication
{
    public static void main(String[] args)
    {
        SpringApplication.run(APSUploadApplication.class, args);
        System.out.println("(♥◠‿◠)ノ゙  æ–‡ä»¶æœåŠ¡æ¨¡å—å¯åŠ¨æˆåŠŸ   áƒš(´ڡ`ლ)゙  \n" +
                " .-------.       ____     __        \n" +
                " |  _ _   \\      \\   \\   /  /    \n" +
                " | ( ' )  |       \\  _. /  '       \n" +
                " |(_ o _) /        _( )_ .'         \n" +
                " | (_,_).' __  ___(_ o _)'          \n" +
                " |  |\\ \\  |  ||   |(_,_)'         \n" +
                " |  | \\ `'   /|   `-'  /           \n" +
                " |  |  \\    /  \\      /           \n" +
                " ''-'   `'-'    `-..-'              ");
    }
}
aps-modules/aps-upload/src/main/java/com/aps/upload/controller/CoreController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
package com.aps.upload.controller;
import com.aps.core.service.ICoreService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import com.aps.common.core.domain.R;
import com.aps.common.core.utils.file.FileUtils;
import com.aps.system.api.domain.SysFile;
/**
 * æ–‡ä»¶è¯·æ±‚处理
 *
 * @author ruoyi
 */
@RestController
public class CoreController
{
    private static final Logger log = LoggerFactory.getLogger(CoreController.class);
    @Autowired
    private ICoreService coreService;
    /**
     * æ–‡ä»¶ä¸Šä¼ è¯·æ±‚
     */
    @PostMapping("upload")
    public R<SysFile> upload(MultipartFile file)
    {
        try
        {
            // ä¸Šä¼ å¹¶è¿”回访问地址
            String url = coreService.uploadFile(file);
            SysFile sysFile = new SysFile();
            sysFile.setName(FileUtils.getName(url));
            sysFile.setUrl(url);
            return R.ok(sysFile);
        }
        catch (Exception e)
        {
            log.error("上传文件失败", e);
            return R.fail(e.getMessage());
        }
    }
}
aps-modules/aps-upload/src/main/java/com/aps/upload/mapper/CoreMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
package com.aps.upload.mapper;
public interface CoreMapper
{
    public void cleanJobLog();
}
aps-modules/aps-upload/src/main/java/com/aps/upload/service/ICoreService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
package com.aps.upload.service;
import org.springframework.web.multipart.MultipartFile;
/**
 * æ–‡ä»¶ä¸Šä¼ æŽ¥å£
 *
 * @author ruoyi
 */
public interface ICoreService
{
    /**
     * æ–‡ä»¶ä¸Šä¼ æŽ¥å£
     *
     * @param file ä¸Šä¼ çš„æ–‡ä»¶
     * @return è®¿é—®åœ°å€
     * @throws Exception
     */
    public String uploadFile(MultipartFile file) throws Exception;
}
aps-modules/aps-upload/src/main/java/com/aps/upload/service/impl/CoreServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
package com.aps.upload.service.impl;
import com.aps.core.service.ICoreService;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
/**
 * æœ¬åœ°æ–‡ä»¶å­˜å‚¨
 *
 */
@Primary
@Service
public class CoreServiceImpl implements ICoreService
{
    @Override
    public String uploadFile(MultipartFile file) throws Exception
    {
        return null;
    }
}
aps-modules/aps-upload/src/main/resources/banner.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Spring Boot Version: ${spring-boot.version}
Spring Application Name: ${spring.application.name}
                            _           __  _  _
                           (_)         / _|(_)| |
 _ __  _   _   ___   _   _  _  ______ | |_  _ | |  ___
| '__|| | | | / _ \ | | | || ||______||  _|| || | / _ \
| |   | |_| || (_) || |_| || |        | |  | || ||  __/
|_|    \__,_| \___/  \__, ||_|        |_|  |_||_| \___|
                      __/ |
                     |___/
aps-modules/aps-upload/src/main/resources/bootstrap.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
# Tomcat
server:
  port: 9206
# Spring
spring:
  application:
    # åº”用名称
    name: aps-upload
  profiles:
    # çŽ¯å¢ƒé…ç½®
    active: dev
  cloud:
    nacos:
      discovery:
        # æœåŠ¡æ³¨å†Œåœ°å€
        server-addr: 192.168.50.160:8848
      config:
        # é…ç½®ä¸­å¿ƒåœ°å€
        server-addr: 192.168.50.160:8848
        # é…ç½®æ–‡ä»¶æ ¼å¼
        file-extension: yml
        # å…±äº«é…ç½®
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
aps-modules/aps-upload/src/main/resources/logback.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <!-- æ—¥å¿—存放路径 -->
    <property name="log.path" value="logs/aps-file" />
   <!-- æ—¥å¿—输出格式 -->
    <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
    <!-- æŽ§åˆ¶å°è¾“出 -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${log.pattern}</pattern>
        </encoder>
    </appender>
    <!-- ç³»ç»Ÿæ—¥å¿—输出 -->
    <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}/info.log</file>
        <!-- å¾ªçŽ¯æ”¿ç­–ï¼šåŸºäºŽæ—¶é—´åˆ›å»ºæ—¥å¿—æ–‡ä»¶ -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- æ—¥å¿—文件名格式 -->
            <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- æ—¥å¿—最大的历史 60天 -->
            <maxHistory>60</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>${log.pattern}</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <!-- è¿‡æ»¤çš„级别 -->
            <level>INFO</level>
            <!-- åŒ¹é…æ—¶çš„æ“ä½œï¼šæŽ¥æ”¶ï¼ˆè®°å½•) -->
            <onMatch>ACCEPT</onMatch>
            <!-- ä¸åŒ¹é…æ—¶çš„æ“ä½œï¼šæ‹’绝(不记录) -->
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>
    <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}/error.log</file>
        <!-- å¾ªçŽ¯æ”¿ç­–ï¼šåŸºäºŽæ—¶é—´åˆ›å»ºæ—¥å¿—æ–‡ä»¶ -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- æ—¥å¿—文件名格式 -->
            <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- æ—¥å¿—最大的历史 60天 -->
            <maxHistory>60</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>${log.pattern}</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <!-- è¿‡æ»¤çš„级别 -->
            <level>ERROR</level>
            <!-- åŒ¹é…æ—¶çš„æ“ä½œï¼šæŽ¥æ”¶ï¼ˆè®°å½•) -->
            <onMatch>ACCEPT</onMatch>
            <!-- ä¸åŒ¹é…æ—¶çš„æ“ä½œï¼šæ‹’绝(不记录) -->
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>
    <!-- ç³»ç»Ÿæ¨¡å—日志级别控制  -->
    <logger name="com.aps" level="info" />
    <!-- Spring日志级别控制  -->
    <logger name="org.springframework" level="warn" />
    <root level="info">
        <appender-ref ref="console" />
    </root>
    <!--系统操作日志-->
    <root level="info">
        <appender-ref ref="file_info" />
        <appender-ref ref="file_error" />
    </root>
</configuration>
aps-modules/aps-upload/src/main/resources/mapper/upload/CoreMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
<?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.aps.upload.mapper.CoreMapper">
     <update id="cleanJobLog">
        truncate table sys_job_log
    </update>
</mapper>
aps-modules/pom.xml
@@ -14,6 +14,7 @@
        <module>aps-job</module>
        <module>aps-file</module>
        <module>aps-core</module>
        <module>aps-upload</module>
    </modules>
    <artifactId>aps-modules</artifactId>