Project

General

Profile

NM2504.txt

Luc Tran Van, 04/25/2023 08:41 AM

 
1
ALTER PROCEDURE dbo.ASS_ADDNEW_BVB_Search
2
	@p_ADDNEW_ID		varchar(15)  = NULL,
3
	@p_FR_BUY_DATE		VARCHAR(10) = NULL, --Tu ngay nhap
4
	@p_TO_BUY_DATE		VARCHAR(10) = NULL, --Den ngay nhap
5
	@p_TYPE_ID			varchar(15)  = NULL,
6
	@p_GROUP_ID			varchar(15)  = NULL,
7
	@p_ASSET_NAME		nvarchar(1000)  = NULL,
8
	@p_ASSET_SERIAL_NO	nvarchar(MAX)  = NULL,
9
	@p_ASSET_DESC		nvarchar(max) = NULL,
10
	@p_BRANCH_ID		varchar(15)  = NULL,
11
	@p_DEPT_ID			varchar(15)  = NULL,---------Them ma phong ban
12
	@p_EMP_ID			varchar(15)  = NULL,-----------Them Nguoi su dung
13
	@p_DIVISION_ID		varchar(15)  = NULL,----------Them co so
14
	@p_BUY_PRICE		decimal(18)  = NULL,
15
	@p_AMORT_AMT		decimal(18)  = NULL,
16
	@p_AMORT_MONTH		decimal(18,2) = NULL,
17
	@p_AMORT_RATE		decimal(18,2)  = NULL,
18
	@p_IS_MULTIPLE		varchar(1)  = NULL,
19
	@p_QTY				int = NULL,
20
	@p_PO_ID			varchar(15)  = NULL,
21
	@p_TRADE_ID			varchar(15)  = NULL, --Them de luu chi tiet PO
22
	@p_TYPE				varchar(10) = 'ADD_NEW',  --'ADD_NEW' dung cho nhap moi TS, 'ADD_REF': nhap moi dieu chinh
23
	@p_REF_ASSET_ID		varchar(15)  = NULL,
24
	@p_REF_AMORTIZED_AMT	decimal(18)  = NULL,
25
	@p_WARRANTY_MONTHS	int = NULL,
26
	@p_NOTES			nvarchar(1000)  = NULL,
27
	@p_RECORD_STATUS	varchar(1)  = NULL,
28
	@p_AUTH_STATUS		varchar(1)  = NULL,
29
	@p_MAKER_ID			varchar(15)  = NULL,
30
	@p_CREATE_DT		VARCHAR(20) = NULL,
31
	@p_CHECKER_ID		varchar(15)  = NULL,
32
	@p_APPROVE_DT		VARCHAR(20) = NULL,
33
	@p_TOP				INT		= NULL,
34
	@p_CONSTRUCT_ID		VARCHAR(15) = NULL,
35
	@p_POSTED_STATUS	VARCHAR(1) = NULL,
36
	@p_BRANCH_CREATE	VARCHAR(15) = NULL,
37
	@p_LEVEL			VARCHAR(10) = NULL,
38
	@p_AUTH_STATUS_KT	VARCHAR(1) = NULL,
39
	@p_KT_IS_DO			VARCHAR(1) = NULL,
40
	@p_PRICE_TO			decimal(18) = NULL,
41
	@p_PRICE_FROM			decimal(18) = NULL,
42
	@p_USER_LOGIN   VARCHAR(15),-- 26022020 LUCTV TRUYEN XUONG USER LOGIN DE DO TIM MA PHONG BAN
43
	@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
44
  @p_REQ_CODE VARCHAR(100) = NULL --Thêm trường tìm kiếm số PYC
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
                CASE
81
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
82
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
83
                	-- ELSE
84
                END AS BUY_PRICE,
85
                CASE
86
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
87
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
88
                	-- ELSE
89
                END AS AMORT_AMT,
90
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS BUY_PRICE,
91
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS AMORT_AMT,
92
				A.AMORT_MONTH,
93
				A.AMORT_RATE,
94
				A.IS_MULTIPLE,
95
				A.QTY,
96
				A.PO_ID,
97
				PO.PO_CODE,
98
				A.PD_ID,
99
				A.REF_ASSET_ID,
100
				I.ASSET_CODE AS REF_ASS_CODE,
101
				I.ASSET_NAME AS REF_ASS_NAME,
102
				A.REF_AMORTIZED_AMT,
103
				A.WARRANTY_MONTHS,
104
				A.NOTES,
105
				A.CORE_NOTE ,
106
				A.RECORD_STATUS,
107
				A.AUTH_STATUS,
108
				B.CONTENT AS AUTH_STATUS_NAME,AKT.CONTENT AS AUTH_STATUS_NAME_KT,
109
				A.MAKER_ID,
110
				UM.TLFullName MAKER_NAME,
111
				A.CREATE_DT,--CONVERT(VARCHAR(10), A.CREATE_DT, 103) AS S_CREATE_DT
112
				A.CHECKER_ID,
113
				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,
114
				E.BRANCH_CODE, F.DIV_CODE, E.BRANCH_NAME, (ISNULL(E.BRANCH_NAME,'') + ' '+ ISNULL(H.DEP_NAME,'')) AS RECEIVE_BRANCH ,
115
				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)) + ISNULL(A.PRICE_VAT,0))) AS TOTAL_AMT
116
				--, G.SUP_CODE, G.SUP_NAME
117
				,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_SYMPOL, AP.INVOICE_DATE AS ASS_INVOICE_DT,
118
				CREBRN.BRANCH_CODE+' - '+ CREBRN.BRANCH_NAME AS FULL_BRANCH_NAME, D.GROUP_CODE +' - '+ D.GROUP_NAME GROUP_NAME_FULL,
119
				UM2.TLFullName AS CREATE_USER_NAME, UM3.TLFullName AS APPROVE_NAME_KT, UM4.TLFullName AS CREATE_USER_NAME_KT,
120
				@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH,
121
        A.REQ_ID,
122
        A.REQ_CODE--- TRA VE THAM SO GAN VO CURRENT SEARCH TRANH GAY LOI O CAC MAN HINH
123
-- SELECT END
124
		FROM ASS_ADDNEW A
125
  	--LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS
126
  	LEFT JOIN dbo.CM_ALLCODE B ON B.CDVAL = A.AUTH_STATUS AND B.CDNAME = 'ASS_ADD_AUTH' AND B.CDTYPE = 'ASS_ADDNEW'
127
  	LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
128
  	LEFT JOIN ASS_GROUP D ON A.GROUP_ID = D.GROUP_ID
129
  	LEFT JOIN TL_USER UM ON UM.TLNANME = A.CHECKER_ID
130
  	LEFT JOIN TL_USER UM2 ON UM2.TLNANME = A.MAKER_ID
131
  	LEFT JOIN TL_USER UM3 ON UM2.TLNANME = A.CHECKER_ID_KT
132
  	LEFT JOIN TL_USER UM4 ON UM4.TLNANME = A.MAKER_ID_KT
133
  	LEFT JOIN TR_PO_MASTER PO ON PO.PO_ID = A.PO_ID
134
  	LEFT JOIN CM_BRANCH E ON E.BRANCH_ID = A.BRANCH_ID
135
  	LEFT JOIN CM_DIVISION F ON F.DIV_ID = A.DIVISION_ID
136
  	LEFT JOIN CM_EMPLOYEE G ON G.EMP_ID = A.EMP_ID
137
  	LEFT JOIN CM_DEPARTMENT H ON H.DEP_ID = A.DEPT_ID
138
  	LEFT JOIN ASS_MASTER I ON I.ASSET_ID = A.REF_ASSET_ID
139
  	--LEFT JOIN CM_AUTH_STATUS AKT ON AKT.AUTH_STATUS = A.AUTH_STATUS_KT
140
  	LEFT JOIN dbo.CM_ALLCODE AKT ON AKT.CDVAL = A.AUTH_STATUS_KT AND AKT.CDNAME = 'ASS_ADD_AUTH' AND AKT.CDTYPE = 'ASS_ADDNEW'
141
  	LEFT JOIN CM_BRANCH CREBRN ON CREBRN.BRANCH_ID = A.BRANCH_CREATE
142
  	LEFT JOIN ASS_PO AP ON A.ADDNEW_ID = AP.ADDNEW_ID
143
		WHERE	(A.ADDNEW_ID = @p_ADDNEW_ID OR @p_ADDNEW_ID IS NULL OR @p_ADDNEW_ID = '')
144

    
145
		-- TIM KIEM TU NGAY DEN NGAY O HC
146
		AND	((@p_TYPE_SEARCH = 'HC' AND (@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
147
            	(@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103))) 
148
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
149
            	OR ((CONVERT(DATE, A.BUY_DATE, 103)) >=  (CONVERT(DATE, @p_FR_BUY_DATE, 103)) AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)))
150
            	)
151
        OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
152
			
153
    -- TIM KIEM TU NGAY O KT
154
        AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
155
          AND	(((@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
156
            	@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103)) 
157
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
158
            	OR (CONVERT(DATE, A.BUY_DATE, 103)) >=  (CONVERT(DATE, @p_FR_BUY_DATE, 103)) AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103))
159
            	)))
160
          OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
161
              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 = ''))
162
                OR (@p_AUTH_STATUS_KT = 'U' 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 = ''))
163
                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 = ''))
164
                OR (@p_AUTH_STATUS_KT = '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 = ''))
165
                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 = ''))))))
166
        OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
167
    AND	    (A.REQ_CODE like N'%' + @p_REQ_CODE + '%' OR @p_REQ_CODE IS NULL OR @p_REQ_CODE = '')
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_ID = @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 (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV,GDDV_QLTS,TBP_QLTS,KSV_QLTS','DV0001','DEP000000000048') US
205
          WHERE US.TLNANME = @p_USER_LOGIN)) OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = '')
206
  
207
  	-- 11-03-2022 HUYHT BO SUNG DIEU KIEN TIM KIEM PHIEU NHAP THEO QUYEN KIEM NHIEM
208
      AND ((@p_TYPE_SEARCH='HC'
209
--        AND (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV',A.BRANCH_CREATE,A.DEPT_CREATE) US
210
--          WHERE US.TLNANME = @p_USER_LOGIN))
211
          AND (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV,GDDV_QLTS,TBP_QLTS,KSV_QLTS','DV0001','DEP000000000048') US
212
          WHERE US.TLNANME = @p_USER_LOGIN))
213
        OR A.MAKER_ID = @p_USER_LOGIN)
214
      OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
215
  	OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_CREATE)
216
    OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH ='')
217
  	
218

    
219
		ORDER BY A.CREATE_DT DESC
220
-- PAGING END
221
	ELSE
222
-- PAGING BEGIN
223
		SELECT TOP (CONVERT(INT, @p_TOP))
224
				A.ADDNEW_ID,
225
				A.BUY_DATE,
226
				A.[TYPE_ID],
227
				C.[TYPE_NAME],
228
				A.GROUP_ID,
229
				D.GROUP_CODE,
230
				D.GROUP_NAME,
231
				A.ASSET_NAME,
232
				A.ASSET_SERIAL_NO,
233
				A.ASSET_DESC,
234
				A.BRANCH_ID,
235
				A.AMORT_START_DATE,
236
				A.DEPT_ID,
237
				H.DEP_CODE,
238
				H.DEP_NAME,
239
				A.EMP_ID,
240
				G.EMP_CODE,
241
				G.EMP_NAME,
242
				A.DIVISION_ID,
243
                CASE
244
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
245
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
246
                	-- ELSE
247
                END AS BUY_PRICE,
248
                CASE
249
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
250
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
251
                	-- ELSE
252
                END AS AMORT_AMT,
253
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS BUY_PRICE,
254
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS AMORT_AMT,
255
				A.AMORT_MONTH,
256
				A.AMORT_RATE,
257
				A.IS_MULTIPLE,
258
				A.QTY,
259
				A.PO_ID,
260
				PO.PO_CODE,
261
				A.REF_ASSET_ID,
262
				I.ASSET_CODE AS REF_ASS_CODE,
263
				I.ASSET_NAME AS REF_ASS_NAME,
264
				A.REF_AMORTIZED_AMT,
265
				A.WARRANTY_MONTHS,
266
				A.NOTES,
267
				A.CORE_NOTE,
268
				A.RECORD_STATUS,
269
				A.AUTH_STATUS,
270
				B.CONTENT AS AUTH_STATUS_NAME,AKT.CONTENT AS AUTH_STATUS_NAME_KT,
271
				A.MAKER_ID,
272
				UM.TLFullName MAKER_NAME,
273
				A.CREATE_DT,--CONVERT(VARCHAR(10), A.CREATE_DT, 103) AS S_CREATE_DT
274
				A.CHECKER_ID,
275
				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,
276
				E.BRANCH_CODE, F.DIV_CODE, E.BRANCH_NAME, (ISNULL(E.BRANCH_NAME,'') + ' '+ ISNULL(H.DEP_NAME,'')) AS RECEIVE_BRANCH ,
277
				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)) + ISNULL(A.PRICE_VAT,0))) AS TOTAL_AMT
278
				--, G.SUP_CODE, G.SUP_NAME
279
				,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
280
				,D.GROUP_CODE +' - '+ D.GROUP_NAME GROUP_NAME_FULL,
281
				UM2.TLFullName AS CREATE_USER_NAME, UM3.TLFullName AS APPROVE_NAME_KT, UM4.TLFullName AS CREATE_USER_NAME_KT,
282
				@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH,
283
        A.REQ_ID,
284
        A.REQ_CODE--- TRA VE THAM SO GAN VO CURRENT SEARCH TRANH GAY LOI O CAC MAN HINH
285
-- SELECT END
286
		FROM ASS_ADDNEW A
287
		--LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS
288
		LEFT JOIN dbo.CM_ALLCODE B ON B.CDVAL = A.AUTH_STATUS AND B.CDNAME = 'ASS_ADD_AUTH' AND B.CDTYPE = 'ASS_ADDNEW'
289
		LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
290
		LEFT JOIN ASS_GROUP D ON A.GROUP_ID = D.GROUP_ID
291
		LEFT JOIN TL_USER UM ON UM.TLNANME = A.CHECKER_ID
292
		LEFT JOIN TL_USER UM2 ON UM2.TLNANME = A.MAKER_ID
293
		LEFT JOIN TL_USER UM3 ON UM2.TLNANME = A.CHECKER_ID_KT
294
		LEFT JOIN TL_USER UM4 ON UM4.TLNANME = A.MAKER_ID_KT
295
		LEFT JOIN TR_PO_MASTER PO ON PO.PO_ID = A.PO_ID
296
		LEFT JOIN CM_BRANCH E ON E.BRANCH_ID = A.BRANCH_ID
297
		LEFT JOIN CM_DIVISION F ON F.DIV_ID = A.DIVISION_ID
298
		LEFT JOIN CM_EMPLOYEE G ON G.EMP_ID = A.EMP_ID
299
		LEFT JOIN CM_DEPARTMENT H ON H.DEP_ID = A.DEPT_ID
300
		LEFT JOIN ASS_MASTER I ON I.ASSET_ID = A.REF_ASSET_ID
301
		--LEFT JOIN CM_AUTH_STATUS AKT ON AKT.AUTH_STATUS = A.AUTH_STATUS_KT
302
		LEFT JOIN dbo.CM_ALLCODE AKT ON AKT.CDVAL = A.AUTH_STATUS_KT AND AKT.CDNAME = 'ASS_ADD_AUTH' AND AKT.CDTYPE = 'ASS_ADDNEW'
303
		LEFT JOIN CM_BRANCH CREBRN ON CREBRN.BRANCH_ID = A.BRANCH_CREATE
304
		LEFT JOIN ASS_PO AP ON A.ADDNEW_ID = AP.ADDNEW_ID
305
		WHERE	(A.ADDNEW_ID = @p_ADDNEW_ID OR @p_ADDNEW_ID IS NULL OR @p_ADDNEW_ID = '')
306

    
307
--    -- TIM KIEM TU NGAY DEN NGAY O HC
308
--		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 = ''))
309
--      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
310
--    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 = ''))
311
--      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
312

    
313
        -- TIM KIEM TU NGAY DEN NGAY O HC
314
		AND	((@p_TYPE_SEARCH = 'HC' AND (@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
315
            	(@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103))) 
316
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
317
            	OR ((CONVERT(DATE, A.BUY_DATE, 103)) >=  (CONVERT(DATE, @p_FR_BUY_DATE, 103)) AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)))
318
            	)
319
        OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
320
		
321
--    -- TIM KIEM TU NGAY O KT
322
--    AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
323
--      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 = ''))
324
--      OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
325
--          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 = ''))
326
--            OR (@p_AUTH_STATUS_KT = 'U' 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 = ''))
327
--            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 = ''))
328
--            OR (@p_AUTH_STATUS_KT = '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 = ''))
329
--            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 = ''))))))
330
--    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
331
--    -- TIM KIEM DEN NGAY O KT
332
--    AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
333
--      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 = ''))
334
--      OR ((A.MAKER_ID_KT IS NOT NULL AND A.MAKER_ID_KT <> '')
335
--          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 = ''))
336
--            OR (@p_AUTH_STATUS_KT = 'U' 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 = ''))
337
--            OR (@p_AUTH_STATUS_KT = 'U' 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 = ''))
338
--            OR (@p_AUTH_STATUS_KT = '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 = ''))
339
--            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 = ''))))))
340
--    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
341
    
342
        -- TIM KIEM TU NGAY O KT
343
        AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
344
          AND	(((@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
345
            	@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103)) 
346
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
347
            	OR (CONVERT(DATE, A.BUY_DATE, 103)) >=  (CONVERT(DATE, @p_FR_BUY_DATE, 103)) AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103))
348
            	)))
349
          OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
350
              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 = ''))
351
                OR (@p_AUTH_STATUS_KT = 'U' 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 = ''))
352
                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 = ''))
353
                OR (@p_AUTH_STATUS_KT = '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 = ''))
354
                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 = ''))))))
355
        OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
356

    
357
    	
358
        AND	    (A.REQ_CODE like N'%' + @p_REQ_CODE + '%' OR @p_REQ_CODE IS NULL OR @p_REQ_CODE = '')	
359
		AND		(A.[TYPE_ID] = @p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID = '')
360
		AND		(A.GROUP_ID = @p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID = '')
361
		AND		(D.GROUP_CODE = @l_GROUP_CODE OR @l_GROUP_CODE IS NULL OR @l_GROUP_CODE = '')
362
		AND		(A.ASSET_NAME like N'%' + @p_ASSET_NAME + '%' OR @p_ASSET_NAME IS NULL OR @p_ASSET_NAME = '')
363
		AND		(A.ASSET_SERIAL_NO like N'%' + @p_ASSET_SERIAL_NO + '%' OR @p_ASSET_SERIAL_NO IS NULL OR @p_ASSET_SERIAL_NO = '')
364
		AND		(A.ASSET_DESC like N'%' + @p_ASSET_DESC + '%' OR @p_ASSET_DESC IS NULL OR @p_ASSET_DESC = '')
365
		AND		(A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '')
366
		AND		(A.BUY_PRICE = @p_BUY_PRICE OR @p_BUY_PRICE IS NULL)
367
		AND		(A.AMORT_AMT = @p_AMORT_AMT OR @p_AMORT_AMT IS NULL)
368
		AND		(A.AMORT_MONTH = @p_AMORT_MONTH OR @p_AMORT_MONTH IS NULL)
369
		AND		(A.AMORT_RATE = @p_AMORT_RATE OR @p_AMORT_RATE IS NULL)
370
		AND		(A.IS_MULTIPLE = @p_IS_MULTIPLE OR @p_IS_MULTIPLE IS NULL OR @p_IS_MULTIPLE = '')
371
		AND		(A.QTY = @p_QTY OR @p_QTY IS NULL OR @p_QTY = 0)
372
		AND		(A.PO_ID = @p_PO_ID OR @p_PO_ID IS NULL OR @p_PO_ID = '')
373
		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 <> ''))
374
		AND		(A.REF_ASSET_ID = @p_REF_ASSET_ID OR @p_REF_ASSET_ID IS NULL OR @p_REF_ASSET_ID='')
375
		AND		(A.REF_AMORTIZED_AMT = @p_REF_AMORTIZED_AMT OR @p_REF_AMORTIZED_AMT IS NULL)
376
		AND		(A.WARRANTY_MONTHS = @p_WARRANTY_MONTHS OR @p_WARRANTY_MONTHS IS NULL OR @p_WARRANTY_MONTHS = 0)		
377
		AND		(A.NOTES like N'%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
378
		AND		(A.RECORD_STATUS = @p_RECORD_STATUS OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')
379
		AND		(A.AUTH_STATUS = @p_AUTH_STATUS OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
380
		AND		(A.POSTED_STATUS = @p_POSTED_STATUS OR @p_POSTED_STATUS IS NULL OR @p_POSTED_STATUS = '')
381
		--AND		(A.BRANCH_CREATE = @p_BRANCH_CREATE OR @p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE = '')
382
		AND		(A.AUTH_STATUS_KT = @p_AUTH_STATUS_KT OR @p_AUTH_STATUS_KT IS NULL OR @p_AUTH_STATUS_KT = '')
383
		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
384
				OR ((A.MAKER_ID_KT IS NULL AND @p_KT_IS_DO = 'N')) 
385
				OR @p_KT_IS_DO IS NULL OR @p_KT_IS_DO = '')
386

    
387
		AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) >= @p_PRICE_FROM OR @p_PRICE_FROM = 0 OR @p_PRICE_FROM IS NULL)
388
		AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) <= @p_PRICE_TO OR @p_PRICE_TO = 0 OR @p_PRICE_TO IS NULL)
389
		-- 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
390
		AND	(A.MAKER_ID = @p_MAKER_ID OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
391

    
392
    -- NEW TRANG THAI PHIEU XUAT LA LUU NHAP HOAC TU CHOI THI CHI NGUOI TAO CO THE TIM THAY
393
	  AND ((A.AUTH_STATUS IN ('E','R')  AND A.MAKER_ID = @p_USER_LOGIN) OR (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV,GDDV_QLTS,TBP_QLTS,KSV_QLTS','DV0001','DEP000000000048') US
394
          WHERE US.TLNANME = @p_USER_LOGIN)) OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = '')
395
		
396
		-- 11-03-2022 HUYHT BO SUNG DIEU KIEN TIM KIEM PHIEU NHAP THEO QUYEN KIEM NHIEM
397
    AND ((@p_TYPE_SEARCH='HC'
398
        AND (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV,GDDV_QLTS,TBP_QLTS,KSV_QLTS','DV0001','DEP000000000048') US
399
          WHERE US.TLNANME = @p_USER_LOGIN))
400
        OR A.MAKER_ID = @p_USER_LOGIN)
401
    OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
402
  	OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_CREATE)
403
    OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH ='')
404

    
405
		ORDER BY A.CREATE_DT DESC
406
-- PAGING END
407
END -- PAGING