/** * Copyright © 2012-2016 JeeSite All rights reserved. */ package com.wechat.dao; import com.wechat.global.base.dao.Pagination; import com.wechat.global.base.dao.PagingResult; import com.wechat.global.base.dao.impl.BaseDao; import com.wechat.model.dbEntity.MdeJobAdvertised; import com.wechat.model.dbEntity.MdeJobAdvertisedEntity; import com.wechat.model.dbEntity.MdeJobInvitationRel; import com.wechat.model.dto.AvailableAndUsedCountDto; import com.wechat.model.dto.JobAdvertisedListDto; import com.wechat.model.dto.JobRepFormPvDto; import com.wechat.model.dto.ShowOfJobsDto; import com.wechat.model.responseDto.JobAdvertisedNologinResp; import com.wechat.model.responseDto.JobAdvertisedRes; import com.wechat.model.responseDto.JobAdvertisedResp; import org.springframework.stereotype.Repository; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 单表生成DAO接口 * * @author tangwc * @version 2018-05-23 */ @Repository public class MdeJobAdvertisedDao extends BaseDao { public MdeJobAdvertised getInfoById(int id, String lang) { Map map = new HashMap(); map.put("id", id); map.put("lang", lang); return super.selectOne("MdeJobAdvertisedMapper.get", map); } public MdeJobAdvertisedEntity getJobAdvertisedById(int id) { Map map = new HashMap(); map.put("id", id); return super.selectOne("MdeJobAdvertisedMapper.getInfoById", map); } /** * 根据id查询全部相关职位的详情 * * @param id * @param lang * @return */ public List getInfoByIds(List idList) { Map map = new HashMap(); map.put("idList", idList); return super.select("MdeJobAdvertisedMapper.getInfoByIds", map); } /** * 获取推荐职位 * * @param limi * @return */ public List getRecommentJobs(int limitSize) { return super.select("MdeJobAdvertisedMapper.getRecommentJobs", limitSize); } /** * 获取推荐职位-分页查询 * * @param limi * @return */ public PagingResult getPagingRecommentJobs(Pagination page) { return super.selectPagination("MdeJobAdvertisedMapper.getPagingRecommentJobs", "MdeJobAdvertisedMapper.getPagingRecommentJobsCount", page); } /** * 优选职位 * * @param userCode * @param recommentJobsLimitSize * @return */ /* public List getRecommentJobs(String userCode, int recommentJobsLimitSize) { Map map = new HashMap(); map.put("userCode", userCode); map.put("limitSize", recommentJobsLimitSize); return super.select("MdeJobAdvertisedMapper.getRecommentJobsByUserCode", map); }*/ /** * 优选职位 * * @param userCode * @param lang * @param limitSize * @return */ /*public List getSuperiorJobs(String userCode, String lang, int limitSize) { Map map = new HashMap(); map.put("userCode", userCode); map.put("lang", lang); map.put("limitSize", limitSize); return super.select("MdeJobAdvertisedMapper.getSuperiorJobs", map); }*/ /** * 职位搜索 * * @param page * @return */ public PagingResult searchJob(Pagination page) { return super.selectPagination("MdeJobAdvertisedMapper.searchJob", "MdeJobAdvertisedMapper.searchJobCount", page); } /** * 职位搜索 * * @param page * @return */ public PagingResult searchPositionByKeyWord(Pagination page) { return super.selectPagination("MdeJobAdvertisedMapper.searchPositionByKeyWord", "MdeJobAdvertisedMapper.searchPositionByKeyWordCount", page); } /** * 职位搜索 (未登录) * * @param page * @return */ public List searchJobNotLogin(Map param) { return sqlSession.selectList("MdeJobAdvertisedMapper.searchJobNotLogin", param); } /** * 获取相似职位 * * @param jobId * @return */ public List getSimilarJobs(int jobId, int limitSize) { Map map = new HashMap(); map.put("jobId", jobId); map.put("limitSize", limitSize); return super.select("MdeJobAdvertisedMapper.getSimilarJobs", map); } /** * 酒店的其他职位 * * @param jobId * @return */ public List gethotelOtherPositionList(int jobId, String publisher, int limitSize) { Map map = new HashMap(); map.put("jobId", jobId); map.put("publisher", publisher); map.put("limitSize", limitSize); return super.select("MdeJobAdvertisedMapper.gethotelOtherPositionList", map); } public int insert(MdeJobAdvertised mdeJobAdvertised) { return super.insert("MdeJobAdvertisedMapper.insert", mdeJobAdvertised); } /** * 获取 企业正在招聘的职位 * * @param publisher * @return */ public List getByPublisher(String publisher) { return super.select("MdeJobAdvertisedMapper.getAdvertisedRecruitment", publisher); } /** * 获取已经投递过职位的用户code * * @param publisher * @return */ public List getAlreadyAdvertisedByJobId(String publisher) { return super.select("MdeJobAdvertisedMapper.getAlreadyAdvertisedByJobId", publisher); } /** * 查看该企业是否发布某个职位 * * @return */ public MdeJobAdvertised findByPublisherAndJobId(MdeJobInvitationRel mdeJobInvitationRel) { return super.selectOne("MdeJobAdvertisedMapper.findByPublisherAndJobId", mdeJobInvitationRel); } public int updateJobAdvertisedStatus(Map maps) { return sqlSession.update("MdeJobAdvertisedMapper.updateJobAdvertisedStatus", maps); } public List getAdvertisedRecruitment(String userCode) { return super.select("MdeJobAdvertisedMapper.getAdvertisedRecruitment", userCode); } /** * 更新职位首推状态 */ public int updateJobRecommend(Map maps) { return sqlSession.update("MdeJobAdvertisedMapper.updateJobRecommend", maps); } /** * 更新招聘职位信息表 * * @param mdeJobAdvertised * @return */ public int update(MdeJobAdvertised mdeJobAdvertised) { return super.update("MdeJobAdvertisedMapper.update", mdeJobAdvertised); } public List getCollectionJobList(String[] jobListStr, String lang) { Map map = new HashMap(); map.put("jobListStr", jobListStr); map.put("lang", lang); return super.select("MdeJobAdvertisedMapper.getCollectionJobList", map); } /** * 查询投递该公司的总简历数 * * @param userCode 企业code * @return */ public int getAllUserCvCount(String userCode) { return super.count("MdeJobAdvertisedMapper.getAllUserCvCount", userCode); } /** * 获取邀请面试简历数量 * * @param userCode 企业code * @return */ public int inviteAuditionCount(String userCode) { return super.count("MdeJobAdvertisedMapper.inviteAuditionCount", userCode); } /** * 获取指定企业新简历数量 * * @param userCode 企业code * @return */ public int getNewCvCountByPublisher(String userCode) { return super.count("MdeJobAdvertisedMapper.getNewCvCountByPublisher", userCode); } /** * 录用简历数量 * * @param userCode 企业code * @return */ public int matriculateUserCvCount(String userCode) { return super.count("MdeJobAdvertisedMapper.matriculateUserCvCount", userCode); } /** * 淘汰简历数量 * * @param userCode 企业code * @return */ public int eliminateUserCvCount(String userCode) { return super.count("MdeJobAdvertisedMapper.eliminateUserCvCount", userCode); } /** * 已发布信息 * * @param userCode * @return */ public PagingResult alreadyPublish(Pagination page) { return super.selectPagination("MdeJobAdvertisedMapper.alreadyPublish", "MdeJobAdvertisedMapper.alreadyPublishCount", page); } /** * @param page * @return PagingResult * @description 已发职位关键词检索 * @author rayson * @date 2023-09-12 14:52 **/ public PagingResult searchAlreadyPublishByKeyWord(Pagination page) { return super.selectPagination("MdeJobAdvertisedMapper.searchAlreadyPublishByKeyWord", "MdeJobAdvertisedMapper.searchAlreadyPublishByKeyWordCount", page); } /** * 已发布职位个数 * * @param userCode * @return */ public int alreadyPublishNotVipCount(String userCode, String jobStatus) { Map pageParam = new HashMap(); pageParam.put("userCode", userCode); pageParam.put("jobStatus", jobStatus); return super.count("MdeJobAdvertisedMapper.alreadyPublishNotVipCount", pageParam); } /** * 优选职位 大于50(未登录) * * @return */ public List getNotLoginRecommentJobsRandJoin(Integer limitSize) { return super.select("MdeJobAdvertisedMapper.getNotLoginRecommentJobsRandJoin", limitSize); } /** * 优选职位 小于50(未登录) * * @return */ public List getNotLoginRecommentJobsRand(Integer limitSize) { return super.select("MdeJobAdvertisedMapper.getNotLoginRecommentJobsRand", limitSize); } /** * 优选职位的数量 * * @return */ public int getNotLoginRecommentJobsCount() { return sqlSession.selectOne("MdeJobAdvertisedMapper.getNotLoginRecommentJobsCount"); } /** * 批量更新发布日期(招聘中的职位) * * @param publisher * @return */ public int batchUpdatePublishDate(String publisher) { return sqlSession.update("MdeJobAdvertisedMapper.batchUpdatePublishDate", publisher); } /** * 更新发布日期(招聘中的职位) * * @param jobId * @return */ public int updatePublishDate(String userCode,Integer jobId) { Map map = new HashMap(); map.put("userCode", userCode); map.put("jobId", jobId); return sqlSession.update("MdeJobAdvertisedMapper.updatePublishDate", map); } /** * 获取已发布的职位-非登录状态 * * @param userCode * @param lang * @return */ public List getPublishingJobsByUserCodeNologin(String userCode, String lang) { Map map = new HashMap(); map.put("userCode", userCode); map.put("lang", lang); return super.select("MdeJobAdvertisedMapper.getPublishingJobsByUserCode", map); } /** * 获取已发布的职位 * * @param userCode * @param lang * @return */ public List getPublishingJobsByUserCode(String userCode, String lang) { Map map = new HashMap(); map.put("userCode", userCode); map.put("lang", lang); return super.select("MdeJobAdvertisedMapper.getPublishingJobsByUserCode", map); } /** * 获取已发布的职位 * * @param userCode * @param lang * @return */ public List getPublishingJobsNologin(String userCode) { Map map = new HashMap(); map.put("userCode", userCode); return super.select("MdeJobAdvertisedMapper.getPublishingJobsNologin", map); } /** * 获取酒店可首推和已首推个数 * * @param userCode * @return */ public AvailableAndUsedCountDto getAvailableAndUsedCount(String userCode) { Map map = new HashMap(); map.put("userCode", userCode); return super.selectOne("MdeJobAdvertisedMapper.getAvailableAndUsedCount", map); } /** * 点击量查询 * * @param statisticType 统计类型 按月,季度,年 统计 * @return */ public List findRepFormPvByDate(Map map) { return super.select("MdeJobAdvertisedMapper.findRepFormPvByDate", map); } /** * 点击量 * * @param statisticType 统计类型 按月,季度,年 统计 * @return */ public Integer findGeneralPvByDate(Map map) { return super.selectOne("MdeJobAdvertisedMapper.findGeneralPvByDate", map); } }