企业报名招聘会
This commit is contained in:
152
docs/app-company-job-fair-signup-api.md
Normal file
152
docs/app-company-job-fair-signup-api.md
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
# 企业报名招聘会接口文档
|
||||||
|
|
||||||
|
## 企业报名招聘会并填写岗位
|
||||||
|
|
||||||
|
**接口地址:** `POST /app/fair/company/signUp`
|
||||||
|
|
||||||
|
**接口说明:** 企业用户报名公共招聘会(PublicJobFair),同时填写参会岗位信息
|
||||||
|
|
||||||
|
**请求头:**
|
||||||
|
```
|
||||||
|
Authorization: Bearer {token}
|
||||||
|
Content-Type: application/json
|
||||||
|
```
|
||||||
|
|
||||||
|
**请求参数(Body JSON):**
|
||||||
|
|
||||||
|
| 参数名 | 类型 | 必填 | 说明 |
|
||||||
|
|--------|------|------|------|
|
||||||
|
| jobFairId | String | 是 | 招聘会ID |
|
||||||
|
| jobList | Array | 是 | 岗位列表 |
|
||||||
|
|
||||||
|
**岗位对象(jobList中的元素)字段:**
|
||||||
|
|
||||||
|
| 参数名 | 类型 | 必填 | 说明 |
|
||||||
|
|--------|------|------|------|
|
||||||
|
| jobTitle | String | 是 | 职位名称 |
|
||||||
|
| minSalary | Long | 否 | 最小薪资(元) |
|
||||||
|
| maxSalary | Long | 否 | 最大薪资(元) |
|
||||||
|
| education | String | 否 | 学历要求(对应字典education) |
|
||||||
|
| experience | String | 否 | 工作经验要求(对应字典experience) |
|
||||||
|
| vacancies | Long | 否 | 招聘人数 |
|
||||||
|
| jobLocation | String | 否 | 岗位区划 |
|
||||||
|
| jobAddress | String | 否 | 工作地点 |
|
||||||
|
| description | String | 否 | 岗位描述 |
|
||||||
|
| jobCategory | String | 否 | 岗位分类 |
|
||||||
|
| type | String | 否 | 类型(0常规岗位 1就业见习岗位 2实习实训岗位 3社区实践岗位 4零工) |
|
||||||
|
|
||||||
|
**请求示例:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jobFairId": "1",
|
||||||
|
"jobList": [
|
||||||
|
{
|
||||||
|
"jobTitle": "Java开发工程师",
|
||||||
|
"minSalary": 8000,
|
||||||
|
"maxSalary": 15000,
|
||||||
|
"education": "本科",
|
||||||
|
"experience": "1-3年",
|
||||||
|
"vacancies": 5,
|
||||||
|
"jobLocation": "石河子市",
|
||||||
|
"jobAddress": "石河子市北四路",
|
||||||
|
"description": "负责公司核心系统开发",
|
||||||
|
"type": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"jobTitle": "前端开发工程师",
|
||||||
|
"minSalary": 7000,
|
||||||
|
"maxSalary": 12000,
|
||||||
|
"education": "大专",
|
||||||
|
"experience": "1年以下",
|
||||||
|
"vacancies": 3,
|
||||||
|
"jobAddress": "石河子市北四路",
|
||||||
|
"description": "负责公司前端页面开发",
|
||||||
|
"type": "0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应参数:**
|
||||||
|
|
||||||
|
| 参数名 | 类型 | 说明 |
|
||||||
|
|--------|------|------|
|
||||||
|
| code | Number | 状态码,200 表示成功 |
|
||||||
|
| msg | String | 提示信息 |
|
||||||
|
| data | Number | 成功创建的岗位数量 |
|
||||||
|
|
||||||
|
**响应示例(成功):**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 200,
|
||||||
|
"msg": "报名成功",
|
||||||
|
"data": 2
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**错误响应示例:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 500,
|
||||||
|
"msg": "仅企业用户可报名招聘会"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 500,
|
||||||
|
"msg": "您的企业已报名该招聘会,请勿重复报名"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## cURL 测试示例
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST http://localhost:9091/app/fair/company/signUp \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-H "Authorization: Bearer {your_token}" \
|
||||||
|
-d '{
|
||||||
|
"jobFairId": "1",
|
||||||
|
"jobList": [
|
||||||
|
{
|
||||||
|
"jobTitle": "Java开发工程师",
|
||||||
|
"minSalary": 8000,
|
||||||
|
"maxSalary": 15000,
|
||||||
|
"education": "本科",
|
||||||
|
"experience": "1-3年",
|
||||||
|
"vacancies": 5,
|
||||||
|
"jobAddress": "石河子市北四路",
|
||||||
|
"description": "负责公司核心系统开发"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}'
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 业务逻辑说明
|
||||||
|
|
||||||
|
1. 校验当前用户是否为企业用户(is_company_user=0)
|
||||||
|
2. 通过用户的 idCard(企业信用代码)查询企业信息
|
||||||
|
3. 检查企业是否已报名该招聘会(查询 public_job_fair_company 表)
|
||||||
|
4. 创建企业-招聘会关联记录(public_job_fair_company 表)
|
||||||
|
5. 批量插入岗位信息(job 表)
|
||||||
|
6. 创建岗位-招聘会关联记录(public_job_fair_job 表)
|
||||||
|
|
||||||
|
## 数据表关系
|
||||||
|
|
||||||
|
```
|
||||||
|
public_job_fair (招聘会主表)
|
||||||
|
│
|
||||||
|
├── public_job_fair_company (企业关联表)
|
||||||
|
│ └── company_id → company 表
|
||||||
|
│
|
||||||
|
└── public_job_fair_job (岗位关联表)
|
||||||
|
├── job_id → job 表
|
||||||
|
└── company_id → company 表
|
||||||
|
```
|
||||||
156
docs/app-company-login-register-api.md
Normal file
156
docs/app-company-login-register-api.md
Normal file
@@ -0,0 +1,156 @@
|
|||||||
|
# 企业用户登录注册二合一接口文档
|
||||||
|
|
||||||
|
## 接口说明
|
||||||
|
|
||||||
|
**接口地址:** `POST /app/company/loginOrRegister`
|
||||||
|
|
||||||
|
**接口说明:**
|
||||||
|
- 根据手机号查询企业用户,存在则登录,不存在则注册
|
||||||
|
- 登录时只需传手机号和密码
|
||||||
|
- 注册时需额外传企业信用代码和企业名称
|
||||||
|
- 注册时会根据企业信用代码判断企业是否已注册
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 请求参数(Body JSON)
|
||||||
|
|
||||||
|
| 参数名 | 类型 | 必填 | 说明 |
|
||||||
|
|--------|------|------|------|
|
||||||
|
| username | String | 是 | 手机号码 |
|
||||||
|
| password | String | 是 | 登录密码 |
|
||||||
|
| companyCode | String | 注册时必填 | 企业信用代码(统一社会信用代码) |
|
||||||
|
| companyName | String | 注册时必填 | 企业名称 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 登录场景
|
||||||
|
|
||||||
|
**请求示例:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"username": "13800138000",
|
||||||
|
"password": "123456"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应示例(登录成功):**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 200,
|
||||||
|
"msg": "操作成功",
|
||||||
|
"token": "eyJhbGciOiJIUzUxMiJ9...",
|
||||||
|
"isNewUser": false,
|
||||||
|
"companyCode": "91110000MA00ABCD1X",
|
||||||
|
"companyName": "北京某某科技有限公司"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**错误响应:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 500,
|
||||||
|
"msg": "密码错误,请重新输入!"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 注册场景
|
||||||
|
|
||||||
|
**请求示例:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"username": "13800138000",
|
||||||
|
"password": "123456",
|
||||||
|
"companyCode": "91110000MA00ABCD1X",
|
||||||
|
"companyName": "北京某某科技有限公司"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应示例(注册成功):**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 200,
|
||||||
|
"msg": "注册成功!",
|
||||||
|
"token": "eyJhbGciOiJIUzUxMiJ9...",
|
||||||
|
"isNewUser": true,
|
||||||
|
"companyCode": "91110000MA00ABCD1X",
|
||||||
|
"companyName": "北京某某科技有限公司"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**错误响应(企业已注册):**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 500,
|
||||||
|
"msg": "该企业已注册,请联系企业管理员加入组织!"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**错误响应(缺少企业信息):**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 500,
|
||||||
|
"msg": "企业信用代码不能为空!"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 响应参数
|
||||||
|
|
||||||
|
| 参数名 | 类型 | 说明 |
|
||||||
|
|--------|------|------|
|
||||||
|
| code | Number | 状态码,200 表示成功 |
|
||||||
|
| msg | String | 提示信息 |
|
||||||
|
| token | String | 登录令牌 |
|
||||||
|
| isNewUser | Boolean | 是否新用户(true=注册,false=登录) |
|
||||||
|
| companyCode | String | 企业信用代码 |
|
||||||
|
| companyName | String | 企业名称 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## cURL 测试示例
|
||||||
|
|
||||||
|
**登录(已注册用户):**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST http://localhost:8080/app/company/loginOrRegister \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"username":"13800138000","password":"123456"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
**注册(新用户):**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST http://localhost:8080/app/company/loginOrRegister \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"username":"13800138000","password":"123456","companyCode":"91110000MA00ABCD1X","companyName":"北京某某科技有限公司"}'
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 业务逻辑流程
|
||||||
|
|
||||||
|
```
|
||||||
|
1. 根据手机号 + is_company_user=0 查询 app_user
|
||||||
|
│
|
||||||
|
├── 用户存在 → 校验密码 → 登录成功(isNewUser=false)
|
||||||
|
│
|
||||||
|
└── 用户不存在 → 检查是否传了 companyCode/companyName
|
||||||
|
│
|
||||||
|
├── 未传 → 返回错误"企业信用代码不能为空!"
|
||||||
|
│
|
||||||
|
└── 已传 → 根据 companyCode 查询 company 表
|
||||||
|
│
|
||||||
|
├── 企业已存在 → 返回错误"该企业已注册,请联系企业管理员加入组织!"
|
||||||
|
│
|
||||||
|
└── 企业不存在 → 创建 company + app_user → 注册成功(isNewUser=true)
|
||||||
|
```
|
||||||
@@ -2,6 +2,7 @@ package com.ruoyi.cms.controller.app;
|
|||||||
|
|
||||||
|
|
||||||
import com.ruoyi.cms.domain.JobFair;
|
import com.ruoyi.cms.domain.JobFair;
|
||||||
|
import com.ruoyi.cms.domain.vo.CompanyJobFairSignUpVO;
|
||||||
import com.ruoyi.cms.service.IFairCollectionService;
|
import com.ruoyi.cms.service.IFairCollectionService;
|
||||||
import com.ruoyi.cms.service.IJobFairService;
|
import com.ruoyi.cms.service.IJobFairService;
|
||||||
import com.ruoyi.cms.service.rc.IJobFairSignUpService;
|
import com.ruoyi.cms.service.rc.IJobFairSignUpService;
|
||||||
@@ -123,4 +124,15 @@ public class AppFairController extends BaseController
|
|||||||
List<JobFair> results = jobFairService.getCurrentMonthFairs(jobFair);
|
List<JobFair> results = jobFairService.getCurrentMonthFairs(jobFair);
|
||||||
return getDataTable(results);
|
return getDataTable(results);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 企业报名招聘会并填写岗位
|
||||||
|
*/
|
||||||
|
@BussinessLog(title = "企业报名招聘会")
|
||||||
|
@ApiOperation("企业报名招聘会并填写岗位")
|
||||||
|
@PostMapping("/company/signUp")
|
||||||
|
public AjaxResult companySignUp(@RequestBody CompanyJobFairSignUpVO signUpVO)
|
||||||
|
{
|
||||||
|
return jobFairSignUpService.companySignUp(signUpVO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,25 @@
|
|||||||
|
package com.ruoyi.cms.domain.vo;
|
||||||
|
|
||||||
|
import com.ruoyi.cms.domain.Job;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 企业报名招聘会请求VO
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@ApiModel("企业报名招聘会请求")
|
||||||
|
public class CompanyJobFairSignUpVO implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "招聘会ID", required = true)
|
||||||
|
private String jobFairId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "岗位列表", required = true)
|
||||||
|
private List<Job> jobList;
|
||||||
|
}
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
package com.ruoyi.cms.service.rc;
|
package com.ruoyi.cms.service.rc;
|
||||||
|
|
||||||
|
import com.ruoyi.cms.domain.vo.CompanyJobFairSignUpVO;
|
||||||
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 招聘会报名Service接口
|
* 招聘会报名Service接口
|
||||||
*/
|
*/
|
||||||
@@ -14,4 +17,9 @@ public interface IJobFairSignUpService {
|
|||||||
* 取消报名
|
* 取消报名
|
||||||
*/
|
*/
|
||||||
int cancelSignUp(Long jobFairId);
|
int cancelSignUp(Long jobFairId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 企业报名招聘会并填写岗位
|
||||||
|
*/
|
||||||
|
AjaxResult companySignUp(CompanyJobFairSignUpVO signUpVO);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,15 +1,32 @@
|
|||||||
package com.ruoyi.cms.service.rc.impl;
|
package com.ruoyi.cms.service.rc.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.IdUtil;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.ruoyi.cms.domain.Job;
|
||||||
import com.ruoyi.cms.domain.rc.JobFairSignUp;
|
import com.ruoyi.cms.domain.rc.JobFairSignUp;
|
||||||
|
import com.ruoyi.cms.domain.rc.PublicJobFairCompany;
|
||||||
|
import com.ruoyi.cms.domain.rc.PublicJobFairJob;
|
||||||
|
import com.ruoyi.cms.domain.vo.CompanyJobFairSignUpVO;
|
||||||
|
import com.ruoyi.cms.mapper.JobMapper;
|
||||||
import com.ruoyi.cms.mapper.rc.JobFairSignUpMapper;
|
import com.ruoyi.cms.mapper.rc.JobFairSignUpMapper;
|
||||||
|
import com.ruoyi.cms.mapper.rc.PublicJobFairMapper;
|
||||||
|
import com.ruoyi.cms.service.ICompanyService;
|
||||||
import com.ruoyi.cms.service.rc.IJobFairSignUpService;
|
import com.ruoyi.cms.service.rc.IJobFairSignUpService;
|
||||||
|
import com.ruoyi.cms.util.RoleUtils;
|
||||||
|
import com.ruoyi.cms.util.StringUtil;
|
||||||
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
|
import com.ruoyi.common.core.domain.entity.AppUser;
|
||||||
|
import com.ruoyi.common.core.domain.entity.Company;
|
||||||
import com.ruoyi.common.exception.ServiceException;
|
import com.ruoyi.common.exception.ServiceException;
|
||||||
import com.ruoyi.common.utils.SiteSecurityUtils;
|
import com.ruoyi.common.utils.SiteSecurityUtils;
|
||||||
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 招聘会报名Service业务层处理
|
* 招聘会报名Service业务层处理
|
||||||
@@ -20,6 +37,15 @@ public class JobFairSignUpServiceImpl extends ServiceImpl<JobFairSignUpMapper, J
|
|||||||
@Autowired
|
@Autowired
|
||||||
private JobFairSignUpMapper jobFairSignUpMapper;
|
private JobFairSignUpMapper jobFairSignUpMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PublicJobFairMapper publicJobFairMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private JobMapper jobMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ICompanyService companyService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int signUp(Long jobFairId) {
|
public int signUp(Long jobFairId) {
|
||||||
Long userId = SiteSecurityUtils.getUserId();
|
Long userId = SiteSecurityUtils.getUserId();
|
||||||
@@ -60,4 +86,84 @@ public class JobFairSignUpServiceImpl extends ServiceImpl<JobFairSignUpMapper, J
|
|||||||
existSignUp.setStatus("1"); // 已取消
|
existSignUp.setStatus("1"); // 已取消
|
||||||
return jobFairSignUpMapper.updateById(existSignUp);
|
return jobFairSignUpMapper.updateById(existSignUp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public AjaxResult companySignUp(CompanyJobFairSignUpVO signUpVO) {
|
||||||
|
// 1. 校验参数
|
||||||
|
if (StringUtils.isBlank(signUpVO.getJobFairId())) {
|
||||||
|
return AjaxResult.error("招聘会ID不能为空");
|
||||||
|
}
|
||||||
|
if (signUpVO.getJobList() == null || signUpVO.getJobList().isEmpty()) {
|
||||||
|
return AjaxResult.error("请至少填写一个岗位");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. 校验是否企业用户
|
||||||
|
AppUser appUser = RoleUtils.getAppUser();
|
||||||
|
if (appUser == null) {
|
||||||
|
return AjaxResult.error("请先登录");
|
||||||
|
}
|
||||||
|
if (!StringUtil.IS_COMPANY_USER.equals(appUser.getIsCompanyUser())) {
|
||||||
|
return AjaxResult.error("仅企业用户可报名招聘会");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. 获取企业信息
|
||||||
|
String companyCode = appUser.getIdCard();
|
||||||
|
if (StringUtils.isBlank(companyCode)) {
|
||||||
|
return AjaxResult.error("企业信息不完整,请先完善企业信息");
|
||||||
|
}
|
||||||
|
Company company = companyService.queryCodeCompany(companyCode);
|
||||||
|
if (company == null) {
|
||||||
|
return AjaxResult.error("未找到企业信息");
|
||||||
|
}
|
||||||
|
|
||||||
|
String jobFairId = signUpVO.getJobFairId();
|
||||||
|
Long companyId = company.getCompanyId();
|
||||||
|
|
||||||
|
// 4. 检查企业是否已报名该招聘会
|
||||||
|
List<com.ruoyi.cms.domain.rc.PublicJobFairCompanyVO> existCompanies = publicJobFairMapper.selectCompanyListByJobFairId(jobFairId);
|
||||||
|
boolean alreadySignUp = existCompanies.stream().anyMatch(c -> companyId.equals(c.getCompanyId()));
|
||||||
|
if (alreadySignUp) {
|
||||||
|
return AjaxResult.error("您的企业已报名该招聘会,请勿重复报名");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 5. 创建企业-招聘会关联 (public_job_fair_company)
|
||||||
|
PublicJobFairCompany fairCompany = new PublicJobFairCompany();
|
||||||
|
fairCompany.setId(IdUtil.simpleUUID());
|
||||||
|
fairCompany.setJobFairId(jobFairId);
|
||||||
|
fairCompany.setCompanyId(companyId);
|
||||||
|
fairCompany.setCreateTime(new Date());
|
||||||
|
publicJobFairMapper.insertJobFairCompany(fairCompany);
|
||||||
|
|
||||||
|
// 6. 批量插入岗位到job表,并创建岗位-招聘会关联
|
||||||
|
List<Job> jobList = signUpVO.getJobList();
|
||||||
|
List<PublicJobFairJob> fairJobList = new ArrayList<>();
|
||||||
|
|
||||||
|
for (Job job : jobList) {
|
||||||
|
// 插入岗位
|
||||||
|
job.setJobId(null);
|
||||||
|
job.setCompanyId(companyId);
|
||||||
|
job.setCompanyName(company.getName());
|
||||||
|
job.setIsPublish(1);
|
||||||
|
job.setView(0L);
|
||||||
|
job.setApplyNum(0);
|
||||||
|
jobMapper.insert(job);
|
||||||
|
|
||||||
|
// 创建岗位-招聘会关联
|
||||||
|
PublicJobFairJob fairJob = new PublicJobFairJob();
|
||||||
|
fairJob.setId(IdUtil.simpleUUID());
|
||||||
|
fairJob.setJobFairId(jobFairId);
|
||||||
|
fairJob.setJobId(job.getJobId());
|
||||||
|
fairJob.setCompanyId(companyId);
|
||||||
|
fairJob.setCreateTime(new Date());
|
||||||
|
fairJobList.add(fairJob);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 批量插入岗位-招聘会关联
|
||||||
|
if (!fairJobList.isEmpty()) {
|
||||||
|
publicJobFairMapper.insertJobFairJobBatch(fairJobList);
|
||||||
|
}
|
||||||
|
|
||||||
|
return AjaxResult.success("报名成功", jobList.size());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.ruoyi.cms.util;
|
package com.ruoyi.cms.util;
|
||||||
|
|
||||||
import com.ruoyi.common.core.domain.entity.AppUser;
|
import com.ruoyi.common.core.domain.entity.AppUser;
|
||||||
|
import com.ruoyi.common.core.domain.entity.Company;
|
||||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||||
import com.ruoyi.common.core.domain.model.LoginSiteUser;
|
import com.ruoyi.common.core.domain.model.LoginSiteUser;
|
||||||
import com.ruoyi.common.core.domain.model.LoginUser;
|
import com.ruoyi.common.core.domain.model.LoginUser;
|
||||||
@@ -74,4 +75,37 @@ public class RoleUtils {
|
|||||||
}
|
}
|
||||||
return appUser.getIsCompanyUser();
|
return appUser.getIsCompanyUser();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前登录的App用户
|
||||||
|
* @return AppUser
|
||||||
|
*/
|
||||||
|
public static AppUser getAppUser() {
|
||||||
|
if (!SiteSecurityUtils.isLogin()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
LoginSiteUser loginSiteUser = SiteSecurityUtils.getLoginUser();
|
||||||
|
return loginSiteUser.getUser();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 判断当前用户是否是企业用户
|
||||||
|
* @return true=企业用户
|
||||||
|
*/
|
||||||
|
public static boolean isCompanyUser() {
|
||||||
|
AppUser appUser = getAppUser();
|
||||||
|
return appUser != null && StringUtil.IS_COMPANY_USER.equals(appUser.getIsCompanyUser());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前企业用户的企业信用代码
|
||||||
|
* @return 企业信用代码,非企业用户返回null
|
||||||
|
*/
|
||||||
|
public static String getCompanyCode() {
|
||||||
|
AppUser appUser = getAppUser();
|
||||||
|
if (appUser != null && StringUtil.IS_COMPANY_USER.equals(appUser.getIsCompanyUser())) {
|
||||||
|
return appUser.getIdCard();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user