Commit 9e2c7e1f authored by hanfeng's avatar hanfeng

Merge branch 'master_activity-hf' into base-modify

# Conflicts:
#	xx-summit/xx-summit-server/src/main/java/com/xxfc/platform/summit/biz/ActivityBiz.java
#	xx-universal/xx-universal-server/pom.xml
parents cf2c42af a7bf6735
......@@ -126,4 +126,5 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
}
}
......@@ -7,6 +7,9 @@ public class SystemConfig {
// 项目url
public static final String XXMP_URL = SystemProperty.getConfig("XXMP_URL");
// 视频url
public static final String VIDEO_URL = SystemProperty.getConfig("VIDEO_URL");
// token到期时间
// token到期时间
public static Integer TOKENOVERTIME = Integer.valueOf(SystemProperty.getConfig("TOKEN_OVER_TIME"));
// redis缓存时间
......
#项目url
#\u9879\u76EEurl
XXMP_URL=/image
#token到期时间
#\u89C6\u9891\u4FDD\u5B58\u6587\u4EF6
VIDEO_URL=/video
#token\u5230\u671F\u65F6\u95F4
TOKEN_OVER_TIME=604800
#itoken到期时间(6天)
#itoken\u5230\u671F\u65F6\u95F4(6\u5929)
REDIS_ITOKEN_TIME=51840
#redis有效期
#redis\u6709\u6548\u671F
REDIS_TOKEN_TIME=604800
#session有效期
#session\u6709\u6548\u671F
SESSION_TIME=3600
#默认头像
#\u9ED8\u8BA4\u5934\u50CF
USER_HEADER_URL_DEFAULT=https://xxtest.upyuns.com/image/app/default_%20avatar.png
#默认昵称
#\u9ED8\u8BA4\u6635\u79F0
USER_NIKENAME_DEFAULT=XX_
#短信机
#\u77ED\u4FE1\u673A
ACCESSKEYID=LTAInxMDwHQL8yg9
ACCESSKEYSECRET=OCKDEiwKGjePCZgPeWMEUFGwGbKYLA
TEMPLATECODE=SMS_170070101
SIGNNAME=滴房车
#微信支付配置
SIGNNAME=\u6EF4\u623F\u8F66
#\u5FAE\u4FE1\u652F\u4ED8\u914D\u7F6E
WINXIN_AppID=wx425608b69a34736f
WINXIN_PARTNER_KEY=xxfcXXDfangche74upyuns3AD4334533
WINXIN_PARTNER=1539689201
......@@ -31,15 +33,15 @@ APP_ID=wx9ed5e51251cf7c61
APP_PARTNER=1539689201
APP_PARTNER_KEY=xxfcXXDfangche74upyuns3AD4334533
APP_TRADE_TYPE=APP
#支付回调
#\u652F\u4ED8\u56DE\u8C03
weixinHost=xxtest.upyuns.com
#证书存放目录
#\u8BC1\u4E66\u5B58\u653E\u76EE\u5F55
APICLIENT_CERT=D:\\cert\\1514583081_20181017_cert.p12
#支付宝配置
#\u652F\u4ED8\u5B9D\u914D\u7F6E
ALIPAY_APPID=2019070965781964
ALIPAY_PID=2088531634846583
#支付宝公钥
#\u652F\u4ED8\u5B9D\u516C\u94A5
ALIPAY_PUBLIC_KEY=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAj/EMaAD2iJP3I5M0g6pssDDe3RxF5I3ECM/Kz/btM0RiW2g5oRrHSjtGuos9l1QhQAY0SrVqa2eZdPKUB3ZqJdimQiXr3dbiMvG9UCs8vVUcrtCHCBjDllKQLiYzboxE6JLXyfII5tIXbFKiGyiEyXQnffUhQ9uGyT2EGWGecz6PLIjDdbwpxuzF2gIUzV3bPxb+0axejBxJ/3zKnWrsbyq2nvs8XrzrR2CEggNqgqsKzaacCL1yZjXzQRseSnCMtgSxR5W5afbdY0zqbUlLHUrUZ8ycCRC0ECuI9HyTbuqtdWHEZH7vIH44wEQWZPDRhMfMZvzmPUgpTWZLv5BtaQIDAQAB
ALIPAY_ACOUNT=xxfc810@163.com
ALIPAY_PRIVATE_KEY=MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC0wXVGAameVSLlLrq7edrMuoabN16/bYJNosLmPlHltEhehKO1ak/oIFvlKGyKwsW+xXd8t27p5hpsHqzNisU/jLbwEi6t0U/RBMbx3ult9zNhsZqSdJxe4QINChudVM6FdE8ssaq19ABwiLisMxxck0IiXDmesGI6vUSNzLEvKyYWTUsVsW1HgYXVjXmi8mOiwuFsJtdALS/psWci3UlX80rYG9KGqSBWT0B0Nr8UcM1L7UEkOHUEf1uq4Ipl5rTzgqoRQN5uHbBu50b7welAL2MFA9D/Ecv+FOfMIiLBtm1/6zNtjo/mvwORtS64mJXCaAbY1Pxa1bqs274fAwWtAgMBAAECggEAOObZ2zL0yZI1jP477H68wUxKyZwRqKN5rKT7Q+4EbBJn4dFRk++mvgVJyIcEPF56T8bsCYfZU6qLUNQLRB1WYN4UTNj8dt14ie0+D7BDvclfFHcLmOU6wKeGtMIk1U94QAzQS9qWSfdJGCQCNrtUR1RYMmbkAK+4DJO+fAEfGiCr1oMQpsz0h6Jhwp/DDBXZEjPdrECOjx2w5ZVULyPxFui2NQ8IS3rTT5SQvOBAgn9dbgZ/FVVbs2x6SpnWyOCUREK0uaLXJgf0JoX1WW4bswZlYmd7qURPscwFVKdYRautimcmO0FOUue62aPSYfvJwx8tTZanQbbwfrr0XrisBQKBgQDyKPYDYZzgGL/G5H8CQZajKnqg7a5AAZXJQLKkF7kiEgOlB3b6OqK6CeKVGawfuNIshECmmKcZmqrsPV42xrZl458kiDyqJNHq2lgFs9kj9BFUDi11EZfDGah4piJo5tgc09Hj6eAmeKdmG7aTS0/954xOK7eBFdG1T6R1Rd9Y4wKBgQC/Fhd5Nw6XYAg4qBmzOnvc9YwEL+wdy0aontFAFzaQlgkYm+efhYyjMcjyj4aloJZzpTd6eKbZI57IzihJI+F8+b1qToQDu8A2BTPkiOyXRcNY3y0LTNx7/gae6a9oGFc+8ILGa41va7WKjuPd08aXpSSBI34u10wWRMP+70m8LwKBgQCLerRYtjyZhyfO84WEUyrkyG7hioU3MLKJvM4oXdGwohefUnFhJ6za4x6zKppNmzLTmUlzq7FzufaBI8fEXShp/3WGoUHv7k1KrIDOqAyF/OqOM6xTJdL3+StkcqyXJ3+K+yaF1AvbnNsuoP/ETzi/0kKqM9v6agrkF/9t3NUMaQKBgCpafS1y1Jscv/W+3KNrLRUWn8g1zwHzkl/Bg+POwVtexflcZQRol3l8iWuqAFApve84CYntwB2U1ZbwiuFbQJlwyVkMuhoRvVK76HqZFseYwOmr3dIJYT1iWplSdnx+GKhsqq/MGvc9SmnBriP20qe+BM9SzJ8ZPVYaO87/vrolAoGARD8/IeEzMCPfYr9zBkE5rBtiT7t6nZXmMc6GH2Vao9meDofN8vj/XEfTGovusUYTWyA2Enac0YKdK6f6f+NYBqGYqn5Ludgxeotzo9UoXd3Hnv1gMCRs4ehloVODkHj2qhkvqL2iuZLsNp/wMq/ZHpRUzT4bO5H2FQhH4SUElKI=
......
package com.xxfc.platform.summit.pojo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import java.util.HashMap;
import java.util.Map;
@Data
public class ActivityBmExcel {
private final Map<Integer,String> map= new HashMap(){{
put(0,"否");
put(1,"是");
}};
@Column(name = "name")
@ApiModelProperty("报名人姓名")
private String name;
@Column(name = "phone")
@ApiModelProperty("报名人电话")
private String phone;
@Column(name = "id_number")
@ApiModelProperty("身份证号")
private String idNumber;
@Column(name = "inviter")
@ApiModelProperty("邀请人")
private String inviter;
@Column(name = "qd_status")
@ApiModelProperty("0-未签到;1-已签到")
private String qdStatus;
public void setQdStatus(Integer qdStatus) {
this.qdStatus = map.get(qdStatus);
}
}
......@@ -3,18 +3,23 @@ package com.xxfc.platform.summit.biz;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.summit.entity.Activity;
import com.xxfc.platform.summit.mapper.ActivityMapper;
import com.xxfc.platform.summit.pojo.AccessType;
import com.xxfc.platform.summit.pojo.ActivityQuery;
import com.xxfc.platform.summit.pojo.SummitStatus;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import tk.mybatis.mapper.entity.Example;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author Administrator
......@@ -22,6 +27,9 @@ import java.util.List;
@Service
public class ActivityBiz extends BaseBiz<ActivityMapper, Activity> {
@Value("${wx.qdLimts}")
private BigDecimal qdLimts;
/**
* 未删除
*/
......@@ -115,4 +123,24 @@ public class ActivityBiz extends BaseBiz<ActivityMapper, Activity> {
activity.setUpdTime(System.currentTimeMillis());
mapper.updateByPrimaryKeySelective(activity);
}
public ObjectRestResponse checkQdlimits(Double latitude, Double longitude, Integer id){
Map<String, Object> map= initParam(latitude,longitude,id);
BigDecimal dinate=mapper.getdinate(map);
int status=0;
if (qdLimts.compareTo(dinate)>=0){
status=1;
}
return ObjectRestResponse.succ(status);
}
private Map<String, Object> initParam( Double latitude, Double longitude, Integer id) {
Map<String,Object> params = new HashMap<String,Object>();
params.put("latitude",latitude);
params.put("longitude",longitude);
params.put("id",id);
return params;
}
}
......@@ -9,20 +9,27 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.constant.RestCode;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.google.common.collect.Lists;
import com.xxfc.platform.summit.entity.Activity;
import com.xxfc.platform.summit.entity.ActivityBm;
import com.xxfc.platform.summit.entity.User;
import com.xxfc.platform.summit.mapper.ActivityBmMapper;;
import com.xxfc.platform.summit.pojo.ActivityBmExcel;
import com.xxfc.platform.summit.pojo.ActivityBmQuery;
import com.xxfc.platform.summit.vo.MeepoActivityVo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtilsBean;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.InvocationTargetException;
import java.util.LinkedList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author Administrator
......@@ -259,4 +266,16 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> {
return null;
}
public List<ActivityBmExcel> excel(ActivityBmQuery query) throws Exception {
PageInfo<ActivityBm> pageInfo = list(query);
LinkedList<ActivityBmExcel> activityBmExcels = Lists.newLinkedList();
List<ActivityBm> list = pageInfo.getList();
for (ActivityBm activityBm : list) {
ActivityBmExcel activityBmExcel = new ActivityBmExcel();
BeanUtilsBean.getInstance().copyProperties(activityBmExcel,activityBm);
activityBmExcels.add(activityBmExcel);
}
return activityBmExcels;
}
}
package com.xxfc.platform.summit.controller;
import cn.hutool.core.io.IoUtil;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.summit.biz.ActivityBmBiz;
import com.xxfc.platform.summit.biz.UserBiz;
import com.xxfc.platform.summit.entity.ActivityBm;
import com.xxfc.platform.summit.entity.User;
import com.xxfc.platform.summit.pojo.ActivityBmExcel;
import com.xxfc.platform.summit.pojo.ActivityBmQuery;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* @author Administrator
*/
@RestController
@RequestMapping("/activityBm")
public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityBm> {
@Api(tags = {"峰会报名信息"})
public class ActivityBmController extends BaseController<ActivityBmBiz, ActivityBm> {
@Autowired
HttpServletResponse response;
@Autowired
UserBiz userBiz;
@PostMapping("/add")
public ObjectRestResponse bm(@RequestBody ActivityBm activityBm, HttpServletRequest request){
User user=userBiz.getSession(request);
public ObjectRestResponse bm(@RequestBody ActivityBm activityBm, HttpServletRequest request) {
User user = userBiz.getSession(request);
try {
return ObjectRestResponse.succ(baseBiz.userBm(activityBm,user.getId()));
}catch (Exception e){
return ObjectRestResponse.succ(baseBiz.userBm(activityBm, user.getId()));
} catch (Exception e) {
e.printStackTrace();
return ObjectRestResponse.createDefaultFail();
}
......@@ -39,9 +50,37 @@ public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityB
@PostMapping("/list")
public ObjectRestResponse getList( @RequestBody ActivityBmQuery query ){
public ObjectRestResponse getList(@RequestBody ActivityBmQuery query) {
return ObjectRestResponse.succ(baseBiz.list(query));
}
@PostMapping("/excel")
@ApiOperation("下载报名信息excel表")
public void getExcel(@RequestBody ActivityBmQuery query) throws Exception {
List<ActivityBmExcel> rows = baseBiz.excel(query);
// 通过工具类创建writer,默认创建xls格式
ExcelWriter writer = ExcelUtil.getWriter();
writer.addHeaderAlias("name", "姓名");
writer.addHeaderAlias("phone", "电话");
writer.addHeaderAlias("idNumber", "身份证号");
writer.addHeaderAlias("inviter", "邀请人");
writer.addHeaderAlias("qdStatus", "是否签到");
// 一次性写出内容,使用默认样式,强制输出标题
writer.write(rows, true);
//out为OutputStream,需要写出到的目标流
//response为HttpServletResponse对象
response.setContentType("application/vnd.ms-excel;charset=utf-8");
//test.xls是弹出下载对话框的文件名,不能为中文,中文请自行编码
response.setHeader("Content-Disposition", "attachment;filename=nameList.xls");
ServletOutputStream out = response.getOutputStream();
writer.flush(out, true);
// 关闭writer,释放内存
writer.close();
//此处记得关闭输出Servlet流
IoUtil.close(out);
}
}
......@@ -26,6 +26,9 @@ public class FrontActivityController extends BaseController<ActivityBiz, Activit
@Autowired
private ActivityBmBiz activityBmBiz;
@Autowired
private ActivityBiz activityBiz;
@GetMapping("app/unauth/info")
public ObjectRestResponse info(
......@@ -36,6 +39,15 @@ public class FrontActivityController extends BaseController<ActivityBiz, Activit
return activityBmBiz.getActivityById(activityId,key,request);
}
@GetMapping("app/unauth/qdLimts")
public ObjectRestResponse qdLimts(
@RequestParam(value = "activityId",defaultValue = "0")Integer activityId,
@RequestParam(value = "latitude", required = false) Double latitude,
@RequestParam(value = "longitude", required = false) Double longitude){
return activityBiz.checkQdlimits(latitude,longitude,activityId);
}
......
......@@ -3,10 +3,13 @@ package com.xxfc.platform.summit.mapper;
import com.xxfc.platform.summit.entity.Activity;
import com.xxfc.platform.summit.pojo.ActivityQuery;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.entity.Example;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
......@@ -15,4 +18,6 @@ import java.util.List;
public interface ActivityMapper extends Mapper<Activity> {
List<Activity> selectByQuery(ActivityQuery query);
BigDecimal getdinate(@Param("params") Map<String,Object> map);
}
......@@ -79,8 +79,7 @@ public class AccessTokenService {
* @return String accessToken
*/
public String getAccessTokenStr() {
// return getAccessToken().getAccessToken();
return null;
return getAccessToken().getAccessToken();
}
......@@ -102,7 +101,7 @@ public class AccessTokenService {
obj.put(wy_appid, result);
Boolean suc=summbitRedisTemplate.opsForValue().setIfAbsent(wy_appid, obj.toJSONString());
if (suc) {
// summbitRedisTemplate.expire(wy_appid, result.getExpiresIn(), TimeUnit.MINUTES);
summbitRedisTemplate.expire(wy_appid, result.getExpiresIn(), TimeUnit.MINUTES);
}
}
}
\ No newline at end of file
......@@ -29,4 +29,11 @@
</if>
order by rank asc , start_time desc
</select>
<select id="getdinate" parameterType="java.util.Map" resultType="BigDecimal">
select
IFNULL(ROUND(( (2 * ASIN( SQRT( POW( SIN((latitude * PI() / 180.0- #{params.latitude}* PI() / 180.0)/2), 2)+COS( latitude * PI() / 180.0)*COS( #{params.latitude} * PI() / 180.0)
*POW(SIN((longitude * PI() / 180.0 - #{params.longitude}* PI() /180.0)/2),2))))*6378.137)*10000)/10000 ,0 ) AS distance
FROM fc_activity WHERE id=#{params.id}
</select>
</mapper>
\ No newline at end of file
package com.xxfc.platform.universal.constant;
import java.util.Arrays;
import java.util.List;
public class VideoConstant {
public static final List<String> forms= Arrays.asList(".mp4");
}
......@@ -2,8 +2,11 @@ package com.xxfc.platform.universal.controller;
import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.constant.RestCode;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
import com.xxfc.platform.universal.constant.VideoConstant;
import com.xxfc.platform.universal.dto.ImgDTO;
import com.xxfc.platform.universal.dto.UploadImgDTO;
import com.xxfc.platform.universal.service.FileUploadService;
......@@ -12,6 +15,7 @@ import com.xxfc.platform.universal.service.UploadZipService;
import com.xxfc.platform.universal.utils.ImgBase64Util;
import com.xxfc.platform.universal.utils.PublicMsg;
import com.xxfc.platform.universal.vo.Ueditor;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
......@@ -64,6 +68,7 @@ public class UploadController{
return JsonResultUtil.createSuccessResultWithObj(uploadService.uploadFile(file,prefix));
}
@ApiOperation("视频上传")
@RequestMapping(value = "/app/unauth/uploadVideo", method = RequestMethod.POST)
public JSONObject uploadVideo(
@RequestParam("file") MultipartFile file,
......@@ -181,11 +186,25 @@ public class UploadController{
return fileUploadService.handlerUpload(upfile,null,prefix);
}
@ApiOperation("图片压缩包上传")
@PostMapping(value="/app/unauth/pictureZip")
public ObjectRestResponse pictureZip(
@RequestParam("file")MultipartFile file,
@RequestParam(value = "prefix",defaultValue = "summit")String prefix) throws Exception {
return uploadZipService.uploadPictureZip(file,prefix);
}
// @PostMapping(value="/app/unauth/uploadVideo")
// public ObjectRestResponse video(
// @RequestParam("file")MultipartFile file,
// @RequestParam(value = "prefix",defaultValue = "summit")String prefix) throws Exception {
// String filename = file.getOriginalFilename();
// String suffixName = filename.substring(filename.lastIndexOf("."));
// if (!VideoConstant.forms.contains(suffixName)) {
// return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"只能上传MP4格式");
// }
// return ObjectRestResponse.succ(uploadService.uploadVideo(file,prefix));
// }
}
package com.xxfc.platform.universal.service;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.SystemConfig;
import com.xxfc.platform.universal.constant.RedisKey;
import com.xxfc.platform.universal.utils.ImgBase64Util;
......@@ -28,6 +29,9 @@ public class UploadService {
public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd");
@Value("${universal.baseUploadPath}")
private String baseUploadPath ;
@Value("${universal.videoUploadPath}")
private String videoUploadPath ;
@Value("${universal.url}")
private String xx_url ;
@Autowired
......@@ -143,4 +147,29 @@ public class UploadService {
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers, HttpStatus.CREATED);
}
/**
* 写入上传文件,返回相对路径
* @param file
* @return
*/
public String uploadVideo(MultipartFile file,String prefix) throws Exception{
//创建本日存放目录
DateTime now = DateTime.now();
String dirPathToday = "/"+prefix+ "/" + now.toString(DEFAULT_DATE_TIME_FORMATTER);
String redisNoKey = RedisKey.UPLOAD_FILE_NO_PREFIX + now.toString(DEFAULT_DATE_TIME_FORMATTER);
Long no = redisTemplate.opsForValue().increment(redisNoKey);
if(no.equals(1l)){
redisTemplate.expire(redisNoKey,1, TimeUnit.DAYS);
}
String fileName = file.getOriginalFilename();
String realFileRelPath = dirPathToday + "/" + no + fileName.substring(fileName.lastIndexOf("."));
//文件存放路径
String filePath = videoUploadPath + realFileRelPath;
//将文件写入指定位置
FileUtils.copyInputStreamToFile(file.getInputStream(), new File(filePath));
realFileRelPath=xx_url+SystemConfig.VIDEO_URL+realFileRelPath;
return realFileRelPath;
}
}
......@@ -33,7 +33,7 @@ public class UploadZipServiceImpl implements UploadZipService {
@Value("${universal.url}")
private String xx_url ;
@Value("${photo.format}")
private String PHOTO_FORMAT=".png/.jpg/.git/.bmp";
private String PHOTO_FORMAT;
@Autowired
RedisTemplate redisTemplate;
......@@ -97,6 +97,7 @@ public class UploadZipServiceImpl implements UploadZipService {
}
}
result.substring(0,result.length()-1);
return ObjectRestResponse.succ(result.substring(0, result.length()-1));
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment