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
|