Project

General

Profile

GEN_USER_DK.txt

Luc Tran Van, 04/27/2023 05:42 PM

 
1
BEGIN TRANSACTION
2
DECLARE @FULLNAME NVARCHAR(MAX) = N'Nguyễn Thu Trang ,NGUYỄN THỊ HIỀN ,Trần Thị Diệu Hiền ,Vũ Thị Thanh Huyền ,Huỳnh Nguyên Bình ,Vũ Thị Tin ,Lý Thị Thu Minh ,Nguyễn Hải Yến ,Diệp Bảo Lân ,Hoàng Anh Tuấn ,Lê Khánh Linh'
3
DECLARE @EMP_CODE VARCHAR(MAX) = N'040-09-060,040-09-012,2019-01003,04.0-17010,2018-07017,0401-10050,040-09-052,040-09-021,2022-11063,2022-11065,0000-10077'
4
DECLARE @EMAIL NVARCHAR(MAX) = N'nguyenthutrang@vietbank.com.vn,nguyenthihien2@vietbank.com.vn,tranthidieuhien@vietbank.com.vn,vuthithanhhuyen@vietbank.com.vn,huynhnguyenbinh@vietbank.com.vn,vuthitin@vietbank.com.vn,lythithuminh@vietbank.com.vn,nguyenhaiyen@vietbank.com.vn,diepbaolan@vietbank.com.vn,hoanganhtuan@vietbank.com.vn,lekhanhlinh@vietbank.com.vn'
5
DECLARE @BRANCH_CODE VARCHAR(MAX) = N'0800,0811,0500,0500,0500,0801,0801,0801,0500,0500,0702'
6
DECLARE @DEP_ID_IMP VARCHAR(MAX) = N',,05T00,05T00,05T00,,,,05J00,05J01,'
7
DECLARE @ROLE VARCHAR(MAX) =  N'NVTT,NVTT,NVTT,NVTT,GDDV,NVTT,NVTT,GDDV,NVTT,NVTT,NVTT'
8
DECLARE @USER_NAME VARCHAR(MAX) = 'TRANGNT09060,HIENNT09012,hienttd,huyenvtt,binhhn,tinvt,minhltt,yennh,landb,tuanha,linhlk0702'
9
--DELETE IMPORT_USER_QLTS
10
--INSERT INTO IMPORT_USER_QLTS (TLNAME, FULLNAME, EMAIL, EMP_CODE, BRANCH_CODE, DEP_CODE, ROLE_NAME)
11
--SELECT * FROM TL_USER CE WHERE CE.TLNANME IN (SELECT * FROM STRING_SPLIT(@USER_NAME,','))
12
DECLARE @TBL_IMPORT TABLE(TLNAME VARCHAR(MAX),FULLNAME NVARCHAR(MAX),EMAIL NVARCHAR(MAX),EMP_CODE NVARCHAR(MAX),BRANCH_CODE NVARCHAR(MAX),DEP_CODE NVARCHAR(MAX),ROLE_NAME NVARCHAR(MAX))
13
INSERT INTO @TBL_IMPORT
14
SELECT C.TLNAME,A.FULLNAME,D.EMAIL,B.EMP_CODE,E.BRANCH_CODE,F.DEP_CODE,G.ROLE_NAME
15
FROM (
16
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID, VALUE AS FULLNAME
17
FROM STRING_SPLIT(@FULLNAME,','))A
18
LEFT JOIN (
19
    SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID, VALUE AS EMP_CODE
20
    FROM STRING_SPLIT(@EMP_CODE,','))B ON A.ID = B.ID
21
LEFT JOIN (
22
    SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID, VALUE AS TLNAME
23
    FROM STRING_SPLIT(@USER_NAME,',')) C ON A.ID = C.ID
24
LEFT JOIN (
25
    SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID, VALUE AS EMAIL
26
    FROM STRING_SPLIT(@EMAIL,','))D ON A.ID = D.ID
27
LEFT JOIN (
28
    SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID, VALUE AS BRANCH_CODE
29
    FROM STRING_SPLIT(@BRANCH_CODE,','))E ON A.ID = E.ID
30
LEFT JOIN (
31
    SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID, VALUE AS DEP_CODE
32
    FROM STRING_SPLIT(@DEP_ID_IMP,','))F ON A.ID = F.ID
33
LEFT JOIN (
34
    SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID, VALUE AS ROLE_NAME
35
    FROM STRING_SPLIT(@ROLE,','))G ON A.ID = G.ID
36

    
37
SELECT A.TLNAME
38
      ,A.FULLNAME
39
      ,A.EMAIL
40
      ,A.EMP_CODE
41
      ,B.BRANCH_ID
42
      ,C.DEP_ID
43
      ,A.ROLE_NAME
44
      ,D.POS_NAME
45
      ,D.POS_CODE
46
FROM @TBL_IMPORT A
47
LEFT JOIN CM_BRANCH B ON A.BRANCH_CODE = B.BRANCH_CODE
48
LEFT JOIN CM_DEPARTMENT C ON A.DEP_CODE = C.DEP_CODE
49
LEFT JOIN CM_EMPLOYEE D ON A.EMP_CODE = D.EMP_CODE
50
--LEFT JOIN CM_BRANCH C ON A.BRANCH_CODE = C.BRANCH_CODE
51
--LEFT JOIN TL_USER B ON A.TLNAME = B.TLNANME
52
--LEFT JOIN CM_BRANCH D ON B.TLSUBBRID = D.BRANCH_ID
53
--WHERE A.ROLE_NAME <> B.RoleName OR A.BRANCH_CODE <> D.BRANCH_CODE
54
DECLARE @INS_MESSAGE NVARCHAR(1000)         
55
DECLARE @INS_FULLNAME NVARCHAR(1000)
56
DECLARE @INS_EMP_CODE VARCHAR(1000)        
57
DECLARE @INS_USER_NAME VARCHAR(1000) 
58
DECLARE @INS_EMAIL NVARCHAR(1000)
59
DECLARE @INS_BRANCH_CODE VARCHAR(1000) 
60
DECLARE @INS_DEP_CODE VARCHAR(1000)   
61
DECLARE @INS_ROLE VARCHAR(1000)
62
DECLARE @INS_POSNAME NVARCHAR(200)
63
DECLARE @INS_POSCODE NVARCHAR(200)
64
DECLARE cur CURSOR FAST_FORWARD READ_ONLY LOCAL FOR
65
SELECT A.*,D.POS_NAME,D.POS_CODE
66
FROM @TBL_IMPORT A
67
LEFT JOIN CM_EMPLOYEE D ON A.EMP_CODE = D.EMP_CODE
68
OPEN cur
69
FETCH NEXT FROM cur INTO @INS_USER_NAME,@INS_FULLNAME,@INS_EMAIL,@INS_EMP_CODE,@INS_BRANCH_CODE,@INS_DEP_CODE,@INS_ROLE,@INS_POSNAME,@INS_POSCODE
70
WHILE @@FETCH_STATUS = 0 BEGIN
71
   
72
	IF(NOT EXISTS(SELECT 1 FROM TL_USER WHERE TLNANME = @INS_USER_NAME))
73
    BEGIN
74
			DECLARE @BRANCH_ID VARCHAR(15), @DEP_ID VARCHAR(15), @DEP_CODE VARCHAR(100)
75
    
76
			SELECT @BRANCH_ID = cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @INS_BRANCH_CODE
77
			SELECT @DEP_ID = cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @INS_DEP_CODE
78
			SET @DEP_CODE = @INS_DEP_CODE
79
--      if(@INS_ROLE = 'DVCM')
80
--      BEGIN
81
--          SET @BRANCH_ID = 'DV0001'
82
--          SET @DEP_ID = 'DEP000000000027'
83
--          SET @DEP_CODE = '05J03'
84
--      END
85
          
86
			INSERT INTO TL_USER ( TLID, TLNANME, Password, TLFullName, TLSUBBRID,  BRANCH_TYPE,  EMAIL, ADDRESS, PHONE, AUTH_STATUS, MARKER_ID, AUTH_ID, APPROVE_DT, ISAPPROVE, Birthday, ISFIRSTTIME, SECUR_CODE, AccessFailedCount, AuthenticationSource, ConcurrencyStamp, CreatorUserId, DeleterUserId, EmailAddress, EmailConfirmationCode, IsActive, IsDeleted, IsEmailConfirmed, IsLockoutEnabled, IsPhoneNumberConfirmed, IsTwoFactorEnabled, LastModifierUserId, LockoutEndDateUtc, Name, NormalizedEmailAddress, NormalizedUserName, PasswordResetCode, PhoneNumber, ProfilePictureId, SecurityStamp, ShouldChangePasswordOnNextLogin, Surname, TenantId, SignInToken, SignInTokenExpireTimeUtc, GoogleAuthenticatorKey, SendActivationEmail, DEP_ID, CreationTime, UamFullName, UamEmployeeId, UamCompanyCode, UamWfDataId, UamCompanyName, UamJobTitle, UserCurrentLanguage, EMAILTEMP) VALUES
87
			(NULL, @INS_USER_NAME, N'AQAAAAEAACcQAAAAEMF7sJx/2L/X7bkO6YmSRfr8d7Na/RURfT4tDZYFIDMaik/cy+y7PSfq48Btaka28A==', @INS_FULLNAME, @BRANCH_ID, '',  @INS_EMAIL, N'', '', 'A', 'bichnn', NULL, GETDATE(), '1', GETDATE(), '1', @DEP_ID, 0, NULL, N'fd2b0a93-3081-460d-b969-b5a75f96c0de', NULL, NULL, @INS_EMAIL, NULL, CONVERT(bit, 'True'), CONVERT(bit, 'False'), CONVERT(bit, 'True'), CONVERT(bit, 'False'), CONVERT(bit, 'True'), CONVERT(bit, 'False'), 259, NULL, NULL, @INS_EMAIL, @INS_USER_NAME, NULL, NULL, NULL, N'QSTE4B7VTYWRQON4JZTJST6QN4PEVVLB', CONVERT(bit, 'False'), NULL, 1, NULL, NULL, NULL, CONVERT(bit, 'False'), @DEP_ID, GETDATE(), NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
88
        
89
			INSERT INTO CM_EMPLOYEE_LOG (EMP_CODE, EMP_NAME, BRANCH_CODE, DEP_CODE, USER_DOMAIN, POS_CODE, POS_NAME, CREATE_DT)
90
			VALUES (@INS_EMP_CODE, @INS_FULLNAME, @INS_BRANCH_CODE, @INS_DEP_CODE, @INS_USER_NAME, @INS_POSCODE, @INS_POSNAME, GETDATE());
91
    
92
			INSERT INTO AbpUserRoles (CreationTime, CreatorUserId, RoleId, TenantId, UserId)
93
			VALUES (SYSDATETIME(), 0, (SELECT TOP 1 ar.Id FROM AbpRoles ar WHERE ar.DisplayName = @INS_ROLE), 1, (SELECT MAX(ID) FROM TL_USER tu WHERE tu.TLNANME = @INS_USER_NAME));
94
  	END
95
--    IF(NOT EXISTS(SELECT 1 FROM AbpUserRoles AUR WHERE AUR.RoleId = (SELECT TOP 1 ar.Id FROM AbpRoles ar WHERE ar.DisplayName = @INS_ROLE) AND AUR.UserId = (SELECT MAX(ID) FROM TL_USER tu WHERE tu.TLNANME = @INS_USER_NAME)))
96
--    BEGIN
97
--      	INSERT INTO AbpUserRoles (CreationTime, CreatorUserId, RoleId, TenantId, UserId)
98
--			  VALUES (SYSDATETIME(), 0, (SELECT TOP 1 ar.Id FROM AbpRoles ar WHERE ar.DisplayName = @INS_ROLE), 1, (SELECT MAX(ID) FROM TL_USER tu WHERE tu.TLNANME = @INS_USER_NAME));
99
--    END
100
  
101
  SET @BRANCH_ID = NULL
102
  SET @DEP_ID = NULL
103
  SET @DEP_CODE = NULL
104
  SET @INS_POSNAME = NULL
105
  SET @INS_POSCODE = NULL
106
	FETCH NEXT FROM cur INTO @INS_USER_NAME,@INS_FULLNAME,@INS_EMAIL,@INS_EMP_CODE,@INS_BRANCH_CODE,@INS_DEP_CODE,@INS_ROLE,@INS_POSNAME,@INS_POSCODE
107
END
108
CLOSE cur
109
DEALLOCATE cur
110
COMMIT TRANSACTION