Project

General

Profile

create_stored.txt

Luc Tran Van, 03/28/2023 11:47 AM

 
1
/*
2
Run this script on:
3

    
4
        DESKTOP-Q8R1K35.VCCB_AMS_STABLE    -  This database will be modified
5

    
6
to synchronize it with:
7

    
8
        DESKTOP-Q8R1K35.VCCB_AMS
9

    
10
You are recommended to back up your database before running this script
11

    
12
Script created by SQL Compare version 13.1.6.5463 from Red Gate Software Ltd at 3/27/2023 3:25:59 PM
13

    
14
*/
15
SET NUMERIC_ROUNDABORT OFF
16
GO
17
SET ANSI_PADDING, ANSI_WARNINGS, CONCAT_NULL_YIELDS_NULL, ARITHABORT, QUOTED_IDENTIFIER, ANSI_NULLS ON
18
GO
19
SET XACT_ABORT ON
20
GO
21
SET TRANSACTION ISOLATION LEVEL Serializable
22
GO
23
BEGIN TRANSACTION
24
GO
25
IF @@ERROR <> 0 SET NOEXEC ON
26
GO
27
PRINT N'Creating [dbo].[TR_REQ_PAY_AUTO_GET_REQ_PAYMENT_NOT_ACCOUNTING]'
28
GO
29
CREATE PROC [dbo].[TR_REQ_PAY_AUTO_GET_REQ_PAYMENT_NOT_ACCOUNTING]
30
@p_REQ_PAY_AUTO_TYPE varchar(20) = NULL
31
AS
32
BEGIN	
33
	SELECT A.REQ_PAY_ID
34
	FROM TR_REQ_PAYMENT A
35
	WHERE 1=1
36
	AND A.AUTH_STATUS = 'A'
37
	AND A.AUTH_STATUS_KT = 'A' 
38
	AND A.IS_CREATE_AUTO = 'Y' 
39
	AND A.TYPE_AUTO = @p_REQ_PAY_AUTO_TYPE
40
	AND (A.IS_CREATE_AUTO_DONE = 'N' OR A.IS_CREATE_AUTO_DONE = NULL)
41
	AND A.RECORD_STATUS = '1' 
42

    
43
END
44
GO
45
IF @@ERROR <> 0 SET NOEXEC ON
46
GO
47
PRINT N'Creating [dbo].[TR_REQ_PAY_AUTO_UPD_STATUS_DONE_TYPE_B]'
48
GO
49
CREATE PROC [dbo].[TR_REQ_PAY_AUTO_UPD_STATUS_DONE_TYPE_B]
50
@p_REQ_PAY_ID varchar(20) = NULL
51
AS
52
BEGIN	
53
	UPDATE TR_REQ_PAYMENT 
54
	SET IS_CREATE_AUTO_DONE = 'Y' 
55
	WHERE 1=1
56
	AND REQ_PAY_ID = @p_REQ_PAY_ID 
57
	AND ISNULL(SYSTEM_INVOICE_ID, '') <> ''
58
	AND ISNULL(IS_CREATE_AUTO, '') = 'Y'
59
	AND AUTH_STATUS = 'A'
60
	AND AUTH_STATUS_KT = 'A'
61
END
62
GO
63
IF @@ERROR <> 0 SET NOEXEC ON
64
GO
65
PRINT N'Creating [dbo].[DB_STATUS_ASSET_VALUE_BAR_CHECK]'
66
GO
67

    
68
-- BIEU DO O1 TING TRANG TAI SAN (GIA TRI)
69
CREATE   PROC [dbo].[DB_STATUS_ASSET_VALUE_BAR_CHECK]
70
@p_USER_LOGIN VARCHAR(250) = NULL,
71
@p_TYPE_ID VARCHAR(5) = NULL,
72
@p_GROUP_ID VARCHAR(15) = NULL,
73
@p_BRANCH_ID VARCHAR(15) = NULL,
74
@p_FROM_DATE VARCHAR(100) = NULL,
75
@p_TO_DATE VARCHAR(100) = NULL,
76
@p_AMORT_DATE_CHECK VARCHAR(100) = NULL,
77
@p_USE_DATE_KT_CHECK VARCHAR(100) = NULL,
78
@p_FILTER VARCHAR(100) = NULL
79
AS
80
BEGIN
81
	DECLARE @BRANCH_LOGIN varchar(15) ='', @DEP_LOGIN varchar(15) =''
82
	SELECT @DEP_LOGIN = SECUR_CODE, @BRANCH_LOGIN = TLSUBBRID FROM TL_USER WHERE TLNANME = @p_USER_LOGIN
83

    
84
  IF(NOT EXISTS(SELECT * FROM CM_DEPARTMENT cd WHERE cd.BRANCH_ID = @BRANCH_LOGIN AND cd.DEP_ID = @DEP_LOGIN AND (cd.DEP_CODE = '0690604' OR cd.DEP_CODE = '0690802' OR cd.DEP_CODE = '0690803')))
85
  BEGIN
86
    IF(@BRANCH_LOGIN = 'DV0001') SET @p_BRANCH_ID = @DEP_LOGIN
87
    ELSE SET @p_BRANCH_ID = @BRANCH_LOGIN
88
  END
89

    
90

    
91
	IF(@p_TYPE_ID = 'ALL') SET @p_TYPE_ID=''
92

    
93
		--IF(@p_USE_DATE_KT_CHECK = '1')
94
		--BEGIN
95
		--	SELECT DISTINCT 
96
		--		YEAR(USE_DATE_KT) AS [YEAR],ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) AS BUY_PRICE
97
		--	FROM ASS_MASTER A
98
		--	WHERE 1=1
99
		--	AND A.BUY_DATE_KT IS NOT NULL
100
		--	--AND (CONVERT(date,A.USE_DATE_KT,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
101
		--	AND (CONVERT(date,A.USE_DATE_KT,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='')
102
		--	AND (A.TYPE_ID=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
103
		--	AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR A.GROUP_ID IN (SELECT GROUP_ID FROM ASS_GROUP WHERE PARENT_ID = @p_GROUP_ID))
104
		--	AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID)
105
		--	GROUP BY YEAR(USE_DATE_KT)
106
		--	ORDER BY YEAR(USE_DATE_KT) ASC
107
		--END
108
		--ELSE IF(@p_AMORT_DATE_CHECK = '1')
109
		--BEGIN
110
		--	SELECT DISTINCT 
111
		--		YEAR(AMORT_START_DATE) AS [YEAR],ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) AS BUY_PRICE
112
		--	FROM ASS_MASTER A
113
		--	WHERE 1=1
114
		--	AND A.BUY_DATE_KT IS NOT NULL
115
		--	--AND (CONVERT(date,A.AMORT_START_DATE,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
116
		--	AND (CONVERT(date,A.AMORT_START_DATE,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='')
117
		--	AND (A.TYPE_ID=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
118
		--	AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR A.GROUP_ID IN (SELECT GROUP_ID FROM ASS_GROUP WHERE PARENT_ID = @p_GROUP_ID))
119
		--	AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID)
120
		--	GROUP BY YEAR(AMORT_START_DATE)
121
		--	ORDER BY YEAR(AMORT_START_DATE) ASC
122
		--END
123
		
124
		DECLARE @YEAR INT
125
		DECLARE @TABLE TABLE(
126
			USE_DATE_KT NVARCHAR(100) NULL,
127
			BUY_PRICE DECIMAL(18,2) NULL,
128
			[YEAR] VARCHAR(10) NULL
129
		)
130
		DECLARE @TBALE_YEAR_FILTER TABLE(
131
			[YEAR] VARCHAR(10) 
132
		)
133
		DECLARE @YEAR_IN INT = YEAR(CONVERT(date,@p_TO_DATE,103))
134
		INSERT INTO @TBALE_YEAR_FILTER VALUES(YEAR(CONVERT(date,@p_TO_DATE,103)))
135
		WHILE(@YEAR_IN > YEAR(CONVERT(date,@p_FROM_DATE,103)))
136
		BEGIN
137
			SET @YEAR_IN = @YEAR_IN - 1
138
			INSERT INTO @TBALE_YEAR_FILTER VALUES(@YEAR_IN)
139
		END
140
		SELECT [YEAR],0 AS BUY_PRICE FROM @TBALE_YEAR_FILTER ORDER BY [YEAR] 
141
		DECLARE CUR_FILTER_YEAR CURSOR FOR
142
		SELECT [YEAR] FROM @TBALE_YEAR_FILTER
143
		--SELECT DISTINCT 
144
		--	CASE WHEN  @p_USE_DATE_KT_CHECK = '1' THEN YEAR(USE_DATE_KT) 
145
		--		ELSE YEAR(AMORT_START_DATE) END
146
		--	AS USE_DATE_KT
147
		--FROM ASS_MASTER A WHERE 1=1
148
		--AND USE_DATE_KT IS NOT NULL
149
		--AND ((@p_USE_DATE_KT_CHECK = '1' AND (CONVERT(date,A.USE_DATE_KT,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='') AND (CONVERT(date,A.USE_DATE_KT,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE =''))
150
		--	OR (@p_AMORT_DATE_CHECK = '1' AND (CONVERT(date,A.AMORT_START_DATE,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='') AND (CONVERT(date,A.AMORT_START_DATE,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE =''))
151
		--	)
152
		--AND (A.[TYPE_ID]=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
153
		--AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR A.GROUP_ID IN (SELECT GROUP_ID FROM ASS_GROUP WHERE PARENT_ID = @p_GROUP_ID))
154
		--AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID)
155
		OPEN CUR_FILTER_YEAR
156

    
157
		IF(@p_USE_DATE_KT_CHECK = '1')
158
		BEGIN
159
			FETCH NEXT FROM CUR_FILTER_YEAR
160
				  INTO @YEAR
161

    
162
			WHILE @@FETCH_STATUS = 0
163
			BEGIN
164
				INSERT INTO @TABLE(USE_DATE_KT,BUY_PRICE,[YEAR])
165
				(
166
					SELECT N'0 - 3 năm' USE_DATE_KT,ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) BUY_PRICE,@YEAR AS [YEAR] FROM ASS_MASTER A
167
                    LEFT JOIN
168
            	(
169
            		SELECT X.ASSET_ID,ISNULL(SUM(CASE X.CRDR  WHEN 'C' THEN X.ASSET_AMT WHEN 'D' THEN -X.ASSET_AMT END),0) AS PHAT_SINH_DAU 
170
            		FROM ASS_VALUES X
171
            		INNER JOIN ASS_MASTER Y ON X.ASSET_ID = Y.ASSET_ID
172
            		WHERE (X.TRN_DT < CONVERT(DATE,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE = '') 
173
            		--(X.CREATE_DT >= Y.CREATE_DT) 
174
            		--AND (X.CREATE_DT <= CONVERT(DATETIME,@p_Fromdate,103) OR @p_Fromdate IS NULL OR @p_Fromdate = '')
175
            		GROUP BY X.ASSET_ID
176
            	) CC ON A.ASSET_ID = CC.ASSET_ID                 AND A.RECORD_STATUS = '1' AND A.AUTH_STATUS = 'A' AND A.ENTRY_BOOKED = 'Y'
177
					--AND (CONVERT(date,A.USE_DATE_KT,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
178
					AND ((A.[TYPE_ID] = 'TSCD' AND  CONVERT(date,A.LIQUIDATION_DT,103) >= CONVERT(date,@p_FROM_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT ='') 
179
							OR (A.[TYPE_ID] = 'CCLD' AND A.AMORT_STATUS <> 'VNM' AND  CONVERT(date,A.LIQUIDATION_DT,103) > CONVERT(date,@p_TO_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT =''))
180
					AND (CONVERT(date,A.USE_DATE_KT,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='' OR (A.TYPE_ID ='TSCD' AND  (A.USE_DATE_KT IS NULL OR A.USE_DATE_KT ='')))
181
					AND (@YEAR-YEAR(USE_DATE_KT) >= 0 OR (A.TYPE_ID ='TSCD' AND  (A.USE_DATE_KT IS NULL OR A.USE_DATE_KT ='')))
182
					AND (@YEAR-YEAR(USE_DATE_KT) <= 3 OR (A.TYPE_ID ='TSCD' AND  (A.USE_DATE_KT IS NULL OR A.USE_DATE_KT ='')))
183
					AND (A.[TYPE_ID]=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
184
				AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,1) =@p_GROUP_ID) 
185
							OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,2) =@p_GROUP_ID) OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,3) =@p_GROUP_ID))
186
					AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID OR (A.TYPE_ID ='TSCD' AND ISNULL(A.BRANCH_CREATE,'') =@p_BRANCH_ID))
187
				)
188
				UNION ALL
189
				(
190
					SELECT N'3 - 5 năm' USE_DATE_KT,ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) BUY_PRICE,@YEAR AS [YEAR] FROM ASS_MASTER A
191
					WHERE 1=1 AND A.RECORD_STATUS = '1' AND A.AUTH_STATUS = 'A' AND A.ENTRY_BOOKED = 'Y'
192
					--AND (CONVERT(date,A.USE_DATE_KT,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
193
					AND ((A.[TYPE_ID] = 'TSCD' AND  CONVERT(date,A.LIQUIDATION_DT,103) >= CONVERT(date,@p_FROM_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT ='') 
194
							OR (A.[TYPE_ID] = 'CCLD' AND A.AMORT_STATUS <> 'VNM' AND  CONVERT(date,A.LIQUIDATION_DT,103) > CONVERT(date,@p_TO_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT =''))
195
					AND (CONVERT(date,A.USE_DATE_KT,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='')
196
					AND (@YEAR-YEAR(USE_DATE_KT) > 3)
197
					AND (@YEAR-YEAR(USE_DATE_KT) <= 5)
198
					AND (A.[TYPE_ID]=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
199
				AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,1) =@p_GROUP_ID) 
200
							OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,2) =@p_GROUP_ID) OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,3) =@p_GROUP_ID))
201
					AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID OR (A.TYPE_ID ='TSCD' AND ISNULL(A.BRANCH_CREATE,'') =@p_BRANCH_ID))
202
				)
203
				UNION ALL
204
				(
205
					SELECT N'Trên 5 năm' USE_DATE_KT,ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) BUY_PRICE,@YEAR AS [YEAR] FROM ASS_MASTER A
206
					WHERE 1=1 AND A.RECORD_STATUS = '1' AND A.AUTH_STATUS = 'A' AND A.ENTRY_BOOKED = 'Y'
207
					--AND (CONVERT(date,A.USE_DATE_KT,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
208
					AND ((A.[TYPE_ID] = 'TSCD' AND  CONVERT(date,A.LIQUIDATION_DT,103) >= CONVERT(date,@p_FROM_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT ='') 
209
							OR (A.[TYPE_ID] = 'CCLD' AND A.AMORT_STATUS <> 'VNM' AND  CONVERT(date,A.LIQUIDATION_DT,103) > CONVERT(date,@p_TO_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT =''))
210
					AND (CONVERT(date,A.USE_DATE_KT,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='')
211
					AND (@YEAR-YEAR(USE_DATE_KT) > 5)
212
					AND (A.[TYPE_ID]=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
213
				AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,1) =@p_GROUP_ID) 
214
							OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,2) =@p_GROUP_ID) OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,3) =@p_GROUP_ID))
215
					AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID OR (A.TYPE_ID ='TSCD' AND ISNULL(A.BRANCH_CREATE,'') =@p_BRANCH_ID))
216
				)
217

    
218
				FETCH NEXT FROM CUR_FILTER_YEAR
219
					  INTO @YEAR
220
			END
221
		END
222
		ELSE IF(@p_AMORT_DATE_CHECK = '1')
223
		BEGIN 
224
			FETCH NEXT FROM CUR_FILTER_YEAR
225
				  INTO @YEAR
226

    
227
			WHILE @@FETCH_STATUS = 0
228
			BEGIN
229
				INSERT INTO @TABLE(USE_DATE_KT,BUY_PRICE,[YEAR])
230
				(
231
					SELECT N'0 - 3 năm' USE_DATE_KT,ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) BUY_PRICE,@YEAR AS [YEAR] FROM ASS_MASTER A
232
					WHERE 1=1 AND A.RECORD_STATUS = '1' AND A.AUTH_STATUS = 'A' AND A.ENTRY_BOOKED = 'Y'
233
					--AND (CONVERT(date,A.AMORT_START_DATE,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
234
					AND ((A.[TYPE_ID] = 'TSCD' AND  CONVERT(date,A.LIQUIDATION_DT,103) >= CONVERT(date,@p_FROM_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT ='') 
235
							OR (A.[TYPE_ID] = 'CCLD' AND A.AMORT_STATUS <> 'VNM' AND  CONVERT(date,A.LIQUIDATION_DT,103) > CONVERT(date,@p_TO_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT =''))
236
					AND (CONVERT(date,A.AMORT_START_DATE,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='')
237
					AND (@YEAR-YEAR(AMORT_START_DATE) >= 0)
238
					AND (@YEAR-YEAR(AMORT_START_DATE) <= 3)
239
					AND (A.[TYPE_ID]=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
240
					AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,1) =@p_GROUP_ID) 
241
							OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,2) =@p_GROUP_ID) OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,3) =@p_GROUP_ID))
242
					AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID)
243
				)
244
				UNION ALL
245
				(
246
					SELECT N'3 - 5 năm' USE_DATE_KT,ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) BUY_PRICE,@YEAR AS [YEAR] FROM ASS_MASTER A
247
					WHERE 1=1 AND A.RECORD_STATUS = '1' AND A.AUTH_STATUS = 'A' AND A.ENTRY_BOOKED = 'Y'
248
					--AND (CONVERT(date,A.AMORT_START_DATE,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
249
					AND ((A.[TYPE_ID] = 'TSCD' AND  CONVERT(date,A.LIQUIDATION_DT,103) >= CONVERT(date,@p_FROM_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT ='') 
250
							OR (A.[TYPE_ID] = 'CCLD' AND A.AMORT_STATUS <> 'VNM' AND  CONVERT(date,A.LIQUIDATION_DT,103) > CONVERT(date,@p_TO_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT =''))
251
					AND (CONVERT(date,A.AMORT_START_DATE,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='')
252
					AND (@YEAR-YEAR(AMORT_START_DATE) > 3)
253
					AND (@YEAR-YEAR(AMORT_START_DATE) <= 5)
254
					AND (A.[TYPE_ID]=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
255
					AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,1) =@p_GROUP_ID) 
256
							OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,2) =@p_GROUP_ID) OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,3) =@p_GROUP_ID))
257
					AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID)
258
				)
259
				UNION ALL
260
				(
261
					SELECT N'Trên 5 năm' USE_DATE_KT,ROUND(ISNULL(SUM(BUY_PRICE),0)/1000000000,2) BUY_PRICE,@YEAR AS [YEAR] FROM ASS_MASTER A
262
					WHERE 1=1 AND A.RECORD_STATUS = '1' AND A.AUTH_STATUS = 'A' AND A.ENTRY_BOOKED = 'Y'
263
					--AND (CONVERT(date,A.AMORT_START_DATE,103) >= CONVERT(date,@p_FROM_DATE,103) OR @p_FROM_DATE IS NULL OR @p_FROM_DATE ='')
264
					AND ((A.[TYPE_ID] = 'TSCD' AND  CONVERT(date,A.LIQUIDATION_DT,103) >= CONVERT(date,@p_FROM_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT ='') 
265
							OR (A.[TYPE_ID] = 'CCLD' AND A.AMORT_STATUS <> 'VNM' AND  CONVERT(date,A.LIQUIDATION_DT,103) > CONVERT(date,@p_TO_DATE,103) OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT =''))
266
					AND (CONVERT(date,A.AMORT_START_DATE,103) <= CONVERT(date,@p_TO_DATE,103) OR @p_TO_DATE IS NULL OR @p_TO_DATE ='')
267
					AND (@YEAR-YEAR(AMORT_START_DATE) > 5)
268
					AND (A.[TYPE_ID]=@p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID ='')
269
					AND (A.GROUP_ID=@p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID ='' OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,1) =@p_GROUP_ID) 
270
							OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,2) =@p_GROUP_ID) OR (DBO.[FN_GET_GROUPID] (A.GROUP_ID,3) =@p_GROUP_ID))
271
					AND (A.BRANCH_ID=@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR A.DEPT_ID = @p_BRANCH_ID)
272
				)
273

    
274
				FETCH NEXT FROM CUR_FILTER_YEAR
275
					  INTO @YEAR
276
			END
277
		END
278
		CLOSE CUR_FILTER_YEAR
279
		DEALLOCATE CUR_FILTER_YEAR
280

    
281
		SELECT * FROM @TABLE	
282
		ORDER BY [YEAR] ASC
283
END
284

    
285
GO
286
IF @@ERROR <> 0 SET NOEXEC ON
287
GO
288
PRINT N'Creating [dbo].[TR_REQ_PAYMENT_Search_2]'
289
GO
290

    
291
CREATE   PROCEDURE [dbo].[TR_REQ_PAYMENT_Search_2]
292
@p_REQ_PAY_ID	varchar(15)= NULL,
293
@p_REQ_PAY_CODE	varchar(50)	= NULL,
294
@p_REQ_DT VARCHAR(20)= NULL,
295
@p_BRANCH_ID	varchar(15)	= NULL,
296
@p_DEP_ID	varchar(15)	= NULL,
297
@p_REQ_REASON	nvarchar(MAX)	= NULL,
298
@p_REQ_TYPE	varchar(15)	= NULL,
299
@P_REQ_ENTRIES nvarchar(MAX)	= NULL,
300
@p_REQ_DESCRIPTION	nvarchar(MAX)	= NULL,
301
@p_REF_ID	varchar(15)	= NULL,
302
@p_RECEIVER_PO	nvarchar(250)	= NULL,
303
@p_REQ_PAY_TYPE	varchar(15)	= NULL,
304
@p_REQ_TYPE_CURRENCY	nvarchar(50)	= NULL,
305
@p_REQ_AMT	decimal(18, 0)	= NULL,
306
@p_REQ_TEMP_AMT	decimal(18, 0)	= NULL,
307
@p_MAKER_ID	varchar(15)	= NULL,
308
@p_CREATE_DT	varchar(25)	= NULL,
309
@p_EDITOR_ID	varchar(15)	= NULL,
310
@p_AUTH_STATUS	varchar(1)	= NULL,
311
@p_CHECKER_ID	varchar(15)	= NULL,
312
@p_APPROVE_DT	varchar(25)	= NULL,
313
@p_CREATE_DT_KT	varchar(25)	= NULL,
314
@p_MAKER_ID_KT	varchar(15)	= NULL,
315
@p_AUTH_STATUS_KT	varchar(1)	= NULL,
316
@p_CHECKER_ID_KT	nvarchar(20)	= NULL,
317
@p_EXEC_USER_KT	nvarchar(20)	= NULL,
318
@p_APPROVE_DT_KT  varchar(25)= null,
319
@p_CONFIRM_NOTE	nvarchar(500)	= NULL,
320
@p_BRANCH_CREATE	varchar(15)	= NULL,
321
@p_NOTES	varchar(15)	= NULL,
322
@p_RECORD_STATUS	varchar(1)	= NULL,
323
@p_TRANSFER_MAKER	nvarchar(50)	= NULL,
324
@p_TRANSFER_DT	varchar(25)	= NULL,
325
@p_TRASFER_USER_RECIVE	varchar(15)	= NULL,
326
@p_PROCESS	varchar(15)	= NULL,
327
@p_PAY_PHASE VARCHAR(15) = NULL,
328
@p_TOP INT = 300,
329
@p_LEVEL varchar(10) = NULL,
330
@p_FRMDATE VARCHAR(20)= NULL,
331
@p_TODATE VARCHAR(20) = NULL,
332
@p_BRANCH_LOGIN VARCHAR(15) = NULL,
333
@p_IS_UPDATE_KT VARCHAR(15) = NULL,
334
@P_IS_TRANSFER VARCHAR(15) = NULL,
335
@p_TERM_ID VARCHAR(15) = NULL,
336
@P_USER_LOGIN VARCHAR(15)= NULL,
337
@p_FUNCTION VARCHAR(15) = NULL,
338
@p_TYPE_SEARCH VARCHAR(15) = NULL
339
AS
340
BEGIN -- PAGING
341
--SET @p_TOP = NULL
342
IF(ISNULL(@p_REQ_PAY_ID, '') <> '')
343
BEGIN
344
	SET @p_DEP_ID = NULL
345
END
346
declare @tmp table(BRANCH_ID varchar(15))
347
insert into @tmp  SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_ID)
348
declare @tmp_Login table(BRANCH_ID varchar(15))
349
insert into @tmp_Login  SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_LOGIN)
350
DECLARE @ROLE_ID VARCHAR(20) , @DEP_ID_LG VARCHAR(15) = NULL, @COST_LG VARCHAR(15), @DVDM_ID VARCHAR(15)
351
DECLARE @BRANCH_TYPE VARCHAR(15)
352
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))
353
SET @ROLE_ID = (SELECT ROLENAME FROM TL_USER WHERE TLNANME=@p_USER_LOGIN)
354
SET @DEP_ID_LG =(SELECT SECUR_CODE FROM TL_USER WHERE TLNANME=@p_USER_LOGIN)
355
DECLARE @TMP_DEP TABLE(DEP_ID VARCHAR(15))
356
SET @COST_LG =(SELECT TOP 1 COST_ID FROM PL_COSTCENTER_DT WHERE DEP_ID =@DEP_ID_LG)
357
SET @DVDM_ID =(SELECT TOP 1 DVDM_ID FROM PL_COSTCENTER WHERE COST_ID =@COST_LG)
358
INSERT INTO @TMP_DEP SELECT B.DEP_ID FROM PL_COSTCENTER_DT B  WHERE COST_ID =@COST_LG
359
DECLARE @BRANCH_TYPE_LG VARCHAR(15)
360
SET @BRANCH_TYPE_LG = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID=@p_BRANCH_LOGIN)
361
-- KHAI BAO NHUNG PHONG BAN MA 1 USER KIEM NHIEM
362
DECLARE @TABLE_ROLE TABLE (ROLE_AUTH VARCHAR(50))  
363
INSERT INTO @TABLE_ROLE VALUES (@ROLE_ID)
364
INSERT INTO @TABLE_ROLE SELECT ROLE_NEW FROM TL_SYS_ROLE_MAPPING WHERE ROLE_OLD =@ROLE_ID AND TLNAME =@P_USER_LOGIN  
365
AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
366
AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='') 
367
DECLARE @DEP_AUTH TABLE (DEP_AUTH VARCHAR(15))
368
INSERT INTO @DEP_AUTH VALUES (@DEP_ID_LG)
369
INSERT INTO @DEP_AUTH SELECT DEP_ID FROM TL_SYS_ROLE_MAPPING WHERE TLNAME =@P_USER_LOGIN AND 
370
CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) AND CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103)
371
--- LUCTV 19.10.2022 BO SUNG THEM PHONG BAN CHA SE THAY DANH SACH PHONG BAN CON
372
INSERT INTO @DEP_AUTH SELECT DEP_ID FROM CM_DEPARTMENT WHERE FATHER_ID =@DEP_ID_LG
373
-- KHAI BAO PHẦN ỦY QUYỀN ĐƠN VỊ
374
DECLARE @BRANCH_AUTH TABLE (BRN_AUTH VARCHAR(15))
375
INSERT INTO @BRANCH_AUTH VALUES (@p_BRANCH_LOGIN)
376
INSERT INTO @BRANCH_AUTH SELECT BRANCH_ID FROM TL_SYS_ROLE_MAPPING WHERE TLNAME =@P_USER_LOGIN AND 
377
CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) AND CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103)
378
--- NEU USER KHONG CHON TU NGAY THI TU NGAY BANG NGAY 1 1 HANG THANG 20211116
379
DECLARE @DATE DATE
380
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
381
BEGIN
382
	--DECLARE @MONTH INT, @YEAR INT
383
	--SET @MONTH = MONTH(GETDATE()) -1
384
	--SET @YEAR = YEAR(GETDATE())
385
	--BEGIN
386
	--	SET @p_FRMDATE ='01/'+CONVERT(VARCHAR,@MONTH,5) +'/'+ CONVERT(VARCHAR,@YEAR,5)
387
	--END
388
	SET @DATE = CONVERT(DATE,GETDATE(),103)
389
	SET @DATE = DATEADD(MONTH,-2,@DATE)
390
END
391
ELSE
392
BEGIN
393
	SET @DATE = CONVERT(DATE,@p_FRMDATE,103)
394
END
395
	--DOANPTT: XAC DINH USER CO DUOC XEM HET PHIEU DE NGHI THANH TOAN CUA PHONG MINH HAY KHONG
396
	DECLARE @IS_SEE_ALL_HC VARCHAR(1) 
397
	IF((SELECT COUNT(*) FROM PL_ROLE_DATA_CONFIG WHERE BRANCH_ID = @P_USER_LOGIN AND ROLE_TYPE = 'TR_REQ_PAYMENT') > 0)
398
	BEGIN
399
		SET @IS_SEE_ALL_HC = 'Y'
400
	END
401
	ELSE
402
	BEGIN
403
		SET @IS_SEE_ALL_HC = 'N'
404
	END
405
-- HẾT KHAI BÁO
406
SET  @ROLE_ID =(SELECT TOP 1 RoleName FROM TL_USER WHERE TLNANME =@p_USER_LOGIN)
407
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'))
408
BEGIN
409
	PRINT @ROLE_ID
410
END
411
ELSE
412
BEGIN
413
	SET @ROLE_ID =(SELECT TOP 1 RoleName FROM TL_USER_V2 WHERE TLNANME =@p_USER_LOGIN)
414
	IF(@ROLE_ID IS NULL OR @ROLE_ID ='')
415
	BEGIN
416
			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))
417
	END
418
END
419
INSERT INTO @TABLE_ROLE VALUES (@ROLE_ID)--2021823
420
--SET @ROLE_ID =(SELECT TOP 1 RoleName FROM TL_USER_V2 WHERE TLNANME =@p_USER_LOGIN)
421
IF(@p_TOP IS NULL OR @p_TOP=0)
422
BEGIN
423
-- PAGING BEGIN
424
		SELECT A.*,B.AUTH_STATUS_NAME, C.AUTH_STATUS_NAME AUTH_STATUS_NAME_KT, TL.TLFullName CREATE_FULLNAME, C.AUTH_STATUS_KT_DESC,
425
		TL1.TLFullName APPROVE_FULLNAME,
426
		CASE WHEN ISNULL(TL2.TLFullName,'') <>'' THEN TL2.TLFullName ELSE TL8.TLFullName END AS CREATE_FULLNAME_KT,
427
		TL3.TLFullName APPROVE_FULLNAME_KT,
428
		CASE WHEN ISNULL(A.IS_PERIOD,'') <> '' AND A.IS_PERIOD ='Y' AND  EXISTS (SELECT TOP 1 X.* FROM TR_REQ_ADVANCE_DT X 
429
										INNER JOIN TR_CONTRACT CT ON X.REF_ID = CT.CONTRACT_ID
430
										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 
431
										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 
432
										WHERE REQ_PAY_ID = A.REQ_PAY_ID))),'')
433
										ELSE BR.BRANCH_NAME END BRANCH_NAME_REQ,
434
		--BR.BRANCH_NAME AS BRANCH_NAME_REQ,
435
		BR1.BRANCH_NAME BRANCH_NAME_CRE, DP.DEP_NAME, DP.DEP_CODE, BR.BRANCH_CODE BRANCH_CODE_REQ,
436
		--Luanlt--2019/10/15-Sửa AL,AL1
437
		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, 
438
		ISNULL(H.SOTIEN_TT,0) TOTAL_AMT_PAY_HIS,
439
		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,
440
		PC3.LEVEL_JOB, PC3.STATUS_JOB,PC3.TYPE_JOB,
441
		--CASE WHEN PC3.TLNAME IS NOT NULL AND PC3.TLNAME <>'' THEN @P_USER_LOGIN ELSE PC3.TLNAME END AS EXEC_USER,
442
		@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,
443
		BR_CORE.BRANCH_CODE AS BRANCH_CODE_CORE, BR_CORE.BRANCH_NAME AS BRANCH_NAME_CORE,'' AS BRANCH_CODE_CONTRACT,
444
		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))),'')
445
		AS BRANCH_NAME_CONTRACT,
446
		--doanptt 300622
447
		CASE WHEN PC3.TLNAME IS NOT NULL THEN PC3.TLNAME 
448
			 WHEN PC3.TLNAME <>'' THEN PC3.TLNAME 
449
			 ELSE TL2.TLNANME END AS EXEC_USER,
450
		dbo.FN_DATEDIFF_WITHOUT_WEEKEND(A.TRANSFER_DT, GETDATE()) AS NUMBER_OF_TRANSFER,
451
		PC3.TLNAME AS EXEC_USER_KT,
452
		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())
453
			 ELSE 0 END AS NUMBER_OF_SEND_APPR
454
-- SELECT END
455
        FROM TR_REQ_PAYMENT A
456
             LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS=B.AUTH_STATUS
457
             LEFT JOIN CM_AUTH_STATUS C ON A.AUTH_STATUS_KT=C.AUTH_STATUS
458
             LEFT JOIN TL_USER TL ON A.MAKER_ID=TL.TLNANME
459
             LEFT JOIN TL_USER TL1 ON A.CHECKER_ID=TL1.TLNANME
460
             LEFT JOIN TL_USER TL2 ON A.MAKER_ID_KT=TL2.TLNANME
461
             LEFT JOIN TL_USER TL3 ON A.CHECKER_ID_KT=TL3.TLNANME
462
             LEFT JOIN dbo.CM_BRANCH BR ON A.BRANCH_ID=BR.BRANCH_ID
463
			 LEFT JOIN dbo.CM_BRANCH BR1 ON A.BRANCH_CREATE=BR1.BRANCH_ID
464
             LEFT JOIN dbo.CM_DEPARTMENT DP ON DP.DEP_ID=A.DEP_ID
465
			 --Luanlt--2019/10/15-Sửa AL,AL1
466
			 LEFT JOIN CM_ALLCODE AL ON A.REQ_TYPE = AL.CDVAL AND AL.CDNAME='PAY_TYPE' AND AL.CDTYPE = 'REQ'
467
			 LEFT JOIN CM_ALLCODE AL1 ON A.REQ_PAY_TYPE = AL1.CDVAL AND AL1.CDNAME='REQ_PAY_TYPE' AND AL1.CDTYPE ='REQ'
468
			 LEFT JOIN TL_USER TL4 ON A.TRANSFER_MAKER = TL4.TLNANME
469
			 LEFT JOIN TL_USER TL5 ON A.TRASFER_USER_RECIVE = TL5.TLNANME
470
			 LEFT JOIN 
471
			 (
472
			 SELECT PAY_ADV_ID, SUM(AMT_PAY) SOTIEN_TT FROM TR_REQ_PAYMENT_DT WHERE AUTH_STATUS_KT ='A' GROUP BY PAY_ADV_ID
473
			 ) H ON A.REQ_PAY_ID =H.PAY_ADV_ID
474
			 LEFT JOIN TR_PO_MASTER PO ON A.REF_ID = PO.PO_ID AND A.REQ_TYPE='P'
475
			 LEFT JOIN CM_SUPPLIER S ON S.SUP_ID = PO.SUP_ID AND A.REQ_TYPE='P'
476
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC3 ON PC3.REQ_ID = A.REQ_PAY_ID AND PC3.STATUS_JOB ='C' 
477
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC4 ON PC4.REQ_ID = A.REQ_PAY_ID AND PC4.STATUS_JOB ='C'
478
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC5 ON PC5.REQ_ID = A.REQ_PAY_ID AND PC5.TYPE_JOB ='XL'
479
			 LEFT JOIN TL_USER TL8 ON PC5.TLNAME = TL8.TLNANME
480
			 LEFT JOIN TL_SYSROLE SR ON TL.RoleName = SR.ROLE_ID
481
			 LEFT JOIN CM_BRANCH BR_CORE ON TL2.TLSUBBRID = BR_CORE.BRANCH_ID
482
        WHERE 1=1 
483
			  AND A.IS_CREATE_AUTO = 'Y'
484
			  AND A.IS_CREATE_AUTO_DONE = 'Y'
485
			  AND(A.REQ_PAY_ID =@p_REQ_PAY_ID OR @p_REQ_PAY_ID='' OR @p_REQ_PAY_ID IS NULL)
486
			  AND(	A.AUTH_STATUS=@p_AUTH_STATUS 
487
					OR @p_AUTH_STATUS='' 
488
					OR @p_AUTH_STATUS IS NULL 
489
					OR	(	@p_AUTH_STATUS = 'G' 
490
							AND ISNULL(A.PROCESS, '') = '0' 
491
							AND A.AUTH_STATUS = 'U'
492
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
493
						) 
494
					OR	(	@p_AUTH_STATUS = 'W' 
495
							AND ISNULL(A.PROCESS, '') = '' 
496
							AND A.AUTH_STATUS = 'U'
497
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
498
						)
499
				)
500
			  AND(A.MAKER_ID =@p_MAKER_ID OR @p_MAKER_ID='' OR @p_MAKER_ID IS NULL)
501
			  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)
502
			  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)
503
			  AND(A.DEP_ID=@p_DEP_ID OR @p_DEP_ID='' OR @p_DEP_ID IS NULL)
504
			  AND	(	(	@p_LEVEL='ALL' AND	(	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
505
													OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
506
												)
507
						) -- LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
508
						OR	(	(	@p_LEVEL='UNIT' 
509
									AND A.BRANCH_ID=@p_BRANCH_ID
510
								)
511
								OR(@p_BRANCH_ID='' OR @p_BRANCH_ID IS NULL) 
512
								OR (	@BRANCH_TYPE_LG <> 'HS' AND
513
										EXISTS	(	SELECT * 
514
													FROM TR_REQ_ADVANCE_DT 
515
													WHERE REQ_PAY_ID = A.REQ_PAY_ID
516
													AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
517
													AND AUTH_STATUS_KT ='A'
518
												)
519
									)
520
							)
521
					)
522
			  AND	(	(	@p_LEVEL='ALL' 
523
							AND (	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
524
									OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
525
								)
526
						) -- - LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
527
						OR	(	(	@p_LEVEL='UNIT' 
528
									AND A.BRANCH_ID=@p_BRANCH_ID
529
								)
530
								OR	(	@p_BRANCH_ID='' 
531
										OR @p_BRANCH_ID IS NULL
532
									)
533
																 OR	(	@BRANCH_TYPE_LG <> 'HS' 
534
																		AND EXISTS	(	SELECT * 
535
																						FROM TR_REQ_ADVANCE_DT 
536
																						WHERE REQ_PAY_ID = A.REQ_PAY_ID 
537
																						AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
538
																						AND AUTH_STATUS_KT ='A'
539
																					)
540
																	)
541
							)
542
					)
543
			  AND	(	(	A.MAKER_ID_KT IS NOT NULL 
544
							AND @p_IS_UPDATE_KT='Y'
545
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
546
						OR	(	(	A.MAKER_ID_KT IS NULL 
547
									AND @p_IS_UPDATE_KT='N'
548
								)
549
							)
550
							OR @p_IS_UPDATE_KT IS NULL 
551
							OR @p_IS_UPDATE_KT='')
552
			  AND(A.NOTES LIKE N'%'+@p_NOTES+'%' OR @p_NOTES='' OR @p_NOTES IS NULL)
553
			  --Luanlt-2019/10/14-Thêm Filter  REQ_TYPE,FROMDATE TODATE REF_ID
554
			  AND(A.REQ_TYPE LIKE N'%'+@p_REQ_TYPE+'%' OR @p_REQ_TYPE = '' OR @p_REQ_TYPE IS NULL)
555
			  AND(CONVERT(DATE, A.CREATE_DT)>=CONVERT(DATE, @DATE, 103)OR @p_FRMDATE IS NULL OR @p_FRMDATE='' OR A.CREATE_DT IS NULL)
556
              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)
557
			  --Luanlt-2019/10/17-Thêm Filter REQ_PAY_CODE REQ_PAY_NAME  BRANCH_ID DEP_ID KT_AUTH
558
			  AND(A.REQ_PAY_CODE LIKE N'%'+@p_REQ_PAY_CODE+'%' or @p_REQ_PAY_CODE='' OR @p_REQ_PAY_CODE IS NULL)
559
			  AND(A.REQ_REASON LIKE N'%'+@p_REQ_REASON+'%' or @p_REQ_REASON='' OR @p_REQ_REASON IS NULL)
560
			  --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 <>'')
561
			  AND	(	(@p_BRANCH_ID <> @p_BRANCH_LOGIN AND A.BRANCH_ID = @p_BRANCH_ID) 
562
						OR @p_BRANCH_ID = @p_BRANCH_LOGIN 
563
						OR @p_BRANCH_ID='' 
564
						OR @p_BRANCH_ID IS NULL
565
					)
566
			  AND(A.DEP_ID = @p_DEP_ID  or @p_DEP_ID='' OR @p_DEP_ID IS NULL)
567
			  AND	(	(	A.AUTH_STATUS_KT=@p_AUTH_STATUS_KT 
568
							OR @p_AUTH_STATUS_KT='' 
569
							OR @p_AUTH_STATUS_KT IS NULL
570
						) 
571
						OR (@p_AUTH_STATUS_KT ='P' AND A.AUTH_STATUS_KT IN ('P','S'))
572
					)
573
			  AND(A.REF_ID =@p_REF_ID OR @p_REF_ID='' OR @p_REF_ID IS NULL)
574
			  --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
575
              --OR((A.TRANSFER_MAKER IS NULL AND @p_IS_TRANSFER='N'))OR @p_IS_TRANSFER IS NULL OR @p_IS_TRANSFER='')
576
			  -- Neu ben phan he ke toan thi chi lay nhung user co maker_id khac null
577
			  AND  (
578
						(
579
							@p_FUNCTION ='KT' 
580
							AND (
581
									EXISTS(SELECT TOP 1 * FROM PL_REQUEST_PROCESS_CHILD X WHERE REQ_ID = A.REQ_PAY_ID 
582
									AND (
583
											X.TLNAME= @p_USER_LOGIN 
584
											OR X.TLNAME =@p_EXEC_USER_KT)
585
										)
586
								) 
587
							OR	(A.MAKER_ID_KT = @p_MAKER_ID_KT OR PC3.TLNAME = @p_MAKER_ID_KT)
588
							OR A.CHECKER_ID_KT ='admin' 
589
							OR A.AUTH_STATUS_KT='A' 
590
						)
591
						OR @p_FUNCTION ='' 
592
						OR @p_FUNCTION IS NULL 
593
						OR @p_FUNCTION ='TF' 
594
					)	  
595
				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)
596
			 -- 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 ='')
597
				AND	(	(	@p_IS_TRANSFER='Y' 
598
							AND	(	EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID) 
599
									OR A.AUTH_STATUS_KT ='A'
600
								)
601
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
602
						OR	(	(	@p_IS_TRANSFER='N' 
603
									AND (	NOT EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID )) 
604
											AND A.AUTH_STATUS_KT <>'A'
605
								)
606
							)
607
						OR @p_IS_TRANSFER IS NULL 
608
						OR @p_IS_TRANSFER=''
609
					)	
610
				AND
611
				( /*0*/
612
				  A.MAKER_ID =@p_USER_LOGIN  
613
				  OR (A.DEP_ID = @p_DEP_ID)
614
				  OR ( A.TRASFER_USER_RECIVE = @P_USER_LOGIN 
615
						AND A.AUTH_STATUS NOT IN ('E','R')
616
					 )
617
				  OR	(	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
618
								AND A.DEP_ID = @DEP_ID_LG
619
								AND A.BRANCH_ID = 'DV0001'
620
								AND A.AUTH_STATUS IN ('U','R', 'A')
621
								AND @p_TYPE_SEARCH ='HC'
622
							)
623
							OR	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
624
									AND A.BRANCH_ID = @p_BRANCH_LOGIN
625
									AND A.AUTH_STATUS IN ('U','R', 'A')
626
									AND @p_TYPE_SEARCH ='HC'
627
								)
628
						)
629
				  OR (	A.AUTH_STATUS <>'E' /*1*/
630
						AND
631
						(/*2*/
632
							(	@p_TYPE_SEARCH ='HC'		/*3*/ 
633
								AND @BRANCH_TYPE_LG ='HS'  
634
								AND (/*4*/A.TRASFER_USER_RECIVE = @p_USER_LOGIN 
635
										OR (/*5*/
636
												EXISTS (	SELECT * 
637
															FROM @TABLE_ROLE 
638
															WHERE ROLE_AUTH IN ('GDDV','GDK','KTT','TPTC','TP','PP','TC')
639
													   )
640
												AND    (
641
															(	A.BRANCH_ID =@p_BRANCH_LOGIN 
642
																OR A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
643
															) 
644
															AND (	A.DEP_ID = @DEP_ID_LG 
645
																	OR  ( 
646
																			A.DEP_ID  IN ('DEP000000000051','DEP000000000733') 
647
																			AND @p_USER_LOGIN ='cuongpv2'
648
																		) 
649
																	OR A.DEP_ID IN (
650
																						SELECT * 
651
																						FROM @DEP_AUTH
652
																					)
653
																)
654
														)
655
												AND ( 
656
														A.TRASFER_USER_RECIVE IS NULL 
657
														OR A.TRASFER_USER_RECIVE ='' 
658
														OR (
659
																A.TRASFER_USER_RECIVE IS NOT NULL 
660
																AND A.TRASFER_USER_RECIVE <>'' 
661
																AND A.PROCESS IS NOT NULL 
662
																AND A.PROCESS <>''
663
															)
664
													)
665
											)/*5*/
666
										)/*4*/
667
								)/*3*/
668
							OR(/*trong 2*/
669
									@p_TYPE_SEARCH ='HC' 
670
									AND @BRANCH_TYPE_LG = 'CN' 
671
									AND (
672
											@ROLE_ID IN ('GDDV','PGD','TPGD','PPGD') 
673
											AND A.BRANCH_ID =@p_BRANCH_LOGIN 
674
											AND
675
												(
676
													(
677
														A.TRASFER_USER_RECIVE IS NOT NULL 
678
														AND A.TRASFER_USER_RECIVE <>'' 
679
														AND A.PROCESS IS NOT NULL 
680
														AND A.PROCESS <>''
681
													 ) 
682
													OR A.TRASFER_USER_RECIVE ='' 
683
													OR A.TRASFER_USER_RECIVE IS NULL
684
												 )
685
											OR (
686
													(
687
														A.BRANCH_CREATE <> @p_BRANCH_LOGIN 
688
														AND A.TRASFER_USER_RECIVE IS NOT NULL 
689
															AND A.TRASFER_USER_RECIVE <>''
690
													) 
691
													OR A.BRANCH_CREATE = @p_BRANCH_LOGIN
692
												)
693
											AND A.BRANCH_ID =@p_BRANCH_ID
694
										)
695
								)
696
							 OR
697
								(
698
									@p_TYPE_SEARCH ='HC' 
699
									AND @BRANCH_TYPE_LG = 'PGD' 
700
									AND (
701
											@ROLE_ID IN ('GDDV','TPGD','PPGD','PGD') 
702
											AND A.BRANCH_ID =@p_BRANCH_LOGIN
703
										)
704
								)
705
							 OR
706
								(
707
									@p_TYPE_SEARCH ='HC' 
708
									AND(
709
											@ROLE_ID IN ('KSV','GDV','NVTC') 
710
											OR @DEP_ID_LG ='DEP000000000022'
711
										) 
712
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
713
								)
714
							OR	(
715
									@p_TYPE_SEARCH='KT' 
716
									AND @p_BRANCH_LOGIN ='DV0001' 
717
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
718
								)
719
							OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH =''
720
						)/*2*/
721
				)/*1*/
722
				  OR
723
				  (
724
						(
725
							@ROLE_ID IN ('KSV','GDV','NVTC') 
726
							OR @DEP_ID_LG ='DEP000000000022'
727
						) 
728
						AND @p_BRANCH_LOGIN ='DV0001' 
729
						AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
730
				  )
731
				  -- 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
732
				  OR(	@p_TYPE_SEARCH ='HC' 
733
						AND A.BRANCH_CREATE <> 'DV0001' 
734
						AND A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
735
					)
736
				  -- LUCTV 25 05 BO SUNG CAU HINH CHO PHEP DVKD DUOC THAY NHUNG PDN THANH TOAN DO HO TẠO
737
				  OR (
738
						@p_TYPE_SEARCH ='HC' 
739
						AND @BRANCH_TYPE_LG <> 'HS' 
740
						AND
741
						EXISTS (
742
									SELECT * 
743
									FROM TR_REQ_ADVANCE_DT 
744
									WHERE REQ_PAY_ID = A.REQ_PAY_ID AND REF_ID IN (
745
																					SELECT CONTRACT_ID 
746
																					FROM TR_CONTRACT
747
																					WHERE BRANCH_ID =@p_BRANCH_LOGIN
748
																				  ) 
749
									AND AUTH_STATUS_KT ='A'
750
								)
751
					)
752
			 )/*0*/
753
		ORDER BY A.CREATE_DT DESC
754
-- PAGING END
755
    END;
756
    ELSE 
757
	BEGIN
758
-- PAGING BEGIN
759
        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,
760
		TL1.TLFullName APPROVE_FULLNAME,
761
		CASE WHEN ISNULL(TL2.TLFullName,'') <>'' THEN TL2.TLFullName ELSE TL8.TLFullName END AS CREATE_FULLNAME_KT,
762
		TL3.TLFullName APPROVE_FULLNAME_KT,
763
		CASE WHEN ISNULL(A.IS_PERIOD,'') <> '' AND A.IS_PERIOD ='Y' AND  EXISTS (SELECT TOP 1 X.* FROM TR_REQ_ADVANCE_DT X 
764
										INNER JOIN TR_CONTRACT CT ON X.REF_ID = CT.CONTRACT_ID
765
										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 
766
										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 
767
										WHERE REQ_PAY_ID = A.REQ_PAY_ID))),'')
768
										ELSE BR.BRANCH_NAME END BRANCH_NAME_REQ,
769
		--BR.BRANCH_NAME AS BRANCH_NAME_REQ,
770
		BR1.BRANCH_NAME BRANCH_NAME_CRE, DP.DEP_NAME, DP.DEP_CODE, BR.BRANCH_CODE BRANCH_CODE_REQ,
771
		--Luanlt--2019/10/15-Sửa AL,AL1
772
		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, 
773
		ISNULL(H.SOTIEN_TT,0) TOTAL_AMT_PAY_HIS,
774
		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,
775
		PC3.LEVEL_JOB, PC3.STATUS_JOB,PC3.TYPE_JOB,
776
		--CASE WHEN PC3.TLNAME IS NOT NULL AND PC3.TLNAME <>'' THEN @P_USER_LOGIN ELSE PC3.TLNAME END AS EXEC_USER,
777
		@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,
778
		BR_CORE.BRANCH_CODE AS BRANCH_CODE_CORE, BR_CORE.BRANCH_NAME AS BRANCH_NAME_CORE,'' AS BRANCH_CODE_CONTRACT,
779
		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))),'')
780
		AS BRANCH_NAME_CONTRACT,
781
		--doanptt 300622
782
		CASE WHEN PC3.TLNAME IS NOT NULL THEN PC3.TLNAME 
783
			 WHEN PC3.TLNAME <>'' THEN PC3.TLNAME 
784
			 ELSE TL2.TLNANME END AS EXEC_USER,
785
		dbo.FN_DATEDIFF_WITHOUT_WEEKEND(A.TRANSFER_DT, GETDATE()) AS NUMBER_OF_TRANSFER,
786
		PC3.TLNAME AS EXEC_USER_KT,
787
		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())
788
			 ELSE 0 END AS NUMBER_OF_SEND_APPR
789
-- SELECT END
790
        FROM TR_REQ_PAYMENT A
791
             LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS=B.AUTH_STATUS
792
             LEFT JOIN CM_AUTH_STATUS C ON A.AUTH_STATUS_KT=C.AUTH_STATUS
793
             LEFT JOIN TL_USER TL ON A.MAKER_ID=TL.TLNANME
794
             LEFT JOIN TL_USER TL1 ON A.CHECKER_ID=TL1.TLNANME
795
             LEFT JOIN TL_USER TL2 ON A.MAKER_ID_KT=TL2.TLNANME
796
             LEFT JOIN TL_USER TL3 ON A.CHECKER_ID_KT=TL3.TLNANME
797
             LEFT JOIN dbo.CM_BRANCH BR ON A.BRANCH_ID=BR.BRANCH_ID
798
			 LEFT JOIN dbo.CM_BRANCH BR1 ON A.BRANCH_CREATE=BR1.BRANCH_ID
799
             LEFT JOIN dbo.CM_DEPARTMENT DP ON DP.DEP_ID=A.DEP_ID
800
			 --Luanlt--2019/10/15-Sửa AL,AL1
801
			 LEFT JOIN CM_ALLCODE AL ON A.REQ_TYPE = AL.CDVAL AND AL.CDNAME='PAY_TYPE' AND AL.CDTYPE = 'REQ'
802
			 LEFT JOIN CM_ALLCODE AL1 ON A.REQ_PAY_TYPE = AL1.CDVAL AND AL1.CDNAME='REQ_PAY_TYPE' AND AL1.CDTYPE = 'REQ'
803
			 LEFT JOIN TL_USER TL4 ON A.TRANSFER_MAKER = TL4.TLNANME
804
			 LEFT JOIN TL_USER TL5 ON A.TRASFER_USER_RECIVE = TL5.TLNANME
805
			 LEFT JOIN 
806
			 (
807
			 SELECT PAY_ADV_ID, SUM(AMT_PAY) SOTIEN_TT FROM TR_REQ_PAYMENT_DT WHERE AUTH_STATUS_KT ='A' GROUP BY PAY_ADV_ID
808
			 ) H ON A.REQ_PAY_ID =H.PAY_ADV_ID
809
			 LEFT JOIN TR_PO_MASTER PO ON A.REF_ID = PO.PO_ID AND A.REQ_TYPE='P'
810
			 LEFT JOIN CM_SUPPLIER S ON S.SUP_ID = PO.SUP_ID AND A.REQ_TYPE='P'
811
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC3 ON PC3.REQ_ID = A.REQ_PAY_ID AND PC3.STATUS_JOB ='C' 
812
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC4 ON PC4.REQ_ID = A.REQ_PAY_ID AND PC4.STATUS_JOB ='C'
813
			 LEFT JOIN PL_REQUEST_PROCESS_CHILD PC5 ON PC5.REQ_ID = A.REQ_PAY_ID AND PC5.TYPE_JOB ='XL'
814
			 LEFT JOIN TL_USER TL8 ON PC5.TLNAME = TL8.TLNANME
815
			 LEFT JOIN TL_SYSROLE SR ON TL.RoleName = SR.ROLE_ID
816
			 LEFT JOIN CM_BRANCH BR_CORE ON TL2.TLSUBBRID = BR_CORE.BRANCH_ID
817
        WHERE 1=1 
818
			  AND A.IS_CREATE_AUTO = 'Y'
819
			  AND A.IS_CREATE_AUTO_DONE = 'Y'
820
			  AND(A.REQ_PAY_ID =@p_REQ_PAY_ID OR @p_REQ_PAY_ID='' OR @p_REQ_PAY_ID IS NULL)
821
			  AND(	A.AUTH_STATUS=@p_AUTH_STATUS 
822
					OR @p_AUTH_STATUS='' 
823
					OR @p_AUTH_STATUS IS NULL 
824
					OR	(	@p_AUTH_STATUS = 'G' 
825
							AND ISNULL(A.PROCESS, '') = '0' 
826
							AND A.AUTH_STATUS = 'U'
827
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
828
						) 
829
					OR	(	@p_AUTH_STATUS = 'W' 
830
							AND ISNULL(A.PROCESS, '') = '' 
831
							AND A.AUTH_STATUS = 'U'
832
							AND @P_USER_LOGIN = A.TRASFER_USER_RECIVE
833
						)
834
				)
835
			  AND(A.MAKER_ID =@p_MAKER_ID OR @p_MAKER_ID='' OR @p_MAKER_ID IS NULL)
836
			  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)
837
			  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)
838
			  AND(A.DEP_ID=@p_DEP_ID OR @p_DEP_ID='' OR @p_DEP_ID IS NULL)
839
			  AND	(	(	@p_LEVEL='ALL' AND	(	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
840
													OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
841
												)
842
						) -- LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
843
						OR	(	(	@p_LEVEL='UNIT' 
844
									AND A.BRANCH_ID=@p_BRANCH_ID
845
								)
846
								OR(@p_BRANCH_ID='' OR @p_BRANCH_ID IS NULL) 
847
								OR (	@BRANCH_TYPE_LG <> 'HS' AND
848
										EXISTS	(	SELECT * 
849
													FROM TR_REQ_ADVANCE_DT 
850
													WHERE REQ_PAY_ID = A.REQ_PAY_ID
851
													AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
852
													AND AUTH_STATUS_KT ='A'
853
												)
854
									)
855
							)
856
					)
857
			  AND	(	(	@p_LEVEL='ALL' 
858
							AND (	A.BRANCH_ID IN(SELECT BRANCH_ID FROM @tmp) 
859
									OR A.BRANCH_CREATE IN (SELECT * FROM @BRANCH_AUTH)
860
								)
861
						) -- - LUCTV 20211012: BO SUNG CAU HINH DE XU LY UY QUYEN KIEM NHIEM
862
						OR	(	(	@p_LEVEL='UNIT' 
863
									AND A.BRANCH_ID=@p_BRANCH_ID
864
								)
865
								OR	(	@p_BRANCH_ID='' 
866
										OR @p_BRANCH_ID IS NULL
867
									)
868
																 OR	(	@BRANCH_TYPE_LG <> 'HS' 
869
																		AND EXISTS	(	SELECT * 
870
																						FROM TR_REQ_ADVANCE_DT 
871
																						WHERE REQ_PAY_ID = A.REQ_PAY_ID 
872
																						AND REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT WHERE BRANCH_ID =@p_BRANCH_LOGIN) 
873
																						AND AUTH_STATUS_KT ='A'
874
																					)
875
																	)
876
							)
877
					)
878
			  AND	(	(	A.MAKER_ID_KT IS NOT NULL 
879
							AND @p_IS_UPDATE_KT='Y'
880
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
881
						OR	(	(	A.MAKER_ID_KT IS NULL 
882
									AND @p_IS_UPDATE_KT='N'
883
								)
884
							)
885
							OR @p_IS_UPDATE_KT IS NULL 
886
							OR @p_IS_UPDATE_KT='')
887
			  AND(A.NOTES LIKE N'%'+@p_NOTES+'%' OR @p_NOTES='' OR @p_NOTES IS NULL)
888
			  --Luanlt-2019/10/14-Thêm Filter  REQ_TYPE,FROMDATE TODATE REF_ID
889
			  AND(A.REQ_TYPE LIKE N'%'+@p_REQ_TYPE+'%' OR @p_REQ_TYPE = '' OR @p_REQ_TYPE IS NULL)
890
			  AND(CONVERT(DATE, A.CREATE_DT)>=CONVERT(DATE, @DATE, 103)OR @p_FRMDATE IS NULL OR @p_FRMDATE='' OR A.CREATE_DT IS NULL)
891
              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)
892
			  --Luanlt-2019/10/17-Thêm Filter REQ_PAY_CODE REQ_PAY_NAME  BRANCH_ID DEP_ID KT_AUTH
893
			  AND(A.REQ_PAY_CODE LIKE N'%'+@p_REQ_PAY_CODE+'%' or @p_REQ_PAY_CODE='' OR @p_REQ_PAY_CODE IS NULL)
894
			  AND(A.REQ_REASON LIKE N'%'+@p_REQ_REASON+'%' or @p_REQ_REASON='' OR @p_REQ_REASON IS NULL)
895
			  --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 <>'')
896
			  AND	(	(@p_BRANCH_ID <> @p_BRANCH_LOGIN AND A.BRANCH_ID = @p_BRANCH_ID) 
897
						OR @p_BRANCH_ID = @p_BRANCH_LOGIN 
898
						OR @p_BRANCH_ID='' 
899
						OR @p_BRANCH_ID IS NULL
900
					)
901
			  AND(A.DEP_ID = @p_DEP_ID  or @p_DEP_ID='' OR @p_DEP_ID IS NULL)
902
			  AND	(	(	A.AUTH_STATUS_KT=@p_AUTH_STATUS_KT 
903
							OR @p_AUTH_STATUS_KT='' 
904
							OR @p_AUTH_STATUS_KT IS NULL
905
						) 
906
						OR (@p_AUTH_STATUS_KT ='P' AND A.AUTH_STATUS_KT IN ('P','S'))
907
					)
908
			  AND(A.REF_ID =@p_REF_ID OR @p_REF_ID='' OR @p_REF_ID IS NULL)
909
			  --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
910
              --OR((A.TRANSFER_MAKER IS NULL AND @p_IS_TRANSFER='N'))OR @p_IS_TRANSFER IS NULL OR @p_IS_TRANSFER='')
911
			  -- Neu ben phan he ke toan thi chi lay nhung user co maker_id khac null
912
			  AND  (
913
						(
914
							@p_FUNCTION ='KT' 
915
							AND (
916
									EXISTS(SELECT TOP 1 * FROM PL_REQUEST_PROCESS_CHILD X WHERE REQ_ID = A.REQ_PAY_ID 
917
									AND (
918
											X.TLNAME= @p_USER_LOGIN 
919
											OR X.TLNAME =@p_EXEC_USER_KT)
920
										)
921
								) 
922
							OR	(A.MAKER_ID_KT = @p_MAKER_ID_KT OR PC3.TLNAME = @p_MAKER_ID_KT)
923
							OR A.CHECKER_ID_KT ='admin' 
924
							OR A.AUTH_STATUS_KT='A' 
925
						)
926
						OR @p_FUNCTION ='' 
927
						OR @p_FUNCTION IS NULL 
928
						OR @p_FUNCTION ='TF' 
929
					)	  
930
				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)
931
			 -- 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 ='')
932
				AND	(	(	@p_IS_TRANSFER='Y' 
933
							AND	(	EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID) 
934
									OR A.AUTH_STATUS_KT ='A'
935
								)
936
						) --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
937
						OR	(	(	@p_IS_TRANSFER='N' 
938
									AND (	NOT EXISTS (SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = A.REQ_PAY_ID )) 
939
											AND A.AUTH_STATUS_KT <>'A'
940
								)
941
							)
942
						OR @p_IS_TRANSFER IS NULL 
943
						OR @p_IS_TRANSFER=''
944
					)	
945
				AND
946
				( /*0*/
947
				  A.MAKER_ID =@p_USER_LOGIN  
948
				  OR ( A.TRASFER_USER_RECIVE = @P_USER_LOGIN 
949
						AND A.AUTH_STATUS NOT IN ('E','R')
950
					 )
951
				  OR	(	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
952
								AND A.DEP_ID = @DEP_ID_LG
953
								AND A.BRANCH_ID = 'DV0001'
954
								AND A.AUTH_STATUS IN ('U','R', 'A')
955
								AND @p_TYPE_SEARCH ='HC'
956
							)
957
							OR	(	@IS_SEE_ALL_HC = 'Y'			--DOANPTT 20/12/22: CHO A XUAN XEM TOAN BO PHIEU THUOC PHONG HANH CHINH
958
									AND A.BRANCH_ID = @p_BRANCH_LOGIN
959
									AND A.AUTH_STATUS IN ('U','R', 'A')
960
									AND @p_TYPE_SEARCH ='HC'
961
								)
962
						)
963
				  OR (	A.AUTH_STATUS <>'E' /*1*/
964
						AND
965
						(/*2*/
966
							(	@p_TYPE_SEARCH ='HC'		/*3*/ 
967
								AND @BRANCH_TYPE_LG ='HS'  
968
								AND (/*4*/A.TRASFER_USER_RECIVE = @p_USER_LOGIN 
969
										OR (/*5*/
970
												EXISTS (	SELECT * 
971
															FROM @TABLE_ROLE 
972
															WHERE ROLE_AUTH IN ('GDDV','GDK','KTT','TPTC','TP','PP','TC')
973
													   )
974
												AND    (
975
															(	A.BRANCH_ID =@p_BRANCH_LOGIN 
976
																OR A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
977
															) 
978
															AND (	A.DEP_ID = @DEP_ID_LG 
979
																	OR  ( 
980
																			A.DEP_ID  IN ('DEP000000000051','DEP000000000733') 
981
																			AND @p_USER_LOGIN ='cuongpv2'
982
																		) 
983
																	OR A.DEP_ID IN (
984
																						SELECT * 
985
																						FROM @DEP_AUTH
986
																					)
987
																)
988
														)
989
												AND ( 
990
														A.TRASFER_USER_RECIVE IS NULL 
991
														OR A.TRASFER_USER_RECIVE ='' 
992
														OR (
993
																A.TRASFER_USER_RECIVE IS NOT NULL 
994
																AND A.TRASFER_USER_RECIVE <>'' 
995
																AND A.PROCESS IS NOT NULL 
996
																AND A.PROCESS <>''
997
															)
998
													)
999
											)/*5*/
1000
										)/*4*/
1001
								)/*3*/
1002
							OR(/*trong 2*/
1003
									@p_TYPE_SEARCH ='HC' 
1004
									AND @BRANCH_TYPE_LG = 'CN' 
1005
									AND (
1006
											@ROLE_ID IN ('GDDV','PGD','TPGD','PPGD') 
1007
											AND A.BRANCH_ID =@p_BRANCH_LOGIN 
1008
											AND
1009
												(
1010
													(
1011
														A.TRASFER_USER_RECIVE IS NOT NULL 
1012
														AND A.TRASFER_USER_RECIVE <>'' 
1013
														AND A.PROCESS IS NOT NULL 
1014
														AND A.PROCESS <>''
1015
													 ) 
1016
													OR A.TRASFER_USER_RECIVE ='' 
1017
													OR A.TRASFER_USER_RECIVE IS NULL
1018
												 )
1019
											OR (
1020
													(
1021
														A.BRANCH_CREATE <> @p_BRANCH_LOGIN 
1022
														AND A.TRASFER_USER_RECIVE IS NOT NULL 
1023
															AND A.TRASFER_USER_RECIVE <>''
1024
													) 
1025
													OR A.BRANCH_CREATE = @p_BRANCH_LOGIN
1026
												)
1027
											AND A.BRANCH_ID =@p_BRANCH_ID
1028
										)
1029
								)
1030
							 OR
1031
								(
1032
									@p_TYPE_SEARCH ='HC' 
1033
									AND @BRANCH_TYPE_LG = 'PGD' 
1034
									AND (
1035
											@ROLE_ID IN ('GDDV','TPGD','PPGD','PGD') 
1036
											AND A.BRANCH_ID =@p_BRANCH_LOGIN
1037
										)
1038
								)
1039
							 OR
1040
								(
1041
									@p_TYPE_SEARCH ='HC' 
1042
									AND(
1043
											@ROLE_ID IN ('KSV','GDV','NVTC') 
1044
											OR @DEP_ID_LG ='DEP000000000022'
1045
										) 
1046
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
1047
								)
1048
							OR	(
1049
									@p_TYPE_SEARCH='KT' 
1050
									AND @p_BRANCH_LOGIN ='DV0001' 
1051
									AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
1052
								)
1053
							OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH =''
1054
						)/*2*/
1055
				)/*1*/
1056
				  OR
1057
				  (
1058
						(
1059
							@ROLE_ID IN ('KSV','GDV','NVTC') 
1060
							OR @DEP_ID_LG ='DEP000000000022'
1061
						) 
1062
						AND @p_BRANCH_LOGIN ='DV0001' 
1063
						AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp_Login)
1064
				  )
1065
				  -- 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
1066
				  OR(	@p_TYPE_SEARCH ='HC' 
1067
						AND A.BRANCH_CREATE <> 'DV0001' 
1068
						AND A.BRANCH_ID IN (SELECT * FROM @BRANCH_AUTH)
1069
					)
1070
				  -- LUCTV 25 05 BO SUNG CAU HINH CHO PHEP DVKD DUOC THAY NHUNG PDN THANH TOAN DO HO TẠO
1071
				  OR (
1072
						@p_TYPE_SEARCH ='HC' 
1073
						AND @BRANCH_TYPE_LG <> 'HS' 
1074
						AND
1075
						EXISTS (
1076
									SELECT * 
1077
									FROM TR_REQ_ADVANCE_DT 
1078
									WHERE REQ_PAY_ID = A.REQ_PAY_ID AND REF_ID IN (
1079
																					SELECT CONTRACT_ID 
1080
																					FROM TR_CONTRACT
1081
																					WHERE BRANCH_ID =@p_BRANCH_LOGIN
1082
																				  ) 
1083
									AND AUTH_STATUS_KT ='A'
1084
								)
1085
					)
1086
			 )/*0*/
1087
		ORDER BY A.CREATE_DT DESC
1088
-- PAGING END
1089
    END;
1090
END -- PAGING
1091
GO
1092
IF @@ERROR <> 0 SET NOEXEC ON
1093
GO
1094
COMMIT TRANSACTION
1095
GO
1096
IF @@ERROR <> 0 SET NOEXEC ON
1097
GO
1098
-- This statement writes to the SQL Server Log so SQL Monitor can show this deployment.
1099
IF HAS_PERMS_BY_NAME(N'sys.xp_logevent', N'OBJECT', N'EXECUTE') = 1
1100
BEGIN
1101
    DECLARE @databaseName AS nvarchar(2048), @eventMessage AS nvarchar(2048)
1102
    SET @databaseName = REPLACE(REPLACE(DB_NAME(), N'\', N'\\'), N'"', N'\"')
1103
    SET @eventMessage = N'Redgate SQL Compare: { "deployment": { "description": "Redgate SQL Compare deployed to ' + @databaseName + N'", "database": "' + @databaseName + N'" }}'
1104
    EXECUTE sys.xp_logevent 55000, @eventMessage
1105
END
1106
GO
1107
DECLARE @Success AS BIT
1108
SET @Success = 1
1109
SET NOEXEC OFF
1110
IF (@Success = 1) PRINT 'The database update succeeded'
1111
ELSE BEGIN
1112
	IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION
1113
	PRINT 'The database update failed'
1114
END
1115
GO