1
|
ALTER PROCEDURE [dbo].[CAR_DRIVE_Ins]
|
2
|
@p_CAR_ID varchar(15) = NULL,
|
3
|
@p_ASSET_ID varchar(15) = NULL,
|
4
|
@p_ASSET_NAME nvarchar(200) = NULL,
|
5
|
@p_OLD_INDEX_NUMBER decimal(18) = NULL,
|
6
|
@p_NEW_INDEX_NUMBER decimal(18) = NULL,
|
7
|
@p_INDEX_NUMBER decimal(18) = NULL,
|
8
|
@p_POWER_RATE decimal(18,2) = NULL,
|
9
|
@p_POWER_RATE_INDEX decimal(18,2) = NULL,
|
10
|
@p_CURR_POWER_RATE decimal(18,2) = NULL,
|
11
|
@p_INPUT_DT VARCHAR(20) = NULL,
|
12
|
@p_ISLEAF varchar(1) = NULL,
|
13
|
@p_PARENT_ID varchar(15) = NULL,
|
14
|
@p_NOTES nvarchar(1000) = NULL,
|
15
|
@p_RECORD_STATUS varchar(1) = NULL,
|
16
|
@p_MAKER_ID varchar(12) = NULL,
|
17
|
@p_CREATE_DT VARCHAR(20) = NULL,
|
18
|
@p_AUTH_STATUS varchar(50) = NULL,
|
19
|
@p_CHECKER_ID varchar(12) = NULL,
|
20
|
@p_APPROVE_DT VARCHAR(20) = NULL,
|
21
|
@p_DR_ROUTE nvarchar(200) = NULL, --vietpq hieu chinh URD 09/12/2019
|
22
|
-- doanptt 14/02/2022
|
23
|
@p_REQ_PAY_ID VARCHAR(15) = NULL,
|
24
|
@p_NEW_FUEL_NUMBER DECIMAL(18,2) = NULL, --PhongNT 13/05/2022 Bổ sung nhiên liệu
|
25
|
@p_OLD_FUEL_NUMBER DECIMAL(18,2) = NULL,
|
26
|
@p_REQ_CAR_ID VARCHAR(15) =NULL, -- PYC XE
|
27
|
@p_DRIVE_DETAIL XML = NULL
|
28
|
AS
|
29
|
|
30
|
-- DECLARE @ERRORSYS NVARCHAR(15)
|
31
|
-- IF ( EXISTS ( SELECT * FROM CAR_DRIVE WHERE CAR_ID = @p_CAR_ID))
|
32
|
-- BEGIN
|
33
|
-- --kiem tra trang thai truoc do da suyet hay chua
|
34
|
-- IF(NOT EXISTS(SELECT * FROM CAR_DRIVE A WHERE A.AUTH_STATUS='A' AND A.ISLEAF = 'Y' AND (A.CAR_ID = @p_CAR_ID OR @p_CAR_ID IS NULL OR @p_CAR_ID='')))
|
35
|
-- SET @ERRORSYS='CARD-00003'
|
36
|
-- END
|
37
|
--
|
38
|
-- IF( @ERRORSYS <> '' )
|
39
|
-- BEGIN
|
40
|
-- SELECT ErrorCode Result, '' CAR_DR_ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
|
41
|
-- RETURN '-1'
|
42
|
-- END
|
43
|
--
|
44
|
-- IF ( EXISTS ( SELECT 1 FROM CAR_DRIVE WHERE REQ_CAR_ID = @p_REQ_CAR_ID))
|
45
|
-- BEGIN
|
46
|
-- SELECT '-1' Result, '' CAR_DR_ID, N'Thêm mới thất bại! Phiếu yêu cầu xe đã tồn tại trong thông tin vận hành xe' ErrorDesc
|
47
|
-- RETURN '-1'
|
48
|
-- END
|
49
|
|
50
|
|
51
|
DECLARE @ERRORSYS NVARCHAR(MAX)
|
52
|
select @ERRORSYS = STUFF((
|
53
|
SELECT ', ' + REQ_CODE
|
54
|
FROM TR_REQUEST_CAR
|
55
|
WHERE START_TIME_TRIP<(SELECT START_TIME_TRIP FROM dbo.TR_REQUEST_CAR WHERE REQ_ID = @p_REQ_CAR_ID)
|
56
|
AND AUTH_STATUS<>'D'
|
57
|
AND CAR_ID = @p_CAR_ID
|
58
|
AND REQ_ID NOT IN (SELECT REQ_CAR_ID FROM dbo.CAR_DRIVE A WHERE CAR_ID=@p_CAR_ID)
|
59
|
|
60
|
FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 1, '')
|
61
|
|
62
|
--KIỂM TRA CÁC PHIẾU XE TRƯỚC THỜI ĐIỂM ĐI ĐÃ ĐƯỢC TẠO
|
63
|
IF (@ERRORSYS IS NOT NULL)
|
64
|
BEGIN
|
65
|
SELECT '-1' Result, N'Bạn cần tạo vận hành cho các phiếu yêu cầu sau: '+ @ERRORSYS ErrorDesc
|
66
|
RETURN '-1'
|
67
|
END
|
68
|
|
69
|
IF (EXISTS(SELECT * FROM CAR_DRIVE cd WHERE REQ_CAR_ID=@p_REQ_CAR_ID))
|
70
|
BEGIN
|
71
|
SELECT '-1' Result, N'Phiếu yêu cầu xe tồn tại ở phiếu vận hành số '+(SELECT TOP(1) cd.CAR_DR_ID FROM CAR_DRIVE cd WHERE REQ_CAR_ID=@p_REQ_CAR_ID) ErrorDesc
|
72
|
RETURN '-1'
|
73
|
END
|
74
|
|
75
|
|
76
|
Declare @hdoc INT
|
77
|
Exec sp_xml_preparedocument @hdoc Output,@p_DRIVE_DETAIL
|
78
|
DECLARE DriveDetail CURSOR FOR
|
79
|
SELECT *
|
80
|
FROM OPENXML(@hDoc,'/Root/DriveDetail',2)
|
81
|
WITH
|
82
|
(
|
83
|
INVOICE_NO nvarchar(100),
|
84
|
INVOICE_DT VARCHAR(20),
|
85
|
INVOICE_AMT DECIMAL(18,0),
|
86
|
CAR_DR_TYPE nvarchar(200), --vietpq hieu chinh URD 09/12/2019
|
87
|
NOTES nvarchar(MAX) --vietpq hieu chinh URD 09/12/2019
|
88
|
)
|
89
|
OPEN DriveDetail
|
90
|
BEGIN TRANSACTION
|
91
|
---- LUCTV 21062023_SECRETKEY: KIỂM TRA NẾU CHƯA KHAI BÁO THÔNG TIN VẬN HÀNH XE THÌ BẮT BUỘC PHẢI KHAI BÁO TRƯỚC KHI LÀM PYC XE
|
92
|
IF(NOT EXISTS(SELECT * FROM CAR_DRIVE WHERE CAR_ID =@p_CAR_ID AND ISNULL(ISLEAF,'') ='Y' ))
|
93
|
BEGIN
|
94
|
ROLLBACK TRANSACTION
|
95
|
SELECT '-1' Result, '' REQ_ID, N'Thêm mới phiếu vận hành xe thất bại. Xe chưa được khai báo thông tin số km tồn đầu, số nhiên liệu tồn đầu. Vui lòng tra cứu thông tin xe để kiểm tra thông tin' ErrorDesc
|
96
|
RETURN '-1'
|
97
|
END
|
98
|
---- LUCTV 29062023_SECRETKEY:CHỈ CHO PHÉP PHÒNG HÀNH CHÍNH HỘI SỞ ĐƯỢC PHÉP ĐIỀU CHỈNH SỐ XĂNG ĐẦU KỲ, SỐ KM ĐẦU KỲ
|
99
|
--DECLARE @l_FUEL_INDEX_FROM DECIMAL(18,2), @l_KM_INDEX_FROM DECIMAL(18,2)
|
100
|
--SET @l_FUEL_INDEX_FROM = (SELECT TOP 1 ISNULL(NEW_FUEL_NUMBER,0) FROM CAR_DRIVE WHERE CAR_ID =@p_CAR_ID AND ISNULL(ISLEAF,'') ='Y' AND RECORD_STATUS='1')
|
101
|
--SET @l_KM_INDEX_FROM = (SELECT TOP 1 ISNULL(NEW_INDEX_NUMBER,0) FROM CAR_DRIVE WHERE CAR_ID =@p_CAR_ID AND ISNULL(ISLEAF,'') ='Y' AND RECORD_STATUS ='1')
|
102
|
--IF(ISNULL(@l_FUEL_INDEX_FROM,0) <> @p_OLD_FUEL_NUMBER OR ISNULL(@l_KM_INDEX_FROM,0) <> @p_OLD_INDEX_NUMBER)
|
103
|
--BEGIN
|
104
|
-- IF(NOT EXISTS (SELECT * FROM TL_USER WHERE TLNANME=@p_MAKER_ID AND SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE DEP_CODE ='0690604')))
|
105
|
-- BEGIN
|
106
|
-- ROLLBACK TRANSACTION
|
107
|
-- SELECT '-1' Result, '' REQ_ID, N'Thêm mới phiếu vận hành xe thất bại. Bạn không được phép điều chỉnh thông tin chỉ số nhiên liệu cũ, chỉ số km cũ. Chức năng này chỉ dành cho nhóm người dùng Phòng Hành Chính - Hội Sở' ErrorDesc
|
108
|
-- RETURN '-1'
|
109
|
-- END
|
110
|
--END
|
111
|
---- END LUCTV
|
112
|
DECLARE @l_CAR_DR_ID VARCHAR(15)
|
113
|
|
114
|
IF @p_INPUT_DT = '' SET @p_INPUT_DT = NULL
|
115
|
IF @p_CREATE_DT = '' SET @p_CREATE_DT = NULL
|
116
|
IF @p_APPROVE_DT = '' SET @p_APPROVE_DT = NULL
|
117
|
|
118
|
EXEC SYS_CodeMasters_Gen 'CAR_DRIVE', @l_CAR_DR_ID out
|
119
|
IF @l_CAR_DR_ID='' OR @l_CAR_DR_ID IS NULL GOTO ABORT
|
120
|
PRINT @l_CAR_DR_ID
|
121
|
--Tren truyen mac dinh ISLEAF=Y
|
122
|
DECLARE @PARENT VARCHAR(15) = NULL
|
123
|
SELECT @PARENT = [CAR_DR_ID] FROM CAR_DRIVE WHERE CAR_ID = @p_CAR_ID AND ISLEAF = 'Y' AND RECORD_STATUS = '1'
|
124
|
UPDATE CAR_DRIVE SET ISLEAF = 'N' WHERE [CAR_DR_ID] = @PARENT
|
125
|
|
126
|
|
127
|
INSERT INTO CAR_DRIVE([CAR_DR_ID],[CAR_ID],[ASSET_ID],[ASSET_NAME],[OLD_INDEX_NUMBER],[NEW_INDEX_NUMBER],[INDEX_NUMBER],[POWER_RATE],[POWER_RATE_INDEX],[CURR_POWER_RATE],[DR_ROUTE], [INPUT_DT],[ISLEAF],[PARENT_ID],[NOTES],[RECORD_STATUS],[MAKER_ID],[CREATE_DT],[AUTH_STATUS],[CHECKER_ID],[APPROVE_DT],[REQ_PAY_ID],[REQ_CAR_ID],[OLD_FUEL_NUMBER],[NEW_FUEL_NUMBER])
|
128
|
VALUES(@l_CAR_DR_ID ,@p_CAR_ID ,@p_ASSET_ID ,@p_ASSET_NAME ,@p_OLD_INDEX_NUMBER,
|
129
|
@p_NEW_INDEX_NUMBER ,@p_INDEX_NUMBER ,@p_POWER_RATE ,@p_POWER_RATE_INDEX ,
|
130
|
@p_CURR_POWER_RATE , @p_DR_ROUTE, CONVERT(DATETIME, @p_INPUT_DT, 103) ,'Y' ,@PARENT ,
|
131
|
@p_NOTES ,@p_RECORD_STATUS ,@p_MAKER_ID ,CONVERT(DATETIME, @p_CREATE_DT, 103) ,
|
132
|
@p_AUTH_STATUS ,@p_CHECKER_ID ,CONVERT(DATETIME, @p_APPROVE_DT, 103),@p_REQ_PAY_ID,@p_REQ_CAR_ID,@p_OLD_FUEL_NUMBER,@p_NEW_FUEL_NUMBER)
|
133
|
IF @@Error <> 0 GOTO ABORT
|
134
|
|
135
|
--INSERT CAR DRIVE DETAIL
|
136
|
DECLARE
|
137
|
@INVOICE_NO nvarchar(100),
|
138
|
@INVOICE_DT VARCHAR(20),
|
139
|
@INVOICE_AMT DECIMAL(18,0),
|
140
|
@CAR_DR_TYPE nvarchar(200), --vietpq hieu chinh URD 09/12/2019
|
141
|
@NOTES nvarchar(MAX) --vietpq hieu chinh URD 09/12/2019
|
142
|
PRINT 'INSERT MASTER SUCCESS'
|
143
|
FETCH NEXT FROM DriveDetail INTO @INVOICE_NO,@INVOICE_DT,@INVOICE_AMT,@CAR_DR_TYPE,@NOTES
|
144
|
PRINT 'FETCH FIRST ROW'
|
145
|
|
146
|
WHILE @@FETCH_STATUS = 0
|
147
|
BEGIN
|
148
|
DECLARE @l_ID VARCHAR(15)
|
149
|
EXEC SYS_CodeMasters_Gen 'CAR_DRIVE_DT', @l_ID out
|
150
|
IF @l_ID='' OR @l_ID IS NULL GOTO ABORT
|
151
|
IF @INVOICE_DT = '' SET @INVOICE_DT = NULL
|
152
|
PRINT 'INSERT FIRST ROW'
|
153
|
INSERT INTO CAR_DRIVE_DT
|
154
|
VALUES(@l_ID ,@l_CAR_DR_ID ,@INVOICE_NO,CONVERT(DATETIME,@INVOICE_DT,103),@INVOICE_AMT, @CAR_DR_TYPE, @NOTES)
|
155
|
|
156
|
FETCH NEXT FROM DriveDetail INTO @INVOICE_NO,@INVOICE_DT,@INVOICE_AMT,@CAR_DR_TYPE,@NOTES
|
157
|
END
|
158
|
|
159
|
CLOSE DriveDetail
|
160
|
DEALLOCATE DriveDetail
|
161
|
COMMIT TRANSACTION
|
162
|
SELECT '0' as Result, @l_CAR_DR_ID CAR_DR_ID, '' ErrorDesc
|
163
|
RETURN '0'
|
164
|
ABORT:
|
165
|
BEGIN
|
166
|
ROLLBACK TRANSACTION
|
167
|
SELECT '-1' as Result, '' CAR_DR_ID, '' ErrorDesc
|
168
|
RETURN '-1'
|
169
|
End
|
170
|
GO
|
171
|
ALTER PROCEDURE [dbo].[CAR_DRIVE_Upd]
|
172
|
@p_CAR_DR_ID VARCHAR(15) = NULL,
|
173
|
@p_CAR_ID varchar(15) = NULL,
|
174
|
@p_ASSET_ID varchar(15) = NULL,
|
175
|
@p_ASSET_NAME nvarchar(200) = NULL,
|
176
|
@p_OLD_INDEX_NUMBER decimal(18) = NULL,
|
177
|
@p_NEW_INDEX_NUMBER decimal(18) = NULL,
|
178
|
@p_INDEX_NUMBER decimal(18) = NULL,
|
179
|
@p_POWER_RATE decimal(18,2) = NULL,
|
180
|
@p_POWER_RATE_INDEX decimal(18,2) = NULL,
|
181
|
@p_CURR_POWER_RATE decimal(18,2) = NULL,
|
182
|
@p_INPUT_DT VARCHAR(20) = NULL,
|
183
|
@p_ISLEAF varchar(1) = NULL,
|
184
|
@p_PARENT_ID varchar(15) = NULL,
|
185
|
@p_NOTES nvarchar(1000) = NULL,
|
186
|
@p_RECORD_STATUS varchar(1) = NULL,
|
187
|
@p_MAKER_ID varchar(12) = NULL,
|
188
|
@p_CREATE_DT VARCHAR(20) = NULL,
|
189
|
@p_AUTH_STATUS varchar(50) = NULL,
|
190
|
@p_CHECKER_ID varchar(12) = NULL,
|
191
|
@p_APPROVE_DT VARCHAR(20) = NULL,
|
192
|
@p_DR_ROUTE nvarchar(200) = NULL, --vietpq hieu chinh URD 09/12/2019
|
193
|
-- doanptt 14/02/2022
|
194
|
@p_REQ_PAY_ID VARCHAR(15) = NULL,
|
195
|
@p_NEW_FUEL_NUMBER DECIMAL(18,2) = NULL, --PhongNT 13/05/2022 Bổ sung nhiên liệu
|
196
|
@p_OLD_FUEL_NUMBER DECIMAL(18,2) = NULL,
|
197
|
@p_REQ_CAR_ID VARCHAR(15) =NULL, -- PYC XE
|
198
|
@p_DRIVE_DETAIL XML = NULL
|
199
|
AS
|
200
|
|
201
|
-- DECLARE @ERRORSYS NVARCHAR(15)
|
202
|
--
|
203
|
-- IF( @ERRORSYS <> '' )
|
204
|
-- BEGIN
|
205
|
-- SELECT ErrorCode Result, '' CAR_DR_ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
|
206
|
-- RETURN '0'
|
207
|
-- END
|
208
|
|
209
|
-- IF ( EXISTS ( SELECT 1 FROM CAR_DRIVE WHERE REQ_CAR_ID = @p_REQ_CAR_ID AND CAR_DR_ID<>@p_CAR_DR_ID))
|
210
|
-- BEGIN
|
211
|
-- SELECT '-1' Result, '' CAR_DR_ID, N'Sửa thông tin phiếu vận hành thất bại! Phiếu yêu cầu xe đã tồn tại trong thông tin vận hành xe' ErrorDesc
|
212
|
-- RETURN '-1'
|
213
|
-- END
|
214
|
DECLARE @Note NVARCHAR(max)
|
215
|
SELECT @Note=N'Chỉ số km cũ thay đổi từ: '+cast(cd.OLD_INDEX_NUMBER AS varchar(50))+' - '+cast(@p_OLD_INDEX_NUMBER AS varchar(50))+CHAR(10)+
|
216
|
N'Chỉ số km mới thay đổi từ: '+cast(cd.NEW_INDEX_NUMBER AS varchar(50))+' - '+cast(@p_NEW_INDEX_NUMBER AS varchar(50))+CHAR(10)+
|
217
|
N'Chỉ số nhiên liệu mới thay đổi từ: '+cast(cd.NEW_FUEL_NUMBER AS varchar(50))+' - '+cast(@p_NEW_FUEL_NUMBER AS varchar(50))+CHAR(10)
|
218
|
FROM CAR_DRIVE cd WHERE cd.CAR_DR_ID=@P_CAR_DR_ID
|
219
|
|
220
|
Declare @hdoc INT
|
221
|
Exec sp_xml_preparedocument @hdoc Output,@p_DRIVE_DETAIL
|
222
|
DECLARE DriveDetail CURSOR FOR
|
223
|
SELECT *
|
224
|
FROM OPENXML(@hDoc,'/Root/DriveDetail',2)
|
225
|
WITH
|
226
|
(
|
227
|
DRDT_ID VARCHAR(15),
|
228
|
INVOICE_NO nvarchar(100),
|
229
|
INVOICE_DT VARCHAR(20),
|
230
|
INVOICE_AMT DECIMAL(18,0),
|
231
|
CAR_DR_TYPE nvarchar(200), --vietpq hieu chinh URD 09/12/2019
|
232
|
NOTES nvarchar(MAX) --vietpq hieu chinh URD 09/12/2019
|
233
|
)
|
234
|
OPEN DriveDetail
|
235
|
BEGIN TRANSACTION
|
236
|
---- LUCTV 26062023_SECRETKEY: KIỂM TRA NẾU CHƯA KHAI BÁO THÔNG TIN VẬN HÀNH XE THÌ BẮT BUỘC PHẢI KHAI BÁO TRƯỚC KHI LÀM PYC XE
|
237
|
IF(NOT EXISTS(SELECT * FROM CAR_DRIVE WHERE CAR_ID =@p_CAR_ID AND ISNULL(ISLEAF,'') ='Y' ))
|
238
|
BEGIN
|
239
|
ROLLBACK TRANSACTION
|
240
|
SELECT '-1' Result, '' REQ_ID, N'Cập nhật phiếu vận hành xe thất bại. Xe chưa được khai báo thông tin số km tồn đầu, số nhiên liệu tồn đầu. Vui lòng tra cứu thông tin xe để kiểm tra thông tin' ErrorDesc
|
241
|
RETURN '-1'
|
242
|
END
|
243
|
------ LUCTV 29062023_SECRETKEY:CHỈ CHO PHÉP PHÒNG HÀNH CHÍNH HỘI SỞ ĐƯỢC PHÉP ĐIỀU CHỈNH SỐ XĂNG ĐẦU KỲ, SỐ KM ĐẦU KỲ
|
244
|
--DECLARE @l_FUEL_INDEX_FROM DECIMAL(18,2), @l_KM_INDEX_FROM DECIMAL(18,2)
|
245
|
--SET @l_FUEL_INDEX_FROM = (SELECT TOP 1 ISNULL(NEW_FUEL_NUMBER,0) FROM CAR_DRIVE WHERE CAR_ID =@p_CAR_ID AND ISNULL(ISLEAF,'') ='Y' AND RECORD_STATUS ='1')
|
246
|
--SET @l_KM_INDEX_FROM = (SELECT TOP 1 ISNULL(NEW_INDEX_NUMBER,0) FROM CAR_DRIVE WHERE CAR_ID =@p_CAR_ID AND ISNULL(ISLEAF,'') ='Y' AND RECORD_STATUS='1')
|
247
|
--IF(ISNULL(@l_FUEL_INDEX_FROM,0) <> @p_OLD_FUEL_NUMBER OR ISNULL(@l_KM_INDEX_FROM,0) <> @p_OLD_INDEX_NUMBER)
|
248
|
--BEGIN
|
249
|
-- IF(NOT EXISTS (SELECT * FROM TL_USER WHERE TLNANME=@p_MAKER_ID AND SECUR_CODE IN (SELECT DEP_ID FROM CM_DEPARTMENT WHERE DEP_CODE ='0690604')))
|
250
|
-- BEGIN
|
251
|
-- ROLLBACK TRANSACTION
|
252
|
-- SELECT '-1' Result, '' REQ_ID, N'Cập nhật phiếu vận hành xe thất bại. Bạn không được phép điều chỉnh thông tin chỉ số nhiên liệu cũ, chỉ số km cũ. Chức năng này chỉ dành cho nhóm người dùng Phòng Hành Chính - Hội Sở' ErrorDesc
|
253
|
-- RETURN '-1'
|
254
|
-- END
|
255
|
--END
|
256
|
--- END
|
257
|
DECLARE @l_CAR_DR_ID VARCHAR(15)
|
258
|
|
259
|
IF @p_INPUT_DT = '' SET @p_INPUT_DT = NULL
|
260
|
IF @p_CREATE_DT = '' SET @p_CREATE_DT = NULL
|
261
|
IF @p_APPROVE_DT = '' SET @p_APPROVE_DT = NULL
|
262
|
---- LUCTV 28062023_SECRETKEY KHI CAP NHAT THONG TIN PHIEU VAN HANH CHỈ LƯU LOG, KHÔNG CẦN UPDATE MAKKER_ID
|
263
|
UPDATE CAR_DRIVE SET [CAR_ID] = @p_CAR_ID,[ASSET_ID] = @p_ASSET_ID,[ASSET_NAME] = @p_ASSET_NAME,
|
264
|
[OLD_INDEX_NUMBER] = @p_OLD_INDEX_NUMBER,[NEW_INDEX_NUMBER] = @p_NEW_INDEX_NUMBER,
|
265
|
[INDEX_NUMBER] = @p_INDEX_NUMBER,[POWER_RATE] = @p_POWER_RATE,[POWER_RATE_INDEX] = @p_POWER_RATE_INDEX,
|
266
|
[CURR_POWER_RATE] = @p_CURR_POWER_RATE,[DR_ROUTE] = @p_DR_ROUTE,[INPUT_DT] = CONVERT(DATETIME, @p_INPUT_DT, 103),
|
267
|
[ISLEAF] = @p_ISLEAF,[PARENT_ID] = @p_PARENT_ID,[NOTES] = @p_NOTES,[RECORD_STATUS] = @p_RECORD_STATUS,
|
268
|
[CREATE_DT] = CONVERT(DATETIME, @p_CREATE_DT, 103),
|
269
|
[AUTH_STATUS] = @p_AUTH_STATUS,[CHECKER_ID] = @p_CHECKER_ID,
|
270
|
[APPROVE_DT] = CONVERT(DATETIME, @p_APPROVE_DT, 103),[REQ_PAY_ID] = @p_REQ_PAY_ID,[REQ_CAR_ID]=@p_REQ_CAR_ID,[OLD_FUEL_NUMBER]=@p_OLD_FUEL_NUMBER,[NEW_FUEL_NUMBER]=@p_NEW_FUEL_NUMBER
|
271
|
WHERE CAR_DR_ID = @p_CAR_DR_ID
|
272
|
IF @@Error <> 0 GOTO ABORT
|
273
|
|
274
|
--INSERT CAR DRIVE DETAIL
|
275
|
DECLARE
|
276
|
@DRDT_ID VARCHAR(15),
|
277
|
@INVOICE_NO nvarchar(100),
|
278
|
@INVOICE_DT VARCHAR(20),
|
279
|
@INVOICE_AMT DECIMAL(18,0),
|
280
|
@CAR_DR_TYPE nvarchar(200), --vietpq hieu chinh URD 09/12/2019
|
281
|
@NOTES nvarchar(MAX) --vietpq hieu chinh URD 09/12/2019
|
282
|
|
283
|
DELETE FROM CAR_DRIVE_DT WHERE CAR_DR_ID = @P_CAR_DR_ID
|
284
|
PRINT 'INSERT MASTER SUCCESS'
|
285
|
FETCH NEXT FROM DriveDetail INTO @DRDT_ID,@INVOICE_NO,@INVOICE_DT,@INVOICE_AMT, @CAR_DR_TYPE, @NOTES
|
286
|
PRINT 'FETCH FIRST ROW'
|
287
|
|
288
|
WHILE @@FETCH_STATUS = 0
|
289
|
BEGIN
|
290
|
IF LEN (@DRDT_ID) = 0
|
291
|
BEGIN
|
292
|
EXEC SYS_CodeMasters_Gen 'CAR_DRIVE_DT', @DRDT_ID out
|
293
|
IF @DRDT_ID='' OR @DRDT_ID IS NULL GOTO ABORT
|
294
|
END
|
295
|
IF @INVOICE_DT = '' SET @INVOICE_DT = NULL
|
296
|
PRINT 'INSERT FIRST ROW'
|
297
|
INSERT INTO CAR_DRIVE_DT
|
298
|
VALUES(@DRDT_ID ,@P_CAR_DR_ID ,@INVOICE_NO,CONVERT(DATETIME,@INVOICE_DT,103),@INVOICE_AMT,@CAR_DR_TYPE,@NOTES)
|
299
|
|
300
|
FETCH NEXT FROM DriveDetail INTO @DRDT_ID,@INVOICE_NO,@INVOICE_DT,@INVOICE_AMT, @CAR_DR_TYPE, @NOTES
|
301
|
END
|
302
|
|
303
|
CLOSE DriveDetail
|
304
|
DEALLOCATE DriveDetail
|
305
|
|
306
|
|
307
|
INSERT INTO PL_PROCESS (REQ_ID, PROCESS_ID, CHECKER_ID, APPROVE_DT, PROCESS_DESC, NOTES)
|
308
|
VALUES (@P_CAR_DR_ID, 'CAR_DIVE', @p_MAKER_ID, GETDATE(), @Note, N'Chỉnh sửa phiếu vận hành');
|
309
|
|
310
|
COMMIT TRANSACTION
|
311
|
SELECT '0' as Result, @p_CAR_DR_ID CAR_DR_ID, '' ErrorDesc
|
312
|
RETURN '0'
|
313
|
ABORT:
|
314
|
BEGIN
|
315
|
ROLLBACK TRANSACTION
|
316
|
SELECT '-1' as Result, '' CAR_DR_ID, '' ErrorDesc
|
317
|
RETURN '-1'
|
318
|
End
|
319
|
|
320
|
|
321
|
|
322
|
|