Project

General

Profile

4.0 CM_EMPLOYEE_SEARCH.txt

Luc Tran Van, 03/18/2021 10:46 AM

 
1
ALTER PROCEDURE [dbo].[CM_EMPLOYEE_Sync]
2
@p_ACTION	varchar(15)  = NULL,
3
@p_CODE	varchar(15)  = NULL,
4
@p_NAME	nvarchar(500)  = NULL,
5
@p_BRANCH_CODE	varchar(15)  = NULL,
6
@p_DEP_CODE	varchar(15)  = NULL,
7
--- BO SUNG THEM MA CHUC DANH, TEN  CHUC DANH
8
@p_USER_DOMAIN VARCHAR(15) = NULL,
9
@p_MA_CHUC_DANH NVARCHAR(50) = NULL,
10
@p_TEN_CHUC_DANH NVARCHAR(500) = NULL
11
AS
12
--Validation is here
13
DECLARE @ERRORSYS NVARCHAR(15) = '' 
14
DECLARE @p_BRANCH_NAME NVARCHAR(500) =''
15
DECLARE @p_BRANCH_TYPE NVARCHAR(50) =''
16
DECLARE @p_BRANCH_ID NVARCHAR(50) =''
17
DECLARE @p_DEP_ID NVARCHAR(50) =''
18

    
19
SET @p_BRANCH_NAME = (SELECT TOP 1A.BRANCH_NAME FROM CM_BRANCH A WHERE A.BRANCH_CODE = @p_BRANCH_CODE)
20
SET @p_BRANCH_TYPE = (SELECT TOP 1A.BRANCH_TYPE FROM CM_BRANCH A WHERE A.BRANCH_CODE = @p_BRANCH_CODE)
21
SET @p_BRANCH_ID   = (SELECT TOP 1 A.BRANCH_ID FROM CM_BRANCH A WHERE A.BRANCH_CODE = @p_BRANCH_CODE)
22
SET @p_DEP_ID      = (SELECT TOP 1 A.DEP_ID FROM CM_DEPARTMENT A WHERE A.DEP_CODE = @p_DEP_CODE AND A.BRANCH_ID =@p_BRANCH_ID)
23

    
24
--- LUCTV BO SUNG NGAY 08 07 2020
25
DECLARE @ROLE_ID VARCHAR(20) =''
26
SET @ROLE_ID =(SELECT TOP 1 ROLE_ID FROM CM_MAPPING_CHUCDANH_ROLE WHERE (MA_CHUC_DANH = @p_MA_CHUC_DANH AND TEN_CHUC_DANH =@p_TEN_CHUC_DANH) OR TEN_CHUC_DANH =@p_TEN_CHUC_DANH)
27
DECLARE @EMAIL VARCHAR(50) =''
28
SET @EMAIL =@p_USER_DOMAIN+'@vietcapitalbank.com.vn'
29
DECLARE @l_TLID VARCHAR(15)
30
----END LUCTV BO SUNG 
31
IF(NOT EXISTS(SELECT * FROM CM_EMPLOYEE_LOG WHERE USER_DOMAIN=@p_USER_DOMAIN))
32
BEGIN
33
	INSERT INTO CM_EMPLOYEE_LOG (EMP_CODE,EMP_NAME,BRANCH_CODE,DEP_CODE,USER_DOMAIN,POS_CODE,POS_NAME,CREATE_DT) 
34
	VALUES (@p_CODE,@p_NAME,@p_BRANCH_CODE,@p_DEP_CODE,@p_USER_DOMAIN,@p_MA_CHUC_DANH,@p_TEN_CHUC_DANH,GETDATE())
35
END
36
BEGIN TRANSACTION
37
		IF(@p_ACTION ='I' OR @p_ACTION ='U')
38
		BEGIN
39
			--KIEM TRA MA NHAN VIEN KHONG DUOC BO TRONG
40
			IF (@p_CODE='' OR @p_CODE IS NULL)
41
			BEGIN
42
				ROLLBACK TRANSACTION
43
				SELECT '-1' Result, ''  EMP_ID, N'Mã nhân viên không được bỏ trống' ErrorDesc
44
				RETURN '-1'
45
			END
46
			--KIEM TRA MA NHAN VIEN KHONG DUOC BO TRONG
47
			IF (@p_NAME='' OR @p_NAME IS NULL)
48
			BEGIN
49
				ROLLBACK TRANSACTION
50
				SELECT '-1' Result, ''  EMP_ID, N'Tên nhân viên không được bỏ trống' ErrorDesc
51
				RETURN '-1'
52
			END
53
			--KIEM TRA DON VI NAY CO TON TAI HAY KHONG
54
			IF (@p_BRANCH_CODE='' OR @p_BRANCH_CODE IS NULL)
55
			BEGIN
56
				ROLLBACK TRANSACTION
57
				SELECT '-1' Result, ''  EMP_ID, N'Mã đơn vị không được bỏ trống' ErrorDesc
58
				RETURN '-1'
59
			END
60
			---------------------------------------------------------------------------------
61
			--KIEM TRA PHONG BAN NAY CO TON TAI HAY KHONG
62
			IF (@p_DEP_CODE='' OR @p_DEP_CODE IS NULL)
63
			BEGIN
64
				ROLLBACK TRANSACTION
65
				SELECT '-1' Result, ''  EMP_ID, N'Mã phòng ban không được bỏ trống' ErrorDesc
66
				RETURN '-1'
67
			END
68
			---------------------------------------------------------------------------------
69
			---LUCTV BO SUNG NGAY 08 07 2020
70
			--KIEM TRA USER DOMAIN KHONG DUOC RONG
71
			--IF (@p_USER_DOMAIN='' OR @p_USER_DOMAIN IS NULL)
72
			--BEGIN
73
			--	ROLLBACK TRANSACTION
74
			--	SELECT '-1' Result, ''  EMP_ID, N'User domain không được để trống'  ErrorDesc
75
			--	RETURN '-1'
76
			--END
77
			--KIEM TRA MA CHUC DANH KHAC RONG
78
			IF (@p_MA_CHUC_DANH='' OR @p_MA_CHUC_DANH IS NULL)
79
			BEGIN
80
				ROLLBACK TRANSACTION
81
				SELECT '-1' Result, ''  EMP_ID, N'Mã chức danh không được để trống'  ErrorDesc
82
				RETURN '-1'
83
			END
84
			--KIEM TRA TEN CHUC DANH KHAC RONG
85
			IF (@p_TEN_CHUC_DANH='' OR @p_TEN_CHUC_DANH IS NULL)
86
			BEGIN
87
				ROLLBACK TRANSACTION
88
				SELECT '-1' Result, ''  EMP_ID, N'Mã chức danh không được để trống'  ErrorDesc
89
				RETURN '-1'
90
			END
91
			----KIEM TRA TEN CHUC DANH CO TON TAI TRONG DANH SACH CHUC DANH VCCB CAP HAY KHONG
92
			--IF (NOT EXISTS(SELECT * FROM CM_MAPPING_CHUCDANH_ROLE WHERE MA_CHUC_DANH =@p_MA_CHUC_DANH))
93
			--BEGIN
94
			--	ROLLBACK TRANSACTION
95
			--	SELECT '-1' Result, ''  EMP_ID, N'Mã chức danh này chưa tồn tại trong hệ thống'  ErrorDesc
96
			--	RETURN '-1'
97
			--END
98
			----KIEM TRA TEN CHUC DANH CO TON TAI TRONG DANH SACH CHUC DANH VCCB CAP HAY KHONG
99
			--IF (NOT EXISTS(SELECT * FROM CM_MAPPING_CHUCDANH_ROLE WHERE TEN_CHUC_DANH =@p_TEN_CHUC_DANH))
100
			--BEGIN
101
			--	ROLLBACK TRANSACTION
102
			--	SELECT '-1' Result, ''  EMP_ID, N'Tên chức danh này chưa tồn tại trong hệ thống'  ErrorDesc
103
			--	RETURN '-1'
104
			--END
105
			-----------------------------------------------------------------------------------
106
			--KIEM TRA ROLE NAY CO TON TAI HAY KHONG
107
			IF (@ROLE_ID='' OR @ROLE_ID IS NULL)
108
			BEGIN
109
				SET @ROLE_ID ='NVTT'
110
				--ROLLBACK TRANSACTION
111
				--SELECT '-1' Result, ''  EMP_ID, N'Chưa có ROLE tương ứng cho chức danh có mã ' +@p_MA_CHUC_DANH  ErrorDesc
112
				--RETURN '-1'
113
			END
114
			---------------------------------------------------------------------------------
115
		END
116
		IF(@p_ACTION='I')
117
		BEGIN
118
		    -- INSERT NHAN VIEN NAY VAO BANG TAMP
119
			IF(NOT EXISTS(SELECT * FROM CM_EMPLOYEE_LOG WHERE USER_DOMAIN=@p_USER_DOMAIN))
120
			BEGIN
121
				INSERT INTO CM_EMPLOYEE_LOG (EMP_CODE,EMP_NAME,BRANCH_CODE,DEP_CODE,USER_DOMAIN,POS_CODE,POS_NAME,CREATE_DT) 
122
				VALUES (@p_CODE,@p_NAME,@p_BRANCH_CODE,@p_DEP_CODE,@p_USER_DOMAIN,@p_MA_CHUC_DANH,@p_TEN_CHUC_DANH,GETDATE())
123
			END
124
			--KIEM TRA NHAN VIEN NAY CO TON TAI HAY KHONG
125
			IF (EXISTS ( SELECT * FROM CM_EMPLOYEE WHERE EMP_CODE=@p_CODE))
126
			BEGIN
127
				SET @ERRORSYS = 'EMP-0001'
128
				ROLLBACK TRANSACTION
129
				SELECT '-1' Result, ''  EMP_ID, N'Mã nhân viên này đã tồn tại' ErrorDesc
130
				RETURN '-1'
131
			END
132
			--KIEM TRA DON VI NAY CO TON TAI HAY KHONG
133
			IF (NOT EXISTS ( SELECT * FROM CM_BRANCH WHERE BRANCH_ID =@p_BRANCH_ID))
134
			BEGIN
135
				ROLLBACK TRANSACTION
136
				SELECT '-1' Result, ''  EMP_ID, N'Mã đơn vị này không tồn tại' ErrorDesc
137
				RETURN '-1'
138
			END
139
			---------------------------------------------------------------------------------
140
			--KIEM TRA PHONG BAN NAY CO TON TAI HAY KHONG
141
			IF (NOT EXISTS ( SELECT * FROM CM_DEPARTMENT WHERE DEP_CODE =@p_DEP_CODE))
142
			BEGIN
143
				ROLLBACK TRANSACTION
144
				SELECT '-1' Result, ''  EMP_ID, N'Mã phòng ban: '+@p_DEP_CODE+ N' không tồn tại' ErrorDesc
145
				RETURN '-1'
146
			END
147
			---------------------------------------------------------------------------------
148
			--KIEM TRA PHONG BAN CO THUOC VE DUNG DON VI CUA NO HAY KHONG
149
			IF (NOT EXISTS ( SELECT * FROM CM_DEPARTMENT WHERE BRANCH_ID =@p_BRANCH_ID AND DEP_ID=@p_DEP_ID))
150
			BEGIN
151
				ROLLBACK TRANSACTION
152
				SELECT '-1' Result, ''  EMP_ID, N'Phòng ban có mã '+@p_DEP_CODE+ N' không thuộc về đơn vị '+@p_BRANCH_CODE ErrorDesc
153
				RETURN '-1'
154
			END
155
			---------------------------------------------------------------------------------
156
			--LUCTV 09072020 BO SUNG KIEM TRA USER DOMAIN DA TON TAI
157
			IF (EXISTS ( SELECT * FROM TL_USER WHERE TLNANME =@p_USER_DOMAIN))
158
			BEGIN
159
				ROLLBACK TRANSACTION
160
				SELECT '-1' Result, ''  EMP_ID, N'Mã user domain: '+@p_USER_DOMAIN +N' đã tồn tại trong hệ thống'  ErrorDesc
161
				RETURN '-1'
162
			END
163
			--LUCTV 09072020 BO SUNG KIEM TRA HO VA TEN DA TON TAI
164
			--IF (EXISTS ( SELECT * FROM CM_EMPLOYEE WHERE EMP_NAME =@p_NAME))
165
			--BEGIN
166
			--	ROLLBACK TRANSACTION
167
			--	SELECT '-1' Result, ''  EMP_ID, N'Tên nhân viên '+@p_NAME +N' đã tồn tại trong hệ thống'  ErrorDesc
168
			--	RETURN '-1'
169
			--END
170
			--KIEM TRA ROLE CO HOP LE HAY KHONG
171
			IF (NOT EXISTS ( SELECT * FROM TL_SYSROLE WHERE ROLE_ID =@ROLE_ID))
172
			BEGIN
173
				ROLLBACK TRANSACTION
174
				SELECT '-1' Result, ''  EMP_ID, N'Role không tồn tại'+@ROLE_ID ErrorDesc
175
				RETURN '-1'
176
			END
177
			DECLARE @l_EMP_ID VARCHAR(15)
178
			EXEC SYS_CodeMasters_Gen 'CM_EMPLOYEE', @l_EMP_ID out		
179
			IF @l_EMP_ID='' OR @l_EMP_ID IS NULL GOTO ABORT
180
			print @l_EMP_ID
181
			INSERT INTO CM_EMPLOYEE([EMP_ID],[EMP_CODE],[EMP_NAME],[BRANCH_ID],[DEP_ID],[NOTES],[RECORD_STATUS],[AUTH_STATUS],[MAKER_ID],[CREATE_DT],[CHECKER_ID],[APPROVE_DT])
182
			VALUES(@l_EMP_ID ,@p_CODE ,@p_NAME ,@p_BRANCH_ID ,@p_DEP_ID ,NULL ,'1' ,'A' ,NULL ,CONVERT(DATETIME, GETDATE(), 103) ,NULL ,CONVERT(DATETIME, GETDATE(), 103) )
183

    
184
			---- DONG BO XONG CM_EMPLOYEE THI DONG BO NGUOI DUNG LUON - LUCTV BO SUNG NGAY 08 07 2020
185
			IF(@p_USER_DOMAIN IS NOT NULL AND @p_USER_DOMAIN <> '')
186
			BEGIN
187
				--EXEC [TL_USER_Sync] 'I',@p_USER_DOMAIN,@p_NAME,@p_BRANCH_CODE,@p_DEP_CODE,@EMAIL,@ROLE_ID
188
				EXEC SYS_CodeMasters_Gen 'TL_USER', @l_TLID out
189
			IF @l_TLID='' OR @l_TLID IS NULL GOTO ABORT
190
			INSERT INTO TL_USER([TLID],[TLNANME],[Password],[TLFullName],[TLSUBBRID],[BRANCH_NAME],[BRANCH_TYPE],[RoleName],[EMAIL],[ADDRESS],[PHONE],[AUTH_STATUS],[MARKER_ID],[AUTH_ID],[APPROVE_DT],[ISAPPROVE],[Birthday],[ISFIRSTTIME],[SECUR_CODE])
191
			VALUES(@L_TLID ,@p_USER_DOMAIN ,'d41d8cd98f00b204e9800998ecf8427e' ,@p_NAME ,@p_BRANCH_ID ,@p_BRANCH_NAME ,@p_BRANCH_TYPE ,@ROLE_ID ,@EMAIL ,NULL ,NULL ,'A' ,NULL ,NULL ,CONVERT(DATETIME, GETDATE(), 103) ,NULL ,NULL ,NULL ,@p_DEP_ID )
192
			--- INSERT VAO BANG TL_USER_V2
193
			INSERT INTO TL_USER_V2 (TLID,TLNANME,RoleName,TLFullName,TLSUBBRID,SECUR_CODE) VALUES (@l_TLID,@p_USER_DOMAIN,@ROLE_ID,@p_NAME,@p_BRANCH_ID,@p_DEP_ID)
194
			UPDATE TL_USER SET ROLENAME ='GDV_DVKD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giao dịch viên' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
195
			UPDATE TL_USER SET ROLENAME ='KSV_DVKD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Kiểm soát viên' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
196
			UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc chi nhánh' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
197
			UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc chi nhánh' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
198
			UPDATE TL_USER SET ROLENAME ='TPGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Trưởng phòng giao dịch' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
199
			UPDATE TL_USER SET ROLENAME ='PPGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó phòng giao dịch' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
200
			UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc trung tâm kinh doanh') AND ROLENAME <> 'DISABLE'
201
			UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc TTKD') AND ROLENAME <> 'DISABLE'
202
			UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc TTKD') AND ROLENAME <> 'DISABLE'
203
			UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc trung tâm kinh doanh') AND ROLENAME <> 'DISABLE'
204
			UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc chi nhánh' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
205
			--UPDATE TL_USER SET ROLENAME ='PP' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME LIKE N'%Phó phòng%' and branch_code = '069' AND DEP_CODE <> '0690802') AND ROLENAME <> 'DISABLE'
206
			--UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME LIKE N'%Trưởng phòng%' and branch_code = '069' AND DEP_CODE <> '0690802') AND ROLENAME <> 'DISABLE'
207
			END
208

    
209
		END
210
		ELSE IF(@p_ACTION='U')
211
		BEGIN
212
			IF(NOT EXISTS(SELECT * FROM CM_EMPLOYEE_LOG WHERE USER_DOMAIN =@p_USER_DOMAIN))
213
			BEGIN
214
				INSERT INTO CM_EMPLOYEE_LOG (EMP_CODE,EMP_NAME,BRANCH_CODE,DEP_CODE,USER_DOMAIN,POS_CODE,POS_NAME,CREATE_DT) 
215
				VALUES (@p_CODE,@p_NAME,@p_BRANCH_CODE,@p_DEP_CODE,@p_USER_DOMAIN,@p_MA_CHUC_DANH,@p_TEN_CHUC_DANH,GETDATE())
216
			END
217
			ELSE
218
			BEGIN
219
				UPDATE CM_EMPLOYEE_LOG SET POS_NAME = @p_TEN_CHUC_DANH, DEP_CODE =@p_DEP_CODE, BRANCH_CODE =@p_BRANCH_CODE, CREATE_DT = GETDATE() WHERE USER_DOMAIN =@p_USER_DOMAIN
220
			END
221
			DECLARE @EMP_ID VARCHAR(15)
222
			SET @EMP_ID =(SELECT EMP_ID FROM CM_EMPLOYEE WHERE EMP_CODE=@p_CODE)
223
			--KIEM TRA MA NHAN VIEN CO TON TAI HAY KHONG
224
			IF (NOT EXISTS ( SELECT * FROM CM_EMPLOYEE WHERE EMP_CODE = @p_CODE))	 
225
			BEGIN
226
				ROLLBACK TRANSACTION
227
				SELECT '-1' Result, ''  EMP_ID, N'Mã nhân viên không tồn tại' ErrorDesc 
228
				RETURN '-1'
229
			END
230
			--KIEM TRA XEM CUNG MA CODE DO CO BI TRUNG VOI NHUNG NHAN VIEN KHAC HAY KHONG
231
			IF (EXISTS ( SELECT * FROM CM_EMPLOYEE WHERE EMP_CODE = @p_CODE AND EMP_ID <> @EMP_ID))	 
232
			BEGIN
233
				SET @ERRORSYS = 'EMP-0001'
234
				ROLLBACK TRANSACTION
235
				SELECT ErrorCode Result, ''  EMP_ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
236
				RETURN '-1'
237
			END			
238
			---------------------------------------------------------------------------------
239
			--KIEM TRA DON VI NAY CO TON TAI HAY KHONG
240
			IF (NOT EXISTS ( SELECT * FROM CM_BRANCH WHERE BRANCH_ID =@p_BRANCH_ID))
241
			BEGIN
242
				ROLLBACK TRANSACTION
243
				SELECT '-1' Result, ''  EMP_ID, N'Mã đơn vị này không tồn tại' ErrorDesc
244
				RETURN '-1'
245
			END
246
			--KIEM TRA PHONG BAN NAY CO TON TAI HAY KHONG
247
			IF (NOT EXISTS ( SELECT * FROM CM_DEPARTMENT WHERE DEP_CODE =@p_DEP_CODE))
248
			BEGIN
249
				ROLLBACK TRANSACTION
250
				SELECT '-1' Result, ''  EMP_ID, N'Mã phòng ban này không tồn tại' ErrorDesc
251
				RETURN '-1'
252
			END
253
			---------------------------------------------------------------------------------
254
			--KIEM TRA PHONG BAN CO THUOC VE DUNG DON VI CUA NO HAY KHONG
255
			IF (NOT EXISTS ( SELECT * FROM CM_DEPARTMENT WHERE BRANCH_ID =@p_BRANCH_ID AND DEP_ID =@p_DEP_ID))
256
			BEGIN
257
				ROLLBACK TRANSACTION
258
				SELECT '-1' Result, ''  EMP_ID, N'Phòng ban có mã '+@p_DEP_CODE+ N' không thuộc về đơn vị '+@p_BRANCH_CODE ErrorDesc
259
				RETURN '-1'
260
			END
261
			---------------------------------------------------------------------------------
262
				UPDATE CM_EMPLOYEE 
263
				SET [EMP_CODE] = @p_CODE,
264
				[EMP_NAME] = @p_NAME,
265
				[BRANCH_ID] = @p_BRANCH_ID,
266
				[DEP_ID] = @p_DEP_ID
267
				WHERE  EMP_CODE= @p_CODE
268
				--
269
				--SET @p_BRANCH_NAME = (SELECT TOP 1 BRANCH_NAME FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_CODE)
270
				UPDATE TL_USER SET 
271
				[TLSUBBRID] = @p_BRANCH_ID,
272
				[BRANCH_NAME] = @p_BRANCH_NAME,
273
				[BRANCH_TYPE] = @p_BRANCH_TYPE,
274
				--TLNANME = @p_USER_DOMAIN,
275
				--RoleName=@p_ROLE,
276
				EMAIL=@EMAIL,
277
				TLFullName =@p_NAME,
278
				SECUR_CODE=@p_DEP_ID
279
				WHERE  TLNANME= @p_USER_DOMAIN AND RoleName NOT IN ('GDK','PTGD','TGD','HDQT','KSV','GDV','KT','TC','KTT')
280
				---
281
				IF @@Error <> 0 GOTO ABORT	
282
				---- DONG BO XONG CM_EMPLOYEE THI DONG BO NGUOI DUNG LUON - LUCTV BO SUNG NGAY 08 07 2020
283
				--EXEC [TL_USER_Sync] 'U',@p_USER_DOMAIN,@p_NAME,@p_BRANCH_CODE,@p_DEP_CODE,@EMAIL,@ROLE_ID
284
				---  END LUCTV
285
				UPDATE TL_USER SET ROLENAME ='GDV_DVKD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giao dịch viên' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
286
				UPDATE TL_USER SET ROLENAME ='KSV_DVKD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Kiểm soát viên' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
287
				UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc chi nhánh' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
288
				UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc chi nhánh' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
289
				UPDATE TL_USER SET ROLENAME ='TPGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Trưởng phòng giao dịch' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
290
				UPDATE TL_USER SET ROLENAME ='PPGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó phòng giao dịch' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
291
				--UPDATE TL_USER SET ROLENAME ='PP' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME LIKE N'%Phó phòng%' and branch_code = '069' AND DEP_CODE <> '0690802') AND ROLENAME <> 'DISABLE'
292
				--UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME LIKE N'%Trưởng phòng%' and branch_code = '069' AND DEP_CODE <> '0690802') AND ROLENAME <> 'DISABLE'
293

    
294
		END
295
		ELSE IF(@p_ACTION='D')
296
		BEGIN
297
			--KIEM TRA XEM MA NHAN VIEN CO TON TAI HAY KHONG
298
			IF (NOT EXISTS ( SELECT * FROM CM_EMPLOYEE WHERE  EMP_CODE= @p_CODE))
299
			BEGIN
300
				ROLLBACK TRANSACTION
301
				SELECT '-1' Result, N'Mã nhân viên không tồn tại' ErrorDesc
302
				RETURN '-1'
303
			END
304
			BEGIN
305
			IF( (SELECT AUTH_STATUS FROM CM_EMPLOYEE WHERE  EMP_CODE= @p_CODE) = 'A')
306
			BEGIN
307
				UPDATE CM_EMPLOYEE SET RECORD_STATUS = '0' WHERE EMP_CODE=@p_CODE
308
				IF @@Error <> 0 GOTO ABORT
309
			END
310
			ELSE
311
			BEGIN
312
				Delete FROM CM_EMPLOYEE WHERE  EMP_ID= @p_CODE
313
				IF @@Error <> 0 GOTO ABORT
314
			END
315
			END
316
			-- DUA NHAN VIEN VE DISABLE
317
			UPDATE TL_USER SET AUTH_STATUS ='U', RoleName ='DISABLE' WHERE TLNANME =@p_USER_DOMAIN
318
		END
319
		--- BẮT ĐẦU CHẠY LỆNH QUÉT CÁC ROLE
320
		UPDATE TL_USER SET ROLENAME ='GDV_DVKD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giao dịch viên' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
321
		UPDATE TL_USER SET ROLENAME ='KSV_DVKD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Kiểm soát viên' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
322
		UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc chi nhánh' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
323
		UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc chi nhánh' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
324
		UPDATE TL_USER SET ROLENAME ='TPGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Trưởng phòng giao dịch' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
325
		UPDATE TL_USER SET ROLENAME ='PPGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó phòng giao dịch' and branch_code <> '069') AND ROLENAME <> 'DISABLE'
326
		UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc trung tâm kinh doanh') AND ROLENAME <> 'DISABLE'
327
		UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc trung tâm kinh doanh') AND ROLENAME <> 'DISABLE'
328
		UPDATE TL_USER SET ROLENAME ='PGD' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Phó giám đốc TTKD') AND ROLENAME <> 'DISABLE'
329
		UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc TTKD') AND ROLENAME <> 'DISABLE'
330
		
331
		--UPDATE TL_USER SET ROLENAME ='NVMS' WHERE ROLENAME ='GDDV' AND TLSUBBRID <> 'DV0001' AND TLNANME NOT IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME =N'Giám đốc Chi Nhánh')
332
		--UPDATE TL_USER SET ROLENAME ='PP' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME LIKE N'%Phó phòng%' and branch_code = '069' AND DEP_CODE <> '0690802') AND ROLENAME <> 'DISABLE'
333
		--UPDATE TL_USER SET ROLENAME ='GDDV' WHERE TLNANME IN (SELECT USER_DOMAIN FROM CM_EMPLOYEE_LOG WHERE POS_NAME LIKE N'%Trưởng phòng%' and branch_code = '069' AND DEP_CODE <> '0690802') AND ROLENAME <> 'DISABLE'
334
		UPDATE TL_USER SET RoleName ='NVMS' WHERE RoleName ='PP' AND TLSUBBRID <>'DV0001'
335
		UPDATE TL_USER SET RoleName ='NVMS' WHERE RoleName ='TP' AND TLSUBBRID <>'DV0001'
336
		UPDATE TL_USER SET RoleName ='NVTT' WHERE RoleName ='KSV' AND SECUR_CODE <>'DEP000000000022'
337
		UPDATE TL_USER SET RoleName ='NVTT' WHERE RoleName ='GDV' AND SECUR_CODE <>'DEP000000000022'
338
		IF @@Error <> 0 GOTO ABORT
339
COMMIT TRANSACTION
340
SELECT '0' as Result, @p_CODE  TLID, '' ErrorDesc
341
RETURN '0'
342
ABORT:
343
BEGIN
344
		ROLLBACK TRANSACTION
345
		SELECT '-1' as Result, '' TLID, '' ErrorDesc
346
		RETURN '-1'
347
END