1
|
ALTER PROCEDURE [dbo].[PL_REQUEST_DOC_SendApp]
|
2
|
@p_REQ_ID VARCHAR(20),
|
3
|
@p_PROCESS_ID VARCHAR(20),
|
4
|
@p_TLNAME VARCHAR(20),
|
5
|
@p_MAKER_ID VARCHAR(20)
|
6
|
AS
|
7
|
BEGIN TRANSACTION
|
8
|
DECLARE @GD_TYPE_ID_NOT_VALIDATE VARCHAR(15)
|
9
|
SET @GD_TYPE_ID_NOT_VALIDATE =(SELECT TOP 1 GD_TYPE_ID FROM CM_GOODSTYPE WHERE GD_TYPE_CODE ='OS')
|
10
|
IF(EXISTS(SELECT * FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND (PL_BASED_ID IS NULL OR PL_BASED_ID ='')))
|
11
|
BEGIN
|
12
|
-- XÁC ĐỊNH HẠN MƯC CÒN ĐỦ HAY KO
|
13
|
--- KIEM TRA NGAN SACH LUCTV 18052020
|
14
|
DECLARE @ERROR BIT ,@EROOR_DES NVARCHAR(500)
|
15
|
SELECT @ERROR=ERROR, @EROOR_DES=ERROR_DES FROM dbo.FN_CHECK_VALIDATE_APP(@p_REQ_ID,'APPNEW','PL_REQUEST_DOC',@p_TLNAME,@p_PROCESS_ID)
|
16
|
IF(@ERROR=1)
|
17
|
BEGIN
|
18
|
ROLLBACK TRANSACTION;
|
19
|
SELECT '-1' Result, @EROOR_DES ErrorDesc
|
20
|
RETURN '-1';
|
21
|
END
|
22
|
END
|
23
|
-----
|
24
|
DECLARE @BRANCH_ID VARCHAR(20), @DEP_ID VARCHAR(20),@BRANCH_CREATE VARCHAR(20) ,@DEP_CREATE VARCHAR(20),@BRANCH_TYPE VARCHAR(10),
|
25
|
@BRANCH_CREATE_TYPE VARCHAR(10)
|
26
|
---LUCTV 11072023_SECRETKEY PHÒNG HC SẼ CÓ CƠ CHẾ CÁC TBP KIÊM NHIỆM GDDV
|
27
|
IF(EXISTS(SELECT REQ_ID FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND EXISTS(SELECT TLNANME FROM dbo.TL_USER WHERE TLNANME=SIGN_USER AND BRANCH_CREATE=TLSUBBRID
|
28
|
AND (RoleName='TPGD' OR RoleName='GDDV'))) AND NOT EXISTS(SELECT * FROM CM_DEPARTMENT WHERE DEP_ID =(SELECT ISNULL(DEP_CREATE, DEP_ID) FROM PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID) AND DEP_CODE ='0690604'))
|
29
|
BEGIN
|
30
|
ROLLBACK TRANSACTION
|
31
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Người ký nháy không được là trường phòng, trưởng đơn vị.' ErrorDesc
|
32
|
RETURN '-1'
|
33
|
END
|
34
|
IF(EXISTS(SELECT REQ_ID FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND ( CAST(REQ_DT AS DATE) > CAST(GETDATE() AS DATE))) )
|
35
|
BEGIN
|
36
|
ROLLBACK TRANSACTION
|
37
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Ngày tạo không được lớn hơn ngày hiện tại' ErrorDesc
|
38
|
RETURN '-1'
|
39
|
END
|
40
|
|
41
|
IF(EXISTS(SELECT REQ_ID FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND (REQ_NAME IS NULL OR REQ_NAME='')) )
|
42
|
BEGIN
|
43
|
ROLLBACK TRANSACTION
|
44
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Tên tờ trình bắt buộc nhập' ErrorDesc
|
45
|
RETURN '-1'
|
46
|
END
|
47
|
IF(EXISTS(SELECT REQ_ID FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND (REQ_CONTENT IS NULL OR REQ_CONTENT='')) )
|
48
|
BEGIN
|
49
|
ROLLBACK TRANSACTION
|
50
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Nội dung tờ trình bắt buộc nhập' ErrorDesc
|
51
|
RETURN '-1'
|
52
|
END
|
53
|
IF(EXISTS(SELECT REQ_ID FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND ( REQ_REASON IS NULL OR REQ_REASON='')) )
|
54
|
BEGIN
|
55
|
ROLLBACK TRANSACTION
|
56
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lý do trình chủ trương bắt buộc nhập' ErrorDesc
|
57
|
RETURN '-1'
|
58
|
END
|
59
|
IF(NOT EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID ) )
|
60
|
BEGIN
|
61
|
ROLLBACK TRANSACTION
|
62
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Danh sách hàng hóa bắt buộc nhập' ErrorDesc
|
63
|
RETURN '-1'
|
64
|
END
|
65
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC prd LEFT JOIN CM_BRANCH cb ON prd.BRANCH_ID = cb.BRANCH_ID WHERE prd.REQ_ID = @p_REQ_ID AND cb.BRANCH_CODE IN ('799','899','699')))
|
66
|
BEGIN
|
67
|
ROLLBACK TRANSACTION
|
68
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Không được chọn đơn vị tạo tờ trình là: 799, 899, 699' ErrorDesc
|
69
|
RETURN '-1'
|
70
|
END
|
71
|
---- LUCTV 26072023_SECRETKEY: FIX LỖI DEP_ID NULL DO CHỌN SAI ĐƠN VỊ TẠO TỜ TRÌNH
|
72
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC prd WHERE BRANCH_ID ='DV0001' AND ISNULL(DEP_ID,'') ='' AND REQ_ID=@p_REQ_ID))
|
73
|
BEGIN
|
74
|
ROLLBACK TRANSACTION
|
75
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Bạn đang trực thuộc Hội sở! Vui lòng chọn đơn vị tạo tờ trình là phòng ban hiện hành trên Hội Sở! Vui lòng không được chọn các đơn vị như 699,799,899' ErrorDesc
|
76
|
RETURN '-1'
|
77
|
END
|
78
|
-- GIANT 10/11/2021
|
79
|
IF(EXISTS(SELECT REQ_ID FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND PL_BASED_ID IS NOT NULL AND PL_BASED_ID <>''))
|
80
|
BEGIN
|
81
|
DECLARE @PL_BASED_ID VARCHAR(20),
|
82
|
@PL_BASE_CODE VARCHAR(20),
|
83
|
@PL_BASE_TOTAL_USED DECIMAL(18,2), -- CÓ THỂ SỬ DỤNG
|
84
|
@PL_BASE_TOTAL_PRICE DECIMAL(18,2), -- TỔNG TIỀN CỦA TTCT
|
85
|
@TOTAL_PRICE DECIMAL(18,2) -- TỔNG TIỀN CỦA TỜ TRÌNH HIỆN TẠI SỬ DỤNG
|
86
|
SET @PL_BASED_ID=(SELECT PL_BASED_ID FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID )
|
87
|
SET @PL_BASE_CODE = (SELECT REQ_CODE FROM PL_REQUEST_DOC WHERE REQ_ID = @PL_BASED_ID)
|
88
|
SET @PL_BASE_TOTAL_USED = (SELECT SUM(TOTAL_AMT) FROM PL_REQUEST_DOC WHERE PL_BASED_ID = @PL_BASED_ID AND AUTH_STATUS NOT IN ('E','R'))
|
89
|
SET @PL_BASE_TOTAL_PRICE = (SELECT TOTAL_AMT FROM PL_REQUEST_DOC WHERE REQ_ID = @PL_BASED_ID)
|
90
|
SET @TOTAL_PRICE = (SELECT TOTAL_AMT FROM PL_REQUEST_DOC WHERE REQ_ID = @p_REQ_ID)
|
91
|
--IF( EXISTS(SELECT DT.REQDT_ID FROM dbo.PL_REQUEST_DOC_DT DT WHERE DT.REQ_ID=@p_REQ_ID AND NOT EXISTS(SELECT * FROM dbo.PL_REQUEST_DOC_DT DTB WHERE DTB.REQ_ID=@PL_BASED_ID AND DTB.TRADE_ID=DT.TRADE_ID AND DTB.HANGHOA_ID=DT.HANGHOA_ID)))
|
92
|
--BEGIN
|
93
|
-- ROLLBACK TRANSACTION
|
94
|
-- SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Danh sách hàng hóa không có trong tờ trình căn cứ' ErrorDesc
|
95
|
-- RETURN '-1'
|
96
|
--END
|
97
|
|
98
|
-- KIỂM TRA CÁC TỔNG CÁC TỜ TRÌNH SỬ DỤNG TTCC VƯỢT QUÁ SỐ TIỀN CỦA TTCC CHO PHÉP HAY CHƯA
|
99
|
-- Tổng giá trị những tờ trình con đã sử dụng tờ trình số: <Lấy số TTCC ra> làm tờ trình căn cứ: 30 triệu. Giá trị còn lại có thể sử dụng: 70 triệu
|
100
|
PRINT @PL_BASE_TOTAL_PRICE - @PL_BASE_TOTAL_USED
|
101
|
IF (@PL_BASE_TOTAL_PRICE < (@PL_BASE_TOTAL_USED + @TOTAL_PRICE))
|
102
|
BEGIN
|
103
|
ROLLBACK TRANSACTION
|
104
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Tổng giá trị những tờ trình con đã sử dụng tờ trình số: ' + @PL_BASE_CODE + N' làm tờ trình căn cứ: ' + CONVERT(NVARCHAR(20),CAST(@PL_BASE_TOTAL_USED AS money),1) + N' VND. Giá trị còn lại có thể sử dụng: ' + CONVERT(NVARCHAR(20),CAST(@PL_BASE_TOTAL_PRICE - @PL_BASE_TOTAL_USED AS money),1) + ' VND' ErrorDesc
|
105
|
RETURN '-1'
|
106
|
END
|
107
|
-- KIỂM TRA HẠNG MỤC ĐƯỢC CHỌN CÓ THUỘC VÀO HẠNG MỨC CHO PHÉP CỦA TTCC
|
108
|
DECLARE LISTS CURSOR LOCAL FOR SELECT REQDT_ID,TRADE_ID,REQ_ID FROM PL_REQUEST_DOC_DT WHERE REQ_ID = @p_REQ_ID
|
109
|
OPEN LISTS
|
110
|
DECLARE @REQDT_ID VARCHAR(15),
|
111
|
@TRADE_ID VARCHAR(15),
|
112
|
@REQ_ID VARCHAR(15),
|
113
|
@COUNT INT = 1
|
114
|
|
115
|
FETCH NEXT FROM LISTS INTO @REQDT_ID,@TRADE_ID,@REQ_ID
|
116
|
WHILE @@FETCH_STATUS = 0
|
117
|
BEGIN
|
118
|
-- Chỉ sử dụng hàng hóa từ tờ trình căn cứ
|
119
|
IF (NOT EXISTS (SELECT * FROM PL_REQUEST_DOC_DT WHERE REQDT_ID = @REQDT_ID AND HANGHOA_ID IN (SELECT HANGHOA_ID FROM PL_REQUEST_DOC_DT WHERE REQ_ID = @PL_BASED_ID)))
|
120
|
BEGIN
|
121
|
ROLLBACK TRANSACTION
|
122
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm - Dòng ' + CONVERT(nvarchar(10),@COUNT) + N' : Hàng hóa mua sắm đã chọn không thuộc vào Hàng hóa mua sắm cho phép của Tờ trình căn cứ' ErrorDesc
|
123
|
RETURN '-1'
|
124
|
END
|
125
|
|
126
|
-- Chỉ sử dụng hạng mục ngân sách từ tờ trình căn cứ
|
127
|
IF (NOT EXISTS (SELECT * FROM PL_REQUEST_DOC_DT WHERE REQDT_ID = @REQDT_ID AND TRADE_ID IN (SELECT TRADE_ID FROM PL_REQUEST_DOC_DT WHERE REQ_ID = @PL_BASED_ID)))
|
128
|
BEGIN
|
129
|
ROLLBACK TRANSACTION
|
130
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm - Dòng ' + CONVERT(nvarchar(10),@COUNT) + N' : Hạng mục ngân sách đã chọn không thuộc vào hạng mục ngân sách cho phép của Tờ trình căn cứ' ErrorDesc
|
131
|
RETURN '-1'
|
132
|
END
|
133
|
|
134
|
-- SỐ NGÂN SÁCH CHỌN VƯỢT QUÁ NGÂN SÁCH CHO PHÉP CỦA HẠN MỤC ĐÓ
|
135
|
IF ((SELECT TOTAL_AMT FROM PL_REQUEST_DOC_DT WHERE REQ_ID = @PL_BASED_ID AND TRADE_ID = @TRADE_ID) < (SELECT TOTAL_AMT FROM PL_REQUEST_DOC_DT WHERE REQDT_ID = @REQDT_ID))
|
136
|
BEGIN
|
137
|
ROLLBACK TRANSACTION
|
138
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm - Dòng ' + CONVERT(nvarchar(10),@COUNT) + N' : Hạng mục ngân sách đã chọn vượt quá hạng mục cho phép của Tờ trình căn cứ' ErrorDesc
|
139
|
RETURN '-1'
|
140
|
END
|
141
|
|
142
|
IF(EXISTS(SELECT REQ_ID FROM dbo.PL_REQUEST_DOC_DT prdd WHERE REQDT_ID = @REQDT_ID AND prdd.HANGHOA_ID NOT IN (SELECT HH_ID FROM SYS_HH_GROUP_LIMIT)))
|
143
|
BEGIN
|
144
|
ROLLBACK TRANSACTION
|
145
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm - Dòng ' + CONVERT(nvarchar(10),@COUNT) + N' : Hàng hóa mua sắm đã chọn không có hạn mức phê duyệt' ErrorDesc
|
146
|
RETURN '-1'
|
147
|
END
|
148
|
|
149
|
SET @COUNT += 1
|
150
|
FETCH NEXT FROM LISTS INTO @REQDT_ID,@TRADE_ID,@REQ_ID
|
151
|
END
|
152
|
CLOSE LISTS
|
153
|
DEALLOCATE LISTS
|
154
|
|
155
|
|
156
|
END
|
157
|
|
158
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND (HANGHOA_ID IS NULL OR HANGHOA_ID ='')) )
|
159
|
BEGIN
|
160
|
ROLLBACK TRANSACTION
|
161
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Hàng hóa bắt buộc nhập' ErrorDesc
|
162
|
RETURN '-1'
|
163
|
END
|
164
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND (GOODS_ID IS NULL OR GOODS_ID ='')) )
|
165
|
BEGIN
|
166
|
ROLLBACK TRANSACTION
|
167
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Hạng mục ngân sách bắt buộc nhập' ErrorDesc
|
168
|
RETURN '-1'
|
169
|
END
|
170
|
|
171
|
IF(EXISTS(SELECT REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND (TOTAL_AMT IS NULL OR TOTAL_AMT = 0)) )
|
172
|
BEGIN
|
173
|
ROLLBACK TRANSACTION
|
174
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới điều chuyển ngân sách: Vui lòng nhập số tiền điều chuyển' ErrorDesc
|
175
|
RETURN '-1'
|
176
|
END
|
177
|
|
178
|
IF(EXISTS(SELECT REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER A
|
179
|
LEFT JOIN CM_BRANCH cb ON A.FR_BRN_ID = cb.BRANCH_ID
|
180
|
LEFT JOIN CM_DEPARTMENT cd ON A.FR_DEP_ID = cd.DEP_ID
|
181
|
WHERE REQ_DOC_ID=@p_REQ_ID
|
182
|
AND ((FR_BRN_ID = 'DV0001' AND FR_DEP_ID IN ('DEP000000000001','DEP000000000024'))
|
183
|
OR cb.BRANCH_CODE IN ('DV0003','000','799','899','699'))))
|
184
|
BEGIN
|
185
|
ROLLBACK TRANSACTION
|
186
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới điều chuyển ngân sách: Đơn vị chuyển không hợp lệ, vui lòng không chọn Hội sở - Chung, Chung - CNTT, KV Tổng, KV Khác' ErrorDesc
|
187
|
RETURN '-1'
|
188
|
END
|
189
|
|
190
|
SELECT @BRANCH_CREATE=BRANCH_CREATE,@DEP_CREATE=DEP_CREATE FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID
|
191
|
-- KIEM TRA NEU HINH THUC CHI DINH THAU LA THEO QUY DINH VCCB THI KHONG CHO PHEP CHON NHA CUNG CAP
|
192
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC_DT WHERE TRADE_TYPE ='VCCB' AND SUP_ID <>'' AND SUP_ID IS NOT NULL AND REQ_ID =@p_REQ_ID))
|
193
|
BEGIN
|
194
|
SELECT 'REQ-00001' Result, '' REQ_ID, N'Nếu hình thức mua sắm theo quy định VCCB thì bạn không được phép chọn nhà cung cấp. Vui lòng để trống nhà cung cấp' ErrorDesc
|
195
|
ROLLBACK TRANSACTION
|
196
|
RETURN '-1'
|
197
|
END
|
198
|
--- LUCTV 06-03-2023 KIEM TRA THEM NEU MUA SAM THEO QUY DINH VCCB THI KHONG DUOC PHEP NHAP LY DO CHI DINH
|
199
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC_DT WHERE TRADE_TYPE ='VCCB' AND [NAME] <>'' AND [NAME] IS NOT NULL AND REQ_ID =@p_REQ_ID))
|
200
|
BEGIN
|
201
|
SELECT 'REQ-00001' Result, '' REQ_ID, N'Nếu hình thức mua sắm theo quy định VCCB thì bạn không được phép nhập lý do chỉ định thầu. Vui lòng để trống lý do chỉ định thầu' ErrorDesc
|
202
|
ROLLBACK TRANSACTION
|
203
|
RETURN '-1'
|
204
|
END
|
205
|
--
|
206
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC_DT WHERE TRADE_TYPE ='CDT' AND ( SUP_ID ='' OR SUP_ID IS NULL) AND REQ_ID =@p_REQ_ID))
|
207
|
BEGIN
|
208
|
SELECT 'REQ-00001' Result, '' REQ_ID, N'Nếu hình thức mua sắm chỉ định thầu thì bạn không được phép bỏ trống nhà cung cấp. Vui lòng chọn nhà cung cấp' ErrorDesc
|
209
|
ROLLBACK TRANSACTION
|
210
|
RETURN '-1'
|
211
|
END
|
212
|
---- NEU HINH THUC MUA SAM CHI DINH THAU THI KHONG DUOC PHEP DE TRONG LY DO CHI DINH
|
213
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC_DT WHERE TRADE_TYPE ='CDT' AND ( [NAME] ='' OR [NAME] IS NULL) AND REQ_ID =@p_REQ_ID))
|
214
|
BEGIN
|
215
|
SELECT 'REQ-00001' Result, '' REQ_ID, N'Lưới Danh sách hàng hóa: Nếu hình thức mua sắm chỉ định thầu thì bạn không được phép bỏ trống lý do chỉ định thầu. Vui lòng nhập lý do chỉ định thầu' ErrorDesc
|
216
|
ROLLBACK TRANSACTION
|
217
|
RETURN '-1'
|
218
|
END
|
219
|
--
|
220
|
--LUCTV: 04052021 BO SUNG RANG BUOC NEU TIEN TE LA VND THI DON GIA BAO GOM VAT * SO LUONG MUA MUA = VOI NS SU DUNG
|
221
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND ROUND(QUANTITY * PRICE,0) <> ROUND(TOTAL_AMT,0) AND CURRENCY='VND'))
|
222
|
BEGIN
|
223
|
ROLLBACK TRANSACTION
|
224
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Đối với tiền tệ VNĐ, Cột Ngân sách sử dụng chưa khớp với Đơn giá bao gồm VAT * Số lượng trình mua sắm ' ErrorDesc
|
225
|
RETURN '-1'
|
226
|
END
|
227
|
IF(EXISTS(SELECT REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND FR_BRN_ID=@BRANCH_CREATE AND (FR_GOOD_ID IS NULL OR FR_GOOD_ID='')
|
228
|
AND ((FR_DEP_ID=@DEP_CREATE) OR ((@DEP_CREATE IS NULL OR @DEP_CREATE='') AND (FR_DEP_ID IS NULL OR FR_DEP_ID=''))) ))
|
229
|
BEGIN
|
230
|
ROLLBACK TRANSACTION
|
231
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Bạn là đơn vị chuyển ngân sách, vui lòng chọn hạn mục ngân sách chuyển' ErrorDesc
|
232
|
RETURN '-1'
|
233
|
END
|
234
|
--- 06.04.2023 LUCTV BỔ SUNG LỆNH CHẶN KHÔNG CHO ĐIỀU CHUYỂN NGÂN SÁCH CỦA NĂM CŨ
|
235
|
IF(EXISTS(SELECT * FROM PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND TO_PLAN_ID IN (SELECT PLAN_ID FROM PL_MASTER WHERE YEAR < YEAR(GETDATE()))))
|
236
|
BEGIN
|
237
|
ROLLBACK TRANSACTION
|
238
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới điều chuyển ngân sách: Bạn không được phép điều chuyển ngân sách của năm cũ sang năm hiện hành' ErrorDesc
|
239
|
RETURN '-1'
|
240
|
END
|
241
|
---- END
|
242
|
IF(EXISTS(SELECT Temp.TRADE_ID FROM (
|
243
|
SELECT TB.TRADE_ID ,SUM(TB.TOTAL_AMT) AS TOTAL_AMT_EXE,
|
244
|
SUM(ISNULL(PT.AMT_APP,0) + ISNULL(PT.AMT_RECEIVE_TF,0) - ISNULL(PT.AMT_TF,0) - ISNULL(PT.AMT_ETM,0)) AS TOTAL_AMT_REMAIN
|
245
|
FROM dbo.PL_REQUEST_DOC_DT TB
|
246
|
LEFT JOIN dbo.PL_TRADEDETAIL PT ON PT.TRADE_ID=TB.TRADE_ID
|
247
|
INNER JOIN PL_REQUEST_DOC PL ON TB.REQ_ID = PL.REQ_ID
|
248
|
WHERE TB.REQ_ID=@p_REQ_ID AND TB.REQDT_TYPE='I'
|
249
|
---- LUCTV 06.02.2023 BỔ SUNG THÊM ĐIỀU KIỆN TỜ TRÌNH ĐÓ KHÔNG PHẢI LÀ TỜ TRÌNH CĂN CỨ
|
250
|
AND ISNULL(PL.PL_BASED_ID,'') =''
|
251
|
--- END LUCTV 06.02.23
|
252
|
AND PT.GOODS_ID NOT IN (SELECT ISNULL(GD_ID,'') FROM CM_GOODS WHERE GD_TYPE_ID =@GD_TYPE_ID_NOT_VALIDATE)
|
253
|
GROUP BY TB.TRADE_ID
|
254
|
)Temp
|
255
|
WHERE Temp.TOTAL_AMT_EXE > Temp.TOTAL_AMT_REMAIN))
|
256
|
BEGIN
|
257
|
ROLLBACK TRANSACTION
|
258
|
SELECT '-1' AS RESULT , '' REQ_CODE,'' REQ_ID, N'Số tiền sử dụng lớn hơn số tiền dự kiến còn lại của hạng mục trong ngân sách' ErrorDesc
|
259
|
RETURN '-1'
|
260
|
END
|
261
|
|
262
|
IF( EXISTS(SELECT GOODS_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND REQDT_TYPE='O') AND NOT EXISTS(SELECT * FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND TO_GOOD_ID IN (SELECT GOODS_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND REQDT_TYPE='O')))
|
263
|
BEGIN
|
264
|
ROLLBACK TRANSACTION
|
265
|
SELECT '-1' AS RESULT ,'' REQ_CODE, '' REQ_ID, N'Hạng mục ngoài ngân sách, vui lòng thêm danh sách điều chuyển ngân sách' ErrorDesc
|
266
|
RETURN '-1'
|
267
|
END
|
268
|
IF( NOT EXISTS(SELECT GOODS_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND REQDT_TYPE='O') AND EXISTS(SELECT * FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND TO_GOOD_ID IN (SELECT GOODS_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND REQDT_TYPE='O')))
|
269
|
BEGIN
|
270
|
ROLLBACK TRANSACTION
|
271
|
SELECT '-1' AS RESULT ,'' REQ_CODE, '' REQ_ID, N'Hạng mục trong ngân sách, vui lòng không thêm danh sách điều chuyển ngân sách' ErrorDesc
|
272
|
RETURN '-1'
|
273
|
END
|
274
|
IF( EXISTS(SELECT PLDT.GOODS_ID FROM dbo.PL_REQUEST_DOC_DT PLDT WHERE PLDT.REQ_ID=@p_REQ_ID AND PLDT.REQDT_TYPE='O' AND NOT EXISTS(SELECT PLTF.REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER PLTF WHERE PLTF.TO_GOOD_ID=PLDT.GOODS_ID AND ISNULL(PLTF.TO_TRADE_ID,'')=ISNULL(PLDT.TRADE_ID,''))) )
|
275
|
BEGIN
|
276
|
ROLLBACK TRANSACTION
|
277
|
SELECT '-1' AS RESULT ,'' REQ_CODE, '' REQ_ID, N'Hạng mục ngoài ngân sách, vui lòng nhập danh sách điều chuyển ngân sách' ErrorDesc
|
278
|
RETURN '-1'
|
279
|
END
|
280
|
|
281
|
|
282
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND (PRICE IS NULL OR PRICE=0 OR QUANTITY IS NULL OR QUANTITY=0)) )
|
283
|
BEGIN
|
284
|
ROLLBACK TRANSACTION
|
285
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Số luợng, đơn giá của hàng hóa bắt buộc nhập' ErrorDesc
|
286
|
RETURN '-1'
|
287
|
END
|
288
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND (DESCRIPTION IS NULL OR DESCRIPTION='')) )
|
289
|
BEGIN
|
290
|
ROLLBACK TRANSACTION
|
291
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Quy cách kỹ thuật bắt buộc nhập' ErrorDesc
|
292
|
RETURN '-1'
|
293
|
END
|
294
|
|
295
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND (UNIT_NAME IS NULL OR UNIT_NAME='')) )
|
296
|
BEGIN
|
297
|
ROLLBACK TRANSACTION
|
298
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Đơn vị tính bắt buộc nhập' ErrorDesc
|
299
|
RETURN '-1'
|
300
|
END
|
301
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.PL_REQUEST_DOC_DT WHERE REQ_ID=@p_REQ_ID AND (UNIT_NAME IS NULL OR UNIT_NAME='')) )
|
302
|
BEGIN
|
303
|
ROLLBACK TRANSACTION
|
304
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Đây là thông tin bắt buộc nhập' ErrorDesc
|
305
|
RETURN '-1'
|
306
|
END
|
307
|
--- LUCTV 14.11.2022 CHECK NEU CO DIEU CHUYEN NGAN SACH THI DON VI NHAN, DON VI CHUYEN PHAI KHAC NULL
|
308
|
IF(EXISTS(SELECT REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND (ISNULL(FR_BRN_ID,'')='' OR ISNULL(TO_BRN_ID,'')='')))
|
309
|
BEGIN
|
310
|
ROLLBACK TRANSACTION
|
311
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới điều chuyển ngân sách: Đơn vị chuyển, đơn vị nhận không được phép để trống' ErrorDesc
|
312
|
RETURN '-1'
|
313
|
END
|
314
|
IF(EXISTS(SELECT REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND (ISNULL(FR_BRN_ID,'')='DV0001' AND ISNULL(FR_DEP_ID,'')='')))
|
315
|
BEGIN
|
316
|
ROLLBACK TRANSACTION
|
317
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới điều chuyển ngân sách: Đơn vị chuyển ngân sách nếu ở Hội Sở thì bạn phải chọn cụ thể phòng ban' ErrorDesc
|
318
|
RETURN '-1'
|
319
|
END
|
320
|
IF(EXISTS(SELECT REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID AND (ISNULL(TO_BRN_ID,'')='DV0001' AND ISNULL(TO_DEP_ID,'')='')))
|
321
|
BEGIN
|
322
|
ROLLBACK TRANSACTION
|
323
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới điều chuyển ngân sách: Đơn vị nhận ngân sách nếu ở Hội Sở thì bạn phải cụ thể chọn phòng ban' ErrorDesc
|
324
|
RETURN '-1'
|
325
|
END
|
326
|
IF(EXISTS(SELECT REQ_TRANSFER_ID FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID)) --- LUCTV: 25052023_secretkey_NẾU TỜ TRÌNH ĐIỀU CHUYỂN THÌ KHÔNG CHO CHỌN ĐVCM TÀI CHÍNH
|
327
|
BEGIN
|
328
|
IF(EXISTS (SELECT * FROM PL_REQUEST_COSTCENTER WHERE REQ_ID=@p_REQ_ID AND (COST_ID ='DM0000000000048' OR DVMD_ID='DM0000000000048')))
|
329
|
BEGIN
|
330
|
ROLLBACK TRANSACTION
|
331
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Đây là tờ trình điều chuyển, hệ thống sẽ tự động chuyển sang phòng Tài Chính. Vui lòng gỡ DVCM Tài Chính khỏi danh sách đơn vị chuyên môn' ErrorDesc
|
332
|
RETURN '-1'
|
333
|
END
|
334
|
END
|
335
|
--- LUCTV 20062023_SECRETKEY TẠI HỘI SỞ, CHỈ ĐƯỢC PHÉP SỬ DỤNG NGÂN SÁCH TRONG KẾ HOẠCH (TỨC ĐÃ ĐƯỢC IMPORT VÀO HỆ THỐNG)
|
336
|
SET @BRANCH_CREATE_TYPE=(SELECT BRANCH_TYPE FROM dbo.CM_BRANCH WHERE BRANCH_ID=@BRANCH_CREATE)
|
337
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC_DT WHERE REQ_ID =@p_REQ_ID AND ISNULL(KHOI_ID,'')='' AND @BRANCH_CREATE_TYPE ='HS'))
|
338
|
BEGIN
|
339
|
ROLLBACK TRANSACTION
|
340
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Lưới hàng hóa mua sắm: Tại hạng mục "'+ (SELECT TOP 1 ISNULL(DESCRIPTION,'') FROM PL_REQUEST_DOC_DT WHERE REQ_ID =@p_REQ_ID AND ISNULL(KHOI_ID,'')='')+N'" đang tồn tại mã hạng mục ngân sách chưa xác định thuộc đơn vị đầu mối nào quản lý. Vui lòng kiểm tra lại với đơn vị Tài Chính để xác định lại đơn vị đầu mối quản lý ngân sách' ErrorDesc
|
341
|
RETURN '-1'
|
342
|
END
|
343
|
---- END LUCTV
|
344
|
DECLARE lstTransfer CURSOR FOR
|
345
|
SELECT FR_GOOD_ID,TO_GOOD_ID FROM dbo.PL_REQUEST_TRANSFER WHERE REQ_DOC_ID=@p_REQ_ID
|
346
|
OPEN lstTransfer
|
347
|
DECLARE @FR_GOOD_ID VARCHAR(20),@TO_GOOD_ID VARCHAR(20)
|
348
|
|
349
|
FETCH NEXT FROM lstTransfer INTO @FR_GOOD_ID,@TO_GOOD_ID
|
350
|
WHILE @@FETCH_STATUS=0
|
351
|
BEGIN
|
352
|
IF(@FR_GOOD_ID IS NOT NULL AND @FR_GOOD_ID<>'')
|
353
|
BEGIN
|
354
|
DECLARE @FR_GD_TYPE VARCHAR(20),@TO_GD_TYPE VARCHAR(20)
|
355
|
|
356
|
SET @FR_GD_TYPE =(SELECT GT.GD_TYPE_ID FROM
|
357
|
(
|
358
|
SELECT GD_CODE FROM dbo.CM_GOODS WHERE GD_ID=@FR_GOOD_ID
|
359
|
) CG
|
360
|
LEFT JOIN dbo.CM_GOODSTYPE GT ON CG.GD_CODE LIKE '%.' + GT.GD_TYPE_CODE +'.%')
|
361
|
|
362
|
|
363
|
SET @TO_GD_TYPE =(SELECT GT.GD_TYPE_ID FROM
|
364
|
(
|
365
|
SELECT GD_CODE FROM dbo.CM_GOODS WHERE GD_ID=@TO_GOOD_ID
|
366
|
) CG
|
367
|
LEFT JOIN dbo.CM_GOODSTYPE GT ON CG.GD_CODE LIKE '%.' + GT.GD_TYPE_CODE +'.%')
|
368
|
|
369
|
IF(NOT EXISTS(SELECT * FROM dbo.CM_GOODSTYPE WHERE GD_TYPE_ID= @FR_GD_TYPE AND @TO_GD_TYPE IN (SELECT value FROM dbo.wsiSplit(NOTES,';')) ) )
|
370
|
BEGIN
|
371
|
DECLARE @FR_GD_TYPE_NAME NVARCHAR(100),@TO_GD_TYPE_NAME NVARCHAR(100)
|
372
|
SET @FR_GD_TYPE_NAME=(SELECT GD_TYPE_NAME FROM dbo.CM_GOODSTYPE WHERE GD_TYPE_ID=@FR_GD_TYPE)
|
373
|
SET @TO_GD_TYPE_NAME=(SELECT GD_TYPE_NAME FROM dbo.CM_GOODSTYPE WHERE GD_TYPE_ID=@TO_GD_TYPE)
|
374
|
|
375
|
ROLLBACK TRANSACTION
|
376
|
SELECT '-1' AS Result ,'' REQ_CODE, '' REQ_ID, N'Không được điều chuyển từ ' + @FR_GD_TYPE_NAME +N' sang ' + @TO_GD_TYPE_NAME ErrorDesc
|
377
|
CLOSE lstTransfer
|
378
|
DEALLOCATE lstTransfer
|
379
|
RETURN '-1'
|
380
|
END
|
381
|
END
|
382
|
FETCH NEXT FROM lstTransfer INTO @FR_GOOD_ID,@TO_GOOD_ID
|
383
|
END
|
384
|
CLOSE lstTransfer
|
385
|
DEALLOCATE lstTransfer
|
386
|
--END
|
387
|
UPDATE dbo.PL_REQUEST_DOC SET AUTH_STATUS='U',PROCESS_ID='APPNEW' WHERE REQ_ID=@p_REQ_ID
|
388
|
SELECT @BRANCH_ID =BRANCH_ID,@DEP_ID=DEP_ID,@BRANCH_CREATE=BRANCH_CREATE,@DEP_CREATE=DEP_CREATE FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID
|
389
|
|
390
|
SET @BRANCH_TYPE=(SELECT BRANCH_TYPE FROM dbo.CM_BRANCH WHERE BRANCH_ID=@BRANCH_ID)
|
391
|
SET @BRANCH_CREATE_TYPE=(SELECT BRANCH_TYPE FROM dbo.CM_BRANCH WHERE BRANCH_ID=@BRANCH_CREATE)
|
392
|
|
393
|
|
394
|
--IF(@BRANCH_TYPE='PGD')
|
395
|
-- SET @BRANCH_ID=(SELECT BRANCH_ID FROM dbo.CM_BRANCH WHERE BRANCH_ID=@BRANCH_ID)
|
396
|
DELETE FROM dbo.PL_REQUEST_PROCESS WHERE REQ_ID=@p_REQ_ID
|
397
|
---- LUCTV:30112023_SECRETKEY KIỂM TRA NẾU HÀNG HÓA MUA SẮM THUỘC NHÓM NÀY VÀ TỔNG GIÁ TRỊ TỜ TRÌNH TRÊN 50 TRIỆU SẼ QUA ĐƠN VỊ TÀI CHÍNH
|
398
|
IF EXISTS (SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@p_REQ_ID AND ISNULL(PL_BASED_ID,'')= '')
|
399
|
BEGIN
|
400
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC_DT WHERE REQ_ID =@p_REQ_ID AND HANGHOA_ID IN (SELECT HH_ID FROM CM_HANGHOA WHERE HH_CODE IN ('SPMKT-002-000002','SPMKT-002-999999','SPMKT-002-000002'))
|
401
|
AND (SELECT SUM(TOTAL_AMT) FROM PL_REQUEST_DOC_DT WHERE REQ_ID =@p_REQ_ID) >50000000))
|
402
|
BEGIN
|
403
|
DECLARE @l_REQ_COST_ID VARCHAR(15)
|
404
|
EXEC SYS_CodeMasters_Gen 'PL_REQUEST_COSTCENTER', @l_REQ_COST_ID OUT
|
405
|
IF @l_REQ_COST_ID='' OR @l_REQ_COST_ID IS NULL GOTO ABORT
|
406
|
INSERT INTO PL_REQUEST_COSTCENTER (REQ_COST_ID, COST_ID, REQ_ID,AUTH_STATUS,MAKER_ID,DVMD_ID, CHECKER_ID, NOTES,CREATE_DT)
|
407
|
VALUES (@l_REQ_COST_ID,'DM0000000000048',@p_REQ_ID,'U',(SELECT MAKER_ID FROM PL_REQUEST_DOC_DT WHERE REQ_ID =@p_REQ_ID),'','','',GETDATE())
|
408
|
END
|
409
|
|
410
|
END
|
411
|
-----
|
412
|
---KIEM TRA XEM CO CAP PHE DUYET TRUNG GIAN HAY KHONG 20-05-2020 LUCTV
|
413
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@p_REQ_ID AND SIGN_USER IS NOT NULL AND SIGN_USER <>''))
|
414
|
BEGIN
|
415
|
DECLARE @BRANCH_SIGN_ID VARCHAR(20),@DEP_SIGN_ID VARCHAR(20),@BRANCH_SIGN_TYPE VARCHAR(10),@ROLE_SIGN VARCHAR(20), @TL_USER_ID INT
|
416
|
|
417
|
SELECT @TL_USER_ID = ID, @BRANCH_SIGN_ID=TLSUBBRID,@DEP_SIGN_ID=SECUR_CODE,@BRANCH_SIGN_TYPE=BRANCH_TYPE,@ROLE_SIGN=RoleName FROM dbo.TL_USER WHERE TLNANME =(SELECT SIGN_USER FROM PL_REQUEST_DOC WHERE REQ_ID =@p_REQ_ID)
|
418
|
|
419
|
SET @ROLE_SIGN = (SELECT TOP 1 B.DisplayName FROM AbpUserRoles A
|
420
|
INNER JOIN AbpRoles B ON A.RoleId = B.Id
|
421
|
WHERE A.UserId = @TL_USER_ID)
|
422
|
|
423
|
UPDATE dbo.PL_REQUEST_DOC SET AUTH_STATUS='U',PROCESS_ID='SIGN', TOTAL_AMT =(SELECT ISNULL(SUM(TOTAL_AMT),0) FROM PL_REQUEST_DOC_DT WHERE REQ_ID =@p_REQ_ID) WHERE REQ_ID=@p_REQ_ID
|
424
|
INSERT INTO dbo.PL_REQUEST_PROCESS
|
425
|
(
|
426
|
REQ_ID,
|
427
|
PROCESS_ID,
|
428
|
STATUS,
|
429
|
ROLE_USER,
|
430
|
BRANCH_ID,
|
431
|
DEP_ID,
|
432
|
CHECKER_ID,
|
433
|
APPROVE_DT,
|
434
|
PARENT_PROCESS_ID,
|
435
|
IS_LEAF,
|
436
|
COST_ID,
|
437
|
DVDM_ID,
|
438
|
NOTES,
|
439
|
IS_HAS_CHILD
|
440
|
)
|
441
|
VALUES
|
442
|
( @p_REQ_ID, -- REQ_ID - varchar(15)
|
443
|
'SIGN', -- PROCESS_ID - varchar(10)
|
444
|
'C', -- STATUS - varchar(5)
|
445
|
@ROLE_SIGN, -- ROLE_USER - varchar(50)
|
446
|
@BRANCH_SIGN_ID,
|
447
|
CASE WHEN @BRANCH_SIGN_TYPE='HS' THEN @DEP_SIGN_ID ELSE '' END, -- BRANCH_ID - varchar(15)
|
448
|
'', -- CHECKER_ID - varchar(15)
|
449
|
NULL, -- APPROVE_DT - datetime
|
450
|
'', -- PARENT_PROCESS_ID - varchar(10)
|
451
|
'N', -- IS_LEAF - varchar(1)
|
452
|
'', -- COST_ID - varchar(15)
|
453
|
'', -- DVDM_ID - varchar(15)
|
454
|
N'Chờ cấp phê duyệt trung gian xác nhận phiếu', -- NOTES - nvarchar(500)
|
455
|
NULL -- IS_HAS_CHILD - bit
|
456
|
)
|
457
|
END
|
458
|
ELSE -- NGUOC LAI KHONG CO CAP PHE DUYET TRUNG GIAN
|
459
|
BEGIN
|
460
|
IF(@BRANCH_TYPE ='PGD') --- 11102023_SECRETKEY: PHÂN LOẠI ROLE CỦA PGD VỚI CN/ HỘI SỞ
|
461
|
BEGIN
|
462
|
INSERT INTO dbo.PL_REQUEST_PROCESS
|
463
|
(
|
464
|
REQ_ID,
|
465
|
PROCESS_ID,
|
466
|
STATUS,
|
467
|
ROLE_USER,
|
468
|
BRANCH_ID,
|
469
|
DEP_ID,
|
470
|
CHECKER_ID,
|
471
|
APPROVE_DT,
|
472
|
PARENT_PROCESS_ID,
|
473
|
IS_LEAF,
|
474
|
COST_ID,
|
475
|
DVDM_ID,
|
476
|
NOTES,
|
477
|
IS_HAS_CHILD
|
478
|
)
|
479
|
VALUES
|
480
|
( @p_REQ_ID, -- REQ_ID - varchar(15)
|
481
|
'APPNEW', -- PROCESS_ID - varchar(10)
|
482
|
'C', -- STATUS - varchar(5)
|
483
|
'TPGD', -- ROLE_USER - varchar(50)
|
484
|
@BRANCH_ID,
|
485
|
@DEP_ID, -- BRANCH_ID - varchar(15)
|
486
|
'', -- CHECKER_ID - varchar(15)
|
487
|
NULL, -- APPROVE_DT - datetime
|
488
|
'', -- PARENT_PROCESS_ID - varchar(10)
|
489
|
'N', -- IS_LEAF - varchar(1)
|
490
|
'', -- COST_ID - varchar(15)
|
491
|
'', -- DVDM_ID - varchar(15)
|
492
|
-- N'Chờ trưởng đơn vị phê duyệt', -- NOTES - nvarchar(500)
|
493
|
N'Chờ trưởng đơn vị phê duyệt' ,
|
494
|
NULL -- IS_HAS_CHILD - bit
|
495
|
)
|
496
|
|
497
|
END
|
498
|
ELSE
|
499
|
BEGIN
|
500
|
INSERT INTO dbo.PL_REQUEST_PROCESS
|
501
|
(
|
502
|
REQ_ID,
|
503
|
PROCESS_ID,
|
504
|
STATUS,
|
505
|
ROLE_USER,
|
506
|
BRANCH_ID,
|
507
|
DEP_ID,
|
508
|
CHECKER_ID,
|
509
|
APPROVE_DT,
|
510
|
PARENT_PROCESS_ID,
|
511
|
IS_LEAF,
|
512
|
COST_ID,
|
513
|
DVDM_ID,
|
514
|
NOTES,
|
515
|
IS_HAS_CHILD
|
516
|
)
|
517
|
VALUES
|
518
|
( @p_REQ_ID, -- REQ_ID - varchar(15)
|
519
|
'APPNEW', -- PROCESS_ID - varchar(10)
|
520
|
'C', -- STATUS - varchar(5)
|
521
|
'GDDV', -- ROLE_USER - varchar(50)
|
522
|
@BRANCH_ID,
|
523
|
@DEP_ID, -- BRANCH_ID - varchar(15)
|
524
|
'', -- CHECKER_ID - varchar(15)
|
525
|
NULL, -- APPROVE_DT - datetime
|
526
|
'', -- PARENT_PROCESS_ID - varchar(10)
|
527
|
'N', -- IS_LEAF - varchar(1)
|
528
|
'', -- COST_ID - varchar(15)
|
529
|
'', -- DVDM_ID - varchar(15)
|
530
|
-- N'Chờ trưởng đơn vị phê duyệt', -- NOTES - nvarchar(500)
|
531
|
N'Chờ trưởng đơn vị phê duyệt' ,
|
532
|
NULL -- IS_HAS_CHILD - bit
|
533
|
)
|
534
|
|
535
|
END
|
536
|
END
|
537
|
INSERT INTO dbo.PL_PROCESS
|
538
|
(
|
539
|
REQ_ID,
|
540
|
PROCESS_ID,
|
541
|
CHECKER_ID,
|
542
|
APPROVE_DT,
|
543
|
PROCESS_DESC,
|
544
|
NOTES
|
545
|
)
|
546
|
VALUES
|
547
|
( @p_REQ_ID, -- REQ_ID - varchar(15)
|
548
|
--@p_PROCESS_ID, -- PROCESS_ID - varchar(10)
|
549
|
'SEND',
|
550
|
@p_TLNAME, -- CHECKER_ID - varchar(15)
|
551
|
GETDATE(), -- APPROVE_DT - datetime
|
552
|
N'Người tạo tờ trình gửi phê duyệt thành công' , -- PROCESS_DESC - nvarchar(1000)
|
553
|
N'Nhân viên gửi phê duyệt ' -- NOTES - nvarchar(1000)
|
554
|
)
|
555
|
|
556
|
|
557
|
|
558
|
IF @@Error <> 0 GOTO ABORT
|
559
|
COMMIT TRANSACTION
|
560
|
IF(EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@p_REQ_ID AND PROCESS_ID ='SIGN'))
|
561
|
BEGIN
|
562
|
SELECT '0' as Result,'' REQ_CODE,''REQ_ID, (SELECT PROCESS_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@p_REQ_ID) Attr1, N'Tờ trình số: '+(SELECT REQ_CODE FROM PL_REQUEST_DOC WHERE REQ_ID = @p_REQ_ID)+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 phiếu' ErrorDesc
|
563
|
RETURN '0'
|
564
|
END
|
565
|
ELSE
|
566
|
BEGIN
|
567
|
SELECT '0' as Result,'' REQ_CODE,''REQ_ID, (SELECT PROCESS_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@p_REQ_ID) Attr1, N'Tờ trình số: '+(SELECT REQ_CODE FROM PL_REQUEST_DOC WHERE REQ_ID = @p_REQ_ID)+N' đã được gửi phê duyệt thành công. Vui lòng đợi trưởng đơn vị phê duyệt phiếu' ErrorDesc
|
568
|
RETURN '0'
|
569
|
END
|
570
|
ABORT:
|
571
|
BEGIN
|
572
|
ROLLBACK TRANSACTION
|
573
|
SELECT '-1' as Result,'' REQ_CODE,''REQ_ID, '' ErrorDesc
|
574
|
RETURN '-1'
|
575
|
End
|