AdminPtsSupplierController.java 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. package com.iamberry.rst.controllers.pts;
  2. import com.iamberry.rst.core.page.PagedResult;
  3. import com.iamberry.rst.core.pts.PtsSupplier;
  4. import com.iamberry.rst.faces.pts.MachineSupplierService;
  5. import com.iamberry.rst.utils.StitchAttrUtil;
  6. import com.iamberry.wechat.tools.DateTimeUtil;
  7. import com.iamberry.wechat.tools.NameUtils;
  8. import com.iamberry.wechat.tools.ObjectExcelView;
  9. import com.iamberry.wechat.tools.ResponseJson;
  10. import org.apache.shiro.authz.annotation.RequiresPermissions;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.stereotype.Controller;
  13. import org.springframework.web.bind.annotation.RequestMapping;
  14. import org.springframework.web.bind.annotation.RequestParam;
  15. import org.springframework.web.bind.annotation.ResponseBody;
  16. import org.springframework.web.servlet.ModelAndView;
  17. import javax.servlet.http.HttpServletRequest;
  18. import java.io.UnsupportedEncodingException;
  19. import java.net.URLDecoder;
  20. import java.util.ArrayList;
  21. import java.util.HashMap;
  22. import java.util.List;
  23. import java.util.Map;
  24. /**
  25. * 供应商controller
  26. */
  27. @Controller
  28. @RequestMapping("/admin/supplier")
  29. public class AdminPtsSupplierController {
  30. @Autowired
  31. private MachineSupplierService machineSupplierService;
  32. /**
  33. * 获取supplier单列表
  34. *
  35. * @param request
  36. * @return
  37. */
  38. @RequiresPermissions("supplier:list:supplier")
  39. @RequestMapping("/_supplier_list")
  40. public ModelAndView getPtsSupplier(HttpServletRequest request, PtsSupplier ptsSupplier,
  41. @RequestParam(value = "pageSize", defaultValue = "10", required = false) Integer pageSize,
  42. @RequestParam(value = "pageNO", defaultValue = "1", required = false) Integer pageNO,
  43. @RequestParam(value = "totalNum", defaultValue = "0", required = false) Integer totalNum) {
  44. ModelAndView mv = new ModelAndView("pts/supplier/supplier_list");
  45. PagedResult<PtsSupplier> pagedResult = machineSupplierService.listPtsSupplierPage(pageNO, pageSize, ptsSupplier, totalNum == 0);
  46. if (totalNum != 0) {
  47. pagedResult.setTotal(totalNum);
  48. }
  49. StitchAttrUtil.setModelAndView(ptsSupplier, mv, "/admin/supplier/_supplier_list", pagedResult);
  50. return mv;
  51. }
  52. /**
  53. * 导出Excel
  54. * 2017-11-13 14:46:37
  55. * @return
  56. */
  57. @RequestMapping("/excel")
  58. public ModelAndView downloadSupplierExcel(){
  59. // 准备model
  60. Map<String, Object> model = new HashMap<String, Object>();
  61. model.put("fileName", "供应商列表"); // 下载文件名称
  62. // 标题
  63. List<String> titles = new ArrayList<String>();
  64. titles.add("供应商名称");
  65. titles.add("供应商简称");
  66. titles.add("联系人姓名");
  67. titles.add("联系人电话");
  68. titles.add("座机");
  69. titles.add("邮箱");
  70. titles.add("地址");
  71. titles.add("最近修改时间");
  72. titles.add("零件数量");
  73. model.put("titles", titles);
  74. PtsSupplier ptsSupplier = new PtsSupplier();
  75. // 内容
  76. List<List<Object>> countexts = new ArrayList<List<Object>>();
  77. List<PtsSupplier> list = machineSupplierService.listPtsSupplierExcel(ptsSupplier);
  78. for (PtsSupplier info : list) {
  79. List<Object> row = new ArrayList<Object>();
  80. /*try {
  81. if(info。){
  82. row.add(URLDecoder.decode(macInfo.getUserNickName(), "UTF-8"));
  83. }
  84. } catch (UnsupportedEncodingException e) {
  85. e.printStackTrace();
  86. }*/
  87. row.add(info.getSupplierName() == null ? null:info.getSupplierName());
  88. row.add(info.getSupplierAbbreviation() == null ? null:info.getSupplierAbbreviation());
  89. row.add(info.getSupplierContactPerson() == null ? null:info.getSupplierContactPerson());
  90. row.add(info.getSupplierTel() == null ? null:info.getSupplierTel());
  91. row.add(info.getSupplierPhone() == null ? null:info.getSupplierPhone());
  92. row.add(info.getSupplierEmail() == null ? null:info.getSupplierEmail());
  93. row.add(info.getSupplierAddress() == null ? null:info.getSupplierAddress());
  94. row.add(info.getSupplierUpdateTime() == null ? null: DateTimeUtil.format(info.getSupplierUpdateTime(), "yyyy-MM-dd HH:mm:ss"));
  95. row.add(info.getComponentsNumber() == null ? null:info.getComponentsNumber());
  96. /*if(macInfo.getBindTime() != null){
  97. row.add(DateTimeUtil.format(macInfo.getBindTime(), NameUtils.DATE_TIME_FORMAT));
  98. }*/
  99. countexts.add(row);
  100. }
  101. model.put("varList", countexts);
  102. ObjectExcelView erv = new ObjectExcelView();
  103. ModelAndView mv = new ModelAndView(erv,model);
  104. return mv;
  105. }
  106. /**
  107. * 跳转到添加supplier单页面
  108. *
  109. * @return
  110. */
  111. @RequiresPermissions("supplier:add:supplier")
  112. @RequestMapping(value = "/to_add_supplier")
  113. public ModelAndView toAddsupplier(HttpServletRequest request) {
  114. ModelAndView mv = new ModelAndView("pts/supplier/add_supplier");
  115. return mv;
  116. }
  117. /**
  118. * 添加supplier单
  119. *
  120. * @return
  121. */
  122. @ResponseBody
  123. @RequiresPermissions("supplier:add:supplier")
  124. @RequestMapping(value = "/save_supplier")
  125. public ResponseJson saveBatch(PtsSupplier ptsSupplier, HttpServletRequest request) {
  126. if (!this.isValiData(ptsSupplier) ) {
  127. return new ResponseJson(500, "请检查表单,再次提交", 500);
  128. }
  129. Integer flag = machineSupplierService.savePtsSupplier(ptsSupplier);
  130. if (flag < 1) {
  131. return new ResponseJson(500, "添加失败", 500);
  132. } else {
  133. return new ResponseJson(200, "添加成功", 200);
  134. }
  135. }
  136. /***
  137. * 验证信息
  138. * @param ptsSupplier
  139. * @return
  140. */
  141. public boolean isValiData(PtsSupplier ptsSupplier) {
  142. boolean flag = true;
  143. // if(ptsSupplier.getBatchNo() == null || ptsSupplier.getBatchNo().length() >= 20){
  144. // return false;
  145. // }
  146. return flag;
  147. }
  148. /**
  149. * 跳转到修改批次页面
  150. *
  151. * @return
  152. */
  153. @RequiresPermissions("supplier:update:supplier")
  154. @RequestMapping(value = "/to_update_supplier")
  155. public ModelAndView toUpdateBatch(Integer supplierId, HttpServletRequest request) {
  156. ModelAndView mv = new ModelAndView("pts/supplier/update_supplier");
  157. PtsSupplier ptsSupplier = new PtsSupplier();
  158. ptsSupplier.setSupplierId(supplierId);
  159. ptsSupplier = machineSupplierService.getPtsSupplier(ptsSupplier);
  160. mv.addObject("ptsSupplier", ptsSupplier);
  161. return mv;
  162. }
  163. /**
  164. * 修改批次
  165. *
  166. * @return
  167. */
  168. @ResponseBody
  169. @RequiresPermissions("supplier:add:supplier")
  170. @RequestMapping(value = "/update_supplier")
  171. public ResponseJson updateBatch(PtsSupplier ptsSupplier, HttpServletRequest request) {
  172. if (!this.isValiData(ptsSupplier) ) {
  173. return new ResponseJson(500, "请检查表单,再次提交", 500);
  174. }
  175. Integer flag = machineSupplierService.updatePtsSupplier(ptsSupplier);
  176. if (flag < 1) {
  177. return new ResponseJson(500, "修改失败", 500);
  178. } else {
  179. return new ResponseJson(200, "修改成功", 200);
  180. }
  181. }
  182. }