1
|
|
2
|
ALTER PROCEDURE [dbo].[TR_CONTRACT_Search]
|
3
|
@p_CONSTRACT_CODE varchar(50) = NULL,
|
4
|
@p_CONTRACT_ID varchar(15) = NULL,
|
5
|
@p_CONSTRACT_TYPE varchar(1) = NULL,
|
6
|
@p_CONSTRACT_NAME NVARCHAR(200) = NULL,
|
7
|
@p_BID_ID varchar(15) = NULL,
|
8
|
@p_BID_CODE varchar(15) = NULL,
|
9
|
@p_SUP_ID varchar(15) = NULL,
|
10
|
@p_SUP_CODE varchar(15) = NULL,
|
11
|
@P_SIGN_DT VARCHAR(20) = NULL,
|
12
|
@P_CREATE_DT VARCHAR(50) = NULL,
|
13
|
@p_AUTH_STATUS VARCHAR(1) = NULL,
|
14
|
@P_CONSTRUCT_ID VARCHAR(15) = NULL,
|
15
|
@P_CONSTRUCT_CODE VARCHAR(15) = NULL,
|
16
|
@P_START_DT VARCHAR(20) = NULL,
|
17
|
@P_END_DT VARCHAR(20) = NULL,
|
18
|
@P_CONTRACT_PARENT varchar(15) = NULL,
|
19
|
@p_REQUEST_ID varchar(15)=NULL,
|
20
|
@P_TOP INT =10,
|
21
|
@p_PYC_CODE VARCHAR(125) = NULL,
|
22
|
@p_PYC_NAME NVARCHAR(250) = NULL,
|
23
|
@p_TTCT_CODE VARCHAR(25) = NULL,
|
24
|
@p_TTCT_NAME NVARCHAR(250) = NULL,
|
25
|
@p_HH_TYPE_CODE VARCHAR(25) = NULL,
|
26
|
@p_HH_TYPE_NAME NVARCHAR(250) = NULL,
|
27
|
@p_CUST_ID VARCHAR(15) = NULL,
|
28
|
@p_CONT_TYPE VARCHAR(150) = NULL,
|
29
|
@p_BRANCH_ID VARCHAR(15)= NULL,
|
30
|
@p_BRANCH_LOGIN VARCHAR(15) = NULL,
|
31
|
@p_LEVEL VARCHAR(15) = 'ALL',
|
32
|
@p_MAKER_ID VARCHAR(15) = NULL,
|
33
|
--------------BAODNQ 23/2/2022: Thêm tham số---------------
|
34
|
@p_CONTRACT_STATUS VARCHAR(1) = NULL,
|
35
|
@p_REQ_DOC_ID VARCHAR(15) = NULL,
|
36
|
@p_USER_LOGIN VARCHAR(15) = NULL,
|
37
|
-------------BAODNQ 13/9/2022 : Thêm DEP_LOGIN----------
|
38
|
@p_DEP_LOGIN VARCHAR(15) = NULL
|
39
|
AS
|
40
|
BEGIN -- PAGING
|
41
|
--set @p_MAKER_ID = TRIM(@p_MAKER_ID)
|
42
|
--SET @p_LEVEL='ALL'
|
43
|
|
44
|
IF(@p_LEVEL IS NULL OR @p_LEVEL = '')
|
45
|
BEGIN
|
46
|
SET @p_LEVEL = 'ALL'
|
47
|
END
|
48
|
|
49
|
-----------BAODNQ 13/9/2022 : Nếu phòng ban đăng nhập là phòng KT, set LEVEL = ALL------
|
50
|
IF(@p_DEP_LOGIN = 'DEP000000000022')
|
51
|
BEGIN
|
52
|
SET @p_LEVEL = 'ALL'
|
53
|
END
|
54
|
|
55
|
----------BAODNQ 20/10/2022 : HOT FIX TẠM THỜI-----------------
|
56
|
IF(@P_CONSTRUCT_CODE = 'Y')
|
57
|
BEGIN
|
58
|
SET @p_LEVEL = 'ALL'
|
59
|
END
|
60
|
|
61
|
SET @P_TOP =2000
|
62
|
declare @tmp table(BRANCH_ID varchar(15))
|
63
|
insert into @tmp SELECT BRANCH_ID FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_LOGIN)
|
64
|
--- KHAI BAO TABLE SPLIT CHUOI
|
65
|
DECLARE @l_LST_CONTYPE TABLE ([ID] [int] IDENTITY(1,1) NOT NULL,[VALUE] [NVARCHAR](MAX) NULL)
|
66
|
INSERT INTO @l_LST_CONTYPE SELECT VALUE FROM WSISPLIT(@p_CONT_TYPE,',')
|
67
|
--- LUCTV 7.11.2022 BO SUNG AUTO TIM THAY HĐ DVMS
|
68
|
INSERT INTO @l_LST_CONTYPE VALUES ('MS_DV')
|
69
|
--- END LUCTV 7.11.2022
|
70
|
|
71
|
DECLARE @t_CONTRACT_PAYMENT TABLE(
|
72
|
REF_ID VARCHAR(15), TOTAL_AMT_PAY DECIMAL(18,0), TRN_TYPE VARCHAR(20))
|
73
|
|
74
|
INSERT INTO @t_CONTRACT_PAYMENT
|
75
|
SELECT REF_ID, ISNULL(SUM(AMT_PAY_REAL),0) AS TOTAL_AMT_PAY, TRN_TYPE
|
76
|
FROM TR_REQ_PAY_SCHEDULE
|
77
|
WHERE AUTH_STATUS_KT = 'A'
|
78
|
GROUP BY TRN_TYPE, REF_ID
|
79
|
|
80
|
DECLARE @t_USER_LOGIN_ROLE_TABLE TABLE
|
81
|
(BRANCH_ID VARCHAR(20), DEPT_ID VARCHAR(15), ROLE_ID VARCHAR(20))
|
82
|
INSERT INTO @t_USER_LOGIN_ROLE_TABLE(BRANCH_ID, DEPT_ID, ROLE_ID)
|
83
|
SELECT * FROM [dbo].[TL_USER_GET_ROLES](@p_USER_LOGIN)
|
84
|
|
85
|
IF(@p_CONSTRACT_TYPE = '2')
|
86
|
IF(@P_TOP IS NULL OR @P_TOP = '' OR @P_TOP = 0)
|
87
|
-- PAGING BEGIN
|
88
|
SELECT A.*,B.SUP_CODE,C.BID_CODE, B.SUP_NAME, B.TEL AS SUP_TEL, B.CONTACT_PERSON AS SUP_CONTACT_PERSON,
|
89
|
D.AUTH_STATUS_NAME,F.CONSTRUCT_CODE,F.CONSTRUCT_ID,
|
90
|
ISNULL((SELECT SUM(TR_PO.TOTAL_AMT) FROM TR_PO_MASTER TR_PO WHERE TR_PO.CONTRACT_ID = A.CONTRACT_ID),0) AS DONE_AMT,'' AS SO_PYC, '' AS TEN_PYC,
|
91
|
'' AS SO_TT_CT, '' AS TEN_TT_CT, A.CREATE_DT AS NGAY_NHAN_TT, A.CREATE_DT AS NGAY_DUYET_TT, '' AS NCC_CODE, '' NCC_NAME,
|
92
|
'' AS NCC_ADDR, B.TAX_NO,'' AS HH_TYPE_CODE,'' AS HH_TYPE_NAME,CA.CONTENT AS CONT_TYPE_NAME, LS.CUSTOMER_NAME AS CUST_NAME, LS.CUSTOMER_CODE AS CUST_CODE,
|
93
|
BR.BRANCH_CODE, BR.BRANCH_NAME, '' AS TO_TRINH_ID,B.ACC_NUM,B.ACC_NAME,B.BANK_NAME,B.ACC_NAME_OUT,B.ACC_NUM_OUT,B.BANK_NAME_OUT,
|
94
|
0.0 AS TOTAL_ADV_AMT, ---Số tiền đã tạm ứng
|
95
|
0.0 AS TOTAL_PAY_AMT, --Số tiền đã thanh toán,
|
96
|
0.0 AS TOTAL_REMAIN_AMT,
|
97
|
'' AS IS_FLAG_END, TU.TLFullName AS MAKER_NAME, TA.TLFullName AS CHECKER_NAME,
|
98
|
---------BAODNQ 16/5/2022: Lấy thêm cột-------
|
99
|
CASE
|
100
|
WHEN A.ADDRESS IS NOT NULL OR A.ADDRESS <> '' THEN A.ADDRESS
|
101
|
ELSE B.ADDR
|
102
|
END
|
103
|
AS ADDR
|
104
|
--A.ADDRESS AS ADDR
|
105
|
-- SELECT END
|
106
|
FROM TR_CONTRACT A
|
107
|
LEFT JOIN CM_SUPPLIER B ON A.SUP_ID=B.SUP_ID
|
108
|
LEFT JOIN BID_MASTER C ON A.BID_ID=C.BID_ID
|
109
|
LEFT JOIN CM_AUTH_STATUS D ON D.AUTH_STATUS = A.AUTH_STATUS
|
110
|
LEFT JOIN BID_MASTER E ON E.BID_ID = A.BID_ID
|
111
|
LEFT JOIN CON_MASTER F ON F.CONSTRUCT_ID = E.PROJECT_ID
|
112
|
LEFT JOIN dbo.CM_ALLCODE CA ON CA.CDVAL=A.CONT_TYPE AND CA.CDNAME='TR_CONT_TYPE' AND CA.CDTYPE='TR_CONT'
|
113
|
LEFT JOIN TR_CONTRACT_DT PT ON A.CONTRACT_ID = PT.CONTRACT_ID
|
114
|
LEFT JOIN LS_CUSTOMER LS ON A.CUST_ID = LS.CUSTOMER_ID
|
115
|
LEFT JOIN CM_BRANCH BR ON A.BRANCH_ID= BR.BRANCH_ID
|
116
|
LEFT JOIN TL_USER TU ON A.MAKER_ID = TU.TLNANME
|
117
|
LEFT JOIN TL_USER TA ON A.CHECKER_ID = TA.TLNANME
|
118
|
|
119
|
WHERE 1=1
|
120
|
AND (A.MAKER_ID like '%'+@p_MAKER_ID+'%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID like '')
|
121
|
AND (F.CONSTRUCT_ID like '%'+@P_CONSTRUCT_ID+'%' OR @P_CONSTRUCT_ID IS NULL OR @P_CONSTRUCT_ID like '')
|
122
|
AND (F.CONSTRUCT_CODE like '%'+@P_CONSTRUCT_CODE+'%' OR @P_CONSTRUCT_CODE IS NULL OR @P_CONSTRUCT_CODE like '')
|
123
|
AND (A.CONTRACT_CODE like '%'+@p_CONSTRACT_CODE+'%' OR @p_CONSTRACT_CODE IS NULL OR @p_CONSTRACT_CODE like '')
|
124
|
AND (A.CONTRACT_ID like '%'+@p_CONTRACT_ID+'%' OR @p_CONTRACT_ID IS NULL OR @p_CONTRACT_ID like '')
|
125
|
AND (A.[CONTRACT_NAME] like '%'+ @p_CONSTRACT_NAME +'%' OR @p_CONSTRACT_NAME IS NULL OR @p_CONSTRACT_NAME like '')
|
126
|
AND (A.BID_ID like '%'+@p_BID_ID +'%' OR @p_BID_ID IS NULL OR @p_BID_ID like '')
|
127
|
AND (C.BID_CODE like '%'+@p_BID_CODE +'%' OR @p_BID_CODE IS NULL OR @p_BID_CODE like '')
|
128
|
AND (A.SUP_ID like '%'+@p_SUP_ID +'%' OR @p_SUP_ID IS NULL OR @p_SUP_ID like '')
|
129
|
AND (B.SUP_CODE like '%'+@p_SUP_CODE +'%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE like '')
|
130
|
AND (DATEDIFF(DAY,A.SIGN_DT,CONVERT(DATETIME,@P_SIGN_DT,103)) = 0 OR @P_SIGN_DT IS NULL OR @P_SIGN_DT like '')
|
131
|
AND (DATEDIFF(DAY,A.CREATE_DT,CONVERT(DATETIME, @P_CREATE_DT, 103)) = 0 OR @P_CREATE_DT IS NULL OR @P_CREATE_DT='')
|
132
|
AND (DATEDIFF(DAY,A.START_DT,CONVERT(DATETIME, @P_START_DT, 103)) = 0 OR @P_START_DT IS NULL OR @P_START_DT='')
|
133
|
AND (DATEDIFF(DAY,A.END_DT,CONVERT(DATETIME, @P_END_DT, 103)) = 0 OR @P_END_DT IS NULL OR @P_END_DT='')
|
134
|
AND (A.AUTH_STATUS like '%'+@p_AUTH_STATUS +'%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS like '')
|
135
|
AND (A.CONTRACT_TYPE like '%'+@p_CONSTRACT_TYPE +'%' OR @p_CONSTRACT_TYPE IS NULL OR @p_CONSTRACT_TYPE like '')
|
136
|
AND (A.CONTRACT_PARENT like '%'+@P_CONTRACT_PARENT+'%' OR @P_CONTRACT_PARENT IS NULL OR @P_CONTRACT_PARENT like '')
|
137
|
AND A.RECORD_STATUS = '1'
|
138
|
AND (A.REQUEST_ID LIKE '%' + @p_REQUEST_ID + '%' OR @p_REQUEST_ID IS NULL OR @p_REQUEST_ID = '')
|
139
|
AND(EXISTS(SELECT HH_ID FROM CM_HANGHOA HH LEFT JOIN CM_HANGHOA_TYPE HT ON HH.HH_TYPE_ID=HT.HH_TYPE_ID WHERE
|
140
|
(HT.HH_TYPE_CODE LIKE '%' + @p_HH_TYPE_CODE + '%' OR @p_HH_TYPE_CODE = '' OR @p_HH_TYPE_CODE IS NULL)
|
141
|
AND (HT.HH_TYPE_NAME LIKE N'%' + @p_HH_TYPE_NAME + '%' OR @p_HH_TYPE_NAME = '' OR @p_HH_TYPE_NAME IS NULL) AND HH.HH_ID=PT.GOODS_ID))
|
142
|
AND (A.CUST_ID =@p_CUST_ID OR @p_CUST_ID IS NULL OR @p_CUST_ID ='')
|
143
|
AND (A.CONT_TYPE IN (SELECT VALUE FROM @l_LST_CONTYPE) OR @p_CONT_TYPE ='' OR @p_CONT_TYPE IS NULL)
|
144
|
AND ((@p_LEVEL = 'ALL' AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp)
|
145
|
OR (@p_LEVEL = 'UNIT' AND A.BRANCH_ID = @p_BRANCH_LOGIN)) OR @p_BRANCH_LOGIN = '' OR @p_BRANCH_LOGIN IS NULL
|
146
|
--AND (BR.BRANCH_CODE =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR BR.BRANCH_ID =@p_BRANCH_ID)
|
147
|
AND (A.BRANCH_ID =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='')
|
148
|
--------------BAODNQ 13/9/2022 : TẠM THỜI COMMENT PHẦN USER_LOGIN-----------
|
149
|
--AND(
|
150
|
-- A.MAKER_ID = @p_USER_LOGIN
|
151
|
-- OR(
|
152
|
-- ------user login là trưởng ĐV ở hội sở--------
|
153
|
-- (
|
154
|
-- EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
155
|
-- AND (SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID)
|
156
|
-- = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
|
157
|
-- )
|
158
|
-- ------user login là trưởng ĐV ở CN/PGD
|
159
|
-- OR
|
160
|
-- (
|
161
|
-- NOT EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
162
|
-- AND A.BRANCH_ID = (SELECT TOP 1 BRANCH_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'PGD', 'TPGD', 'PPGD'))
|
163
|
-- )
|
164
|
-- AND (A.AUTH_STATUS <> 'E' AND A.AUTH_STATUS <> 'R')
|
165
|
-- )
|
166
|
-- OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = ''
|
167
|
--)
|
168
|
)
|
169
|
ORDER BY A.CREATE_DT DESC
|
170
|
-- PAGING END
|
171
|
ELSE
|
172
|
-- PAGING BEGIN
|
173
|
SELECT TOP(CONVERT(INT,@P_TOP)) A.*,B.SUP_CODE,C.BID_CODE, B.SUP_NAME, B.TEL AS SUP_TEL,
|
174
|
B.CONTACT_PERSON AS SUP_CONTACT_PERSON, D.AUTH_STATUS_NAME,F.CONSTRUCT_CODE,F.CONSTRUCT_ID,
|
175
|
ISNULL((SELECT SUM(TR_PO.TOTAL_AMT) FROM TR_PO_MASTER TR_PO WHERE TR_PO.CONTRACT_ID = A.CONTRACT_ID),0) AS DONE_AMT,'' AS TEN_PYC,
|
176
|
'' AS SO_TT_CT, A.CREATE_DT AS NGAY_NHAN_TT, '' AS TEN_TT_CT, A.CREATE_DT AS NGAY_DUYET_TT, '' AS NCC_CODE, '' NCC_NAME, '' AS NCC_ADDR,B.TAX_NO,
|
177
|
CA.CONTENT AS CONT_TYPE_NAME,'' AS HH_TYPE_CODE,'' AS HH_TYPE_NAME, LS.CUSTOMER_NAME AS CUST_NAME, LS.CUSTOMER_CODE AS CUST_CODE,BR.BRANCH_CODE, BR.BRANCH_NAME,'' AS TO_TRINH_ID,
|
178
|
B.ACC_NUM,B.ACC_NAME,B.BANK_NAME,B.ACC_NAME_OUT,B.ACC_NUM_OUT,B.BANK_NAME_OUT,0.0 AS TOTAL_ADV_AMT, 0.0 AS TOTAL_PAY_AMT,'' AS IS_FLAG_END,
|
179
|
TU.TLFullName AS MAKER_NAME, TA.TLFullName AS CHECKER_NAME,
|
180
|
---------BAODNQ 16/5/2022: Lấy thêm cột-------
|
181
|
CASE
|
182
|
WHEN A.ADDRESS IS NOT NULL OR A.ADDRESS <> '' THEN A.ADDRESS
|
183
|
ELSE B.ADDR
|
184
|
END
|
185
|
AS ADDR
|
186
|
--A.ADDRESS AS ADDR
|
187
|
-- SELECT END
|
188
|
FROM TR_CONTRACT A
|
189
|
LEFT JOIN CM_SUPPLIER B ON A.SUP_ID=B.SUP_ID
|
190
|
LEFT JOIN BID_MASTER C ON A.BID_ID=C.BID_ID
|
191
|
LEFT JOIN CM_AUTH_STATUS D ON D.AUTH_STATUS = A.AUTH_STATUS
|
192
|
LEFT JOIN BID_MASTER E ON E.BID_ID = A.BID_ID
|
193
|
LEFT JOIN CON_MASTER F ON F.CONSTRUCT_ID = E.PROJECT_ID
|
194
|
LEFT JOIN dbo.CM_ALLCODE CA ON CA.CDVAL=A.CONT_TYPE AND CA.CDNAME='TR_CONT_TYPE' AND CA.CDTYPE='TR_CONT'
|
195
|
LEFT JOIN TR_CONTRACT_DT PT ON A.CONTRACT_ID = PT.CONTRACT_ID
|
196
|
LEFT JOIN LS_CUSTOMER LS ON A.CUST_ID = LS.CUSTOMER_ID
|
197
|
LEFT JOIN CM_BRANCH BR ON A.BRANCH_ID= BR.BRANCH_ID
|
198
|
LEFT JOIN TL_USER TU ON A.MAKER_ID = TU.TLNANME
|
199
|
LEFT JOIN TL_USER TA ON A.CHECKER_ID = TA.TLNANME
|
200
|
|
201
|
WHERE 1=1
|
202
|
AND (A.MAKER_ID like '%'+@p_MAKER_ID+'%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID like '')
|
203
|
AND (F.CONSTRUCT_ID like '%'+@P_CONSTRUCT_ID+'%' OR @P_CONSTRUCT_ID IS NULL OR @P_CONSTRUCT_ID like '')
|
204
|
AND (F.CONSTRUCT_CODE like '%'+@P_CONSTRUCT_CODE+'%' OR @P_CONSTRUCT_CODE IS NULL OR @P_CONSTRUCT_CODE like '')
|
205
|
AND (A.CONTRACT_CODE like '%'+@p_CONSTRACT_CODE+'%' OR @p_CONSTRACT_CODE IS NULL OR @p_CONSTRACT_CODE like '')
|
206
|
AND (A.CONTRACT_ID like '%'+@p_CONTRACT_ID+'%' OR @p_CONTRACT_ID IS NULL OR @p_CONTRACT_ID like '')
|
207
|
AND (A.[CONTRACT_NAME] like '%'+ @p_CONSTRACT_NAME +'%' OR @p_CONSTRACT_NAME IS NULL OR @p_CONSTRACT_NAME like '')
|
208
|
AND (A.BID_ID like '%'+@p_BID_ID +'%' OR @p_BID_ID IS NULL OR @p_BID_ID like '')
|
209
|
AND (C.BID_CODE like '%'+@p_BID_CODE +'%' OR @p_BID_CODE IS NULL OR @p_BID_CODE like '')
|
210
|
AND (A.SUP_ID like '%'+@p_SUP_ID +'%' OR @p_SUP_ID IS NULL OR @p_SUP_ID like '')
|
211
|
AND (B.SUP_CODE like '%'+@p_SUP_CODE +'%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE like '')
|
212
|
AND (DATEDIFF(DAY,A.SIGN_DT,CONVERT(DATETIME,@P_SIGN_DT,103)) = 0 OR @P_SIGN_DT IS NULL OR @P_SIGN_DT like '')
|
213
|
AND (DATEDIFF(DAY,A.CREATE_DT,CONVERT(DATETIME, @P_CREATE_DT, 103)) = 0 OR @P_CREATE_DT IS NULL OR @P_CREATE_DT='')
|
214
|
AND (DATEDIFF(DAY,A.START_DT,CONVERT(DATETIME, @P_START_DT, 103)) = 0 OR @P_START_DT IS NULL OR @P_START_DT='')
|
215
|
AND (DATEDIFF(DAY,A.END_DT,CONVERT(DATETIME, @P_END_DT, 103)) = 0 OR @P_END_DT IS NULL OR @P_END_DT='')
|
216
|
AND (A.AUTH_STATUS like '%'+@p_AUTH_STATUS +'%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS like '')
|
217
|
AND (A.CONTRACT_TYPE like '%'+@p_CONSTRACT_TYPE +'%' OR @p_CONSTRACT_TYPE IS NULL OR @p_CONSTRACT_TYPE like '')
|
218
|
AND (A.CONTRACT_PARENT like '%'+@P_CONTRACT_PARENT+'%' OR @P_CONTRACT_PARENT IS NULL OR @P_CONTRACT_PARENT like '')
|
219
|
AND A.RECORD_STATUS = '1'
|
220
|
AND (A.REQUEST_ID LIKE '%' + @p_REQUEST_ID + '%' OR @p_REQUEST_ID IS NULL OR @p_REQUEST_ID = '')
|
221
|
AND(EXISTS(SELECT HH_ID FROM CM_HANGHOA HH LEFT JOIN CM_HANGHOA_TYPE HT ON HH.HH_TYPE_ID=HT.HH_TYPE_ID WHERE
|
222
|
(HT.HH_TYPE_CODE LIKE '%' + @p_HH_TYPE_CODE + '%' OR @p_HH_TYPE_CODE = '' OR @p_HH_TYPE_CODE IS NULL)
|
223
|
AND (HT.HH_TYPE_NAME LIKE N'%' + @p_HH_TYPE_NAME + '%' OR @p_HH_TYPE_NAME = '' OR @p_HH_TYPE_NAME IS NULL) AND HH.HH_ID=PT.GOODS_ID))
|
224
|
AND (A.CUST_ID =@p_CUST_ID OR @p_CUST_ID IS NULL OR @p_CUST_ID ='')
|
225
|
--AND (A.CONT_TYPE =@p_CONT_TYPE OR (@p_CONT_TYPE IS NULL OR @p_CONT_TYPE =''))
|
226
|
AND (A.CONT_TYPE IN (SELECT VALUE FROM @l_LST_CONTYPE) OR @p_CONT_TYPE ='' OR @p_CONT_TYPE IS NULL)
|
227
|
AND ((@p_LEVEL = 'ALL' AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp)
|
228
|
OR (@p_LEVEL = 'UNIT' AND A.BRANCH_ID = @p_BRANCH_LOGIN)) OR @p_BRANCH_LOGIN = '' OR @p_BRANCH_LOGIN IS NULL)
|
229
|
--AND (BR.BRANCH_CODE =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR BR.BRANCH_ID =@p_BRANCH_ID)
|
230
|
AND (A.BRANCH_ID =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='')
|
231
|
--------------BAODNQ 13/9/2022 : TẠM THỜI COMMENT PHẦN USER_LOGIN-----------
|
232
|
--AND(
|
233
|
-- A.MAKER_ID = @p_USER_LOGIN
|
234
|
-- OR(
|
235
|
-- ------user login là trưởng ĐV ở hội sở--------
|
236
|
-- (
|
237
|
-- EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
238
|
-- AND (SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID)
|
239
|
-- = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
|
240
|
-- )
|
241
|
-- ------user login là trưởng ĐV ở CN/PGD
|
242
|
-- OR
|
243
|
-- (
|
244
|
-- NOT EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
245
|
-- AND A.BRANCH_ID = (SELECT TOP 1 BRANCH_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'PGD', 'TPGD', 'PPGD'))
|
246
|
-- )
|
247
|
-- AND (A.AUTH_STATUS <> 'E' AND A.AUTH_STATUS <> 'R')
|
248
|
-- )
|
249
|
-- OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = ''
|
250
|
--)
|
251
|
ORDER BY A.CREATE_DT DESC
|
252
|
-- PAGING END
|
253
|
ELSE
|
254
|
IF(@P_TOP IS NULL OR @P_TOP = '' OR @P_TOP = 0)
|
255
|
-- PAGING BEGIN
|
256
|
SELECT A.*,B.SUP_CODE,C.BID_CODE, B.SUP_NAME, B.TEL AS SUP_TEL, B.CONTACT_PERSON AS SUP_CONTACT_PERSON,
|
257
|
D.AUTH_STATUS_NAME,
|
258
|
ISNULL((SELECT SUM(TR_PO.TOTAL_AMT) FROM TR_PO_MASTER TR_PO WHERE TR_PO.CONTRACT_ID = A.CONTRACT_ID),0) AS DONE_AMT,
|
259
|
DC.REQ_CODE AS SO_PYC, DC.REQ_NAME AS TEN_PYC, DC.REQ_ID AS PYC_ID, DC.REQ_ID AS TR_REQ_ID,
|
260
|
T.REQ_CODE AS SO_TT_CT, T.REQ_NAME AS TEN_TT_CT, T.CREATE_DT AS NGAY_NHAN_TT, T.APPROVE_DT AS NGAY_DUYET_TT, '' AS NCC_CODE, '' NCC_NAME, '' AS NCC_ADDR, B.TAX_NO,
|
261
|
CA.CONTENT AS CONT_TYPE_NAME,'' AS HH_TYPE_CODE,'' AS HH_TYPE_NAME, LS.CUSTOMER_NAME AS CUST_NAME, LS.CUSTOMER_CODE AS CUST_CODE,BR.BRANCH_CODE, BR.BRANCH_NAME,T.REQ_ID AS TO_TRINH_ID,
|
262
|
B.ACC_NUM,B.ACC_NAME,B.BANK_NAME,B.ACC_NAME_OUT,B.ACC_NUM_OUT,B.BANK_NAME_OUT,
|
263
|
ISNULL(ADV.TOTAL_AMT_PAY,0) AS TOTAL_ADV_AMT, ---Số tiền đã tạm ứng
|
264
|
ISNULL(PA.TOTAL_AMT_PAY,0) AS TOTAL_PAY_AMT, --Số tiền đã thanh toán,
|
265
|
A.TOTAL_AMT - ISNULL((PA.TOTAL_AMT_PAY),0) AS TOTAL_REMAIN_AMT,
|
266
|
CASE
|
267
|
WHEN ISNULL(ADV.TOTAL_AMT_PAY,0) > 0 AND ISNULL(PA.TOTAL_AMT_PAY,0) = 0
|
268
|
THEN N'Đang tạm ứng'
|
269
|
WHEN ISNULL(ADV.TOTAL_AMT_PAY,0) > 0 AND (A.TOTAL_AMT - ISNULL((ADV.TOTAL_AMT_PAY + PA.TOTAL_AMT_PAY),0)) <> 0
|
270
|
THEN N'Thanh toán 1 phần'
|
271
|
WHEN (A.TOTAL_AMT - (ADV.TOTAL_AMT_PAY - PA.TOTAL_AMT_PAY)) = 0
|
272
|
THEN N'Thanh toán xong'
|
273
|
WHEN ISNULL(ADV.TOTAL_AMT_PAY, 0) = 0 AND ISNULL(PA.TOTAL_AMT_PAY,0) = 0
|
274
|
THEN N'Chưa thanh toán'
|
275
|
END
|
276
|
AS STATUS,
|
277
|
'' AS IS_FLAG_END, TU.TLFullName AS MAKER_NAME, TA.TLFullName AS CHECKER_NAME,
|
278
|
---------BAODNQ 16/5/2022: Lấy thêm cột-------
|
279
|
CASE
|
280
|
WHEN A.ADDRESS IS NOT NULL OR A.ADDRESS <> '' THEN A.ADDRESS
|
281
|
ELSE B.ADDR
|
282
|
END
|
283
|
AS ADDR,
|
284
|
--------------BAODNQ 12/7/2022----------
|
285
|
CMS.DMMS_NAME
|
286
|
--A.ADDRESS AS ADDR
|
287
|
-- SELECT END
|
288
|
FROM TR_CONTRACT A
|
289
|
LEFT JOIN CM_SUPPLIER B ON A.SUP_ID=B.SUP_ID
|
290
|
LEFT JOIN BID_MASTER C ON A.BID_ID=C.BID_ID
|
291
|
LEFT JOIN CM_AUTH_STATUS D ON D.AUTH_STATUS = A.AUTH_STATUS
|
292
|
LEFT JOIN TR_REQUEST_DOC DC ON A.REQ_DOC_ID = DC.REQ_ID
|
293
|
LEFT JOIN PL_REQUEST_DOC T ON DC.PL_REQ_ID = T.REQ_ID
|
294
|
LEFT JOIN dbo.CM_ALLCODE CA ON CA.CDVAL=A.CONT_TYPE AND CA.CDNAME='TR_CONT_TYPE' AND CA.CDTYPE='TR_CONT'
|
295
|
--LEFT JOIN TR_CONTRACT_DT PT ON A.CONTRACT_ID = PT.CONTRACT_ID
|
296
|
LEFT JOIN LS_CUSTOMER LS ON A.CUST_ID = LS.CUSTOMER_ID
|
297
|
LEFT JOIN CM_BRANCH BR ON A.BRANCH_ID= BR.BRANCH_ID
|
298
|
-------------BAODNQ 12/7/2022------------------
|
299
|
LEFT JOIN(
|
300
|
SELECT DMMS_ID,DEP_NAME+'-'+BRANCH_NAME AS DMMS_NAME FROM
|
301
|
dbo.CM_DMMS
|
302
|
LEFT JOIN dbo.CM_BRANCH ON CM_BRANCH.BRANCH_ID=CM_DMMS.BRANCH_ID
|
303
|
LEFT JOIN dbo.CM_DEPARTMENT ON CM_DEPARTMENT.DEP_ID = CM_DMMS.DEP_ID
|
304
|
UNION ALL
|
305
|
SELECT DVDM_ID AS DMMS_ID ,DVDM_NAME AS DMMS_NAME
|
306
|
FROM dbo.CM_DVDM
|
307
|
)CMS ON CMS.DMMS_ID = DC.DMMS_ID
|
308
|
LEFT JOIN @t_CONTRACT_PAYMENT ADV ON ADV.REF_ID = A.CONTRACT_ID AND ADV.TRN_TYPE = 'ADV_PAY'
|
309
|
LEFT JOIN @t_CONTRACT_PAYMENT PA ON PA.REF_ID = A.CONTRACT_ID AND PA.TRN_TYPE = 'PAY'
|
310
|
LEFT JOIN TL_USER TU ON A.MAKER_ID = TU.TLNANME
|
311
|
LEFT JOIN TL_USER TA ON A.CHECKER_ID = TA.TLNANME
|
312
|
|
313
|
WHERE 1=1
|
314
|
AND (A.MAKER_ID like '%'+@p_MAKER_ID+'%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID like '')
|
315
|
AND (A.CONTRACT_CODE like '%'+@p_CONSTRACT_CODE+'%' OR @p_CONSTRACT_CODE IS NULL OR @p_CONSTRACT_CODE like '')
|
316
|
AND (A.CONTRACT_ID =@p_CONTRACT_ID OR @p_CONTRACT_ID IS NULL OR @p_CONTRACT_ID like '')
|
317
|
AND (A.[CONTRACT_NAME] like N'%'+ @p_CONSTRACT_NAME +'%' OR @p_CONSTRACT_NAME IS NULL OR @p_CONSTRACT_NAME like '')
|
318
|
AND (A.BID_ID like '%'+@p_BID_ID +'%' OR @p_BID_ID IS NULL OR @p_BID_ID like '')
|
319
|
AND (C.BID_CODE like '%'+@p_BID_CODE +'%' OR @p_BID_CODE IS NULL OR @p_BID_CODE like '')
|
320
|
AND (A.SUP_ID like '%'+@p_SUP_ID +'%' OR @p_SUP_ID IS NULL OR @p_SUP_ID like '')
|
321
|
AND (B.SUP_CODE like '%'+@p_SUP_CODE +'%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE like '')
|
322
|
AND (DATEDIFF(DAY,A.SIGN_DT,CONVERT(DATETIME,@P_SIGN_DT,103)) = 0 OR @P_SIGN_DT IS NULL OR @P_SIGN_DT like '')
|
323
|
AND (DATEDIFF(DAY,A.CREATE_DT,CONVERT(DATETIME, @P_CREATE_DT, 103)) = 0 OR @P_CREATE_DT IS NULL OR @P_CREATE_DT='')
|
324
|
AND (A.AUTH_STATUS like '%'+@p_AUTH_STATUS +'%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS like '')
|
325
|
AND (A.CONTRACT_TYPE like '%'+@p_CONSTRACT_TYPE +'%' OR @p_CONSTRACT_TYPE IS NULL OR @p_CONSTRACT_TYPE like '')
|
326
|
AND (A.CONT_TYPE IN (SELECT VALUE FROM @l_LST_CONTYPE) OR @p_CONT_TYPE ='' OR @p_CONT_TYPE IS NULL)
|
327
|
AND ((@p_LEVEL = 'ALL' AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp)
|
328
|
OR (@p_LEVEL = 'UNIT' AND A.BRANCH_ID = @p_BRANCH_LOGIN)) OR @p_BRANCH_LOGIN = '' OR @p_BRANCH_LOGIN IS NULL OR A.CONT_TYPE ='DK')
|
329
|
--AND (BR.BRANCH_CODE =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR BR.BRANCH_ID =@p_BRANCH_ID)
|
330
|
AND (A.BRANCH_ID =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='')
|
331
|
AND (DC.REQ_CODE =@p_PYC_CODE OR @p_PYC_CODE IS NULL OR @p_PYC_CODE ='' OR DC.REQ_ID =@p_PYC_CODE)
|
332
|
AND (T.REQ_CODE =@p_TTCT_CODE OR @p_TTCT_CODE IS NULL OR @p_TTCT_CODE ='' OR T.REQ_ID =@p_TTCT_CODE)
|
333
|
AND ( (LEN(@p_CUST_ID)=1 AND
|
334
|
((@p_CUST_ID ='Y' AND (CONVERT(DATE, GETDATE(),103) <= CONVERT(DATE, A.END_DT,103) OR A.END_DT IS NULL))
|
335
|
OR (@p_CUST_ID ='N' AND (CONVERT(DATE, GETDATE(),103) > CONVERT(DATE, A.END_DT,103)))
|
336
|
))
|
337
|
OR (LEN(@p_CUST_ID) >1 AND A.CUST_ID =@p_CUST_ID)
|
338
|
OR (@p_CUST_ID IS NULL OR @p_CUST_ID ='')
|
339
|
)
|
340
|
----------------------BAODNQ 23/2/2022-----------Thêm điều kiện tìm kiếm-----------------
|
341
|
AND(
|
342
|
--------Còn hiệu lực------
|
343
|
--------------BAODNQ 19/10/2022 : Nếu k nhập ngày hết hiệu lực thì tình trạng là còn hiệu lực-----
|
344
|
((@p_CONTRACT_STATUS = 'C')
|
345
|
AND (CONVERT(DATE, A.END_DT, 103) >= CONVERT(DATE, GETDATE(), 103))
|
346
|
OR(A.END_DT IS NULL OR A.END_DT = '')
|
347
|
)
|
348
|
OR
|
349
|
--------Hết hiệu lực------
|
350
|
((@p_CONTRACT_STATUS = 'H') AND (CONVERT(DATE, A.END_DT, 103) < CONVERT(DATE, GETDATE(), 103)))
|
351
|
OR (@p_CONTRACT_STATUS IS NULL OR @p_CONTRACT_STATUS = '')
|
352
|
)
|
353
|
AND (A.REQ_DOC_ID = @p_REQ_DOC_ID OR @p_REQ_DOC_ID IS NULL OR @p_REQ_DOC_ID = '')
|
354
|
--------------BAODNQ 13/9/2022 : TẠM THỜI COMMENT PHẦN USER_LOGIN-----------
|
355
|
--AND(
|
356
|
-- A.MAKER_ID = @p_USER_LOGIN
|
357
|
-- OR(
|
358
|
-- ------user login là trưởng ĐV ở hội sở--------
|
359
|
-- (
|
360
|
-- EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
361
|
-- AND (SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID)
|
362
|
-- = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
|
363
|
-- )
|
364
|
-- ------user login là trưởng ĐV ở CN/PGD
|
365
|
-- OR
|
366
|
-- (
|
367
|
-- NOT EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
368
|
-- AND A.BRANCH_ID = (SELECT TOP 1 BRANCH_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'PGD', 'TPGD', 'PPGD'))
|
369
|
-- )
|
370
|
-- AND (A.AUTH_STATUS <> 'E' AND A.AUTH_STATUS <> 'R')
|
371
|
-- )
|
372
|
-- OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = ''
|
373
|
--)
|
374
|
ORDER BY A.CREATE_DT DESC
|
375
|
-- PAGING END
|
376
|
ELSE
|
377
|
-- PAGING BEGIN
|
378
|
SELECT TOP(CONVERT(INT,@P_TOP)) A.*,B.SUP_CODE,C.BID_CODE, B.SUP_NAME, B.TEL AS SUP_TEL, B.CONTACT_PERSON AS SUP_CONTACT_PERSON,
|
379
|
D.AUTH_STATUS_NAME,
|
380
|
ISNULL((SELECT SUM(TR_PO.TOTAL_AMT) FROM TR_PO_MASTER TR_PO WHERE TR_PO.CONTRACT_ID = A.CONTRACT_ID),0) AS DONE_AMT,
|
381
|
DC.REQ_CODE AS SO_PYC, DC.REQ_NAME AS TEN_PYC, DC.REQ_ID AS PYC_ID, DC.REQ_ID AS TR_REQ_ID,
|
382
|
T.REQ_CODE AS SO_TT_CT, T.REQ_NAME AS TEN_TT_CT, T.CREATE_DT AS NGAY_NHAN_TT, T.APPROVE_DT AS NGAY_DUYET_TT, '' AS NCC_CODE, '' NCC_NAME, N'Họp đồng số: '+ A.CONTRACT_ID +N' đã hết hiệu lực' NCC_ADDR, B.TAX_NO,
|
383
|
CA.CONTENT AS CONT_TYPE_NAME,'' AS HH_TYPE_CODE,'' AS HH_TYPE_NAME, LS.CUSTOMER_NAME AS CUST_NAME, LS.CUSTOMER_CODE AS CUST_CODE,BR.BRANCH_CODE, BR.BRANCH_NAME, T.REQ_ID AS TO_TRINH_ID,
|
384
|
B.ACC_NUM,B.ACC_NAME,B.BANK_NAME,B.ACC_NAME_OUT,B.ACC_NUM_OUT,B.BANK_NAME_OUT,
|
385
|
ISNULL(ADV.TOTAL_AMT_PAY,0) AS TOTAL_ADV_AMT, ---Số tiền đã tạm ứng
|
386
|
ISNULL(PA.TOTAL_AMT_PAY,0) AS TOTAL_PAY_AMT, --Số tiền đã thanh toán,
|
387
|
A.TOTAL_AMT - ISNULL((PA.TOTAL_AMT_PAY),0) AS TOTAL_REMAIN_AMT,
|
388
|
CASE
|
389
|
WHEN ISNULL(ADV.TOTAL_AMT_PAY,0) > 0 AND ISNULL(PA.TOTAL_AMT_PAY,0) = 0
|
390
|
THEN N'Đang tạm ứng'
|
391
|
WHEN ISNULL(ADV.TOTAL_AMT_PAY,0) > 0 AND (A.TOTAL_AMT - ISNULL((ADV.TOTAL_AMT_PAY + PA.TOTAL_AMT_PAY),0)) <> 0
|
392
|
THEN N'Thanh toán 1 phần'
|
393
|
WHEN (A.TOTAL_AMT - (ADV.TOTAL_AMT_PAY - PA.TOTAL_AMT_PAY)) = 0
|
394
|
THEN N'Thanh toán xong'
|
395
|
WHEN ISNULL(ADV.TOTAL_AMT_PAY, 0) = 0 AND ISNULL(PA.TOTAL_AMT_PAY,0) = 0
|
396
|
THEN N'Chưa thanh toán'
|
397
|
END
|
398
|
AS STATUS,
|
399
|
CASE WHEN CONVERT(DATE, A.END_DT, 103) < CONVERT(DATE, GETDATE(), 103) AND A.END_DT IS NOT NULL AND A.END_DT <> ''
|
400
|
THEN N'Hợp đồng số :' + A.CONTRACT_ID + N' đã hết hiệu lực kể từ ngày ' + FORMAT(DATEADD(DAY,1,A.END_DT),'dd/MM/yyyy') ELSE '' END AS IS_FLAG_END,
|
401
|
TU.TLFullName AS MAKER_NAME, TA.TLFullName AS CHECKER_NAME,
|
402
|
---------BAODNQ 16/5/2022: Lấy thêm cột-------
|
403
|
CASE
|
404
|
WHEN A.ADDRESS IS NOT NULL OR A.ADDRESS <> '' THEN A.ADDRESS
|
405
|
ELSE B.ADDR
|
406
|
END
|
407
|
AS ADDR,
|
408
|
CMS.DMMS_NAME
|
409
|
--A.ADDRESS AS ADDR
|
410
|
-- SELECT END
|
411
|
FROM TR_CONTRACT A
|
412
|
LEFT JOIN CM_SUPPLIER B ON A.SUP_ID=B.SUP_ID
|
413
|
LEFT JOIN BID_MASTER C ON A.BID_ID=C.BID_ID
|
414
|
LEFT JOIN CM_AUTH_STATUS D ON D.AUTH_STATUS = A.AUTH_STATUS
|
415
|
LEFT JOIN TR_REQUEST_DOC DC ON A.REQ_DOC_ID = DC.REQ_ID
|
416
|
LEFT JOIN PL_REQUEST_DOC T ON DC.PL_REQ_ID = T.REQ_ID
|
417
|
LEFT JOIN dbo.CM_ALLCODE CA ON CA.CDVAL=A.CONT_TYPE AND CA.CDNAME='TR_CONT_TYPE' AND CA.CDTYPE='TR_CONT'
|
418
|
--LEFT JOIN TR_CONTRACT_DT PT ON A.CONTRACT_ID = PT.CONTRACT_ID
|
419
|
LEFT JOIN LS_CUSTOMER LS ON A.CUST_ID = LS.CUSTOMER_ID
|
420
|
LEFT JOIN CM_BRANCH BR ON A.BRANCH_ID= BR.BRANCH_ID
|
421
|
-------------BAODNQ 12/7/2022------------------
|
422
|
LEFT JOIN(
|
423
|
SELECT DMMS_ID,DEP_NAME+'-'+BRANCH_NAME AS DMMS_NAME FROM
|
424
|
dbo.CM_DMMS
|
425
|
LEFT JOIN dbo.CM_BRANCH ON CM_BRANCH.BRANCH_ID=CM_DMMS.BRANCH_ID
|
426
|
LEFT JOIN dbo.CM_DEPARTMENT ON CM_DEPARTMENT.DEP_ID = CM_DMMS.DEP_ID
|
427
|
UNION ALL
|
428
|
SELECT DVDM_ID AS DMMS_ID ,DVDM_NAME AS DMMS_NAME
|
429
|
FROM dbo.CM_DVDM
|
430
|
)CMS ON CMS.DMMS_ID = DC.DMMS_ID
|
431
|
LEFT JOIN @t_CONTRACT_PAYMENT ADV ON ADV.REF_ID = A.CONTRACT_ID AND ADV.TRN_TYPE = 'ADV_PAY'
|
432
|
LEFT JOIN @t_CONTRACT_PAYMENT PA ON PA.REF_ID = A.CONTRACT_ID AND PA.TRN_TYPE = 'PAY'
|
433
|
LEFT JOIN TL_USER TU ON A.MAKER_ID = TU.TLNANME
|
434
|
LEFT JOIN TL_USER TA ON A.CHECKER_ID = TA.TLNANME
|
435
|
|
436
|
WHERE 1=1
|
437
|
AND (A.MAKER_ID like '%'+@p_MAKER_ID+'%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID like '')
|
438
|
AND (A.CONTRACT_CODE like '%'+@p_CONSTRACT_CODE+'%' OR @p_CONSTRACT_CODE IS NULL OR @p_CONSTRACT_CODE like '')
|
439
|
AND (A.CONTRACT_ID =@p_CONTRACT_ID OR @p_CONTRACT_ID IS NULL OR @p_CONTRACT_ID like '')
|
440
|
AND (A.[CONTRACT_NAME] like N'%'+ @p_CONSTRACT_NAME +'%' OR @p_CONSTRACT_NAME IS NULL OR @p_CONSTRACT_NAME like '')
|
441
|
AND (A.BID_ID like '%'+@p_BID_ID +'%' OR @p_BID_ID IS NULL OR @p_BID_ID like '')
|
442
|
AND (C.BID_CODE like '%'+@p_BID_CODE +'%' OR @p_BID_CODE IS NULL OR @p_BID_CODE like '')
|
443
|
AND (A.SUP_ID like '%'+@p_SUP_ID +'%' OR @p_SUP_ID IS NULL OR @p_SUP_ID like '')
|
444
|
AND (B.SUP_CODE like '%'+@p_SUP_CODE +'%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE like '')
|
445
|
AND (DATEDIFF(DAY,A.SIGN_DT,CONVERT(DATETIME,@P_SIGN_DT,103)) = 0 OR @P_SIGN_DT IS NULL OR @P_SIGN_DT like '')
|
446
|
AND (DATEDIFF(DAY,A.CREATE_DT,CONVERT(DATETIME, @P_CREATE_DT, 103)) = 0 OR @P_CREATE_DT IS NULL OR @P_CREATE_DT='')
|
447
|
AND (A.AUTH_STATUS like '%'+@p_AUTH_STATUS +'%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS like '')
|
448
|
AND( DC.REQ_CODE like '%'+@p_PYC_CODE +'%' OR @p_PYC_CODE IS NULL OR @p_PYC_CODE like '' )
|
449
|
AND( T.REQ_CODE like '%'+@p_TTCT_CODE +'%' OR @p_TTCT_CODE IS NULL OR @p_TTCT_CODE like '' )
|
450
|
AND( T.REQ_NAME like N'%'+@p_TTCT_NAME +'%' OR @p_TTCT_NAME IS NULL OR @p_TTCT_NAME like '' )
|
451
|
AND A.RECORD_STATUS = '1'
|
452
|
AND ((LEN(@p_CUST_ID)=1 AND
|
453
|
((@p_CUST_ID ='Y' AND (CONVERT(DATE, GETDATE(),103) <= CONVERT(DATE, A.END_DT,103) OR A.END_DT IS NULL))
|
454
|
OR (@p_CUST_ID ='N' AND (CONVERT(DATE, GETDATE(),103) > CONVERT(DATE, A.END_DT,103)))
|
455
|
))
|
456
|
OR (LEN(@p_CUST_ID) >1 AND A.CUST_ID =@p_CUST_ID)
|
457
|
OR (@p_CUST_ID IS NULL OR @p_CUST_ID ='')
|
458
|
)
|
459
|
AND (A.CONT_TYPE IN (SELECT [VALUE] FROM @l_LST_CONTYPE) OR @p_CONT_TYPE ='' OR @p_CONT_TYPE IS NULL)
|
460
|
AND ((@p_LEVEL = 'ALL' AND A.BRANCH_ID IN (SELECT BRANCH_ID from @tmp))
|
461
|
OR (@p_LEVEL = 'UNIT' AND A.BRANCH_ID = @p_BRANCH_LOGIN) OR @p_BRANCH_LOGIN = '' OR @p_BRANCH_LOGIN IS NULL OR A.CONT_TYPE ='NT')
|
462
|
--AND (BR.BRANCH_CODE =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='' OR BR.BRANCH_ID =@p_BRANCH_ID)
|
463
|
AND (A.BRANCH_ID =@p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID ='')
|
464
|
AND (DC.REQ_CODE =@p_PYC_CODE OR @p_PYC_CODE IS NULL OR @p_PYC_CODE ='' OR DC.REQ_ID =@p_PYC_CODE)
|
465
|
--AND (T.REQ_CODE =@p_TTCT_CODE OR @p_TTCT_CODE IS NULL OR @p_TTCT_CODE ='' OR T.REQ_ID =@p_TTCT_CODE)
|
466
|
----------------------BAODNQ 23/2/2022-----------Thêm điều kiện tìm kiếm-----------------
|
467
|
AND(
|
468
|
--------Còn hiệu lực------
|
469
|
((@p_CONTRACT_STATUS = 'C')
|
470
|
AND (CONVERT(DATE, A.END_DT, 103) >= CONVERT(DATE, GETDATE(), 103))
|
471
|
OR(A.END_DT IS NULL OR A.END_DT = '')
|
472
|
)
|
473
|
OR
|
474
|
--------Hết hiệu lực------
|
475
|
((@p_CONTRACT_STATUS = 'H') AND (CONVERT(DATE, A.END_DT, 103) < CONVERT(DATE, GETDATE(), 103)))
|
476
|
OR (@p_CONTRACT_STATUS IS NULL OR @p_CONTRACT_STATUS = '')
|
477
|
)
|
478
|
--------------BAODNQ 13/9/2022 : TẠM THỜI COMMENT PHẦN USER_LOGIN-----------
|
479
|
--AND(
|
480
|
-- A.MAKER_ID = @p_USER_LOGIN
|
481
|
-- OR(
|
482
|
-- ------user login là trưởng ĐV ở hội sở--------
|
483
|
-- (
|
484
|
-- EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
485
|
-- AND (SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID)
|
486
|
-- = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
|
487
|
-- )
|
488
|
-- ------user login là trưởng ĐV ở CN/PGD
|
489
|
-- OR
|
490
|
-- (
|
491
|
-- NOT EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_ID AND BRANCH_TYPE = 'HS')
|
492
|
-- AND A.BRANCH_ID = (SELECT TOP 1 BRANCH_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'PGD', 'TPGD', 'PPGD'))
|
493
|
-- )
|
494
|
-- AND (A.AUTH_STATUS <> 'E' AND A.AUTH_STATUS <> 'R')
|
495
|
-- )
|
496
|
-- OR @p_USER_LOGIN IS NULL OR @p_USER_LOGIN = ''
|
497
|
--)
|
498
|
AND (A.REQ_DOC_ID = @p_REQ_DOC_ID OR @p_REQ_DOC_ID IS NULL OR @p_REQ_DOC_ID = '')
|
499
|
|
500
|
ORDER BY A.CREATE_DT DESC
|
501
|
-- PAGING END
|
502
|
END -- PAGING
|