Project

General

Profile

CM_HANGHOA_Upd.txt

Luc Tran Van, 10/24/2022 01:54 PM

 
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
		declare @OLD_DVCM_ID NVARCHAR(15) = NULL
30
		SELECT @OLD_DVCM_ID = DVCM_ID FROM CM_HANGHOA_DVCM WHERE HH_ID = @p_HH_ID
31

    
32
		--kIEM TRA MA LA DUY NHAT
33
		--IF EXISTS (SELECT * FROM CM_HANGHOA WHERE HH_CODE = @p_HH_CODE AND HH_ID <> @p_HH_ID AND RECORD_STATUS ='1')
34
		--BEGIN
35
		--	ROLLBACK TRANSACTION
36
		--	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
37
		--	RETURN -1
38
		--END
39
		--kIEM TRA MA LA DUY NHAT
40
		IF(@p_HH_CODE IS NULL OR @p_HH_CODE ='')
41
		BEGIN
42
			ROLLBACK TRANSACTION
43
			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
44
			RETURN -1
45
		END
46
		IF(@p_MAKER_ID NOT IN ('vanpt2', 'cuongvd','tuyenlt'))
47
		BEGIN
48
			ROLLBACK TRANSACTION
49
			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
50
			RETURN -1
51
		END
52
		IF(@p_HHGROUP_GROUP_ID_TTCT IS NULL OR @p_HHGROUP_GROUP_ID_TTCT ='')
53
		BEGIN
54
			ROLLBACK TRANSACTION
55
			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
56
			RETURN -1
57
		END
58
		IF(@p_HHGROUP_GROUP_ID_CDT IS NULL OR @p_HHGROUP_GROUP_ID_CDT ='')
59
		BEGIN
60
			ROLLBACK TRANSACTION
61
			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
62
			RETURN -1
63
		END
64
		------------------BAODNQ 24/10/2022 : K CHO CHỌN DVCM LÀ KHỐI-----------------
65
		IF EXISTS(SELECT * FROM CM_DVDM WHERE DVDM_ID = @p_DVCM_ID AND IS_KHOI = 1)
66
		BEGIN
67
			ROLLBACK TRANSACTION
68
			SELECT -1 as Result, '' HH_ID, 
69
			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
70
			RETURN -1
71
		END
72
		-------------------END BAODNQ------------------------
73

    
74
		UPDATE CM_HANGHOA SET [HH_CODE] = @p_HH_CODE,[HH_NAME] = @p_HH_NAME,[HH_TYPE_ID] = @p_HH_TYPE_ID,[DESCRIPTION] = @p_DESCRIPTION,
75
		[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,
76
		@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,
77
		[IS_TC] = @p_IS_TC, [IS_DVKD] = @p_IS_DVKD, [IS_CDT] = @p_IS_CDT,IS_DVCM=@p_IS_DVCM
78
		WHERE  HH_ID = @p_HH_ID
79

    
80
		DELETE SYS_HH_GROUP_LIMIT WHERE HH_ID = @p_HH_ID
81
		INSERT INTO SYS_HH_GROUP_LIMIT(HH_ID, GROUP_LIMIT_ID, TYPE_LIMIT)
82
		VALUES (@p_HH_ID, @p_HHGROUP_GROUP_ID_TTCT, 'TTCT')
83
		INSERT INTO SYS_HH_GROUP_LIMIT(HH_ID, GROUP_LIMIT_ID, TYPE_LIMIT)
84
		VALUES (@p_HH_ID, @p_HHGROUP_GROUP_ID_CDT, 'CDT')
85
		DELETE CM_HANGHOA_DVCM WHERE HH_ID = @p_HH_ID --AND DVCM_ID = @OLD_DVCM_ID
86
		INSERT INTO CM_HANGHOA_DVCM(HH_ID, DVCM_ID)
87
		VALUES (@p_HH_ID, @p_DVCM_ID)
88

    
89
		IF @@Error <> 0 GOTO ABORT
90
COMMIT TRANSACTION
91
		SELECT 0 as Result, @p_HH_ID  HH_ID, '' ErrorDesc
92
		RETURN 0
93
ABORT:
94
BEGIN
95
		ROLLBACK TRANSACTION
96
		SELECT -1 as Result, '' HH_ID,	N'Cập nhật thất bại' ErrorDesc
97
		RETURN -1
98
End