Project

General

Profile

upd_Search.txt

Luc Tran Van, 03/01/2023 09:50 AM

 
1

    
2
ALTER   PROCEDURE [dbo].[TR_REQ_PAYMENT_Search]
3
@p_REQ_PAY_ID	varchar(15)= NULL,
4
@p_REQ_PAY_CODE	varchar(50)	= NULL,
5
@p_REQ_DT VARCHAR(20)= NULL,
6
@p_BRANCH_ID	varchar(15)	= NULL,
7
@p_DEP_ID	varchar(15)	= NULL,
8
@p_REQ_REASON	nvarchar(MAX)	= NULL,
9
@p_REQ_TYPE	varchar(15)	= NULL,
10
@P_REQ_ENTRIES nvarchar(MAX)	= NULL,
11
@p_REQ_DESCRIPTION	nvarchar(MAX)	= NULL,
12
@p_REF_ID	varchar(15)	= NULL,
13
@p_RECEIVER_PO	nvarchar(250)	= NULL,
14
@p_REQ_PAY_TYPE	varchar(15)	= NULL,
15
@p_REQ_TYPE_CURRENCY	nvarchar(50)	= NULL,
16
@p_REQ_AMT	decimal(18, 0)	= NULL,
17
@p_REQ_TEMP_AMT	decimal(18, 0)	= NULL,
18
@p_MAKER_ID	varchar(15)	= NULL,
19
@p_CREATE_DT	varchar(25)	= NULL,
20
@p_EDITOR_ID	varchar(15)	= NULL,
21
@p_AUTH_STATUS	varchar(1)	= NULL,
22
@p_CHECKER_ID	varchar(15)	= NULL,
23
@p_APPROVE_DT	varchar(25)	= NULL,
24
@p_CREATE_DT_KT	varchar(25)	= NULL,
25
@p_MAKER_ID_KT	varchar(15)	= NULL,
26
@p_AUTH_STATUS_KT	varchar(1)	= NULL,
27
@p_CHECKER_ID_KT	nvarchar(20)	= NULL,
28
@p_EXEC_USER_KT	nvarchar(20)	= NULL,
29
@p_APPROVE_DT_KT  varchar(25)= null,
30
@p_CONFIRM_NOTE	nvarchar(500)	= NULL,
31
@p_BRANCH_CREATE	varchar(15)	= NULL,
32
@p_NOTES	varchar(15)	= NULL,
33
@p_RECORD_STATUS	varchar(1)	= NULL,
34
@p_TRANSFER_MAKER	nvarchar(50)	= NULL,
35
@p_TRANSFER_DT	varchar(25)	= NULL,
36
@p_TRASFER_USER_RECIVE	varchar(15)	= NULL,
37
@p_PROCESS	varchar(15)	= NULL,
38
@p_PAY_PHASE VARCHAR(15) = NULL,
39
@p_TOP INT = 300,
40
@p_LEVEL varchar(10) = NULL,
41
@p_FRMDATE VARCHAR(20)= NULL,
42
@p_TODATE VARCHAR(20) = NULL,
43
@p_BRANCH_LOGIN VARCHAR(15) = NULL,
44
@p_IS_UPDATE_KT VARCHAR(15) = NULL,
45
@P_IS_TRANSFER VARCHAR(15) = NULL,
46
@p_TERM_ID VARCHAR(15) = NULL,
47
@P_USER_LOGIN VARCHAR(15)= NULL,
48
@p_FUNCTION VARCHAR(15) = NULL,
49
@p_TYPE_SEARCH VARCHAR(15) = NULL
50
AS
51
BEGIN -- PAGING
52
--SET @p_TOP = NULL
53
IF(ISNULL(@p_REQ_PAY_ID, '') <> '')
54
BEGIN
55
	SET @p_DEP_ID = NULL
56
END
57
declare @tmp table(BRANCH_ID varchar(15))
58
insert into @tmp  SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_ID)
59
declare @tmp_Login table(BRANCH_ID varchar(15))
60
insert into @tmp_Login  SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_LOGIN)
61
DECLARE @ROLE_ID VARCHAR(20) , @DEP_ID_LG VARCHAR(15) = NULL, @COST_LG VARCHAR(15), @DVDM_ID VARCHAR(15)
62
DECLARE @BRANCH_TYPE VARCHAR(15)
63
SET @BRANCH_TYPE =(SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID=(SELECT BRANCH_ID FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =@p_REQ_PAY_ID))
64
SET @ROLE_ID = (SELECT ROLENAME FROM TL_USER WHERE TLNANME=@p_USER_LOGIN)
65
SET @DEP_ID_LG =(SELECT SECUR_CODE FROM TL_USER WHERE TLNANME=@p_USER_LOGIN)
66
DECLARE @TMP_DEP TABLE(DEP_ID VARCHAR(15))
67
SET @COST_LG =(SELECT TOP 1 COST_ID FROM PL_COSTCENTER_DT WHERE DEP_ID =@DEP_ID_LG)
68
SET @DVDM_ID =(SELECT TOP 1 DVDM_ID FROM PL_COSTCENTER WHERE COST_ID =@COST_LG)
69
INSERT INTO @TMP_DEP SELECT B.DEP_ID FROM PL_COSTCENTER_DT B  WHERE COST_ID =@COST_LG
70
DECLARE @BRANCH_TYPE_LG VARCHAR(15)
71
SET @BRANCH_TYPE_LG = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID=@p_BRANCH_LOGIN)
72
-- KHAI BAO NHUNG PHONG BAN MA 1 USER KIEM NHIEM
73
DECLARE @TABLE_ROLE TABLE (ROLE_AUTH VARCHAR(50))  
74
INSERT INTO @TABLE_ROLE VALUES (@ROLE_ID)
75
INSERT INTO @TABLE_ROLE SELECT ROLE_NEW FROM TL_SYS_ROLE_MAPPING WHERE ROLE_OLD =@ROLE_ID AND TLNAME =@P_USER_LOGIN  
76
AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
77
AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='') 
78
DECLARE @DEP_AUTH TABLE (DEP_AUTH VARCHAR(15))
79
INSERT INTO @DEP_AUTH VALUES (@DEP_ID_LG)
80
INSERT INTO @DEP_AUTH SELECT DEP_ID FROM TL_SYS_ROLE_MAPPING WHERE TLNAME =@P_USER_LOGIN AND 
81
CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) AND CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103)
82
--- LUCTV 19.10.2022 BO SUNG THEM PHONG BAN CHA SE THAY DANH SACH PHONG BAN CON
83
INSERT INTO @DEP_AUTH SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@DEP_ID_LG
84
-- KHAI BAO PHẦN ỦY QUYỀN ĐƠN VỊ
85
DECLARE @BRANCH_AUTH TABLE (BRN_AUTH VARCHAR(15))
86
INSERT INTO @BRANCH_AUTH VALUES (@p_BRANCH_LOGIN)
87
INSERT INTO @BRANCH_AUTH SELECT BRANCH_ID FROM TL_SYS_ROLE_MAPPING WHERE TLNAME =@P_USER_LOGIN AND 
88
CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) AND CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103)
89
--- NEU USER KHONG CHON TU NGAY THI TU NGAY BANG NGAY 1 1 HANG THANG 20211116
90
DECLARE @DATE DATE
91
IF ((@p_FRMDATE IS NULL OR @p_FRMDATE ='') AND ISNULL(@p_REQ_PAY_ID,'')='' AND @p_AUTH_STATUS ='') -- MỤC ĐÍCH NẾU NHƯ XEM CHI TIẾT 1 PĐN THANH TOÁN DẠNG POPUP THÌ BỎ QUA ĐIỀU KIỆN NÀY, TỪ NGÀY VẪN LÀ NULL
92
BEGIN
93
	--DECLARE @MONTH INT, @YEAR INT
94
	--SET @MONTH = MONTH(GETDATE()) -1
95
	--SET @YEAR = YEAR(GETDATE())
96
	--BEGIN
97
	--	SET @p_FRMDATE ='01/'+CONVERT(VARCHAR,@MONTH,5) +'/'+ CONVERT(VARCHAR,@YEAR,5)
98
	--END
99
	SET @DATE = CONVERT(DATE,GETDATE(),103)
100
	SET @DATE = DATEADD(MONTH,-2,@DATE)
101
END
102
ELSE
103
BEGIN
104
	SET @DATE = CONVERT(DATE,@p_FRMDATE,103)
105
END
106
	--DOANPTT: XAC DINH USER CO DUOC XEM HET PHIEU DE NGHI THANH TOAN CUA PHONG MINH HAY KHONG
107
	DECLARE @IS_SEE_ALL_HC VARCHAR(1) 
108
	IF((SELECT COUNT(*) FROM PL_ROLE_DATA_CONFIG WHERE BRANCH_ID = @P_USER_LOGIN AND ROLE_TYPE = 'TR_REQ_PAYMENT') > 0)
109
	BEGIN
110
		SET @IS_SEE_ALL_HC = 'Y'
111
	END
112
	ELSE
113
	BEGIN
114
		SET @IS_SEE_ALL_HC = 'N'
115
	END
116
-- HẾT KHAI BÁO
117
SET  @ROLE_ID =(SELECT TOP 1 RoleName FROM TL_USER WHERE TLNANME =@p_USER_LOGIN)
118
IF(@ROLE_ID IS NOT NULL AND @ROLE_ID <>'' AND @ROLE_ID IN ('TPGD','GDDV','PGD','PTGD','TGD','HDQT','TP','PP','TBP','KTT','GDK','KSV','TC','NVTC','TPTC','PPGD'))
119
BEGIN
120
	PRINT @ROLE_ID
121
END
122
ELSE
123
BEGIN
124
	SET @ROLE_ID =(SELECT TOP 1 RoleName FROM TL_USER_V2 WHERE TLNANME =@p_USER_LOGIN)
125
	IF(@ROLE_ID IS NULL OR @ROLE_ID ='')
126
	BEGIN
127
			SET @ROLE_ID =(SELECT TOP 1 ROLE_NEW FROM TL_SYS_ROLE_MAPPING WHERE ROLE_OLD =(SELECT TOP 1 ROLENAME FROM TL_USER WHERE TLNANME=@p_USER_LOGIN))
128
	END
129
END
130
INSERT INTO @TABLE_ROLE VALUES (@ROLE_ID)--2021823
131
--SET @ROLE_ID =(SELECT TOP 1 RoleName FROM TL_USER_V2 WHERE TLNANME =@p_USER_LOGIN)
132
IF(@p_TOP IS NULL OR @p_TOP=0)
133
BEGIN
134
-- PAGING BEGIN
135
		SELECT A.*,B.AUTH_STATUS_NAME, C.AUTH_STATUS_NAME AUTH_STATUS_NAME_KT, TL.TLFullName CREATE_FULLNAME, C.AUTH_STATUS_KT_DESC,
136
		TL1.TLFullName APPROVE_FULLNAME,
137
		CASE WHEN ISNULL(TL2.TLFullName,'') <>'' THEN TL2.TLFullName ELSE TL8.TLFullName END AS CREATE_FULLNAME_KT,
138
		TL3.TLFullName APPROVE_FULLNAME_KT,
139
		CASE WHEN ISNULL(A.IS_PERIOD,'') <> '' AND A.IS_PERIOD ='Y' AND  EXISTS (SELECT TOP 1 X.* FROM TR_REQ_ADVANCE_DT X 
140
										INNER JOIN TR_CONTRACT CT ON X.REF_ID = CT.CONTRACT_ID
141
										WHERE X.REQ_PAY_ID = A.REQ_PAY_ID AND CT.BRANCH_ID <>  @p_BRANCH_LOGIN AND CT.BRANCH_ID IS NOT NULL AND CT.BRANCH_ID <> '') THEN 
142
										BR.BRANCH_NAME + ISNULL(' - '+ (SELECT TOP 1 BRANCH_NAME FROM CM_BRANCH WHERE BRANCH_ID =(SELECT TOP 1 BRANCH_ID FROM TR_CONTRACT WHERE CONTRACT_ID IN (SELECT TOP 1 REF_ID FROM TR_REQ_ADVANCE_DT 
143
										WHERE REQ_PAY_ID = A.REQ_PAY_ID))),'')
144
										ELSE BR.BRANCH_NAME END BRANCH_NAME_REQ,
145
		--BR.BRANCH_NAME AS BRANCH_NAME_REQ,
146
		BR1.BRANCH_NAME BRANCH_NAME_CRE, DP.DEP_NAME, DP.DEP_CODE, BR.BRANCH_CODE BRANCH_CODE_REQ,
147
		--Luanlt--2019/10/15-Sửa AL,AL1
148
		BR1.BRANCH_CODE BRANCH_CODE_CRE, AL.CONTENT REQ_TYPE_NAME,AL1.CONTENT REQ_PAY_TYPE_NAME, ISNULL((A.REQ_AMT -H.SOTIEN_TT),0) AS TOTAL_AMT_TEMP, 
149
		ISNULL(H.SOTIEN_TT,0) TOTAL_AMT_PAY_HIS,
150
		TL4.TLFullName AS TRANSFER_FULLNAME,TL5.TLFullName AS TRANSFER_RECIEVER_FULLNAME,'' EMP_FULLNAME,PO.PO_CODE, PO.PO_NAME, S.SUP_NAME,S.TAX_NO SUP_TAX_NO,
151
		PC3.LEVEL_JOB, PC3.STATUS_JOB,PC3.TYPE_JOB,
152
		--CASE WHEN PC3.TLNAME IS NOT NULL AND PC3.TLNAME <>'' THEN @P_USER_LOGIN ELSE PC3.TLNAME END AS EXEC_USER,
153
		@p_TYPE_SEARCH AS TYPE_SEARCH,SR.ROLE_ID AS ROLE_ID_CRE,CASE WHEN BR1.BRANCH_TYPE <> 'PGD'THEN BR1.BRANCH_TYPE ELSE 'CN' END AS BRANCH_TYPE_CR,
154
		BR_CORE.BRANCH_CODE AS BRANCH_CODE_CORE, BR_CORE.BRANCH_NAME AS BRANCH_NAME_CORE,'' AS BRANCH_CODE_CONTRACT,
155
		ISNULL((SELECT TOP 1 BRANCH_NAME FROM CM_BRANCH WHERE BRANCH_ID =(SELECT TOP 1 BRANCH_ID FROM TR_CONTRACT WHERE CONTRACT_ID IN (SELECT TOP 1 REF_ID FROM TR_REQ_ADVANCE_DT WHERE REQ_PAY_ID = A.REQ_PAY_ID))),'')
156
		AS BRANCH_NAME_CONTRACT,
157
		--doanptt 300622
158
		CASE WHEN PC3.TLNAME IS NOT NULL THEN PC3.TLNAME 
159
			 WHEN PC3.TLNAME <>'' THEN PC3.TLNAME 
160
			 ELSE TL2.TLNANME END AS EXEC_USER,
161
		dbo.FN_DATEDIFF_WITHOUT_WEEKEND(A.TRANSFER_DT, GETDATE()) AS NUMBER_OF_TRANSFER,
162
		PC3.TLNAME AS EXEC_USER_KT,
163
		CASE WHEN ISNULL(A.CREATE_DT_KT, '') <> '' AND A.AUTH_STATUS_KT IN('P', 'S')  THEN dbo.FN_DATEDIFF_WITHOUT_WEEKEND(A.CREATE_DT_KT, GETDATE())
164
			 ELSE 0 END AS NUMBER_OF_SEND_APPR
165
-- SELECT END
166
        FROM TR_REQ_PAYMENT A
167
             LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS=B.AUTH_STATUS
168
             LEFT JOIN CM_AUTH_STATUS C ON A.AUTH_STATUS_KT=C.AUTH_STATUS
169
             LEFT JOIN TL_USER TL ON A.MAKER_ID=TL.TLNANME
170
             LEFT JOIN TL_USER TL1 ON A.CHECKER_ID=TL1.TLNANME
171
             LEFT JOIN TL_USER TL2 ON A.MAKER_ID_KT=TL2.TLNANME
172
             LEFT JOIN TL_USER TL3 ON A.CHECKER_ID_KT=TL3.TLNANME
173
             LEFT JOIN dbo.CM_BRANCH BR ON A.BRANCH_ID=BR.BRANCH_ID
174
			 LEFT JOIN dbo.CM_BRANCH BR1 ON A.BRANCH_CREATE=BR1.BRANCH_ID
175
             LEFT JOIN dbo.CM_DEPARTMENT DP ON DP.DEP_ID=A.DEP_ID
176
			 --Luanlt--2019/10/15-Sửa AL,AL1
177
			 LEFT JOIN CM_ALLCODE AL ON A.REQ_TYPE = AL.CDVAL AND AL.CDNAME='PAY_TYPE' AND AL.CDTYPE = 'REQ'
178
			 LEFT JOIN CM_ALLCODE AL1 ON A.REQ_PAY_TYPE = AL1.CDVAL AND AL1.CDNAME='REQ_PAY_TYPE' AND AL1.CDTYPE ='REQ'
179
			 LEFT JOIN TL_USER TL4 ON A.TRANSFER_MAKER = TL4.TLNANME
180
			 LEFT JOIN TL_USER TL5 ON A.TRASFER_USER_RECIVE = TL5.TLNANME
181
			 LEFT JOIN 
182
			 (
183
			 SELECT PAY_ADV_ID, SUM(AMT_PAY) SOTIEN_TT FROM TR_REQ_PAYMENT_DT WHERE AUTH_STATUS_KT ='A' GROUP BY PAY_ADV_ID
184
			 ) H ON A.REQ_PAY_ID =H.PAY_ADV_ID
185
			 LEFT JOIN TR_PO_MASTER PO ON A.REF_ID = PO.PO_ID AND A.REQ_TYPE='P'
186
			 LEFT JOIN CM_SUPPLIER S ON S.SUP_ID = PO.SUP_ID AND A.REQ_TYPE='P'
187
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC3 ON PC3.REQ_ID = A.REQ_PAY_ID AND PC3.STATUS_JOB ='C' 
188
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC4 ON PC4.REQ_ID = A.REQ_PAY_ID AND PC4.STATUS_JOB ='C'
189
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC5 ON PC5.REQ_ID = A.REQ_PAY_ID AND PC5.TYPE_JOB ='XL'
190
			 LEFT JOIN TL_USER TL8 ON PC5.TLNAME = TL8.TLNANME
191
			 LEFT JOIN TL_SYSROLE SR ON TL.RoleName = SR.ROLE_ID
192
			 LEFT JOIN CM_BRANCH BR_CORE ON TL2.TLSUBBRID = BR_CORE.BRANCH_ID
193
        WHERE 1=1 
194
			  AND(A.REQ_PAY_ID =@p_REQ_PAY_ID OR @p_REQ_PAY_ID='' OR @p_REQ_PAY_ID IS NULL)
195
			  AND(	A.AUTH_STATUS=@p_AUTH_STATUS 
196
					OR @p_AUTH_STATUS='' 
197
					OR @p_AUTH_STATUS IS NULL 
198
					OR	(	@p_AUTH_STATUS = 'G' 
199
							AND ISNULL(A.PROCESS, '') = '0' 
200
							AND A.AUTH_STATUS = 'U'
201
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
202
						) 
203
					OR	(	@p_AUTH_STATUS = 'W' 
204
							AND ISNULL(A.PROCESS, '') = '' 
205
							AND A.AUTH_STATUS = 'U'
206
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
207
						)
208
				)
209
			  AND(A.MAKER_ID =@p_MAKER_ID OR @p_MAKER_ID='' OR @p_MAKER_ID IS NULL)
210
			  AND(A.MAKER_ID_KT = @p_MAKER_ID_KT OR @p_MAKER_ID_KT = '' OR @p_MAKER_ID_KT IS NULL OR PC3.TLNAME = @p_MAKER_ID_KT)
211
			  AND(PC3.TLNAME = @p_EXEC_USER_KT OR @p_EXEC_USER_KT = '' OR @p_EXEC_USER_KT IS NULL OR PC3.TLNAME = '' OR PC3.TLNAME IS NULL)
212
			  AND(A.DEP_ID=@p_DEP_ID OR @p_DEP_ID='' OR @p_DEP_ID IS NULL)
213
			  AND	(	(	@p_LEVEL='ALL' AND	(	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
214
													OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
215
												)
216
						) -- LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
217
						OR	(	(	@p_LEVEL='UNIT' 
218
									AND A.BRANCH_ID=@p_BRANCH_ID
219
								)
220
								OR(@p_BRANCH_ID='' OR @p_BRANCH_ID IS NULL) 
221
								OR (	@BRANCH_TYPE_LG <> 'HS' AND
222
										EXISTS	(	SELECT * 
223
													FROM TR_REQ_ADVANCE_DT 
224
													WHERE REQ_PAY_ID = A.REQ_PAY_ID
225
													AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
226
													AND AUTH_STATUS_KT ='A'
227
												)
228
									)
229
							)
230
					)
231
			  AND	(	(	@p_LEVEL='ALL' 
232
							AND (	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
233
									OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
234
								)
235
						) -- - LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
236
						OR	(	(	@p_LEVEL='UNIT' 
237
									AND A.BRANCH_ID=@p_BRANCH_ID
238
								)
239
								OR	(	@p_BRANCH_ID='' 
240
										OR @p_BRANCH_ID IS NULL
241
									)
242
																 OR	(	@BRANCH_TYPE_LG <> 'HS' 
243
																		AND EXISTS	(	SELECT * 
244
																						FROM TR_REQ_ADVANCE_DT 
245
																						WHERE REQ_PAY_ID = A.REQ_PAY_ID 
246
																						AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
247
																						AND AUTH_STATUS_KT ='A'
248
																					)
249
																	)
250
							)
251
					)
252
			  AND	(	(	A.MAKER_ID_KT IS NOT NULL 
253
							AND @p_IS_UPDATE_KT='Y'
254
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
255
						OR	(	(	A.MAKER_ID_KT IS NULL 
256
									AND @p_IS_UPDATE_KT='N'
257
								)
258
							)
259
							OR @p_IS_UPDATE_KT IS NULL 
260
							OR @p_IS_UPDATE_KT='')
261
			  AND(A.NOTES LIKE N'%'+@p_NOTES+'%' OR @p_NOTES='' OR @p_NOTES IS NULL)
262
			  --Luanlt-2019/10/14-Thêm Filter  REQ_TYPE,FROMDATE TODATE REF_ID
263
			  AND(A.REQ_TYPE LIKE N'%'+@p_REQ_TYPE+'%' OR @p_REQ_TYPE = '' OR @p_REQ_TYPE IS NULL)
264
			  AND(CONVERT(DATE, A.CREATE_DT)>=CONVERT(DATE, @DATE, 103)OR @p_FRMDATE IS NULL OR @p_FRMDATE='' OR A.CREATE_DT IS NULL)
265
              AND(CONVERT(DATE, A.CREATE_DT)<=CONVERT(DATE, @p_TODATE, 103)OR @p_TODATE IS NULL OR @p_TODATE='' OR A.CREATE_DT IS NULL)
266
			  --Luanlt-2019/10/17-Thêm Filter REQ_PAY_CODE REQ_PAY_NAME  BRANCH_ID DEP_ID KT_AUTH
267
			  AND(A.REQ_PAY_CODE LIKE N'%'+@p_REQ_PAY_CODE+'%' or @p_REQ_PAY_CODE='' OR @p_REQ_PAY_CODE IS NULL)
268
			  AND(A.REQ_REASON LIKE N'%'+@p_REQ_REASON+'%' or @p_REQ_REASON='' OR @p_REQ_REASON IS NULL)
269
			  --AND(A.TRASFER_USER_RECIVE =@p_TRASFER_USER_RECIVE or @p_TRASFER_USER_RECIVE='' OR @p_TRASFER_USER_RECIVE IS NULL OR A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <>'')
270
			  AND	(	(@p_BRANCH_ID <> @p_BRANCH_LOGIN AND A.BRANCH_ID = @p_BRANCH_ID) 
271
						OR @p_BRANCH_ID = @p_BRANCH_LOGIN 
272
						OR @p_BRANCH_ID='' 
273
						OR @p_BRANCH_ID IS NULL
274
					)
275
			  AND(A.DEP_ID = @p_DEP_ID  or @p_DEP_ID='' OR @p_DEP_ID IS NULL)
276
			  AND	(	(	A.AUTH_STATUS_KT=@p_AUTH_STATUS_KT 
277
							OR @p_AUTH_STATUS_KT='' 
278
							OR @p_AUTH_STATUS_KT IS NULL
279
						) 
280
						OR (@p_AUTH_STATUS_KT ='P' AND A.AUTH_STATUS_KT IN ('P','S'))
281
					)
282
			  AND(A.REF_ID =@p_REF_ID OR @p_REF_ID='' OR @p_REF_ID IS NULL)
283
			  --AND((A.TRANSFER_MAKER IS NOT NULL AND @p_IS_TRANSFER='Y') --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
284
              --OR((A.TRANSFER_MAKER IS NULL AND @p_IS_TRANSFER='N'))OR @p_IS_TRANSFER IS NULL OR @p_IS_TRANSFER='')
285
			  -- Neu ben phan he ke toan thi chi lay nhung user co maker_id khac null
286
			  AND  (
287
						(
288
							@p_FUNCTION ='KT' 
289
							AND (
290
									EXISTS(SELECT TOP 1 * FROM PL_REQUEST_PROCESS_CHILD X WHERE REQ_ID = A.REQ_PAY_ID 
291
									AND (
292
											X.TLNAME= @p_USER_LOGIN 
293
											OR X.TLNAME =@p_EXEC_USER_KT)
294
										)
295
								) 
296
							OR	(A.MAKER_ID_KT = @p_MAKER_ID_KT OR PC3.TLNAME = @p_MAKER_ID_KT)
297
							OR A.CHECKER_ID_KT ='admin' 
298
							OR A.AUTH_STATUS_KT='A' 
299
						)
300
						OR @p_FUNCTION ='' 
301
						OR @p_FUNCTION IS NULL 
302
						OR @p_FUNCTION ='TF' 
303
					)	  
304
				AND(PC4.TLNAME = @p_TRASFER_USER_RECIVE OR @p_TRASFER_USER_RECIVE IS NULL OR @p_TRASFER_USER_RECIVE ='' OR A.MAKER_ID_KT =@p_TRASFER_USER_RECIVE)
305
			 -- AND ((@p_FUNCTION ='KT' AND A.MAKER_ID_KT IS NOT NULL AND A.MAKER_ID_KT ='') OR @p_FUNCTION IS NULL OR @p_FUNCTION ='')
306
				AND	(	(	@p_IS_TRANSFER='Y' 
307
							AND	(	EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID) 
308
									OR A.AUTH_STATUS_KT ='A'
309
								)
310
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
311
						OR	(	(	@p_IS_TRANSFER='N' 
312
									AND (	NOT EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID )) 
313
											AND A.AUTH_STATUS_KT <>'A'
314
								)
315
							)
316
						OR @p_IS_TRANSFER IS NULL 
317
						OR @p_IS_TRANSFER=''
318
					)	
319
				AND
320
				( /*0*/
321
				  A.MAKER_ID =@p_USER_LOGIN  
322
				  OR (A.DEP_ID = @p_DEP_ID)
323
				  OR ( A.TRASFER_USER_RECIVE = @P_USER_LOGIN 
324
						AND A.AUTH_STATUS NOT IN ('E','R')
325
					 )
326
				  OR	(	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
327
								AND A.DEP_ID = @DEP_ID_LG
328
								AND A.BRANCH_ID = 'DV0001'
329
								AND A.AUTH_STATUS IN ('U','R', 'A')
330
								AND @p_TYPE_SEARCH ='HC'
331
							)
332
							OR	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
333
									AND A.BRANCH_ID = @p_BRANCH_LOGIN
334
									AND A.AUTH_STATUS IN ('U','R', 'A')
335
									AND @p_TYPE_SEARCH ='HC'
336
								)
337
						)
338
				  OR (	A.AUTH_STATUS <>'E' /*1*/
339
						AND
340
						(/*2*/
341
							(	@p_TYPE_SEARCH ='HC'		/*3*/ 
342
								AND @BRANCH_TYPE_LG ='HS'  
343
								AND (/*4*/A.TRASFER_USER_RECIVE = @p_USER_LOGIN 
344
										OR (/*5*/
345
												EXISTS (	SELECT * 
346
															FROM @TABLE_ROLE 
347
															WHERE ROLE_AUTH IN ('GDDV','GDK','KTT','TPTC','TP','PP','TC')
348
													   )
349
												AND    (
350
															(	A.BRANCH_ID =@p_BRANCH_LOGIN 
351
																OR A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
352
															) 
353
															AND (	A.DEP_ID = @DEP_ID_LG 
354
																	OR  ( 
355
																			A.DEP_ID  IN ('DEP000000000051','DEP000000000733') 
356
																			AND @p_USER_LOGIN ='cuongpv2'
357
																		) 
358
																	OR A.DEP_ID IN (
359
																						SELECT * 
360
																						FROM @DEP_AUTH
361
																					)
362
																)
363
														)
364
												AND ( 
365
														A.TRASFER_USER_RECIVE IS NULL 
366
														OR A.TRASFER_USER_RECIVE ='' 
367
														OR (
368
																A.TRASFER_USER_RECIVE IS NOT NULL 
369
																AND A.TRASFER_USER_RECIVE <>'' 
370
																AND A.PROCESS IS NOT NULL 
371
																AND A.PROCESS <>''
372
															)
373
													)
374
											)/*5*/
375
										)/*4*/
376
								)/*3*/
377
							OR(/*trong 2*/
378
									@p_TYPE_SEARCH ='HC' 
379
									AND @BRANCH_TYPE_LG = 'CN' 
380
									AND (
381
											@ROLE_ID IN ('GDDV','PGD','TPGD','PPGD') 
382
											AND A.BRANCH_ID =@p_BRANCH_LOGIN 
383
											AND
384
												(
385
													(
386
														A.TRASFER_USER_RECIVE IS NOT NULL 
387
														AND A.TRASFER_USER_RECIVE <>'' 
388
														AND A.PROCESS IS NOT NULL 
389
														AND A.PROCESS <>''
390
													 ) 
391
													OR A.TRASFER_USER_RECIVE ='' 
392
													OR A.TRASFER_USER_RECIVE IS NULL
393
												 )
394
											OR (
395
													(
396
														A.BRANCH_CREATE <> @p_BRANCH_LOGIN 
397
														AND A.TRASFER_USER_RECIVE IS NOT NULL 
398
															AND A.TRASFER_USER_RECIVE <>''
399
													) 
400
													OR A.BRANCH_CREATE = @p_BRANCH_LOGIN
401
												)
402
											AND A.BRANCH_ID =@p_BRANCH_ID
403
										)
404
								)
405
							 OR
406
								(
407
									@p_TYPE_SEARCH ='HC' 
408
									AND @BRANCH_TYPE_LG = 'PGD' 
409
									AND (
410
											@ROLE_ID IN ('GDDV','TPGD','PPGD','PGD') 
411
											AND A.BRANCH_ID =@p_BRANCH_LOGIN
412
										)
413
								)
414
							 OR
415
								(
416
									@p_TYPE_SEARCH ='HC' 
417
									AND(
418
											@ROLE_ID IN ('KSV','GDV','NVTC') 
419
											OR @DEP_ID_LG ='DEP000000000022'
420
										) 
421
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
422
								)
423
							OR	(
424
									@p_TYPE_SEARCH='KT' 
425
									AND @p_BRANCH_LOGIN ='DV0001' 
426
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
427
								)
428
							OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH =''
429
						)/*2*/
430
				)/*1*/
431
				  OR
432
				  (
433
						(
434
							@ROLE_ID IN ('KSV','GDV','NVTC') 
435
							OR @DEP_ID_LG ='DEP000000000022'
436
						) 
437
						AND @p_BRANCH_LOGIN ='DV0001' 
438
						AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
439
				  )
440
				  -- NEU DUOC UY QUYEN DUYỆT CHO 1 ĐƠN VỊ KHÁC HỘI SỞ THÌ CHỈ SETUP ĐƠN VỊ, KHÔNG CẦN SETUP PHÒNG BAN
441
				  OR(	@p_TYPE_SEARCH ='HC' 
442
						AND A.BRANCH_CREATE <> 'DV0001' 
443
						AND A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
444
					)
445
				  -- LUCTV 25 05 BO SUNG CAU HINH CHO PHEP DVKD DUOC THAY NHUNG PDN THANH TOAN DO HO TẠO
446
				  OR (
447
						@p_TYPE_SEARCH ='HC' 
448
						AND @BRANCH_TYPE_LG <> 'HS' 
449
						AND
450
						EXISTS (
451
									SELECT * 
452
									FROM TR_REQ_ADVANCE_DT 
453
									WHERE REQ_PAY_ID = A.REQ_PAY_ID AND REF_ID IN (
454
																					SELECT CONTRACT_ID 
455
																					FROM TR_CONTRACT
456
																					WHERE BRANCH_ID =@p_BRANCH_LOGIN
457
																				  ) 
458
									AND AUTH_STATUS_KT ='A'
459
								)
460
					)
461
			 )/*0*/
462
		ORDER BY A.CREATE_DT DESC
463
-- PAGING END
464
    END;
465
    ELSE 
466
	BEGIN
467
-- PAGING BEGIN
468
        SELECT TOP(CONVERT(INT,@p_TOP)) A.*,B.AUTH_STATUS_NAME, C.AUTH_STATUS_NAME AUTH_STATUS_NAME_KT, TL.TLFullName CREATE_FULLNAME, C.AUTH_STATUS_KT_DESC,
469
		TL1.TLFullName APPROVE_FULLNAME,
470
		CASE WHEN ISNULL(TL2.TLFullName,'') <>'' THEN TL2.TLFullName ELSE TL8.TLFullName END AS CREATE_FULLNAME_KT,
471
		TL3.TLFullName APPROVE_FULLNAME_KT,
472
		CASE WHEN ISNULL(A.IS_PERIOD,'') <> '' AND A.IS_PERIOD ='Y' AND  EXISTS (SELECT TOP 1 X.* FROM TR_REQ_ADVANCE_DT X 
473
										INNER JOIN TR_CONTRACT CT ON X.REF_ID = CT.CONTRACT_ID
474
										WHERE X.REQ_PAY_ID = A.REQ_PAY_ID AND CT.BRANCH_ID <>  @p_BRANCH_LOGIN AND CT.BRANCH_ID IS NOT NULL AND CT.BRANCH_ID <> '') THEN 
475
										BR.BRANCH_NAME + ISNULL(' - '+ (SELECT TOP 1 BRANCH_NAME FROM CM_BRANCH WHERE BRANCH_ID =(SELECT TOP 1 BRANCH_ID FROM TR_CONTRACT WHERE CONTRACT_ID IN (SELECT TOP 1 REF_ID FROM TR_REQ_ADVANCE_DT 
476
										WHERE REQ_PAY_ID = A.REQ_PAY_ID))),'')
477
										ELSE BR.BRANCH_NAME END BRANCH_NAME_REQ,
478
		--BR.BRANCH_NAME AS BRANCH_NAME_REQ,
479
		BR1.BRANCH_NAME BRANCH_NAME_CRE, DP.DEP_NAME, DP.DEP_CODE, BR.BRANCH_CODE BRANCH_CODE_REQ,
480
		--Luanlt--2019/10/15-Sửa AL,AL1
481
		BR1.BRANCH_CODE BRANCH_CODE_CRE, AL.CONTENT REQ_TYPE_NAME,AL1.CONTENT REQ_PAY_TYPE_NAME, ISNULL((A.REQ_AMT -H.SOTIEN_TT),0) AS TOTAL_AMT_TEMP, 
482
		ISNULL(H.SOTIEN_TT,0) TOTAL_AMT_PAY_HIS,
483
		TL4.TLFullName AS TRANSFER_FULLNAME,TL5.TLFullName AS TRANSFER_RECIEVER_FULLNAME,'' EMP_FULLNAME,PO.PO_CODE, PO.PO_NAME, S.SUP_NAME,S.TAX_NO SUP_TAX_NO,
484
		PC3.LEVEL_JOB, PC3.STATUS_JOB,PC3.TYPE_JOB,
485
		--CASE WHEN PC3.TLNAME IS NOT NULL AND PC3.TLNAME <>'' THEN @P_USER_LOGIN ELSE PC3.TLNAME END AS EXEC_USER,
486
		@p_TYPE_SEARCH AS TYPE_SEARCH,SR.ROLE_ID AS ROLE_ID_CRE,CASE WHEN BR1.BRANCH_TYPE <> 'PGD'THEN BR1.BRANCH_TYPE ELSE 'CN' END AS BRANCH_TYPE_CR,
487
		BR_CORE.BRANCH_CODE AS BRANCH_CODE_CORE, BR_CORE.BRANCH_NAME AS BRANCH_NAME_CORE,'' AS BRANCH_CODE_CONTRACT,
488
		ISNULL((SELECT TOP 1 BRANCH_NAME FROM CM_BRANCH WHERE BRANCH_ID =(SELECT TOP 1 BRANCH_ID FROM TR_CONTRACT WHERE CONTRACT_ID IN (SELECT TOP 1 REF_ID FROM TR_REQ_ADVANCE_DT WHERE REQ_PAY_ID = A.REQ_PAY_ID))),'')
489
		AS BRANCH_NAME_CONTRACT,
490
		--doanptt 300622
491
		CASE WHEN PC3.TLNAME IS NOT NULL THEN PC3.TLNAME 
492
			 WHEN PC3.TLNAME <>'' THEN PC3.TLNAME 
493
			 ELSE TL2.TLNANME END AS EXEC_USER,
494
		dbo.FN_DATEDIFF_WITHOUT_WEEKEND(A.TRANSFER_DT, GETDATE()) AS NUMBER_OF_TRANSFER,
495
		PC3.TLNAME AS EXEC_USER_KT,
496
		CASE WHEN ISNULL(A.CREATE_DT_KT, '') <> '' AND A.AUTH_STATUS_KT IN('P', 'S')  THEN dbo.FN_DATEDIFF_WITHOUT_WEEKEND(A.CREATE_DT_KT, GETDATE())
497
			 ELSE 0 END AS NUMBER_OF_SEND_APPR
498
-- SELECT END
499
        FROM TR_REQ_PAYMENT A
500
             LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS=B.AUTH_STATUS
501
             LEFT JOIN CM_AUTH_STATUS C ON A.AUTH_STATUS_KT=C.AUTH_STATUS
502
             LEFT JOIN TL_USER TL ON A.MAKER_ID=TL.TLNANME
503
             LEFT JOIN TL_USER TL1 ON A.CHECKER_ID=TL1.TLNANME
504
             LEFT JOIN TL_USER TL2 ON A.MAKER_ID_KT=TL2.TLNANME
505
             LEFT JOIN TL_USER TL3 ON A.CHECKER_ID_KT=TL3.TLNANME
506
             LEFT JOIN dbo.CM_BRANCH BR ON A.BRANCH_ID=BR.BRANCH_ID
507
			 LEFT JOIN dbo.CM_BRANCH BR1 ON A.BRANCH_CREATE=BR1.BRANCH_ID
508
             LEFT JOIN dbo.CM_DEPARTMENT DP ON DP.DEP_ID=A.DEP_ID
509
			 --Luanlt--2019/10/15-Sửa AL,AL1
510
			 LEFT JOIN CM_ALLCODE AL ON A.REQ_TYPE = AL.CDVAL AND AL.CDNAME='PAY_TYPE' AND AL.CDTYPE = 'REQ'
511
			 LEFT JOIN CM_ALLCODE AL1 ON A.REQ_PAY_TYPE = AL1.CDVAL AND AL1.CDNAME='REQ_PAY_TYPE' AND AL1.CDTYPE = 'REQ'
512
			 LEFT JOIN TL_USER TL4 ON A.TRANSFER_MAKER = TL4.TLNANME
513
			 LEFT JOIN TL_USER TL5 ON A.TRASFER_USER_RECIVE = TL5.TLNANME
514
			 LEFT JOIN 
515
			 (
516
			 SELECT PAY_ADV_ID, SUM(AMT_PAY) SOTIEN_TT FROM TR_REQ_PAYMENT_DT WHERE AUTH_STATUS_KT ='A' GROUP BY PAY_ADV_ID
517
			 ) H ON A.REQ_PAY_ID =H.PAY_ADV_ID
518
			 LEFT JOIN TR_PO_MASTER PO ON A.REF_ID = PO.PO_ID AND A.REQ_TYPE='P'
519
			 LEFT JOIN CM_SUPPLIER S ON S.SUP_ID = PO.SUP_ID AND A.REQ_TYPE='P'
520
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC3 ON PC3.REQ_ID = A.REQ_PAY_ID AND PC3.STATUS_JOB ='C' 
521
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC4 ON PC4.REQ_ID = A.REQ_PAY_ID AND PC4.STATUS_JOB ='C'
522
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC5 ON PC5.REQ_ID = A.REQ_PAY_ID AND PC5.TYPE_JOB ='XL'
523
			 LEFT JOIN TL_USER TL8 ON PC5.TLNAME = TL8.TLNANME
524
			 LEFT JOIN TL_SYSROLE SR ON TL.RoleName = SR.ROLE_ID
525
			 LEFT JOIN CM_BRANCH BR_CORE ON TL2.TLSUBBRID = BR_CORE.BRANCH_ID
526
        WHERE 1=1 
527
			  AND(A.REQ_PAY_ID =@p_REQ_PAY_ID OR @p_REQ_PAY_ID='' OR @p_REQ_PAY_ID IS NULL)
528
			  AND(	A.AUTH_STATUS=@p_AUTH_STATUS 
529
					OR @p_AUTH_STATUS='' 
530
					OR @p_AUTH_STATUS IS NULL 
531
					OR	(	@p_AUTH_STATUS = 'G' 
532
							AND ISNULL(A.PROCESS, '') = '0' 
533
							AND A.AUTH_STATUS = 'U'
534
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
535
						) 
536
					OR	(	@p_AUTH_STATUS = 'W' 
537
							AND ISNULL(A.PROCESS, '') = '' 
538
							AND A.AUTH_STATUS = 'U'
539
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
540
						)
541
				)
542
			  AND(A.MAKER_ID =@p_MAKER_ID OR @p_MAKER_ID='' OR @p_MAKER_ID IS NULL)
543
			  AND(A.MAKER_ID_KT = @p_MAKER_ID_KT OR @p_MAKER_ID_KT = '' OR @p_MAKER_ID_KT IS NULL OR PC3.TLNAME = @p_MAKER_ID_KT)
544
			  AND(PC3.TLNAME = @p_EXEC_USER_KT OR @p_EXEC_USER_KT = '' OR @p_EXEC_USER_KT IS NULL OR PC3.TLNAME = '' OR PC3.TLNAME IS NULL)
545
			  AND(A.DEP_ID=@p_DEP_ID OR @p_DEP_ID='' OR @p_DEP_ID IS NULL)
546
			  AND	(	(	@p_LEVEL='ALL' AND	(	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
547
													OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
548
												)
549
						) -- LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
550
						OR	(	(	@p_LEVEL='UNIT' 
551
									AND A.BRANCH_ID=@p_BRANCH_ID
552
								)
553
								OR(@p_BRANCH_ID='' OR @p_BRANCH_ID IS NULL) 
554
								OR (	@BRANCH_TYPE_LG <> 'HS' AND
555
										EXISTS	(	SELECT * 
556
													FROM TR_REQ_ADVANCE_DT 
557
													WHERE REQ_PAY_ID = A.REQ_PAY_ID
558
													AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
559
													AND AUTH_STATUS_KT ='A'
560
												)
561
									)
562
							)
563
					)
564
			  AND	(	(	@p_LEVEL='ALL' 
565
							AND (	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
566
									OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
567
								)
568
						) -- - LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
569
						OR	(	(	@p_LEVEL='UNIT' 
570
									AND A.BRANCH_ID=@p_BRANCH_ID
571
								)
572
								OR	(	@p_BRANCH_ID='' 
573
										OR @p_BRANCH_ID IS NULL
574
									)
575
																 OR	(	@BRANCH_TYPE_LG <> 'HS' 
576
																		AND EXISTS	(	SELECT * 
577
																						FROM TR_REQ_ADVANCE_DT 
578
																						WHERE REQ_PAY_ID = A.REQ_PAY_ID 
579
																						AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
580
																						AND AUTH_STATUS_KT ='A'
581
																					)
582
																	)
583
							)
584
					)
585
			  AND	(	(	A.MAKER_ID_KT IS NOT NULL 
586
							AND @p_IS_UPDATE_KT='Y'
587
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
588
						OR	(	(	A.MAKER_ID_KT IS NULL 
589
									AND @p_IS_UPDATE_KT='N'
590
								)
591
							)
592
							OR @p_IS_UPDATE_KT IS NULL 
593
							OR @p_IS_UPDATE_KT='')
594
			  AND(A.NOTES LIKE N'%'+@p_NOTES+'%' OR @p_NOTES='' OR @p_NOTES IS NULL)
595
			  --Luanlt-2019/10/14-Thêm Filter  REQ_TYPE,FROMDATE TODATE REF_ID
596
			  AND(A.REQ_TYPE LIKE N'%'+@p_REQ_TYPE+'%' OR @p_REQ_TYPE = '' OR @p_REQ_TYPE IS NULL)
597
			  AND(CONVERT(DATE, A.CREATE_DT)>=CONVERT(DATE, @DATE, 103)OR @p_FRMDATE IS NULL OR @p_FRMDATE='' OR A.CREATE_DT IS NULL)
598
              AND(CONVERT(DATE, A.CREATE_DT)<=CONVERT(DATE, @p_TODATE, 103)OR @p_TODATE IS NULL OR @p_TODATE='' OR A.CREATE_DT IS NULL)
599
			  --Luanlt-2019/10/17-Thêm Filter REQ_PAY_CODE REQ_PAY_NAME  BRANCH_ID DEP_ID KT_AUTH
600
			  AND(A.REQ_PAY_CODE LIKE N'%'+@p_REQ_PAY_CODE+'%' or @p_REQ_PAY_CODE='' OR @p_REQ_PAY_CODE IS NULL)
601
			  AND(A.REQ_REASON LIKE N'%'+@p_REQ_REASON+'%' or @p_REQ_REASON='' OR @p_REQ_REASON IS NULL)
602
			  --AND(A.TRASFER_USER_RECIVE =@p_TRASFER_USER_RECIVE or @p_TRASFER_USER_RECIVE='' OR @p_TRASFER_USER_RECIVE IS NULL OR A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <>'')
603
			  AND	(	(@p_BRANCH_ID <> @p_BRANCH_LOGIN AND A.BRANCH_ID = @p_BRANCH_ID) 
604
						OR @p_BRANCH_ID = @p_BRANCH_LOGIN 
605
						OR @p_BRANCH_ID='' 
606
						OR @p_BRANCH_ID IS NULL
607
					)
608
			  AND(A.DEP_ID = @p_DEP_ID  or @p_DEP_ID='' OR @p_DEP_ID IS NULL)
609
			  AND	(	(	A.AUTH_STATUS_KT=@p_AUTH_STATUS_KT 
610
							OR @p_AUTH_STATUS_KT='' 
611
							OR @p_AUTH_STATUS_KT IS NULL
612
						) 
613
						OR (@p_AUTH_STATUS_KT ='P' AND A.AUTH_STATUS_KT IN ('P','S'))
614
					)
615
			  AND(A.REF_ID =@p_REF_ID OR @p_REF_ID='' OR @p_REF_ID IS NULL)
616
			  --AND((A.TRANSFER_MAKER IS NOT NULL AND @p_IS_TRANSFER='Y') --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
617
              --OR((A.TRANSFER_MAKER IS NULL AND @p_IS_TRANSFER='N'))OR @p_IS_TRANSFER IS NULL OR @p_IS_TRANSFER='')
618
			  -- Neu ben phan he ke toan thi chi lay nhung user co maker_id khac null
619
			  AND  (
620
						(
621
							@p_FUNCTION ='KT' 
622
							AND (
623
									EXISTS(SELECT TOP 1 * FROM PL_REQUEST_PROCESS_CHILD X WHERE REQ_ID = A.REQ_PAY_ID 
624
									AND (
625
											X.TLNAME= @p_USER_LOGIN 
626
											OR X.TLNAME =@p_EXEC_USER_KT)
627
										)
628
								) 
629
							OR	(A.MAKER_ID_KT = @p_MAKER_ID_KT OR PC3.TLNAME = @p_MAKER_ID_KT)
630
							OR A.CHECKER_ID_KT ='admin' 
631
							OR A.AUTH_STATUS_KT='A' 
632
						)
633
						OR @p_FUNCTION ='' 
634
						OR @p_FUNCTION IS NULL 
635
						OR @p_FUNCTION ='TF' 
636
					)	  
637
				AND(PC4.TLNAME = @p_TRASFER_USER_RECIVE OR @p_TRASFER_USER_RECIVE IS NULL OR @p_TRASFER_USER_RECIVE ='' OR A.MAKER_ID_KT =@p_TRASFER_USER_RECIVE)
638
			 -- AND ((@p_FUNCTION ='KT' AND A.MAKER_ID_KT IS NOT NULL AND A.MAKER_ID_KT ='') OR @p_FUNCTION IS NULL OR @p_FUNCTION ='')
639
				AND	(	(	@p_IS_TRANSFER='Y' 
640
							AND	(	EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID) 
641
									OR A.AUTH_STATUS_KT ='A'
642
								)
643
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
644
						OR	(	(	@p_IS_TRANSFER='N' 
645
									AND (	NOT EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID )) 
646
											AND A.AUTH_STATUS_KT <>'A'
647
								)
648
							)
649
						OR @p_IS_TRANSFER IS NULL 
650
						OR @p_IS_TRANSFER=''
651
					)	
652
				AND
653
				( /*0*/
654
				  A.MAKER_ID =@p_USER_LOGIN  
655
				  OR ( A.TRASFER_USER_RECIVE = @P_USER_LOGIN 
656
						AND A.AUTH_STATUS NOT IN ('E','R')
657
					 )
658
				  OR	(	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
659
								AND A.DEP_ID = @DEP_ID_LG
660
								AND A.BRANCH_ID = 'DV0001'
661
								AND A.AUTH_STATUS IN ('U','R', 'A')
662
								AND @p_TYPE_SEARCH ='HC'
663
							)
664
							OR	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
665
									AND A.BRANCH_ID = @p_BRANCH_LOGIN
666
									AND A.AUTH_STATUS IN ('U','R', 'A')
667
									AND @p_TYPE_SEARCH ='HC'
668
								)
669
						)
670
				  OR (	A.AUTH_STATUS <>'E' /*1*/
671
						AND
672
						(/*2*/
673
							(	@p_TYPE_SEARCH ='HC'		/*3*/ 
674
								AND @BRANCH_TYPE_LG ='HS'  
675
								AND (/*4*/A.TRASFER_USER_RECIVE = @p_USER_LOGIN 
676
										OR (/*5*/
677
												EXISTS (	SELECT * 
678
															FROM @TABLE_ROLE 
679
															WHERE ROLE_AUTH IN ('GDDV','GDK','KTT','TPTC','TP','PP','TC')
680
													   )
681
												AND    (
682
															(	A.BRANCH_ID =@p_BRANCH_LOGIN 
683
																OR A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
684
															) 
685
															AND (	A.DEP_ID = @DEP_ID_LG 
686
																	OR  ( 
687
																			A.DEP_ID  IN ('DEP000000000051','DEP000000000733') 
688
																			AND @p_USER_LOGIN ='cuongpv2'
689
																		) 
690
																	OR A.DEP_ID IN (
691
																						SELECT * 
692
																						FROM @DEP_AUTH
693
																					)
694
																)
695
														)
696
												AND ( 
697
														A.TRASFER_USER_RECIVE IS NULL 
698
														OR A.TRASFER_USER_RECIVE ='' 
699
														OR (
700
																A.TRASFER_USER_RECIVE IS NOT NULL 
701
																AND A.TRASFER_USER_RECIVE <>'' 
702
																AND A.PROCESS IS NOT NULL 
703
																AND A.PROCESS <>''
704
															)
705
													)
706
											)/*5*/
707
										)/*4*/
708
								)/*3*/
709
							OR(/*trong 2*/
710
									@p_TYPE_SEARCH ='HC' 
711
									AND @BRANCH_TYPE_LG = 'CN' 
712
									AND (
713
											@ROLE_ID IN ('GDDV','PGD','TPGD','PPGD') 
714
											AND A.BRANCH_ID =@p_BRANCH_LOGIN 
715
											AND
716
												(
717
													(
718
														A.TRASFER_USER_RECIVE IS NOT NULL 
719
														AND A.TRASFER_USER_RECIVE <>'' 
720
														AND A.PROCESS IS NOT NULL 
721
														AND A.PROCESS <>''
722
													 ) 
723
													OR A.TRASFER_USER_RECIVE ='' 
724
													OR A.TRASFER_USER_RECIVE IS NULL
725
												 )
726
											OR (
727
													(
728
														A.BRANCH_CREATE <> @p_BRANCH_LOGIN 
729
														AND A.TRASFER_USER_RECIVE IS NOT NULL 
730
															AND A.TRASFER_USER_RECIVE <>''
731
													) 
732
													OR A.BRANCH_CREATE = @p_BRANCH_LOGIN
733
												)
734
											AND A.BRANCH_ID =@p_BRANCH_ID
735
										)
736
								)
737
							 OR
738
								(
739
									@p_TYPE_SEARCH ='HC' 
740
									AND @BRANCH_TYPE_LG = 'PGD' 
741
									AND (
742
											@ROLE_ID IN ('GDDV','TPGD','PPGD','PGD') 
743
											AND A.BRANCH_ID =@p_BRANCH_LOGIN
744
										)
745
								)
746
							 OR
747
								(
748
									@p_TYPE_SEARCH ='HC' 
749
									AND(
750
											@ROLE_ID IN ('KSV','GDV','NVTC') 
751
											OR @DEP_ID_LG ='DEP000000000022'
752
										) 
753
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
754
								)
755
							OR	(
756
									@p_TYPE_SEARCH='KT' 
757
									AND @p_BRANCH_LOGIN ='DV0001' 
758
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
759
								)
760
							OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH =''
761
						)/*2*/
762
				)/*1*/
763
				  OR
764
				  (
765
						(
766
							@ROLE_ID IN ('KSV','GDV','NVTC') 
767
							OR @DEP_ID_LG ='DEP000000000022'
768
						) 
769
						AND @p_BRANCH_LOGIN ='DV0001' 
770
						AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
771
				  )
772
				  -- NEU DUOC UY QUYEN DUYỆT CHO 1 ĐƠN VỊ KHÁC HỘI SỞ THÌ CHỈ SETUP ĐƠN VỊ, KHÔNG CẦN SETUP PHÒNG BAN
773
				  OR(	@p_TYPE_SEARCH ='HC' 
774
						AND A.BRANCH_CREATE <> 'DV0001' 
775
						AND A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
776
					)
777
				  -- LUCTV 25 05 BO SUNG CAU HINH CHO PHEP DVKD DUOC THAY NHUNG PDN THANH TOAN DO HO TẠO
778
				  OR (
779
						@p_TYPE_SEARCH ='HC' 
780
						AND @BRANCH_TYPE_LG <> 'HS' 
781
						AND
782
						EXISTS (
783
									SELECT * 
784
									FROM TR_REQ_ADVANCE_DT 
785
									WHERE REQ_PAY_ID = A.REQ_PAY_ID AND REF_ID IN (
786
																					SELECT CONTRACT_ID 
787
																					FROM TR_CONTRACT
788
																					WHERE BRANCH_ID =@p_BRANCH_LOGIN
789
																				  ) 
790
									AND AUTH_STATUS_KT ='A'
791
								)
792
					)
793
			 )/*0*/
794
		ORDER BY A.CREATE_DT DESC
795
-- PAGING END
796
    END;
797
END -- PAGING