package com.newyetai.recruit.company.controller;
import com.newyetai.common.AlitaResult;
import com.newyetai.common.validation.Create;
import com.newyetai.common.validation.Update;
import com.newyetai.recruit.company.dto.HrCompanyDTO;
import com.newyetai.recruit.company.dto.HrCompanyPageQueryDTO;
import com.newyetai.recruit.company.entity.HrCompany;
import com.newyetai.recruit.company.service.IHrCompanyService;
import com.newyetai.tkmybatis.pojo.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
*
* 招聘系统-企业管理 前端控制器
*
*
* @author chenyun
* @since 2021-01-08
*/
@Api(tags = "企业管理信息")
@RestController
@RequestMapping("/company")
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class HrCompanyController {
private final IHrCompanyService companyService;
/**
* 创建
*/
@PostMapping("/create")
@ApiOperation("创建企业信息")
public AlitaResult create(@Validated(Create.class) @RequestBody HrCompanyDTO hrCompanyDTO) {
companyService.create(hrCompanyDTO);
return AlitaResult.success();
}
/**
* 修改
*/
@PutMapping("/update")
@ApiOperation("修改企业信息")
public AlitaResult update(
@Validated(Update.class) @RequestBody HrCompanyDTO hrCompanyDTO) {
return AlitaResult.success(companyService.update(hrCompanyDTO));
}
/**
* 详情
*/
@GetMapping("/detail")
@ApiOperation("企业信息详情")
public AlitaResult detail(HrCompanyDTO hrCompanyDTO) {
return AlitaResult.success(companyService.detail(hrCompanyDTO));
}
/**
* 分页查询
*/
@GetMapping("/page")
@ApiOperation("分页查询")
public AlitaResult> page(@Validated HrCompanyPageQueryDTO queryDTO) {
queryDTO.check();
companyService.page(queryDTO);
return AlitaResult.success(queryDTO.getPageResult());
}
/**
* 不分页查询
*/
@GetMapping("/list")
@ApiOperation("不分页查询")
public AlitaResult> list(@Validated HrCompanyPageQueryDTO queryDTO) {
queryDTO.check();
return AlitaResult.success(companyService.list(queryDTO));
}
@GetMapping("/export")
@ApiOperation("导出")
public void export(@Validated HrCompanyPageQueryDTO queryDTO) {
queryDTO.check();
companyService.export(queryDTO);
}
@GetMapping("/{id}")
@ApiOperation("查询单个")
public AlitaResult findById(@PathVariable("id") Long id) {
return AlitaResult.success(companyService.findById(id));
}
/**
* 分页查询-审核表的数据
*/
@GetMapping("/audit_page")
@ApiOperation("分页查询")
public AlitaResult> auditPage(@Validated HrCompanyPageQueryDTO queryDTO) {
queryDTO.check();
companyService.auditPage(queryDTO);
return AlitaResult.success(queryDTO.getPageResult());
}
}