GoodsSpecificationController.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. package com.kmall.admin.controller;
  2. import com.google.common.collect.Maps;
  3. import com.kmall.admin.entity.GoodsSpecificationEntity;
  4. import com.kmall.admin.entity.SpecificationEntity;
  5. import com.kmall.admin.service.GoodsSpecificationService;
  6. import com.kmall.admin.service.SpecificationService;
  7. import com.kmall.common.utils.PageUtils;
  8. import com.kmall.common.utils.Query;
  9. import com.kmall.common.utils.R;
  10. import org.apache.shiro.authz.annotation.RequiresPermissions;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.web.bind.annotation.*;
  13. import java.util.*;
  14. /**
  15. * 商品对应规格表值表Controller
  16. *
  17. * @author Scott
  18. * @email
  19. * @date 2017-08-31 11:15:55
  20. */
  21. @RestController
  22. @RequestMapping("goodsspecification")
  23. public class GoodsSpecificationController {
  24. @Autowired
  25. private GoodsSpecificationService goodsSpecificationService;
  26. @Autowired
  27. private SpecificationService specificationService;
  28. /**
  29. * 查看列表
  30. */
  31. @RequestMapping("/list")
  32. @RequiresPermissions("goodsspecification:list")
  33. public R list(@RequestParam Map<String, Object> params) {
  34. //查询列表数据
  35. Query query = new Query(params);
  36. List<GoodsSpecificationEntity> goodsSpecificationList = goodsSpecificationService.queryList(query);
  37. int total = goodsSpecificationService.queryTotal(query);
  38. PageUtils pageUtil = new PageUtils(goodsSpecificationList, total, query.getLimit(), query.getPage());
  39. return R.ok().put("page", pageUtil);
  40. }
  41. /**
  42. * 查看信息
  43. */
  44. @RequestMapping("/info/{id}")
  45. @RequiresPermissions("goodsspecification:info")
  46. public R info(@PathVariable("id") Integer id) {
  47. GoodsSpecificationEntity goodsSpecification = goodsSpecificationService.queryObject(id);
  48. return R.ok().put("goodsSpecification", goodsSpecification);
  49. }
  50. /**
  51. * 保存
  52. */
  53. @RequestMapping("/save")
  54. @RequiresPermissions("goodsspecification:save")
  55. public R save(@RequestBody GoodsSpecificationEntity goodsSpecification) {
  56. goodsSpecificationService.save(goodsSpecification);
  57. return R.ok();
  58. }
  59. /**
  60. * 修改
  61. */
  62. @RequestMapping("/update")
  63. @RequiresPermissions("goodsspecification:update")
  64. public R update(@RequestBody GoodsSpecificationEntity goodsSpecification) {
  65. goodsSpecificationService.update(goodsSpecification);
  66. return R.ok();
  67. }
  68. /**
  69. * 删除
  70. */
  71. @RequestMapping("/delete")
  72. @RequiresPermissions("goodsspecification:delete")
  73. public R delete(@RequestBody Integer[] ids) {
  74. goodsSpecificationService.deleteBatch(ids);
  75. return R.ok();
  76. }
  77. /**
  78. * 查看所有列表
  79. */
  80. @RequestMapping("/queryAll")
  81. public R queryAll(@RequestParam Map<String, Object> params) {
  82. List<GoodsSpecificationEntity> list = goodsSpecificationService.queryList(params);
  83. List<Integer> goodsSpecificationIds = new ArrayList();
  84. if (null != list) {
  85. for (GoodsSpecificationEntity specificationEntity : list) {
  86. if (!goodsSpecificationIds.contains(specificationEntity.getSpecificationId())) {
  87. goodsSpecificationIds.add(specificationEntity.getSpecificationId());
  88. }
  89. }
  90. }
  91. Map param = Maps.newHashMap();
  92. param.put("ids", goodsSpecificationIds);
  93. List<SpecificationEntity> specificationEntityList = specificationService.queryList(param);
  94. Collections.sort(specificationEntityList, new Comparator<SpecificationEntity>() {
  95. @Override
  96. public int compare(SpecificationEntity o1, SpecificationEntity o2) {
  97. return o1.getSortOrder().compareTo(o2.getSortOrder());
  98. }
  99. });
  100. return R.ok().put("list", list).put("specificationEntityList", specificationEntityList);
  101. }
  102. }