lxp
2025-03-10 7a838ed69de1d9593fe6b37f9b5caafb5f8d0cbf
cnas-personnel/src/main/java/com/ruoyi/personnel/controller/PersonBasicInfoController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,202 @@
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;
/**
 * <p>
 *  å‰ç«¯æŽ§åˆ¶å™¨
 * </p>
 *
 * @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<List<DepartmentDto>> 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<IPage<Map<String, Object>>> basicInformationOfPersonnelSelectPage(Page<List<PersonBasicInfoDetailsDto>> 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<List<Annex>> getAnnexByUserId(Integer userId) {
        List<Annex> list = annexService.list(new LambdaQueryWrapper<Annex>().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<Annex> 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();
    }
}