package com.gkhy.exam.admin.controller.system; import com.gkhy.exam.common.annotation.Log; import com.gkhy.exam.common.annotation.RepeatSubmit; import com.gkhy.exam.common.api.CommonResult; import com.gkhy.exam.common.enums.BusinessType; import com.gkhy.exam.system.domain.SysCompany; import com.gkhy.exam.system.service.SysCompanyService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; /** *
* 企业表 前端控制器 *
* * @author kzy * @since 2024-06-05 08:43:11 */ @Api(tags = "企业前端控制器") @RestController @RequestMapping("/system/company") public class SysCompanyController { @Autowired private SysCompanyService companyService; @PreAuthorize("hasAnyAuthority('train:exam:system')") @ApiOperation(value = "企业列表(分页)") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"), @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10") }) @GetMapping("/list") public CommonResult list(SysCompany company){ return CommonResult.success(companyService.selectCompanyList(company)); } @PreAuthorize("hasAnyAuthority('train:exam:system')") @ApiOperation(value = "根据公司id获取公司信息") @GetMapping(value = { "/{companyId}" }) public CommonResult getCompanyInfo(@PathVariable(value = "companyId", required = true) Long companyId) { return CommonResult.success(companyService.selectCompanyById(companyId)); } @RepeatSubmit @PreAuthorize("hasAnyAuthority('train:exam:system')") @Log(title = "企业管理", businessType = BusinessType.INSERT) @ApiOperation(value = "新增企业") @PostMapping public CommonResult add(@Validated @RequestBody SysCompany company){ return CommonResult.success(companyService.insertCompany(company)); } @RepeatSubmit @PreAuthorize("hasAnyAuthority('train:exam:system')") @Log(title = "企业管理", businessType = BusinessType.UPDATE) @ApiOperation(value = "编辑企业") @PutMapping public CommonResult edit(@Validated @RequestBody SysCompany company){ return CommonResult.success(companyService.updateCompany(company)); } @RepeatSubmit @PreAuthorize("hasAnyAuthority('train:exam:system')") @Log(title = "企业管理", businessType = BusinessType.UPDATE) @ApiOperation(value = "删除企业") @DeleteMapping(value = { "/{companyId}" }) public CommonResult delete(@PathVariable(value = "companyId", required = true) Long companyId){ return CommonResult.success(companyService.deleteCompanyById(companyId)); } @RepeatSubmit @PreAuthorize("hasAnyAuthority('train:exam:system')") @Log(title = "企业管理", businessType = BusinessType.INSERT) @ApiOperation(value = "企业分配课时") @ApiImplicitParams({ @ApiImplicitParam(paramType = "body", name = "id", dataType = "int", required = false, value = "公司id"), @ApiImplicitParam(paramType = "body", name = "totalPeriod", dataType = "int", required = false, value = "总课时") }) @PostMapping("/assignPeriod") public CommonResult assignPeriod(@RequestBody SysCompany company){ companyService.assignPeriod(company); return CommonResult.success(); } @PreAuthorize("hasAnyAuthority('train:exam:system')") @ApiOperation(value = "校验公司名称是否唯一") @PostMapping("/checkNameUnique") public CommonResult checkNameUnique(@RequestBody SysCompany company) { return CommonResult.success(companyService.checkNameUnique(company)); } }