123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
- <mapper namespace="com.hz.employmentsite.mapper.cquery.JobUserServiceCQuery">
- <select id="getList" resultType="com.hz.employmentsite.vo.jobUserManager.JobUserServiceVo">
- SELECT
- service.*,
- jobUserTemp.`Name` AS jobUserName,
- sysUser.`Name` AS serviceUserName
- FROM
- (
- SELECT
- ServiceID,
- JobUserID,
- ServiceContent,
- ServiceTime,
- ServiceUserID,
- 1 AS serviceType
- FROM
- pc_jobuser_service UNION
- SELECT
- '' AS ServiceID,
- JobUserID,
- '登记求职者个人求职信息' AS ServiceContent,
- CreateTime AS ServiceTime,
- CreateUserID AS ServiceUserID,
- 2 AS serviceType
- FROM
- pc_jobuser UNION
- (
- SELECT
- '' AS ServiceID,
- jobUser.JobUserID,
- CONCAT(
- IF
- ( mgt.EntryState = 1, '已入职推荐的', '未入职推荐的' ),
- company.CompanyName,
- '的',
- prof.ProfessionName,
- '岗位',
- IF
- ( mgt.remark IS NOT NULL AND mgt.remark != '', CONCAT( '(', mgt.remark, ')' ), '' )
- ) AS ServiceContent,
- mgt.ModifyTime AS ServiceTime,
- mgt.ModifyUserID AS ServiceUserID,
- 2 AS ServiceType
- FROM
- pc_recommend_mgt mgt
- LEFT JOIN pc_post post ON mgt.PostID = post.PostID
- LEFT JOIN pc_profession prof ON post.ProfessionID = prof.ProfessionID
- LEFT JOIN pc_company company ON post.CompanyID = company.CompanyID
- LEFT JOIN pc_jobhunt jobHunt ON mgt.JobHuntID = jobHunt.JobHuntID
- LEFT JOIN pc_jobuser jobUser ON jobHunt.JobUserID = jobUser.JobuserID
- WHERE
- mgt.ModifyTime IS NOT NULL
- ) UNION
- (
- SELECT
- '' AS ServiceID,
- jobUser.JobUserID,
- CONCAT( '已推荐', company.CompanyName, '的', prof.ProfessionName, '岗位' ) AS ServiceContent,
- mgt.CreateTime AS ServiceTime,
- mgt.CreateUserID AS ServiceUserID,
- 2 AS ServiceType
- FROM
- pc_recommend_mgt mgt
- LEFT JOIN pc_post post ON mgt.PostID = post.PostID
- LEFT JOIN pc_profession prof ON post.ProfessionID = prof.ProfessionID
- LEFT JOIN pc_company company ON post.CompanyID = company.CompanyID
- LEFT JOIN pc_jobhunt jobHunt ON mgt.JobHuntID = jobHunt.JobHuntID
- LEFT JOIN pc_jobuser jobUser ON jobHunt.JobUserID = jobUser.JobuserID
- )
- ) AS service
- LEFT JOIN pc_jobuser jobUserTemp ON service.JobUserID = jobUserTemp.JobuserID
- LEFT JOIN sys_user sysUser ON service.ServiceUserID = sysUser.UserID
- WHERE
- 1=1
- <if test="jobUserID != '' and jobUserID != null">
- and service.JobUserID = #{jobUserID}
- </if>
- <if test="serviceID != '' and serviceID != null">
- and service.ServiceID = #{serviceID}
- </if>
- ORDER BY
- service.ServiceTime DESC
- </select>
- <select id="jobUserMapGetService" resultType="com.hz.employmentsite.vo.jobUserManager.JobUserServiceVo">
- SELECT
- JobUserID,
- ServiceTime
- FROM
- (
- SELECT
- JobUserID,
- ServiceTime,
- ROW_NUMBER() OVER ( PARTITION BY JobUserID ORDER BY ServiceTime DESC ) AS rn
- FROM
- (
- SELECT
- JobUserID,
- ServiceTime
- FROM
- pc_jobuser_service UNION
- SELECT
- JobUserID,
- CreateTime AS ServiceTime
- FROM
- pc_jobuser UNION
- SELECT
- jobUser.JobUserID,
- mgt.ModifyTime AS ServiceTime
- FROM
- pc_recommend_mgt mgt
- LEFT JOIN pc_post post ON mgt.PostID = post.PostID
- LEFT JOIN pc_profession prof ON post.ProfessionID = prof.ProfessionID
- LEFT JOIN pc_company company ON post.CompanyID = company.CompanyID
- LEFT JOIN pc_jobhunt jobHunt ON mgt.JobHuntID = jobHunt.JobHuntID
- LEFT JOIN pc_jobuser jobUser ON jobHunt.JobUserID = jobUser.JobuserID
- WHERE
- mgt.ModifyTime IS NOT NULL UNION
- SELECT
- jobUser.JobUserID,
- mgt.CreateTime AS ServiceTime
- FROM
- pc_recommend_mgt mgt
- LEFT JOIN pc_post post ON mgt.PostID = post.PostID
- LEFT JOIN pc_profession prof ON post.ProfessionID = prof.ProfessionID
- LEFT JOIN pc_company company ON post.CompanyID = company.CompanyID
- LEFT JOIN pc_jobhunt jobHunt ON mgt.JobHuntID = jobHunt.JobHuntID
- LEFT JOIN pc_jobuser jobUser ON jobHunt.JobUserID = jobUser.JobuserID
- ) AS subquery
- ) AS ranked_service
- WHERE
- rn = 1
- <if test="jobUserIDList != '' and jobUserIDList != null">
- and jobuserID in (${jobUserIDList})
- </if>
- </select>
- </mapper>
|