package cc.mrbird.febs.server.hr.controller;
|
|
import cc.mrbird.febs.common.core.entity.FebsResponse;
|
import cc.mrbird.febs.common.core.entity.QueryRequest;
|
import cc.mrbird.febs.common.core.exception.FebsException;
|
import cc.mrbird.febs.common.core.utils.FebsUtil;
|
import cc.mrbird.febs.server.hr.entity.Label;
|
import cc.mrbird.febs.server.hr.service.ILabelService;
|
import lombok.extern.slf4j.Slf4j;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.validation.Valid;
|
import java.util.Map;
|
|
/**
|
* 标签 Controller
|
*
|
* @author yz
|
* @date 2021-02-17 22:18:51
|
*/
|
@Slf4j
|
@Validated
|
@RestController
|
@RequestMapping("label")
|
@RequiredArgsConstructor
|
public class LabelController {
|
|
private final ILabelService labelService;
|
|
@GetMapping
|
public FebsResponse getAllLabels(Label label) {
|
return new FebsResponse().data(labelService.findLabels(label));
|
}
|
|
@GetMapping("list")
|
@PreAuthorize("hasAuthority('label:list')")
|
public FebsResponse labelList(QueryRequest request, Label label) {
|
Map<String, Object> dataTable = FebsUtil.getDataTable(this.labelService.findLabels(request, label));
|
return new FebsResponse().data(dataTable);
|
}
|
|
@PostMapping
|
@PreAuthorize("hasAuthority('label:add')")
|
public void addLabel(@Valid Label label) throws FebsException {
|
try {
|
this.labelService.createLabel(label);
|
} catch (Exception e) {
|
String message = "新增Label失败";
|
log.error(message, e);
|
throw new FebsException(message);
|
}
|
}
|
|
@DeleteMapping
|
@PreAuthorize("hasAuthority('label:delete')")
|
public void deleteLabel(Label label) throws FebsException {
|
try {
|
this.labelService.deleteLabel(label);
|
} catch (Exception e) {
|
String message = "删除Label失败";
|
log.error(message, e);
|
throw new FebsException(message);
|
}
|
}
|
|
@PutMapping
|
@PreAuthorize("hasAuthority('label:update')")
|
public void updateLabel(Label label) throws FebsException {
|
try {
|
this.labelService.updateLabel(label);
|
} catch (Exception e) {
|
String message = "修改Label失败";
|
log.error(message, e);
|
throw new FebsException(message);
|
}
|
}
|
}
|