| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package com.x1ongzhu.wisFactory.web;
- import com.x1ongzhu.wisFactory.domain.Department;
- import com.x1ongzhu.wisFactory.dto.PageQuery;
- import com.x1ongzhu.wisFactory.exception.BusinessException;
- import com.x1ongzhu.wisFactory.repo.DepartmentRepo;
- import com.x1ongzhu.wisFactory.service.DepartmentService;
- import com.x1ongzhu.wisFactory.utils.ObjUtils;
- import com.x1ongzhu.wisFactory.utils.excel.ExcelUtils;
- import lombok.AllArgsConstructor;
- import org.springframework.data.domain.Page;
- import org.springframework.web.bind.annotation.*;
- import javax.servlet.http.HttpServletResponse;
- import java.io.IOException;
- import java.util.List;
- @RestController
- @RequestMapping("/department")
- @AllArgsConstructor
- public class DepartmentController extends BaseController {
- private DepartmentService departmentService;
- private DepartmentRepo departmentRepo;
- //@PreAuthorize("hasRole('ADMIN')")
- @PostMapping("/save")
- public Department save(@RequestBody Department record) {
- if (record.getId() != null) {
- Department orig = departmentRepo.findById(record.getId()).orElseThrow(new BusinessException("无记录"));
- ObjUtils.merge(orig, record);
- return departmentRepo.save(orig);
- }
- return departmentRepo.save(record);
- }
- //@PreAuthorize("hasRole('ADMIN')")
- @GetMapping("/all")
- public Page<Department> all(PageQuery pageQuery) {
- return departmentRepo.findAll(toSpecification(pageQuery,Department.class), toPageRequest(pageQuery));
- }
- @GetMapping("/get/{id}")
- public Department get(@PathVariable Long id) {
- return departmentRepo.findById(id).orElseThrow(new BusinessException("无记录"));
- }
- @PostMapping("/del/{id}")
- public void del(@PathVariable Long id) {
- departmentRepo.deleteById(id);
- }
- @GetMapping("/excel")
- @ResponseBody
- public void excel(HttpServletResponse response, PageQuery pageQuery) throws IOException {
- List<Department> data = all(pageQuery).getContent();
- ExcelUtils.export(response, data);
- }
- @PostMapping("/saveHours")
- public void saveHours(@RequestBody List<Department> departments) {
- departmentService.saveHours(departments);
- }
- }
|