SupplyParticularsController.java 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. package com.jeeplus.modules.supply.particulars.web;
  2. import com.alibaba.fastjson.JSON;
  3. import com.alibaba.fastjson.TypeReference;
  4. import com.jeeplus.common.json.AjaxJson;
  5. import com.jeeplus.common.utils.DateUtils;
  6. import com.jeeplus.common.utils.StringUtils;
  7. import com.jeeplus.common.utils.excel.ExportExcel;
  8. import com.jeeplus.core.persistence.Page;
  9. import com.jeeplus.core.web.BaseController;
  10. import com.jeeplus.modules.supply.particulars.entity.SupplyParticulars;
  11. import com.jeeplus.modules.supply.particulars.service.SupplyParticularsService;
  12. import org.apache.shiro.authz.annotation.RequiresPermissions;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.stereotype.Controller;
  15. import org.springframework.ui.Model;
  16. import org.springframework.web.bind.annotation.ModelAttribute;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.RequestParam;
  19. import org.springframework.web.bind.annotation.ResponseBody;
  20. import javax.servlet.http.HttpServletRequest;
  21. import javax.servlet.http.HttpServletResponse;
  22. import java.net.URLDecoder;
  23. import java.util.ArrayList;
  24. import java.util.List;
  25. import java.util.Map;
  26. import org.apache.commons.lang.StringEscapeUtils;
  27. /**
  28. * 超欠供明细controller
  29. * @author: 徐滕
  30. * @create: 2022-03-02 10:31
  31. **/
  32. @Controller
  33. @RequestMapping(value = "${adminPath}/supply/particulars")
  34. public class SupplyParticularsController extends BaseController {
  35. @Autowired
  36. private SupplyParticularsService service;
  37. @ModelAttribute
  38. public SupplyParticulars get(@RequestParam(required = false) String id) {
  39. SupplyParticulars entity = null;
  40. if (StringUtils.isNotBlank(id)) {
  41. entity = service.get(id);
  42. }
  43. if (entity == null) {
  44. entity = new SupplyParticulars();
  45. }
  46. return entity;
  47. }
  48. /**
  49. * 项目列表页面
  50. */
  51. @RequiresPermissions("supply:particulars:list")
  52. @RequestMapping(value = {"list", ""})
  53. public String list(SupplyParticulars supplyParticulars, Model model) {
  54. model.addAttribute("supplyParticulars", supplyParticulars);
  55. return "modules/supply/particulars/supplyParticularsList";
  56. }
  57. /**
  58. * 列表数据
  59. */
  60. @ResponseBody
  61. @RequiresPermissions("supply:particulars:list")
  62. @RequestMapping(value = "data")
  63. public Map<String, Object> data(SupplyParticulars supplyParticulars, HttpServletRequest request, HttpServletResponse response, Model model) {
  64. Page<SupplyParticulars> page = service.findPage(new Page<SupplyParticulars>(request, response), supplyParticulars);
  65. return getBootstrapData(page);
  66. }
  67. /**
  68. * 导出excel文件
  69. */
  70. @ResponseBody
  71. @RequestMapping(value = "export")
  72. public AjaxJson exportFile(String json, HttpServletRequest request, HttpServletResponse response) {
  73. AjaxJson j = new AjaxJson();
  74. try {
  75. json = StringEscapeUtils.unescapeHtml(json);
  76. String fileName = "超欠供核对明细表"+ DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
  77. ArrayList<SupplyParticulars> list = JSON.parseObject(json, new TypeReference<ArrayList<SupplyParticulars>>(){});
  78. new ExportExcel("超欠供核对明细表", SupplyParticulars.class).setDataList(list).write(response, fileName).dispose();
  79. j.setSuccess(true);
  80. j.setMsg("导出成功!");
  81. return j;
  82. } catch (Exception e) {
  83. j.setSuccess(false);
  84. j.setMsg("导出超欠供核对明细表记录失败!失败信息:"+e.getMessage());
  85. }
  86. return j;
  87. }
  88. }