Project

General

Profile

CM_HANGHOA_Upd.txt

Luc Tran Van, 01/12/2023 10:30 AM

 
1

    
2
ALTER   PROCEDURE [dbo].[CM_HANGHOA_Upd]
3
		@p_HH_ID	varchar(15) = null ,
4
		@p_HH_CODE	varchar(15) = NULL ,
5
		@p_HH_NAME	nvarchar(200) = NULL ,
6
		@p_HH_TYPE_ID	varchar(15) = NULL ,
7
		@p_DESCRIPTION	nvarchar(2000) = NULL ,
8
		@p_SUP_ID	varchar(15) = NULL ,
9
		@p_PRICE	decimal(17) = NULL ,
10
		@p_UNIT_ID	varchar(15) = NULL ,
11
		@p_NOTES	nvarchar(1000) = NULL ,
12
		@p_RECORD_STATUS	varchar(1) = NULL ,
13
		@p_MAKER_ID	varchar(12) = NULL ,
14
		@p_CREATE_DT	VARCHAR(20) = NULL,
15
		@p_AUTH_STATUS	varchar(50) = NULL ,
16
		@p_CHECKER_ID	varchar(12) = NULL ,
17
		@p_APPROVE_DT	VARCHAR(20) = NULL,
18
		@p_GD_ID	varchar(15) = null,
19
		@p_HHGROUP_GROUP_ID_TTCT varchar(15)  = NULL,
20
		@p_HHGROUP_GROUP_ID_CDT varchar(15)  = NULL,
21
		@p_DVCM_ID varchar(15)  = NULL,
22
		@p_IS_TC	varchar(1) = NULL ,
23
		@p_IS_DVKD	varchar(1) = NULL ,
24
		@p_IS_CDT	varchar(1) = NULL ,
25
		@p_IS_DVCM	varchar(1) = NULL 
26
AS
27
BEGIN TRANSACTION
28

    
29

    
30
		declare @OLD_DVCM_ID NVARCHAR(15) = NULL
31
		SELECT @OLD_DVCM_ID = DVCM_ID FROM CM_HANGHOA_DVCM WHERE HH_ID = @p_HH_ID
32

    
33
		--kIEM TRA MA LA DUY NHAT
34
		--IF EXISTS (SELECT * FROM CM_HANGHOA WHERE HH_CODE = @p_HH_CODE AND HH_ID <> @p_HH_ID AND RECORD_STATUS ='1')
35
		--BEGIN
36
		--	ROLLBACK TRANSACTION
37
		--	SELECT -1 as Result, '' HH_ID, N'Mã hàng hóa: '+ @p_HH_CODE +N' đã tồn tại trong hệ thống' ErrorDesc
38
		--	RETURN -1
39
		--END
40
		--kIEM TRA MA LA DUY NHAT
41
		IF(@p_HH_CODE IS NULL OR @p_HH_CODE ='')
42
		BEGIN
43
			ROLLBACK TRANSACTION
44
			SELECT -1 as Result, '' HH_ID, N'Mã hàng hóa chưa tự động phát sinh. Vui lòng nhập mã hàng hóa' ErrorDesc
45
			RETURN -1
46
		END
47
		IF(@p_MAKER_ID NOT IN ('vanpt2', 'cuongvd','tuyenlt'))
48
		BEGIN
49
			ROLLBACK TRANSACTION
50
			SELECT -1 as Result, '' HH_ID, N'Bạn không nằm trong danh sách những user được phép chỉnh sửa hàng hóa. Vui lòng liên hệ bộ phận Mua Hàng - Phòng Hành Chính Hội Sở' ErrorDesc
51
			RETURN -1
52
		END
53
		IF(@p_HHGROUP_GROUP_ID_TTCT IS NULL OR @p_HHGROUP_GROUP_ID_TTCT ='')
54
		BEGIN
55
			ROLLBACK TRANSACTION
56
			SELECT -1 as Result, '' HH_ID, N'Thông tin nhóm hạn mức phê duyệt chủ trương không được phép để trống. Đây là thông tin quan trọng cho quy trình phê duyệt chủ trương' ErrorDesc
57
			RETURN -1
58
		END
59
		IF(@p_HHGROUP_GROUP_ID_CDT IS NULL OR @p_HHGROUP_GROUP_ID_CDT ='')
60
		BEGIN
61
			ROLLBACK TRANSACTION
62
			SELECT -1 as Result, '' HH_ID, N'Thông tin nhóm hạn mức phê duyệt hạn mức chỉ định thầu không được phép để trống. Đây là thông tin quan trọng cho quy trình phê duyệt chủ trương khi mua sắm chỉ định thầu' ErrorDesc
63
			RETURN -1
64
		END
65
		------------------BAODNQ 24/10/2022 : K CHO CHỌN DVCM LÀ KHỐI-----------------
66
		IF EXISTS(SELECT * FROM CM_DVDM WHERE DVDM_ID = @p_DVCM_ID AND IS_KHOI = 1)
67
		BEGIN
68
			ROLLBACK TRANSACTION
69
			SELECT -1 as Result, '' HH_ID, 
70
			N'Không thể chọn đơn vị chuyên môn là Khối để đi với hàng hóa. Vui lòng chọn đơn vị chuyên môn khác' ErrorDesc
71
			RETURN -1
72
		END
73
		-------------------END BAODNQ------------------------
74

    
75
		-----------------BAODNQ 12/1/2023 : HOT FIX TẠM THỜI NẾU MAKER_ID = vanpt2 THÌ UPDATE MAKER_ID = admin----------
76
		IF(@p_MAKER_ID = 'vanpt2')
77
		BEGIN
78
			SET @p_MAKER_ID = 'admin'
79
		END
80

    
81
		UPDATE CM_HANGHOA SET [HH_CODE] = @p_HH_CODE,[HH_NAME] = @p_HH_NAME,[HH_TYPE_ID] = @p_HH_TYPE_ID,[DESCRIPTION] = @p_DESCRIPTION,
82
		[SUP_ID] = @p_SUP_ID,[PRICE] = @p_PRICE,[UNIT_ID] = @p_UNIT_ID,[NOTES] = @p_NOTES,[RECORD_STATUS] = @p_RECORD_STATUS,[MAKER_ID] = @p_MAKER_ID,[CREATE_DT] = CONVERT(DATETIME,
83
		@p_CREATE_DT, 103),[AUTH_STATUS] = @p_AUTH_STATUS,[CHECKER_ID] = @p_CHECKER_ID,[APPROVE_DT] = CONVERT(DATETIME, @p_APPROVE_DT, 103), [GD_ID] = @p_GD_ID,
84
		[IS_TC] = @p_IS_TC, [IS_DVKD] = @p_IS_DVKD, [IS_CDT] = @p_IS_CDT,IS_DVCM=@p_IS_DVCM
85
		WHERE  HH_ID = @p_HH_ID
86

    
87
		DELETE SYS_HH_GROUP_LIMIT WHERE HH_ID = @p_HH_ID
88
		INSERT INTO SYS_HH_GROUP_LIMIT(HH_ID, GROUP_LIMIT_ID, TYPE_LIMIT)
89
		VALUES (@p_HH_ID, @p_HHGROUP_GROUP_ID_TTCT, 'TTCT')
90
		INSERT INTO SYS_HH_GROUP_LIMIT(HH_ID, GROUP_LIMIT_ID, TYPE_LIMIT)
91
		VALUES (@p_HH_ID, @p_HHGROUP_GROUP_ID_CDT, 'CDT')
92
		DELETE CM_HANGHOA_DVCM WHERE HH_ID = @p_HH_ID --AND DVCM_ID = @OLD_DVCM_ID
93
		INSERT INTO CM_HANGHOA_DVCM(HH_ID, DVCM_ID)
94
		VALUES (@p_HH_ID, @p_DVCM_ID)
95

    
96
		IF @@Error <> 0 GOTO ABORT
97
COMMIT TRANSACTION
98
		SELECT 0 as Result, @p_HH_ID  HH_ID, '' ErrorDesc
99
		RETURN 0
100
ABORT:
101
BEGIN
102
		ROLLBACK TRANSACTION
103
		SELECT -1 as Result, '' HH_ID,	N'Cập nhật thất bại' ErrorDesc
104
		RETURN -1
105
End