Browse Source

Merge branch 'pt' of gitee.com:ccsens_s/ccsenscloud into pt

master
zy_Java 5 years ago
parent
commit
c0d4c97c69
  1. 84
      mt/src/main/java/com/ccsens/mt/api/FileController.java
  2. 106
      mt/src/main/java/com/ccsens/mt/bean/po/CommonFile.java
  3. 711
      mt/src/main/java/com/ccsens/mt/bean/po/CommonFileExample.java
  4. 2
      mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java
  5. 44
      mt/src/main/java/com/ccsens/mt/bean/vo/FileVo.java
  6. 30
      mt/src/main/java/com/ccsens/mt/persist/mapper/CommonFileMapper.java
  7. 6
      mt/src/main/java/com/ccsens/mt/service/CompeteService.java
  8. 67
      mt/src/main/java/com/ccsens/mt/service/FileService.java
  9. 32
      mt/src/main/java/com/ccsens/mt/service/IFileService.java
  10. 6
      mt/src/main/java/com/ccsens/mt/util/Constant.java
  11. 258
      mt/src/main/resources/mapper_raw/CommonFileMapper.xml
  12. 1
      util/src/main/java/com/ccsens/util/WebConstant.java

84
mt/src/main/java/com/ccsens/mt/api/FileController.java

@ -0,0 +1,84 @@
package com.ccsens.mt.api;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.ccsens.cloudutil.feign.TallFeignClient;
import com.ccsens.mt.bean.po.CommonFile;
import com.ccsens.mt.bean.vo.FileVo;
import com.ccsens.mt.service.IFileService;
import com.ccsens.mt.util.Constant;
import com.ccsens.util.*;
import com.ccsens.util.exception.BaseException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.Part;
import java.util.List;
/**
* @description:
* @author: whj
* @time: 2020/7/17 11:36
*/
@Slf4j
@Api(tags = "文件")
@RestController
@RequestMapping("/file")
public class FileController {
@Resource
private IFileService fileService;
@Resource
private TallFeignClient tallFeignClient;
@ApiOperation(value = "上传交付物文件")
@ApiImplicitParams({
})
@RequestMapping(value = "upload", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<FileVo.Upload> upload(HttpServletRequest request, @RequestParam() List<Part> files) throws Exception {
log.info("文件上传:{}", files);
String authHeader = request.getHeader(WebConstant.HEADER_KEY_TOKEN);
JsonResponse tokenRes = tallFeignClient.getUserIdByToken(authHeader);
log.info("{}查询userId返回:{}", authHeader, tokenRes);
if (tokenRes.getCode().intValue() != CodeEnum.SUCCESS.getCode().intValue()) {
return tokenRes;
}
JSONObject json = JSON.parseObject(JSON.toJSONString(tokenRes.getData()));
Long userId = json.getLong("id");
String dir = PropUtil.path + Constant.File.UPLOAD_URL;
List<CommonFile> fileVos = fileService.saveFile(dir, files, userId);
List<FileVo.Upload> vos = FileVo.Upload.transFilePo(fileVos);
log.info("文件上传返回:{}", vos);
return JsonResponse.newInstance().ok(vos);
}
@ApiOperation(value = "文件下载")
@GetMapping(value = "download/{id}")
public void download(HttpServletResponse response, @PathVariable("id")Long id) throws Exception {
log.info("文件下载:{}", id);
CommonFile file = fileService.getById(id);
log.info("文件信息;{}", file);
if (file == null) {
throw new BaseException(CodeEnum.FILE_NOT_FOUND);
}
UploadFileUtil_Servlet3.download(response, file.getLocation(), file.getFileName());
log.info("文件下载结束");
}
@ApiOperation(value = "文件下载, 指定路径")
@GetMapping(value = "download/know")
public void downloadFile(HttpServletResponse response, String path ) throws Exception {
log.info("文件下载, 指定路径:{}", path);
UploadFileUtil_Servlet3.download(response, path, path.substring(path.lastIndexOf(java.io.File.separator) + 1));
log.info("文件下载结束");
}
}

106
mt/src/main/java/com/ccsens/mt/bean/po/CommonFile.java

@ -0,0 +1,106 @@
package com.ccsens.mt.bean.po;
import java.io.Serializable;
import java.util.Date;
public class CommonFile implements Serializable {
private Long id;
private Long userId;
private String fileName;
private String location;
private String visitLocation;
private Date createdAt;
private Date updatedAt;
private Byte recStatus;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName == null ? null : fileName.trim();
}
public String getLocation() {
return location;
}
public void setLocation(String location) {
this.location = location == null ? null : location.trim();
}
public String getVisitLocation() {
return visitLocation;
}
public void setVisitLocation(String visitLocation) {
this.visitLocation = visitLocation == null ? null : visitLocation.trim();
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Byte getRecStatus() {
return recStatus;
}
public void setRecStatus(Byte recStatus) {
this.recStatus = recStatus;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", userId=").append(userId);
sb.append(", fileName=").append(fileName);
sb.append(", location=").append(location);
sb.append(", visitLocation=").append(visitLocation);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append("]");
return sb.toString();
}
}

711
mt/src/main/java/com/ccsens/mt/bean/po/CommonFileExample.java

@ -0,0 +1,711 @@
package com.ccsens.mt.bean.po;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class CommonFileExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
public CommonFileExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andUserIdIsNull() {
addCriterion("user_id is null");
return (Criteria) this;
}
public Criteria andUserIdIsNotNull() {
addCriterion("user_id is not null");
return (Criteria) this;
}
public Criteria andUserIdEqualTo(Long value) {
addCriterion("user_id =", value, "userId");
return (Criteria) this;
}
public Criteria andUserIdNotEqualTo(Long value) {
addCriterion("user_id <>", value, "userId");
return (Criteria) this;
}
public Criteria andUserIdGreaterThan(Long value) {
addCriterion("user_id >", value, "userId");
return (Criteria) this;
}
public Criteria andUserIdGreaterThanOrEqualTo(Long value) {
addCriterion("user_id >=", value, "userId");
return (Criteria) this;
}
public Criteria andUserIdLessThan(Long value) {
addCriterion("user_id <", value, "userId");
return (Criteria) this;
}
public Criteria andUserIdLessThanOrEqualTo(Long value) {
addCriterion("user_id <=", value, "userId");
return (Criteria) this;
}
public Criteria andUserIdIn(List<Long> values) {
addCriterion("user_id in", values, "userId");
return (Criteria) this;
}
public Criteria andUserIdNotIn(List<Long> values) {
addCriterion("user_id not in", values, "userId");
return (Criteria) this;
}
public Criteria andUserIdBetween(Long value1, Long value2) {
addCriterion("user_id between", value1, value2, "userId");
return (Criteria) this;
}
public Criteria andUserIdNotBetween(Long value1, Long value2) {
addCriterion("user_id not between", value1, value2, "userId");
return (Criteria) this;
}
public Criteria andFileNameIsNull() {
addCriterion("file_name is null");
return (Criteria) this;
}
public Criteria andFileNameIsNotNull() {
addCriterion("file_name is not null");
return (Criteria) this;
}
public Criteria andFileNameEqualTo(String value) {
addCriterion("file_name =", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotEqualTo(String value) {
addCriterion("file_name <>", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameGreaterThan(String value) {
addCriterion("file_name >", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameGreaterThanOrEqualTo(String value) {
addCriterion("file_name >=", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameLessThan(String value) {
addCriterion("file_name <", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameLessThanOrEqualTo(String value) {
addCriterion("file_name <=", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameLike(String value) {
addCriterion("file_name like", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotLike(String value) {
addCriterion("file_name not like", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameIn(List<String> values) {
addCriterion("file_name in", values, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotIn(List<String> values) {
addCriterion("file_name not in", values, "fileName");
return (Criteria) this;
}
public Criteria andFileNameBetween(String value1, String value2) {
addCriterion("file_name between", value1, value2, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotBetween(String value1, String value2) {
addCriterion("file_name not between", value1, value2, "fileName");
return (Criteria) this;
}
public Criteria andLocationIsNull() {
addCriterion("location is null");
return (Criteria) this;
}
public Criteria andLocationIsNotNull() {
addCriterion("location is not null");
return (Criteria) this;
}
public Criteria andLocationEqualTo(String value) {
addCriterion("location =", value, "location");
return (Criteria) this;
}
public Criteria andLocationNotEqualTo(String value) {
addCriterion("location <>", value, "location");
return (Criteria) this;
}
public Criteria andLocationGreaterThan(String value) {
addCriterion("location >", value, "location");
return (Criteria) this;
}
public Criteria andLocationGreaterThanOrEqualTo(String value) {
addCriterion("location >=", value, "location");
return (Criteria) this;
}
public Criteria andLocationLessThan(String value) {
addCriterion("location <", value, "location");
return (Criteria) this;
}
public Criteria andLocationLessThanOrEqualTo(String value) {
addCriterion("location <=", value, "location");
return (Criteria) this;
}
public Criteria andLocationLike(String value) {
addCriterion("location like", value, "location");
return (Criteria) this;
}
public Criteria andLocationNotLike(String value) {
addCriterion("location not like", value, "location");
return (Criteria) this;
}
public Criteria andLocationIn(List<String> values) {
addCriterion("location in", values, "location");
return (Criteria) this;
}
public Criteria andLocationNotIn(List<String> values) {
addCriterion("location not in", values, "location");
return (Criteria) this;
}
public Criteria andLocationBetween(String value1, String value2) {
addCriterion("location between", value1, value2, "location");
return (Criteria) this;
}
public Criteria andLocationNotBetween(String value1, String value2) {
addCriterion("location not between", value1, value2, "location");
return (Criteria) this;
}
public Criteria andVisitLocationIsNull() {
addCriterion("visit_location is null");
return (Criteria) this;
}
public Criteria andVisitLocationIsNotNull() {
addCriterion("visit_location is not null");
return (Criteria) this;
}
public Criteria andVisitLocationEqualTo(String value) {
addCriterion("visit_location =", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationNotEqualTo(String value) {
addCriterion("visit_location <>", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationGreaterThan(String value) {
addCriterion("visit_location >", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationGreaterThanOrEqualTo(String value) {
addCriterion("visit_location >=", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationLessThan(String value) {
addCriterion("visit_location <", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationLessThanOrEqualTo(String value) {
addCriterion("visit_location <=", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationLike(String value) {
addCriterion("visit_location like", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationNotLike(String value) {
addCriterion("visit_location not like", value, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationIn(List<String> values) {
addCriterion("visit_location in", values, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationNotIn(List<String> values) {
addCriterion("visit_location not in", values, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationBetween(String value1, String value2) {
addCriterion("visit_location between", value1, value2, "visitLocation");
return (Criteria) this;
}
public Criteria andVisitLocationNotBetween(String value1, String value2) {
addCriterion("visit_location not between", value1, value2, "visitLocation");
return (Criteria) this;
}
public Criteria andCreatedAtIsNull() {
addCriterion("created_at is null");
return (Criteria) this;
}
public Criteria andCreatedAtIsNotNull() {
addCriterion("created_at is not null");
return (Criteria) this;
}
public Criteria andCreatedAtEqualTo(Date value) {
addCriterion("created_at =", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotEqualTo(Date value) {
addCriterion("created_at <>", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThan(Date value) {
addCriterion("created_at >", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("created_at >=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThan(Date value) {
addCriterion("created_at <", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThanOrEqualTo(Date value) {
addCriterion("created_at <=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtIn(List<Date> values) {
addCriterion("created_at in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotIn(List<Date> values) {
addCriterion("created_at not in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtBetween(Date value1, Date value2) {
addCriterion("created_at between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotBetween(Date value1, Date value2) {
addCriterion("created_at not between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNull() {
addCriterion("updated_at is null");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNotNull() {
addCriterion("updated_at is not null");
return (Criteria) this;
}
public Criteria andUpdatedAtEqualTo(Date value) {
addCriterion("updated_at =", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotEqualTo(Date value) {
addCriterion("updated_at <>", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThan(Date value) {
addCriterion("updated_at >", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("updated_at >=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThan(Date value) {
addCriterion("updated_at <", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThanOrEqualTo(Date value) {
addCriterion("updated_at <=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIn(List<Date> values) {
addCriterion("updated_at in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotIn(List<Date> values) {
addCriterion("updated_at not in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtBetween(Date value1, Date value2) {
addCriterion("updated_at between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotBetween(Date value1, Date value2) {
addCriterion("updated_at not between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andRecStatusIsNull() {
addCriterion("rec_status is null");
return (Criteria) this;
}
public Criteria andRecStatusIsNotNull() {
addCriterion("rec_status is not null");
return (Criteria) this;
}
public Criteria andRecStatusEqualTo(Byte value) {
addCriterion("rec_status =", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotEqualTo(Byte value) {
addCriterion("rec_status <>", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThan(Byte value) {
addCriterion("rec_status >", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThanOrEqualTo(Byte value) {
addCriterion("rec_status >=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThan(Byte value) {
addCriterion("rec_status <", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThanOrEqualTo(Byte value) {
addCriterion("rec_status <=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusIn(List<Byte> values) {
addCriterion("rec_status in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotIn(List<Byte> values) {
addCriterion("rec_status not in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusBetween(Byte value1, Byte value2) {
addCriterion("rec_status between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotBetween(Byte value1, Byte value2) {
addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

2
mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java

@ -170,6 +170,8 @@ public class CompeteVo {
this.memberNums = members.size(); this.memberNums = members.size();
this.members = members; this.members = members;
} }
} }
@Data @Data

44
mt/src/main/java/com/ccsens/mt/bean/vo/FileVo.java

@ -0,0 +1,44 @@
package com.ccsens.mt.bean.vo;
import com.ccsens.mt.bean.po.CommonFile;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @description: 文件
* @author: whj
* @time: 2020/7/17 11:39
*/
public class FileVo {
@ApiModel("文件上传")
@Data
public static class Upload{
@ApiModelProperty("id")
private Long id;
@ApiModelProperty("文件名")
private String name;
@ApiModelProperty("访问路径")
private String visitUrl;
/**
* 参数转化
* @param files 文件对象
* @return 文件访问
*/
public static List<Upload> transFilePo(List<CommonFile> files) {
List<Upload> vos = new ArrayList<>();
files.forEach(file->{
Upload vo = new Upload();
vo.setId(file.getId());
vo.setName(file.getFileName());
vo.setVisitUrl(file.getVisitLocation());
vos.add(vo);
});
return vos;
}
}
}

30
mt/src/main/java/com/ccsens/mt/persist/mapper/CommonFileMapper.java

@ -0,0 +1,30 @@
package com.ccsens.mt.persist.mapper;
import com.ccsens.mt.bean.po.CommonFile;
import com.ccsens.mt.bean.po.CommonFileExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface CommonFileMapper {
long countByExample(CommonFileExample example);
int deleteByExample(CommonFileExample example);
int deleteByPrimaryKey(Long id);
int insert(CommonFile record);
int insertSelective(CommonFile record);
List<CommonFile> selectByExample(CommonFileExample example);
CommonFile selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") CommonFile record, @Param("example") CommonFileExample example);
int updateByExample(@Param("record") CommonFile record, @Param("example") CommonFileExample example);
int updateByPrimaryKeySelective(CommonFile record);
int updateByPrimaryKey(CommonFile record);
}

6
mt/src/main/java/com/ccsens/mt/service/CompeteService.java

@ -144,6 +144,12 @@ public class CompeteService implements ICompeteService{
company.setType((byte) competePlayerInfo.getType()); company.setType((byte) competePlayerInfo.getType());
company.setName(competePlayerInfo.getCompanyName()); company.setName(competePlayerInfo.getCompanyName());
competeCompanyMapper.insertSelective(company); competeCompanyMapper.insertSelective(company);
//更新缓存
String key = competePlayerInfo.getType() + Constant.Redis.COMPETE_COMPANY;
CompeteVo.CompeteCompany competeCompany = new CompeteVo.CompeteCompany();
competeCompany.setGroupId(company.getId());
competeCompany.setGroupName(company.getName());
redisUtil.lSet(key,competeCompany,Constant.Redis.COMPETE_COMPANY_TIME);
}else { }else {
company = companyList.get(0); company = companyList.get(0);
} }

67
mt/src/main/java/com/ccsens/mt/service/FileService.java

@ -0,0 +1,67 @@
package com.ccsens.mt.service;
import cn.hutool.core.lang.Snowflake;
import com.ccsens.mt.bean.po.CommonFile;
import com.ccsens.mt.persist.mapper.CommonFileMapper;
import com.ccsens.util.NotSupportedFileTypeException;
import com.ccsens.util.PropUtil;
import com.ccsens.util.UploadFileUtil_Servlet3;
import com.ccsens.util.WebConstant;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.Part;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
/**
* @description: 文件操作
* @author: whj
* @time: 2020/7/17 14:25
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class FileService implements IFileService {
@Resource
private CommonFileMapper commonFileMapper;
@Resource
private Snowflake snowflake;
@Override
public List<CommonFile> saveFile(String dir, List<Part> files, Long userId) throws IOException, NotSupportedFileTypeException {
List<CommonFile> fileList = new ArrayList<>();
String allowedExt = WebConstant.IMG_TYPE + "," + WebConstant.Wps.FILE_TYPE_ALL;
for (Part file: files) {
log.info("文件名:{}", file.getSubmittedFileName());
String path = UploadFileUtil_Servlet3.uploadFile(file, allowedExt, dir);
CommonFile fileDo = new CommonFile();
String name = file.getSubmittedFileName();
fileDo.setId(snowflake.nextId());
fileDo.setFileName(name);
fileDo.setLocation(dir + java.io.File.separator + path);
fileDo.setUserId(userId);
if (WebConstant.IMG_TYPE.contains(name.substring(name.lastIndexOf(".") + 1))) {
fileDo.setVisitLocation(PropUtil.imgDomain + path);
} else {
fileDo.setVisitLocation(PropUtil.domain + "file/download/"+fileDo.getId());
}
commonFileMapper.insertSelective(fileDo);
log.info("保存文件:{}", fileDo);
fileList.add(fileDo);
}
return fileList;
}
@Override
public CommonFile getById(Long id) {
return commonFileMapper.selectByPrimaryKey(id);
}
}

32
mt/src/main/java/com/ccsens/mt/service/IFileService.java

@ -0,0 +1,32 @@
package com.ccsens.mt.service;
import com.ccsens.mt.bean.po.CommonFile;
import com.ccsens.util.NotSupportedFileTypeException;
import javax.servlet.http.Part;
import java.io.IOException;
import java.util.List;
/**
* 文件操作
* @author whj
*/
public interface IFileService {
/***
* 批量上传文件
* @param dir 上级目录
* @param files 文件
* @param userId 用户id
* @return 文件信息
* @throws IOException 文件存储异常
* @throws NotSupportedFileTypeException 文件存储异常
*/
List<CommonFile> saveFile(String dir, List<Part> files, Long userId) throws IOException, NotSupportedFileTypeException;
/**
* 根据ID查询数据
* @param id id
* @return 文件
*/
CommonFile getById(Long id);
}

6
mt/src/main/java/com/ccsens/mt/util/Constant.java

@ -42,9 +42,9 @@ public class Constant {
public final static byte TEAM_NO = 0; public final static byte TEAM_NO = 0;
public final static byte TEAM_YES = 1; public final static byte TEAM_YES = 1;
public final static int TIWN_MAX_NUM = 3; public final static int TIWN_MAX_NUM = 3;
}
public static class File{
public static final String UPLOAD_URL = "upload";
} }
} }

258
mt/src/main/resources/mapper_raw/CommonFileMapper.xml

@ -0,0 +1,258 @@
<?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.ccsens.mt.persist.mapper.CommonFileMapper">
<resultMap id="BaseResultMap" type="com.ccsens.mt.bean.po.CommonFile">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="user_id" jdbcType="BIGINT" property="userId" />
<result column="file_name" jdbcType="VARCHAR" property="fileName" />
<result column="location" jdbcType="VARCHAR" property="location" />
<result column="visit_location" jdbcType="VARCHAR" property="visitLocation" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, user_id, file_name, location, visit_location, created_at, updated_at, rec_status
</sql>
<select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CommonFileExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from t_common_file
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from t_common_file
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from t_common_file
where id = #{id,jdbcType=BIGINT}
</delete>
<delete id="deleteByExample" parameterType="com.ccsens.mt.bean.po.CommonFileExample">
delete from t_common_file
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</delete>
<insert id="insert" parameterType="com.ccsens.mt.bean.po.CommonFile">
insert into t_common_file (id, user_id, file_name,
location, visit_location, created_at,
updated_at, rec_status)
values (#{id,jdbcType=BIGINT}, #{userId,jdbcType=BIGINT}, #{fileName,jdbcType=VARCHAR},
#{location,jdbcType=VARCHAR}, #{visitLocation,jdbcType=VARCHAR}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CommonFile">
insert into t_common_file
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="userId != null">
user_id,
</if>
<if test="fileName != null">
file_name,
</if>
<if test="location != null">
location,
</if>
<if test="visitLocation != null">
visit_location,
</if>
<if test="createdAt != null">
created_at,
</if>
<if test="updatedAt != null">
updated_at,
</if>
<if test="recStatus != null">
rec_status,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="userId != null">
#{userId,jdbcType=BIGINT},
</if>
<if test="fileName != null">
#{fileName,jdbcType=VARCHAR},
</if>
<if test="location != null">
#{location,jdbcType=VARCHAR},
</if>
<if test="visitLocation != null">
#{visitLocation,jdbcType=VARCHAR},
</if>
<if test="createdAt != null">
#{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
#{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.ccsens.mt.bean.po.CommonFileExample" resultType="java.lang.Long">
select count(*) from t_common_file
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update t_common_file
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.userId != null">
user_id = #{record.userId,jdbcType=BIGINT},
</if>
<if test="record.fileName != null">
file_name = #{record.fileName,jdbcType=VARCHAR},
</if>
<if test="record.location != null">
location = #{record.location,jdbcType=VARCHAR},
</if>
<if test="record.visitLocation != null">
visit_location = #{record.visitLocation,jdbcType=VARCHAR},
</if>
<if test="record.createdAt != null">
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
</if>
<if test="record.updatedAt != null">
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update t_common_file
set id = #{record.id,jdbcType=BIGINT},
user_id = #{record.userId,jdbcType=BIGINT},
file_name = #{record.fileName,jdbcType=VARCHAR},
location = #{record.location,jdbcType=VARCHAR},
visit_location = #{record.visitLocation,jdbcType=VARCHAR},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.ccsens.mt.bean.po.CommonFile">
update t_common_file
<set>
<if test="userId != null">
user_id = #{userId,jdbcType=BIGINT},
</if>
<if test="fileName != null">
file_name = #{fileName,jdbcType=VARCHAR},
</if>
<if test="location != null">
location = #{location,jdbcType=VARCHAR},
</if>
<if test="visitLocation != null">
visit_location = #{visitLocation,jdbcType=VARCHAR},
</if>
<if test="createdAt != null">
created_at = #{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.ccsens.mt.bean.po.CommonFile">
update t_common_file
set user_id = #{userId,jdbcType=BIGINT},
file_name = #{fileName,jdbcType=VARCHAR},
location = #{location,jdbcType=VARCHAR},
visit_location = #{visitLocation,jdbcType=VARCHAR},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

1
util/src/main/java/com/ccsens/util/WebConstant.java

@ -11,6 +11,7 @@ public class WebConstant {
public static final byte STATUS_EXIT = 0; public static final byte STATUS_EXIT = 0;
/**数据已删除*/ /**数据已删除*/
public static final byte STATUS_DELETE = 1; public static final byte STATUS_DELETE = 1;
public static final String IMG_TYPE = "bmp,jpg,png,tif,gif,pcx,tga,exif,fpx,svg,psd,cdr,pcd,dxf,ufo,eps,ai,raw,WMF,webp";
/**属性名*/ /**属性名*/
public static class Field{ public static class Field{

Loading…
Cancel
Save