package com.chinaztt.mes.basic.controller; import com.alibaba.excel.EasyExcel; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaztt.mes.basic.entity.Post; import com.chinaztt.mes.basic.excel.PostData; import com.chinaztt.mes.basic.excel.PostUploadListener; import com.chinaztt.mes.basic.excel.StaffData; import com.chinaztt.mes.basic.excel.StaffUploadListener; import com.chinaztt.mes.basic.service.PostService; import com.chinaztt.mes.common.wrapper.QueryWrapperUtil; import com.chinaztt.ztt.common.core.util.R; import com.chinaztt.ztt.common.log.annotation.SysLog; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; /** * 岗位表 * * @author cxf * @date 2021-06-23 17:17:26 */ @RestController @AllArgsConstructor @RequestMapping("/post") @Api(value = "post", tags = "岗位表管理") public class PostController { private final PostService postService; /** * 查询所有 * * @param post 岗位表 * @return */ @ApiOperation(value = "查询所有", notes = "查询所有") @GetMapping("/list") public R getPostList(Post post) { return R.ok(postService.list(QueryWrapperUtil.gen(post))); } /** * 分页查询 * * @param page 分页对象 * @param post 岗位表 * @return */ @ApiOperation(value = "分页查询", notes = "分页查询") @GetMapping("/page") @PreAuthorize("@pms.hasPermission('basic_post_view')") public R getPostPage(Page page, Post post) { return R.ok(postService.page(page, QueryWrapperUtil.gen(post))); } /** * 通过id查询岗位表 * * @param id id * @return R */ @ApiOperation(value = "通过id查询", notes = "通过id查询") @GetMapping("/{id}") @PreAuthorize("@pms.hasPermission('basic_post_view')") public R getById(@PathVariable("id") Long id) { return R.ok(postService.getById(id)); } /** * 新增岗位表 * * @param post 岗位表 * @return R */ @ApiOperation(value = "新增岗位表", notes = "新增岗位表") @SysLog("新增岗位表") @PostMapping @PreAuthorize("@pms.hasPermission('basic_post_add')") public R save(@RequestBody Post post) { return R.ok(postService.save(post)); } /** * 修改岗位表 * * @param post 岗位表 * @return R */ @ApiOperation(value = "修改岗位表", notes = "修改岗位表") @SysLog("修改岗位表") @PutMapping @PreAuthorize("@pms.hasPermission('basic_post_edit')") public R updateById(@RequestBody Post post) { return R.ok(postService.updateById(post)); } /** * 通过id删除岗位表 * * @param id id * @return R */ @ApiOperation(value = "通过id删除岗位表", notes = "通过id删除岗位表") @SysLog("通过id删除岗位表") @DeleteMapping("/{id}") @PreAuthorize("@pms.hasPermission('basic_post_del')") public R removeById(@PathVariable Long id) { return R.ok(postService.removeById(id)); } @GetMapping("/getObjById") public R getObjById(Long id ,Long factoryId ,Long divisionId){ QueryWrapperqueryWrapper=new QueryWrapper<>(); queryWrapper.lambda().eq(Post::getCompanyId,id).eq(Post::getFactoryId,factoryId).eq(Post::getDivisionId,divisionId); return R.ok(postService.list(queryWrapper)); } /** * excel上传 * * @return */ @PostMapping("/upload") public R upload(@RequestParam("file") MultipartFile file) { try { EasyExcel.read(file.getInputStream(), PostData.class, new PostUploadListener(postService)).sheet().doRead(); } catch (IOException e) { e.printStackTrace(); } return R.ok(); } }