Explorar el Código

Merge remote-tracking branch 'origin/master'

user5 hace 2 años
padre
commit
6f312975a2

+ 49 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/controller/UserInfoController.java

@@ -3,18 +3,33 @@ package com.jeeplus.test.user.controller;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jeeplus.aop.logging.annotation.ApiLog;
+import com.jeeplus.common.utils.FileUtils;
+import com.jeeplus.common.utils.ResponseUtil;
+import com.jeeplus.config.properties.FileProperties;
 import com.jeeplus.core.query.QueryWrapperGenerator;
+import com.jeeplus.sys.utils.FileKit;
 import com.jeeplus.sys.utils.StringUtils;
+import com.jeeplus.test.oss.service.OSSClientService;
+import com.jeeplus.test.oss.service.OssService;
 import com.jeeplus.test.user.domain.SysUserInfo;
+import com.jeeplus.test.user.service.dto.FileUrlDto;
 import com.jeeplus.test.user.service.dto.UserInfoDetailDto;
 import com.jeeplus.test.user.service.UserInfoService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.io.File;
+import java.io.IOException;
+import java.util.Calendar;
 
 @Slf4j
 @Api(tags ="userInfo")
@@ -22,9 +37,19 @@ import javax.annotation.Resource;
 @RequestMapping(value = "/sys/userInfo")
 public class UserInfoController {
 
+    private static final String DIRECTORY = "attachment-file/assess";
+
+    private static final String ALIYUNURL = "http://oss.gangwaninfo.com";
+
     @Resource
     private UserInfoService userInfoService;
 
+    @Resource
+    private OSSClientService ossClientService;
+
+    @Resource
+    private OssService ossService;
+
     /**
      * 用户信息列表
      */
@@ -57,4 +82,28 @@ public class UserInfoController {
             return ResponseEntity.ok(userInfoService.modify(userInfoDetailDto));
         }
     }
+
+    /**
+     * 上传文件
+     * @return
+     * @throws IOException
+     */
+    @ApiOperation("上传文件")
+    @RequestMapping("webupload/upload")
+    public ResponseEntity<FileUrlDto> webupload(HttpServletRequest request, MultipartFile file) throws IOException {
+        FileUrlDto dto = new FileUrlDto();
+        // 文件保存路径
+        String fileDir =DIRECTORY+"/"+"userInfoFile"+ossClientService.datePath()+"/"+ System.currentTimeMillis();
+        // 判断文件是否为空
+        if (!file.isEmpty()) {
+            String name = file.getOriginalFilename ();
+            ossClientService.uploadFile2OSS(file.getInputStream(), fileDir, name);
+            String url = "/" + fileDir +name;
+            String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + url);
+            dto.setUrl(url);
+            dto.setLsUrl(lsUrl);
+            return ResponseEntity.ok(dto);
+        }
+        return ResponseEntity.ok(null);
+    }
 }

+ 4 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/domain/SysUserArchives.java

@@ -34,6 +34,10 @@ public class SysUserArchives extends BaseEntity {
     @TableField("file_url")
     private String fileUrl;
 
+    // 文件临时地址
+    @TableField(exist = false)
+    private String fileLsUrl;
+
     // 验证
     @TableField("verification")
     private String verification;

+ 4 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/domain/SysUserCertificate.java

@@ -49,4 +49,8 @@ public class SysUserCertificate extends BaseEntity {
     // 文件地址
     @TableField("file_url")
     private String fileUrl;
+
+    // 文件临时地址
+    @TableField(exist = false)
+    private String fileLsUrl;
 }

+ 4 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/domain/SysUserContract.java

@@ -53,4 +53,8 @@ public class SysUserContract extends BaseEntity {
     // 文件地址
     @TableField("file_url")
     private String fileUrl;
+
+    // 文件临时地址
+    @TableField(exist = false)
+    private String fileLsUrl;
 }

+ 9 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/domain/SysUserEducation.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.jeeplus.core.domain.BaseEntity;
+import liquibase.pro.packaged.S;
 import lombok.Data;
 import java.util.Date;
 
@@ -57,4 +58,12 @@ public class SysUserEducation extends BaseEntity {
     // 学位证书地址
     @TableField("degree_certificate_url")
     private String degreeCertificateUrl;
+
+    // 学历证书临时地址
+    @TableField(exist = false)
+    private String educationCertificateLsUrl;
+
+    // 学位证书临时地址
+    @TableField(exist = false)
+    private String degreeCertificateLsUrl;
 }

+ 4 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/domain/SysUserLanguages.java

@@ -41,4 +41,8 @@ public class SysUserLanguages extends BaseEntity {
     // 文件url
     @TableField("file_url")
     private String fileUrl;
+
+    // 文件临时地址
+    @TableField(exist = false)
+    private String fileLsUrl;
 }

+ 4 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/domain/SysUserTitle.java

@@ -45,4 +45,8 @@ public class SysUserTitle extends BaseEntity {
     // 文件地址
     @TableField("file_url")
     private String fileUrl;
+
+    // 文件临时地址
+    @TableField(exist = false)
+    private String fileLsUrl;
 }

+ 4 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/domain/SysUserTrain.java

@@ -61,4 +61,8 @@ public class SysUserTrain extends BaseEntity {
     // 备注
     @TableField("remarks")
     private String remarks;
+
+    // 文件临时地址
+    @TableField(exist = false)
+    private String fileLsUrl;
 }

+ 74 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/service/UserInfoService.java

@@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jeeplus.sys.service.dto.UserDTO;
+import com.jeeplus.sys.utils.StringUtils;
 import com.jeeplus.sys.utils.UserUtils;
+import com.jeeplus.test.oss.service.OssService;
 import com.jeeplus.test.user.domain.*;
 import com.jeeplus.test.user.service.dto.UserInfoDetailDto;
 import com.jeeplus.test.user.service.dto.UserListDto;
@@ -48,9 +50,13 @@ public class UserInfoService {
     private SysUserAchievementMapper sysUserAchievementMapper;
     @Resource
     private SysUserArchivesMapper sysUserArchivesMapper;
+    @Resource
+    private OssService ossService;
 
     private static final String USER_STATUS = "sys_user_status";
 
+    private static final String ALIYUNURL = "http://oss.gangwaninfo.com";
+
     /**
      * 用户信息列表
      * @param page
@@ -99,23 +105,59 @@ public class UserInfoService {
         //查询基本信息
         SysUserInfo sysUserInfo = sysUserInfoMapper.selectById(id);
         BeanUtils.copyProperties(sysUserInfo, detailDto);
+        if (StringUtils.isNotEmpty(detailDto.getHeadPortraitUrl())) {
+            String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + sysUserInfo.getHeadPortraitUrl());
+            detailDto.setHeadPortraitLsUrl(lsUrl);
+        }
+        if (StringUtils.isNotEmpty(detailDto.getSignatureUrl())) {
+            String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + sysUserInfo.getSignatureUrl());
+            detailDto.setSignatureLsUrl(lsUrl);
+        }
         //查询用户教育经历
         LambdaQueryWrapper<SysUserEducation> wrapper1 = new LambdaQueryWrapper<>();
         wrapper1.eq(SysUserEducation::getUserInfoId, id);
         wrapper1.eq(SysUserEducation::getDelFlag, 0);
         List<SysUserEducation> sysUserEducations = sysUserEducationMapper.selectList(wrapper1);
+        if (CollectionUtils.isNotEmpty(sysUserEducations)) {
+            sysUserEducations.stream().forEach(i -> {
+                if (StringUtils.isNotEmpty(i.getEducationCertificateUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getEducationCertificateUrl());
+                    i.setEducationCertificateLsUrl(lsUrl);
+                }
+                if (StringUtils.isNotEmpty(i.getDegreeCertificateUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getDegreeCertificateUrl());
+                    i.setDegreeCertificateLsUrl(lsUrl);
+                }
+            });
+        }
         detailDto.setSysUserEducations(sysUserEducations);
         //查询用户劳动关系
         LambdaQueryWrapper<SysUserContract> wrapper2 = new LambdaQueryWrapper<>();
         wrapper2.eq(SysUserContract::getUserInfoId, id);
         wrapper2.eq(SysUserContract::getDelFlag, 0);
         List<SysUserContract> sysUserContracts = sysUserContractMapper.selectList(wrapper2);
+        if (CollectionUtils.isNotEmpty(sysUserContracts)) {
+            sysUserContracts.stream().forEach(i -> {
+                if (StringUtils.isNotEmpty(i.getFileUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getFileUrl());
+                    i.setFileLsUrl(lsUrl);
+                }
+            });
+        }
         detailDto.setSysUserContracts(sysUserContracts);
         //查询用户外语语种
         LambdaQueryWrapper<SysUserLanguages> wrapper3 = new LambdaQueryWrapper<>();
         wrapper3.eq(SysUserLanguages::getUserInfoId, id);
         wrapper3.eq(SysUserLanguages::getDelFlag, 0);
         List<SysUserLanguages> sysUserLanguages = sysUserLanguagesMapper.selectList(wrapper3);
+        if (CollectionUtils.isNotEmpty(sysUserLanguages)) {
+            sysUserLanguages.stream().forEach(i -> {
+                if (StringUtils.isNotEmpty(i.getFileUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getFileUrl());
+                    i.setFileLsUrl(lsUrl);
+                }
+            });
+        }
         detailDto.setSysUserLanguages(sysUserLanguages);
         //查询用户工作经历
         LambdaQueryWrapper<SysUserWork> wrapper4 = new LambdaQueryWrapper<>();
@@ -128,12 +170,28 @@ public class UserInfoService {
         wrapper5.eq(SysUserCertificate::getUserInfoId, id);
         wrapper5.eq(SysUserCertificate::getDelFlag, 0);
         List<SysUserCertificate> sysUserCertificates = sysUserCertificateMapper.selectList(wrapper5);
+        if (CollectionUtils.isNotEmpty(sysUserCertificates)) {
+            sysUserCertificates.stream().forEach(i -> {
+                if (StringUtils.isNotEmpty(i.getFileUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getFileUrl());
+                    i.setFileLsUrl(lsUrl);
+                }
+            });
+        }
         detailDto.setSysUserCertificates(sysUserCertificates);
         //查询用户职称
         LambdaQueryWrapper<SysUserTitle> wrapper6 = new LambdaQueryWrapper<>();
         wrapper6.eq(SysUserTitle::getUserInfoId, id);
         wrapper6.eq(SysUserTitle::getDelFlag, 0);
         List<SysUserTitle> sysUserTitles = sysUserTitleMapper.selectList(wrapper6);
+        if (CollectionUtils.isNotEmpty(sysUserTitles)) {
+            sysUserTitles.stream().forEach(i -> {
+                if (StringUtils.isNotEmpty(i.getFileUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getFileUrl());
+                    i.setFileLsUrl(lsUrl);
+                }
+            });
+        }
         detailDto.setSysUserTitles(sysUserTitles);
         //查询用户家庭情况
         LambdaQueryWrapper<SysUserFamily> wrapper7 = new LambdaQueryWrapper<>();
@@ -146,6 +204,14 @@ public class UserInfoService {
         wrapper8.eq(SysUserTrain::getUserInfoId, id);
         wrapper8.eq(SysUserTrain::getDelFlag, 0);
         List<SysUserTrain> sysUserTrains = sysUserTrainMapper.selectList(wrapper8);
+        if (CollectionUtils.isNotEmpty(sysUserTrains)) {
+            sysUserTrains.stream().forEach(i -> {
+                if (StringUtils.isNotEmpty(i.getFileUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getFileUrl());
+                    i.setFileLsUrl(lsUrl);
+                }
+            });
+        }
         detailDto.setSysUserTrains(sysUserTrains);
         //查询用户社会及行业职务
         LambdaQueryWrapper<SysUserDuties> wrapper9 = new LambdaQueryWrapper<>();
@@ -170,6 +236,14 @@ public class UserInfoService {
         wrapper12.eq(SysUserArchives::getUserInfoId, id);
         wrapper12.eq(SysUserArchives::getDelFlag, 0);
         List<SysUserArchives> sysUserArchives = sysUserArchivesMapper.selectList(wrapper12);
+        if (CollectionUtils.isNotEmpty(sysUserArchives)) {
+            sysUserArchives.stream().forEach(i -> {
+                if (StringUtils.isNotEmpty(i.getFileUrl())) {
+                    String lsUrl = ossService.getFileTemporaryLookUrl(ALIYUNURL + "/" + i.getFileUrl());
+                    i.setFileLsUrl(lsUrl);
+                }
+            });
+        }
         detailDto.setSysUserArchives(sysUserArchives);
         return detailDto;
     }

+ 12 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/service/dto/FileUrlDto.java

@@ -0,0 +1,12 @@
+package com.jeeplus.test.user.service.dto;
+
+import lombok.Data;
+
+@Data
+public class FileUrlDto {
+
+    private String url;
+
+    private String lsUrl;
+
+}

+ 6 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/user/service/dto/UserInfoDetailDto.java

@@ -108,9 +108,15 @@ public class UserInfoDetailDto extends BaseDTO {
     // 头像地址
     private String headPortraitUrl;
 
+    //头像临时地址
+    private String headPortraitLsUrl;
+
     // 手签章地址
     private String signatureUrl;
 
+    //手签章临时地址
+    private String signatureLsUrl;
+
     //用户教育经历
     private List<SysUserEducation> sysUserEducations;