1
|
|
2
|
ALTER PROCEDURE [dbo].[TR_REQ_PROCESS_CHILD_Upd]
|
3
|
@p_REQ_ID VARCHAR(20),
|
4
|
@p_PROCESS_ID VARCHAR(20),
|
5
|
@p_TLNAME VARCHAR(20),
|
6
|
@p_MAKER_ID VARCHAR(20),
|
7
|
@p_TYPE_JOB VARCHAR(20),
|
8
|
@p_REF_ID INT
|
9
|
AS
|
10
|
BEGIN TRANSACTION
|
11
|
|
12
|
DECLARE @LEVEL INT
|
13
|
|
14
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID AND TRAN_TYPE_ID NOT IN (SELECT TRAN_TYPE_ID FROM dbo.CM_TRAN_TYPE WHERE NOTES='XK') AND (PRICE IS NULL OR PRICE=0) ))
|
15
|
BEGIN
|
16
|
ROLLBACK TRANSACTION
|
17
|
SELECT -1 as Result, N'Lưới thông tin chi tiết mua sắm thực tế: Vui lòng nhập đơn giá thực tế' ErrorDesc
|
18
|
RETURN -1
|
19
|
END
|
20
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID AND (SUP_ID IS NULL OR SUP_ID='') ))
|
21
|
BEGIN
|
22
|
ROLLBACK TRANSACTION
|
23
|
SELECT -1 as Result, N'Lưới thông tin chi tiết mua sắm thực tế: Vui lòng chọn nhà cung cấp có sẵn trong hệ thống hoặc lựa chọn nhà cung cấp thông qua hồ sơ thầu' ErrorDesc
|
24
|
RETURN -1
|
25
|
END
|
26
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID AND (TRAN_TYPE_ID IS NULL OR TRAN_TYPE_ID='') ))
|
27
|
BEGIN
|
28
|
ROLLBACK TRANSACTION
|
29
|
SELECT -1 as Result, N'Lưới thông tin chi tiết mua sắm thực tế: Vui lòng chọn hình thức mua sắm' ErrorDesc
|
30
|
RETURN -1
|
31
|
END
|
32
|
UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='P'
|
33
|
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND TLNAME=@p_TLNAME AND TYPE_JOB='XL'
|
34
|
SET @LEVEL=ISNULL((SELECT TOP 1 LEVEL_JOB
|
35
|
FROM dbo.PL_REQUEST_PROCESS_CHILD
|
36
|
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND TLNAME=@p_TLNAME AND TYPE_JOB='XL'
|
37
|
ORDER BY LEVEL_JOB DESC),0)
|
38
|
|
39
|
UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='C'
|
40
|
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND LEVEL_JOB=(@LEVEL-1)
|
41
|
|
42
|
|
43
|
INSERT INTO dbo.PL_PROCESS
|
44
|
(
|
45
|
REQ_ID,
|
46
|
PROCESS_ID,
|
47
|
CHECKER_ID,
|
48
|
APPROVE_DT,
|
49
|
PROCESS_DESC,
|
50
|
NOTES
|
51
|
)
|
52
|
VALUES
|
53
|
( @p_REQ_ID, -- REQ_ID - varchar(15)
|
54
|
--@p_PROCESS_ID, -- PROCESS_ID - varchar(10)
|
55
|
'SEND',
|
56
|
@p_TLNAME, -- CHECKER_ID - varchar(15)
|
57
|
GETDATE(), -- APPROVE_DT - datetime
|
58
|
N'Nhân viên hoàn tất xử lý phiếu và gửi phê duyệt thành công' , -- PROCESS_DESC - nvarchar(1000)
|
59
|
N'Nhân viên xử lý gửi phê duyệt ' -- NOTES - nvarchar(1000)
|
60
|
)
|
61
|
|
62
|
IF @@Error <> 0 GOTO ABORT
|
63
|
COMMIT TRANSACTION
|
64
|
SELECT 0 as Result, '' ErrorDesc
|
65
|
RETURN 0
|
66
|
ABORT:
|
67
|
BEGIN
|
68
|
ROLLBACK TRANSACTION
|
69
|
SELECT -1 as Result, '' ErrorDesc
|
70
|
RETURN -1
|
71
|
End
|
72
|
|
73
|
|
74
|
|
75
|
|
76
|
|
77
|
|