1
|
|
2
|
ALTER PROCEDURE [dbo].[REAL_ESTATE_L_C_App]
|
3
|
@p_RET_L_C_ID VARCHAR(15) = NULL,
|
4
|
@p_AUTH_STATUS VARCHAR(1) = NULL,
|
5
|
@p_CHECKER_ID varchar(15) = NULL,
|
6
|
@p_APPROVE_DT VARCHAR(20) = NULL
|
7
|
|
8
|
AS
|
9
|
DECLARE @sErrorCode VARCHAR(20)
|
10
|
DECLARE @aStatus VARCHAR(1)
|
11
|
|
12
|
--Put validation here
|
13
|
|
14
|
--SET @sErrorCode = ''
|
15
|
|
16
|
--SELECT @aStatus = [AUTH_STATUS] FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID
|
17
|
--IF @aStatus = 'A'
|
18
|
-- SET @sErrorCode = 'CMDG-0001'
|
19
|
|
20
|
--IF @sErrorCode <> ''
|
21
|
--BEGIN
|
22
|
-- SELECT ErrorCode Result, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @sErrorCode
|
23
|
-- RETURN 0
|
24
|
--END
|
25
|
|
26
|
IF(EXISTS (SELECT * FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND AUTH_STATUS = 'R'))
|
27
|
BEGIN
|
28
|
SELECT '-1' as Result, '' RET_L_C_ID,
|
29
|
N'Phê duyệt thất bại. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đang bị trả về' ErrorDesc
|
30
|
RETURN '-1'
|
31
|
END
|
32
|
|
33
|
IF(EXISTS (SELECT *FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND AUTH_STATUS = 'A'))
|
34
|
BEGIN
|
35
|
SELECT '-1' as Result, '' RET_L_C_ID,
|
36
|
N'Phê duyệt thất bại. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đã được phê duyệt' ErrorDesc
|
37
|
RETURN '-1'
|
38
|
END
|
39
|
|
40
|
IF(EXISTS(SELECT RET_L_C_ID FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND AUTH_STATUS = 'E' AND IS_SEND_APPR = 'N'))
|
41
|
BEGIN
|
42
|
SELECT '-1' as Result, '' RET_L_C_ID,
|
43
|
N'Phê duyệt thất bại. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đang ở trạng thái lưu nháp. Vui lòng đợi người tạo gửi yêu cầu phê duyệt' ErrorDesc
|
44
|
RETURN '-1'
|
45
|
END
|
46
|
IF(EXISTS(
|
47
|
SELECT RET_L_C_ID FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND IS_SEND_APPR = 'Y' AND AUTH_STATUS = 'U'
|
48
|
AND(SIGN_USER IS NOT NULL AND SIGN_USER <> '') AND (SIGN_DT IS NULL OR SIGN_DT = '')
|
49
|
))
|
50
|
BEGIN
|
51
|
SELECT '-1' AS Result,
|
52
|
N'Phê duyệt thất bại. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đang chờ cấp phê duyệt trung gian xác nhận. Vui lòng đợi cấp phê duyệt trung gian xác nhận' ErrorDesc
|
53
|
RETURN '-1'
|
54
|
END
|
55
|
|
56
|
BEGIN TRANSACTION
|
57
|
|
58
|
BEGIN
|
59
|
UPDATE REAL_ESTATE_L_C
|
60
|
SET AUTH_STATUS = @p_AUTH_STATUS,
|
61
|
CHECKER_ID = @p_CHECKER_ID,
|
62
|
APPROVE_DT = CONVERT(DATETIME, @p_APPROVE_DT, 103)
|
63
|
WHERE RET_L_C_ID = @p_RET_L_C_ID
|
64
|
|
65
|
IF @@Error <> 0 GOTO ABORT
|
66
|
END
|
67
|
|
68
|
--------BAODNQ 15/2/2022: Insert vào bảng lưu lịch sử xử lý------
|
69
|
INSERT INTO dbo.PL_PROCESS
|
70
|
(
|
71
|
REQ_ID,
|
72
|
PROCESS_ID,
|
73
|
CHECKER_ID,
|
74
|
APPROVE_DT,
|
75
|
PROCESS_DESC,
|
76
|
NOTES
|
77
|
)
|
78
|
VALUES
|
79
|
( @p_RET_L_C_ID,
|
80
|
'APPROVE',
|
81
|
@p_CHECKER_ID,
|
82
|
GETDATE(),
|
83
|
N'Trưởng đơn vị phê duyệt thành công' ,
|
84
|
N'Trưởng đơn vị phê duyệt'
|
85
|
)
|
86
|
IF @@Error <> 0 GOTO ABORT
|
87
|
|
88
|
|
89
|
COMMIT TRANSACTION
|
90
|
SELECT '0' as Result, @p_RET_L_C_ID RET_L_C_ID,'' ErrorDesc
|
91
|
RETURN '0'
|
92
|
|
93
|
ABORT:
|
94
|
BEGIN
|
95
|
ROLLBACK TRANSACTION
|
96
|
SELECT '-1' as Result, '' RET_L_C_ID,'' ErrorDesc
|
97
|
RETURN '-1'
|
98
|
END
|
99
|
|
100
|
GO
|
101
|
|
102
|
|
103
|
|
104
|
ALTER PROCEDURE [dbo].[REAL_ESTATE_L_C_Confirm]
|
105
|
@p_RET_L_C_ID VARCHAR(15) = NULL,
|
106
|
@p_SIGN_USER VARCHAR(15) = NULL,
|
107
|
@p_SIGN_DT VARCHAR(20) = NULL
|
108
|
AS
|
109
|
BEGIN TRANSACTION
|
110
|
|
111
|
IF(EXISTS (SELECT * FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND AUTH_STATUS = 'R'))
|
112
|
BEGIN
|
113
|
ROLLBACK TRANSACTION
|
114
|
SELECT '-1' AS Result, '' RET_L_C_ID,
|
115
|
N'Xác nhận thất bại. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đang bị trả về' ErrorDesc
|
116
|
RETURN '-1'
|
117
|
END
|
118
|
|
119
|
IF(EXISTS (SELECT * FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND IS_SEND_APPR = 'Y' AND (SIGN_DT IS NOT NULL OR SIGN_DT <> '')))
|
120
|
BEGIN
|
121
|
ROLLBACK TRANSACTION
|
122
|
SELECT '-1' AS Result, '' RET_L_C_ID,
|
123
|
N'Xác nhận thất bại. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đã được cấp trung gian xác nhận trước đó' ErrorDesc
|
124
|
RETURN '-1'
|
125
|
END
|
126
|
IF(EXISTS(SELECT RET_L_C_ID FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND AUTH_STATUS = 'E' AND IS_SEND_APPR = 'N'))
|
127
|
BEGIN
|
128
|
ROLLBACK TRANSACTION
|
129
|
SELECT '-1' AS Result, '' RET_L_C_ID,
|
130
|
N'Xác nhận thất bại. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đang ở trạng thái lưu nháp. Vui lòng đợi người tạo gửi yêu cầu phê duyệt' ErrorDesc
|
131
|
RETURN '-1'
|
132
|
END
|
133
|
|
134
|
-------Trường hợp người duyệt là cấp phê duyệt trung gian, update SIGN_DT---------
|
135
|
UPDATE REAL_ESTATE_L_C SET AUTH_STATUS = 'U', SIGN_DT = CONVERT(DATETIME, @p_SIGN_DT, 103)
|
136
|
WHERE RET_L_C_ID = @p_RET_L_C_ID
|
137
|
IF @@ERROR <> 0 GOTO ABORT
|
138
|
|
139
|
|
140
|
------Insert vào bảng lịch sử xử lý-------------
|
141
|
INSERT INTO PL_PROCESS(REQ_ID, PROCESS_ID, CHECKER_ID, APPROVE_DT, PROCESS_DESC, NOTES)
|
142
|
VALUES(@p_RET_L_C_ID, 'APPROVE', @p_SIGN_USER, GETDATE(),
|
143
|
N'Cấp trung gian xác nhận thành công',
|
144
|
N' Cấp trung gian xác nhận')
|
145
|
IF @@ERROR <> 0 GOTO ABORT
|
146
|
|
147
|
COMMIT TRANSACTION
|
148
|
SELECT '0' AS Result, @p_RET_L_C_ID RET_L_C_ID ,
|
149
|
N'Thông tin BĐS: ' +@p_RET_L_C_ID+
|
150
|
N' đã được xác nhận thành công. Vui lòng đợi trưởng đơn vị phê duyệt.' ErrorDesc
|
151
|
RETURN '0'
|
152
|
|
153
|
ABORT:
|
154
|
BEGIN
|
155
|
ROLLBACK TRANSACTION
|
156
|
SELECT '-1' AS Result, '' RET_L_C_ID, '' ErrorDesc
|
157
|
RETURN '-1'
|
158
|
END
|
159
|
|
160
|
GO
|
161
|
|
162
|
|
163
|
ALTER PROCEDURE [dbo].[REAL_ESTATE_L_C_Search]
|
164
|
@p_RET_L_C_ID varchar(15)=NULL,
|
165
|
@p_RET_NAME nvarchar(MAX)=NULL,
|
166
|
@p_RET_ADDR nvarchar(MAX)=NULL,
|
167
|
@p_RET_DESC nvarchar(MAX)=NULL,
|
168
|
@p_REASON nvarchar(500)=NULL,
|
169
|
@p_PROC_EXE nvarchar(500)=NULL,
|
170
|
@p_BRANCH_CREATE varchar(15)=NULL,
|
171
|
@p_BRANCH_ID varchar(15)=NULL,
|
172
|
@p_BRANCH_LOGIN varchar(15)=NULL,
|
173
|
@p_PROC_NEXT nvarchar(500)=NULL,
|
174
|
@p_END_DT VARCHAR(20)=NULL,
|
175
|
@p_NOTES NVARCHAR(1000)=NULL,
|
176
|
@p_RECORD_STATUS varchar(1)=NULL,
|
177
|
@p_AUTH_STATUS varchar(1)=NULL,
|
178
|
@p_MAKER_ID varchar(15)=NULL,
|
179
|
@p_CREATE_DT VARCHAR(20)=NULL,
|
180
|
@p_CHECKER_ID varchar(15)=NULL,
|
181
|
@p_APPROVE_DT VARCHAR(20)=NULL,
|
182
|
@p_MaxResultCount INT=NULL,
|
183
|
@p_LEVEL VARCHAR(50) = 'UNIT',
|
184
|
@p_TOP INT = 300,
|
185
|
-------BAODNQ 15/2/2022: Truyền thêm tham số------
|
186
|
@p_USER_LOGIN VARCHAR(15)
|
187
|
AS
|
188
|
BEGIN -- PAGING
|
189
|
|
190
|
|
191
|
declare @tmp table(BRANCH_ID varchar(15))
|
192
|
insert into @tmp SELECT BRANCH_ID FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_LOGIN)
|
193
|
|
194
|
--DECLARE @p_USER_LOGIN_ROLE VARCHAR(15) = (SELECT RoleName FROM TL_USER WHERE TLNANME = @p_USER_LOGIN)
|
195
|
DECLARE @t_USER_LOGIN_ROLE_TABLE TABLE (BRANCH_ID VARCHAR(20), DEPT_ID VARCHAR(15), ROLE_ID VARCHAR(20))
|
196
|
|
197
|
INSERT INTO @t_USER_LOGIN_ROLE_TABLE(BRANCH_ID, DEPT_ID, ROLE_ID)
|
198
|
SELECT * FROM [dbo].[TL_USER_GET_ROLES](@p_USER_LOGIN)
|
199
|
|
200
|
IF(@p_TOP IS NULL OR @p_TOP = '' OR @p_TOP = 0)
|
201
|
-- PAGING BEGIN
|
202
|
SELECT
|
203
|
--A.*,
|
204
|
A.RET_L_C_ID, A.RET_ADDR, A.RET_DESC, A.REASON, A.PROC_EXE, A.PROC_NEXT, A.END_DT,
|
205
|
A.NOTES, A.BRANCH_ID, A.BRANCH_CREATE, A.RECORD_STATUS, A.AUTH_STATUS, A.MAKER_ID,
|
206
|
A.CREATE_DT, A.CHECKER_ID, A.APPROVE_DT, A.BRANCH_USE, A.BRANCH_MANAGE,
|
207
|
A.BUY_DT, A.AREA, A.CONTRUCT_AREA, A.IS_SEND_APPR, A.SEND_APPR_DT, A.SIGN_USER, A.SIGN_DT,
|
208
|
A.RET_ID, A.ASSET_PRICE, A.LAND_USE_RIGHTS_PRICE, A.MARKET_PRICE, A.FINISH_DT_REAL,
|
209
|
RM.ASS_NAME AS RET_NAME,
|
210
|
A.BRANCH_USE BRANCH_USE_NAME,
|
211
|
BRMN.BRANCH_NAME BRANCH_MANAGE_NAME,
|
212
|
BRN.BRANCH_NAME,
|
213
|
BRNC.BRANCH_NAME AS BRANCH_CREATE_NAME,
|
214
|
D.AUTH_STATUS_NAME,
|
215
|
TUM.TLFullName AS MAKER_NAME
|
216
|
-- SELECT END
|
217
|
FROM REAL_ESTATE_L_C AS A
|
218
|
LEFT JOIN CM_BRANCH BRN ON BRN.BRANCH_ID = A.BRANCH_ID
|
219
|
LEFT JOIN CM_BRANCH BRNC ON BRNC.BRANCH_ID = A.BRANCH_CREATE
|
220
|
LEFT JOIN CM_BRANCH BRMN ON BRMN.BRANCH_ID = A.BRANCH_MANAGE
|
221
|
LEFT JOIN CM_AUTH_STATUS D ON D.AUTH_STATUS = A.AUTH_STATUS
|
222
|
LEFT JOIN RET_MASTER RM ON A.RET_ID = RM.RET_ID
|
223
|
LEFT JOIN TL_USER TUM ON A.MAKER_ID = TUM.TLNANME
|
224
|
WHERE (@p_RET_L_C_ID IS NULL OR @p_RET_L_C_ID='' OR A.RET_L_C_ID LIKE N'%' + @p_RET_L_C_ID + '%')
|
225
|
AND (@p_RET_NAME IS NULL OR @p_RET_NAME='' OR A.RET_NAME LIKE N'%' + @p_RET_NAME + '%')
|
226
|
AND (@p_RET_ADDR IS NULL OR @p_RET_ADDR='' OR A.RET_ADDR LIKE N'%' + @p_RET_ADDR + '%')
|
227
|
AND (@p_RET_DESC IS NULL OR @p_RET_DESC='' OR A.RET_DESC LIKE N'%' + @p_RET_DESC + '%')
|
228
|
AND (@p_REASON IS NULL OR @p_REASON='' OR A.REASON LIKE N'%' + @p_REASON + '%')
|
229
|
AND (@p_PROC_EXE IS NULL OR @p_PROC_EXE='' OR A.PROC_EXE LIKE N'%' + @p_PROC_EXE + '%')
|
230
|
AND (@p_PROC_NEXT IS NULL OR @p_PROC_NEXT='' OR A.PROC_NEXT LIKE N'%' + @p_PROC_NEXT + '%')
|
231
|
AND (@p_END_DT IS NULL OR DATEDIFF(DAYOFYEAR, A.END_DT,CONVERT(datetime, @p_END_DT,103)) = 0)
|
232
|
AND (@p_NOTES IS NULL OR @p_NOTES='' OR A.NOTES LIKE N'%' + @p_NOTES + '%')
|
233
|
AND (@p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE='' OR A.BRANCH_CREATE = @p_BRANCH_CREATE)
|
234
|
AND (@p_BRANCH_ID IS NULL OR @p_BRANCH_ID='' OR A.BRANCH_ID = @p_BRANCH_ID)
|
235
|
AND (@p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS='' OR A.RECORD_STATUS = @p_RECORD_STATUS)
|
236
|
AND (@p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS='' OR A.AUTH_STATUS = @p_AUTH_STATUS)
|
237
|
AND (@p_MAKER_ID IS NULL OR @p_MAKER_ID='' OR A.MAKER_ID = @p_MAKER_ID)
|
238
|
AND (@p_CREATE_DT IS NULL OR DATEDIFF(DAYOFYEAR, A.CREATE_DT,CONVERT(datetime, @p_CREATE_DT,103)) = 0)
|
239
|
AND (@p_CHECKER_ID IS NULL OR @p_CHECKER_ID='' OR A.CHECKER_ID = @p_CHECKER_ID)
|
240
|
AND (@p_APPROVE_DT IS NULL OR DATEDIFF(DAYOFYEAR, A.APPROVE_DT,CONVERT(datetime, @p_APPROVE_DT,103)) = 0)
|
241
|
AND ((@P_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
|
242
|
OR ((@P_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_LOGIN)
|
243
|
OR (@p_BRANCH_LOGIN = '' OR @p_BRANCH_LOGIN IS NULL)))
|
244
|
-------BAODNQ 15/2/2022: Thêm điều kiện search-------
|
245
|
--AND (A.MAKER_ID = @p_USER_LOGIN ---- ng login là ng tạo
|
246
|
-- OR (A.SIGN_USER = @p_USER_LOGIN AND A.IS_SEND_APPR = 'Y') --- ng login là cấp duyệt trung gian và đã gửi YC phê duyệt
|
247
|
-- OR ((@p_USER_LOGIN_ROLE IN('GDDV','PGD', 'TP', 'PP','TPGD','PPGD', 'TBP')) --- ng login là trưởng ĐV và đã gửi YC phê duyệt
|
248
|
-- AND A.IS_SEND_APPR = 'Y'
|
249
|
-- AND (
|
250
|
-- ISNULL(A.SIGN_USER,'') = '' OR (ISNULL(A.SIGN_USER,'') <> '' AND A.SIGN_DT IS NOT NULL)
|
251
|
-- )
|
252
|
|
253
|
-- )
|
254
|
-- )
|
255
|
--AND (A.MAKER_ID = @p_USER_LOGIN ---- user login là ng tạo
|
256
|
-- OR (A.SIGN_USER = @p_USER_LOGIN AND A.IS_SEND_APPR = 'Y') --- user login là cấp duyệt trung gian và đã gửi YC phê duyệt
|
257
|
-- OR (
|
258
|
-- --user login là trưởng ĐV và đã gửi YC phê duyệt
|
259
|
-- (
|
260
|
-- ------user login là trưởng ĐV ở hội sở--------
|
261
|
-- (
|
262
|
-- EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_CREATE AND BRANCH_TYPE = 'HS')
|
263
|
-- AND (SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID)
|
264
|
-- = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
|
265
|
-- )
|
266
|
-- ------user login là trưởng ĐV ở CN/PGD
|
267
|
-- OR
|
268
|
-- (
|
269
|
-- NOT EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_CREATE AND BRANCH_TYPE = 'HS')
|
270
|
-- AND A.BRANCH_CREATE = (SELECT TOP 1 BRANCH_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'PGD', 'TPGD', 'PPGD'))
|
271
|
-- )
|
272
|
-- )
|
273
|
-- AND A.IS_SEND_APPR = 'Y'
|
274
|
-- AND (
|
275
|
-- ISNULL(A.SIGN_USER,'') = '' OR (ISNULL(A.SIGN_USER,'') <> '' AND A.SIGN_DT IS NOT NULL)
|
276
|
-- )
|
277
|
-- )
|
278
|
--)
|
279
|
|
280
|
AND(
|
281
|
A.BRANCH_CREATE = @p_BRANCH_LOGIN
|
282
|
AND(
|
283
|
(SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID) = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE)
|
284
|
OR(SELECT TOP 1 BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_LOGIN) <> 'HS'
|
285
|
)
|
286
|
)
|
287
|
|
288
|
ORDER BY A.CREATE_DT DESC
|
289
|
-- PAGING END
|
290
|
ELSE
|
291
|
-- PAGING BEGIN
|
292
|
SELECT TOP(CONVERT(INT, @p_TOP))
|
293
|
--A.*,
|
294
|
A.RET_L_C_ID, A.RET_ADDR, A.RET_DESC, A.REASON, A.PROC_EXE, A.PROC_NEXT, A.END_DT,
|
295
|
A.NOTES, A.BRANCH_ID, A.BRANCH_CREATE, A.RECORD_STATUS, A.AUTH_STATUS, A.MAKER_ID,
|
296
|
A.CREATE_DT, A.CHECKER_ID, A.APPROVE_DT, A.BRANCH_USE, A.BRANCH_MANAGE,
|
297
|
A.BUY_DT, A.AREA, A.CONTRUCT_AREA, A.IS_SEND_APPR, A.SEND_APPR_DT, A.SIGN_USER, A.SIGN_DT,
|
298
|
A.RET_ID, A.ASSET_PRICE, A.LAND_USE_RIGHTS_PRICE, A.MARKET_PRICE, A.FINISH_DT_REAL,
|
299
|
RM.ASS_NAME AS RET_NAME,
|
300
|
A.BRANCH_USE BRANCH_USE_NAME,
|
301
|
BRMN.BRANCH_NAME BRANCH_MANAGE_NAME,
|
302
|
BRN.BRANCH_NAME,
|
303
|
BRNC.BRANCH_NAME AS BRANCH_CREATE_NAME,
|
304
|
D.AUTH_STATUS_NAME,
|
305
|
TUM.TLFullName AS MAKER_NAME
|
306
|
-- SELECT END
|
307
|
FROM REAL_ESTATE_L_C AS A
|
308
|
LEFT JOIN CM_BRANCH BRN ON BRN.BRANCH_ID = A.BRANCH_ID
|
309
|
LEFT JOIN CM_BRANCH BRNC ON BRNC.BRANCH_ID = A.BRANCH_CREATE
|
310
|
LEFT JOIN CM_BRANCH BRMN ON BRMN.BRANCH_ID = A.BRANCH_MANAGE
|
311
|
LEFT JOIN CM_AUTH_STATUS D ON D.AUTH_STATUS = A.AUTH_STATUS
|
312
|
LEFT JOIN RET_MASTER RM ON A.RET_ID = RM.RET_ID
|
313
|
LEFT JOIN TL_USER TUM ON A.MAKER_ID = TUM.TLNANME
|
314
|
WHERE (@p_RET_L_C_ID IS NULL OR @p_RET_L_C_ID='' OR A.RET_L_C_ID LIKE N'%' + @p_RET_L_C_ID + '%')
|
315
|
AND (@p_RET_NAME IS NULL OR @p_RET_NAME='' OR A.RET_NAME LIKE N'%' + @p_RET_NAME + '%')
|
316
|
AND (@p_RET_ADDR IS NULL OR @p_RET_ADDR='' OR A.RET_ADDR LIKE N'%' + @p_RET_ADDR + '%')
|
317
|
AND (@p_RET_DESC IS NULL OR @p_RET_DESC='' OR A.RET_DESC LIKE N'%' + @p_RET_DESC + '%')
|
318
|
AND (@p_REASON IS NULL OR @p_REASON='' OR A.REASON LIKE N'%' + @p_REASON + '%')
|
319
|
AND (@p_PROC_EXE IS NULL OR @p_PROC_EXE='' OR A.PROC_EXE LIKE N'%' + @p_PROC_EXE + '%')
|
320
|
AND (@p_PROC_NEXT IS NULL OR @p_PROC_NEXT='' OR A.PROC_NEXT LIKE N'%' + @p_PROC_NEXT + '%')
|
321
|
AND (@p_END_DT IS NULL OR DATEDIFF(DAYOFYEAR, A.END_DT,CONVERT(datetime, @p_END_DT,103)) = 0)
|
322
|
AND (@p_NOTES IS NULL OR @p_NOTES='' OR A.NOTES LIKE N'%' + @p_NOTES + '%')
|
323
|
AND (@p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE='' OR A.BRANCH_CREATE = @p_BRANCH_CREATE)
|
324
|
AND (@p_BRANCH_ID IS NULL OR @p_BRANCH_ID='' OR A.BRANCH_ID = @p_BRANCH_ID)
|
325
|
AND (@p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS='' OR A.RECORD_STATUS = @p_RECORD_STATUS)
|
326
|
AND (@p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS='' OR A.AUTH_STATUS = @p_AUTH_STATUS)
|
327
|
AND (@p_MAKER_ID IS NULL OR @p_MAKER_ID='' OR A.MAKER_ID = @p_MAKER_ID)
|
328
|
AND (@p_CREATE_DT IS NULL OR DATEDIFF(DAYOFYEAR, A.CREATE_DT,CONVERT(datetime, @p_CREATE_DT,103)) = 0)
|
329
|
AND (@p_CHECKER_ID IS NULL OR @p_CHECKER_ID='' OR A.CHECKER_ID = @p_CHECKER_ID)
|
330
|
AND (@p_APPROVE_DT IS NULL OR DATEDIFF(DAYOFYEAR, A.APPROVE_DT,CONVERT(datetime, @p_APPROVE_DT,103)) = 0)
|
331
|
AND ((@P_LEVEL = 'ALL' AND A.BRANCH_CREATE IN (SELECT BRANCH_ID from @tmp))
|
332
|
OR ((@P_LEVEL = 'UNIT' AND A.BRANCH_CREATE = @p_BRANCH_LOGIN)
|
333
|
OR (@p_BRANCH_LOGIN = '' OR @p_BRANCH_LOGIN IS NULL)))
|
334
|
-------BAODNQ 15/2/2022: Thêm điều kiện search-------
|
335
|
--AND (A.MAKER_ID = @p_USER_LOGIN ---- ng login là ng tạo
|
336
|
-- OR (A.SIGN_USER = @p_USER_LOGIN AND A.IS_SEND_APPR = 'Y') --- ng login là cấp duyệt trung gian và đã gửi YC phê duyệt
|
337
|
-- OR ((@p_USER_LOGIN_ROLE IN('GDDV','PGD', 'TP', 'PP','TPGD','PPGD', 'TBP')) --- ng login là trưởng ĐV và đã gửi YC phê duyệt
|
338
|
-- AND A.IS_SEND_APPR = 'Y'
|
339
|
-- AND (
|
340
|
-- ISNULL(A.SIGN_USER,'') = '' OR (ISNULL(A.SIGN_USER,'') <> '' AND A.SIGN_DT IS NOT NULL)
|
341
|
-- )
|
342
|
|
343
|
-- )
|
344
|
-- )
|
345
|
--AND (A.MAKER_ID = @p_USER_LOGIN ---- user login là ng tạo
|
346
|
-- OR (A.SIGN_USER = @p_USER_LOGIN AND A.IS_SEND_APPR = 'Y') --- user login là cấp duyệt trung gian và đã gửi YC phê duyệt
|
347
|
-- OR (
|
348
|
-- --user login là trưởng ĐV và đã gửi YC phê duyệt
|
349
|
-- (
|
350
|
-- ------user login là trưởng ĐV ở hội sở--------
|
351
|
-- (
|
352
|
-- EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_CREATE AND BRANCH_TYPE = 'HS')
|
353
|
-- AND (SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID)
|
354
|
-- = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
|
355
|
-- )
|
356
|
-- ------user login là trưởng ĐV ở CN/PGD
|
357
|
-- OR
|
358
|
-- (
|
359
|
-- NOT EXISTS(SELECT * FROM CM_BRANCH WHERE BRANCH_ID = A.BRANCH_CREATE AND BRANCH_TYPE = 'HS')
|
360
|
-- AND A.BRANCH_CREATE = (SELECT TOP 1 BRANCH_ID FROM @t_USER_LOGIN_ROLE_TABLE WHERE ROLE_ID IN ('GDDV', 'PGD', 'TPGD', 'PPGD'))
|
361
|
-- )
|
362
|
-- )
|
363
|
-- AND A.IS_SEND_APPR = 'Y'
|
364
|
-- AND (
|
365
|
-- ISNULL(A.SIGN_USER,'') = '' OR (ISNULL(A.SIGN_USER,'') <> '' AND A.SIGN_DT IS NOT NULL)
|
366
|
-- )
|
367
|
-- )
|
368
|
--)
|
369
|
|
370
|
AND(
|
371
|
A.BRANCH_CREATE = @p_BRANCH_LOGIN
|
372
|
AND(
|
373
|
(SELECT DEP_ID FROM TL_USER WHERE TLNANME = A.MAKER_ID) = (SELECT TOP 1 DEPT_ID FROM @t_USER_LOGIN_ROLE_TABLE)
|
374
|
OR(SELECT TOP 1 BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_LOGIN) <> 'HS'
|
375
|
)
|
376
|
)
|
377
|
|
378
|
ORDER BY A.CREATE_DT DESC
|
379
|
-- PAGING END
|
380
|
END -- PAGING
|
381
|
|
382
|
GO
|
383
|
|
384
|
|
385
|
ALTER PROCEDURE [dbo].[REAL_ESTATE_L_C_SendAppr]
|
386
|
@p_RET_L_C_ID VARCHAR(15) = NULL,
|
387
|
@p_USER_LOGIN VARCHAR(15),
|
388
|
@p_SEND_APPR_DT VARCHAR(20) = NULL
|
389
|
AS
|
390
|
BEGIN TRANSACTION
|
391
|
|
392
|
IF(EXISTS (SELECT * FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND IS_SEND_APPR = 'Y'))
|
393
|
BEGIN
|
394
|
ROLLBACK TRANSACTION
|
395
|
SELECT '-1' AS Result, '' RET_L_C_ID ,
|
396
|
N'Gửi yêu cầu phê duyệt thất bại. Thông tin BĐS đang hoàn thiện thủ tục đã được gửi yêu cầu phê duyệt trước đó' ErrorDesc
|
397
|
RETURN '-1'
|
398
|
END
|
399
|
|
400
|
UPDATE REAL_ESTATE_L_C SET
|
401
|
IS_SEND_APPR = 'Y',
|
402
|
SEND_APPR_DT = CONVERT(DATETIME, @p_SEND_APPR_DT, 103),
|
403
|
SIGN_DT = NULL,
|
404
|
AUTH_STATUS = 'U'
|
405
|
WHERE RET_L_C_ID = @p_RET_L_C_ID
|
406
|
IF @@ERROR <> 0 GOTO ABORT
|
407
|
|
408
|
DECLARE @p_IS_SEND_APPR VARCHAR(15) =
|
409
|
(SELECT IS_SEND_APPR FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID)
|
410
|
DECLARE @p_MESSAGE NVARCHAR(500)
|
411
|
DECLARE @p_RET_NAME NVARCHAR(1000) = (
|
412
|
SELECT RL.RET_NAME
|
413
|
FROM REAL_ESTATE_L_C RL
|
414
|
WHERE RET_L_C_ID = @p_RET_L_C_ID
|
415
|
)
|
416
|
|
417
|
-----------------TH gửi phê duyệt có cấp duyệt trung gian-----------
|
418
|
IF(EXISTS(SELECT * FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND SIGN_USER IS NOT NULL))
|
419
|
BEGIN
|
420
|
SET @p_MESSAGE = N'Thông tin BĐS: ' +@p_RET_NAME+
|
421
|
N' đã được gửi phê duyệt thành công. Vui lòng đợi cấp phê duyệt trung gian xác nhận.'
|
422
|
END
|
423
|
ELSE
|
424
|
-----------------TH gửi phê duyệt ko có cấp duyệt trung gian (gửi thẳng lên trưởng DV)------
|
425
|
BEGIN
|
426
|
SET @p_MESSAGE = N'Thông tin BĐS: ' +@p_RET_NAME+
|
427
|
N' đã được gửi phê duyệt thành công. Vui lòng đợi trưởng đơn vị phê duyệt.'
|
428
|
END
|
429
|
------Insert vào bảng lịch sử xử lý-------------
|
430
|
INSERT INTO PL_PROCESS(REQ_ID, PROCESS_ID, CHECKER_ID, APPROVE_DT, PROCESS_DESC, NOTES)
|
431
|
VALUES(@p_RET_L_C_ID, 'SEND', @p_USER_LOGIN, GETDATE(),
|
432
|
N'Người tạo gửi phê duyệt thành công', N' Người tạo gửi phê duyệt')
|
433
|
IF @@ERROR <> 0 GOTO ABORT
|
434
|
|
435
|
COMMIT TRANSACTION
|
436
|
SELECT '0' AS Result, @p_RET_L_C_ID RET_L_C_ID ,@p_IS_SEND_APPR IS_SEND_APPR, @p_MESSAGE ErrorDesc
|
437
|
RETURN '0'
|
438
|
|
439
|
ABORT:
|
440
|
BEGIN
|
441
|
ROLLBACK TRANSACTION
|
442
|
SELECT '-1' AS Result, '' RET_L_C_ID ,'' IS_SEND_APPR, '' ErrorDesc
|
443
|
RETURN '-1'
|
444
|
END
|
445
|
|
446
|
GO
|
447
|
|
448
|
|
449
|
ALTER PROCEDURE [dbo].[REAL_ESTATE_L_C_Upd]
|
450
|
@p_RET_L_C_ID varchar(15) = null,
|
451
|
@p_RET_NAME nvarchar(MAX) = null,
|
452
|
@p_RET_ADDR nvarchar(MAX) = null,
|
453
|
@p_RET_DESC nvarchar(MAX) = null,
|
454
|
@p_REASON nvarchar(500) = null,
|
455
|
@p_PROC_EXE nvarchar(500) = null,
|
456
|
@p_PROC_NEXT nvarchar(500) = null,
|
457
|
@p_BRANCH_ID varchar(15) = NULL,
|
458
|
@p_BRANCH_USE Nvarchar(500) = NULL,
|
459
|
@p_BRANCH_MANAGE varchar(15) = NULL,
|
460
|
@p_BRANCH_CREATE nvarchar(15) = NULL,
|
461
|
@p_AREA nvarchar(500) = NULL,
|
462
|
@p_END_DT VARCHAR(20) = null,
|
463
|
@p_BUY_DT varchar(20) = NULL,
|
464
|
@p_NOTES nvarchar(1000) = null,
|
465
|
@p_RECORD_STATUS varchar(1) = null,
|
466
|
@p_AUTH_STATUS varchar(1) = null,
|
467
|
@p_MAKER_ID varchar(15) = null,
|
468
|
@p_CREATE_DT VARCHAR(20) = null,
|
469
|
@p_CHECKER_ID varchar(15) = null,
|
470
|
@p_APPROVE_DT VARCHAR(20) = null,
|
471
|
@p_CONTRUCT_AREA nvarchar(500) = NULL,
|
472
|
--------BAODNQ 15/2/2022: Thêm cột vào bảng REAL_ESTATE_L_C------
|
473
|
@p_IS_SEND_APPR VARCHAR(15) = NULL,
|
474
|
@p_SEND_APPR_DT VARCHAR(20) = NULL,
|
475
|
@p_SIGN_USER VARCHAR(15) = NULL,
|
476
|
@p_SIGN_DT VARCHAR(20) = NULL,
|
477
|
@p_RET_ID VARCHAR(15) = NULL,
|
478
|
@p_ASSET_PRICE DECIMAL(18,2) = NULL,
|
479
|
@p_LAND_USE_RIGHTS_PRICE DECIMAL(18,2) = NULL,
|
480
|
@p_MARKET_PRICE DECIMAL(18,2) = NULL,
|
481
|
@p_FINISH_DT_REAL VARCHAR(20) = NULL
|
482
|
AS
|
483
|
DECLARE @l_ERROR_MESSAGE VARCHAR(1000)
|
484
|
BEGIN TRANSACTION
|
485
|
|
486
|
IF(@p_RET_L_C_ID IS NULL)
|
487
|
BEGIN
|
488
|
SET @l_ERROR_MESSAGE = 'ID IS NULL'
|
489
|
GOTO ABORT
|
490
|
END
|
491
|
|
492
|
IF(EXISTS(SELECT * FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND IS_SEND_APPR = 'Y' AND AUTH_STATUS = 'U'))
|
493
|
BEGIN
|
494
|
ROLLBACK TRANSACTION
|
495
|
SELECT '-1' AS Result, '' RET_ID,
|
496
|
N'Không thể chỉnh sửa. Thông tin BĐS đang hoàn thiện thủ tục pháp lý đã được gửi yêu cầu phê duyệt' ErrorDesc
|
497
|
RETURN '-1'
|
498
|
END
|
499
|
|
500
|
IF(EXISTS (SELECT * FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @p_RET_L_C_ID AND AUTH_STATUS = 'A'))
|
501
|
BEGIN
|
502
|
--------------------CẬP NHẬT LẠI SAU KHI ĐÃ DUYỆT----------------
|
503
|
SET @p_CHECKER_ID = NULL
|
504
|
SET @p_APPROVE_DT = NULL
|
505
|
SET @p_SEND_APPR_DT = NULL
|
506
|
SET @p_SIGN_DT = NULL
|
507
|
END
|
508
|
|
509
|
-- UPDATE
|
510
|
UPDATE REAL_ESTATE_L_C
|
511
|
SET
|
512
|
RET_NAME=@p_RET_NAME,
|
513
|
RET_ADDR=@p_RET_ADDR,
|
514
|
RET_DESC=@p_RET_DESC,
|
515
|
REASON=@p_REASON,
|
516
|
PROC_EXE=@p_PROC_EXE,
|
517
|
PROC_NEXT=@p_PROC_NEXT,
|
518
|
END_DT=CONVERT(DATETIME, @p_END_DT, 103),
|
519
|
BRANCH_CREATE = @p_BRANCH_CREATE,
|
520
|
BRANCH_ID = @p_BRANCH_ID,
|
521
|
NOTES=@p_NOTES,
|
522
|
RECORD_STATUS=@p_RECORD_STATUS,
|
523
|
AUTH_STATUS=@p_AUTH_STATUS,
|
524
|
MAKER_ID=@p_MAKER_ID,
|
525
|
BUY_DT = CONVERT(DATETIME, @p_BUY_DT, 103),
|
526
|
CREATE_DT=CONVERT(DATETIME, @p_CREATE_DT, 103),
|
527
|
CHECKER_ID=@p_CHECKER_ID,
|
528
|
APPROVE_DT=CONVERT(DATETIME, @p_APPROVE_DT, 103),
|
529
|
BRANCH_USE = @p_BRANCH_USE,
|
530
|
BRANCH_MANAGE = @p_BRANCH_MANAGE,
|
531
|
AREA = @p_AREA,
|
532
|
CONTRUCT_AREA = @p_CONTRUCT_AREA,
|
533
|
--------BAODNQ 15/2/2022: Thêm cột vào bảng REAL_ESTATE_L_C------
|
534
|
IS_SEND_APPR = @p_IS_SEND_APPR,
|
535
|
SEND_APPR_DT = CONVERT(DATETIME, @p_SEND_APPR_DT, 103),
|
536
|
SIGN_USER = @p_SIGN_USER,
|
537
|
SIGN_DT = CONVERT(DATETIME, @p_SIGN_DT, 103),
|
538
|
RET_ID = @p_RET_ID,
|
539
|
ASSET_PRICE = @p_ASSET_PRICE,
|
540
|
LAND_USE_RIGHTS_PRICE = @p_LAND_USE_RIGHTS_PRICE,
|
541
|
MARKET_PRICE = @p_MARKET_PRICE,
|
542
|
FINISH_DT_REAL = CONVERT(DATETIME, @p_FINISH_DT_REAL, 103)
|
543
|
|
544
|
WHERE RET_L_C_ID = @p_RET_L_C_ID
|
545
|
|
546
|
IF @@Error <> 0 GOTO ABORT
|
547
|
|
548
|
---------------BAODNQ : TH NGƯỜI TẠO CẬP NHẬT NHIỀU LẦN THÌ CHỈ LƯU LỊCH SỬ XỬ LÝ CẬP NHẬT GẦN NHẤT----------------
|
549
|
IF((SELECT TOP 1 PROCESS_ID FROM PL_PROCESS WHERE REQ_ID = @p_RET_L_C_ID ORDER BY APPROVE_DT DESC) = 'UPDATE')
|
550
|
BEGIN
|
551
|
WITH RESULT AS(
|
552
|
SELECT TOP 1 * FROM PL_PROCESS WHERE REQ_ID = @p_RET_L_C_ID
|
553
|
ORDER BY APPROVE_DT DESC
|
554
|
)
|
555
|
DELETE FROM RESULT
|
556
|
END
|
557
|
|
558
|
--------BAODNQ 15/2/2022: Insert vào bảng lưu lịch sử xử lý------
|
559
|
INSERT INTO dbo.PL_PROCESS
|
560
|
(
|
561
|
REQ_ID,
|
562
|
PROCESS_ID,
|
563
|
CHECKER_ID,
|
564
|
APPROVE_DT,
|
565
|
PROCESS_DESC,
|
566
|
NOTES
|
567
|
)
|
568
|
VALUES
|
569
|
( @p_RET_L_C_ID,
|
570
|
'UPDATE',
|
571
|
@p_MAKER_ID,
|
572
|
GETDATE(),
|
573
|
N'Cập nhật thông tin BĐS đang hoàn thiện thủ tục pháp lý thành công' ,
|
574
|
N'Cập nhật thông tin BĐS đang hoàn thiện thủ tục pháp lý'
|
575
|
)
|
576
|
IF @@ERROR <> 0 GOTO ABORT
|
577
|
|
578
|
COMMIT TRANSACTION
|
579
|
SELECT '0' as Result, @p_RET_L_C_ID RET_L_C_ID, '' ErrorDesc
|
580
|
RETURN '0'
|
581
|
|
582
|
ABORT:
|
583
|
BEGIN
|
584
|
SELECT '-1' as Result, '' RET_L_C_ID, @l_ERROR_MESSAGE ErrorDesc
|
585
|
RETURN '-1'
|
586
|
END
|
587
|
|