提交 6e7cc07f authored 作者: wangmenglong's avatar wangmenglong

提交就业代码

上级 4b595abf
package data.system;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import data.parent.IdentityObj;
import lombok.Data;
/**
* @author wangmenglong
* @description: 文章
* @date 2025/05/20 14:50
*/
@Data
@TableName(value = "tb_article")
public class Article extends IdentityObj {
/**
* 标题
**/
@TableField("title")
private String title;
/**
* 内容
**/
@TableField("content")
private String content;
/**
* 来源
**/
@TableField("source")
private String source;
/**
* 大图
**/
@TableField("icon")
private String icon;
/**
* 政策宣传 policy
* 人设动态 society
* 通知公告 notice
**/
@TableField("type")
private String type;
/**
* 是否发布
**/
@TableField("`release`")
private Boolean release;
/**
* 简介
**/
@TableField("`synopsis`")
private String synopsis;
/**
* 具体字段查看数据库备注
**/
@TableField("case_type")
private String caseType;
}
......@@ -15,7 +15,7 @@ import lombok.Data;
public class Org extends NameObj {
/**
* logo
* 图标
**/
@TableField("logo")
private String logo;
......@@ -56,4 +56,28 @@ public class Org extends NameObj {
@TableField("region")
private String region;
/**
* 登录openid
**/
@TableField("open_id")
private String openId;
/**
* 营业执照
**/
@TableField("business_license")
private String businessLicense;
/**
* 0否 1是 2审核失败
**/
@TableField("check_status")
private String checkStatus;
/**
* 统一社会信用代码
**/
@TableField("id_no")
private String idNo;
}
......@@ -20,7 +20,6 @@ public class Recruit extends NameObj {
@TableField("details")
private String details;
/**
* 招聘类型
**/
......@@ -33,7 +32,6 @@ public class Recruit extends NameObj {
@TableField("recruit_type")
private String recruitType;
/**
* 经验要求
**/
......@@ -210,6 +208,18 @@ public class Recruit extends NameObj {
@TableField("status")
private String status;
/**
* 是否审核通过 0否1是
**/
@TableField("check_status")
private String checkStatus;
/**
* 发布类型 admin管理 org企业 person个人
**/
@TableField("type")
private String type;
/**
* 省
**/
......
package com.jxjy.system.controller;
import base.controller.BaseController;
import base.result.BaseResult;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageInfo;
import com.jxjy.system.service.ArticleService;
import data.system.Article;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @author wangmenglong
* @description: 文章管理
* @date 2023/12/11 11:35
*/
@RestController
@RequestMapping("/article")
public class ArticleController extends BaseController {
@Resource
ArticleService articleService;
/**
* @description: 获取文章列表
* @author: wangmenglong
* @date; 2023/12/7 10:07
* @param: [req]
* @return: com.github.pagehelper.PageInfo
**/
@GetMapping("/l")
public BaseResult list(HttpServletRequest req,Article article){
PageInit(req);
List<Article> list = articleService.list(pageNum,pageSize,article);
PageInfo<Article> pageInfo = new PageInfo<Article>(list);
return BaseResult.success(pageInfo);
}
/**
* @description: 新增文章
* @author: wangmenglong
* @date; 2023/12/11 16:50
* @param: [org]
* @return: base.result.BaseResult
**/
@PostMapping("/c")
public BaseResult create(@RequestBody Article article){
return articleService.create(article)?BaseResult.success("normal_001"):BaseResult.error("error_001");
}
/**
* @description: 编辑文章
* @author: wangmenglong
* @date; 2023/12/7 11:05
* @param: [org]
* @return: base.result.BaseResult
**/
@PostMapping("/u")
public BaseResult update(@RequestBody Article article){
return articleService.update(article)?BaseResult.success("normal_002"):BaseResult.error("error_002");
}
/**
* @description: 修改状态 发布未发布
**/
@PostMapping("/ustate")
public BaseResult uState(@RequestBody JSONObject jsonObject){
String id = jsonObject.getString("id");
String state = jsonObject.getString("state");
return articleService.uState(id,state)?BaseResult.success("normal_002"):BaseResult.error("error_002");
}
/**
* @description: 删除文章
* @author: wangmenglong
* @date; 2023/12/7 11:08
* @param: [id]
* @return: base.result.BaseResult
**/
@PostMapping("/d")
public BaseResult del(@RequestBody JSONObject jsonObject){
String id = jsonObject.getString("id");
return articleService.del(id)?BaseResult.success("normal_002"):BaseResult.error("error_002");
}
/**
* @author: wangmenglong
* @date; 2024/3/24 17:18
* @description: 获取文章详情
* @param: [id]
* @return: base.result.BaseResult
**/
@GetMapping("/details")
public BaseResult details(@RequestParam("id")String id){
Article article = articleService.getDetails(id);
return BaseResult.success(article);
}
}
......@@ -53,7 +53,7 @@ public class OrgController extends BaseController {
@PostMapping("/c")
public BaseResult create(@RequestBody Org org){
//判断是否重复
if(orgService.isHave(org.getName(),org.getId())){
if(orgService.isHave(org.getOpenId(),org.getId())){
return BaseResult.error("error_004");
}
return orgService.create(org)?BaseResult.success("normal_001"):BaseResult.error("error_001");
......@@ -68,7 +68,7 @@ public class OrgController extends BaseController {
@PostMapping("/u")
public BaseResult update(@RequestBody Org org){
//判断是否重复
if(orgService.isHave(org.getName(),org.getId())){
if(orgService.isHave(org.getOpenId(),org.getId())){
return BaseResult.error("error_004");
}
return orgService.update(org)?BaseResult.success("normal_002"):BaseResult.error("error_002");
......
package com.jxjy.system.controller.api;
import base.controller.BaseController;
import base.result.BaseResult;
import com.github.pagehelper.PageInfo;
import com.jxjy.system.service.ArticleService;
import data.system.Article;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @author wangmenglong
* @description: 文章管理
* @date 2023/12/11 11:35
*/
@RestController
@RequestMapping("/public/article")
public class ApiArticleController extends BaseController {
@Resource
ArticleService articleService;
/**
* @description: 获取文章列表
* @author: wangmenglong
* @date; 2023/12/7 10:07
* @param: [req]
* @return: com.github.pagehelper.PageInfo
**/
@GetMapping("/l")
public BaseResult list(HttpServletRequest req,Article article){
PageInit(req);
List<Article> list = articleService.list(pageNum,pageSize,article);
PageInfo<Article> pageInfo = new PageInfo<Article>(list);
return BaseResult.success(pageInfo);
}
/**
* @author: wangmenglong
* @date; 2024/3/24 17:18
* @description: 获取文章详情
* @param: [id]
* @return: base.result.BaseResult
**/
@GetMapping("/details")
public BaseResult details(@RequestParam("id")String id){
Article article = articleService.getDetails(id);
return BaseResult.success(article);
}
}
......@@ -4,10 +4,7 @@ import base.controller.BaseController;
import base.result.BaseResult;
import com.jxjy.system.service.OrgService;
import data.system.Org;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
......@@ -36,4 +33,19 @@ public class ApiOrgController extends BaseController {
return BaseResult.success(org);
}
/**
* @description: 新增企业
* @author: wangmenglong
* @param: [org]
* @return: base.result.BaseResult
**/
@PostMapping("/c")
public BaseResult create(@RequestBody Org org){
//判断是否重复
if(orgService.isHave(org.getOpenId(),org.getId())){
return BaseResult.error("error_004");
}
return orgService.create(org)?BaseResult.success("normal_001"):BaseResult.error("error_001");
}
}
package com.jxjy.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import data.system.Article;
/**
* 文章
* @Author: wml
* @Date 2025/5/9 10:21
*/
public interface ArticleMapper extends BaseMapper<Article> {
}
package com.jxjy.system.service;
import data.system.Article;
import java.util.List;
/**
*
* @return: 文章
* @Author: wml
* @Date 2025/5/9 10:20
*/
public interface ArticleService {
List<Article> list(int pageNum, int pageSize, Article article);
boolean create(Article article);
boolean update(Article article);
boolean uState(String id, String state);
boolean del(String id);
Article getDetails(String id);
}
package com.jxjy.system.service;
import data.system.Org;
import data.system.Person;
import java.util.List;
......@@ -23,6 +24,8 @@ public interface OrgService {
Org getDetails(String id);
boolean isHave(String name, String id);
boolean isHave(String openId, String id);
Org getDetailsByLoginOpenId(String openId);
}
package com.jxjy.system.service.auth;
import com.jxjy.system.bean.auth.SelfUserEntity;
import com.jxjy.system.service.OrgService;
import com.jxjy.system.service.PersonService;
import com.jxjy.system.service.UserService;
import data.system.Org;
import data.system.Person;
import data.user.User;
import lombok.extern.slf4j.Slf4j;
......@@ -28,6 +30,9 @@ public class SelfUserDetailsService implements UserDetailsService {
@Autowired
private PersonService personService;
@Autowired
private OrgService orgService;
/**
* 查询用户信息
* @param username
......@@ -39,21 +44,45 @@ public class SelfUserDetailsService implements UserDetailsService {
public SelfUserEntity loadUserByUsername(String username) throws UsernameNotFoundException {
HttpServletRequest req = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String wxType = req.getParameter("wxType");
String loginType = req.getParameter("type");
SelfUserEntity sysUserEntity = new SelfUserEntity();
if(StringUtils.isNotBlank(wxType)&&wxType.equals("wx")){
Person user = personService.getDetailsByLoginOpenId(username);
if (user == null) {
throw new UsernameNotFoundException("账号不存在");
switch (loginType){
case "person":
Person user = personService.getDetailsByLoginOpenId(username);
if (user == null) {
throw new UsernameNotFoundException("账号不存在");
}
sysUserEntity.setUsername(user.getOpenId());
sysUserEntity.setPassword("");
sysUserEntity.setUserId(user.getId());
sysUserEntity.setBaseCode(user.getBaseCode()== null ? "" : user.getBaseCode());
sysUserEntity.setName(user.getName());
sysUserEntity.setOpenId(user.getOpenId());
sysUserEntity.setType("person");
break;
case "org":
Org org = orgService.getDetailsByLoginOpenId(username);
if (org == null) {
throw new UsernameNotFoundException("账号不存在");
}
sysUserEntity.setUsername(org.getOpenId());
sysUserEntity.setPassword("");
sysUserEntity.setUserId(org.getId());
sysUserEntity.setBaseCode(org.getBaseCode()== null ? "" : org.getBaseCode());
sysUserEntity.setName(org.getName());
sysUserEntity.setOpenId(org.getOpenId());
sysUserEntity.setType("org");
break;
default:
break;
}
sysUserEntity.setUsername(user.getOpenId());
sysUserEntity.setPassword("");
sysUserEntity.setUserId(user.getId());
sysUserEntity.setBaseCode(user.getBaseCode()== null ? "" : user.getBaseCode());
sysUserEntity.setName(user.getName());
sysUserEntity.setOpenId(user.getOpenId());
}else {
User user = userService.getDetailsByLoginAccount(username);
......@@ -72,7 +101,7 @@ public class SelfUserDetailsService implements UserDetailsService {
sysUserEntity.setUserId(user.getId());
sysUserEntity.setBaseCode(user.getBaseCode()== null ? "" : user.getBaseCode());
sysUserEntity.setName(user.getName());
sysUserEntity.setType(user.getType());
sysUserEntity.setType("admin");
}
return sysUserEntity;
}
......
package com.jxjy.system.service.impl;
import cn.hutool.core.date.DateUtil;
import com.alibaba.cloud.commons.lang.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.jxjy.system.bean.auth.UserContext;
import com.jxjy.system.mapper.ArticleMapper;
import com.jxjy.system.service.ArticleService;
import com.jxjy.system.util.auth.UserUtils;
import com.jxjy.system.xsnowflake.SnowFlakeFactory;
import data.system.Article;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
*
* @return: 文章管理
* @Author: wml
* @Date 2025/5/9 10:22
*/
@Service
@Transactional
public class ArticleServiceImpl extends ServiceImpl<ArticleMapper, Article> implements ArticleService {
@Autowired
SnowFlakeFactory snowFlakeFactory;
/**
* @description: 获取文章列表
* @author: wangmenglong
* @date; 2023/12/11 16:46
* @param: [pageNum, pageSize]
* @return: java.util.List<data.article.Article>
**/
@Override
public List<Article> list(int pageNum, int pageSize, Article article) {
//启动分页工具
PageHelper.startPage(pageNum, pageSize);
//创建查询条件
LambdaQueryWrapper<Article> qw = new LambdaQueryWrapper<>();
qw.like(StringUtils.isNotBlank(article.getTitle()),Article::getTitle,article.getTitle())
.eq(StringUtils.isNotBlank(article.getType()), Article::getType,article.getType())
.eq(null!=article.getRelease(), Article::getRelease,article.getRelease())
.eq(null!=article.getCaseType(), Article::getCaseType,article.getCaseType())
.eq(Article::getDel,false)
.orderByDesc(Article::getCreateTime);
List<Article> articleList = super.list(qw);
//返回查询结果
return articleList;
}
/**
* @description: 新增文章
* @author: wangmenglong
* @date; 2023/12/11 16:51
* @param: [article]
* @return: boolean
**/
@Override
public boolean create(Article article) {
UserContext userContext = UserUtils.getUserContext();
String baseCode = userContext.getBaseCode();
article.setId(snowFlakeFactory.nextId());
article.setBaseCode(baseCode);
article.setUserId(userContext.getUserId());
article.setUserName(userContext.getUsername());
article.setDel(false);
article.setCreateTime(DateUtil.now());
article.setRelease(false);
return super.save(article);
}
/**
* @description: 编辑文章
* @author: wangmenglong
* @date; 2023/12/11 16:55
* @param: [org]
* @return: boolean
**/
@Override
public boolean update(Article article) {
article.setUpdateTime(DateUtil.now());
//判断是否传入id
if(StringUtils.isBlank(article.getId())){
return false;
}
return super.saveOrUpdate(article);
}
/**
* @description: 修改状态
* @author: wangmenglong
* @date; 2023/12/11 17:04
* @param: [id, state]
* @return: boolean
**/
@Override
public boolean uState(String id, String state) {
if(StringUtils.isBlank(id)){
return false;
}
Article article = super.getById(id);
if(null!=article.getRelease()&&article.getRelease()){
article.setRelease(false);
}else {
article.setRelease(true);
}
article.setUpdateTime(DateUtil.now());
return super.saveOrUpdate(article);
}
/**
* @description: 删除文章
* @author: wangmenglong
* @date; 2023/12/11 17:06
* @param: [id]
* @return: boolean
**/
@Override
public boolean del(String id) {
if(StringUtils.isBlank(id)){
return false;
}
LambdaUpdateWrapper<Article> qw = new LambdaUpdateWrapper<>();
qw.eq(Article::getId,id)
.set(Article::getDel,true)
.set(Article::getDelTime, DateUtil.now());
return super.update(qw);
}
/**
* @author: wangmenglong
* @date; 2024/3/24 17:19
* @description: 获取文章详情
* @param: [id]
* @return: data.article.Article
**/
@Override
public Article getDetails(String id) {
return super.getById(id);
}
}
......@@ -12,6 +12,7 @@ import com.jxjy.system.service.OrgService;
import com.jxjy.system.util.auth.UserUtils;
import com.jxjy.system.xsnowflake.SnowFlakeFactory;
import data.system.Org;
import data.system.Person;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -47,6 +48,7 @@ public class OrgServiceImpl extends ServiceImpl<OrgMapper, Org> implements OrgSe
LambdaQueryWrapper<Org> qw = new LambdaQueryWrapper<>();
qw.like(StringUtils.isNotBlank(org.getName()),Org::getName,org.getName())
.eq(Org::getDel,false)
.eq(StringUtils.isNotBlank(org.getCheckStatus()),Org::getCheckStatus,org.getCheckStatus())
.eq(StringUtils.isNotBlank(org.getBaseCode()),Org::getBaseCode, org.getBaseCode())
.orderByDesc(Org::getCreateTime);
List<Org> orgList = super.list(qw);
......@@ -65,13 +67,20 @@ public class OrgServiceImpl extends ServiceImpl<OrgMapper, Org> implements OrgSe
@Override
public boolean create(Org org) {
UserContext userContext = UserUtils.getUserContext();
String baseCode = userContext.getBaseCode();
//UserContext userContext = UserUtils.getUserContext();
String baseCode = "jyjxjy";
org.setId(snowFlakeFactory.nextId());
org.setBaseCode(baseCode);
org.setDel(false);
org.setCreateTime(DateUtil.now());
org.setCheckStatus("0");
/*if(!userContext.getType().equals("admin")){
org.setCheckStatus("0");
}else if(userContext.getType().equals("admin")){
org.setCheckStatus("1");
}*/
return super.save(org);
}
......@@ -135,10 +144,10 @@ public class OrgServiceImpl extends ServiceImpl<OrgMapper, Org> implements OrgSe
* @return: boolean
**/
@Override
public boolean isHave(String name, String id) {
public boolean isHave(String openId, String id) {
LambdaQueryWrapper<Org> qw = new LambdaQueryWrapper<>();
qw.eq(Org::getDel,false)
.eq(Org::getName, name);
.eq(Org::getOpenId, openId);
//如果传了id就是编辑,编辑的时候要加个条件,不能把名字跟别人重复
if(StringUtils.isNotBlank(id)){
qw.ne(Org::getId,id);
......@@ -146,4 +155,22 @@ public class OrgServiceImpl extends ServiceImpl<OrgMapper, Org> implements OrgSe
return super.count(qw)>0;
}
/**
* @author: wangmenglong
* @date; 2025/5/9 10:22
* @description: 获取用户详情,登陆用
* @param: [id]
* @return: data.user.User
**/
@Override
public Org getDetailsByLoginOpenId(String openId) {
//创建查询条件
LambdaQueryWrapper<Org> qw = new LambdaQueryWrapper<>();
qw.eq(Org::getOpenId,openId)
.eq(Org::getDel,false);
return super.getOne(qw);
}
}
......@@ -137,6 +137,9 @@ public class RecruitServiceImpl extends ServiceImpl<RecruitMapper, Recruit> impl
**/
@Override
public List<Recruit> list(int pageNum, int pageSize, Recruit recruit) {
UserContext userContext = UserUtils.getUserContext();
//启动分页工具
PageHelper.startPage(pageNum, pageSize);
//创建查询条件
......@@ -148,13 +151,21 @@ public class RecruitServiceImpl extends ServiceImpl<RecruitMapper, Recruit> impl
.eq(StringUtils.isNotBlank(recruit.getProvince()),Recruit::getProvince,recruit.getProvince())
.eq(StringUtils.isNotBlank(recruit.getExperienceId()),Recruit::getExperienceId,recruit.getExperienceId())
.eq(StringUtils.isNotBlank(recruit.getStatus()),Recruit::getStatus,recruit.getStatus())
.eq(StringUtils.isNotBlank(recruit.getCheckStatus()),Recruit::getCheckStatus,recruit.getCheckStatus())
.eq(StringUtils.isNotBlank(recruit.getQualificationId()),Recruit::getQualificationId,recruit.getQualificationId())
.eq(Recruit::getDel,false)
.eq(StringUtils.isNotBlank(recruit.getBaseCode()),Recruit::getBaseCode, recruit.getBaseCode())
.ne(StringUtils.isNotBlank(recruit.getType()),Recruit::getType,recruit.getType())
.like(StringUtils.isNotBlank(recruit.getTowIndustryName()),Recruit::getTowIndustryName, recruit.getTowIndustryName())
.and(StringUtils.isNotBlank(recruit.getSelTitle()),
qw1 -> qw1.like(Recruit::getName,recruit.getSelTitle()).or().like(Recruit::getOrgName,recruit.getSelTitle()))
.orderByDesc(Recruit::getCreateTime);
//如果管理账号
if(!userContext.getType().equals("admin")){
qw.eq(Recruit::getUserId,userContext.getUserId());
}
List<Recruit> orgList = super.list(qw);
orgList.stream().forEach(returnRecruit -> {
......@@ -188,6 +199,13 @@ public class RecruitServiceImpl extends ServiceImpl<RecruitMapper, Recruit> impl
recruit.setUserId(userContext.getUserId());
recruit.setUserName(userContext.getUsername());
if(userContext.getType().equals("admin")){
recruit.setCheckStatus("1");
recruit.setType("admin");
}else if(!userContext.getType().equals("admin")){
recruit.setType(userContext.getType());
}
try {
Industry industry = industryService.getDetails(recruit.getIndustryId());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论