diff --git a/src/main/java/com/ydool/staff/controller/OrganizationController.java b/src/main/java/com/ydool/staff/controller/OrganizationController.java index c89d1f4..00d2ec1 100644 --- a/src/main/java/com/ydool/staff/controller/OrganizationController.java +++ b/src/main/java/com/ydool/staff/controller/OrganizationController.java @@ -2,11 +2,13 @@ package com.ydool.staff.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.github.xiaoymin.knife4j.annotations.DynamicParameter; +import com.github.xiaoymin.knife4j.annotations.DynamicResponseParameters; import com.ydool.common.base.BaseController; import com.ydool.common.constant.UrlConstant; import com.ydool.common.data.dto.AjaxResult; -import com.ydool.staff.entity.PartyOrganization; -import com.ydool.staff.request.MechanismRequest; +import com.ydool.staff.entity.Organization; +import com.ydool.staff.request.OrganizationSearch; import com.ydool.staff.service.*; import com.ydool.system.request.IdsRequest; import io.swagger.annotations.Api; @@ -14,94 +16,28 @@ 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.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping(UrlConstant.ORGANIZATION) -@Api(tags = "内设机构登记", value = "内设机构登记") +@Api(tags = "人员招聘登记人员指标申报列表", value = "人员招聘登记人员指标申报列表") public class OrganizationController extends BaseController { - @Autowired - ICompanyNameService companyNameService; @Autowired IOrganizationService organizationService; - @Autowired - IPartyOrganizationService partyOrganizationService; - @Autowired - IMechanismService mechanismService; - @Autowired - IAttachmentService attachmentService; - /** - * =======================内设机构登记========================= - * - * @return - */ - - @GetMapping("/selectOrganizationList") - @ApiOperation(value = "内设机构登记列表") - @ApiOperationSupport(order = 1) - @ApiImplicitParams({@ApiImplicitParam(name = "companyName", value = "企业名称"), @ApiImplicitParam(name = "current", value = "当前页", dataType = "Integer"), @ApiImplicitParam(name = "size", value = "每页条数", dataType = "Integer"),}) - public AjaxResult selectOrganizationList(String companyName) { - return organizationService.selectOrganizationList(new Page<>(getPageNum(), getPageSize()), companyName); + @GetMapping("/selectOrganizationPersonnelIndicatorsList") + @ApiOperation(value = "人员招聘登记人员指标申报列表") + @ApiOperationSupport(responses = @DynamicResponseParameters(properties = {@DynamicParameter(name = "data", dataTypeClass = Organization.class)}), order = 1) + @ApiImplicitParams({@ApiImplicitParam(name = "type", value = "人员招聘登记organization/人员指标申报personnel_indicators", dataType = "String", required = true), @ApiImplicitParam(name = "current", value = "当前页", dataType = "Integer"), @ApiImplicitParam(name = "size", value = "每页条数", dataType = "Integer"),}) + public AjaxResult selectOrganizationList(OrganizationSearch organizationSearch) { + return organizationService.selectOrganizationList(new Page(getPageNum(), getPageSize()), organizationSearch); } - @GetMapping("/selectOrganizationFileList") + @PostMapping("/deleteOrganizationAndPersonnelIndicators") + @ApiOperation(value = "人员招聘登记人员指标申报删除") @ApiOperationSupport(order = 2) - @ApiOperation(value = "内设机构附件列表") - @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "企业Id")}) - public AjaxResult selectOrganizationFileList(String id) { - return attachmentService.selectOrganizationFileList(id); - } - - @GetMapping("/selectOrganizationByMechanism") - @ApiOperation(value = "内设机构登记详情") - @ApiOperationSupport(order = 4) - @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "内设机构Id", required = true)}) - public AjaxResult selectOrganizationByMechanism(String id) { - return organizationService.selectOrganizationByMechanism(id); - } - - @PostMapping("/deleteOrganization") - @ApiOperation(value = "内设机构删除") - @ApiOperationSupport(order = 5) public AjaxResult deleteOrganization(@RequestBody IdsRequest id) { return organizationService.deleteOrganization(id); } - - /** - * ===========================机构信息============================ - * - * @return - */ - - @GetMapping("/selectCompanyNameByIdMechanismPartyOrganization") - @ApiOperation(value = "企业id查内设机构和党组织信息") - @ApiOperationSupport(order = 6) - @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "企业Id")}) - public AjaxResult selectCompanyNameByIdMechanismPartyOrganization(String id) { - return mechanismService.selectCompanyNameByIdMechanismPartyOrganization(id); - } - - @PostMapping("/saveMechanismPartyOrganization") - @ApiOperation(value = "机构信息和党组织信息新增") - @ApiOperationSupport(order = 7) - public AjaxResult saveMechanismPartyOrganization(@RequestBody @Validated MechanismRequest mechanismRequest) { - return mechanismService.saveMechanismPartyOrganization(mechanismRequest); - } - - /** - * ==========================党组织信息=========================== - * - * @return - */ - - // @PostMapping("/savePartyOrganization") - // @ApiOperation(value = "党组织信息新增") - // @ApiOperationSupport(order = 7) - // public AjaxResult savePartyOrganization(@RequestBody @Validated PartyOrganization partyOrganization) { - // return partyOrganizationService.savePartyOrganization(partyOrganization); - // } - } diff --git a/src/main/java/com/ydool/staff/controller/PersonnelIndicatorsController.java b/src/main/java/com/ydool/staff/controller/PersonnelIndicatorsController.java index a342855..2752011 100644 --- a/src/main/java/com/ydool/staff/controller/PersonnelIndicatorsController.java +++ b/src/main/java/com/ydool/staff/controller/PersonnelIndicatorsController.java @@ -1,8 +1,12 @@ package com.ydool.staff.controller; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.github.xiaoymin.knife4j.annotations.DynamicParameter; +import com.github.xiaoymin.knife4j.annotations.DynamicResponseParameters; import com.ydool.common.base.BaseController; import com.ydool.common.constant.UrlConstant; import com.ydool.common.data.dto.AjaxResult; +import com.ydool.staff.dto.PersonnelIndicatorsDto; import com.ydool.staff.request.PersonnelIndicatorsRequest; import com.ydool.staff.service.IPersonnelIndicatorsService; import io.swagger.annotations.Api; @@ -29,12 +33,14 @@ public class PersonnelIndicatorsController extends BaseController { @PostMapping("/savePersonnelIndicators") @ApiOperation(value = "人员指标申报登记") + @ApiOperationSupport(responses = @DynamicResponseParameters(properties = {@DynamicParameter(name = "data", dataTypeClass = PersonnelIndicatorsRequest.class)}), order = 2) public AjaxResult savePersonnelIndicators(@RequestBody @Validated PersonnelIndicatorsRequest personnelIndicatorsRequest) { return personnelIndicatorsService.savePersonnelIndicators(personnelIndicatorsRequest); } @GetMapping("/selectPersonnelIndicatorsById") - @ApiOperation(value = "人员招聘详情") + @ApiOperation(value = "人员指标申报详情") + @ApiOperationSupport(responses = @DynamicResponseParameters(properties = {@DynamicParameter(name = "data", dataTypeClass = PersonnelIndicatorsDto.class)}), order = 3) public AjaxResult selectPersonnelIndicatorsById(String id) { return personnelIndicatorsService.selectPersonnelIndicatorsById(id); } diff --git a/src/main/java/com/ydool/staff/controller/RecruitmentController.java b/src/main/java/com/ydool/staff/controller/RecruitmentController.java index da52d6a..f85f320 100644 --- a/src/main/java/com/ydool/staff/controller/RecruitmentController.java +++ b/src/main/java/com/ydool/staff/controller/RecruitmentController.java @@ -1,13 +1,15 @@ package com.ydool.staff.controller; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.github.xiaoymin.knife4j.annotations.DynamicParameter; +import com.github.xiaoymin.knife4j.annotations.DynamicResponseParameters; import com.ydool.common.base.BaseController; import com.ydool.common.constant.UrlConstant; import com.ydool.common.data.dto.AjaxResult; +import com.ydool.staff.dto.RecruitmentDto; import com.ydool.staff.request.RecruitmentRequest; -import com.ydool.staff.request.RecruitmentSearch; -import com.ydool.staff.service.ICompanyNameService; import com.ydool.staff.service.IRecruitmentService; +import com.ydool.system.request.IdsRequest; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -22,37 +24,26 @@ public class RecruitmentController extends BaseController { @Autowired IRecruitmentService recruitmentService; - // @Autowired - // ICompanyNameService companyNameService; - - @GetMapping("/selectRecruitmentList") - @ApiOperation(value = "人员登记列表") - public AjaxResult selectRecruitmentList(@RequestBody RecruitmentSearch recruitmentSearch) { - return recruitmentService.selectRecruitmentList(new Page<>(getPageNum(), getPageSize()), recruitmentSearch); - } - - @PostMapping("/insertRecruitment") - @ApiOperation(value = "人员招聘登记") - public AjaxResult insertRecruitment(@RequestBody @Validated RecruitmentRequest recruitmentRequest) { - return recruitmentService.saveRecruitment(recruitmentRequest); - } - - // @DeleteMapping("/deleteRecruitment") - // @ApiOperation(value = "人员删除") - // public AjaxResult deleteRecruitment(String id) { - // return recruitmentService.deleteRecruitment(id); - // } @GetMapping("/selectCompanyNameById") @ApiOperation(value = "人员招聘登记详情") + @ApiOperationSupport(responses = @DynamicResponseParameters(properties = {@DynamicParameter(name = "data", dataTypeClass = RecruitmentDto.class)}), order = 2) public AjaxResult selectCompanyNameById(String id) { return recruitmentService.selectRecruitmentById(id); } - // @PostMapping("/recruitmentSaveBatch") - // @ApiOperation(value = "批量人员登记") - // public AjaxResult recruitmentSaveBatch(@RequestBody @Validated RecruitmentDto recruitmentDto){ - // return recruitmentService.recruitmentSaveBatch(recruitmentDto.getRecruitment()); - // } + @PostMapping("/insertRecruitment") + @ApiOperation(value = "人员招聘登记新增") + @ApiOperationSupport(responses = @DynamicResponseParameters(properties = {@DynamicParameter(name = "data", dataTypeClass = RecruitmentRequest.class)}), order = 3) + public AjaxResult insertRecruitment(@RequestBody @Validated RecruitmentRequest recruitmentRequest) { + return recruitmentService.saveRecruitment(recruitmentRequest); + } + + @PostMapping("/deleteRecruitment") + @ApiOperation(value = "人员招聘登记删除") + @ApiOperationSupport(order = 5) + public AjaxResult deleteRecruitment(@RequestBody IdsRequest id) { + return recruitmentService.deleteRecruitment(id); + } } diff --git a/src/main/java/com/ydool/staff/dto/PersonnelIndicatorsDto.java b/src/main/java/com/ydool/staff/dto/PersonnelIndicatorsDto.java index 407799e..d79945e 100644 --- a/src/main/java/com/ydool/staff/dto/PersonnelIndicatorsDto.java +++ b/src/main/java/com/ydool/staff/dto/PersonnelIndicatorsDto.java @@ -1,6 +1,6 @@ package com.ydool.staff.dto; -import com.ydool.staff.entity.CompanyName; +import com.ydool.staff.entity.Organization; import com.ydool.staff.entity.PersonnelIndicators; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -19,7 +19,7 @@ import java.util.List; public class PersonnelIndicatorsDto implements Serializable { @ApiModelProperty(value = "企业信息") - private CompanyName companyName; + private Organization organization; @ApiModelProperty(value = "人员指标申报") private List personnelIndicators; diff --git a/src/main/java/com/ydool/staff/dto/RecruitmentDto.java b/src/main/java/com/ydool/staff/dto/RecruitmentDto.java index 4260dad..68aad58 100644 --- a/src/main/java/com/ydool/staff/dto/RecruitmentDto.java +++ b/src/main/java/com/ydool/staff/dto/RecruitmentDto.java @@ -1,6 +1,6 @@ package com.ydool.staff.dto; -import com.ydool.staff.entity.CompanyName; +import com.ydool.staff.entity.Organization; import com.ydool.staff.entity.Recruitment; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -12,7 +12,7 @@ import java.util.List; public class RecruitmentDto implements Serializable { @ApiModelProperty(value = "企业信息") - private CompanyName companyName; + private Organization organization; @ApiModelProperty(value = "人员招聘登记") private List recruitments; diff --git a/src/main/java/com/ydool/staff/entity/CompanyName.java b/src/main/java/com/ydool/staff/entity/CompanyName.java index fe63e69..1cf08e1 100644 --- a/src/main/java/com/ydool/staff/entity/CompanyName.java +++ b/src/main/java/com/ydool/staff/entity/CompanyName.java @@ -36,13 +36,16 @@ public class CompanyName extends BaseEntity { private String approvalNumber; @ApiModelProperty(value = "核定指标人数") - private Integer checkNumber; + private Long checkNumber; @ApiModelProperty(value = "在职人数") - private Integer activeStaff; + private Long activeStaff; @ApiModelProperty(value = "剩余指标人数") - private Integer residueNumber; + private Long residueNumber; + + @ApiModelProperty(value = "本次核定总人数") + private Long thisApprovalNumber; @ApiModelProperty(value = "备注") private String remarks; diff --git a/src/main/java/com/ydool/staff/entity/DirectorsSupervisors.java b/src/main/java/com/ydool/staff/entity/DirectorsSupervisors.java index 8aef445..9e8503b 100644 --- a/src/main/java/com/ydool/staff/entity/DirectorsSupervisors.java +++ b/src/main/java/com/ydool/staff/entity/DirectorsSupervisors.java @@ -106,6 +106,12 @@ public class DirectorsSupervisors extends BaseEntity { @ApiModelProperty(value = "单据状态") private String documentStatus; + @ApiModelProperty(value = "初审意见") + private String firstTrial; + + @ApiModelProperty(value = "终审意见") + private String lastInstance; + @ApiModelProperty(value = "附件") @TableField(exist = false) private List attachmentDtoList; diff --git a/src/main/java/com/ydool/staff/entity/Organization.java b/src/main/java/com/ydool/staff/entity/Organization.java index 2dfdab5..5a4e793 100644 --- a/src/main/java/com/ydool/staff/entity/Organization.java +++ b/src/main/java/com/ydool/staff/entity/Organization.java @@ -34,19 +34,29 @@ public class Organization extends BaseEntity{ @ApiModelProperty(value = "信用代码") private String creditCode; + @ApiModelProperty(value = "审批单号") + private String approvalNumber; + + @ApiModelProperty(value = "核定用工人数") + private Long checkNumber; + + @ApiModelProperty(value = "剩余指标人数") + private Long residualNumber; + + @ApiModelProperty(value = "在职人数") + private Long activeStaff; + + @ApiModelProperty(value = "本次核定总人数") + private Long thisApprovalNumber; + @ApiModelProperty(value = "备注") private String remark; @ApiModelProperty(value = "相关附件") private String attachment; - // @ApiModelProperty(value = "附件列表") - // @TableField(exist = false) - // private List attachments; - - @ApiModelProperty(value = "企业名称") - @TableField(exist = false) - private String companyName; + @ApiModelProperty(value = "类型") + private String type; @ApiModelProperty(value = "修改人") @TableField(exist = false) diff --git a/src/main/java/com/ydool/staff/entity/PersonnelIndicators.java b/src/main/java/com/ydool/staff/entity/PersonnelIndicators.java index a5c8b3f..56d442a 100644 --- a/src/main/java/com/ydool/staff/entity/PersonnelIndicators.java +++ b/src/main/java/com/ydool/staff/entity/PersonnelIndicators.java @@ -1,4 +1,5 @@ package com.ydool.staff.entity; + import com.baomidou.mybatisplus.annotation.TableName; import com.ydool.common.base.BaseEntity; import io.swagger.annotations.ApiModel; @@ -6,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; + /** *

* 人员指标申报 @@ -18,8 +20,8 @@ import lombok.experimental.Accessors; @EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @TableName("t_lc_personnel_indicators") -@ApiModel(value="PersonnelIndicators对象", description="人员指标申报") -public class PersonnelIndicators extends BaseEntity{ +@ApiModel(value = "PersonnelIndicators对象", description = "人员指标申报") +public class PersonnelIndicators extends BaseEntity { private static final long serialVersionUID = 1L; @@ -41,4 +43,13 @@ public class PersonnelIndicators extends BaseEntity{ @ApiModelProperty(value = "增加指标人数") private Long addNumber; + @ApiModelProperty(value = "初审意见") + private String firstTrial; + + @ApiModelProperty(value = "国资意见") + private String stateOwned; + + @ApiModelProperty(value = "编办意见") + private String arrangeFor; + } diff --git a/src/main/java/com/ydool/staff/entity/Recruitment.java b/src/main/java/com/ydool/staff/entity/Recruitment.java index 9135edf..eda3275 100644 --- a/src/main/java/com/ydool/staff/entity/Recruitment.java +++ b/src/main/java/com/ydool/staff/entity/Recruitment.java @@ -1,5 +1,6 @@ package com.ydool.staff.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.ydool.common.base.BaseEntity; @@ -28,7 +29,7 @@ public class Recruitment extends BaseEntity { private static final long serialVersionUID = 1L; - @ApiModelProperty(value = "企业名称") + @ApiModelProperty(value = "企业id") private String companyId; @ApiModelProperty(value = "部门") @@ -44,6 +45,15 @@ public class Recruitment extends BaseEntity { private String requirements; @ApiModelProperty(value = "审批") - private Integer approval; + private Long approval; + @ApiModelProperty(value = "初审意见") + private String firstTrial; + + @ApiModelProperty(value = "终审意见") + private String lastInstance; + + @ApiModelProperty(value = "企业名称") + @TableField(exist = false) + private String companyName; } diff --git a/src/main/java/com/ydool/staff/request/OrganizationRequest.java b/src/main/java/com/ydool/staff/request/OrganizationRequest.java index 7923886..0540e46 100644 --- a/src/main/java/com/ydool/staff/request/OrganizationRequest.java +++ b/src/main/java/com/ydool/staff/request/OrganizationRequest.java @@ -1,18 +1,9 @@ package com.ydool.staff.request; -import com.ydool.staff.dto.AttachmentDto; -import com.ydool.staff.entity.Attachment; -import com.ydool.staff.entity.Mechanism; -import com.ydool.staff.entity.Organization; -import com.ydool.staff.entity.PartyOrganization; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotEmpty; import java.io.Serializable; -import java.util.List; @Data public class OrganizationRequest implements Serializable { @@ -23,15 +14,24 @@ public class OrganizationRequest implements Serializable { @ApiModelProperty(value = "信用代码") private String creditCode; + @ApiModelProperty(value = "审批单号") + private String approvalNumber; + + @ApiModelProperty(value = "核定用工人数") + private String checkNumber; + + @ApiModelProperty(value = "在职人数") + private String activeStaff; + + @ApiModelProperty(value = "本次核定总人数") + private String thisApprovalNumber; + + @ApiModelProperty(value = "剩余指标人数") + private String residualNumber; + + @ApiModelProperty(value = "类型") + private String type; + @ApiModelProperty(value = "备注") private String remark; - - @ApiModelProperty(value = "附件列表") - private List attachments; - - @ApiModelProperty(value = "机构信息") - private List mechanismList; - - @ApiModelProperty(value = "党组织信息") - private List partyList; } diff --git a/src/main/java/com/ydool/staff/request/OrganizationSearch.java b/src/main/java/com/ydool/staff/request/OrganizationSearch.java new file mode 100644 index 0000000..6ddfd5f --- /dev/null +++ b/src/main/java/com/ydool/staff/request/OrganizationSearch.java @@ -0,0 +1,28 @@ +package com.ydool.staff.request; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author Zhuyy + * @ClassName OrganizationSearch + * @Description TODO + * @date 2023/2/13 16:16 + * @Version 1.0 + */ + +@Data +public class OrganizationSearch { + + @ApiModelProperty(value = "企业名称") + private String companyName; + + @ApiModelProperty(value = "审批单号") + private String approvalNumber; + + @ApiModelProperty(value = "类型") + @NotBlank(message = "类型不能为空") + private String type; +} diff --git a/src/main/java/com/ydool/staff/request/PersonnelIndicatorsRequest.java b/src/main/java/com/ydool/staff/request/PersonnelIndicatorsRequest.java index 5c976ff..a737ce7 100644 --- a/src/main/java/com/ydool/staff/request/PersonnelIndicatorsRequest.java +++ b/src/main/java/com/ydool/staff/request/PersonnelIndicatorsRequest.java @@ -4,7 +4,6 @@ import com.ydool.staff.entity.PersonnelIndicators; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import java.io.Serializable; import java.util.List; @@ -18,9 +17,8 @@ import java.util.List; @Data public class PersonnelIndicatorsRequest implements Serializable { - @ApiModelProperty(value = "企业id") - @NotBlank(message = "企业id不能为空") - private String companyId; + @ApiModelProperty(value = "人员指标") + private OrganizationRequest organizationRequest; @ApiModelProperty(value = "人员指标申报") private List personnelIndicators; diff --git a/src/main/java/com/ydool/staff/request/RecruitmentRequest.java b/src/main/java/com/ydool/staff/request/RecruitmentRequest.java index 1390d41..6f1e3ff 100644 --- a/src/main/java/com/ydool/staff/request/RecruitmentRequest.java +++ b/src/main/java/com/ydool/staff/request/RecruitmentRequest.java @@ -1,22 +1,17 @@ package com.ydool.staff.request; -import com.ydool.staff.dto.RecruitmentDto; -import com.ydool.staff.entity.CompanyName; import com.ydool.staff.entity.Recruitment; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.io.Serializable; import java.util.List; @Data public class RecruitmentRequest implements Serializable { - @ApiModelProperty(value = "企业id") - @NotBlank(message = "企业id不能为空") - private String companyId; + @ApiModelProperty(value = "招聘登记") + private OrganizationRequest organizationRequest; @ApiModelProperty(value = "人员招聘登记") private List recruitments; diff --git a/src/main/java/com/ydool/staff/service/IAttachmentService.java b/src/main/java/com/ydool/staff/service/IAttachmentService.java index d2dcb01..f8db0ca 100644 --- a/src/main/java/com/ydool/staff/service/IAttachmentService.java +++ b/src/main/java/com/ydool/staff/service/IAttachmentService.java @@ -26,6 +26,6 @@ public interface IAttachmentService { AjaxResult deleteFile(IdsRequest ids); - AjaxResult selectOrganizationFileList(Page page,String id,String type); + AjaxResult selectOrganizationFileList(Page page,String id,String type); } diff --git a/src/main/java/com/ydool/staff/service/IOrganizationService.java b/src/main/java/com/ydool/staff/service/IOrganizationService.java index 2800b27..db052eb 100644 --- a/src/main/java/com/ydool/staff/service/IOrganizationService.java +++ b/src/main/java/com/ydool/staff/service/IOrganizationService.java @@ -3,6 +3,7 @@ package com.ydool.staff.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ydool.common.data.dto.AjaxResult; import com.ydool.staff.entity.Organization; +import com.ydool.staff.request.OrganizationSearch; import com.ydool.system.request.IdsRequest; /** @@ -15,16 +16,10 @@ import com.ydool.system.request.IdsRequest; */ public interface IOrganizationService { - AjaxResult selectOrganizationList(Page page, String companyName); + AjaxResult selectOrganizationList(Page page, OrganizationSearch organizationSearch); - AjaxResult selectOrganizationByMechanism(String id); AjaxResult deleteOrganization(IdsRequest id); - AjaxResult selectOrganizationByName(String companyName); - - AjaxResult selectOrganization(); - - AjaxResult selectCompanyNameByOrganization(Page page, String id); } diff --git a/src/main/java/com/ydool/staff/service/IPersonnelIndicatorsService.java b/src/main/java/com/ydool/staff/service/IPersonnelIndicatorsService.java index 63236fe..b42f4cd 100644 --- a/src/main/java/com/ydool/staff/service/IPersonnelIndicatorsService.java +++ b/src/main/java/com/ydool/staff/service/IPersonnelIndicatorsService.java @@ -16,5 +16,6 @@ public interface IPersonnelIndicatorsService { AjaxResult savePersonnelIndicators(PersonnelIndicatorsRequest personnelIndicatorsRequest); AjaxResult selectPersonnelIndicatorsById(String id); + } diff --git a/src/main/java/com/ydool/staff/service/IRecruitmentService.java b/src/main/java/com/ydool/staff/service/IRecruitmentService.java index c58aede..f09811a 100644 --- a/src/main/java/com/ydool/staff/service/IRecruitmentService.java +++ b/src/main/java/com/ydool/staff/service/IRecruitmentService.java @@ -5,17 +5,12 @@ import com.ydool.common.data.dto.AjaxResult; import com.ydool.staff.entity.Recruitment; import com.ydool.staff.request.RecruitmentRequest; import com.ydool.staff.request.RecruitmentSearch; +import com.ydool.system.request.IdsRequest; import java.util.List; public interface IRecruitmentService { - /** - * 人员列表 - * @return - */ - AjaxResult selectRecruitmentList(Page page, RecruitmentSearch recruitmentSearch); - /** * 新增人员 * @param recruitmentRequest @@ -28,7 +23,7 @@ public interface IRecruitmentService { * @param id * @return */ - AjaxResult deleteRecruitment(String id); + AjaxResult deleteRecruitment(IdsRequest id); /** * 人员详情 @@ -37,10 +32,4 @@ public interface IRecruitmentService { */ AjaxResult selectRecruitmentById(String id); - /** - * 批量新增人员 - * @param recruitmentRequest - * @return - */ - AjaxResult recruitmentSaveBatch(List recruitmentRequest); } diff --git a/src/main/java/com/ydool/staff/service/impl/OrganizationServiceImpl.java b/src/main/java/com/ydool/staff/service/impl/OrganizationServiceImpl.java index 22f5e5c..e58ad47 100644 --- a/src/main/java/com/ydool/staff/service/impl/OrganizationServiceImpl.java +++ b/src/main/java/com/ydool/staff/service/impl/OrganizationServiceImpl.java @@ -1,28 +1,21 @@ package com.ydool.staff.service.impl; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.ydool.common.constant.ArgsConst; import com.ydool.common.data.dto.AjaxResult; -import com.ydool.staff.dto.AttachmentDto; import com.ydool.staff.entity.*; import com.ydool.common.base.BaseService; import com.ydool.staff.mapper.*; -import com.ydool.staff.request.OrganizationRequest; +import com.ydool.staff.request.OrganizationSearch; import com.ydool.staff.service.IOrganizationService; import com.ydool.system.mapper.UserMapper; import com.ydool.system.request.IdsRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.thymeleaf.util.StringUtils; -import javax.validation.constraints.NotEmpty; -import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -40,49 +33,21 @@ public class OrganizationServiceImpl extends BaseService page, String companyName) { + public AjaxResult selectOrganizationList(Page page, OrganizationSearch organizationSearch) { LambdaQueryWrapper organizationLambdaQueryWrapper = new LambdaQueryWrapper<>(); - organizationLambdaQueryWrapper.exists(StrUtil.isNotBlank(companyName), "select t2.id from t_lc_company_name t2 where t_lc_organization.company_id = t2.id and t2.company_name like '%" + companyName + "%'"); + organizationLambdaQueryWrapper.exists(StrUtil.isNotBlank(organizationSearch.getCompanyName()), "select t2.id from t_lc_company_name t2 where t_lc_organization.company_id = t2.id and t2.company_name like '%" + organizationSearch.getCompanyName() + "%'"); + organizationLambdaQueryWrapper.eq(StrUtil.isNotBlank(organizationSearch.getApprovalNumber()), Organization::getApprovalNumber, organizationSearch.getApprovalNumber()); + organizationLambdaQueryWrapper.eq(Organization::getType, organizationSearch.getType()); Page selectPage = organizationMapper.selectPage(page, organizationLambdaQueryWrapper); for (Organization record : selectPage.getRecords()) { record.setUpdatedName(userMapper.selectById(record.getUpdatedId()).getUserName()); - record.setCompanyName(companyNameMapper.selectById(record.getCompanyId()).getCompanyName()); } return AjaxResult.ok().data(selectPage); } - @Override - public AjaxResult selectOrganizationByMechanism(String id) { - Organization organization = organizationMapper.selectById(id); - if (ObjectUtil.isNull(organization)) { - return AjaxResult.fail().msg("未找到相关信息!"); - } else { - List mechanismList = mechanismMapper.selectList(new LambdaQueryWrapper().eq(Mechanism::getOrganizationId, organization.getId())); - List attachmentList = attachmentMapper.selectList(new LambdaQueryWrapper().eq(Attachment::getTargetId, organization.getId()).eq(Attachment::getTargetType, ArgsConst.ORGANIZATION)); - List partyOrganizationList = partyOrganizationMapper.selectList(new LambdaQueryWrapper().eq(PartyOrganization::getOrganizationId, organization.getId())); - List toList = BeanUtil.copyToList(attachmentList, AttachmentDto.class); - OrganizationRequest organizationRequest = new OrganizationRequest(); - organizationRequest.setRemark(organization.getRemark()); - organizationRequest.setCreditCode(organization.getCreditCode()); - organizationRequest.setCompanyId(companyNameMapper.selectById(organization.getCompanyId()).getCompanyName()); - organizationRequest.setAttachments(toList); - organizationRequest.setPartyList(partyOrganizationList); - organizationRequest.setMechanismList(mechanismList); - return AjaxResult.ok().data(organizationRequest); - } - } - @Override @Transactional(rollbackFor = Exception.class) public AjaxResult deleteOrganization(IdsRequest id) { @@ -94,21 +59,5 @@ public class OrganizationServiceImpl extends BaseService 0 ? AjaxResult.ok().msg("删除成功!") : AjaxResult.fail().msg("删除失败!"); } } - - @Override - public AjaxResult selectOrganizationByName(String companyName) { - return AjaxResult.ok().data(companyNameMapper.selectOne(new LambdaQueryWrapper().eq(CompanyName::getId, companyName))); - } - - @Override - public AjaxResult selectOrganization() { - return AjaxResult.ok().data(organizationMapper.selectList(null)); - } - - @Override - public AjaxResult selectCompanyNameByOrganization(Page page, String id) { - Page organizationPage = organizationMapper.selectPage(page, new LambdaQueryWrapper().eq(Organization::getCompanyId, id)); - return AjaxResult.ok().data(organizationPage); - } } diff --git a/src/main/java/com/ydool/staff/service/impl/PersonnelIndicatorsServiceImpl.java b/src/main/java/com/ydool/staff/service/impl/PersonnelIndicatorsServiceImpl.java index 835e746..75feab1 100644 --- a/src/main/java/com/ydool/staff/service/impl/PersonnelIndicatorsServiceImpl.java +++ b/src/main/java/com/ydool/staff/service/impl/PersonnelIndicatorsServiceImpl.java @@ -1,14 +1,16 @@ package com.ydool.staff.service.impl; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ydool.common.data.dto.AjaxResult; import com.ydool.staff.dto.PersonnelIndicatorsDto; -import com.ydool.staff.entity.CompanyName; -import com.ydool.staff.entity.PersonnelIndicators; +import com.ydool.staff.entity.*; import com.ydool.common.base.BaseService; -import com.ydool.staff.mapper.CompanyNameMapper; +import com.ydool.staff.entity.PersonnelIndicators; +import com.ydool.staff.mapper.OrganizationMapper; import com.ydool.staff.mapper.PersonnelIndicatorsMapper; +import com.ydool.staff.request.OrganizationRequest; import com.ydool.staff.request.PersonnelIndicatorsRequest; import com.ydool.staff.service.IPersonnelIndicatorsService; import org.springframework.beans.factory.annotation.Autowired; @@ -30,28 +32,35 @@ public class PersonnelIndicatorsServiceImpl extends BaseService personnelIndicators = personnelIndicatorsRequest.getPersonnelIndicators(); - for (PersonnelIndicators personnelIndicator : personnelIndicators) { - personnelIndicator.setOrganizationId(personnelIndicatorsRequest.getCompanyId()); + OrganizationRequest organizationRequest = personnelIndicatorsRequest.getOrganizationRequest(); + Organization organization = BeanUtil.copyProperties(organizationRequest, Organization.class); + organization.setType("personnel_indicators"); + int i = organizationMapper.insert(organization); + if (i > 0) { + List personnelIndicators = personnelIndicatorsRequest.getPersonnelIndicators(); + for (PersonnelIndicators personnelIndicator : personnelIndicators) { + personnelIndicator.setOrganizationId(organization.getId()); + } + boolean batch = saveBatch(personnelIndicators); + return batch ? AjaxResult.ok().msg("添加成功!") : AjaxResult.fail().msg("添加失败!"); } - return saveBatch(personnelIndicators) ? AjaxResult.ok().msg("添加成功!") : AjaxResult.fail().msg("添加失败!"); + return AjaxResult.fail().msg("添加失败!"); } @Override public AjaxResult selectPersonnelIndicatorsById(String id) { - PersonnelIndicators recruitment = personnelIndicatorsMapper.selectById(id); - if (ObjectUtil.isNull(recruitment)) { + Organization companyName = organizationMapper.selectById(id); + if (ObjectUtil.isNull(companyName)) { return AjaxResult.fail().msg("未找到相关信息!"); } - CompanyName companyName = companyNameMapper.selectById(recruitment.getOrganizationId()); - List recruitments = personnelIndicatorsMapper.selectList(new LambdaQueryWrapper().eq(PersonnelIndicators::getOrganizationId, companyName.getId())); + List personnelIndicators = personnelIndicatorsMapper.selectList(new LambdaQueryWrapper().eq(PersonnelIndicators::getOrganizationId, companyName.getId())); PersonnelIndicatorsDto recruitmentRequest = new PersonnelIndicatorsDto(); - recruitmentRequest.setCompanyName(companyName); - recruitmentRequest.setPersonnelIndicators(recruitments); + recruitmentRequest.setOrganization(companyName); + recruitmentRequest.setPersonnelIndicators(personnelIndicators); return AjaxResult.ok().data(recruitmentRequest); } } diff --git a/src/main/java/com/ydool/staff/service/impl/RecruitmentServiceImpl.java b/src/main/java/com/ydool/staff/service/impl/RecruitmentServiceImpl.java index 88ccb6d..bea224b 100644 --- a/src/main/java/com/ydool/staff/service/impl/RecruitmentServiceImpl.java +++ b/src/main/java/com/ydool/staff/service/impl/RecruitmentServiceImpl.java @@ -1,24 +1,26 @@ package com.ydool.staff.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ydool.common.data.dto.AjaxResult; import com.ydool.staff.dto.RecruitmentDto; -import com.ydool.staff.entity.CompanyName; +import com.ydool.staff.entity.Organization; import com.ydool.staff.entity.Recruitment; import com.ydool.common.base.BaseService; import com.ydool.staff.mapper.CompanyNameMapper; +import com.ydool.staff.mapper.OrganizationMapper; import com.ydool.staff.mapper.RecruitmentMapper; +import com.ydool.staff.request.OrganizationRequest; import com.ydool.staff.request.RecruitmentRequest; -import com.ydool.staff.request.RecruitmentSearch; import com.ydool.staff.service.IRecruitmentService; +import com.ydool.system.request.IdsRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Arrays; import java.util.List; /** @@ -36,56 +38,57 @@ public class RecruitmentServiceImpl extends BaseService page, RecruitmentSearch recruitmentSearch) { - LambdaQueryWrapper recruitmentLambdaQueryWrapper = new LambdaQueryWrapper<>(); - // recruitmentLambdaQueryWrapper.exists(StrUtil.isNotBlank(recruitmentSearch.getCompanyName()), ""); - Page recruitmentPage = recruitmentMapper.selectPage(page, recruitmentLambdaQueryWrapper); - return AjaxResult.ok().data(recruitmentPage); - } - + /** + * 人员招聘登记 + * @param recruitmentRequest + * @return + */ @Override @Transactional(rollbackFor = Exception.class) public AjaxResult saveRecruitment(RecruitmentRequest recruitmentRequest) { - List recruitments = recruitmentRequest.getRecruitments(); - for (Recruitment recruitment : recruitments) { - recruitment.setCompanyId(recruitment.getCompanyId()); + OrganizationRequest organizationRequest = recruitmentRequest.getOrganizationRequest(); + Organization organization = BeanUtil.copyProperties(organizationRequest, Organization.class); + organization.setType("organization"); + int i = organizationMapper.insert(organization); + if (i > 0) { + List recruitments = recruitmentRequest.getRecruitments(); + for (Recruitment recruitment : recruitments) { + recruitment.setCompanyId(organization.getId()); + } + boolean batch = saveBatch(recruitments); + return batch ? AjaxResult.ok().msg("添加成功!") : AjaxResult.fail().msg("添加失败!"); + } else { + return AjaxResult.fail().msg("添加失败!"); } - return saveBatch(recruitments) ? AjaxResult.ok().msg("添加成功!") : AjaxResult.fail().msg("添加失败!"); } @Override @Transactional(rollbackFor = Exception.class) - public AjaxResult deleteRecruitment(String id) { - Recruitment recruitment = recruitmentMapper.selectById(id); - if (ObjectUtil.isNull(recruitment)) { - return AjaxResult.fail().msg("未找到相关信息!"); + public AjaxResult deleteRecruitment(IdsRequest ids) { + List asList = Arrays.asList(ids.getIds()); + if (CollectionUtil.isEmpty(asList)) { + return AjaxResult.fail().msg("Id不能为空!"); } else { - int i = recruitmentMapper.deleteById(recruitment.getId()); + int i = recruitmentMapper.deleteBatchIds(asList); return i > 0 ? AjaxResult.ok().msg("删除成功!") : AjaxResult.fail().msg("删除失败!"); } } @Override public AjaxResult selectRecruitmentById(String id) { - Recruitment recruitment = recruitmentMapper.selectById(id); + Organization recruitment = organizationMapper.selectById(id); if (ObjectUtil.isNull(recruitment)) { return AjaxResult.fail().msg("未找到相关信息!"); } - CompanyName companyName = companyNameMapper.selectById(recruitment.getCompanyId()); - List recruitments = recruitmentMapper.selectList(new LambdaQueryWrapper().eq(Recruitment::getCompanyId, companyName.getId())); + List recruitments = recruitmentMapper.selectList(new LambdaQueryWrapper().eq(Recruitment::getCompanyId, recruitment.getId())); RecruitmentDto recruitmentRequest = new RecruitmentDto(); - recruitmentRequest.setCompanyName(companyName); + recruitmentRequest.setOrganization(recruitment); recruitmentRequest.setRecruitments(recruitments); return AjaxResult.ok().data(recruitmentRequest); } - @Override - @Transactional(rollbackFor = Exception.class) - public AjaxResult recruitmentSaveBatch(List recruitmentRequest) { - List recruitments = BeanUtil.copyToList(recruitmentRequest, Recruitment.class); - return AjaxResult.ok().data(saveBatch(recruitments)); - } }