package com.ydtech.modules.esm.controller; import com.ydtech.core.page.HttpResult; import com.ydtech.modules.base.controller.BaseController; import com.ydtech.modules.esm.model.EsmSalaryCheck; import com.ydtech.modules.esm.model.vo.EsmSalaryQueryVO; import com.ydtech.modules.esm.model.vo.EsmSocialSecurityQueryVO; import com.ydtech.modules.esm.model.vo.EsmSocialSecurityReviewVO; import com.ydtech.modules.esm.service.EsmSalaryService; import com.ydtech.modules.esm.service.EsmSocialSecurityService; import com.ydtech.modules.esm.model.vo.req.ReqVo; import com.ydtech.modules.esm.model.vo.req.SubmitAuditReq; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import javax.validation.constraints.NotNull; /** * @author: shenweidong * @Date: 2021/8/5 17:47 **/ @RestController @RequestMapping("/salaryManage") @Api(tags = {"EsmSalaryManageController"}, description = "薪酬管理") public class EsmSalaryManageController extends BaseController { private static final Logger logger = LoggerFactory.getLogger(EsmSalaryManageController.class); @Autowired EsmSocialSecurityService esmSocialSecurityService; @Autowired EsmSalaryService esmSalaryService; /** * @author: shenweidong * @date: 2021/8/6 17:27 **/ //@PreAuthorize("hasAuthority('sys:salary:add')") @PostMapping("/importSocialSecurity") @ApiOperation(value = "excel导入社保数据") public HttpResult importSocialSecurity(@ApiParam(name = "file", value = "excel文件") MultipartFile file, HttpServletRequest request) { HttpResult result = null; try { result = esmSocialSecurityService.importSocialSecurity(file, getUserName(), getDeptId()); } catch (Exception e) { e.printStackTrace(); return HttpResult.error(e.getMessage()); } return result; } /** * 提交审核 * * @author: shenweidong * @date: 2021/8/10 11:07 **/ // @PreAuthorize("hasAuthority('sys:salary:edit')") @PostMapping(value = "/submitAuditSocial", produces = "application/json;charset=UTF-8") @ApiOperation(value = "社保数据提交审核") public HttpResult submitAuditSocial(@RequestBody SubmitAuditReq req) { HttpResult result = null; try { result = esmSocialSecurityService.submitAuditSocial(req); } catch (Exception e) { e.printStackTrace(); return HttpResult.error(e.getMessage()); } return result; } /** * 查询数据 * * @author: shenweidong * @date: 2021/8/10 11:07 **/ // @PreAuthorize("hasAuthority('sys:salary:view')") @PostMapping("/listSocialSecurityPage") @ApiOperation(value = "分页查询社保数据") public HttpResult listSocialSecurityPage(@RequestBody EsmSocialSecurityQueryVO queryVO, HttpServletRequest request) { HttpResult result = null; try { result = esmSocialSecurityService.listSocialSecurityPage(queryVO, getDeptId()); } catch (Exception e) { e.printStackTrace(); return HttpResult.error(e.getMessage()); } return result; } /** * 查询待审核的数据 * * @author: shenweidong * @date: 2021/8/10 11:07 **/ // @PreAuthorize("hasAuthority('sys:salary:view')") @PostMapping(value = "/listSocialCheck", produces = "application/json;charset=UTF-8") @ApiOperation(value = "查询待审核的社保数据") public HttpResult listSocialCheck(@RequestBody EsmSocialSecurityQueryVO queryVO, HttpServletRequest request) { HttpResult result = null; try { result = esmSocialSecurityService.listSocialCheck(queryVO, getDeptId()); } catch (Exception e) { e.printStackTrace(); return HttpResult.error(e.getMessage()); } return result; } /** * 根据批次号查询待审核的数据 * * @author: shenweidong * @date: 2021/8/10 11:07 **/ // @PreAuthorize("hasAuthority('sys:salary:view')") @PostMapping("/selectByCheckId") @ApiOperation(value = "根据批次号查询待审核的数据") public HttpResult selectByCheckId(@RequestBody ReqVo reqVo, HttpServletRequest request) { HttpResult result = null; try { result = esmSocialSecurityService.selectByCheckId(reqVo, getDeptId()); } catch (Exception e) { e.printStackTrace(); return HttpResult.error(e.getMessage()); } return result; } /** * @author: shenweidong * @date: 2021/8/10 14:13 **/ //@PreAuthorize("hasAuthority('sys:salary:check')") @PostMapping("/reviewSocialSecurity") @ApiOperation(value = "更新社保数据审核状态") public HttpResult reviewSocialSecurity(@RequestBody EsmSocialSecurityReviewVO reviewVO, HttpServletRequest request) { HttpResult result = null; try { result = esmSocialSecurityService.reviewSocialSecurity(reviewVO, getUserName(), getDeptId()); } catch (Exception e) { e.printStackTrace(); return HttpResult.error("更新审核状态失败:" + e.getMessage()); } return result; } /** * ------------------------------------------------------------下面是薪酬导入,上面是社保--------------------------------------------- * * @author: shenweidong * @date: 2021/8/9 11:42 **/ // @PreAuthorize("hasAuthority('sys:salary:add')") @PostMapping("/importSalary") @ApiOperation(value = "excel导入薪酬数据") public HttpResult importSalary(@ApiParam(name = "file", value = "excel文件") MultipartFile file, @ApiParam(name = "userProp", value = "人员属性(A全日制 B非全日制)") @NotNull(message = "人员属性不能为空") @RequestParam(value = "userProp") String userProp, HttpServletRequest request) { HttpResult result = new HttpResult(); try { result = esmSalaryService.importSalary(file, userProp, getUserName(), getDeptId()); } catch (Exception e) { e.printStackTrace(); logger.error("薪酬数据导入失败:" + e.getMessage()); return HttpResult.error("薪酬数据导入失败!" + e.getMessage()); } return result; } //@PreAuthorize("hasAuthority('sys:salary:view')") @PostMapping("/selectSalary") @ApiOperation(value = "根据条件查询数据") public HttpResult selectSalary(@RequestBody EsmSalaryQueryVO queryVO, HttpServletRequest request) { HttpResult result = new HttpResult(); try { result = esmSalaryService.selectSalary(queryVO, getUserName(), getDeptId()); } catch (Exception e) { e.printStackTrace(); logger.error("薪酬数据查询失败:" + e.getMessage()); return HttpResult.error("薪酬数据查询失败!" + e.getMessage()); } return result; } /** * @author: shenweidong * @date: 2021/8/10 11:20 **/ // @PreAuthorize("hasAuthority('sys:salary:view')") @PostMapping("/selectSalaryByCheckId") @ApiOperation(value = "根据批次号查询明细") public HttpResult selectSalaryByCheckId(@RequestBody ReqVo reqVo) { HttpResult result = new HttpResult(); try { result = esmSalaryService.selectSalaryByCheckId(reqVo); } catch (Exception e) { e.printStackTrace(); logger.error("薪酬数据查询失败:" + e.getMessage()); return HttpResult.error("薪酬数据查询失败!" + e.getMessage()); } return result; } /** * 提交审核 * * @author: shenweidong * @date: 2021/8/10 11:07 **/ // @PreAuthorize("hasAuthority('sys:salary:edit')") @PostMapping("/submitSalaryByCheckId") @ApiOperation(value = "薪酬数据提交审核") public HttpResult submitSalaryByCheckId(@RequestBody ReqVo reqVo) { HttpResult result = null; try { result = esmSalaryService.submitSalaryByCheckId(reqVo); } catch (Exception e) { e.printStackTrace(); return HttpResult.error("提交审核失败" + e.getMessage()); } return result; } /** * @author: shenweidong * @date: 2021/9/7 9:51 **/ // @PreAuthorize("hasAuthority('sys:salary:check')") @PostMapping("/reviewSalary") @ApiOperation(value = "根据批次号审核数据") public HttpResult reviewSalary(@RequestBody EsmSalaryCheck esmSalaryCheck, HttpServletRequest request) { HttpResult result = null; try { result = esmSalaryService.reviewSalary(esmSalaryCheck, getUserName(), getDeptId()); } catch (Exception e) { e.printStackTrace(); return HttpResult.error("审核失败" + e.getMessage()); } return result; } }