package com.ruoyi.personnel.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.Result; import com.ruoyi.common.core.dto.DepartmentDto; import com.ruoyi.common.core.dto.UserPageDto; import com.ruoyi.common.utils.FileSaveUtil; import com.ruoyi.common.utils.JackSonUtil; import com.ruoyi.personnel.dto.PersonBasicInfoDetailsDto; import com.ruoyi.personnel.dto.PersonBasicInfoDto; import com.ruoyi.personnel.pojo.Annex; import com.ruoyi.personnel.service.AnnexService; import com.ruoyi.personnel.service.PersonBasicInfoService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Map; /** *

* 前端控制器 *

* * @author 江苏鵷雏网络科技有限公司 * @since 2024-08-30 09:19:57 */ @Api(tags = "人员-人员基本信息") @RestController @RequestMapping("/personBasicInfo") public class PersonBasicInfoController { @Resource private PersonBasicInfoService personBasicInfoService; @Resource private AnnexService annexService; @ApiOperation(value = "查询CNAS人员侧边栏") @GetMapping("/selectCNSAPersonTree") public Result> selectCNSAPersonTree() { return Result.success(personBasicInfoService.selectCNSAPersonTree()); } @ApiOperation(value = "获取CNAS人员基本信息") @GetMapping("/getCNASPersonnelInfo") public Result getCNASPersonnelInfo(Integer userId) { return Result.success(personBasicInfoService.getCNASPersonnelInfo(userId)); } @ApiOperation(value = "保存CNAS人员基本信息") @PostMapping("/saveCNASPersonnelInfo") public Result saveCNASPersonnelInfo(@RequestBody PersonBasicInfoDto personBasicInfoDto) { personBasicInfoService.saveCNASPersonnelInfo(personBasicInfoDto); return Result.success(); } @ApiOperation(value = "人员明细分页查询") @GetMapping("basicInformationOfPersonnelSelectPage") public Result>> basicInformationOfPersonnelSelectPage(Page page, String name, Integer departmentId) { return Result.success(personBasicInfoService.basicInformationOfPersonnelSelectPage(page, name, departmentId)); } // 上传文件接口 @ApiOperation(value = "上传文件接口") @PostMapping("/saveCNASFile") public Result saveFile(@RequestPart("file") MultipartFile file) { String s = FileSaveUtil.uploadWordFile(file); return Result.success(s); } /** * 设备校准 附件上传 * @param file * @param suffix * @param id * @return */ @ApiOperation(value = "设备校准 上传文件接口") @PostMapping("/saveDeviceCalibrationFile") public Result saveDeviceCalibrationFile(@RequestParam("file") MultipartFile file,@RequestParam("suffix")String suffix,@RequestParam("id") Integer id) { personBasicInfoService.saveDeviceCalibrationFile(file,suffix,id); return Result.success(); } /** * 查看设备校准附件 * @param id * @return */ @ApiOperation(value = "设备校准 附件查看") @GetMapping("/getDeviceCalibrationFile") public Result getDeviceCalibrationFile(Integer id) { return Result.success(personBasicInfoService.getDeviceCalibrationFile(id)); } /** * 删除设备校准附件 * @param id * @return */ @ApiOperation(value = "设备校准 附件删除") @DeleteMapping("/delDeviceCalibrationFile") public Result delDeviceCalibrationFile(Integer id) { personBasicInfoService.delDeviceCalibrationFile(id); return Result.success(); } /** * 下载设备校验附件下载 * @param id * @return */ @ApiOperation(value = "设备校验附件下载") @GetMapping("/downLoadDeviceCalibrationFile") public Result downLoadDeviceCalibrationFile(Integer id,HttpServletResponse response) { personBasicInfoService.downLoadDeviceCalibrationFile(id,response); return Result.success(); } @GetMapping("/getAnnexByUserId") public Result> getAnnexByUserId(Integer userId) { List list = annexService.list(new LambdaQueryWrapper().eq(Annex::getUserId, userId)); return Result.success(list); } // 删除文件 @DeleteMapping("/deleteCNASFile") public Result saveFile(String fileName) { String[] split = fileName.split(","); for (String s : split) { FileSaveUtil.DeleteFile(s); } return Result.success(); } /** * 人员基本信息附件新增 */ @PostMapping("/addAnnex") public Result addAnnex(@RequestBody Annex annex) { annexService.save(annex); return Result.success(); } @GetMapping("/getAnnex") public Result getAnnex(Integer id) { return Result.success(annexService.getById(id)); } /** * 人员基本信息附件删除 */ @DeleteMapping("/deleteAnnex/{id}") public Result deleteAnnex(@PathVariable("id") Integer id) { annexService.removeById(id); return Result.success(); } /** * 人员基本信息附件修改 * */ @PostMapping("/updateAnnex") public Result updateAnnex(@RequestBody Annex annex) { annexService.updateById(annex); return Result.success(); } @ApiOperation(value = "导出人员基本信息") @GetMapping("/exportPersonBasicInfo") public void exportPersonBasicInfo(UserPageDto userPageDto, HttpServletResponse response) throws Exception { personBasicInfoService.exportPersonBasicInfo(userPageDto,response); } @ApiOperation(value = "下载人员档案卡") @GetMapping("/exportPersonBasicInfoById") public Result exportPersonBasicInfoById(Integer id, HttpServletResponse response) { return Result.success(personBasicInfoService.exportPersonBasicInfoById(id,response)); } @GetMapping("/getEmployees") @ApiOperation(value = "对接人员平台 获取所有人员信息") public Result getEmployees(Integer departId) { personBasicInfoService.getEmployees(departId); return Result.success(); } @GetMapping("/getEmployee") @ApiOperation(value = "对接人员平台 根据工号获取人员信息") public Result getEmployee(Integer userId) { personBasicInfoService.getEmployee(userId); return Result.success(); } }