CmOrderArchiveController.java 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. package com.caimei.modules.archive.web;
  2. import javax.servlet.http.HttpServletRequest;
  3. import javax.servlet.http.HttpServletResponse;
  4. import com.caimei.modules.archive.entity.CmOrderArchiveFile;
  5. import com.caimei.modules.product.entity.Product;
  6. import org.apache.shiro.authz.annotation.RequiresPermissions;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Controller;
  9. import org.springframework.ui.Model;
  10. import org.springframework.web.bind.annotation.ModelAttribute;
  11. import org.springframework.web.bind.annotation.RequestMapping;
  12. import org.springframework.web.bind.annotation.RequestParam;
  13. import org.springframework.web.bind.annotation.ResponseBody;
  14. import org.springframework.web.multipart.MultipartFile;
  15. import org.springframework.web.servlet.mvc.support.RedirectAttributes;
  16. import com.thinkgem.jeesite.common.config.Global;
  17. import com.thinkgem.jeesite.common.persistence.Page;
  18. import com.thinkgem.jeesite.common.web.BaseController;
  19. import com.thinkgem.jeesite.common.utils.StringUtils;
  20. import com.caimei.modules.archive.entity.CmOrderArchive;
  21. import com.caimei.modules.archive.service.CmOrderArchiveService;
  22. import java.io.IOException;
  23. import java.util.List;
  24. import java.util.Map;
  25. /**
  26. * 订单资料Controller
  27. * @author Aslee
  28. * @version 2021-07-30
  29. */
  30. @Controller
  31. @RequestMapping(value = "${adminPath}/archive/cmOrderArchive")
  32. public class CmOrderArchiveController extends BaseController {
  33. @Autowired
  34. private CmOrderArchiveService cmOrderArchiveService;
  35. @ModelAttribute
  36. public CmOrderArchive get(@RequestParam(required=false) String id) {
  37. CmOrderArchive entity = null;
  38. if (StringUtils.isNotBlank(id)){
  39. entity = cmOrderArchiveService.get(id);
  40. }
  41. if (entity == null){
  42. entity = new CmOrderArchive();
  43. }
  44. return entity;
  45. }
  46. @RequestMapping(value = {"list", ""})
  47. public String list(CmOrderArchive cmOrderArchive, HttpServletRequest request, HttpServletResponse response, Model model) {
  48. Page<CmOrderArchive> page = cmOrderArchiveService.findPage(new Page<CmOrderArchive>(request, response), cmOrderArchive);
  49. model.addAttribute("page", page);
  50. return "modules/archive/cmOrderArchiveList";
  51. }
  52. @RequestMapping(value = "form")
  53. public String form(CmOrderArchive cmOrderArchive, Model model) {
  54. List<String> shopOrderIdList = cmOrderArchiveService.getShopOrderIdList(cmOrderArchive.getShopOrderId());
  55. List<CmOrderArchiveFile> archiveFileList = null;
  56. if (StringUtils.isNotEmpty(cmOrderArchive.getId())) {
  57. archiveFileList = cmOrderArchiveService.getArchiveFileList(cmOrderArchive.getId());
  58. }
  59. model.addAttribute("cmOrderArchive", cmOrderArchive);
  60. model.addAttribute("shopOrderIdList", shopOrderIdList);
  61. model.addAttribute("archiveFileList", archiveFileList);
  62. return "modules/archive/cmOrderArchiveForm";
  63. }
  64. @RequestMapping(value = "save")
  65. public String save(CmOrderArchive cmOrderArchive, Model model, RedirectAttributes redirectAttributes) {
  66. if (!beanValidator(model, cmOrderArchive)){
  67. return form(cmOrderArchive, model);
  68. }
  69. cmOrderArchiveService.save(cmOrderArchive);
  70. addMessage(redirectAttributes, "保存订单资料成功");
  71. return "redirect:"+Global.getAdminPath()+"/archive/cmOrderArchive/?repage";
  72. }
  73. @RequestMapping(value = "delete")
  74. public String delete(CmOrderArchive cmOrderArchive, RedirectAttributes redirectAttributes) {
  75. cmOrderArchiveService.delete(cmOrderArchive);
  76. addMessage(redirectAttributes, "删除订单资料成功");
  77. return "redirect:"+Global.getAdminPath()+"/archive/cmOrderArchive/?repage";
  78. }
  79. @ResponseBody
  80. @RequestMapping(value = "upload")
  81. public Map<String, Object> upload(@RequestParam("file") MultipartFile file, @RequestParam("fileName") String fileName,
  82. @RequestParam("orderArchiveId") Integer orderArchiveId, @RequestParam("fileIds") String fileIds) {
  83. return cmOrderArchiveService.upload(file, fileName, orderArchiveId, fileIds);
  84. }
  85. /**
  86. * oss文件删除
  87. */
  88. @RequestMapping(value = "deleteFile")
  89. public void deleteFile(Integer fileId) {
  90. cmOrderArchiveService.deleteFile(fileId);
  91. }
  92. @RequestMapping(value = "findArchiveFilePage")
  93. public String findArchiveFilePage(CmOrderArchiveFile cmOrderArchiveFile, Model model, HttpServletRequest request, HttpServletResponse response) {
  94. Page<CmOrderArchiveFile> page = cmOrderArchiveService.findArchiveFilePage(new Page<CmOrderArchiveFile>(request, response), cmOrderArchiveFile);
  95. CmOrderArchive cmOrderArchive = cmOrderArchiveService.get(cmOrderArchiveFile.getOrderArchiveId().toString());
  96. String allFileIds = cmOrderArchiveService.getAllFileIds(cmOrderArchiveFile.getOrderArchiveId());
  97. model.addAttribute("page", page);
  98. model.addAttribute("cmOrderArchive", cmOrderArchive);
  99. model.addAttribute("allFileIds", allFileIds);
  100. return "modules/archive/cmOrderArchiveFileList";
  101. }
  102. /**
  103. * 下载单个文件
  104. */
  105. @RequestMapping("/downFile")
  106. public void downFile(Integer fileId, HttpServletRequest request, HttpServletResponse response) {
  107. try {
  108. cmOrderArchiveService.downFile(fileId, request, response);
  109. } catch (IOException e) {
  110. e.printStackTrace();
  111. }
  112. }
  113. /**
  114. * 下载该订单资料的所有文件
  115. */
  116. @RequestMapping("/downAllFile")
  117. public void downAllFile(Integer orderArchiveId, HttpServletRequest request, HttpServletResponse response) {
  118. cmOrderArchiveService.downAllFile(orderArchiveId, request, response);
  119. }
  120. }