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
|
IF(EXISTS(SELECT * FROM dbo.TR_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID='DMMS'))
|
14
|
BEGIN
|
15
|
IF(EXISTS(SELECT REQDT_ID FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID AND (PRICE IS NULL OR PRICE=0) ))
|
16
|
BEGIN
|
17
|
ROLLBACK TRANSACTION
|
18
|
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
|
19
|
RETURN -1
|
20
|
END
|
21
|
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='') ))
|
22
|
BEGIN
|
23
|
ROLLBACK TRANSACTION
|
24
|
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
|
25
|
RETURN -1
|
26
|
END
|
27
|
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='') ))
|
28
|
BEGIN
|
29
|
ROLLBACK TRANSACTION
|
30
|
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
|
31
|
RETURN -1
|
32
|
END
|
33
|
END
|
34
|
UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='P'
|
35
|
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND TLNAME=@p_TLNAME AND TYPE_JOB='XL'
|
36
|
SET @LEVEL=ISNULL((SELECT TOP 1 LEVEL_JOB
|
37
|
FROM dbo.PL_REQUEST_PROCESS_CHILD
|
38
|
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND TLNAME=@p_TLNAME AND TYPE_JOB='XL'
|
39
|
ORDER BY LEVEL_JOB DESC),0)
|
40
|
|
41
|
UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='C'
|
42
|
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND LEVEL_JOB=(@LEVEL-1)
|
43
|
|
44
|
|
45
|
INSERT INTO dbo.PL_PROCESS
|
46
|
(
|
47
|
REQ_ID,
|
48
|
PROCESS_ID,
|
49
|
CHECKER_ID,
|
50
|
APPROVE_DT,
|
51
|
PROCESS_DESC,
|
52
|
NOTES
|
53
|
)
|
54
|
VALUES
|
55
|
( @p_REQ_ID, -- REQ_ID - varchar(15)
|
56
|
--@p_PROCESS_ID, -- PROCESS_ID - varchar(10)
|
57
|
'SEND',
|
58
|
@p_TLNAME, -- CHECKER_ID - varchar(15)
|
59
|
GETDATE(), -- APPROVE_DT - datetime
|
60
|
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)
|
61
|
N'Nhân viên xử lý gửi phê duyệt ' -- NOTES - nvarchar(1000)
|
62
|
)
|
63
|
|
64
|
IF @@Error <> 0 GOTO ABORT
|
65
|
COMMIT TRANSACTION
|
66
|
SELECT 0 as Result, '' ErrorDesc
|
67
|
RETURN 0
|
68
|
ABORT:
|
69
|
BEGIN
|
70
|
ROLLBACK TRANSACTION
|
71
|
SELECT -1 as Result, '' ErrorDesc
|
72
|
RETURN -1
|
73
|
End
|
74
|
|
75
|
|
76
|
|
77
|
|
78
|
|
79
|
|