|
@@ -2,64 +2,191 @@
|
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
<mapper namespace="ruisi.com.ruisiehr.mapper.ScheduleTaskMapper">
|
|
|
|
|
|
- <!-- 查询节假日 -->
|
|
|
- <select id="getHolidayTypeByUserId" parameterType="java.util.Map" resultType="java.util.Map">
|
|
|
- SELECT people, holidayName, holidayCode, realLimit, freezeLimit, unit,validYear, peopleCode, telphone, usedLimit, remainLimit
|
|
|
+
|
|
|
+ <!-- 获取总记录数 -->
|
|
|
+ <select id="getHolidayTypeCountByUserId" parameterType="java.util.Map" resultType="int">
|
|
|
+ SELECT COUNT(*)
|
|
|
FROM (
|
|
|
- SELECT HOLIDAYTYPE.FNAME_L2 holidayName,
|
|
|
- ( CASE WHEN HOLIDAYLIMIT.FHolidayUnit = 1 THEN '天' ELSE '小时' END ) unit,
|
|
|
- HOLIDAYTYPE.fnumber holidayCode,
|
|
|
- PROPOSER.fnumber peopleCode,
|
|
|
- PROPOSER.FNAME_L2 people,
|
|
|
- PROPOSER.FCELL telphone,
|
|
|
- HOLIDAYLIMIT.FCycleBeginDate BeginDate,
|
|
|
- HOLIDAYLIMIT.FCycleEndDate EndDate,
|
|
|
- HOLIDAYLIMIT.FDelayDate DelayDate,
|
|
|
- to_char(HOLIDAYLIMIT.fyear ) validYear,
|
|
|
- HOLIDAYLIMIT.FRealLimit realLimit,
|
|
|
- HOLIDAYLIMIT.FUsedLimit usedLimit,
|
|
|
- HOLIDAYLIMIT.FreezeLimit freezeLimit,
|
|
|
- HOLIDAYLIMIT.FRemainLimit remainLimit,
|
|
|
- ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'
|
|
|
- WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread
|
|
|
- FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE
|
|
|
- LEFT JOIN T_HR_ATS_HolidayLimit HOLIDAYLIMIT ON HOLIDAYLIMIT.FProposerID = ATSHOLIDAYFILE.FProposerID
|
|
|
- LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON HOLIDAYLIMIT.FHolidayPolicyID = HOLIDAYPOLICY.FID
|
|
|
- LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID
|
|
|
- LEFT OUTER JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID WHERE HOLIDAYTYPE.FState = 1 ) tmp
|
|
|
- WHERE isread = '不隐藏'
|
|
|
- AND (to_char( DelayDate, 'yyyymmdd' ) >= to_char( SYSDATE, 'yyyymmdd' ) OR DelayDate IS NULL)
|
|
|
+ -- 这里复制你的原始 SQL 查询,但只需要保留 WHERE 子句之前的 SELECT 和 FROM 部分
|
|
|
+ SELECT people, holidayName, holidayCode, realLimit, freezeLimit, unit, validYear, peopleCode, telphone, usedLimit, remainLimit
|
|
|
+ FROM (
|
|
|
+ -- 原始子查询
|
|
|
+ SELECT HOLIDAYTYPE.FNAME_L2 holidayName,
|
|
|
+ ( CASE WHEN HOLIDAYLIMIT.FHolidayUnit = 1 THEN '天' ELSE '小时' END ) unit,
|
|
|
+ HOLIDAYTYPE.fnumber holidayCode,
|
|
|
+ PROPOSER.fnumber peopleCode,
|
|
|
+ PROPOSER.FNAME_L2 people,
|
|
|
+ PROPOSER.FCELL telphone,
|
|
|
+ HOLIDAYLIMIT.FCycleBeginDate BeginDate,
|
|
|
+ HOLIDAYLIMIT.FCycleEndDate EndDate,
|
|
|
+ HOLIDAYLIMIT.FDelayDate DelayDate,
|
|
|
+ to_char(HOLIDAYLIMIT.fyear ) validYear,
|
|
|
+ HOLIDAYLIMIT.FRealLimit realLimit,
|
|
|
+ HOLIDAYLIMIT.FUsedLimit usedLimit,
|
|
|
+ HOLIDAYLIMIT.FreezeLimit freezeLimit,
|
|
|
+ HOLIDAYLIMIT.FRemainLimit remainLimit,
|
|
|
+ ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'
|
|
|
+ WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread
|
|
|
+ FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayLimit HOLIDAYLIMIT ON HOLIDAYLIMIT.FProposerID = ATSHOLIDAYFILE.FProposerID
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON HOLIDAYLIMIT.FHolidayPolicyID = HOLIDAYPOLICY.FID
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID
|
|
|
+ LEFT OUTER JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID
|
|
|
+ WHERE HOLIDAYTYPE.FState = 1
|
|
|
+ ) tmp
|
|
|
+ WHERE isread = '不隐藏'
|
|
|
+ AND (to_char( DelayDate, 'yyyymmdd' ) >= to_char( SYSDATE, 'yyyymmdd' ) OR DelayDate IS NULL)
|
|
|
+ AND peopleCode = #{peopleCode}
|
|
|
+ UNION ALL
|
|
|
+ SELECT people, holidayName, holidayCode, realLimit, freezeLimit, unit, validYear, peopleCode, telphone, usedLimit, remainLimit
|
|
|
+ FROM (
|
|
|
+ -- 第二个子查询
|
|
|
+ SELECT HOLIDAYTYPE.FNAME_L2 holidayName,
|
|
|
+ ( CASE WHEN HOLIDAYPOLICY.FUnit = 1 THEN '天' ELSE '小时' END ) unit,
|
|
|
+ HOLIDAYTYPE.fnumber holidayCode,
|
|
|
+ PROPOSER.fnumber peopleCode,
|
|
|
+ PROPOSER.FNAME_L2 people,
|
|
|
+ PROPOSER.FCELL telphone,
|
|
|
+ null BeginDate,
|
|
|
+ null EndDate,
|
|
|
+ null validYear,
|
|
|
+ '' 有效期年度,
|
|
|
+ null realLimit,
|
|
|
+ null usedLimit,
|
|
|
+ null freezeLimit,
|
|
|
+ null remainLimit,
|
|
|
+ ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'
|
|
|
+ WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread
|
|
|
+ FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON ATSHOLIDAYFILE.FHolidayPolicySetID = HOLIDAYPOLICY.FHolidayPolicySetID
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID
|
|
|
+ JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID
|
|
|
+ WHERE HOLIDAYPOLICY.FIsCtrlLimit=0 AND HOLIDAYTYPE.FState = 1
|
|
|
+ ) tmp
|
|
|
+ WHERE isread = '不隐藏'
|
|
|
+ AND peopleCode = #{peopleCode}
|
|
|
+ )
|
|
|
+ </select>
|
|
|
+ <!-- 获取分页后的数据 -->
|
|
|
+ <select id="getHolidayTypeByUserId" parameterType="java.util.Map" resultType="java.util.Map">-->
|
|
|
+SELECT people, holidayName, holidayCode, realLimit, freezeLimit, unit,validYear, peopleCode, telphone, usedLimit, remainLimit
|
|
|
+FROM (
|
|
|
+ SELECT HOLIDAYTYPE.FNAME_L2 holidayName,
|
|
|
+ ( CASE WHEN HOLIDAYLIMIT.FHolidayUnit = 1 THEN '天' ELSE '小时' END ) unit,
|
|
|
+ HOLIDAYTYPE.fnumber holidayCode,
|
|
|
+ PROPOSER.fnumber peopleCode,
|
|
|
+ PROPOSER.FNAME_L2 people,
|
|
|
+ PROPOSER.FCELL telphone,
|
|
|
+ HOLIDAYLIMIT.FCycleBeginDate BeginDate,
|
|
|
+ HOLIDAYLIMIT.FCycleEndDate EndDate,
|
|
|
+ HOLIDAYLIMIT.FDelayDate DelayDate,
|
|
|
+ to_char(HOLIDAYLIMIT.fyear ) validYear,
|
|
|
+ HOLIDAYLIMIT.FRealLimit realLimit,
|
|
|
+ HOLIDAYLIMIT.FUsedLimit usedLimit,
|
|
|
+ HOLIDAYLIMIT.FreezeLimit freezeLimit,
|
|
|
+ HOLIDAYLIMIT.FRemainLimit remainLimit,
|
|
|
+ ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'
|
|
|
+ WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread
|
|
|
+ FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayLimit HOLIDAYLIMIT ON HOLIDAYLIMIT.FProposerID = ATSHOLIDAYFILE.FProposerID
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON HOLIDAYLIMIT.FHolidayPolicyID = HOLIDAYPOLICY.FID
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID
|
|
|
+ LEFT OUTER JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID WHERE HOLIDAYTYPE.FState = 1 ) tmp
|
|
|
+WHERE isread = '不隐藏'
|
|
|
+ AND (to_char( DelayDate, 'yyyymmdd' ) >= to_char( SYSDATE, 'yyyymmdd' ) OR DelayDate IS NULL)
|
|
|
-- AND (validYear= extract(year from sysdate) OR validYear IS NULL)
|
|
|
- AND peopleCode = #{peopleCode}
|
|
|
- union all
|
|
|
- select people, holidayName, holidayCode, realLimit, freezeLimit, unit,validYear, peopleCode, telphone, usedLimit, remainLimit
|
|
|
- from
|
|
|
- (SELECT HOLIDAYTYPE.FNAME_L2 holidayName,
|
|
|
- ( CASE WHEN HOLIDAYPOLICY.FUnit = 1 THEN '天' ELSE '小时' END ) unit,
|
|
|
- HOLIDAYTYPE.fnumber holidayCode,
|
|
|
- PROPOSER.fnumber peopleCode,
|
|
|
- PROPOSER.FNAME_L2 people,
|
|
|
- PROPOSER.FCELL telphone,
|
|
|
- null BeginDate,
|
|
|
- null EndDate,
|
|
|
- null validYear,
|
|
|
- '' 有效期年度,
|
|
|
- null realLimit,
|
|
|
- null usedLimit,
|
|
|
- null freezeLimit,
|
|
|
- null remainLimit,
|
|
|
- ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'
|
|
|
- WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread
|
|
|
- FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE
|
|
|
- LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON ATSHOLIDAYFILE.FHolidayPolicySetID = HOLIDAYPOLICY.FHolidayPolicySetID
|
|
|
- LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID
|
|
|
- JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID
|
|
|
- WHERE HOLIDAYPOLICY.FIsCtrlLimit=0 AND HOLIDAYTYPE.FState = 1) tmp
|
|
|
- where
|
|
|
- isread = '不隐藏'
|
|
|
+ AND peopleCode = #{peopleCode}
|
|
|
+union all
|
|
|
+select people, holidayName, holidayCode, realLimit, freezeLimit, unit,validYear, peopleCode, telphone, usedLimit, remainLimit
|
|
|
+from
|
|
|
+ (SELECT HOLIDAYTYPE.FNAME_L2 holidayName,
|
|
|
+ ( CASE WHEN HOLIDAYPOLICY.FUnit = 1 THEN '天' ELSE '小时' END ) unit,
|
|
|
+ HOLIDAYTYPE.fnumber holidayCode,
|
|
|
+ PROPOSER.fnumber peopleCode,
|
|
|
+ PROPOSER.FNAME_L2 people,
|
|
|
+ PROPOSER.FCELL telphone,
|
|
|
+ null BeginDate,
|
|
|
+ null EndDate,
|
|
|
+ null validYear,
|
|
|
+ '' 有效期年度,
|
|
|
+ null realLimit,
|
|
|
+ null usedLimit,
|
|
|
+ null freezeLimit,
|
|
|
+ null remainLimit,
|
|
|
+ ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'
|
|
|
+ WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread
|
|
|
+ FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON ATSHOLIDAYFILE.FHolidayPolicySetID = HOLIDAYPOLICY.FHolidayPolicySetID
|
|
|
+ LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID
|
|
|
+ JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID
|
|
|
+ WHERE HOLIDAYPOLICY.FIsCtrlLimit=0 AND HOLIDAYTYPE.FState = 1) tmp
|
|
|
+where
|
|
|
+ isread = '不隐藏'
|
|
|
-- AND (validYear= extract(year from sysdate) OR validYear IS NULL)
|
|
|
- AND peopleCode = #{peopleCode}
|
|
|
- </select>
|
|
|
+ AND peopleCode = #{peopleCode}
|
|
|
+ORDER BY holidayCode ASC
|
|
|
+</select>
|
|
|
+
|
|
|
+
|
|
|
+ <!-- 查询节假日 -->
|
|
|
+<!-- <select id="getHolidayTypeByUserId" parameterType="java.util.Map" resultType="java.util.Map">-->
|
|
|
+<!-- SELECT people, holidayName, holidayCode, realLimit, freezeLimit, unit,validYear, peopleCode, telphone, usedLimit, remainLimit-->
|
|
|
+<!-- FROM (-->
|
|
|
+<!-- SELECT HOLIDAYTYPE.FNAME_L2 holidayName,-->
|
|
|
+<!-- ( CASE WHEN HOLIDAYLIMIT.FHolidayUnit = 1 THEN '天' ELSE '小时' END ) unit,-->
|
|
|
+<!-- HOLIDAYTYPE.fnumber holidayCode,-->
|
|
|
+<!-- PROPOSER.fnumber peopleCode,-->
|
|
|
+<!-- PROPOSER.FNAME_L2 people,-->
|
|
|
+<!-- PROPOSER.FCELL telphone,-->
|
|
|
+<!-- HOLIDAYLIMIT.FCycleBeginDate BeginDate,-->
|
|
|
+<!-- HOLIDAYLIMIT.FCycleEndDate EndDate,-->
|
|
|
+<!-- HOLIDAYLIMIT.FDelayDate DelayDate,-->
|
|
|
+<!-- to_char(HOLIDAYLIMIT.fyear ) validYear,-->
|
|
|
+<!-- HOLIDAYLIMIT.FRealLimit realLimit,-->
|
|
|
+<!-- HOLIDAYLIMIT.FUsedLimit usedLimit,-->
|
|
|
+<!-- HOLIDAYLIMIT.FreezeLimit freezeLimit,-->
|
|
|
+<!-- HOLIDAYLIMIT.FRemainLimit remainLimit,-->
|
|
|
+<!-- ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'-->
|
|
|
+<!-- WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread-->
|
|
|
+<!-- FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE-->
|
|
|
+<!-- LEFT JOIN T_HR_ATS_HolidayLimit HOLIDAYLIMIT ON HOLIDAYLIMIT.FProposerID = ATSHOLIDAYFILE.FProposerID-->
|
|
|
+<!-- LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON HOLIDAYLIMIT.FHolidayPolicyID = HOLIDAYPOLICY.FID-->
|
|
|
+<!-- LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID-->
|
|
|
+<!-- LEFT OUTER JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID WHERE HOLIDAYTYPE.FState = 1 ) tmp-->
|
|
|
+<!-- WHERE isread = '不隐藏'-->
|
|
|
+<!-- AND (to_char( DelayDate, 'yyyymmdd' ) >= to_char( SYSDATE, 'yyyymmdd' ) OR DelayDate IS NULL)-->
|
|
|
+<!---- AND (validYear= extract(year from sysdate) OR validYear IS NULL)-->
|
|
|
+<!-- AND peopleCode = #{peopleCode}-->
|
|
|
+<!-- union all-->
|
|
|
+<!-- select people, holidayName, holidayCode, realLimit, freezeLimit, unit,validYear, peopleCode, telphone, usedLimit, remainLimit-->
|
|
|
+<!-- from-->
|
|
|
+<!-- (SELECT HOLIDAYTYPE.FNAME_L2 holidayName,-->
|
|
|
+<!-- ( CASE WHEN HOLIDAYPOLICY.FUnit = 1 THEN '天' ELSE '小时' END ) unit,-->
|
|
|
+<!-- HOLIDAYTYPE.fnumber holidayCode,-->
|
|
|
+<!-- PROPOSER.fnumber peopleCode,-->
|
|
|
+<!-- PROPOSER.FNAME_L2 people,-->
|
|
|
+<!-- PROPOSER.FCELL telphone,-->
|
|
|
+<!-- null BeginDate,-->
|
|
|
+<!-- null EndDate,-->
|
|
|
+<!-- null validYear,-->
|
|
|
+<!-- '' 有效期年度,-->
|
|
|
+<!-- null realLimit,-->
|
|
|
+<!-- null usedLimit,-->
|
|
|
+<!-- null freezeLimit,-->
|
|
|
+<!-- null remainLimit,-->
|
|
|
+<!-- ( CASE WHEN PROPOSER.FGender = 1 AND HOLIDAYTYPE.fnumber IN ( 'RS010', 'RS01401', 'RS01402', 'RS01403', 'RS01404', 'RS016', 'RS018', 'RS019', 'RS020', 'RS028', 'RS052', 'RS053' ) THEN '隐藏'-->
|
|
|
+<!-- WHEN PROPOSER.FGender = 2 AND HOLIDAYTYPE.fnumber IN ( 'RS015' ) THEN '隐藏' ELSE '不隐藏' END ) isread-->
|
|
|
+<!-- FROM T_HR_ATS_AtsHolidayFile ATSHOLIDAYFILE-->
|
|
|
+<!-- LEFT JOIN T_HR_ATS_HolidayPolicy HOLIDAYPOLICY ON ATSHOLIDAYFILE.FHolidayPolicySetID = HOLIDAYPOLICY.FHolidayPolicySetID-->
|
|
|
+<!-- LEFT JOIN T_HR_ATS_HolidayType HOLIDAYTYPE ON HOLIDAYPOLICY.FHolidayTypeID = HOLIDAYTYPE.FID-->
|
|
|
+<!-- JOIN T_BD_Person PROPOSER ON ATSHOLIDAYFILE.FProposerID = PROPOSER.FID-->
|
|
|
+<!-- WHERE HOLIDAYPOLICY.FIsCtrlLimit=0 AND HOLIDAYTYPE.FState = 1) tmp-->
|
|
|
+<!-- where-->
|
|
|
+<!-- isread = '不隐藏'-->
|
|
|
+<!---- AND (validYear= extract(year from sysdate) OR validYear IS NULL)-->
|
|
|
+<!-- AND peopleCode = #{peopleCode}-->
|
|
|
+<!-- ORDER BY holidayCode ASC-->
|
|
|
+<!-- </select>-->
|
|
|
|
|
|
|
|
|
|
|
@@ -127,25 +254,235 @@
|
|
|
</select>
|
|
|
<!-- 查询岗位信息-->
|
|
|
<select id="getPosition" resultType="java.util.Map">
|
|
|
- SELECT PST.FNAME_L2 positionName, PST.FNUMBER positionCode,PST.FSIMPLENAME simpleName,POS.FNAME_L2 jobName,POS.FNUMBER jobCode
|
|
|
+ SELECT PST.FNAME_L2 positionName, PST.FNUMBER positionCode,PST.FSIMPLENAME simpleName,POS.FNAME_L2 jobName,POS.FNUMBER jobCode,ADMIN.FNUMBER orgCode, POS.FDELETEDSTATUS status, ZHIJI.FNAME_L2 zhijiName, ZHIJI.FNUMBER zhijiCode
|
|
|
FROM
|
|
|
T_ORG_POSITION POS
|
|
|
- LEFT JOIN T_HR_RELBETWEENPOSITIONANDLIB RELLIB ON POS.FID = RELLIB.FPOSITIONID
|
|
|
- LEFT JOIN T_HR_POSITIONSTANDARDLIB PST ON PST.FID = RELLIB.FPOSITIONSTANDARDLIBID
|
|
|
+ LEFT JOIN T_HR_RELBETWEENPOSITIONANDLIB RELLIB ON POS.FID = RELLIB.FPOSITIONID
|
|
|
+ LEFT JOIN T_HR_POSITIONSTANDARDLIB PST ON PST.FID = RELLIB.FPOSITIONSTANDARDLIBID
|
|
|
+ LEFT JOIN T_ORG_ADMIN ADMIN ON ADMIN.FID = POS.FADMINORGUNITID
|
|
|
+
|
|
|
+ LEFT JOIN CT_HR_ZHIJI ZHIJI ON ZHIJI.FID = POS.CFZHIJIID
|
|
|
+
|
|
|
+
|
|
|
</select>
|
|
|
<!-- 获取人员档案:-->
|
|
|
<select id="getPerson" resultType="java.util.Map">
|
|
|
- SELECT PERSON.FCELL phone, PERSON.FNUMBER EHR, PERSON.FNAME_L2 name, PERSON.CFYWM ename,
|
|
|
- (case when laborrela.FENTERDATE is null then personpos.FENTERDATE else laborrela.FENTERDATE end ) HireDate,
|
|
|
- STANDARLIB.FNAME_L2 positionName, STANDARLIB.FNUMBER positionCode,ADMIN.FNAME_L2 orgName, ADMIN.FNUMBER orgNumber,
|
|
|
- ZHIJI.FNAME_L2 zhijiName, ZHIJI.FNUMBER zhijiCode,FADMIN.FNAME_L2 companyName,FADMIN.FNUMBER companyCode,EMPHIREBILL.FBIZDATE empDate,
|
|
|
- PARENTADMIN.FNAME_L2 parentOrgName
|
|
|
+ -- SELECT
|
|
|
+-- PERSON.FCELL AS phone,
|
|
|
+-- PERSON.FNUMBER AS EHR,
|
|
|
+-- PERSON.FNAME_L2 AS name,
|
|
|
+-- PERSON.CFYWM AS ename,
|
|
|
+-- ZHIJI.FNAME_L2 AS zhijiName,
|
|
|
+-- ZHIJI.FNUMBER AS zhijiCode,
|
|
|
+-- (CASE
|
|
|
+-- WHEN laborrela.FENTERDATE IS NULL THEN personpos.FENTERDATE
|
|
|
+-- ELSE laborrela.FENTERDATE
|
|
|
+-- END) AS HireDate,
|
|
|
+-- (CASE
|
|
|
+-- WHEN laborrela.FACTUALFORMALDATE IS NULL THEN laborrela.FPLANFORMALDATE
|
|
|
+-- ELSE laborrela.FACTUALFORMALDATE
|
|
|
+-- END) AS FormDate,
|
|
|
+-- -- 职位
|
|
|
+-- (CASE
|
|
|
+-- WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNAME_L2
|
|
|
+-- ELSE STANDARLIB.FNAME_L2
|
|
|
+-- END) AS positionName,
|
|
|
+-- (CASE
|
|
|
+-- WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNUMBER
|
|
|
+-- ELSE STANDARLIB.FNUMBER
|
|
|
+-- END) AS positionCode,
|
|
|
+-- -- 部门
|
|
|
+-- (CASE
|
|
|
+-- WHEN POSMEMBER.FISPRIMARY = '1' THEN EXDEP.FNAME_L2
|
|
|
+-- ELSE ADMIN.FNAME_L2
|
|
|
+-- END) AS orgName,
|
|
|
+-- (CASE
|
|
|
+-- WHEN POSMEMBER.FISPRIMARY = '1' THEN EXDEP.FNUMBER
|
|
|
+-- ELSE ADMIN.FNUMBER
|
|
|
+-- END) AS orgNum,
|
|
|
+-- -- 公司
|
|
|
+-- (CASE
|
|
|
+-- WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNAME_L2
|
|
|
+-- WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNAME_L2
|
|
|
+-- WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNAME_L2
|
|
|
+-- ELSE EXCOM.FNAME_L2
|
|
|
+-- END) AS companyName,
|
|
|
+-- -- company code逻辑调整
|
|
|
+-- (CASE
|
|
|
+-- WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNUMBER
|
|
|
+-- WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNUMBER
|
|
|
+-- WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNUMBER
|
|
|
+-- ELSE EXCOM.FNUMBER
|
|
|
+-- END) AS companyCode,
|
|
|
+-- -- 分部
|
|
|
+--
|
|
|
+-- (CASE
|
|
|
+-- WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNAME_L2
|
|
|
+-- WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNAME_L2
|
|
|
+-- WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNAME_L2
|
|
|
+-- ELSE EXCOM.FNAME_L2
|
|
|
+-- END) AS PARENTORGNAME,
|
|
|
+-- -- parent code逻辑调整
|
|
|
+-- (CASE
|
|
|
+-- WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNUMBER
|
|
|
+-- WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNUMBER
|
|
|
+-- WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNUMBER
|
|
|
+-- ELSE EXCOM.FNUMBER
|
|
|
+-- END) AS PARENTORGNUM,
|
|
|
+-- EMPHIREBILL.FBIZDATE AS empDate,
|
|
|
+-- POSMEMBER.FISPRIMARY AS FISPRIMARY
|
|
|
+-- FROM
|
|
|
+-- T_BD_PERSON PERSON
|
|
|
+-- LEFT JOIN T_HR_EmpHireBizBill EMPHIREBILL ON EMPHIREBILL.FAPPLIERID = PERSON.FID
|
|
|
+-- LEFT JOIN T_ORG_POSITIONMEMBER POSMEMBER ON POSMEMBER.FPERSONID = PERSON.FID
|
|
|
+-- LEFT JOIN T_HR_PERSONPOSITION PERPOS ON PERPOS.FPERSONID = PERSON.FID
|
|
|
+-- LEFT JOIN T_ORG_POSITION EXPOS ON PERPOS.FPRIMARYPOSITIONID = EXPOS.FID
|
|
|
+-- LEFT JOIN T_ORG_ADMIN EXDEP ON EXPOS.FADMINORGUNITID = EXDEP.FID
|
|
|
+-- LEFT JOIN T_ORG_ADMIN EXCOL ON EXDEP.FOFFICEID = EXCOL.FID
|
|
|
+-- LEFT JOIN T_ORG_ADMIN EXCOM ON EXDEP.FCOMPANYID = EXCOM.FID
|
|
|
+-- LEFT JOIN T_HR_PERSONCONTACTMETHOD HRPERSON ON HRPERSON.FPERSONID = PERSON.FID
|
|
|
+-- LEFT JOIN T_ORG_POSITION POSITION ON POSMEMBER.FPOSITIONID = POSITION.FID
|
|
|
+-- LEFT JOIN T_ORG_POSITION UPPOSITION ON POSITION.FPARENTID = UPPOSITION.FID
|
|
|
+-- LEFT JOIN T_ORG_POSITIONMEMBER UPPOSMEMBER ON UPPOSMEMBER.FPOSITIONID = UPPOSITION.FID
|
|
|
+-- LEFT JOIN T_BD_PERSON UPPERSON ON UPPOSMEMBER.FPERSONID = UPPERSON.FID
|
|
|
+-- LEFT JOIN T_HR_BDEMPLOYEETYPE EMPLOYEE ON EMPLOYEE.FID = PERSON.FEMPLOYEETYPEID
|
|
|
+-- LEFT JOIN T_HR_PERSONPOSITION PERSONPOS ON PERSON.FID = PERSONPOS.FPERSONID
|
|
|
+-- LEFT JOIN CT_HR_ZHIJI ZHIJI ON ZHIJI.FID = POSITION.CFZHIJIID
|
|
|
+-- LEFT JOIN T_HR_EMPENROLLBIZBILLENTRY ENROLLBIZENTRY ON ENROLLBIZENTRY.FPERSONID = PERSON.FID
|
|
|
+-- LEFT JOIN T_HR_EMPENROLLBIZBILL ENROLLBIZ ON ENROLLBIZ.FID = ENROLLBIZENTRY.FBILLID
|
|
|
+-- LEFT JOIN (
|
|
|
+-- SELECT C.*
|
|
|
+-- FROM (
|
|
|
+-- SELECT FPERSONID, MAX(FBIZDATE) FBIZDATE
|
|
|
+-- FROM T_HR_RESIGNBIZBILLENTRY A
|
|
|
+-- GROUP BY FPERSONID
|
|
|
+-- ) B, T_HR_RESIGNBIZBILLENTRY C
|
|
|
+-- WHERE B.FPERSONID = C.FPERSONID AND B.FBIZDATE = C.FBIZDATE
|
|
|
+-- ) RESIGNENTRY ON RESIGNENTRY.FPERSONID = PERSON.FID
|
|
|
+-- LEFT JOIN T_HR_RESIGNBIZBILL RESIGN ON RESIGN.FID = RESIGNENTRY.FBILLID
|
|
|
+-- LEFT JOIN T_HR_RESIGNBACKBIZBILLENTRY BACKENTRY ON BACKENTRY.FPERSONID = PERSON.FID
|
|
|
+-- LEFT JOIN T_HR_RELBETWEENPOSITIONANDLIB RELLIB ON POSITION.FID = RELLIB.FPOSITIONID
|
|
|
+-- LEFT JOIN T_HR_POSITIONSTANDARDLIB STANDARLIB ON STANDARLIB.FID = RELLIB.FPOSITIONSTANDARDLIBID
|
|
|
+-- LEFT JOIN T_HR_PERSONPOSITION PERSONPOSITION ON PERSONPOSITION.FPERSONID = PERSON.FID
|
|
|
+-- LEFT JOIN T_ORG_ADMIN ADMIN ON PERSONPOSITION.FPERSONDEP = ADMIN.FID
|
|
|
+-- LEFT JOIN T_ORG_ADMIN FADMIN ON PERSONPOSITION.FCOMPANYID = FADMIN.FID
|
|
|
+-- LEFT JOIN T_ORG_ADMIN PARENTADMIN ON ADMIN.FPARENTID = PARENTADMIN.FID
|
|
|
+-- LEFT JOIN T_HR_SHRADMINORGUNITEXTEND EXTEND ON EXTEND.FADMINORGUNITID = ADMIN.FID
|
|
|
+-- LEFT JOIN T_HR_ENTERPRISENATURE NATURE ON EXTEND.FENTERPRISENATUREID = NATURE.FID
|
|
|
+-- LEFT JOIN V_COS_ORG COSORG ON ADMIN.FNUMBER = COSORG.ORGNUMBER
|
|
|
+-- LEFT JOIN T_HR_EmpLaborRelation laborrela ON laborrela.FPERSONID = person.fid
|
|
|
+-- LEFT JOIN t_pm_user pu ON person.fid = pu.fpersonid
|
|
|
+-- WHERE nvl(POSMEMBER.FISPRIMARY, '1') = '1';
|
|
|
+ SELECT
|
|
|
+ PERSON.FCELL AS phone,
|
|
|
+ PERSON.FNUMBER AS EHR,
|
|
|
+ PERSON.FNAME_L2 AS name,
|
|
|
+ PERSON.CFYWM AS ename,
|
|
|
+ ZHIJI.FNAME_L2 AS zhijiName,
|
|
|
+ ZHIJI.FNUMBER AS zhijiCode,
|
|
|
+ (CASE
|
|
|
+ WHEN laborrela.FENTERDATE IS NULL THEN personpos.FENTERDATE
|
|
|
+ ELSE laborrela.FENTERDATE
|
|
|
+ END) AS HireDate,
|
|
|
+ (CASE
|
|
|
+ WHEN laborrela.FACTUALFORMALDATE IS NULL THEN laborrela.FPLANFORMALDATE
|
|
|
+ ELSE laborrela.FACTUALFORMALDATE
|
|
|
+ END) AS FormDate,
|
|
|
+-- 职位
|
|
|
+ (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNAME_L2
|
|
|
+ ELSE STANDARLIB.FNAME_L2
|
|
|
+ END) AS positionName,
|
|
|
+ (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNUMBER
|
|
|
+ ELSE STANDARLIB.FNUMBER
|
|
|
+ END) AS positionCode,
|
|
|
+-- 部门
|
|
|
+ (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXDEP.FNAME_L2
|
|
|
+ ELSE ADMIN.FNAME_L2
|
|
|
+ END) AS orgName,
|
|
|
+ (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXDEP.FNUMBER
|
|
|
+ ELSE ADMIN.FNUMBER
|
|
|
+ END) AS orgNum,
|
|
|
+ (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXDEP.FDISPLAYNAME_L2
|
|
|
+ ELSE ADMIN.FDISPLAYNAME_L2
|
|
|
+ END) AS orgLineName,
|
|
|
+-- 公司
|
|
|
+ (CASE
|
|
|
+ WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNAME_L2
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNAME_L2
|
|
|
+ ELSE STANDARLIB.FNAME_L2
|
|
|
+ END) LIKE '%校长%' THEN EXCOL.FNAME_L2
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNAME_L2
|
|
|
+ WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNAME_L2
|
|
|
+ ELSE EXCOM.FNAME_L2
|
|
|
+ END)
|
|
|
+ END)
|
|
|
+ END) AS companyName,
|
|
|
+ -- company code逻辑调整
|
|
|
+ (CASE
|
|
|
+ WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNUMBER
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNAME_L2
|
|
|
+ ELSE STANDARLIB.FNAME_L2
|
|
|
+ END) LIKE '%校长%' THEN EXCOL.FNUMBER
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNUMBER
|
|
|
+ WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNUMBER
|
|
|
+ ELSE EXCOM.FNUMBER
|
|
|
+ END)
|
|
|
+ END)
|
|
|
+ END) AS companyCode,
|
|
|
+-- 分部
|
|
|
+ (CASE
|
|
|
+ WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNAME_L2
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNAME_L2
|
|
|
+ ELSE STANDARLIB.FNAME_L2
|
|
|
+ END) LIKE '%校长%' THEN EXCOL.FNAME_L2
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNAME_L2
|
|
|
+ WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNAME_L2
|
|
|
+ ELSE EXCOM.FNAME_L2
|
|
|
+ END)
|
|
|
+ END)
|
|
|
+ END) AS PARENTORGNAME,
|
|
|
+ -- parent code逻辑调整
|
|
|
+ (CASE
|
|
|
+ WHEN EXDEP.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN EXCOM.FNUMBER
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN (CASE
|
|
|
+ WHEN POSMEMBER.FISPRIMARY = '1' THEN EXPOS.FNAME_L2
|
|
|
+ ELSE STANDARLIB.FNAME_L2
|
|
|
+ END) LIKE '%校长%' THEN EXCOL.FNUMBER
|
|
|
+ ELSE (CASE
|
|
|
+ WHEN EXDEP.FOFFICEID = EXDEP.FID THEN EXCOM.FNUMBER
|
|
|
+ WHEN EXDEP.FOFFICEID IS NOT NULL THEN EXCOL.FNUMBER
|
|
|
+ ELSE EXCOM.FNUMBER
|
|
|
+ END)
|
|
|
+ END)
|
|
|
+ END) AS PARENTORGNUM,
|
|
|
+ EMPHIREBILL.FBIZDATE AS empDate,
|
|
|
+ POSMEMBER.FISPRIMARY AS FISPRIMARY
|
|
|
FROM
|
|
|
T_BD_PERSON PERSON
|
|
|
- LEFT JOIN T_HR_EmpHireBizBill EMPHIREBILL ON EMPHIREBILL.FAPPLIERID = PERSON.FID
|
|
|
- LEFT JOIN T_ORG_POSITIONMEMBER POSMEMBER ON POSMEMBER.FPERSONID = PERSON.FID
|
|
|
- LEFT JOIN T_HR_PERSONCONTACTMETHOD HRPERSON ON HRPERSON.FPERSONID = PERSON.FID
|
|
|
- LEFT JOIN T_ORG_POSITION POSITION ON POSMEMBER.FPOSITIONID = POSITION.FID
|
|
|
+ LEFT JOIN T_HR_EmpHireBizBill EMPHIREBILL ON EMPHIREBILL.FAPPLIERID = PERSON.FID
|
|
|
+ LEFT JOIN T_ORG_POSITIONMEMBER POSMEMBER ON POSMEMBER.FPERSONID = PERSON.FID
|
|
|
+ LEFT JOIN T_HR_PERSONPOSITION PERPOS ON PERPOS.FPERSONID = PERSON.FID
|
|
|
+ LEFT JOIN T_ORG_POSITION EXPOS ON PERPOS.FPRIMARYPOSITIONID = EXPOS.FID
|
|
|
+ LEFT JOIN T_ORG_ADMIN EXDEP ON EXPOS.FADMINORGUNITID = EXDEP.FID
|
|
|
+ LEFT JOIN T_ORG_ADMIN EXCOL ON EXDEP.FOFFICEID = EXCOL.FID
|
|
|
+ LEFT JOIN T_ORG_ADMIN EXCOM ON EXDEP.FCOMPANYID = EXCOM.FID
|
|
|
+ LEFT JOIN T_HR_PERSONCONTACTMETHOD HRPERSON ON HRPERSON.FPERSONID = PERSON.FID
|
|
|
+ LEFT JOIN T_ORG_POSITION POSITION ON POSMEMBER.FPOSITIONID = POSITION.FID
|
|
|
LEFT JOIN T_ORG_POSITION UPPOSITION ON POSITION.FPARENTID = UPPOSITION.FID
|
|
|
LEFT JOIN T_ORG_POSITIONMEMBER UPPOSMEMBER ON UPPOSMEMBER.FPOSITIONID = UPPOSITION.FID
|
|
|
LEFT JOIN T_BD_PERSON UPPERSON ON UPPOSMEMBER.FPERSONID = UPPERSON.FID
|
|
@@ -154,12 +491,15 @@
|
|
|
LEFT JOIN CT_HR_ZHIJI ZHIJI ON ZHIJI.FID = POSITION.CFZHIJIID
|
|
|
LEFT JOIN T_HR_EMPENROLLBIZBILLENTRY ENROLLBIZENTRY ON ENROLLBIZENTRY.FPERSONID = PERSON.FID
|
|
|
LEFT JOIN T_HR_EMPENROLLBIZBILL ENROLLBIZ ON ENROLLBIZ.FID = ENROLLBIZENTRY.FBILLID
|
|
|
- LEFT JOIN (SELECT C.*
|
|
|
- FROM (SELECT FPERSONID, MAX(FBIZDATE) FBIZDATE
|
|
|
- FROM T_HR_RESIGNBIZBILLENTRY A
|
|
|
- -- WHERE FPERSONID = 'Dy8AAAABsjCA733t'
|
|
|
- GROUP BY FPERSONID) B, T_HR_RESIGNBIZBILLENTRY C WHERE B.FPERSONID = C.FPERSONID
|
|
|
- AND B.FBIZDATE = C.FBIZDATE) RESIGNENTRY ON RESIGNENTRY.FPERSONID = PERSON.FID
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT C.*
|
|
|
+ FROM (
|
|
|
+ SELECT FPERSONID, MAX(FBIZDATE) FBIZDATE
|
|
|
+ FROM T_HR_RESIGNBIZBILLENTRY A
|
|
|
+ GROUP BY FPERSONID
|
|
|
+ ) B, T_HR_RESIGNBIZBILLENTRY C
|
|
|
+ WHERE B.FPERSONID = C.FPERSONID AND B.FBIZDATE = C.FBIZDATE
|
|
|
+ ) RESIGNENTRY ON RESIGNENTRY.FPERSONID = PERSON.FID
|
|
|
LEFT JOIN T_HR_RESIGNBIZBILL RESIGN ON RESIGN.FID = RESIGNENTRY.FBILLID
|
|
|
LEFT JOIN T_HR_RESIGNBACKBIZBILLENTRY BACKENTRY ON BACKENTRY.FPERSONID = PERSON.FID
|
|
|
LEFT JOIN T_HR_RELBETWEENPOSITIONANDLIB RELLIB ON POSITION.FID = RELLIB.FPOSITIONID
|
|
@@ -171,17 +511,95 @@
|
|
|
LEFT JOIN T_HR_SHRADMINORGUNITEXTEND EXTEND ON EXTEND.FADMINORGUNITID = ADMIN.FID
|
|
|
LEFT JOIN T_HR_ENTERPRISENATURE NATURE ON EXTEND.FENTERPRISENATUREID = NATURE.FID
|
|
|
LEFT JOIN V_COS_ORG COSORG ON ADMIN.FNUMBER = COSORG.ORGNUMBER
|
|
|
- LEFT JOIN T_HR_EmpLaborRelation laborrela ON laborrela.FPERSONID = person.fid -- 入职日期
|
|
|
- left join t_pm_user pu on person.fid=pu.fpersonid
|
|
|
- WHERE nvl(POSMEMBER.FISPRIMARY,'1') = 1
|
|
|
-
|
|
|
-
|
|
|
+ LEFT JOIN T_HR_EmpLaborRelation laborrela ON laborrela.FPERSONID = person.fid
|
|
|
+ LEFT JOIN t_pm_user pu ON person.fid = pu.fpersonid
|
|
|
+ WHERE nvl(POSMEMBER.FISPRIMARY, '1') = '1'
|
|
|
</select>
|
|
|
|
|
|
<!-- 查询部门 T_ORG_ADMIN-->
|
|
|
<select id="getOrg" parameterType="String" resultType="java.util.Map">
|
|
|
- SELECT FNAME_L2 orgName, FNUMBER orgCode, FDISPLAYNAME_L2 orgLineName FROM T_ORG_ADMIN
|
|
|
+-- SELECT FNAME_L2 orgName, FNUMBER orgCode, FDISPLAYNAME_L2 orgLineName FROM T_ORG_ADMIN
|
|
|
+SELECT
|
|
|
+ PST.FNAME_L2 positionName,
|
|
|
+ PST.FNUMBER positionCode,
|
|
|
+ PST.FSIMPLENAME simpleName,
|
|
|
+ POS.FNAME_L2 jobName,
|
|
|
+ POS.FNUMBER jobCode,
|
|
|
+ ADMIN.FNUMBER orgCode,
|
|
|
+ ADMIN.FNAME_L2 orgName,
|
|
|
+ ADMIN.FDISPLAYNAME_L2 orgLineName,
|
|
|
+ POS.FDELETEDSTATUS status,
|
|
|
+ ZHIJI.FNAME_L2 zhijiName,
|
|
|
+ ZHIJI.FNUMBER zhijiCode,
|
|
|
+ -- parent name逻辑调整
|
|
|
+ (CASE
|
|
|
+ WHEN PST.FNAME_L2 = '校长' THEN
|
|
|
+ (CASE
|
|
|
+ WHEN ADMIN.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN COMADMIN.FNAME_L2
|
|
|
+ WHEN ADMIN.FOFFICEID IS NOT NULL THEN PARADMIN.FNAME_L2
|
|
|
+ ELSE COMADMIN.FNAME_L2
|
|
|
+ END)
|
|
|
+ ELSE
|
|
|
+ (CASE
|
|
|
+ WHEN ADMIN.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN COMADMIN.FNAME_L2
|
|
|
+ WHEN ADMIN.FOFFICEID = ADMIN.FID THEN COMADMIN.FNAME_L2
|
|
|
+ WHEN ADMIN.FOFFICEID IS NOT NULL THEN PARADMIN.FNAME_L2
|
|
|
+ ELSE COMADMIN.FNAME_L2
|
|
|
+ END)
|
|
|
+ END) AS PARENTORGNAME,
|
|
|
+ -- parent code逻辑调整
|
|
|
+ (CASE
|
|
|
+ WHEN PST.FNAME_L2 = '校长' THEN
|
|
|
+ (CASE
|
|
|
+ WHEN ADMIN.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN COMADMIN.FNUMBER
|
|
|
+ WHEN ADMIN.FOFFICEID IS NOT NULL THEN PARADMIN.FNUMBER
|
|
|
+ ELSE COMADMIN.FNUMBER
|
|
|
+ END)
|
|
|
+ ELSE
|
|
|
+ (CASE
|
|
|
+ WHEN ADMIN.FCOMPANYID = '00000000-0000-0000-0000-000000000000CCE7AED4' THEN COMADMIN.FNUMBER
|
|
|
+ WHEN ADMIN.FOFFICEID = ADMIN.FID THEN COMADMIN.FNUMBER
|
|
|
+ WHEN ADMIN.FOFFICEID IS NOT NULL THEN PARADMIN.FNUMBER
|
|
|
+ ELSE COMADMIN.FNUMBER
|
|
|
+ END)
|
|
|
+ END) AS PARENTORGNUM
|
|
|
+FROM
|
|
|
+ T_ORG_POSITION POS
|
|
|
+ LEFT JOIN T_HR_RELBETWEENPOSITIONANDLIB RELLIB ON POS.FID = RELLIB.FPOSITIONID
|
|
|
+ LEFT JOIN T_HR_POSITIONSTANDARDLIB PST ON PST.FID = RELLIB.FPOSITIONSTANDARDLIBID
|
|
|
+ LEFT JOIN T_ORG_ADMIN ADMIN ON ADMIN.FID = POS.FADMINORGUNITID
|
|
|
+ LEFT JOIN T_ORG_ADMIN PARADMIN ON PARADMIN.FID = ADMIN.FOFFICEID
|
|
|
+ LEFT JOIN T_ORG_ADMIN COMADMIN ON COMADMIN.FID = ADMIN.FCOMPANYID
|
|
|
+ LEFT JOIN CT_HR_ZHIJI ZHIJI ON ZHIJI.FID = POS.CFZHIJIID
|
|
|
</select>
|
|
|
|
|
|
+<!-- 根据申请人的ehr编号获取直线领导的信息-->
|
|
|
+ <select id="getDirectSuperior" parameterType="java.util.Map" resultType="String">
|
|
|
+ SELECT UPPERSON.FNUMBER AS upperSonNumber
|
|
|
+ FROM
|
|
|
+ T_BD_PERSON PERSON
|
|
|
+ LEFT JOIN T_ORG_POSITIONMEMBER POSMEMBER ON POSMEMBER.FPERSONID = PERSON.FID
|
|
|
+ LEFT JOIN T_ORG_POSITION POSITION ON POSMEMBER.FPOSITIONID = POSITION.FID
|
|
|
+ LEFT JOIN T_ORG_POSITION UPPOSITION ON POSITION.FPARENTID = UPPOSITION.FID
|
|
|
+ LEFT JOIN T_ORG_POSITIONMEMBER UPPOSMEMBER ON UPPOSMEMBER.FPOSITIONID = UPPOSITION.FID
|
|
|
+ LEFT JOIN T_BD_PERSON UPPERSON ON UPPOSMEMBER.FPERSONID = UPPERSON.FID
|
|
|
+ WHERE
|
|
|
+ PERSON.FNUMBER = #{peopleCode}
|
|
|
+ AND ROWNUM = 1
|
|
|
+
|
|
|
+ </select>
|
|
|
+
|
|
|
+<!-- 根据校区名称获取教务岗位的人员编码-->
|
|
|
+ <select id="getEduPostPerson" parameterType="java.util.Map" resultType="String">
|
|
|
+ SELECT DISTINCT PERSON.FNUMBER AS PERSONNUMBER
|
|
|
+ FROM T_BD_PERSON PERSON
|
|
|
+ LEFT JOIN T_ORG_POSITIONMEMBER POSMEMBER ON POSMEMBER.FPERSONID = PERSON.FID
|
|
|
+ LEFT JOIN T_ORG_POSITION POSITION ON POSMEMBER.FPOSITIONID = POSITION.FID
|
|
|
+ LEFT JOIN T_ORG_ADMIN ADMIN ON ADMIN.FID = POSITION.FADMINORGUNITID
|
|
|
+ LEFT JOIN T_ORG_ADMIN FADMIN ON FADMIN.FID = ADMIN.FPARENTID
|
|
|
+ WHERE FADMIN.FNAME_L2 = #{campusName}
|
|
|
+ AND POSITION.FNAME_L2 LIKE '%' || #{positionKeyword} || '%'
|
|
|
+
|
|
|
+ </select>
|
|
|
|
|
|
</mapper>
|