Project

General

Profile

ASS_NEW_SEARCH.txt

Luc Tran Van, 04/26/2023 09:46 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
	insert into @tmp  SELECT BRANCH_ID  FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_CREATE)
50
	DECLARE @l_GROUP_CODE VARCHAR(100) 
51
	IF(@p_TYPE_ID='ALL')
52
	BEGIN
53
		SET @l_GROUP_CODE = (SELECT GROUP_CODE FROM ASS_GROUP WHERE GROUP_ID = @p_GROUP_ID)
54
		SET @p_TYPE_ID=''
55
	END
56
	IF @p_TOP IS NULL OR @p_TOP  = ''
57
-- PAGING BEGIN
58
		SELECT 
59
				A.ADDNEW_ID,
60
				A.BUY_DATE,
61
				A.[TYPE_ID],
62
				C.[TYPE_NAME],
63
				A.GROUP_ID,
64
				D.GROUP_CODE,
65
				D.GROUP_NAME,
66
				A.ASSET_NAME,
67
				A.ASSET_SERIAL_NO,
68
				A.ASSET_DESC,
69
				A.BRANCH_ID,
70
				A.AMORT_START_DATE,
71
				A.DEPT_ID,
72
				H.DEP_CODE,
73
				H.DEP_NAME,
74
				A.EMP_ID,
75
				G.EMP_CODE,
76
				G.EMP_NAME,
77
				A.DIVISION_ID,
78
                CASE
79
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
80
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
81
                	-- ELSE
82
                END AS BUY_PRICE,
83
                CASE
84
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
85
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
86
                	-- ELSE
87
                END AS AMORT_AMT,
88
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS BUY_PRICE,
89
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS AMORT_AMT,
90
				A.AMORT_MONTH,
91
				A.AMORT_RATE,
92
				A.IS_MULTIPLE,
93
				A.QTY,
94
				A.PO_ID,
95
				PO.PO_CODE,
96
				A.PD_ID,
97
				A.REF_ASSET_ID,
98
				I.ASSET_CODE AS REF_ASS_CODE,
99
				I.ASSET_NAME AS REF_ASS_NAME,
100
				A.REF_AMORTIZED_AMT,
101
				A.WARRANTY_MONTHS,
102
				A.NOTES,
103
				A.CORE_NOTE ,
104
				A.RECORD_STATUS,
105
				A.AUTH_STATUS,
106
				B.CONTENT AS AUTH_STATUS_NAME,AKT.CONTENT AS AUTH_STATUS_NAME_KT,
107
				A.MAKER_ID,
108
				UM.TLFullName MAKER_NAME,
109
				A.CREATE_DT,--CONVERT(VARCHAR(10), A.CREATE_DT, 103) AS S_CREATE_DT
110
				A.CHECKER_ID,
111
				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,
112
				E.BRANCH_CODE, F.DIV_CODE, E.BRANCH_NAME, (ISNULL(E.BRANCH_NAME,'') + ' '+ ISNULL(H.DEP_NAME,'')) AS RECEIVE_BRANCH ,
113
				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
114
				--, G.SUP_CODE, G.SUP_NAME
115
				,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,
116
				CREBRN.BRANCH_CODE+' - '+ CREBRN.BRANCH_NAME AS FULL_BRANCH_NAME, D.GROUP_CODE +' - '+ D.GROUP_NAME GROUP_NAME_FULL,
117
				UM2.TLFullName AS CREATE_USER_NAME, UM3.TLFullName AS APPROVE_NAME_KT, UM4.TLFullName AS CREATE_USER_NAME_KT,
118
				@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH,
119
        A.REQ_ID,
120
        A.REQ_CODE--- TRA VE THAM SO GAN VO CURRENT SEARCH TRANH GAY LOI O CAC MAN HINH
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 = @p_ADDNEW_ID OR @p_ADDNEW_ID IS NULL OR @p_ADDNEW_ID = '')
142
		-- TIM KIEM TU NGAY DEN NGAY O HC
143
		AND	((@p_TYPE_SEARCH = 'HC' AND (@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
144
            	@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103)) 
145
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
146
            	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))
147
            	)
148
        OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
149
			
150
    -- TIM KIEM TU NGAY O KT
151
        AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
152
          AND	(((@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
153
            	@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103)) 
154
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
155
            	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))
156
            	)))
157
          OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
158
              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 = ''))
159
                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 = ''))
160
                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 = ''))
161
                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 = ''))
162
                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 = ''))))))
163
        OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
164
    AND	    (A.REQ_CODE like N'%' + @p_REQ_CODE + '%' OR @p_REQ_CODE IS NULL OR @p_REQ_CODE = '')
165
  	AND		(A.[TYPE_ID] = @p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID = '')
166
  	AND		(A.GROUP_ID = @p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID = '')
167
  	AND		(D.GROUP_CODE = @l_GROUP_CODE OR @l_GROUP_CODE IS NULL OR @l_GROUP_CODE = '')
168
  	AND		(A.ASSET_NAME like N'%' + @p_ASSET_NAME + '%' OR @p_ASSET_NAME IS NULL OR @p_ASSET_NAME = '')
169
  	AND		(A.ASSET_SERIAL_NO like N'%' + @p_ASSET_SERIAL_NO + '%' OR @p_ASSET_SERIAL_NO IS NULL OR @p_ASSET_SERIAL_NO = '')
170
  	AND		(A.ASSET_DESC like N'%' + @p_ASSET_DESC + '%' OR @p_ASSET_DESC IS NULL OR @p_ASSET_DESC = '')
171
  	AND		(A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '')
172
  	AND		(A.DEPT_ID = @p_DEPT_ID OR @p_DEPT_ID IS NULL OR @p_DEPT_ID = '')
173
  	AND		(A.EMP_ID = @p_EMP_ID OR @p_EMP_ID IS NULL OR @p_EMP_ID = '')
174
  	AND		(A.DIVISION_ID = @p_DIVISION_ID OR @p_DIVISION_ID IS NULL OR @p_DIVISION_ID = '')
175
  	AND		(A.BUY_PRICE = @p_BUY_PRICE OR @p_BUY_PRICE IS NULL)
176
  	AND		(A.AMORT_AMT = @p_AMORT_AMT OR @p_AMORT_AMT IS NULL)
177
  	AND		(A.AMORT_MONTH = @p_AMORT_MONTH OR @p_AMORT_MONTH IS NULL)
178
  	AND		(A.AMORT_RATE = @p_AMORT_RATE OR @p_AMORT_RATE IS NULL)
179
  	AND		(A.IS_MULTIPLE = @p_IS_MULTIPLE OR @p_IS_MULTIPLE IS NULL OR @p_IS_MULTIPLE = '')
180
  	AND		(A.QTY = @p_QTY OR @p_QTY IS NULL OR @p_QTY = 0)
181
  	AND		(A.PO_ID = @p_PO_ID OR @p_PO_ID IS NULL OR @p_PO_ID = '')
182
  	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 <> ''))
183
  	AND		(A.REF_ASSET_ID = @p_REF_ASSET_ID OR @p_REF_ASSET_ID IS NULL OR @p_REF_ASSET_ID='')
184
  	AND		(A.REF_AMORTIZED_AMT = @p_REF_AMORTIZED_AMT OR @p_REF_AMORTIZED_AMT IS NULL)
185
  	AND		(A.WARRANTY_MONTHS = @p_WARRANTY_MONTHS OR @p_WARRANTY_MONTHS IS NULL OR @p_WARRANTY_MONTHS = 0)		
186
  	AND		(A.NOTES like N'%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
187
  	AND		(A.RECORD_STATUS = @p_RECORD_STATUS OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')
188
  	AND		(A.AUTH_STATUS = @p_AUTH_STATUS OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
189
  	AND		(A.POSTED_STATUS = @p_POSTED_STATUS OR @p_POSTED_STATUS IS NULL OR @p_POSTED_STATUS = '')
190
  	--AND		(A.BRANCH_CREATE = @p_BRANCH_CREATE OR @p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE = '')	
191
  	AND		(A.AUTH_STATUS_KT = @p_AUTH_STATUS_KT OR @p_AUTH_STATUS_KT IS NULL OR @p_AUTH_STATUS_KT = '')	
192
  	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
193
  			OR ((A.MAKER_ID_KT IS NULL AND @p_KT_IS_DO = 'N')) 
194
  			OR @p_KT_IS_DO IS NULL OR @p_KT_IS_DO = '')
195
  	AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) >= @p_PRICE_FROM OR @p_PRICE_FROM = 0 OR @p_PRICE_FROM IS NULL)
196
  	AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) <= @p_PRICE_TO OR @p_PRICE_TO = 0 OR @p_PRICE_TO IS NULL)
197
  	-- 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
198
  	AND	(A.MAKER_ID = @p_MAKER_ID OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
199
  
200
      -- NEW TRANG THAI PHIEU XUAT LA LUU NHAP HOAC TU CHOI THI CHI NGUOI TAO CO THE TIM THAY
201
    AND ((A.AUTH_STATUS IN ('E','R')  AND A.MAKER_ID = @p_USER_LOGIN) 
202
        OR (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV,GDDV_QLTS,TBP_QLTS,KSV_QLTS','DV0001','DEP000000000048') US
203
              WHERE US.TLNANME = @p_USER_LOGIN))
204
        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
209
--          WHERE US.TLNANME = @p_USER_LOGIN))
210
          AND (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV,GDDV_QLTS,TBP_QLTS,KSV_QLTS','DV0001','DEP000000000048') US
211
          WHERE US.TLNANME = @p_USER_LOGIN))
212
        OR A.MAKER_ID = @p_USER_LOGIN)
213
      OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
214
  	OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_CREATE)
215
    OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH ='')
216
  	
217
		ORDER BY A.CREATE_DT DESC
218
-- PAGING END
219
	ELSE
220
-- PAGING BEGIN
221
		SELECT TOP (CONVERT(INT, @p_TOP))
222
				A.ADDNEW_ID,
223
				A.BUY_DATE,
224
				A.[TYPE_ID],
225
				C.[TYPE_NAME],
226
				A.GROUP_ID,
227
				D.GROUP_CODE,
228
				D.GROUP_NAME,
229
				A.ASSET_NAME,
230
				A.ASSET_SERIAL_NO,
231
				A.ASSET_DESC,
232
				A.BRANCH_ID,
233
				A.AMORT_START_DATE,
234
				A.DEPT_ID,
235
				H.DEP_CODE,
236
				H.DEP_NAME,
237
				A.EMP_ID,
238
				G.EMP_CODE,
239
				G.EMP_NAME,
240
				A.DIVISION_ID,
241
                CASE
242
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
243
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
244
                	-- ELSE
245
                END AS BUY_PRICE,
246
                CASE
247
                	WHEN A.TYPE_ID = 'TSCD' THEN ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0)
248
                	WHEN A.TYPE_ID = 'CCLD' THEN ISNULL(A.BUY_PRICE,0)
249
                	-- ELSE
250
                END AS AMORT_AMT,
251
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS BUY_PRICE,
252
--				ISNULL(A.BUY_PRICE,0) + ISNULL(A.PRICE_VAT,0) AS AMORT_AMT,
253
				A.AMORT_MONTH,
254
				A.AMORT_RATE,
255
				A.IS_MULTIPLE,
256
				A.QTY,
257
				A.PO_ID,
258
				PO.PO_CODE,
259
				A.REF_ASSET_ID,
260
				I.ASSET_CODE AS REF_ASS_CODE,
261
				I.ASSET_NAME AS REF_ASS_NAME,
262
				A.REF_AMORTIZED_AMT,
263
				A.WARRANTY_MONTHS,
264
				A.NOTES,
265
				A.CORE_NOTE,
266
				A.RECORD_STATUS,
267
				A.AUTH_STATUS,
268
				B.CONTENT AS AUTH_STATUS_NAME,AKT.CONTENT AS AUTH_STATUS_NAME_KT,
269
				A.MAKER_ID,
270
				UM.TLFullName MAKER_NAME,
271
				A.CREATE_DT,--CONVERT(VARCHAR(10), A.CREATE_DT, 103) AS S_CREATE_DT
272
				A.CHECKER_ID,
273
				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,
274
				E.BRANCH_CODE, F.DIV_CODE, E.BRANCH_NAME, (ISNULL(E.BRANCH_NAME,'') + ' '+ ISNULL(H.DEP_NAME,'')) AS RECEIVE_BRANCH ,
275
				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
276
				--, G.SUP_CODE, G.SUP_NAME
277
				,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
278
				,D.GROUP_CODE +' - '+ D.GROUP_NAME GROUP_NAME_FULL,
279
				UM2.TLFullName AS CREATE_USER_NAME, UM3.TLFullName AS APPROVE_NAME_KT, UM4.TLFullName AS CREATE_USER_NAME_KT,
280
				@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH,
281
        A.REQ_ID,
282
        A.REQ_CODE--- TRA VE THAM SO GAN VO CURRENT SEARCH TRANH GAY LOI O CAC MAN HINH
283
-- SELECT END
284
		FROM ASS_ADDNEW A
285
		--LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS
286
		LEFT JOIN dbo.CM_ALLCODE B ON B.CDVAL = A.AUTH_STATUS AND B.CDNAME = 'ASS_ADD_AUTH' AND B.CDTYPE = 'ASS_ADDNEW'
287
		LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
288
		LEFT JOIN ASS_GROUP D ON A.GROUP_ID = D.GROUP_ID
289
		LEFT JOIN TL_USER UM ON UM.TLNANME = A.CHECKER_ID
290
		LEFT JOIN TL_USER UM2 ON UM2.TLNANME = A.MAKER_ID
291
		LEFT JOIN TL_USER UM3 ON UM2.TLNANME = A.CHECKER_ID_KT
292
		LEFT JOIN TL_USER UM4 ON UM4.TLNANME = A.MAKER_ID_KT
293
		LEFT JOIN TR_PO_MASTER PO ON PO.PO_ID = A.PO_ID
294
		LEFT JOIN CM_BRANCH E ON E.BRANCH_ID = A.BRANCH_ID
295
		LEFT JOIN CM_DIVISION F ON F.DIV_ID = A.DIVISION_ID
296
		LEFT JOIN CM_EMPLOYEE G ON G.EMP_ID = A.EMP_ID
297
		LEFT JOIN CM_DEPARTMENT H ON H.DEP_ID = A.DEPT_ID
298
		LEFT JOIN ASS_MASTER I ON I.ASSET_ID = A.REF_ASSET_ID
299
		--LEFT JOIN CM_AUTH_STATUS AKT ON AKT.AUTH_STATUS = A.AUTH_STATUS_KT
300
		LEFT JOIN dbo.CM_ALLCODE AKT ON AKT.CDVAL = A.AUTH_STATUS_KT AND AKT.CDNAME = 'ASS_ADD_AUTH' AND AKT.CDTYPE = 'ASS_ADDNEW'
301
		LEFT JOIN CM_BRANCH CREBRN ON CREBRN.BRANCH_ID = A.BRANCH_CREATE
302
		LEFT JOIN ASS_PO AP ON A.ADDNEW_ID = AP.ADDNEW_ID
303
		WHERE	(A.ADDNEW_ID = @p_ADDNEW_ID OR @p_ADDNEW_ID IS NULL OR @p_ADDNEW_ID = '')
304
--    -- TIM KIEM TU NGAY DEN NGAY O HC
305
--		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 = ''))
306
--      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
307
--    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 = ''))
308
--      OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
309
        -- TIM KIEM TU NGAY DEN NGAY O HC
310
		AND	((@p_TYPE_SEARCH = 'HC' AND (@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
311
            	@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103)) 
312
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
313
            	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))
314
            	)
315
        OR @p_TYPE_SEARCH = 'KT' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
316
		
317
--    -- TIM KIEM TU 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_FR_BUY_DATE, 103) OR @p_FR_BUY_DATE is NULL OR @p_FR_BUY_DATE = ''))
320
--      OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
321
--          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 = ''))
322
--            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 = ''))
323
--            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 = ''))
324
--            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 = ''))
325
--            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 = ''))))))
326
--    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
327
--    -- TIM KIEM DEN NGAY O KT
328
--    AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
329
--      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 = ''))
330
--      OR ((A.MAKER_ID_KT IS NOT NULL AND A.MAKER_ID_KT <> '')
331
--          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 = ''))
332
--            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 = ''))
333
--            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 = ''))
334
--            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 = ''))
335
--            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 = ''))))))
336
--    OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = '')
337
    
338
        -- TIM KIEM TU NGAY O KT
339
        AND ((@p_TYPE_SEARCH = 'KT' AND (((A.MAKER_ID_KT IS NULL OR A.MAKER_ID_KT = '')
340
          AND	(((@p_FR_BUY_DATE IS NULL AND @p_FR_BUY_DATE IS NULL OR
341
            	@p_TO_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) >= (CONVERT(DATE, @p_FR_BUY_DATE, 103)) 
342
            	OR  @p_FR_BUY_DATE IS NULL AND (CONVERT(DATE, A.BUY_DATE, 103)) <= (CONVERT(DATE, @p_TO_BUY_DATE, 103)) 
343
            	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))
344
            	)))
345
          OR ((A.MAKER_ID_KT IS NOT NULL OR A.MAKER_ID_KT <> '')
346
              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 = ''))
347
                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 = ''))
348
                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 = ''))
349
                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 = ''))
350
                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 = ''))))))
351
        OR @p_TYPE_SEARCH = 'HC' OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH = ''))
352
    	
353
        AND	    (A.REQ_CODE like N'%' + @p_REQ_CODE + '%' OR @p_REQ_CODE IS NULL OR @p_REQ_CODE = '')	
354
		AND		(A.[TYPE_ID] = @p_TYPE_ID OR @p_TYPE_ID IS NULL OR @p_TYPE_ID = '')
355
		AND		(A.GROUP_ID = @p_GROUP_ID OR @p_GROUP_ID IS NULL OR @p_GROUP_ID = '')
356
		AND		(D.GROUP_CODE = @l_GROUP_CODE OR @l_GROUP_CODE IS NULL OR @l_GROUP_CODE = '')
357
		AND		(A.ASSET_NAME like N'%' + @p_ASSET_NAME + '%' OR @p_ASSET_NAME IS NULL OR @p_ASSET_NAME = '')
358
		AND		(A.ASSET_SERIAL_NO like N'%' + @p_ASSET_SERIAL_NO + '%' OR @p_ASSET_SERIAL_NO IS NULL OR @p_ASSET_SERIAL_NO = '')
359
		AND		(A.ASSET_DESC like N'%' + @p_ASSET_DESC + '%' OR @p_ASSET_DESC IS NULL OR @p_ASSET_DESC = '')
360
		AND		(A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '')
361
		AND		(A.BUY_PRICE = @p_BUY_PRICE OR @p_BUY_PRICE IS NULL)
362
		AND		(A.AMORT_AMT = @p_AMORT_AMT OR @p_AMORT_AMT IS NULL)
363
		AND		(A.AMORT_MONTH = @p_AMORT_MONTH OR @p_AMORT_MONTH IS NULL)
364
		AND		(A.AMORT_RATE = @p_AMORT_RATE OR @p_AMORT_RATE IS NULL)
365
		AND		(A.IS_MULTIPLE = @p_IS_MULTIPLE OR @p_IS_MULTIPLE IS NULL OR @p_IS_MULTIPLE = '')
366
		AND		(A.QTY = @p_QTY OR @p_QTY IS NULL OR @p_QTY = 0)
367
		AND		(A.PO_ID = @p_PO_ID OR @p_PO_ID IS NULL OR @p_PO_ID = '')
368
		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 <> ''))
369
		AND		(A.REF_ASSET_ID = @p_REF_ASSET_ID OR @p_REF_ASSET_ID IS NULL OR @p_REF_ASSET_ID='')
370
		AND		(A.REF_AMORTIZED_AMT = @p_REF_AMORTIZED_AMT OR @p_REF_AMORTIZED_AMT IS NULL)
371
		AND		(A.WARRANTY_MONTHS = @p_WARRANTY_MONTHS OR @p_WARRANTY_MONTHS IS NULL OR @p_WARRANTY_MONTHS = 0)		
372
		AND		(A.NOTES like N'%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
373
		AND		(A.RECORD_STATUS = @p_RECORD_STATUS OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')
374
		AND		(A.AUTH_STATUS = @p_AUTH_STATUS OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
375
		AND		(A.POSTED_STATUS = @p_POSTED_STATUS OR @p_POSTED_STATUS IS NULL OR @p_POSTED_STATUS = '')
376
		--AND		(A.BRANCH_CREATE = @p_BRANCH_CREATE OR @p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE = '')
377
		AND		(A.AUTH_STATUS_KT = @p_AUTH_STATUS_KT OR @p_AUTH_STATUS_KT IS NULL OR @p_AUTH_STATUS_KT = '')
378
		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
379
				OR ((A.MAKER_ID_KT IS NULL AND @p_KT_IS_DO = 'N')) 
380
				OR @p_KT_IS_DO IS NULL OR @p_KT_IS_DO = '')
381
		AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) >= @p_PRICE_FROM OR @p_PRICE_FROM = 0 OR @p_PRICE_FROM IS NULL)
382
		AND ((ISNULL(A.QTY,0) * ISNULL(A.BUY_PRICE,0)) <= @p_PRICE_TO OR @p_PRICE_TO = 0 OR @p_PRICE_TO IS NULL)
383
		-- 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
384
		AND	(A.MAKER_ID = @p_MAKER_ID OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
385
    -- NEW TRANG THAI PHIEU XUAT LA LUU NHAP HOAC TU CHOI THI CHI NGUOI TAO CO THE TIM THAY
386
	  AND ((A.AUTH_STATUS IN ('E','R')  AND A.MAKER_ID = @p_USER_LOGIN) 
387
        OR (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV,GDDV_QLTS,TBP_QLTS,KSV_QLTS','DV0001','DEP000000000048') US
388
              WHERE US.TLNANME = @p_USER_LOGIN))
389
        OR A.AUTH_STATUS NOT IN ('E','R') OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = '')
390
		
391
		-- 11-03-2022 HUYHT BO SUNG DIEU KIEN TIM KIEM PHIEU NHAP THEO QUYEN KIEM NHIEM
392
    AND ((@p_TYPE_SEARCH='HC'
393
        AND (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))
395
        OR A.MAKER_ID = @p_USER_LOGIN)
396
    OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
397
  	OR (@p_TYPE_SEARCH='KT' AND @p_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_CREATE)
398
    OR @p_TYPE_SEARCH IS NULL OR @p_TYPE_SEARCH ='')
399
		ORDER BY A.CREATE_DT DESC
400
-- PAGING END
401
END -- PAGING