Project

General

Profile

TR_REQUEST_DOC_MOVE_DVCM.txt

Luc Tran Van, 11/22/2022 02:22 PM

 
1

    
2
ALTER   PROCEDURE [dbo].[TR_REQUEST_DOC_MOVE_DVCM]
3
	-- Add the parameters for the stored procedure here
4
	@p_REQ_ID VARCHAR(20), 
5
	@p_DMMS_ID_NEW VARCHAR(20),
6
	@p_MAKER_ID VARCHAR(20)
7
AS
8
BEGIN
9
	IF(@p_REQ_ID IS NOT NULL AND @p_DMMS_ID_NEW IS NOT NULL)
10
	BEGIN
11
		DECLARE @PR_ID INT		
12
		DECLARE @PROCESS_ID VARCHAR(20) = (SELECT PROCESS_ID FROM  TR_REQUEST_DOC where REQ_ID = @p_REQ_ID)
13

    
14
		SET @PR_ID=(SELECT ID FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID='DMMS' AND REQ_ID=@p_REQ_ID AND STATUS='C')
15

    
16
		------------BAODNQ 22/11/2022 : NẾU DMMS ĐANG LÀ DVKD THÌ KO DC PHÉP CHUYỂN PHIẾU LÊN DVCM Ở HỘI SỞ------------------
17
		DECLARE @p_BRANCH_CREATE VARCHAR(15) = (SELECT BRANCH_CREATE FROM TR_REQUEST_DOC WHERE REQ_ID = @p_REQ_ID)
18
		DECLARE @p_BRANCH_TYPE VARCHAR(20) = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_CREATE)
19
		IF(@p_BRANCH_TYPE <> 'HS')
20
		BEGIN
21
			SELECT '-1' as Result, N'Phiếu yêu cầu hiện đang ở đầu mối mua sắm là Đơn vị Kinh doanh thì không được phép chuyển phiếu qua cho đơn vị chuyên môn ở Hội sở xử lý' ErrorDesc
22
			RETURN '-1'
23
		END
24

    
25
		IF(@PROCESS_ID = 'SIGN')
26
		BEGIN
27
			SELECT '-1' as Result, N'Phiếu yêu cầu hiện đang chờ cấp phê duyệt trung gian, Nên không thể chuyển cho DVCM' ErrorDesc
28
		RETURN '-1'
29
		END
30
		IF(@PROCESS_ID = 'APPNEW')
31
		BEGIN
32
			SELECT '-1' as Result, N'Phiếu yêu cầu hiện đang chờ TĐV phê duyệt, Nên không thể chuyển cho DVCM' ErrorDesc
33
		RETURN '-1'
34
		END
35
		IF(@PROCESS_ID = 'DVCM')
36
		BEGIN
37
			SELECT '-1' as Result, N'Phiếu yêu cầu hiện đang chờ DVCM xử lý & phê duyệt, Nên không thể chuyển cho DVCM' ErrorDesc
38
		RETURN '-1'
39
		END
40
		IF(@PROCESS_ID = 'GDK_PYC')
41
		BEGIN
42
			SELECT '-1' as Result, N'Phiếu yêu cầu hiện đang chờ GĐK hỗ trợ phê duyệt, Nên không thể chuyển cho DVCM' ErrorDesc
43
		RETURN '-1'
44
		END
45
		IF(@PROCESS_ID = 'APPROVE')
46
		BEGIN
47
			SELECT '-1' as Result, N'Phiếu yêu cầu đã hoàn tất, Nên không thể chuyển cho DVCM' ErrorDesc
48
		RETURN '-1'
49
		END
50
		UPDATE TR_REQUEST_DOC SET DMMS_ID = @p_DMMS_ID_NEW WHERE REQ_ID = @p_REQ_ID
51

    
52
		-----------------BAODNQ 20/10/2022 : UPDATE DVDM_ID TRONG PL_REQUEST_PROCESS-----------
53
		UPDATE PL_REQUEST_PROCESS 
54
			SET DVDM_ID = @p_DMMS_ID_NEW 
55
		WHERE REQ_ID = @p_REQ_ID AND PROCESS_ID = 'DMMS' AND STATUS = 'C'
56
		DECLARE @p_DVDM_NAME NVARCHAR(1000) = (SELECT TOP 1 DVDM_NAME FROM CM_DVDM WHERE DVDM_ID = @p_DMMS_ID_NEW)
57
		DECLARE @p_PROCESS_DESC NVARCHAR(MAX) = N'Chuyển phiếu về ' + @p_DVDM_NAME
58

    
59
		DECLARE @p_REQ_CODE VARCHAR(50) = (SELECT TOP 1 REQ_CODE FROM TR_REQUEST_DOC WHERE REQ_ID = @p_REQ_ID)
60
		DECLARE @p_MESSAGE NVARCHAR(MAX) = N'Phiếu yêu cầu mua sắm số: ' +
61
			@p_REQ_CODE + N' đã được chuyển cho ' + @p_DVDM_NAME + N' thành công'
62

    
63
		INSERT dbo.PL_PROCESS
64
		(
65
		    REQ_ID,
66
		    PROCESS_ID,
67
		    CHECKER_ID,
68
		    APPROVE_DT,
69
		    PROCESS_DESC,
70
		    NOTES
71
		)
72
		VALUES
73
		(   @p_REQ_ID,        -- REQ_ID - varchar(15)
74
		    'DMMS',        -- PROCESS_ID - varchar(10)
75
		    @p_MAKER_ID,        -- CHECKER_ID - varchar(15)
76
		    GETDATE(), -- APPROVE_DT - datetime
77
		    @p_PROCESS_DESC,       -- PROCESS_DESC - nvarchar(1000)
78
		    N'Chuyển phiếu về DVCM'        -- NOTES - nvarchar(1000)
79
		)
80
		
81
		SELECT '0' as Result, @p_MESSAGE ErrorDesc
82
		RETURN '0'
83
	END
84
	ELSE
85
	BEGIN
86
		SELECT '-1' as Result, '' ErrorDesc
87
		RETURN '-1'
88
	END
89
END