Commit d3778554 authored by hanfeng's avatar hanfeng

Merge branch 'master_activity-hf' into dev

parents 1a814750 b5a28ae9
......@@ -254,5 +254,19 @@ public class AppUserRest {
return ObjectRestResponse.succ();
}
@ApiModelProperty("检查手机号验证码")
@GetMapping("/unauth/checkMobilecode")
public ObjectRestResponse checkMobilecode(@RequestParam(value = "phone") String phone,
@RequestParam(value = "mobilecode") String mobilecode){
if (StringUtils.isBlank(phone)||StringUtils.isBlank(mobilecode)){
return ObjectRestResponse.createFailedResult(ResultCode.NULL_CODE, "参数为空");
}
String redisKey=appPermissionService.checkCodeByUsername(phone,mobilecode);
if (StringUtils.isBlank(redisKey)){
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE, "验证码错误");
}
return ObjectRestResponse.succ();
}
}
......@@ -80,6 +80,11 @@ public class Activity {
@ApiModelProperty("活动场地(地址格式)")
private String address;
@Column(name = "address_img")
@ApiModelProperty("地址图片")
private String addressImg;
@Column(name = "latitude")
@ApiModelProperty("纬度(不展示")
private BigDecimal latitude;
......@@ -88,9 +93,6 @@ public class Activity {
@ApiModelProperty("经度 (不展示)")
private BigDecimal longitude;
@Column(name = "content")
@ApiModelProperty("活动图文内容")
private String content;
@Column(name = "is_show")
@ApiModelProperty("活动开关(1开,0关)")
......@@ -108,10 +110,22 @@ public class Activity {
@ApiModelProperty("0-默认;1-报名中,2-进行中;3-已结束")
private Integer status;
@Column(name = "content")
@ApiModelProperty("活动图文内容(峰会主题)")
private String content;
@Column(name = "act_desc")
@ApiModelProperty("活动对象说明(不展示)")
@ApiModelProperty("活动对象说明(诚邀莅临)")
private String actDesc;
@Column(name = "company_desc")
@ApiModelProperty("公司简章")
private String companyDesc;
@Column(name = "vehicle_imgs")
@ApiModelProperty("房车介绍")
private String vehicleImgs;
@Column(name = "process_json")
@ApiModelProperty("活动流程")
private String processJson;
......
......@@ -24,13 +24,14 @@ public class ActivityShow {
@ApiModelProperty("活动id")
private Integer activityId;
@Column(name = "type")
@ApiModelProperty("1-图片;2-视频")
private Integer type;
@Column(name = "path")
@ApiModelProperty("图片或视频路径")
private String path;
@Column(name = "video_path")
@ApiModelProperty("视频路径(逗号分割)")
private String videoPath;
@Column(name = "picture_path")
@ApiModelProperty("图片路径(逗号分割)")
private String picturePath;
@Column(name = "crt_time")
@ApiModelProperty("创建时间")
......@@ -41,4 +42,6 @@ public class ActivityShow {
private Integer isDel;
}
......@@ -13,6 +13,8 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import tk.mybatis.mapper.entity.Example;
import javax.xml.crypto.Data;
import java.util.Date;
import java.util.List;
/**
......@@ -40,21 +42,20 @@ public class ActivityBiz extends BaseBiz<ActivityMapper, Activity> {
criteria.andLike("title", String.format("%%%s%%", query.getTitle().trim()));
}
if (query.getStartTime() != null) {
criteria.andLike("startTime", query.getStartTime() / 1000 + "%");
criteria.andLike("startTime", query.getStartTime()/(1000*60*60)+"%");
}
if (query.getStatus() != null) {
criteria.andEqualTo("status", query.getStatus());
}
if (query.getType() != null && AccessType.PUBLIC.getCode().equals(query.getType())) {
criteria.andEqualTo("isPublish", PUBLISHED);
}
exa.orderBy("rank").asc().orderBy("startTime").desc();
if (AccessType.PUBLIC.getCode().equals(query.getType())) {
return mapper.selectByExample(exa);
}
// if (AccessType.PUBLIC.getCode().equals(query.getType())) {
//// return mapper.selectByExample(exa);
//// }
PageHelper.startPage(query.getPage(), query.getLimit());
......
......@@ -24,7 +24,9 @@ public class ActivityShowBiz extends BaseBiz<ActivityShowMapper, ActivityShow> {
private ActivityBiz activityBiz;
public ActivityShowDto getOne(Integer activityId) {
return mapper.getOne(activityId);
ActivityShow activityShow = new ActivityShow();
activityShow.setActivityId(activityId);
return mapper.getOne(activityId);
}
@Transactional(rollbackFor = Exception.class)
......
......@@ -2,7 +2,7 @@ package com.xxfc.platform.summit.config;
import com.github.wxiaoqi.security.common.handler.GlobalExceptionHandler;
import com.xxfc.platform.summit.interceptor.WeChatH5LoginInterceoptor;
import com.xxfc.platform.summit.interceptor.WeChatH5LoginInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
......@@ -27,8 +27,8 @@ public class WebConfiguration implements WebMvcConfigurer {
}
@Bean
WeChatH5LoginInterceoptor getWeChatH5LoginRestInterceptor() {
return new WeChatH5LoginInterceoptor();
WeChatH5LoginInterceptor getWeChatH5LoginRestInterceptor() {
return new WeChatH5LoginInterceptor();
}
/**
......@@ -38,7 +38,7 @@ public class WebConfiguration implements WebMvcConfigurer {
private ArrayList<String> getIncludePathPatterns() {
ArrayList<String> list = new ArrayList<>();
String[] urls = {
"/activity/**"
"/auth/activity/**"
};
Collections.addAll(list, urls);
return list;
......
......@@ -5,6 +5,8 @@ import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.summit.biz.ActivityBiz;
import com.xxfc.platform.summit.entity.Activity;
import com.xxfc.platform.summit.pojo.ActivityQuery;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
/**
......@@ -12,16 +14,19 @@ import org.springframework.web.bind.annotation.*;
*/
@RestController
@RequestMapping("/activity")
@Api(tags = "峰会")
public class ActivityController extends BaseController<ActivityBiz, Activity> {
@PostMapping("/app/unauth/list")
@ApiOperation(value = "峰会列表",notes = "峰会列表")
public ObjectRestResponse getList(@RequestBody ActivityQuery query ){
return ObjectRestResponse.succ(baseBiz.getList(query));
}
@Override
@PutMapping ("/update")
@ApiOperation(value = "修改",notes = "修改")
public ObjectRestResponse update(@RequestBody Activity activity ){
if (baseBiz.update(activity)) {
return ObjectRestResponse.succ();
......@@ -31,6 +36,7 @@ public class ActivityController extends BaseController<ActivityBiz, Activity> {
@Override
@PostMapping("/add")
@ApiOperation(value = "添加",notes = "添加")
public ObjectRestResponse add(@RequestBody Activity activity ){
if (baseBiz.add(activity)) {
return ObjectRestResponse.succ();
......
......@@ -17,8 +17,7 @@ import org.springframework.web.bind.annotation.*;
public class ActivityShowController extends BaseController<ActivityShowBiz, ActivityShow> {
@GetMapping("/one/{activityId}")
public ObjectRestResponse getOne(@PathVariable Integer activityId){
return ObjectRestResponse.succ( baseBiz.getOne(activityId));
return ObjectRestResponse.succ(baseBiz.getOne(activityId));
}
......@@ -29,4 +28,6 @@ public class ActivityShowController extends BaseController<ActivityShowBiz, Acti
}
return ObjectRestResponse.createDefaultFail();
}
}
......@@ -29,7 +29,7 @@ import java.util.concurrent.TimeUnit;
*
*/
@Slf4j
public class WeChatH5LoginInterceoptor extends HandlerInterceptorAdapter {
public class WeChatH5LoginInterceptor extends HandlerInterceptorAdapter {
@Autowired
......
......@@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xxfc.platform.summit.mapper.ActivityShowMapper">
<select id="getOne" parameterType="Integer" resultType="com.xxfc.platform.summit.entity.ActivityShow">
<select id="getOne" parameterType="Integer" resultType="com.xxfc.platform.summit.dto.ActivityShowDto">
SELECT
a.banner,
s.*
......
......@@ -8,7 +8,9 @@ import lombok.NoArgsConstructor;
@NoArgsConstructor
public enum FileTypeEnum {
FILE_TYPE_ZIP("application/zip", ".zip"),
FILE_TYPE_RAR("application/octet-stream", ".rar");
FILE_TYPE_RAR("application/octet-stream", ".rar"),
FILE_TYPE_X_ZIP("application/x-zip-compressed", ".zip");
public String type;
public String fileStufix;
......
......@@ -8,6 +8,7 @@ import com.xxfc.platform.universal.dto.ImgDTO;
import com.xxfc.platform.universal.dto.UploadImgDTO;
import com.xxfc.platform.universal.service.FileUploadService;
import com.xxfc.platform.universal.service.UploadService;
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;
......@@ -38,10 +39,12 @@ import java.util.Map;
@Slf4j
public class UploadController{
@Autowired
UploadService uploadService;
@Autowired
FileUploadService fileUploadService;
@Autowired
UploadService uploadService;
@Autowired
FileUploadService fileUploadService;
@Autowired
UploadZipService uploadZipService;
private static Integer MAX_DRIVING_LICENSE_SIZE = 10 * 1024 * 1024;//10M
......@@ -177,5 +180,12 @@ public class UploadController{
@RequestParam(value = "prefix",defaultValue = "renovate")String prefix) throws Exception {
return fileUploadService.handlerUpload(upfile,null,prefix);
}
@PostMapping(value="/app/unauth/pictureZip")
public ObjectRestResponse pictureZip(
@RequestBody MultipartFile file,
@RequestBody String password) throws Exception {
return uploadZipService.uploadPictureZip(file,password);
}
}
package com.xxfc.platform.universal.service;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import net.lingala.zip4j.exception.ZipException;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
public interface UploadZipService {
ObjectRestResponse uploadPictureZip(MultipartFile file, String password) throws IOException;
}
......@@ -29,6 +29,8 @@ public class FileUploadServiceImpl implements FileUploadService {
private static final String APK_SUFFIX=".apk";
private static final String APK_NAME="xxfc.apk";
private static final String JPG=".jpg";
private static final String PNG=".png";
@Override
public ObjectRestResponse handlerUpload(MultipartFile zipFile,String password,String prefix)throws Exception {
......@@ -100,7 +102,4 @@ public class FileUploadServiceImpl implements FileUploadService {
zin.closeEntry();
return path;
}
}
package com.xxfc.platform.universal.service.impl;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.xxfc.platform.universal.constant.enumerate.FileTypeEnum;
import com.xxfc.platform.universal.service.UploadZipService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.*;
import java.util.Enumeration;
import java.util.Objects;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
@Slf4j
@Service
public class UploadZipServiceImpl implements UploadZipService {
@Value("${universal.uploadPath}")
private String uploadPath ;
@Value("${universal.url}")
private String xx_url ;
private static final String APK_SUFFIX=".apk";
private static final String APK_NAME="xxfc.apk";
private static final String JPG=".jpg";
private static final String PNG=".png";
@Override
public ObjectRestResponse uploadPictureZip(MultipartFile file, String password) throws IOException {
if (Objects.isNull(file)) {
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"请上传压缩文件!");
}
String fileContentType = file.getContentType();
//将压缩包保存在指定路径
String packFilePath = uploadPath + File.separator + file.getName();
if (FileTypeEnum.FILE_TYPE_ZIP.type.equals(fileContentType)||FileTypeEnum.FILE_TYPE_X_ZIP.type.equals(fileContentType)) {
//zip解压缩处理
packFilePath += FileTypeEnum.FILE_TYPE_ZIP.fileStufix;
} else {
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"上传的压缩包格式不正确,仅支持zip压缩文件!");
}
File fi = new File(packFilePath);
try {
file.transferTo(fi);
} catch (IOException e) {
log.error("zip file save to " + uploadPath + " error", e.getMessage(), e);
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"保存压缩文件到:" + uploadPath + " 失败!");
}
//zip压缩包
return unPackZip(fi, password, uploadPath);
}
public ObjectRestResponse unPackZip(File file, String password, String destPath) throws IOException {
ZipFile zipFile = new ZipFile(file);
Enumeration<? extends ZipEntry> entries = zipFile.entries();
while (entries.hasMoreElements()) {
ZipEntry entry = entries.nextElement();
if (entry.isDirectory()) {
destPath =destPath+File.separator+ entry.getName();
File dir = new File(destPath);
dir.mkdir();
}else {
}
}
return null;
}
}
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