package com.sandu.ximon.admin.newnova.grouping; 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.GroupParam; import com.sandu.ximon.admin.security.PermissionConfig; 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 LiuHaoNan * @date 2022/11/15 */ @RestController @AllArgsConstructor @RequestMapping("/v1/newNova/group") public class NewNovaGroupController { private PermissionConfig permissionConfig; private final NewNovaGroupService ledGroupService; /** * 新增分组 * * @param param * @return */ @PostMapping("/add") public ResponseVO addGroup(@RequestBody @Validated GroupParam param) { if (!permissionConfig.check(MenuEnum.LED_NEW_GROUB_ADD.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean b = ledGroupService.addGroup(param); if (b) { return ResponseUtil.success("添加成功"); } else { return ResponseUtil.fail("添加失败"); } } /** * 编辑分组 * * @param param * @return */ @PostMapping("/update") public ResponseVO updateGroup(@RequestBody @Validated GroupParam param) { if (!permissionConfig.check(MenuEnum.LED_NEW_GROUB_UPDATE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean b = ledGroupService.updateGroup(param); if (b) { return ResponseUtil.success("编辑成功"); } else { return ResponseUtil.fail("编辑失败"); } } /** * 删除分组 * * @param groupIds * @return */ @PostMapping("/delete") public ResponseVO delGroup(@RequestBody List groupIds) { if (!permissionConfig.check(MenuEnum.LED_NEW_GROUB_DEL.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean b = ledGroupService.deleteGroup(groupIds); if (b) { return ResponseUtil.success("删除成功"); } else { return ResponseUtil.fail("删除失败"); } } /** * 分组列表 * * @param baseConditionVO * @param keyword * @return */ @GetMapping("/list") public ResponseVO listGroup(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) { if (!permissionConfig.check(MenuEnum.LED_NEW_GROUB_LIST.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize()); return ResponseUtil.success(ledGroupService.groupList(baseConditionVO, keyword)); } /** * 绑定LED到分组内 * * @param param * @return */ @PostMapping("/bind") public ResponseVO bindPole(@RequestBody GroupParam param) { if (!permissionConfig.check(MenuEnum.LED_NEW_GROUB_BIND.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean b = ledGroupService.bindLed(param.getGroupId(), param.getLedIdList()); if (b) { return ResponseUtil.success("添加成功"); } else { return ResponseUtil.fail("添加失败"); } } }