Project

General

Profile

ASS_ADDNEW_BVB_Search.txt

Luc Tran Van, 05/23/2023 04:11 PM

 
1

    
2
ALTER PROCEDURE dbo.ASS_ADDNEW_BVB_Search
3
	@p_ADDNEW_ID		varchar(15)  = NULL,
4
	@p_FR_BUY_DATE		VARCHAR(10) = NULL, --Tu ngay nhap
5
	@p_TO_BUY_DATE		VARCHAR(10) = NULL, --Den ngay nhap
6
	@p_TYPE_ID			varchar(15)  = NULL,
7
	@p_GROUP_ID			varchar(15)  = NULL,
8
	@p_ASSET_NAME		nvarchar(1000)  = NULL,
9
	@p_ASSET_SERIAL_NO	nvarchar(MAX)  = NULL,
10
	@p_ASSET_DESC		nvarchar(max) = NULL,
11
	@p_BRANCH_ID		varchar(15)  = NULL,
12
	@p_DEPT_ID			varchar(15)  = NULL,---------Them ma phong ban
13
	@p_EMP_ID			varchar(15)  = NULL,-----------Them Nguoi su dung
14
	@p_DIVISION_ID		varchar(15)  = NULL,----------Them co so
15
	@p_BUY_PRICE		decimal(18)  = NULL,
16
	@p_AMORT_AMT		decimal(18)  = NULL,
17
	@p_AMORT_MONTH		decimal(18,2) = NULL,
18
	@p_AMORT_RATE		decimal(18,2)  = NULL,
19
	@p_IS_MULTIPLE		varchar(1)  = NULL,
20
	@p_QTY				int = NULL,
21
	@p_PO_ID			varchar(15)  = NULL,
22
	@p_TRADE_ID			varchar(15)  = NULL, --Them de luu chi tiet PO
23
	@p_TYPE				varchar(10) = 'ADD_NEW',  --'ADD_NEW' dung cho nhap moi TS, 'ADD_REF': nhap moi dieu chinh
24
	@p_REF_ASSET_ID		varchar(15)  = NULL,
25
	@p_REF_AMORTIZED_AMT	decimal(18)  = NULL,
26
	@p_WARRANTY_MONTHS	int = NULL,
27
	@p_NOTES			nvarchar(1000)  = NULL,
28
	@p_RECORD_STATUS	varchar(1)  = NULL,
29
	@p_AUTH_STATUS		varchar(1)  = NULL,
30
	@p_MAKER_ID			varchar(15)  = NULL,
31
	@p_CREATE_DT		VARCHAR(20) = NULL,
32
	@p_CHECKER_ID		varchar(15)  = NULL,
33
	@p_APPROVE_DT		VARCHAR(20) = NULL,
34
	@P_TOP				INT		= NULL,
35
	@p_CONSTRUCT_ID		VARCHAR(15) = NULL,
36
	@p_POSTED_STATUS	VARCHAR(1) = NULL,
37
	@p_BRANCH_CREATE	VARCHAR(15) = NULL,
38
	@P_LEVEL			VARCHAR(10) = NULL,
39
	@p_AUTH_STATUS_KT	VARCHAR(1) = NULL,
40
	@p_KT_IS_DO			VARCHAR(1) = NULL,
41
	@p_PRICE_TO			decimal(18) = NULL,
42
	@p_PRICE_FROM			decimal(18) = NULL,
43
	@p_USER_LOGIN   VARCHAR(15),-- 26022020 LUCTV TRUYEN XUONG USER LOGIN DE DO TIM MA PHONG BAN
44
	@p_TYPE_SEARCH VARCHAR(10)= NULL -- 26022020 LUCTV TRUYEN XUONG DAU HIEU DE PHAN BIET TIM KIEM O MAN HINH KE TOAN HAY MAN HINH HCQT
45
AS
46
BEGIN -- PAGING
47
	SET @p_RECORD_STATUS = '1'
48
	declare @tmp table(BRANCH_ID varchar(15))
49

    
50
	insert into @tmp  SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_CREATE)
51
	DECLARE @l_GROUP_CODE VARCHAR(100) 
52
	IF(@p_TYPE_ID='ALL')
53
	BEGIN
54
		SET @l_GROUP_CODE = (SELECT GROUP_CODE FROM ASS_GROUP WHERE GROUP_ID = @p_GROUP_ID)
55
		SET @p_TYPE_ID=''
56
	END
57

    
58
	IF @P_TOP IS NULL OR @P_TOP  = ''
59
-- PAGING BEGIN
60
		SELECT 
61
				A.ADDNEW_ID,
62
				A.BUY_DATE,
63
				A.[TYPE_ID],
64
				C.[TYPE_NAME],
65
				A.GROUP_ID,
66
				D.GROUP_CODE,
67
				D.GROUP_NAME,
68
				A.ASSET_NAME,
69
				A.ASSET_SERIAL_NO,
70
				A.ASSET_DESC,
71
				A.BRANCH_ID,
72
				A.AMORT_START_DATE,
73
				A.DEPT_ID,
74
				H.DEP_CODE,
75
				H.DEP_NAME,
76
				A.EMP_ID,
77
				G.EMP_CODE,
78
				G.EMP_NAME,
79
				A.DIVISION_ID,
80
				ISNULL(A.BUY_PRICE,0) AS BUY_PRICE,
81
				ISNULL(A.AMORT_AMT,0) AS AMORT_AMT,
82
				A.AMORT_MONTH,
83
				A.AMORT_RATE,
84
				A.IS_MULTIPLE,
85
				A.QTY,
86
				A.PO_ID,
87
				PO.PO_CODE,
88
				A.PD_ID,
89
				A.REF_ASSET_ID,
90
				I.ASSET_CODE AS REF_ASS_CODE,
91
				I.ASSET_NAME AS REF_ASS_NAME,
92
				A.REF_AMORTIZED_AMT,
93
				A.WARRANTY_MONTHS,
94
				A.NOTES,
95
				A.CORE_NOTE ,
96
				A.RECORD_STATUS,
97
				A.AUTH_STATUS,
98
				B.CONTENT AS AUTH_STATUS_NAME,AKT.CONTENT AS AUTH_STATUS_NAME_KT,
99
				A.MAKER_ID,
100
				UM.TLFullName MAKER_NAME,
101
				A.CREATE_DT,--CONVERT(VARCHAR(10), A.CREATE_DT, 103) AS S_CREATE_DT
102
				A.CHECKER_ID,
103
				A.APPROVE_DT, A.ENTRY_BOOKED, A.CONSTRUCT_ID,A.POSTED_STATUS, A.BRANCH_CREATE,A.MAKER_ID_KT, A.CREATE_DT_KT,A.CHECKER_ID_KT,A.APPROVE_DT_KT,A.AUTH_STATUS_KT,
104
				E.BRANCH_CODE, F.DIV_CODE, E.BRANCH_NAME, (ISNULL(E.BRANCH_NAME,'') + ' '+ ISNULL(H.DEP_NAME,'')) AS RECEIVE_BRANCH ,
105
				CREBRN.BRANCH_CODE AS R_BRANCH_CODE, CREBRN.BRANCH_NAME AS R_BRANCH_NAME, A.AMORT_END_DATE, A.ACCOUNT_GL, A.VAT, A.PRICE_VAT,(ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) AS TOTAL_AMT
106
				--, G.SUP_CODE, G.SUP_NAME
107
				,AP.ASSPO_ID AS ASS_PO_ID, AP.ADDNEW_ID AS ASS_PO_ADDNEWID, AP.PO_CODE AS ASS_PO_CODE, AP.INVOICE_NO AS AS_INVOICE_NO, AP.INVOICE_DATE AS ASS_INVOICE_DT,
108
				CREBRN.BRANCH_CODE+' - '+ CREBRN.BRANCH_NAME AS FULL_BRANCH_NAME, D.GROUP_CODE +' - '+ D.GROUP_NAME GROUP_NAME_FULL,
109
				UM2.TLFullName AS CREATE_USER_NAME, UM3.TLFullName AS APPROVE_NAME_KT, UM4.TLFullName AS CREATE_USER_NAME_KT,
110
				@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH --- TRA VE THAM SO GAN VO CURRENT SEARCH TRANH GAY LOI O CAC MAN HINH
111
				,(CASE
112
					WHEN A.AUTH_STATUS='U' AND A.CHECKER_ID IS NULL THEN N'Chờ trưởng đơn vị phê duyệt'
113
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='E' THEN N'Chờ GDV xử lý'
114
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='U' AND A.MAKER_ID_KT IS NOT NULL AND A.CHECKER_ID_KT IS NULL THEN N'Chờ KSV phê duyệt'
115
				END) AS PROCESS_STATUS_NEXT,
116
				(CASE
117
					WHEN A.AUTH_STATUS='U' AND A.CHECKER_ID IS NULL THEN (STUFF((SELECT DISTINCT ', ' + RE.TLNANME FROM FN_GET_USER_BY_ROLE('GDDV',A.BRANCH_CREATE,A.DEPT_CREATE) RE FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, ''))
118
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='E' THEN (STUFF((SELECT DISTINCT ', ' + RE.TLNANME FROM FN_GET_USER_BY_ROLE('GDV','DV0001','DEP000000000022') RE FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, ''))
119
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='U' AND A.MAKER_ID_KT IS NOT NULL AND A.CHECKER_ID_KT IS NULL THEN (STUFF((SELECT DISTINCT ', ' + RE.TLNANME FROM FN_GET_USER_BY_ROLE('KSV','DV0001','DEP000000000022') RE FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, ''))
120
				END) NGUOIXULY
121
-- SELECT END
122
		FROM ASS_ADDNEW A
123
  	--LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS
124
  	LEFT JOIN dbo.CM_ALLCODE B ON B.CDVAL = A.AUTH_STATUS AND B.CDNAME = 'ASS_ADD_AUTH' AND B.CDTYPE = 'ASS_ADDNEW'
125
  	LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
126
  	LEFT JOIN ASS_GROUP D ON A.GROUP_ID = D.GROUP_ID
127
  	LEFT JOIN TL_USER UM ON UM.TLNANME = A.CHECKER_ID
128
  	LEFT JOIN TL_USER UM2 ON UM2.TLNANME = A.MAKER_ID
129
  	LEFT JOIN TL_USER UM3 ON UM2.TLNANME = A.CHECKER_ID_KT
130
  	LEFT JOIN TL_USER UM4 ON UM4.TLNANME = A.MAKER_ID_KT
131
  	LEFT JOIN TR_PO_MASTER PO ON PO.PO_ID = A.PO_ID
132
  	LEFT JOIN CM_BRANCH E ON E.BRANCH_ID = A.BRANCH_ID
133
  	LEFT JOIN CM_DIVISION F ON F.DIV_ID = A.DIVISION_ID
134
  	LEFT JOIN CM_EMPLOYEE G ON G.EMP_ID = A.EMP_ID
135
  	LEFT JOIN CM_DEPARTMENT H ON H.DEP_ID = A.DEPT_ID
136
  	LEFT JOIN ASS_MASTER I ON I.ASSET_ID = A.REF_ASSET_ID
137
  	--LEFT JOIN CM_AUTH_STATUS AKT ON AKT.AUTH_STATUS = A.AUTH_STATUS_KT
138
  	LEFT JOIN dbo.CM_ALLCODE AKT ON AKT.CDVAL = A.AUTH_STATUS_KT AND AKT.CDNAME = 'ASS_ADD_AUTH' AND AKT.CDTYPE = 'ASS_ADDNEW'
139
  	LEFT JOIN CM_BRANCH CREBRN ON CREBRN.BRANCH_ID = A.BRANCH_CREATE
140
  	LEFT JOIN ASS_PO AP ON A.ADDNEW_ID = AP.ADDNEW_ID
141
		WHERE	(A.ADDNEW_ID like N'%' + @p_ADDNEW_ID + '%' OR @p_ADDNEW_ID IS NULL OR @p_ADDNEW_ID = '')
142

    
143
		-- TIM KIEM TU NGAY DEN NGAY O HC
144
		AND	((@p_TYPE_SEARCH = 'HC' AND (CONVERT(DATE,A.BUY_DATE,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
145
      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
146
    AND	((@p_TYPE_SEARCH = 'HC' AND (CONVERT(DATE,A.BUY_DATE,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
147
      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
148
			
149
    -- TIM KIEM TU NGAY O KT
150
    AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
151
      AND (CONVERT(DATE,A.APPROVE_DT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
152
      OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
153
          AND ((@p_AUTH_STATUS_KT = 'A' AND (CONVERT(DATE,A.APPROVE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
154
            OR (@p_AUTH_STATUS_KT IN ('U','E') AND (CONVERT(DATE,A.CREATE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
155
            OR (@p_AUTH_STATUS_KT = 'R' AND (CONVERT(DATE,A.CREATE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
156
            OR ((@p_AUTH_STATUS_KT = '' OR @p_AUTH_STATUS_KT IS NULL) AND (CONVERT(DATE,A.CREATE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))))))
157
    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
158
    -- TIM KIEM DEN NGAY O KT
159
    AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
160
      AND (CONVERT(DATE,A.APPROVE_DT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
161
      OR ((A.MAKER_ID_KT IS NOT NULL AND A.MAKER_ID_KT <> '')
162
          AND ((@p_AUTH_STATUS_KT = 'A' AND (CONVERT(DATE,A.APPROVE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
163
            OR (@p_AUTH_STATUS_KT IN ('U','E') AND (CONVERT(DATE,A.CREATE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
164
            OR (@p_AUTH_STATUS_KT = 'R' AND (CONVERT(DATE,A.CREATE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
165
            OR ((@p_AUTH_STATUS_KT = '' OR @p_AUTH_STATUS_KT IS NULL) AND (CONVERT(DATE,A.CREATE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))))))
166
    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
167

    
168
  	AND		(A.[TYPE_ID] = @p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID = '')
169
  	AND		(A.GROUP_ID = @p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID = '')
170
  	AND		(D.GROUP_CODE = @l_GROUP_CODE OR @l_GROUP_CODE IS NULL OR @l_GROUP_CODE = '')
171
  	AND		(A.ASSET_NAME like N'%' + @p_ASSET_NAME + '%' OR @p_ASSET_NAME IS NULL OR @p_ASSET_NAME = '')
172
  	AND		(A.ASSET_SERIAL_NO like N'%' + @p_ASSET_SERIAL_NO + '%' OR @p_ASSET_SERIAL_NO IS NULL OR @p_ASSET_SERIAL_NO = '')
173
  	AND		(A.ASSET_DESC like N'%' + @p_ASSET_DESC + '%' OR @p_ASSET_DESC IS NULL OR @p_ASSET_DESC = '')
174
  	AND		(A.BRANCH_CREATE IN (SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_ID)) OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '')
175
  	AND		(A.DEPT_ID = @p_DEPT_ID OR @p_DEPT_ID IS NULL OR @p_DEPT_ID = '')
176
  	AND		(A.EMP_ID = @p_EMP_ID OR @p_EMP_ID IS NULL OR @p_EMP_ID = '')
177
  	AND		(A.DIVISION_ID = @p_DIVISION_ID OR @p_DIVISION_ID IS NULL OR @p_DIVISION_ID = '')
178
  	AND		(A.BUY_PRICE = @p_BUY_PRICE OR @p_BUY_PRICE IS NULL)
179
  	AND		(A.AMORT_AMT = @p_AMORT_AMT OR @p_AMORT_AMT IS NULL)
180
  	AND		(A.AMORT_MONTH = @p_AMORT_MONTH OR @p_AMORT_MONTH IS NULL)
181
  	AND		(A.AMORT_RATE = @p_AMORT_RATE OR @p_AMORT_RATE IS NULL)
182
  	AND		(A.IS_MULTIPLE = @p_IS_MULTIPLE OR @p_IS_MULTIPLE IS NULL OR @p_IS_MULTIPLE = '')
183
  	AND		(A.QTY = @p_QTY OR @p_QTY IS NULL OR @p_QTY = 0)
184
  	AND		(A.PO_ID = @p_PO_ID OR @p_PO_ID IS NULL OR @p_PO_ID = '')
185
  	AND		((@p_TYPE = 'ADD_NEW' AND (A.REF_ASSET_ID IS NULL OR A.REF_ASSET_ID = '')) OR (@p_TYPE = 'ADD_REF' AND A.REF_ASSET_ID IS NOT NULL AND A.REF_ASSET_ID <> ''))
186
  	AND		(A.REF_ASSET_ID = @p_REF_ASSET_ID OR @p_REF_ASSET_ID IS NULL OR @p_REF_ASSET_ID='')
187
  	AND		(A.REF_AMORTIZED_AMT = @p_REF_AMORTIZED_AMT OR @p_REF_AMORTIZED_AMT IS NULL)
188
  	AND		(A.WARRANTY_MONTHS = @p_WARRANTY_MONTHS OR @p_WARRANTY_MONTHS IS NULL OR @p_WARRANTY_MONTHS = 0)		
189
  	AND		(A.NOTES like N'%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
190
  	AND		(A.RECORD_STATUS = @p_RECORD_STATUS OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')
191
  	AND		(A.AUTH_STATUS = @p_AUTH_STATUS OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
192
  	AND		(A.POSTED_STATUS = @p_POSTED_STATUS OR @p_POSTED_STATUS IS NULL OR @p_POSTED_STATUS = '')
193
  	--AND		(A.BRANCH_CREATE = @p_BRANCH_CREATE OR @p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE = '')	
194
  	AND		(A.AUTH_STATUS_KT = @p_AUTH_STATUS_KT OR @p_AUTH_STATUS_KT IS NULL OR @p_AUTH_STATUS_KT = '')	
195
  	AND		((A.MAKER_ID_KT IS NOT NULL AND @p_KT_IS_DO = 'Y') --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
196
  			OR ((A.MAKER_ID_KT IS NULL AND @p_KT_IS_DO = 'N')) 
197
  			OR @p_KT_IS_DO IS NULL OR @p_KT_IS_DO = '')
198
  	AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) >= @p_PRICE_FROM OR @p_PRICE_FROM = 0 OR @p_PRICE_FROM IS NULL)
199
  	AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) <= @p_PRICE_TO OR @p_PRICE_TO = 0 OR @p_PRICE_TO IS NULL)
200
  	-- 26-02-2020 LUCTV BO SUNG DIEU KIEN TIM KIEM PHIEU NHAP KHO THEO NGUOI TAO PHIEU : THEO YEU CAU BO SUNG CHINH SUA CUA VCCB
201
  	AND	(A.MAKER_ID = @p_MAKER_ID OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
202
  
203
      -- NEW TRANG THAI PHIEU XUAT LA LUU NHAP HOAC TU CHOI THI CHI NGUOI TAO CO THE TIM THAY
204
     AND ((A.AUTH_STATUS IN ('E','R')  AND A.MAKER_ID = @p_USER_LOGIN) OR A.AUTH_STATUS NOT IN ('E','R') OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = '')
205
  
206
  	-- 11-03-2022 HUYHT BO SUNG DIEU KIEN TIM KIEM PHIEU NHAP THEO QUYEN KIEM NHIEM
207
      AND ((@p_TYPE_SEARCH='HC'
208
			AND ((EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV',A.BRANCH_CREATE,A.DEPT_CREATE) US WHERE US.TLNANME = @p_USER_LOGIN))
209
				OR (A.SIGN_USER = @p_USER_LOGIN)))
210
		OR (A.MAKER_ID = @p_USER_LOGIN)
211
		OR (@p_TYPE_SEARCH='KT' AND @P_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
212
  		OR (@p_TYPE_SEARCH='KT' AND @P_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_CREATE)
213
		OR (@p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH =''))
214

    
215
		ORDER BY A.CREATE_DT DESC
216
-- PAGING END
217
	ELSE
218
-- PAGING BEGIN
219
		SELECT TOP (CONVERT(INT, @P_TOP))
220
				A.ADDNEW_ID,
221
				A.BUY_DATE,
222
				A.[TYPE_ID],
223
				C.[TYPE_NAME],
224
				A.GROUP_ID,
225
				D.GROUP_CODE,
226
				D.GROUP_NAME,
227
				A.ASSET_NAME,
228
				A.ASSET_SERIAL_NO,
229
				A.ASSET_DESC,
230
				A.BRANCH_ID,
231
				A.AMORT_START_DATE,
232
				A.DEPT_ID,
233
				H.DEP_CODE,
234
				H.DEP_NAME,
235
				A.EMP_ID,
236
				G.EMP_CODE,
237
				G.EMP_NAME,
238
				A.DIVISION_ID,
239
				ISNULL(A.BUY_PRICE,0) AS BUY_PRICE,
240
				ISNULL(A.AMORT_AMT,0) AS AMORT_AMT,
241
				A.AMORT_MONTH,
242
				A.AMORT_RATE,
243
				A.IS_MULTIPLE,
244
				A.QTY,
245
				A.PO_ID,
246
				PO.PO_CODE,
247
				A.REF_ASSET_ID,
248
				I.ASSET_CODE AS REF_ASS_CODE,
249
				I.ASSET_NAME AS REF_ASS_NAME,
250
				A.REF_AMORTIZED_AMT,
251
				A.WARRANTY_MONTHS,
252
				A.NOTES,
253
				A.CORE_NOTE,
254
				A.RECORD_STATUS,
255
				A.AUTH_STATUS,
256
				B.CONTENT AS AUTH_STATUS_NAME,AKT.CONTENT AS AUTH_STATUS_NAME_KT,
257
				A.MAKER_ID,
258
				UM.TLFullName MAKER_NAME,
259
				A.CREATE_DT,--CONVERT(VARCHAR(10), A.CREATE_DT, 103) AS S_CREATE_DT
260
				A.CHECKER_ID,
261
				A.APPROVE_DT, A.ENTRY_BOOKED,A.CONSTRUCT_ID,A.POSTED_STATUS, A.BRANCH_CREATE,A.MAKER_ID_KT, A.CREATE_DT_KT,A.CHECKER_ID_KT,A.APPROVE_DT_KT,A.AUTH_STATUS_KT,
262
				E.BRANCH_CODE, F.DIV_CODE, E.BRANCH_NAME, (ISNULL(E.BRANCH_NAME,'') + ' '+ ISNULL(H.DEP_NAME,'')) AS RECEIVE_BRANCH ,
263
				CREBRN.BRANCH_CODE AS R_BRANCH_CODE, CREBRN.BRANCH_NAME AS R_BRANCH_NAME, A.AMORT_END_DATE, A.ACCOUNT_GL, A.VAT, A.PRICE_VAT, (ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) AS TOTAL_AMT
264
				--, G.SUP_CODE, G.SUP_NAME
265
				,AP.ASSPO_ID AS ASS_PO_ID, AP.ADDNEW_ID AS ASS_PO_ADDNEWID, AP.PO_CODE AS ASS_PO_CODE, AP.INVOICE_NO AS AS_INVOICE_NO, AP.INVOICE_DATE AS ASS_INVOICE_DT,CREBRN.BRANCH_CODE+' - '+ CREBRN.BRANCH_NAME AS FULL_BRANCH_NAME
266
				,D.GROUP_CODE +' - '+ D.GROUP_NAME GROUP_NAME_FULL,
267
				UM2.TLFullName AS CREATE_USER_NAME, UM3.TLFullName AS APPROVE_NAME_KT, UM4.TLFullName AS CREATE_USER_NAME_KT,
268
				@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH --- TRA VE THAM SO GAN VO CURRENT SEARCH TRANH GAY LOI O CAC MAN HINH
269
				,(CASE
270
					WHEN A.AUTH_STATUS='U' AND A.CHECKER_ID IS NULL THEN N'Chờ trưởng đơn vị phê duyệt'
271
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='U' AND A.MAKER_ID_KT IS NULL THEN N'Chờ GDV xử lý'
272
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='U' AND A.MAKER_ID_KT IS NOT NULL AND A.CHECKER_ID_KT IS NULL THEN N'Chờ KSV phê duyệt'
273
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='U' AND A.MAKER_ID_KT IS NOT NULL AND A.CHECKER_ID_KT IS NULL THEN N'Chờ KSV phê duyệt'
274
				END) AS PROCESS_STATUS_NEXT,
275
				(CASE
276
					WHEN A.AUTH_STATUS='U' AND A.CHECKER_ID IS NULL THEN (STUFF((SELECT DISTINCT ', ' + RE.TLNANME FROM FN_GET_USER_BY_ROLE('GDDV',A.BRANCH_CREATE,A.DEPT_CREATE) RE FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, ''))
277
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='U' AND A.MAKER_ID_KT IS NULL THEN (STUFF((SELECT DISTINCT ', ' + RE.TLNANME FROM FN_GET_USER_BY_ROLE('GDV','','DEP000000000022') RE FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, ''))
278
					WHEN A.AUTH_STATUS='A' AND A.AUTH_STATUS_KT='U' AND A.MAKER_ID_KT IS NOT NULL AND A.CHECKER_ID_KT IS NULL THEN (STUFF((SELECT DISTINCT ', ' + RE.TLNANME FROM FN_GET_USER_BY_ROLE('KSV','','DEP000000000022') RE FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, ''))
279
				END) NGUOIXULY
280
-- SELECT END
281
		FROM ASS_ADDNEW A
282
		--LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS
283
		LEFT JOIN dbo.CM_ALLCODE B ON B.CDVAL = A.AUTH_STATUS AND B.CDNAME = 'ASS_ADD_AUTH' AND B.CDTYPE = 'ASS_ADDNEW'
284
		LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
285
		LEFT JOIN ASS_GROUP D ON A.GROUP_ID = D.GROUP_ID
286
		LEFT JOIN TL_USER UM ON UM.TLNANME = A.CHECKER_ID
287
		LEFT JOIN TL_USER UM2 ON UM2.TLNANME = A.MAKER_ID
288
		LEFT JOIN TL_USER UM3 ON UM2.TLNANME = A.CHECKER_ID_KT
289
		LEFT JOIN TL_USER UM4 ON UM4.TLNANME = A.MAKER_ID_KT
290
		LEFT JOIN TR_PO_MASTER PO ON PO.PO_ID = A.PO_ID
291
		LEFT JOIN CM_BRANCH E ON E.BRANCH_ID = A.BRANCH_ID
292
		LEFT JOIN CM_DIVISION F ON F.DIV_ID = A.DIVISION_ID
293
		LEFT JOIN CM_EMPLOYEE G ON G.EMP_ID = A.EMP_ID
294
		LEFT JOIN CM_DEPARTMENT H ON H.DEP_ID = A.DEPT_ID
295
		LEFT JOIN ASS_MASTER I ON I.ASSET_ID = A.REF_ASSET_ID
296
		--LEFT JOIN CM_AUTH_STATUS AKT ON AKT.AUTH_STATUS = A.AUTH_STATUS_KT
297
		LEFT JOIN dbo.CM_ALLCODE AKT ON AKT.CDVAL = A.AUTH_STATUS_KT AND AKT.CDNAME = 'ASS_ADD_AUTH' AND AKT.CDTYPE = 'ASS_ADDNEW'
298
		LEFT JOIN CM_BRANCH CREBRN ON CREBRN.BRANCH_ID = A.BRANCH_CREATE
299
		LEFT JOIN ASS_PO AP ON A.ADDNEW_ID = AP.ADDNEW_ID
300
		WHERE	(A.ADDNEW_ID like N'%' + @p_ADDNEW_ID + '%' OR @p_ADDNEW_ID IS NULL OR @p_ADDNEW_ID = '')
301

    
302
    -- TIM KIEM TU NGAY DEN NGAY O HC
303
		AND	((@p_TYPE_SEARCH = 'HC' AND (CONVERT(DATE,A.BUY_DATE,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
304
      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
305
    AND	((@p_TYPE_SEARCH = 'HC' AND (CONVERT(DATE,A.BUY_DATE,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
306
      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
307
		
308
    -- TIM KIEM TU NGAY O KT
309
    AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
310
      AND (CONVERT(DATE,A.APPROVE_DT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
311
      OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
312
          AND ((@p_AUTH_STATUS_KT = 'A' AND (CONVERT(DATE,A.APPROVE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
313
            OR (@p_AUTH_STATUS_KT IN ('U','E') AND (CONVERT(DATE,A.CREATE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
314
            OR (@p_AUTH_STATUS_KT = 'R' AND (CONVERT(DATE,A.CREATE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
315
            OR ((@p_AUTH_STATUS_KT = '' OR @p_AUTH_STATUS_KT IS NULL) AND (CONVERT(DATE,A.CREATE_DT_KT,103) >= CONVERT(DATE, @p_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))))))
316
    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
317
    -- TIM KIEM DEN NGAY O KT
318
    AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
319
      AND (CONVERT(DATE,A.APPROVE_DT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
320
      OR ((A.MAKER_ID_KT IS NOT NULL AND A.MAKER_ID_KT <> '')
321
          AND ((@p_AUTH_STATUS_KT = 'A' AND (CONVERT(DATE,A.APPROVE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
322
            OR (@p_AUTH_STATUS_KT IN ('U','E') AND (CONVERT(DATE,A.CREATE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
323
            OR (@p_AUTH_STATUS_KT IN ('U','E') AND (CONVERT(DATE,A.CREATE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))
324
            OR ((@p_AUTH_STATUS_KT = '' OR @p_AUTH_STATUS_KT IS NULL) AND (CONVERT(DATE,A.CREATE_DT_KT,103) <= CONVERT(DATE, @p_TO_BUY_DATE, 103) OR @p_TO_BUY_DATE is NULL OR @p_TO_BUY_DATE = ''))))))
325
    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
326
		
327
		AND		(A.[TYPE_ID] = @p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID = '')
328
		AND		(A.GROUP_ID = @p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID = '')
329
		AND		(D.GROUP_CODE = @l_GROUP_CODE OR @l_GROUP_CODE IS NULL OR @l_GROUP_CODE = '')
330
		AND		(A.ASSET_NAME like N'%' + @p_ASSET_NAME + '%' OR @p_ASSET_NAME IS NULL OR @p_ASSET_NAME = '')
331
		AND		(A.ASSET_SERIAL_NO like N'%' + @p_ASSET_SERIAL_NO + '%' OR @p_ASSET_SERIAL_NO IS NULL OR @p_ASSET_SERIAL_NO = '')
332
		AND		(A.ASSET_DESC like N'%' + @p_ASSET_DESC + '%' OR @p_ASSET_DESC IS NULL OR @p_ASSET_DESC = '')
333
		AND		(A.BRANCH_CREATE IN (SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_ID)) OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '')
334
		AND		(A.BUY_PRICE = @p_BUY_PRICE OR @p_BUY_PRICE IS NULL)
335
		AND		(A.AMORT_AMT = @p_AMORT_AMT OR @p_AMORT_AMT IS NULL)
336
		AND		(A.AMORT_MONTH = @p_AMORT_MONTH OR @p_AMORT_MONTH IS NULL)
337
		AND		(A.AMORT_RATE = @p_AMORT_RATE OR @p_AMORT_RATE IS NULL)
338
		AND		(A.IS_MULTIPLE = @p_IS_MULTIPLE OR @p_IS_MULTIPLE IS NULL OR @p_IS_MULTIPLE = '')
339
		AND		(A.QTY = @p_QTY OR @p_QTY IS NULL OR @p_QTY = 0)
340
		AND		(A.PO_ID = @p_PO_ID OR @p_PO_ID IS NULL OR @p_PO_ID = '')
341
		AND		((@p_TYPE = 'ADD_NEW' AND (A.REF_ASSET_ID IS NULL OR A.REF_ASSET_ID = '')) OR (@p_TYPE = 'ADD_REF' AND A.REF_ASSET_ID IS NOT NULL AND A.REF_ASSET_ID <> ''))
342
		AND		(A.REF_ASSET_ID = @p_REF_ASSET_ID OR @p_REF_ASSET_ID IS NULL OR @p_REF_ASSET_ID='')
343
		AND		(A.REF_AMORTIZED_AMT = @p_REF_AMORTIZED_AMT OR @p_REF_AMORTIZED_AMT IS NULL)
344
		AND		(A.WARRANTY_MONTHS = @p_WARRANTY_MONTHS OR @p_WARRANTY_MONTHS IS NULL OR @p_WARRANTY_MONTHS = 0)		
345
		AND		(A.NOTES like N'%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
346
		AND		(A.RECORD_STATUS = @p_RECORD_STATUS OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')
347
		AND		(A.AUTH_STATUS = @p_AUTH_STATUS OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
348
		AND		(A.POSTED_STATUS = @p_POSTED_STATUS OR @p_POSTED_STATUS IS NULL OR @p_POSTED_STATUS = '')
349
		--AND		(A.BRANCH_CREATE = @p_BRANCH_CREATE OR @p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE = '')
350
		AND		(A.AUTH_STATUS_KT = @p_AUTH_STATUS_KT OR @p_AUTH_STATUS_KT IS NULL OR @p_AUTH_STATUS_KT = '')
351
		AND		((A.MAKER_ID_KT IS NOT NULL AND @p_KT_IS_DO = 'Y') --Lay danh sach chua duoc phong KT cap nhat va duoc cap nhat
352
				OR ((A.MAKER_ID_KT IS NULL AND @p_KT_IS_DO = 'N')) 
353
				OR @p_KT_IS_DO IS NULL OR @p_KT_IS_DO = '')
354

    
355
		AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) >= @p_PRICE_FROM OR @p_PRICE_FROM = 0 OR @p_PRICE_FROM IS NULL)
356
		AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) <= @p_PRICE_TO OR @p_PRICE_TO = 0 OR @p_PRICE_TO IS NULL)
357
		-- 26-02-2020 LUCTV BO SUNG DIEU KIEN TIM KIEM PHIEU NHAP KHO THEO NGUOI TAO PHIEU : THEO YEU CAU BO SUNG CHINH SUA CUA VCCB
358
		AND	(A.MAKER_ID = @p_MAKER_ID OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
359

    
360
    -- NEW TRANG THAI PHIEU XUAT LA LUU NHAP HOAC TU CHOI THI CHI NGUOI TAO CO THE TIM THAY
361
	  AND ((A.AUTH_STATUS IN ('E','R')  AND A.MAKER_ID = @p_USER_LOGIN) OR A.AUTH_STATUS NOT IN ('E','R') OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = '')
362
		
363
		-- 11-03-2022 HUYHT BO SUNG DIEU KIEN TIM KIEM PHIEU NHAP THEO QUYEN KIEM NHIEM
364
		AND ((@p_TYPE_SEARCH='HC'
365
				AND ((EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV',A.BRANCH_CREATE,A.DEPT_CREATE) US WHERE US.TLNANME = @p_USER_LOGIN))
366
					OR (A.SIGN_USER = @p_USER_LOGIN)))
367
			OR (A.MAKER_ID = @p_USER_LOGIN)
368
			OR (@p_TYPE_SEARCH='KT' AND @P_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
369
  			OR (@p_TYPE_SEARCH='KT' AND @P_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_CREATE)
370
			OR (@p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH =''))
371

    
372
		ORDER BY A.CREATE_DT DESC
373
-- PAGING END
374
END -- PAGING
375