package com.ruoyi.staff.controller;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.ruoyi.framework.aspectj.lang.annotation.Log;
|
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
|
import com.ruoyi.framework.web.domain.AjaxResult;
|
import com.ruoyi.staff.pojo.StaffContract;
|
import com.ruoyi.staff.service.IStaffContractService;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletResponse;
|
import java.util.List;
|
|
/**
|
* 合同管理(员工劳动合同)
|
*/
|
@RestController
|
@RequestMapping("/staff/contract")
|
public class StaffContractController {
|
|
@Resource
|
private IStaffContractService staffContractService;
|
|
/**
|
* 合同台账分页查询
|
*/
|
@GetMapping("/listPage")
|
public AjaxResult listPage(Page page, StaffContract req) {
|
return AjaxResult.success(staffContractService.listPage(page, req));
|
}
|
|
/**
|
* 合同详情
|
*/
|
@GetMapping("/{id}")
|
public AjaxResult detail(@PathVariable Long id) {
|
return AjaxResult.success(staffContractService.getById(id));
|
}
|
|
/**
|
* 新增合同
|
*/
|
@PostMapping("/add")
|
@Log(title = "合同管理-新增", businessType = BusinessType.INSERT)
|
public AjaxResult add(@RequestBody StaffContract staffContract) {
|
staffContract.setId(null);
|
if (staffContract.getStatus() == null) {
|
staffContract.setStatus(0);
|
}
|
return staffContractService.save(staffContract) ? AjaxResult.success() : AjaxResult.error("新增失败");
|
}
|
|
/**
|
* 修改合同
|
*/
|
@PostMapping("/update")
|
@Log(title = "合同管理-修改", businessType = BusinessType.UPDATE)
|
public AjaxResult update(@RequestBody StaffContract staffContract) {
|
return staffContractService.updateById(staffContract) ? AjaxResult.success() : AjaxResult.error("修改失败");
|
}
|
|
/**
|
* 删除合同
|
*/
|
@DeleteMapping("/del")
|
@Log(title = "合同管理-删除", businessType = BusinessType.DELETE)
|
public AjaxResult del(@RequestBody List<Long> ids) {
|
return staffContractService.removeByIds(ids) ? AjaxResult.success() : AjaxResult.error("删除失败");
|
}
|
|
/**
|
* 续签合同
|
*/
|
@PostMapping("/renew/{id}")
|
@Log(title = "合同管理-续签", businessType = BusinessType.UPDATE)
|
public AjaxResult renew(@PathVariable Long id, @RequestBody StaffContract staffContract) {
|
return staffContractService.renew(id, staffContract) > 0 ? AjaxResult.success() : AjaxResult.error("续签失败");
|
}
|
|
/**
|
* 解除合同
|
*/
|
@PostMapping("/terminate/{id}")
|
@Log(title = "合同管理-解除", businessType = BusinessType.UPDATE)
|
public AjaxResult terminate(@PathVariable Long id, @RequestBody StaffContract staffContract) {
|
return staffContractService.terminate(id, staffContract) > 0 ? AjaxResult.success() : AjaxResult.error("解除失败");
|
}
|
|
/**
|
* 合同导出
|
*/
|
@PostMapping("/export")
|
public void export(HttpServletResponse response, StaffContract req) {
|
staffContractService.export(response, req);
|
}
|
}
|