BaseLocationInfoController.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. package com.warewms.ams.ndc.controller;
  2. import com.warewms.ams.ndc.domain.BaseLocationInfo;
  3. import com.warewms.ams.ndc.dto.AmsTaskDTO;
  4. import com.warewms.ams.ndc.dto.BaseLocationInfoDTO;
  5. import com.warewms.ams.ndc.service.IBaseLocationInfoService;
  6. import com.warewms.common.annotation.Log;
  7. import com.warewms.common.base.controller.BaseController;
  8. import com.warewms.common.base.domain.AjaxResult;
  9. import com.warewms.common.base.page.PageData;
  10. import com.warewms.common.base.page.TableDataInfo;
  11. import com.warewms.common.constant.Constants;
  12. import com.warewms.common.enums.BusinessType;
  13. import com.warewms.common.utils.poi.ExcelUtil;
  14. import io.swagger.annotations.ApiImplicitParam;
  15. import io.swagger.annotations.ApiImplicitParams;
  16. import io.swagger.annotations.ApiOperation;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.web.bind.annotation.*;
  19. import springfox.documentation.annotations.ApiIgnore;
  20. import javax.servlet.http.HttpServletResponse;
  21. import java.util.Arrays;
  22. import java.util.List;
  23. import java.util.Map;
  24. /**
  25. * 库位信息Controller
  26. *
  27. * @author andy
  28. * @date 2022-02-18
  29. */
  30. @RestController
  31. @RequestMapping("/base/locationInfo")
  32. public class BaseLocationInfoController extends BaseController {
  33. @Autowired
  34. private IBaseLocationInfoService baseLocationInfoService;
  35. @GetMapping("page")
  36. @ApiOperation("分页")
  37. @ApiImplicitParams({
  38. @ApiImplicitParam(name = Constants.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType = "int"),
  39. @ApiImplicitParam(name = Constants.LIMIT, value = "每页显示记录数", paramType = "query", required = true, dataType = "int"),
  40. @ApiImplicitParam(name = Constants.ORDER_FIELD, value = "排序字段", paramType = "query", dataType = "String"),
  41. @ApiImplicitParam(name = Constants.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType = "String"),
  42. @ApiImplicitParam(name = "zoneId", value = "区域id", paramType = "query", dataType = "String"),
  43. @ApiImplicitParam(name = "locationNo", value = "库位编码", paramType = "query", dataType = "String"),
  44. @ApiImplicitParam(name = "rowNo", value = "巷道", paramType = "query", dataType = "Long"),
  45. @ApiImplicitParam(name = "agvStation", value = "agv点位", paramType = "query", dataType = "Long")
  46. })
  47. public AjaxResult page(@ApiIgnore @RequestParam Map<String, Object> params){
  48. PageData<BaseLocationInfoDTO> page = baseLocationInfoService.page(params);
  49. return AjaxResult.success(page);
  50. }
  51. @PostMapping("/save")
  52. @ApiOperation("保存")
  53. public AjaxResult save(@RequestBody BaseLocationInfoDTO dto){
  54. baseLocationInfoService.save(dto);
  55. return AjaxResult.success();
  56. }
  57. /**
  58. * 获取库位信息详细信息
  59. */
  60. @GetMapping(value = "/{id}")
  61. public AjaxResult getInfo(@PathVariable("id") Long id) {
  62. return AjaxResult.success(baseLocationInfoService.get(id));
  63. }
  64. /**
  65. * 修改库位信息
  66. */
  67. @Log(title = "库位信息", businessType = BusinessType.UPDATE)
  68. @PutMapping("/edit")
  69. public AjaxResult edit(@RequestBody BaseLocationInfoDTO baseLocationInfoDTO) {
  70. baseLocationInfoService.update(baseLocationInfoDTO);
  71. return AjaxResult.success();
  72. }
  73. /**
  74. * 删除库位信息
  75. */
  76. @Log(title = "库位信息", businessType = BusinessType.DELETE)
  77. @DeleteMapping("/{ids}")
  78. public AjaxResult remove(@PathVariable Long[] ids) {
  79. return toAjax(baseLocationInfoService.deleteBatchIds(Arrays.asList(ids)));
  80. }
  81. @PostMapping("/importTemplate")
  82. public void importTemplate(HttpServletResponse response)
  83. {
  84. ExcelUtil<BaseLocationInfo> util = new ExcelUtil<>(BaseLocationInfo.class);
  85. util.importTemplateExcel(response, "库位信息");
  86. }
  87. }