124 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			124 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package com.cnbm.basic.controller;
 | ||
| 
 | ||
| import com.cnbm.admin.annotation.LogOperation;
 | ||
| import com.cnbm.common.constant.Constant;
 | ||
| import com.cnbm.common.page.PageData;
 | ||
| import com.cnbm.common.utils.ExcelUtils;
 | ||
| import com.cnbm.common.utils.Result;
 | ||
| import com.cnbm.common.validator.AssertUtils;
 | ||
| import com.cnbm.common.validator.ValidatorUtils;
 | ||
| import com.cnbm.common.validator.group.AddGroup;
 | ||
| import com.cnbm.common.validator.group.DefaultGroup;
 | ||
| import com.cnbm.common.validator.group.UpdateGroup;
 | ||
| import com.cnbm.basic.dto.ShiftDTO;
 | ||
| import com.cnbm.basic.excel.ShiftExcel;
 | ||
| import com.cnbm.basic.service.IShiftService;
 | ||
| import io.swagger.annotations.Api;
 | ||
| import io.swagger.annotations.ApiImplicitParam;
 | ||
| import io.swagger.annotations.ApiImplicitParams;
 | ||
| import io.swagger.annotations.ApiOperation;
 | ||
| import org.springframework.security.access.prepost.PreAuthorize;
 | ||
| import org.springframework.beans.factory.annotation.Autowired;
 | ||
| import org.springframework.web.bind.annotation.*;
 | ||
| import springfox.documentation.annotations.ApiIgnore;
 | ||
| 
 | ||
| import javax.servlet.http.HttpServletResponse;
 | ||
| import java.util.List;
 | ||
| import java.util.Map;
 | ||
| 
 | ||
| 
 | ||
| /**
 | ||
|  * 班次 表  前端控制器
 | ||
|  *
 | ||
|  * @author why
 | ||
|  * @since  2022-07-13
 | ||
|  */
 | ||
| @RestController
 | ||
| @RequestMapping("/basic/shift")
 | ||
| @Api(tags="班次 表")
 | ||
| public class ShiftController {
 | ||
|     @Autowired
 | ||
|     private IShiftService shiftService;
 | ||
| 
 | ||
|     @GetMapping("page")
 | ||
|     @ApiOperation("分页")
 | ||
|     @ApiImplicitParams({
 | ||
|         @ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataTypeClass=Integer.class) ,
 | ||
|         @ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query",required = true, dataTypeClass=Integer.class) ,
 | ||
|         @ApiImplicitParam(name = Constant.ORDER_FIELD, value = "排序字段", paramType = "query", dataTypeClass=String.class) ,
 | ||
|         @ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataTypeClass=String.class),
 | ||
|         @ApiImplicitParam(name = "id", value = "id", paramType = "query", dataTypeClass = Long.class)
 | ||
|     })
 | ||
|     @PreAuthorize("@ex.hasAuthority('basic:shift:page')")
 | ||
|     public Result<PageData<ShiftDTO>> page(@ApiIgnore @RequestParam Map<String, Object> params){
 | ||
|         PageData<ShiftDTO> page = shiftService.page(params);
 | ||
| 
 | ||
|         return new Result<PageData<ShiftDTO>>().ok(page);
 | ||
|     }
 | ||
| 
 | ||
|     @GetMapping("{id}")
 | ||
|     @ApiOperation("信息")
 | ||
|     @PreAuthorize("@ex.hasAuthority('basic:shift:info')")
 | ||
|     public Result<ShiftDTO> get(@PathVariable("id") Long id){
 | ||
|         ShiftDTO data = shiftService.get(id);
 | ||
| 
 | ||
|         return new Result<ShiftDTO>().ok(data);
 | ||
|     }
 | ||
| 
 | ||
|     @PostMapping
 | ||
|     @ApiOperation("保存")
 | ||
|     @LogOperation("保存")
 | ||
|     @PreAuthorize("@ex.hasAuthority('basic:shift:save')")
 | ||
|     public Result save(@RequestBody ShiftDTO dto){
 | ||
|         //效验数据
 | ||
|         ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
 | ||
| 
 | ||
|         shiftService.save(dto);
 | ||
| 
 | ||
|         return new Result();
 | ||
|     }
 | ||
| 
 | ||
|     @PutMapping
 | ||
|     @ApiOperation("修改")
 | ||
|     @LogOperation("修改")
 | ||
|     @PreAuthorize("@ex.hasAuthority('basic:shift:update')")
 | ||
|     public Result update(@RequestBody ShiftDTO dto){
 | ||
|         //效验数据
 | ||
|         ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
 | ||
| 
 | ||
|         shiftService.update(dto);
 | ||
| 
 | ||
|         return new Result();
 | ||
|     }
 | ||
| 
 | ||
|     @DeleteMapping
 | ||
|     @ApiOperation("删除")
 | ||
|     @LogOperation("删除")
 | ||
|     @PreAuthorize("@ex.hasAuthority('basic:shift:delete')")
 | ||
|     public Result delete(@RequestBody Long[] ids){
 | ||
|         //效验数据
 | ||
|         AssertUtils.isArrayEmpty(ids, "id");
 | ||
| 
 | ||
|         shiftService.delete(ids);
 | ||
| 
 | ||
|         return new Result();
 | ||
|     }
 | ||
| 
 | ||
|     @GetMapping("export")
 | ||
|     @ApiOperation("导出")
 | ||
|     @LogOperation("导出")
 | ||
|     @PreAuthorize("@ex.hasAuthority('basic:shift:export')")
 | ||
|     public void export(@ApiIgnore @RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
 | ||
|         List<ShiftDTO> list = shiftService.list(params);
 | ||
| 
 | ||
|         ExcelUtils.exportExcelToTarget(response, null, list, ShiftExcel.class);
 | ||
|     }
 | ||
| 
 | ||
|     @PostMapping(value = "list")
 | ||
|     @ApiOperation(value = "获取班次列表")
 | ||
|     @LogOperation("获取班次列表")
 | ||
|     public List<ShiftDTO> list() {
 | ||
|         return shiftService.list();
 | ||
|     }
 | ||
| 
 | ||
| } |