Project

General

Profile

2.4.TL USER SEARCH.txt

Luc Tran Van, 10/19/2022 09:29 AM

 
1

    
2
/*
3
[dbo].[TL_USER_Search]
4
@p_TLID	= NULL,
5
@p_TLNANME	 = '',
6
@p_Password	 = '',
7
@p_TLFullName   = NULL,
8
@p_TLSUBBRID	= 'DV0001',
9
@p_BRANCH_NAME	 = NULL,
10
@p_BRANCH_TYPE	= NULL,
11
@p_RoleName	 = NULL,
12
@p_EMAIL	 = NULL,
13
@p_ADDRESS	= NULL,
14
@p_PHONE	 = NULL,
15
@p_AUTH_STATUS  = NULL,
16
@p_MARKER_ID	 = NULL,
17
@p_AUTH_ID	 = NULL,
18
@p_APPROVE_DT	= NULL,
19
@p_ISAPPROVE	  = NULL,
20
@p_Birthday	 = NULL,
21
@p_ISFIRSTTIME	  = NULL,
22
@p_SECUR_CODE	 = NULL,
23
@p_TOP	= 100,
24
@p_Level = 'unit'
25

    
26
*/
27
ALTER   PROCEDURE [dbo].[TL_USER_Search]
28
@p_TLID	varchar(15)  = NULL,
29
@p_TLNANME	varchar(15)  = NULL,
30
@p_Password	varchar(50)  = NULL,
31
@p_TLFullName	nvarchar(200)  = NULL,
32
@p_TLSUBBRID	varchar(15)  = NULL,
33
@p_BRANCH_NAME	nvarchar(200)  = NULL,
34
@p_BRANCH_TYPE	varchar(5)  = NULL,
35
@p_RoleName	varchar(20)  = NULL,
36
@p_EMAIL	varchar(50)  = NULL,
37
@p_ADDRESS	varchar(100)  = NULL,
38
@p_PHONE	varchar(15)  = NULL,
39
@p_AUTH_STATUS	varchar(1)  = NULL,
40
@p_MARKER_ID	varchar(12)  = NULL,
41
@p_AUTH_ID	varchar(12)  = NULL,
42
@p_APPROVE_DT	VARCHAR(20) = NULL,
43
@p_ISAPPROVE	varchar(1)  = NULL,
44
@p_Birthday	VARCHAR(20) = NULL,
45
@p_ISFIRSTTIME	varchar(1)  = NULL,
46
@p_SECUR_CODE	varchar(50)  = NULL,
47
@p_DEP_ID	varchar(15)  = NULL,
48
@p_TOP	INT = 10,
49
@P_LEVEL varchar(10) = NULL
50
AS
51
	--Validation is here
52
/*
53
	DECLARE @ERRORSYS NVARCHAR(15) = '' 
54
	IF ( [NOT] EXISTS ( SELECT * FROM [TABLE] WHERE  [CONDITION] ))
55
		 SET @ERRORSYS = ''
56
	IF @ERRORSYS <> '' 
57
	BEGIN
58
		SELECT ErrorCode Result, ''  CAR_ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
59
		RETURN '0'
60
	END */
61

    
62
BEGIN -- PAGING
63

    
64
BEGIN TRANSACTION
65

    
66
-- Toannv
67
declare @tmp table(BRANCH_ID varchar(15))
68
insert into @tmp  SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_TLSUBBRID)
69

    
70

    
71
IF(@p_TOP IS NULL OR @P_TOP = '' OR @P_TOP = 0)
72
-- PAGING BEGIN
73
	SELECT A.*, B.AUTH_STATUS_NAME,D.BRANCH_ID, D.BRANCH_CODE,
74
			DE.DEP_NAME,DE.DEP_CODE,
75
			dbo.FN_GET_CHINHANH(D.BRANCH_ID,'KV') KHU_VUC,
76
			dbo.FN_GET_CHINHANH(D.BRANCH_ID,'CN') CHI_NHANH, 
77
			D.BRANCH_NAME PGD, D.TAX_NO,E.POS_NAME, E.EMP_CODE,
78
			--STUFF( (select ',' + R.[Name] FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, '') RoleName2
79
			T.RoleName2
80
			, CMA.ACC_NUM, CMA.ACC_NAME, CMA.ACC_TYPE,
81
			D.BRANCH_NAME AS BR_NAME, D.BRANCH_CODE + '-'+ D.BRANCH_NAME AS BR_FULL_NAME,
82
		    DE.DEP_CODE +'-'+ DE.DEP_NAME AS DP_FULL_NAME
83
	-- SELECT END
84
	FROM TL_USER A
85
		INNER JOIN CM_AUTH_STATUS B ON B.AUTH_STATUS = A.AUTH_STATUS
86
		LEFT JOIN CM_BRANCH D ON  A.TLSUBBRID = D.BRANCH_ID
87
		LEFT JOIN CM_DEPARTMENT DE ON A.DEP_ID = DE.DEP_ID
88
		--LEFT JOIN AbpUserRoles UR  ON A.ID = UR.UserId
89
		--LEFT JOIN AbpRoles R ON R.Id = UR.RoleId
90
		-- GIANT 16/09/2021
91
		LEFT JOIN CM_EMPLOYEE_LOG E ON A.TLNANME = E.USER_DOMAIN
92
		LEFT JOIN CM_ACCOUNT_PAY CMA ON A.TLNANME = CMA.REF_ID
93
		INNER JOIN
94
			(SELECT A2.ID,
95
				(SELECT stuff((SELECT ',' + CONVERT(VARCHAR(MAX),R1.[DisplayName])
96
				FROM TL_USER A1
97
					LEFT JOIN AbpUserRoles UR1  ON A1.ID = UR1.UserId
98
					LEFT JOIN AbpRoles R1 ON R1.Id = UR1.RoleId
99
				WHERE A1.ID=A2.ID
100
				FOR XML PATH ('')
101
				), 1, 1, '')) AS [RoleName2]
102
			FROM TL_USER A2
103
			GROUP BY A2.ID) T ON T.ID=A.ID
104

    
105
	 WHERE 1 = 1
106
		AND (A.TLID LIKE '%' + @p_TLID + '%' OR  @p_TLID IS NULL OR @p_TLID = '')
107
		AND (A.TLNANME LIKE '%' + @p_TLNANME + '%' OR  @p_TLNANME IS NULL OR @p_TLNANME = '')
108
		AND (A.Password LIKE '%' + @p_Password + '%' OR  @p_Password IS NULL OR @p_Password = '')
109
		AND (A.TLFullName LIKE '%' + @p_TLFullName + '%' OR  @p_TLFullName IS NULL OR @p_TLFullName = '')
110
		--AND (A.TLSUBBRID LIKE '%' + @p_TLSUBBRID + '%' OR  @p_TLSUBBRID IS NULL OR @p_TLSUBBRID = '')
111
		AND (A.BRANCH_NAME LIKE '%' + @p_BRANCH_NAME + '%' OR  @p_BRANCH_NAME IS NULL OR @p_BRANCH_NAME = '')
112
		AND (A.BRANCH_TYPE LIKE '%' + @p_BRANCH_TYPE + '%' OR  @p_BRANCH_TYPE IS NULL OR @p_BRANCH_TYPE = '')
113
		AND (A.RoleName LIKE '%' + @p_RoleName + '%' OR  @p_RoleName IS NULL OR @p_RoleName = '')
114
		AND (
115
			(A.DEP_ID LIKE '%' + @p_DEP_ID + '%'
116
				--OR (SELECT TOP 1 TRM.DEP_ID FROM TL_SYS_ROLE_MAPPING TRM 
117
				--	WHERE TRM.TLNAME = A.TLNANME 
118
				--	AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
119
				--	) LIKE '%' + @p_DEP_ID + '%'
120
				----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
121
				OR EXISTS(SELECT * FROM TL_SYS_ROLE_MAPPING TRM 
122
							WHERE TRM.TLNAME = A.TLNANME 
123
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
124
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
125
							AND TRM.DEP_ID = @p_DEP_ID
126
					)
127
			) 
128
			OR  @p_DEP_ID IS NULL OR @p_DEP_ID = ''
129
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_SECUR_CODE))
130
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_DEP_ID))
131

    
132
		)
133
		AND (A.EMAIL LIKE '%' + @p_EMAIL + '%' OR  @p_EMAIL IS NULL OR @p_EMAIL = '')
134
		AND (A.ADDRESS LIKE '%' + @p_ADDRESS + '%' OR  @p_ADDRESS IS NULL OR @p_ADDRESS = '')
135
		AND (A.PHONE LIKE '%' + @p_PHONE + '%' OR  @p_PHONE IS NULL OR @p_PHONE = '')
136
		AND (A.AUTH_STATUS LIKE '%' + @p_AUTH_STATUS + '%' OR  @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
137
		AND (A.MARKER_ID LIKE '%' + @p_MARKER_ID + '%' OR  @p_MARKER_ID IS NULL OR @p_MARKER_ID = '')
138
		AND (A.AUTH_ID LIKE '%' + @p_AUTH_ID + '%' OR  @p_AUTH_ID IS NULL OR @p_AUTH_ID = '')
139
		AND (DATEDIFF(DAY,A.APPROVE_DT ,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR  @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')
140
		AND (A.ISAPPROVE LIKE '%' + @p_ISAPPROVE + '%' OR  @p_ISAPPROVE IS NULL OR @p_ISAPPROVE = '')
141
		AND (DATEDIFF(DAY,A.Birthday ,CONVERT(DATETIME, @p_Birthday, 103)) = 0 OR  @p_Birthday IS NULL OR @p_Birthday = '')
142
		AND (A.ISFIRSTTIME LIKE '%' + @p_ISFIRSTTIME + '%' OR  @p_ISFIRSTTIME IS NULL OR @p_ISFIRSTTIME = '')
143
		AND (
144
			(A.SECUR_CODE LIKE '%' + @p_SECUR_CODE + '%'
145
				--OR (SELECT TOP 1 TRM.DEP_ID FROM TL_SYS_ROLE_MAPPING TRM 
146
				--	WHERE TRM.TLNAME = A.TLNANME 
147
				--	AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
148
				--	) LIKE '%' + @p_SECUR_CODE + '%'
149
				----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
150
				OR EXISTS(SELECT * FROM TL_SYS_ROLE_MAPPING TRM 
151
							WHERE TRM.TLNAME = A.TLNANME 
152
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
153
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
154
							AND TRM.DEP_ID = @p_SECUR_CODE
155
					)
156
			) 
157
			OR  @p_SECUR_CODE IS NULL OR @p_SECUR_CODE = ''
158

    
159
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_SECUR_CODE))
160
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_DEP_ID))
161
		)
162
		AND (A.TLNANME != 'admin')
163
		--AND (A.TLSUBBRID IN (SELECT BRANCH_ID FROM  CM_BRANCH_GETCHILDID(@p_TLSUBBRID)))
164
		--AND ((@P_LEVEL = 'ALL' AND A.TLSUBBRID IN (SELECT BRANCH_ID from @tmp)
165
		--OR (@P_LEVEL = 'UNIT' AND A.TLSUBBRID = @p_TLSUBBRID)) OR @p_TLSUBBRID = '' OR @p_TLSUBBRID IS NULL
166

    
167
		--)
168
		AND(
169
			(@P_LEVEL = 'ALL'
170
				AND (A.TLSUBBRID IN (SELECT BRANCH_ID from @tmp)
171
					--OR (SELECT TOP 1 TRM.BRANCH_ID
172
					--		FROM TL_SYS_ROLE_MAPPING TRM
173
					--		WHERE TRM.TLNAME = A.TLNANME
174
					--		AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
175
					--	) IN (SELECT BRANCH_ID from @tmp)
176
					----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
177
					OR EXISTS(SELECT *
178
							FROM TL_SYS_ROLE_MAPPING TRM
179
							WHERE TRM.TLNAME = A.TLNANME
180
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
181
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
182
							AND TRM.BRANCH_ID IN (SELECT BRANCH_ID from @tmp)
183
						)
184
					)
185
			)
186
			OR(@P_LEVEL = 'UNIT'
187
				AND (A.TLSUBBRID = @p_TLSUBBRID
188
					--OR (SELECT TOP 1 TRM.BRANCH_ID
189
					--		FROM TL_SYS_ROLE_MAPPING TRM
190
					--		WHERE TRM.TLNAME = A.TLNANME
191
					--		AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
192
					--	) = @p_TLSUBBRID
193
					----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
194
					OR EXISTS(SELECT *
195
							FROM TL_SYS_ROLE_MAPPING TRM
196
							WHERE TRM.TLNAME = A.TLNANME
197
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
198
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
199
							AND TRM.BRANCH_ID = @p_TLSUBBRID
200
						)
201
					)
202
			)
203
			OR @p_TLSUBBRID = '' OR @p_TLSUBBRID IS NULL
204
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_SECUR_CODE))
205
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_DEP_ID))
206
		)
207
	-- PAGING END
208
ELSE
209

    
210
-- PAGING BEGIN
211
	SELECT TOP(CONVERT(INT,@P_TOP))A.*, B.AUTH_STATUS_NAME,D.BRANCH_ID, D.BRANCH_CODE,
212
				DE.DEP_NAME,DE.DEP_CODE,
213
				dbo.FN_GET_CHINHANH(D.BRANCH_ID,'KV') KHU_VUC,
214
				dbo.FN_GET_CHINHANH(D.BRANCH_ID,'CN') CHI_NHANH, 
215
				D.BRANCH_NAME PGD, D.TAX_NO,E.POS_NAME, E.EMP_CODE,
216
				--STUFF( (select ',' + R.[Name] FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, '') RoleName2
217
				T.RoleName2, CMA.ACC_NUM, CMA.ACC_NAME, CMA.ACC_TYPE,
218
				D.BRANCH_NAME AS BR_NAME, D.BRANCH_CODE + '-'+ D.BRANCH_NAME AS BR_FULL_NAME,
219
				DE.DEP_CODE +'-'+ DE.DEP_NAME AS DP_FULL_NAME
220
			-- SELECT END
221
	FROM TL_USER A
222
		INNER JOIN CM_AUTH_STATUS B ON B.AUTH_STATUS = A.AUTH_STATUS
223
		LEFT JOIN CM_BRANCH D ON  D.BRANCH_ID = A.TLSUBBRID
224
		LEFT JOIN CM_DEPARTMENT DE ON A.DEP_ID = DE.DEP_ID
225
		--LEFT JOIN AbpUserRoles UR  ON A.ID = UR.UserId
226
		--LEFT JOIN AbpRoles R ON R.Id = UR.RoleId
227
		-- GIANT 16/09/2021
228
		LEFT JOIN CM_EMPLOYEE_LOG E ON A.TLNANME = E.USER_DOMAIN
229
		LEFT JOIN CM_ACCOUNT_PAY CMA ON A.TLNANME = CMA.REF_ID
230
		INNER JOIN
231
			(SELECT A2.ID,
232
				(SELECT stuff((SELECT ',' + CONVERT(VARCHAR(MAX),R1.[DisplayName])
233
				FROM TL_USER A1
234
					LEFT JOIN AbpUserRoles UR1  ON A1.ID = UR1.UserId
235
					LEFT JOIN AbpRoles R1 ON R1.Id = UR1.RoleId
236
				WHERE A1.ID=A2.ID
237
				FOR XML PATH ('')
238
				), 1, 1, '')) AS [RoleName2]
239
			FROM TL_USER A2
240
			GROUP BY A2.ID) T ON T.ID=A.ID
241

    
242
	 WHERE 1 = 1
243
		AND (A.TLID LIKE '%' + @p_TLID + '%' OR  @p_TLID IS NULL OR @p_TLID = '')
244
		AND (A.TLNANME LIKE '%' + @p_TLNANME + '%' OR  @p_TLNANME IS NULL OR @p_TLNANME = '')
245
		AND (A.Password LIKE '%' + @p_Password + '%' OR  @p_Password IS NULL OR @p_Password = '')
246
		AND (A.TLFullName LIKE '%' + @p_TLFullName + '%' OR  @p_TLFullName IS NULL OR @p_TLFullName = '')
247
		--AND (A.TLSUBBRID LIKE '%' + @p_TLSUBBRID + '%' OR  @p_TLSUBBRID IS NULL OR @p_TLSUBBRID = '')
248
		AND (A.BRANCH_NAME LIKE '%' + @p_BRANCH_NAME + '%' OR  @p_BRANCH_NAME IS NULL OR @p_BRANCH_NAME = '')
249
		AND (A.BRANCH_TYPE LIKE '%' + @p_BRANCH_TYPE + '%' OR  @p_BRANCH_TYPE IS NULL OR @p_BRANCH_TYPE = '')
250
		AND (A.RoleName LIKE '%' + @p_RoleName + '%' OR  @p_RoleName IS NULL OR @p_RoleName = '')
251
		AND (A.EMAIL LIKE '%' + @p_EMAIL + '%' OR  @p_EMAIL IS NULL OR @p_EMAIL = '')
252
		AND (A.ADDRESS LIKE '%' + @p_ADDRESS + '%' OR  @p_ADDRESS IS NULL OR @p_ADDRESS = '')
253
		AND (A.PHONE LIKE '%' + @p_PHONE + '%' OR  @p_PHONE IS NULL OR @p_PHONE = '')
254
		AND (A.AUTH_STATUS LIKE '%' + @p_AUTH_STATUS + '%' OR  @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
255
		AND (A.MARKER_ID LIKE '%' + @p_MARKER_ID + '%' OR  @p_MARKER_ID IS NULL OR @p_MARKER_ID = '')
256
		AND (A.AUTH_ID LIKE '%' + @p_AUTH_ID + '%' OR  @p_AUTH_ID IS NULL OR @p_AUTH_ID = '')
257
		AND (DATEDIFF(DAY,A.APPROVE_DT ,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR  @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')
258
		AND (A.ISAPPROVE LIKE '%' + @p_ISAPPROVE + '%' OR  @p_ISAPPROVE IS NULL OR @p_ISAPPROVE = '')
259
		AND (DATEDIFF(DAY,A.Birthday ,CONVERT(DATETIME, @p_Birthday, 103)) = 0 OR  @p_Birthday IS NULL OR @p_Birthday = '')
260
		AND (A.ISFIRSTTIME LIKE '%' + @p_ISFIRSTTIME + '%' OR  @p_ISFIRSTTIME IS NULL OR @p_ISFIRSTTIME = '')
261
		AND (
262
			(A.SECUR_CODE LIKE '%' + @p_SECUR_CODE + '%'
263
				--OR (SELECT TOP 1 TRM.DEP_ID FROM TL_SYS_ROLE_MAPPING TRM 
264
				--	WHERE TRM.TLNAME = A.TLNANME 
265
				--	AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
266
				--	) LIKE '%' + @p_SECUR_CODE + '%'
267
				----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
268
				OR EXISTS(SELECT * FROM TL_SYS_ROLE_MAPPING TRM 
269
							WHERE TRM.TLNAME = A.TLNANME 
270
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
271
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
272
							AND TRM.DEP_ID = @p_SECUR_CODE
273
					)
274

    
275
			) 
276
			OR  @p_SECUR_CODE IS NULL OR @p_SECUR_CODE = ''
277
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_SECUR_CODE))
278
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_DEP_ID))
279
		)
280
		AND (A.TLNANME != 'admin')
281
		--AND (A.TLSUBBRID IN (SELECT BRANCH_ID FROM  CM_BRANCH_GETCHILDID(@p_TLSUBBRID)))
282
		--AND ((@P_LEVEL = 'ALL' AND A.TLSUBBRID IN (SELECT BRANCH_ID from @tmp)
283
		--OR (@P_LEVEL = 'UNIT' AND A.TLSUBBRID = @p_TLSUBBRID)) OR @p_TLSUBBRID = '' OR @p_TLSUBBRID IS NULL
284

    
285
		--)
286
		AND(
287
			(@P_LEVEL = 'ALL'
288
				AND (A.TLSUBBRID IN (SELECT BRANCH_ID from @tmp)
289
					--OR (SELECT TOP 1 TRM.BRANCH_ID
290
					--		FROM TL_SYS_ROLE_MAPPING TRM
291
					--		WHERE TRM.TLNAME = A.TLNANME
292
					--		AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
293
					--	) IN (SELECT BRANCH_ID from @tmp)
294
					----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
295
					OR EXISTS(SELECT *
296
							FROM TL_SYS_ROLE_MAPPING TRM
297
							WHERE TRM.TLNAME = A.TLNANME
298
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
299
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
300
							AND TRM.BRANCH_ID IN (SELECT BRANCH_ID from @tmp)
301
						)
302
					)
303
			)
304
			OR(@P_LEVEL = 'UNIT'
305
				AND (A.TLSUBBRID = @p_TLSUBBRID
306
					--OR (SELECT TOP 1 TRM.BRANCH_ID
307
					--		FROM TL_SYS_ROLE_MAPPING TRM
308
					--		WHERE TRM.TLNAME = A.TLNANME
309
					--		AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
310
					--	) = @p_TLSUBBRID
311
					----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
312
					OR EXISTS(SELECT *
313
							FROM TL_SYS_ROLE_MAPPING TRM
314
							WHERE TRM.TLNAME = A.TLNANME
315
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
316
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
317
							AND TRM.BRANCH_ID = @p_TLSUBBRID
318
						)
319
					)
320
			)
321
			OR @p_TLSUBBRID = '' OR @p_TLSUBBRID IS NULL
322
		)
323
		----------BAODNQ 22/3/2022 : Thêm điều kiện search theo phòng ban------
324
		AND (
325
			(A.DEP_ID LIKE '%' + @p_DEP_ID + '%' 
326
				--OR (SELECT TOP 1 TRM.DEP_ID FROM TL_SYS_ROLE_MAPPING TRM 
327
				--	WHERE TRM.TLNAME = A.TLNANME 
328
				--	AND GETDATE() >= TRM.EFF_DATE AND GETDATE() <= TRM.EXP_DATE
329
				--	) LIKE '%' + @p_DEP_ID + '%'
330
				----------BAODNQ 30/9/2022 : Thêm xử lý tìm kiếm ủy quyền kiêm nhiệm--------
331
				OR EXISTS(SELECT * FROM TL_SYS_ROLE_MAPPING TRM 
332
							WHERE TRM.TLNAME = A.TLNANME 
333
							AND CONVERT(DATE,GETDATE(),103) >= TRM.EFF_DATE 
334
							AND CONVERT(DATE,GETDATE(),103) <= TRM.EXP_DATE
335
							AND TRM.DEP_ID = @p_DEP_ID
336
					)
337
			) 
338
			OR  @p_DEP_ID IS NULL OR @p_DEP_ID = ''
339
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_SECUR_CODE))
340
			OR (A.SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@p_DEP_ID))
341
		)
342
	-- PAGING END
343
COMMIT TRANSACTION
344

    
345

    
346
END -- PAGING