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<Object> addGroup(@RequestBody @Validated PoleGroupParam param) {
|
return ResponseUtil.success(poleGroupService.addGroup(param));
|
}
|
|
@PostMapping("/update/{groupId}")
|
public ResponseVO<Object> updateGroup(@PathVariable Long groupId, @RequestBody @Validated PoleGroupParam param) {
|
return ResponseUtil.success(poleGroupService.updateGroup(groupId, param));
|
}
|
|
@PostMapping("/delete/{groupId}")
|
public ResponseVO<Object> delGroup(@PathVariable Long groupId) {
|
return ResponseUtil.success(poleGroupService.deleteGroup(groupId));
|
}
|
|
@GetMapping("/list")
|
public ResponseVO<Object> 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<Object> bindPole(@PathVariable Long groupId, @RequestBody PoleGroupRelationParam param) {
|
return ResponseUtil.success(poleGroupService.bindPole(groupId, param.getPoleIdList()));
|
}
|
}
|