SysRegionController.java 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. package com.kmall.admin.controller;
  2. import com.kmall.api.fromcomm.cache.RegionCacheUtil;
  3. import com.kmall.manager.entity.SysRegionEntity;
  4. import com.kmall.admin.service.SysRegionService;
  5. import com.kmall.common.utils.PageUtils;
  6. import com.kmall.common.utils.Query;
  7. import com.kmall.common.utils.R;
  8. import com.kmall.common.utils.TreeUtils;
  9. import org.apache.shiro.authz.annotation.RequiresPermissions;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.web.bind.annotation.*;
  12. import java.util.ArrayList;
  13. import java.util.List;
  14. import java.util.Map;
  15. /**
  16. * Controller
  17. *
  18. * @author Scott
  19. * @email
  20. * @date 2017-08-16 21:19:31
  21. */
  22. @RestController
  23. @RequestMapping("sys/region")
  24. public class SysRegionController {
  25. @Autowired
  26. private SysRegionService sysRegionService;
  27. /**
  28. * 查看列表
  29. */
  30. @RequestMapping("/list")
  31. @RequiresPermissions("sys:region:list")
  32. public R list(@RequestParam Map<String, Object> params) {
  33. //查询列表数据
  34. Query query = new Query(params);
  35. List<SysRegionEntity> regionList = sysRegionService.queryList(query);
  36. int total = sysRegionService.queryTotal(query);
  37. PageUtils pageUtil = new PageUtils(regionList, total, query.getLimit(), query.getPage());
  38. return R.ok().put("page", pageUtil);
  39. }
  40. /**
  41. * 查看信息
  42. */
  43. @RequestMapping("/info/{id}")
  44. @RequiresPermissions("sys:region:info")
  45. public R info(@PathVariable("id") Integer id) {
  46. SysRegionEntity region = sysRegionService.queryObject(id);
  47. return R.ok().put("region", region);
  48. }
  49. /**
  50. * 保存
  51. */
  52. @RequestMapping("/save")
  53. @RequiresPermissions("sys:region:save")
  54. public R save(@RequestBody SysRegionEntity region) {
  55. sysRegionService.save(region);
  56. return R.ok();
  57. }
  58. /**
  59. * 修改
  60. */
  61. @RequestMapping("/update")
  62. @RequiresPermissions("sys:region:update")
  63. public R update(@RequestBody SysRegionEntity region) {
  64. sysRegionService.update(region);
  65. return R.ok();
  66. }
  67. /**
  68. * 删除
  69. */
  70. @RequestMapping("/delete")
  71. @RequiresPermissions("sys:region:delete")
  72. public R delete(@RequestBody Integer[] ids) {
  73. sysRegionService.deleteBatch(ids);
  74. return R.ok();
  75. }
  76. /**
  77. * 查询所有国家
  78. *
  79. * @return
  80. */
  81. @RequestMapping("/getAllCountry")
  82. public R getAllCountry() {
  83. List<SysRegionEntity> list = RegionCacheUtil.getAllCountry();
  84. return R.ok().put("list", list);
  85. }
  86. /**
  87. * 查询所有省份
  88. *
  89. * @return
  90. */
  91. @RequestMapping("/getAllProvice")
  92. public R getAllProvice(@RequestParam(required = false) Integer areaId) {
  93. List<SysRegionEntity> list = RegionCacheUtil.getAllProviceByParentId(areaId);
  94. return R.ok().put("list", list);
  95. }
  96. /**
  97. * 查询所有城市
  98. *
  99. * @return
  100. */
  101. @RequestMapping("/getAllCity")
  102. public R getAllCity(@RequestParam(required = false) Integer areaId) {
  103. List<SysRegionEntity> list = RegionCacheUtil.getChildrenCity(areaId);
  104. return R.ok().put("list", list);
  105. }
  106. /**
  107. * 查询所有区县
  108. *
  109. * @return
  110. */
  111. @RequestMapping("/getChildrenDistrict")
  112. public R getChildrenDistrict(@RequestParam(required = false) Integer areaId) {
  113. List<SysRegionEntity> list = RegionCacheUtil.getChildrenDistrict(areaId);
  114. return R.ok().put("list", list);
  115. }
  116. /**
  117. * 查看信息(全部加载页面渲染太慢!)
  118. */
  119. @RequestMapping("/getAreaTree")
  120. public R getAreaTree() {
  121. List<SysRegionEntity> list = RegionCacheUtil.sysRegionEntityList;
  122. for (SysRegionEntity sysRegionEntity : list) {
  123. sysRegionEntity.setValue(sysRegionEntity.getId() + "");
  124. sysRegionEntity.setLabel(sysRegionEntity.getName());
  125. }
  126. List<SysRegionEntity> node = TreeUtils.factorTree(list);
  127. return R.ok().put("node", node);
  128. }
  129. @RequestMapping("/getAreaByType")
  130. public R getAreaByType(@RequestParam(required = false) Integer type) {
  131. List<SysRegionEntity> list = new ArrayList<>();
  132. if (type.equals(0)) {
  133. } else if (type.equals(1)) {//省份
  134. list = RegionCacheUtil.getAllCountry();
  135. } else if (type.equals(2)) {
  136. list = RegionCacheUtil.getAllProvice();
  137. } else if (type.equals(3)) {
  138. list = RegionCacheUtil.getAllCity();
  139. }
  140. return R.ok().put("list", list);
  141. }
  142. }