package com.sandu.ximon.admin.controller; import com.github.pagehelper.PageHelper; import com.sandu.common.domain.ResponseVO; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.param.PoleGroupParam; import com.sandu.ximon.admin.param.PoleGroupRelationParam; import com.sandu.ximon.admin.security.PermissionConfig; import com.sandu.ximon.admin.service.PoleGroupService; import com.sandu.ximon.dao.enums.MenuEnum; import lombok.AllArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 分组列表功能 * * @author chenjiantian */ @RestController @AllArgsConstructor @RequestMapping("/v1/pole/group") public class PoleGroupController { private final PoleGroupService poleGroupService; private PermissionConfig permissionConfig; @PostMapping("/add") public ResponseVO addGroup(@RequestBody @Validated PoleGroupParam param) { if (!permissionConfig.check(MenuEnum.GROUP_ADD.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } return ResponseUtil.success(poleGroupService.addGroup(param)); } @PostMapping("/update/{groupId}") public ResponseVO updateGroup(@PathVariable Long groupId, @RequestBody @Validated PoleGroupParam param) { if (!permissionConfig.check(MenuEnum.GROUP_UPDATE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } return ResponseUtil.success(poleGroupService.updateGroup(groupId, param)); } @PostMapping("/delete/{groupId}") public ResponseVO delGroup(@PathVariable Long groupId) { if (!permissionConfig.check(MenuEnum.GROUP_DELETE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } return ResponseUtil.success(poleGroupService.deleteGroup(groupId)); } @GetMapping("/list") public ResponseVO listGroup(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword, @RequestParam(value = "groupid", required = false) Long groupid) { if (!permissionConfig.check(MenuEnum.GROUP_LIST.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize()); return ResponseUtil.success(poleGroupService.groupList(baseConditionVO, keyword, groupid)); } @PostMapping("/bind/{groupId}") public ResponseVO bindPole(@PathVariable Long groupId, @RequestBody PoleGroupRelationParam param) { if (!permissionConfig.check(MenuEnum.GROUP_BINDING_POLE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } return ResponseUtil.success(poleGroupService.bindPole(groupId, param.getPoleIdList())); } }