Project

General

Profile

11111.txt

Luc Tran Van, 10/11/2024 05:06 PM

 
1
--11102024_SECRETKEY
2
ALTER PROCEDURE dbo.CM_REQUEST_TEMPLATE_Search 
3
	@p_REQUEST_TEMPLATE_CODE varchar(15)=NULL,
4
	@p_REQUEST_TEMPLATE_NAME nvarchar(200)=NULL,
5
	@p_NOTES nvarchar(1000)=NULL,
6
	@p_RECORD_STATUS varchar(1)=NULL,
7
	@p_MAKER_ID varchar(12)=NULL,
8
	@p_CREATE_DT VARCHAR(20)=NULL,
9
	@p_AUTH_STATUS varchar(50)=NULL,
10
	@p_CHECKER_ID varchar(12)=NULL,
11
	@p_APPROVE_DT VARCHAR(20)=NULL,
12
	@p_MaxResultCount int = NULL,
13
	@p_SkipCount int = NULL,
14
	@p_Sorting varchar(100) = NULL,
15
	@p_TotalCount int = NULL,
16
	@p_REPORT_NO NVARCHAR(50)=NULL,
17
	@p_REPORT_DT NVARCHAR(50)=NULL,
18
	@p_TYPE_TEMPLATE NVARCHAR(50)=NULL,
19
	@p_FROM_DT NVARCHAR(20)=NULL,
20
	@p_TO_DT NVARCHAR(20)=NULL,
21
	@p_TYPE_TEMPLATE_ID varchar(20)=null,
22
	@p_MAKER_FULLNAME Nvarchar(50)=null,
23
	@p_USER_LOGIN VARCHAR(20)=NULL,
24
	@p_AUTH_STATUS_APP VARCHAR(20)=NULL,
25
	@p_TITLE NVARCHAR(500)=NULL,
26
	@p_USER_APPROVES NVARCHAR(500)=NULL,
27
	@p_FROM_DATE VARCHAR(20)=NULL,
28
	@p_TO_DATE VARCHAR(20)=NULL,
29
	@p_TOP				INT = NULL,
30
    @p_BRANCH_ID VARCHAR(15) = NULL,
31
    @p_DEP_ID VARCHAR(15) = NULL
32
AS
33
BEGIN -- PAGING
34
DECLARE @MENU_PERMISSION NVARCHAR(500) = 'Pages.Administration.TemplateRequestDoc' --permission của chức năng call store
35
  --NGUYENTD 19082024_SECRETKEY
36
  SELECT * INTO #LIST_ROLE FROM TL_USER_GET_ROLES(@p_USER_LOGIN, @MENU_PERMISSION)
37
	IF @P_TOP IS NULL OR @P_TOP  = ''
38
	BEGIN  
39

    
40
-- PAGING BEGIN
41
	SELECT A.REQUEST_TEMPLATE_ID
42
        ,A.REQUEST_TEMPLATE_NAME
43
        ,A.REQUEST_TEMPLATE_CODE
44
        ,A.NOTES
45
        ,A.RECORD_STATUS
46
        ,A.MAKER_ID
47
        ,A.CREATE_DT
48
        ,A.AUTH_STATUS
49
        ,A.CHECKER_ID
50
        ,A.APPROVE_DT
51
        ,A.CREATE_LOCATION
52
        ,A.HEADER
53
        ,A.BRANCH_ID
54
        ,A.REPORT_NO
55
        ,A.TITLE
56
        ,A.REPORT_DT
57
        ,A.SCHEME
58
        ,A.TYPE_TEMPLATE_ID
59
        ,A.CURRENT_STEP
60
        ,A.IS_SENT_APPROVE
61
        ,A.IS_BACK_DATE,B.CONTENT AS AUTH_STATUS_NAME,C.CONTENT AS RECORD_STATUS_NAME ,TT.TYPE_TEMPLATE_NAME AS TYPE_TEMPLATE_NAME
62
--	,CASE 
63
--		WHEN BR.[BRANCH_ID] IS NOT NULL THEN BR.[BRANCH_NAME]
64
--		ELSE (SELECT TOP 1 D.[BRANCH_NAME] + ' - ' + C.[DEP_NAME]
65
--				FROM CM_DEPARTMENT C 
66
--				LEFT JOIN CM_BRANCH D ON D.BRANCH_ID = C.BRANCH_ID
67
--				WHERE C.DEP_ID = A.BRANCH_ID)
68
--	 END AS	BRANCH_NAME
69
	,(BR.[BRANCH_NAME] + ' - ' + CD.[DEP_NAME]) AS BRANCH_NAME--NGUYENTD 17032024_SECRETKEY: FIX TÌM KIẾM THEO ĐƠN VỊ
70
	,U.TLFullName AS MAKER_FULLNAME
71
  ,AG.AUT_STATUS AUTH_STATUS_APP
72
	,AUTH.CONTENT AS AUTH_STATUS_APP_NAME
73
	,GR.USER_APPROVES
74
--	,STUFF((select ';' + SHARE_USERNAME from CM_TEMPLATE_SHARE WHERE REQ_ID=A.REQUEST_TEMPLATE_ID FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, '') AS SHARE_USER
75
,SHARE.SHARE_USERNAME
76
	-- SELECT END
77
	FROM CM_REQUEST_TEMPLATE A
78
	--LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS=B.AUTH_STATUS
79
	LEFT JOIN CM_ALLCODE C ON C.CDNAME = 'RECORD_STATUS' AND C.CDVAL = A.RECORD_STATUS 
80
	LEFT JOIN CM_TYPE_TEMPLATE TT ON TT.TYPE_TEMPLATE_ID=A.TYPE_TEMPLATE_ID
81
  --NGUYENTD 17032024_SECRETKEY: FIX TÌM KIẾM THEO ĐƠN VỊ TẠO
82
	LEFT JOIN CM_BRANCH BR ON BR.BRANCH_ID=(SELECT TOP 1 BRANCH_ID FROM CM_DEPARTMENT cd1 WHERE cd1.DEP_ID = A.BRANCH_ID)
83
	LEFT JOIN CM_DEPARTMENT CD ON CD.DEP_ID = A.BRANCH_ID
84
  --END NGUYENTD
85
	LEFT JOIN TL_USER U ON U.TLNANME=A.MAKER_ID
86
	--WORKFLOW
87
	LEFT JOIN 
88
	(
89
		SELECT G.REQ_ID,
90
		CASE 
91
			WHEN DONE=0 THEN 'U'
92
			WHEN DONE=1 THEN 'A'
93
		END AS AUT_STATUS 
94
		FROM CM_APPROVE_GROUP G 
95
		WHERE (DONE=1 OR PROCESS_STATUS=1) AND (@p_USER_LOGIN=APPROVE_USERNAME OR @p_USER_LOGIN=AUTHORITY_NAME)
96
	)	AG ON AG.REQ_ID=A.REQUEST_TEMPLATE_ID
97
	LEFT JOIN dbo.CM_ALLCODE AUTH ON AUTH.CDVAL = AG.AUT_STATUS AND AUTH.CDNAME = 'AUTH_STATUS_APP'
98
	LEFT JOIN dbo.CM_ALLCODE B ON B.CDVAL = A.AUTH_STATUS AND B.CDNAME = 'AUTH_STATUS_ONL'
99
--	LEFT JOIN (
100
--		SELECT A.REQ_ID,
101
--		STUFF( (select ';' + U.TLFullName from CM_APPROVE_GROUP G JOIN TL_USER U ON G.APPROVE_USERNAME=U.TLNANME WHERE REQ_ID=A.REQ_ID AND PROCESS_STATUS=1 AND DONE=0 AND [TYPE]='APP' FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, '') AS USER_APPROVES
102
--		FROM CM_APPROVE_GROUP A 
103
--		WHERE PROCESS_STATUS=1 AND DONE=0
104
--		GROUP BY REQ_ID
105
--	) GR ON GR.REQ_ID=A.REQUEST_TEMPLATE_ID
106
  --NGUYENTD 19082024_SECRETKEY:CHUYỂN TỪ JOIN SANG OUTER APPLY KHI CHỈ LẤY 1 BIẾN
107
  OUTER APPLY (
108
         select STRING_AGG(u.TLFullName, ';') USER_APPROVES from CM_APPROVE_GROUP G JOIN TL_USER U ON G.APPROVE_USERNAME=U.TLNANME 
109
         WHERE REQ_ID=A.REQUEST_TEMPLATE_ID AND PROCESS_STATUS=1 AND DONE=0 AND [TYPE]='APP'
110
    ) GR
111
	--END WORKFLOW
112
  OUTER APPLY(select STRING_AGG(SHARE_USERNAME,';') SHARE_USERNAME from CM_TEMPLATE_SHARE WHERE REQ_ID=A.REQUEST_TEMPLATE_ID) SHARE
113
	WHERE 1=1	
114
	AND (@p_REQUEST_TEMPLATE_CODE IS NULL OR @p_REQUEST_TEMPLATE_CODE='' OR REQUEST_TEMPLATE_CODE LIKE '%' + @p_REQUEST_TEMPLATE_CODE + '%') 
115
	AND (@p_REQUEST_TEMPLATE_NAME IS NULL OR @p_REQUEST_TEMPLATE_NAME='' OR REQUEST_TEMPLATE_NAME LIKE '%' + @p_REQUEST_TEMPLATE_NAME + '%') 
116
	AND (@p_TYPE_TEMPLATE_ID IS NULL OR @p_TYPE_TEMPLATE_ID='' OR A.TYPE_TEMPLATE_ID LIKE '%' + @p_TYPE_TEMPLATE_ID + '%') 
117
	AND (@p_NOTES IS NULL OR @p_NOTES='' OR A.NOTES = @p_NOTES) 
118
	AND (@p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS='' OR A.RECORD_STATUS = @p_RECORD_STATUS) 
119
	AND (@p_MAKER_ID IS NULL OR @p_MAKER_ID='' OR A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%') 
120
	AND (@p_CREATE_DT IS NULL OR DATEDIFF(DAYOFYEAR,A.CREATE_DT,CONVERT(datetime, @p_CREATE_DT,103)) = 0) 
121
	--(@p_MAKER_ID IS NULL OR @p_MAKER_ID='' OR MAKER_ID = @p_MAKER_ID) AND
122
	AND (@p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS='' OR A.AUTH_STATUS = @p_AUTH_STATUS) 
123
	AND (@p_CHECKER_ID IS NULL OR @p_CHECKER_ID='' OR A.CHECKER_ID = @p_CHECKER_ID) 
124
	AND (@p_APPROVE_DT IS NULL OR DATEDIFF(DAYOFYEAR,A.APPROVE_DT,CONVERT(datetime, @p_APPROVE_DT,103)) = 0)
125
	AND (A.REPORT_DT >= CONVERT(DATE,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE = '') 
126
	AND (A.REPORT_DT <= CONVERT(DATE,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE = '')
127
	AND (REPORT_DT=CONVERT(DATETIME,@p_REPORT_DT,103) OR @p_REPORT_DT IS NULL)
128
	AND (@p_MAKER_FULLNAME IS NULL OR @p_MAKER_FULLNAME='' OR U.TLFullName LIKE '%'+@p_MAKER_FULLNAME+'%' OR	U.TLNANME LIKE '%'+@p_MAKER_FULLNAME+'%')
129
	AND (@p_REPORT_NO IS NULL OR @p_REPORT_NO='' OR A.REPORT_NO LIKE '%'+@p_REPORT_NO+'%')
130
	AND (@p_AUTH_STATUS_APP IS NULL OR @p_AUTH_STATUS_APP='' OR AG.AUT_STATUS = @p_AUTH_STATUS_APP)
131
	AND (@p_TITLE IS NULL OR @p_TITLE='' OR A.TITLE LIKE '%'+@p_TITLE+'%')
132
	--WORKFLOW
133
	AND (@p_USER_APPROVES IS NULL OR @p_USER_APPROVES='' OR GR.USER_APPROVES LIKE '%'+@p_USER_APPROVES+'%')
134
	AND		(
135
				(A.MAKER_ID=@p_USER_LOGIN) 
136
				OR (@p_USER_LOGIN = 'baotq')--NGUYENTD 27122023_SECRETKEY: Y/C CỦA ANH BẢO
137
				OR (EXISTS(SELECT * FROM CM_APPROVE_GROUP WHERE REQ_ID=A.REQUEST_TEMPLATE_ID AND (APPROVE_USERNAME=@p_USER_LOGIN OR AUTHORITY_NAME=@p_USER_LOGIN) AND( DONE=1 OR PROCESS_STATUS=1 OR [TYPE]='AUT')	) )
138
				OR (@p_USER_LOGIN IN (SELECT SHARE_USERNAME FROM CM_TEMPLATE_SHARE  WHERE REQ_ID=A.REQUEST_TEMPLATE_ID)	)
139
				OR (EXISTS(SELECT top(1) 1 FROM #LIST_ROLE  USERROLE WHERE USERROLE.ROLE_ID = 'ADMIN_TO_TRINH'  ))
140
				--OR (dbo.FN_CHECK_ROLE_USER(@p_USER_LOGIN,'ADMIN_TO_TRINH')=1)
141
				OR (EXISTS	(SELECT top(1) 1 FROM #LIST_ROLE USERROLE WHERE USERROLE.ROLE_ID = 'GDDV' 
142
																										AND (
143
																												EXISTS(SELECT top(1) 1 FROM TL_USER US WHERE US.TLNANME = A.MAKER_ID AND (USERROLE.BRANCH_ID = US.TLSUBBRID OR USERROLE.DEPT_ID = US.DEP_ID) AND US.TLSUBBRID <> 'DV0001')
144
																												OR EXISTS(SELECT top(1) 1 FROM TL_USER US WHERE US.TLNANME = A.MAKER_ID AND USERROLE.DEPT_ID = US.DEP_ID)
145
																											)
146
							)
147
					)
148
			)
149
	AND ((A.RECORD_STATUS = '0' AND (A.MAKER_ID = @p_USER_LOGIN)) OR A.RECORD_STATUS = '1')
150
  --NGUYENTD 17032024_SECRETKEY: FIX TÌM KIẾM THEO ĐƠN VỊ TẠO
151
	AND (BR.BRANCH_ID LIKE '%'+ @p_BRANCH_ID + '%' OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '')
152
	AND (A.BRANCH_ID LIKE '%' + @p_DEP_ID +'%' OR @p_DEP_ID IS NULL OR @p_DEP_ID = '')
153
  --END NGUYENTD
154
	--END WORKFLOW
155
	ORDER BY A.CREATE_DT DESC
156
-- PAGING END
157
	END
158
	ELSE
159
	BEGIN	
160
	-- PAGING BEGIN
161
	SELECT TOP (@P_TOP) A.REQUEST_TEMPLATE_ID
162
                     ,A.REQUEST_TEMPLATE_NAME
163
                     ,A.REQUEST_TEMPLATE_CODE
164
                     ,A.NOTES
165
                     ,A.RECORD_STATUS
166
                     ,A.MAKER_ID
167
                     ,A.CREATE_DT
168
                     ,A.AUTH_STATUS
169
                     ,A.CHECKER_ID
170
                     ,A.APPROVE_DT
171
                     ,A.CREATE_LOCATION
172
                     ,A.HEADER
173
                     ,A.BRANCH_ID
174
                     ,A.REPORT_NO
175
                     ,A.TITLE
176
                     ,A.REPORT_DT
177
                     ,A.SCHEME
178
                     ,A.TYPE_TEMPLATE_ID
179
                     ,A.CURRENT_STEP
180
                     ,A.IS_SENT_APPROVE
181
                     ,A.IS_BACK_DATE,B.CONTENT AS AUTH_STATUS_NAME,C.CONTENT AS RECORD_STATUS_NAME
182
	,TT.TYPE_TEMPLATE_NAME AS TYPE_TEMPLATE_NAME
183
--	,CASE 
184
--		WHEN BR.[BRANCH_ID] IS NOT NULL THEN BR.[BRANCH_NAME]
185
--		ELSE (SELECT TOP 1 D.[BRANCH_NAME] + ' - ' + C.[DEP_NAME]
186
--				FROM CM_DEPARTMENT C 
187
--				LEFT JOIN CM_BRANCH D ON D.BRANCH_ID = C.BRANCH_ID
188
--				WHERE C.DEP_ID = A.BRANCH_ID)
189
--	 END AS	BRANCH_NAME
190
,(BR.[BRANCH_NAME] + ' - ' + CD.[DEP_NAME]) AS BRANCH_NAME
191
	,U.TLFullName AS MAKER_FULLNAME
192
  ,AG.AUT_STATUS AUTH_STATUS_APP
193
	,AUTH.CONTENT AS AUTH_STATUS_APP_NAME
194
	,GR.USER_APPROVES
195
--	,STUFF((select ';' + SHARE_USERNAME from CM_TEMPLATE_SHARE WHERE REQ_ID=A.REQUEST_TEMPLATE_ID FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, '') AS SHARE_USER
196
,SHARE.SHARE_USERNAME
197
	-- SELECT END
198
	FROM CM_REQUEST_TEMPLATE A
199
	--LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS=B.AUTH_STATUS
200
	LEFT JOIN CM_ALLCODE C ON C.CDNAME = 'RECORD_STATUS' AND C.CDVAL = A.RECORD_STATUS 
201
	LEFT JOIN CM_TYPE_TEMPLATE TT ON TT.TYPE_TEMPLATE_ID=A.TYPE_TEMPLATE_ID
202
  --NGUYENTD 17032024_SECRETKEY: FIX TÌM KIẾM THEO ĐƠN VỊ
203
	LEFT JOIN CM_BRANCH BR ON BR.BRANCH_ID=(SELECT TOP 1 BRANCH_ID FROM CM_DEPARTMENT cd1 WHERE cd1.DEP_ID = A.BRANCH_ID)
204
  LEFT JOIN CM_DEPARTMENT CD ON CD.DEP_ID = A.BRANCH_ID
205
  --END NGUYENTD
206
	LEFT JOIN TL_USER U ON U.TLNANME=A.MAKER_ID
207
	--WORKFLOW
208
	LEFT JOIN 
209
	(
210
		SELECT 
211
		G.REQ_ID
212
		,CASE 
213
		WHEN DONE=0 THEN 'U'
214
		WHEN DONE=1 THEN 'A'
215
		END AS AUT_STATUS 
216
		FROM CM_APPROVE_GROUP G WHERE (DONE=1 OR PROCESS_STATUS=1) AND (@p_USER_LOGIN=APPROVE_USERNAME OR @p_USER_LOGIN=AUTHORITY_NAME)
217
	)	AG ON AG.REQ_ID=A.REQUEST_TEMPLATE_ID
218
	LEFT JOIN dbo.CM_ALLCODE AUTH ON AUTH.CDVAL = AG.AUT_STATUS AND AUTH.CDNAME = 'AUTH_STATUS_APP'
219
	LEFT JOIN dbo.CM_ALLCODE B ON B.CDVAL = A.AUTH_STATUS AND B.CDNAME = 'AUTH_STATUS_ONL'
220
  OUTER APPLY (
221
         select STRING_AGG(u.TLFullName, ';') USER_APPROVES from CM_APPROVE_GROUP G JOIN TL_USER U ON G.APPROVE_USERNAME=U.TLNANME 
222
         WHERE REQ_ID=A.REQUEST_TEMPLATE_ID AND PROCESS_STATUS=1 AND DONE=0 AND [TYPE]='APP'
223
    ) GR --NGUYENTD 19082024_SECRETKEY: 
224
	--END WORKFLOW
225
  OUTER APPLY(select STRING_AGG(SHARE_USERNAME,';') SHARE_USERNAME from CM_TEMPLATE_SHARE WHERE REQ_ID=A.REQUEST_TEMPLATE_ID) SHARE --NGUYENTD 19082024_SECRETKEY: CHUYỂN TỪ XML SANG STRING_AGG
226
	WHERE 1=1	AND
227
	(@p_REQUEST_TEMPLATE_CODE IS NULL OR @p_REQUEST_TEMPLATE_CODE='' OR REQUEST_TEMPLATE_CODE LIKE '%' + @p_REQUEST_TEMPLATE_CODE + '%') AND
228
	(@p_REQUEST_TEMPLATE_NAME IS NULL OR @p_REQUEST_TEMPLATE_NAME='' OR REQUEST_TEMPLATE_NAME LIKE '%' + @p_REQUEST_TEMPLATE_NAME + '%') AND
229
	(@p_TYPE_TEMPLATE_ID IS NULL OR @p_TYPE_TEMPLATE_ID='' OR A.TYPE_TEMPLATE_ID LIKE '%' + @p_TYPE_TEMPLATE_ID + '%') AND
230
	(@p_NOTES IS NULL OR @p_NOTES='' OR A.NOTES = @p_NOTES) AND
231
	(@p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS='' OR A.RECORD_STATUS = @p_RECORD_STATUS) AND
232
	(@p_MAKER_ID IS NULL OR @p_MAKER_ID='' OR A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%') AND
233
	--(@p_MAKER_ID IS NULL OR @p_MAKER_ID='' OR MAKER_ID = @p_MAKER_ID) AND
234
	(@p_CREATE_DT IS NULL OR DATEDIFF(DAYOFYEAR,A.CREATE_DT,CONVERT(datetime, @p_CREATE_DT,103)) = 0) AND
235
	(@p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS='' OR A.AUTH_STATUS = @p_AUTH_STATUS) AND
236
	(@p_CHECKER_ID IS NULL OR @p_CHECKER_ID='' OR A.CHECKER_ID = @p_CHECKER_ID) AND
237
	(@p_APPROVE_DT IS NULL OR DATEDIFF(DAYOFYEAR,A.APPROVE_DT,CONVERT(datetime, @p_APPROVE_DT,103)) = 0)
238
	AND (A.REPORT_DT >= CONVERT(DATE,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE = '') 
239
	AND (A.REPORT_DT <= CONVERT(DATE,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE = '')
240
	AND(REPORT_DT=CONVERT(DATETIME,@p_REPORT_DT,103) OR @p_REPORT_DT IS NULL)
241
	AND(@p_MAKER_FULLNAME IS NULL OR @p_MAKER_FULLNAME='' OR U.TLFullName LIKE '%'+@p_MAKER_FULLNAME+'%' OR	U.TLNANME LIKE '%'+@p_MAKER_FULLNAME+'%')
242
	AND(@p_REPORT_NO IS NULL OR @p_REPORT_NO='' OR A.REPORT_NO LIKE '%'+@p_REPORT_NO+'%')
243
	AND(@p_AUTH_STATUS_APP IS NULL OR @p_AUTH_STATUS_APP='' OR AG.AUT_STATUS = @p_AUTH_STATUS_APP)
244
	AND(@p_TITLE IS NULL OR @p_TITLE='' OR A.TITLE LIKE '%'+@p_TITLE+'%')
245
	--WORKFLOW
246
	AND (@p_USER_APPROVES IS NULL OR @p_USER_APPROVES='' OR GR.USER_APPROVES LIKE '%'+@p_USER_APPROVES+'%')
247
	AND (
248
		(A.MAKER_ID=@p_USER_LOGIN) 
249
    OR (@p_USER_LOGIN = 'baotq')--NGUYENTD 27122023_SECRETKEY: Y/C CỦA ANH BẢO
250
		OR (EXISTS(SELECT * FROM CM_APPROVE_GROUP WHERE REQ_ID=A.REQUEST_TEMPLATE_ID AND (APPROVE_USERNAME=@p_USER_LOGIN OR AUTHORITY_NAME=@p_USER_LOGIN) AND( DONE=1 OR PROCESS_STATUS=1 OR [TYPE]='AUT')	) )
251
		OR (@p_USER_LOGIN IN (SELECT SHARE_USERNAME FROM CM_TEMPLATE_SHARE  WHERE REQ_ID=A.REQUEST_TEMPLATE_ID)	)
252
		OR (EXISTS(SELECT top(1) 1 FROM #LIST_ROLE USERROLE WHERE USERROLE.ROLE_ID = 'ADMIN_TO_TRINH'  ))
253
		--OR (dbo.FN_CHECK_ROLE_USER(@p_USER_LOGIN,'ADMIN_TO_TRINH')=1)
254
		OR (EXISTS(SELECT * FROM #LIST_ROLE USERROLE WHERE USERROLE.ROLE_ID = 'GDDV' 
255
																							AND (
256
																									EXISTS(SELECT * FROM TL_USER US WHERE US.TLNANME = A.MAKER_ID AND (USERROLE.BRANCH_ID = US.TLSUBBRID OR USERROLE.DEPT_ID = US.DEP_ID) AND US.TLSUBBRID <> 'DV0001')
257
																									OR EXISTS(SELECT * FROM TL_USER US WHERE US.TLNANME = A.MAKER_ID AND USERROLE.DEPT_ID = US.DEP_ID)
258
																								)
259
				  )
260
			)
261
	)
262
	AND ((A.RECORD_STATUS = '0' AND (A.MAKER_ID = @p_USER_LOGIN)) OR A.RECORD_STATUS = '1')
263
  AND (BR.BRANCH_ID LIKE '%'+ @p_BRANCH_ID + '%' OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '')
264
  AND (A.BRANCH_ID LIKE '%' + @p_DEP_ID +'%' OR @p_DEP_ID IS NULL OR @p_DEP_ID = '')
265
	--END WORKFLOW
266
	ORDER BY A.CREATE_DT DESC
267
	-- PAGING END
268
	END
269
END -- PAGING