UserMaterialController.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. package com.tld.controller;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.tld.excel.ExcelUtils;
  5. import com.tld.model.UserMaterial;
  6. import com.tld.service.UserMaterialService;
  7. import lombok.RequiredArgsConstructor;
  8. import org.springframework.web.bind.annotation.*;
  9. import org.springframework.web.multipart.MultipartFile;
  10. import javax.servlet.http.HttpServletRequest;
  11. import javax.servlet.http.HttpServletResponse;
  12. import java.util.ArrayList;
  13. import java.util.HashMap;
  14. import java.util.List;
  15. import java.util.Map;
  16. /**
  17. * 用户绑定物料
  18. */
  19. @RestController
  20. @RequestMapping("userMaterial")
  21. @RequiredArgsConstructor
  22. public class UserMaterialController {
  23. private final UserMaterialService userMaterialService;
  24. /**
  25. * 查询用户绑定物料信息
  26. * @param userMaterial 参数
  27. * @return 返回结果
  28. */
  29. @GetMapping("getUserMaterial")
  30. public Map<String, Object> getUserMaterial(UserMaterial userMaterial){
  31. return userMaterialService.getUserMaterial(userMaterial);
  32. }
  33. /**
  34. * 新增用户绑定物料信息
  35. * @param userMaterial 参数
  36. * @return 返回结果
  37. */
  38. @PostMapping("addUserMaterial")
  39. public Map<String, Object> addUserMaterial(@RequestBody UserMaterial userMaterial, HttpServletRequest request){
  40. return userMaterialService.addUserMaterial(userMaterial, request);
  41. }
  42. /**
  43. * 修改用户绑定物料信息
  44. * @param userMaterial 参数
  45. * @return 返回结果
  46. */
  47. @PostMapping("updateUserMaterial")
  48. public Map<String, Object> updateUserMaterial(@RequestBody UserMaterial userMaterial, HttpServletRequest request){
  49. return userMaterialService.updateUserMaterial(userMaterial, request);
  50. }
  51. /**
  52. * 删除用户绑定物料信息
  53. * @param id 参数
  54. * @return 返回结果
  55. */
  56. @DeleteMapping("delUserMaterial")
  57. public Map<String, Object> delUserMaterial(String id){
  58. return userMaterialService.delUserMaterial(id);
  59. }
  60. /**
  61. * 查询所有用户
  62. * @return 参数
  63. */
  64. @GetMapping("getUser")
  65. public Map<String, Object> getUser(){
  66. return userMaterialService.getUser();
  67. }
  68. /**
  69. * 查询用户绑定物料信息导出
  70. * @param response 参数
  71. */
  72. @GetMapping("Export")
  73. public void Export(UserMaterial userMaterial, HttpServletResponse response){
  74. userMaterialService.Export(userMaterial, response);
  75. }
  76. /**
  77. * 物料用户绑定导入
  78. * @param file 数据
  79. * @param request 用户id
  80. * @throws Exception
  81. */
  82. @PostMapping("/import")
  83. public Map<String, Object> importExcel(@RequestPart("file") MultipartFile file, HttpServletRequest request) throws Exception{
  84. Map<String, Object> map = new HashMap<>();
  85. JSONArray array = ExcelUtils.readMultipartFile(file);
  86. for(int i = 0; i < array.size(); i++){
  87. JSONObject jsonObject = array.getJSONObject(i);
  88. UserMaterial userMaterial = new UserMaterial()
  89. .setMaterialId(jsonObject.get("物料编号").toString())
  90. .setUserName(jsonObject.get("工号").toString())
  91. .setModifyUser(request.getHeader("userId"));
  92. userMaterialService.replaceUser(userMaterial);
  93. }
  94. map.put("msg", "200");
  95. map.put("data", array.size());
  96. return map;
  97. }
  98. }