Commit b9ca272d authored by 赵啸非's avatar 赵啸非

修改同步事项

parent 67bd5d0e
...@@ -139,9 +139,9 @@ public class SkinBaseController extends BaseCRUDJsonBodyMappingController<SkinBa ...@@ -139,9 +139,9 @@ public class SkinBaseController extends BaseCRUDJsonBodyMappingController<SkinBa
/** /**
* 获取皮肤所有相关资源文件并压缩打包成zip * 获取皮肤所有相关资源文件并压缩打包成zip
*/ */
@GetMapping(value = "skinzip") @GetMapping(value = "zip")
@UnAuth @UnAuth
public void skinzip() { public void zip() {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
try { try {
SkinBaseEntity query = new SkinBaseEntity(); SkinBaseEntity query = new SkinBaseEntity();
......
...@@ -3,6 +3,7 @@ package com.mortals.xhx.module.cipher.web; ...@@ -3,6 +3,7 @@ package com.mortals.xhx.module.cipher.web;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.ZipUtil; import cn.hutool.core.util.ZipUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -13,8 +14,11 @@ import com.mortals.xhx.base.system.upload.service.UploadService; ...@@ -13,8 +14,11 @@ import com.mortals.xhx.base.system.upload.service.UploadService;
import com.mortals.xhx.common.utils.CipherUtil; import com.mortals.xhx.common.utils.CipherUtil;
import com.mortals.xhx.common.utils.DecodeUtil; import com.mortals.xhx.common.utils.DecodeUtil;
import com.mortals.xhx.common.utils.LicenseUtil; import com.mortals.xhx.common.utils.LicenseUtil;
import com.mortals.xhx.module.menu.model.MenuEntity;
import com.mortals.xhx.module.menu.service.MenuService;
import com.mortals.xhx.utils.EncodeUtil; import com.mortals.xhx.utils.EncodeUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
...@@ -23,11 +27,16 @@ import org.springframework.web.bind.annotation.RequestParam; ...@@ -23,11 +27,16 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.ByteArrayOutputStream;
import java.io.File; import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import static com.mortals.framework.web.BaseController.VALUE_RESULT_SUCCESS; import static com.mortals.framework.web.BaseController.VALUE_RESULT_SUCCESS;
import static com.mortals.xhx.base.framework.exception.ExceptionHandle.*; import static com.mortals.xhx.base.framework.exception.ExceptionHandle.*;
...@@ -59,6 +68,7 @@ public class CipherController { ...@@ -59,6 +68,7 @@ public class CipherController {
private UploadService uploadService; private UploadService uploadService;
/** /**
* 用户在点击,查看`授权信息`按钮时,请求check接口,进行一次授权验证(每天第一次通过其他接口访问系统时,也会验证一次 ) * 用户在点击,查看`授权信息`按钮时,请求check接口,进行一次授权验证(每天第一次通过其他接口访问系统时,也会验证一次 )
* 如果通过则返回授权信息(开始+结束时间) * 如果通过则返回授权信息(开始+结束时间)
...@@ -131,4 +141,7 @@ public class CipherController { ...@@ -131,4 +141,7 @@ public class CipherController {
return jsonStr; return jsonStr;
} }
} }
package com.mortals.xhx.module.uploadfile.web; package com.mortals.xhx.module.uploadfile.web;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.upload.service.UploadService;
import com.mortals.xhx.module.menu.model.MenuEntity;
import com.mortals.xhx.module.menu.service.MenuService;
import com.mortals.xhx.module.param.service.ParamService; import com.mortals.xhx.module.param.service.ParamService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -18,6 +26,9 @@ import com.mortals.xhx.module.uploadfile.service.UploadfileService; ...@@ -18,6 +26,9 @@ import com.mortals.xhx.module.uploadfile.service.UploadfileService;
import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils; import com.mortals.framework.util.StringUtils;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -26,11 +37,15 @@ import java.util.stream.Collectors; ...@@ -26,11 +37,15 @@ import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import java.util.Arrays; import java.util.Arrays;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*; import static com.mortals.framework.ap.SysConstains.*;
import static com.mortals.framework.web.BaseController.VALUE_RESULT_SUCCESS;
import static com.mortals.xhx.base.framework.exception.ExceptionHandle.*;
/** /**
* 上传文件业务 * 上传文件业务
...@@ -40,11 +55,17 @@ import static com.mortals.framework.ap.SysConstains.*; ...@@ -40,11 +55,17 @@ import static com.mortals.framework.ap.SysConstains.*;
*/ */
@RestController @RestController
@RequestMapping("uploadfile") @RequestMapping("uploadfile")
@Slf4j
public class UploadfileController extends BaseCRUDJsonBodyMappingController<UploadfileService, UploadfileEntity, Long> { public class UploadfileController extends BaseCRUDJsonBodyMappingController<UploadfileService, UploadfileEntity, Long> {
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
@Autowired
private UploadService uploadService;
@Autowired
private MenuService menuService;
public UploadfileController() { public UploadfileController() {
super.setFormClass(UploadfileForm.class); super.setFormClass(UploadfileForm.class);
super.setModuleDesc("上传文件业务"); super.setModuleDesc("上传文件业务");
...@@ -57,4 +78,60 @@ public class UploadfileController extends BaseCRUDJsonBodyMappingController<Uplo ...@@ -57,4 +78,60 @@ public class UploadfileController extends BaseCRUDJsonBodyMappingController<Uplo
} }
/**
* 获取所有相关资源文件并压缩打包成zip
*/
@GetMapping(value = "zip")
@UnAuth
public void zip() {
JSONObject jsonObject = new JSONObject();
try {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ZipOutputStream zip = new ZipOutputStream(outputStream);
List<MenuEntity> menuEntities = menuService.find(new MenuEntity());
for (MenuEntity menuEntity : menuEntities) {
String imgPath = menuEntity.getImgPath();
String filePath = uploadService.getFilePath(imgPath);
File file = new File(filePath);
if (file.exists()) {
try {
zip.putNextEntry(new ZipEntry(StrUtil.subAfter(imgPath, "/", false)));
IOUtils.write(FileUtil.readBytes(file), zip);
zip.flush();
zip.closeEntry();
} catch (Exception e) {
log.error("异常", e.getMessage());
}
}
}
IOUtils.closeQuietly(zip);
byte[] bytes = outputStream.toByteArray();
genCode(response, bytes);
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS);
jsonObject.put(KEY_RESULT_MSG, "压缩文件成功!");
} catch (Exception e) {
log.error("获取异常", e);
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE);
}
}
/**
* 生成zip文件
*/
private void genCode(HttpServletResponse response, byte[] data) throws IOException {
response.reset();
response.addHeader("Access-Control-Allow-Origin", "*");
response.addHeader("Access-Control-Expose-Headers", "Content-Disposition");
response.setHeader("Content-Disposition", "attachment; filename=\"skin.zip\"");
response.addHeader("Content-Length", "" + data.length);
response.setContentType("application/octet-stream; charset=UTF-8");
IOUtils.write(data, response.getOutputStream());
}
} }
\ No newline at end of file
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