liusheng
2023-11-01 6892c31200a7ed1b0e60ee5aff794b1fcecc7ef6
解决文件上传时,文件名重复问题
已修改8个文件
84 ■■■■ 文件已修改
ruoyi-admin/pom.xml 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/enums/PersonType.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application-druid.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application.yml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/logback.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/pom.xml
@@ -8,9 +8,9 @@
        <version>3.7.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
<!--    <packaging>war</packaging>-->
    <packaging>jar</packaging>
    <artifactId>ruoyi-admin-opo-8086</artifactId>
    <packaging>war</packaging>
<!--    <packaging>jar</packaging>-->
    <artifactId>ruoyi-admin</artifactId>
    <description>
        web服务入口
@@ -86,6 +86,17 @@
        <version>4.5.12</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
            <version>4.4.9</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>5.2.9.RELEASE</version>
        </dependency>
    </dependencies>
    <build>
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
@@ -15,6 +15,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.MediaType;
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -23,6 +24,7 @@
import javax.management.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.lang.management.ManagementFactory;
import java.util.Set;
@@ -75,6 +77,24 @@
        try {
            // 上传文件路径
            String filePath = RuoYiConfig.getUploadPath();
            //判断文件是否存在
            String filename = file.getOriginalFilename().trim();
            String felinamePath = FileUploadUtils.extractFilename(file);
//            String pathFileName = FileUploadUtils.getPathFileName(filePath, s);
            File file1 = new File(filePath + "/" + felinamePath);
            boolean exists = file1.exists();
            if (exists) {
                int i = filename.lastIndexOf(".");
                String startStr = filename.substring(0, i);
                String endStr = filename.substring(i, filename.length());
                String newFilename = startStr + System.currentTimeMillis() + endStr; // your new filename
                String contentType = file.getContentType();
                byte[] bytes = file.getBytes();
                file = new MockMultipartFile(newFilename, newFilename, contentType, bytes);
            }
            // 上传并返回新文件名称
            String fileName = FileUploadUtils.upload(filePath, file);
            String url1 = serverConfig.getUrl();
ruoyi-admin/src/main/java/com/ruoyi/web/controller/enums/PersonType.java
@@ -7,30 +7,27 @@
 * 
 * @author ls
 */
public enum PersonType
{
public enum PersonType {
    OTHER("0", "其他人员"),
    PROFESSIONAL("1", "专职人员"),
    COORDINATOR("2", "协调员"),
    EXPERT("3","专家"),
    KIN("4","家属");
    KIN("4", "家属"),
    MESSAGE("5", "管理人员");
    private final String code;
    private final String info;
    PersonType(String code, String info)
    {
    PersonType(String code, String info) {
        this.code = code;
        this.info = info;
    }
    public String getCode()
    {
    public String getCode() {
        return code;
    }
    public String getInfo()
    {
    public String getInfo() {
        return info;
    }
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -143,6 +143,9 @@
        Integer checkstatus = spFinancialExpensesIn.getCheckstatus();
        String donorname = spFinancialExpensesIn.getDonorname();
        if (StringUtils.isEmpty(donorname)) {
            donorname = null;
        }
        if (pageNum == null) {
            pageNum = 1;
        }
ruoyi-admin/src/main/resources/application-druid.yml
@@ -6,13 +6,13 @@
        druid:
            # 主库数据源
            master:
                # 医院环境
#                # 医院环境
                #url: jdbc:mysql://129.88.242.37:3308/opo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
                #username: JQ
                #password: Jqserver88
                # 开发环境
                url: jdbc:mysql://116.62.18.175:6002/lihuopo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8
                url: jdbc:mysql://116.62.18.175:6002/opo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8
                username: opo
                password: opo@2022
ruoyi-admin/src/main/resources/application.yml
@@ -10,11 +10,11 @@
  demoEnabled: true
  # 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /home/ruoyi/uploadPath)
  # 开发环境 window
  profile: D:/lihusoft/OPO/WEB/Upload
  #  profile: D:/lihusoft/OPO/WEB/Upload
  # 开发环境 linux
#  profile: /home/smartor/uploadFile
  # 医院环境
  #profile: E:/OPO/WEB/Upload
  profile: E:/OPO/WEB/Upload
  # 获取ip地址开关
  addressEnabled: false
  # 验证码类型 math 数组计算 char 字符验证
@@ -23,7 +23,7 @@
# 开发环境配置
server:
  # 服务器的HTTP端口,默认为8080
  port: 8086
  port: 8080
  servlet:
    # 应用的访问路径
    context-path: /
@@ -39,7 +39,7 @@
logging:
  file: 
    # 日志路径 示例( Windows配置D:/ruoyi/logs,Linux配置 /home/ruoyi/logs,不填同级目录logs)
    path: logs
    path: D:/ruoyi/ls/logs
  level:
    com.ruoyi: debug
    org.springframework: warn
@@ -70,7 +70,7 @@
      enabled: ALWAYS
  # redis 配置
  redis:
    # 地址、密码、端口(默认为6379):医院环境
    #    # 地址、密码、端口(默认为6379):医院环境
    #host: 129.88.242.37
    #password: jqserver
    #port: 6379
@@ -121,6 +121,9 @@
        logic-delete-field: isdel # 全局逻辑删除的实体字段名
        logic-delete-value: 1 # 逻辑已删除值(默认为 1)
        logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
#      update-strategy: IGNORED  #忽略为空
# PageHelper分页插件
pagehelper: 
  helperDialect: mysql
ruoyi-admin/src/main/resources/logback.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 日志存放路径 -->
    <property name="log.path" value="D" />
    <property name="log.path" value="/lihu/opo/logs" />
    <!-- 日志输出格式 -->
    <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java
@@ -266,6 +266,16 @@
        //保存总税前金额(用于更新fund表里的)
        BigDecimal pretaxcost = BigDecimal.valueOf(0.00);
        for (ServiceFunddetail serviceFunddetail : serviceFunddetails) {
            if (StringUtils.isEmpty(serviceFunddetail.getIdcardno())) {
                //如果身份证号为空,就不用查了,可能是医院的记录
                if (StringUtils.isEmpty(serviceFunddetail.getServicesscopename()) || !serviceFunddetail.getServicesscopename().contains("税后")) {
                    serviceFunddetail.setTaxedamount(serviceFunddetail.getAmount());
                } else {
                    serviceFunddetail.setAmount(serviceFunddetail.getTaxedamount());
                }
                this.updateById(serviceFunddetail);
            }
            //获取当月的第一天
            Date firstDay = Date.from(LocalDate.now().with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay(ZoneId.systemDefault()).toInstant());
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");