1
|
SELECT distinct PL.REQ_ID,PL.PROCESS_ID,
|
2
|
CASE WHEN CD.DVDM_NAME IS NOT NULL AND CD.DVDM_NAME <> '' THEN CD.DVDM_NAME ELSE BR.BRANCH_NAME END AS DVDM_NAME,
|
3
|
TempU.TLNANME AS TLNAME,
|
4
|
TempU.TLFullName,
|
5
|
PL.NOTES
|
6
|
FROM dbo.PL_REQUEST_PROCESS PL
|
7
|
LEFT JOIN dbo.CM_DVDM CD ON CD.DVDM_ID=PL.DVDM_ID
|
8
|
LEFT JOIN
|
9
|
(
|
10
|
SELECT TU.TLNANME,TU.TLFullName,TU.RoleName,Temp.DVDM_ID,TU.SECUR_CODE,TU.TLSUBBRID FROM dbo.TL_USER TU
|
11
|
LEFT JOIN(
|
12
|
SELECT PC.DVDM_ID,PD.DEP_ID,PD.BRANCH_ID FROM dbo.PL_COSTCENTER PC
|
13
|
LEFT JOIN dbo.PL_COSTCENTER_DT PD ON PC.COST_ID=PD.COST_ID) Temp ON Temp.DEP_ID=TU.SECUR_CODE AND Temp.BRANCH_ID=TU.TLSUBBRID
|
14
|
UNION ALL
|
15
|
SELECT TU.TLNAME AS TLNANME,US.TLFullName,TU.ROLE_NEW RoleName,Temp.DVDM_ID,TU.DEP_ID SECUR_CODE,TU.BRANCH_ID TLSUBBRID
|
16
|
FROM dbo.TL_SYS_ROLE_MAPPING TU
|
17
|
LEFT JOIN dbo.TL_USER US ON US.TLNANME=TU.TLNAME
|
18
|
LEFT JOIN(
|
19
|
SELECT PC.DVDM_ID,PD.DEP_ID,PD.BRANCH_ID FROM dbo.PL_COSTCENTER PC
|
20
|
LEFT JOIN dbo.PL_COSTCENTER_DT PD ON PC.COST_ID=PD.COST_ID) Temp ON Temp.DEP_ID=TU.DEP_ID AND Temp.BRANCH_ID=TU.BRANCH_ID
|
21
|
WHERE CAST(TU.EXP_DATE AS DATE) >= CAST(GETDATE() AS DATE)
|
22
|
) TempU ON (TempU.RoleName=PL.ROLE_USER
|
23
|
OR PL.ROLE_USER IN (SELECT ROLE_NEW FROM dbo.TL_SYS_ROLE_MAPPING TM WHERE ROLE_OLD=TempU.RoleName AND (TM.TLNAME IS NULL OR TM.TLNAME='')))
|
24
|
AND (TempU.TLSUBBRID=PL.BRANCH_ID OR PL.BRANCH_ID IS NULL OR PL.BRANCH_ID='')
|
25
|
AND (((SELECT TOP 1 BRANCH_TYPE FROM dbo.CM_BRANCH WHERE BRANCH_ID = PL.BRANCH_ID) = 'HS' AND TempU.SECUR_CODE=PL.DEP_ID OR PL.DEP_ID IS NULL OR PL.DEP_ID='')
|
26
|
OR (SELECT TOP 1 BRANCH_TYPE FROM dbo.CM_BRANCH WHERE BRANCH_ID = PL.BRANCH_ID) <> 'HS')
|
27
|
AND (TempU.DVDM_ID=PL.DVDM_ID OR PL.DVDM_ID IS NULL OR PL.DVDM_ID ='')
|
28
|
LEFT JOIN CM_BRANCH BR ON PL.BRANCH_ID = BR.BRANCH_ID
|
29
|
WHERE PL.REQ_ID = (SELECT prd.REQ_ID FROM PL_REQUEST_DOC prd WHERE prd.REQ_CODE = '0002/2023/TTr-0690405') AND STATUS='C'
|