1
|
|
2
|
ALTER TABLE [dbo].[CM_BRANCH] ADD
|
3
|
[ESTABLISH_DT] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
4
|
GO
|
5
|
IF @@ERROR <> 0 SET NOEXEC ON
|
6
|
GO
|
7
|
PRINT N'Altering [dbo].[ASS_MASTER]'
|
8
|
GO
|
9
|
IF @@ERROR <> 0 SET NOEXEC ON
|
10
|
GO
|
11
|
ALTER TABLE [dbo].[ASS_MASTER] ALTER COLUMN [PL] [varchar] (150) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
12
|
GO
|
13
|
IF @@ERROR <> 0 SET NOEXEC ON
|
14
|
GO
|
15
|
PRINT N'Altering [dbo].[ASS_MASTER_HIS_TOOL]'
|
16
|
GO
|
17
|
IF @@ERROR <> 0 SET NOEXEC ON
|
18
|
GO
|
19
|
ALTER TABLE [dbo].[ASS_MASTER_HIS_TOOL] ALTER COLUMN [PL] [varchar] (150) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
20
|
GO
|
21
|
IF @@ERROR <> 0 SET NOEXEC ON
|
22
|
GO
|
23
|
PRINT N'Altering [dbo].[ASS_ADDNEW]'
|
24
|
GO
|
25
|
IF @@ERROR <> 0 SET NOEXEC ON
|
26
|
GO
|
27
|
ALTER TABLE [dbo].[ASS_ADDNEW] ALTER COLUMN [PL_CODE] [varchar] (150) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
28
|
GO
|
29
|
IF @@ERROR <> 0 SET NOEXEC ON
|
30
|
GO
|
31
|
PRINT N'Altering [dbo].[BUD_CONTRACT_DT]'
|
32
|
GO
|
33
|
IF @@ERROR <> 0 SET NOEXEC ON
|
34
|
GO
|
35
|
ALTER TABLE [dbo].[BUD_CONTRACT_DT] ADD
|
36
|
[STATUS] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
37
|
GO
|
38
|
IF @@ERROR <> 0 SET NOEXEC ON
|
39
|
GO
|
40
|
PRINT N'Altering [dbo].[ASS_COLLECT_MULTI_DT]'
|
41
|
GO
|
42
|
IF @@ERROR <> 0 SET NOEXEC ON
|
43
|
GO
|
44
|
ALTER TABLE [dbo].[ASS_COLLECT_MULTI_DT] ADD
|
45
|
[EMP_ID_USE] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
46
|
GO
|
47
|
IF @@ERROR <> 0 SET NOEXEC ON
|
48
|
GO
|
49
|
PRINT N'Altering [dbo].[ASS_MASTER_HIST]'
|
50
|
GO
|
51
|
IF @@ERROR <> 0 SET NOEXEC ON
|
52
|
GO
|
53
|
ALTER TABLE [dbo].[ASS_MASTER_HIST] ALTER COLUMN [PL] [varchar] (150) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
54
|
GO
|
55
|
IF @@ERROR <> 0 SET NOEXEC ON
|
56
|
GO
|
57
|
PRINT N'Creating [dbo].[ASS_AMORT_DT_LATEST]'
|
58
|
GO
|
59
|
CREATE TABLE [dbo].[ASS_AMORT_DT_LATEST]
|
60
|
(
|
61
|
[AMORTDT_ID] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
|
62
|
[AMORT_ID] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
63
|
[AMORT_DT] [date] NULL,
|
64
|
[CRDR] [varchar] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
65
|
[BRANCH_ID] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
66
|
[DEP_ID] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
67
|
[ASSET_ID] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
68
|
[AMORT_AMT] [decimal] (18, 0) NULL,
|
69
|
[GROUP_ID] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
70
|
[EXECUTED] [varchar] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
71
|
[TRN_TYPE] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
72
|
[TRN_DESC] [nvarchar] (1000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
73
|
[TYPE_ID] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
74
|
)
|
75
|
GO
|
76
|
IF @@ERROR <> 0 SET NOEXEC ON
|
77
|
GO
|
78
|
PRINT N'Creating primary key [PK_ASS_AMORT_DT_LATEST] on [dbo].[ASS_AMORT_DT_LATEST]'
|
79
|
GO
|
80
|
ALTER TABLE [dbo].[ASS_AMORT_DT_LATEST] ADD CONSTRAINT [PK_ASS_AMORT_DT_LATEST] PRIMARY KEY CLUSTERED ([AMORTDT_ID])
|
81
|
GO
|
82
|
IF @@ERROR <> 0 SET NOEXEC ON
|
83
|
GO
|
84
|
PRINT N'Creating index [NonClusteredIndex20150730144228] on [dbo].[ASS_AMORT_DT_LATEST]'
|
85
|
GO
|
86
|
CREATE NONCLUSTERED INDEX [NonClusteredIndex20150730144228] ON [dbo].[ASS_AMORT_DT_LATEST] ([ASSET_ID])
|
87
|
GO
|
88
|
IF @@ERROR <> 0 SET NOEXEC ON
|
89
|
GO
|
90
|
PRINT N'Altering [dbo].[CM_EMPLOYEE_SYNC]'
|
91
|
GO
|
92
|
IF @@ERROR <> 0 SET NOEXEC ON
|
93
|
GO
|
94
|
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ADD
|
95
|
[SYNC_DATE] [nvarchar] (100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
|
96
|
GO
|
97
|
IF @@ERROR <> 0 SET NOEXEC ON
|
98
|
GO
|
99
|
PRINT N'Altering trigger [dbo].[TRIG_CM_EMPLOYEE_SYNC_Ins] on [dbo].[CM_EMPLOYEE_SYNC]'
|
100
|
GO
|
101
|
ALTER TRIGGER [dbo].[TRIG_CM_EMPLOYEE_SYNC_Ins]
|
102
|
ON [dbo].[CM_EMPLOYEE_SYNC]
|
103
|
AFTER INSERT
|
104
|
AS
|
105
|
BEGIN
|
106
|
--STORE ĐỒNG BỘ NHÂN VIÊN VÀ ĐIỀU CHUYỂN TÀI SẢN NHÂN SỰ
|
107
|
--29/09/22
|
108
|
SET NOCOUNT ON;
|
109
|
IF (EXISTS(SELECT TOP 1 MaNS FROM INSERTED))
|
110
|
BEGIN
|
111
|
|
112
|
DECLARE @MaDV_Cu_SYNC VARCHAR(500) = (SELECT TOP 1 MaDVCu FROM INSERTED)
|
113
|
DECLARE @MaDV_Moi_SYNC VARCHAR(500) = (SELECT TOP 1 MaDVMoi FROM INSERTED)
|
114
|
|
115
|
--UPDATE MÃ MỚI DO KT UPDATE
|
116
|
IF(@MaDV_Cu_SYNC = '0100')
|
117
|
BEGIN
|
118
|
SET @MaDV_Cu_SYNC = '0600'
|
119
|
END
|
120
|
|
121
|
IF(@MaDV_Cu_SYNC = '0101')
|
122
|
BEGIN
|
123
|
SET @MaDV_Cu_SYNC = '0601'
|
124
|
END
|
125
|
|
126
|
IF(@MaDV_Moi_SYNC = '0100')
|
127
|
BEGIN
|
128
|
SET @MaDV_Moi_SYNC = '0600'
|
129
|
END
|
130
|
|
131
|
IF(@MaDV_Moi_SYNC = '0101')
|
132
|
BEGIN
|
133
|
SET @MaDV_Moi_SYNC = '0601'
|
134
|
END
|
135
|
|
136
|
--MAP DATA HR VỚI KT
|
137
|
IF(EXISTS(SELECT 1 FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Cu_SYNC))
|
138
|
BEGIN
|
139
|
SET @MaDV_Cu_SYNC = (SELECT TOP 1 KT_ID FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Cu_SYNC)
|
140
|
END
|
141
|
IF(EXISTS(SELECT 1 FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Moi_SYNC))
|
142
|
BEGIN
|
143
|
SET @MaDV_Moi_SYNC = (SELECT TOP 1 KT_ID FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Moi_SYNC)
|
144
|
END
|
145
|
DECLARE @MACD_CU_SYNC VARCHAR(500) = (SELECT TOP 1 MaCDCu FROM INSERTED)
|
146
|
DECLARE @MACD_MOI_SYNC VARCHAR(500) = (SELECT TOP 1 MaCDMoi FROM INSERTED)
|
147
|
|
148
|
--START: PARAM INSERT NHÂN VIÊN MỚI
|
149
|
DECLARE @l_EMP_ID VARCHAR(500)
|
150
|
DECLARE @p_EMP_CODE varchar(500) = (SELECT TOP 1 MaNS FROM INSERTED)
|
151
|
DECLARE @p_EMP_NAME nvarchar(500) = (SELECT TOP 1 HoTen FROM INSERTED)
|
152
|
|
153
|
DECLARE @p_BRANCH_ID varchar(15) = NULL
|
154
|
DECLARE @p_DEP_ID varchar(15) = NULL
|
155
|
|
156
|
DECLARE @p_POS_CODE VARCHAR(50) = NULL
|
157
|
DECLARE @p_POS_NAME NVARCHAR(MAX) = NULL
|
158
|
|
159
|
DECLARE @p_NOTES nvarchar(1000) = N'ĐỒNG BỘ'
|
160
|
DECLARE @p_RECORD_STATUS varchar(1) = '1'
|
161
|
DECLARE @p_AUTH_STATUS varchar(1) = 'A'
|
162
|
DECLARE @p_MAKER_ID varchar(15) = 'ADMIN'
|
163
|
DECLARE @p_CREATE_DT VARCHAR(50) = GETDATE()
|
164
|
DECLARE @p_CHECKER_ID varchar(15) = 'ADMIN'
|
165
|
DECLARE @p_APPROVE_DT VARCHAR(50) = GETDATE()
|
166
|
--END: PARAM INSERT NHÂN VIÊN MỚI
|
167
|
|
168
|
--START: PARAM INSERT CM_EMPLOYEE_TRANSFER_LOG
|
169
|
DECLARE @I_EMP_ID VARCHAR(20) = (SELECT TOP 1 ce.EMP_ID FROM CM_EMPLOYEE ce WHERE ce.EMP_CODE = (SELECT MaNS FROM INSERTED))
|
170
|
DECLARE @I_STATUS VARCHAR(5)
|
171
|
|
172
|
DECLARE @C_Ma_DV_Cu VARCHAR(500) = NULL --MÃ ĐV CŨ ĐỂ CHECK IF
|
173
|
DECLARE @C_Ma_DV_Moi VARCHAR(500) = NULL --MÃ DV MỚI ĐỂ CHECK IF
|
174
|
DECLARE @C_Ma_PB_Cu VARCHAR(500) = NULL --MÃ PB CŨ ĐỂ CHECK IF
|
175
|
DECLARE @C_Ma_PB_Moi VARCHAR(500) = NULL --MÃ PB MỚI ĐỂ CHECK IF
|
176
|
--END: PARAM INSERT CM_EMPLOYEE_TRANSFER_LOG
|
177
|
|
178
|
DECLARE @TLNAME VARCHAR(200) = NULL
|
179
|
|
180
|
DECLARE @BLOCK_ID_OLD VARCHAR(15) = NULL --Mã khối cũ check điều chuyển nhân sự
|
181
|
DECLARE @CENTER_ID_OLD VARCHAR(15) = NULL --Mã trung tâm cũ check điều chuyển nhân sự
|
182
|
DECLARE @DEP_ID_OLD VARCHAR(15) = NULL --Mã phòng ban cũ check điều chuyển nhân sự
|
183
|
|
184
|
DECLARE @BLOCK_ID_NEW VARCHAR(15) = NULL --Mã khối mới check điều chuyển nhân sự
|
185
|
DECLARE @CENTER_ID_NEW VARCHAR(15) = NULL --Mã trung tâm mới check điều chuyển nhân sự
|
186
|
DECLARE @DEP_ID_NEW VARCHAR(15) = NULL --Mã phòng ban mới check điều chuyển nhân sự
|
187
|
|
188
|
--START: PARAM INSERT
|
189
|
|
190
|
--CHECK XEM ĐƠN VỊ/PHÒNG BAN CỦA NHÂN VIÊN MỚI CỬA KH LƯU TRONG CỘT MaDVCu HAY CỘT MaDVMoi
|
191
|
IF (EXISTS(SELECT TOP 1 MaDVCu FROM INSERTED WHERE MaDVCu IS NOT NULL AND MaDVCu <> ''))
|
192
|
BEGIN
|
193
|
--CHECK XEM MÃ LÀ ĐƠN VỊ HAY PHÒNG BAN
|
194
|
IF(EXISTS(SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC))
|
195
|
BEGIN
|
196
|
SET @p_BRANCH_ID = 'DV0001'
|
197
|
SET @C_Ma_DV_Cu = 'DV0001'
|
198
|
SET @p_DEP_ID = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC)
|
199
|
SET @C_Ma_PB_Cu = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC)
|
200
|
END
|
201
|
ELSE
|
202
|
BEGIN
|
203
|
SET @p_BRANCH_ID = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Cu_SYNC)
|
204
|
SET @C_Ma_DV_Cu = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Cu_SYNC)
|
205
|
END
|
206
|
END
|
207
|
--ELSE
|
208
|
|
209
|
IF(EXISTS(SELECT TOP 1 MaDVMoi FROM INSERTED WHERE MaDVMoi IS NOT NULL AND MaDVMoi <> ''))
|
210
|
BEGIN
|
211
|
--CHECK XEM MÃ LÀ ĐƠN VỊ HAY PHÒNG BAN
|
212
|
IF(EXISTS(SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = (SELECT MaDVMoi FROM INSERTED)))
|
213
|
BEGIN
|
214
|
SET @p_BRANCH_ID = 'DV0001'
|
215
|
SET @C_Ma_DV_Moi = 'DV0001'
|
216
|
SET @p_DEP_ID = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Moi_SYNC)
|
217
|
SET @C_Ma_PB_Moi = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Moi_SYNC)
|
218
|
END
|
219
|
ELSE
|
220
|
BEGIN
|
221
|
SET @p_BRANCH_ID = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Moi_SYNC)
|
222
|
SET @C_Ma_DV_Moi = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Moi_SYNC)
|
223
|
END
|
224
|
END
|
225
|
|
226
|
--GET KHỐI, TRUNG TÂM, PHÒNG BAN
|
227
|
EXEC CM_DEPARTMENT_GET_BLOCK_CENTER @C_Ma_PB_Cu ,@BLOCK_ID_OLD OUT ,@CENTER_ID_OLD OUT , @DEP_ID_OLD OUT
|
228
|
|
229
|
--GET KHỐI, TRUNG TÂM, PHÒNG BAN
|
230
|
EXEC CM_DEPARTMENT_GET_BLOCK_CENTER @C_Ma_PB_Moi, @BLOCK_ID_NEW OUT ,@CENTER_ID_NEW OUT ,@DEP_ID_NEW OUT
|
231
|
|
232
|
IF(@p_BRANCH_ID <> 'DV0001')
|
233
|
BEGIN
|
234
|
SET @p_DEP_ID = NULL
|
235
|
END
|
236
|
|
237
|
PRINT @C_Ma_DV_Cu
|
238
|
PRINT @C_Ma_DV_Moi
|
239
|
IF((@C_Ma_DV_Cu IS NULL OR @C_Ma_DV_Cu = '') AND (@C_Ma_DV_Moi IS NULL OR @C_Ma_DV_Moi = ''))
|
240
|
BEGIN
|
241
|
--N'Mã DV cũ và Mã DV mới không có giá trị'
|
242
|
PRINT 1
|
243
|
END
|
244
|
ELSE
|
245
|
BEGIN
|
246
|
|
247
|
IF((SELECT COUNT(*) FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE) > 1)
|
248
|
BEGIN
|
249
|
SET @TLNAME = (SELECT TOP 1 CEL.USER_DOMAIN FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE
|
250
|
AND CEL.BRANCH_CODE = @MaDV_Cu_SYNC
|
251
|
AND (CEL.DEP_CODE = @C_Ma_PB_Cu OR @C_Ma_PB_Cu IS NULL))
|
252
|
END
|
253
|
ELSE
|
254
|
BEGIN
|
255
|
SET @TLNAME = (SELECT TOP 1 CEL.USER_DOMAIN FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE)
|
256
|
END
|
257
|
|
258
|
--CHECK DATA CHỨC DANH LƯU CỘT CDMOI HAY CDCU
|
259
|
IF(EXISTS(SELECT 1 FROM INSERTED WHERE MaCDMoi IS NOT NULL AND MaCDMoi <> ''))
|
260
|
BEGIN
|
261
|
--NẾU CHỨC DANH CHƯA CÓ TRONG HỆ THỐNG THÌ THÊM MỚI CHỨC DANH
|
262
|
IF(NOT EXISTS(SELECT 1 FROM CM_MAPPING_CHUCDANH_ROLE WHERE MA_CHUC_DANH = @MACD_MOI_SYNC))
|
263
|
BEGIN
|
264
|
INSERT INTO CM_MAPPING_CHUCDANH_ROLE (MA_CHUC_DANH, TEN_CHUC_DANH, NHOM_CHUC_DANH, ROLE_ID)
|
265
|
VALUES (@MACD_MOI_SYNC, (SELECT TOP 1 CDMoi FROM INSERTED), NULL, NULL);
|
266
|
END
|
267
|
|
268
|
SET @p_POS_CODE = @MACD_MOI_SYNC
|
269
|
SET @p_POS_NAME = (SELECT TOP 1 CDMoi FROM INSERTED)
|
270
|
END
|
271
|
ELSE IF(EXISTS(SELECT 1 FROM INSERTED WHERE MaCDCu IS NOT NULL AND MaCDCu <> ''))
|
272
|
BEGIN
|
273
|
--NẾU CHỨC DANH CHƯA CÓ TRONG HỆ THỐNG THÌ THÊM MỚI CHỨC DANH
|
274
|
IF(NOT EXISTS(SELECT 1 FROM CM_MAPPING_CHUCDANH_ROLE WHERE MA_CHUC_DANH = @MACD_CU_SYNC))
|
275
|
BEGIN
|
276
|
INSERT INTO CM_MAPPING_CHUCDANH_ROLE (MA_CHUC_DANH, TEN_CHUC_DANH, NHOM_CHUC_DANH, ROLE_ID)
|
277
|
VALUES (@MACD_CU_SYNC, (SELECT TOP 1 CDCu FROM INSERTED), NULL, NULL);
|
278
|
END
|
279
|
|
280
|
SET @p_POS_CODE = @MACD_CU_SYNC
|
281
|
SET @p_POS_NAME = (SELECT TOP 1 CDCu FROM INSERTED)
|
282
|
END
|
283
|
|
284
|
|
285
|
--CHECK NHÂN VIÊN XEM CÓ XEM TRONG HỆ THỐNG KHÔNG
|
286
|
IF(EXISTS(SELECT TOP 1 ce.EMP_ID FROM CM_EMPLOYEE ce WHERE ce.EMP_CODE = (SELECT MaNS FROM INSERTED)))
|
287
|
BEGIN
|
288
|
|
289
|
IF(EXISTS(
|
290
|
SELECT atmd.ASSET_ID FROM ASS_TRANSFER_MULTI_DT atmd
|
291
|
WHERE (atmd.EMP_ID = @I_EMP_ID AND atmd.EMP_ID_OLD = @I_EMP_ID
|
292
|
AND (atmd.BRANCH_ID = @C_Ma_DV_Moi AND atmd.BRANCH_ID_OLD = @C_Ma_DV_Cu
|
293
|
AND ISNULL(atmd.KHOI_ID_OLD,'') = ISNULL(@BLOCK_ID_OLD,'') AND ISNULL(atmd.KHOI_ID,'') = ISNULL(@BLOCK_ID_NEW,'')
|
294
|
AND ISNULL(atmd.CENTER_ID_OLD,'') = ISNULL(@CENTER_ID_OLD,'') AND ISNULL(atmd.CENTER_ID,'') = ISNULL(@CENTER_ID_NEW,'')
|
295
|
AND ISNULL(atmd.DEPT_ID_OLD,'') = ISNULL(@DEP_ID_OLD,'') AND ISNULL(atmd.DEPT_ID,'') = ISNULL(@DEP_ID_NEW,''))
|
296
|
AND atmd.AUTH_STATUS_KT <> 'A') --ĐIỀU CHUYỂN TS TỪ ĐV NÀY SANG ĐV KHÁC CHO CÙNG NV
|
297
|
OR (atmd.EMP_ID_OLD = @I_EMP_ID AND atmd.EMP_ID <> @I_EMP_ID
|
298
|
AND atmd.BRANCH_ID_OLD = @C_Ma_DV_Cu
|
299
|
AND ISNULL(atmd.KHOI_ID_OLD,'') = ISNULL(@BLOCK_ID_OLD,'')
|
300
|
AND ISNULL(atmd.CENTER_ID_OLD,'') = ISNULL(@CENTER_ID_OLD,'')
|
301
|
AND ISNULL(atmd.DEPT_ID_OLD,'') = ISNULL(@DEP_ID_OLD,'')
|
302
|
AND atmd.AUTH_STATUS_KT <> 'A') --ĐIỀU CHUYỂN TS TỪ ĐV NÀY SANG ĐV KHÁC NHƯNG KHÁC NV
|
303
|
UNION ALL
|
304
|
SELECT am.ASSET_ID FROM ASS_MASTER am WHERE am.BRANCH_ID = @C_Ma_DV_Cu AND ISNULL(am.DEPT_ID,'') = ISNULL(@C_Ma_PB_Cu,'') AND am.EMP_ID = @I_EMP_ID ))
|
305
|
SET @I_STATUS = '0'
|
306
|
ELSE
|
307
|
SET @I_STATUS = '1'
|
308
|
|
309
|
INSERT INTO CM_EMPLOYEE_TRANSFER_LOG (EMP_ID, TRANSFER_DT, BRANCH_ID_OLD, DEP_ID_OLD, BRANCH_ID_NEW, DEP_ID_NEW, STATUS)
|
310
|
VALUES (@I_EMP_ID, CONVERT(DATETIME,(SELECT TOP 1 TGTao FROM INSERTED),103), @C_Ma_DV_Cu,@C_Ma_PB_Cu, @C_Ma_DV_Moi, @C_Ma_PB_Moi, @I_STATUS);
|
311
|
|
312
|
--CHECK TRƯỜNG HỢP 1 NHÂN VIÊN CÓ QUYỀN 2 CHI NHÁNH TRỞ TRÊN (KHÁC TLNAME)
|
313
|
|
314
|
--PHUCVH 22/12/22 CHECK NẾU MADV,PB MỚI THAY ĐỔI THÌ UPDATE LẠI MADV,PB CHO NHANVIEN
|
315
|
IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE A WHERE A.EMP_CODE = @p_EMP_CODE
|
316
|
AND ISNULL(@p_BRANCH_ID,'') <> ''
|
317
|
AND ((ISNULL(@p_BRANCH_ID,'') = 'DV0001' AND ISNULL(@p_DEP_ID,'') <> '')
|
318
|
OR (ISNULL(@p_BRANCH_ID,'') <> 'DV0001' AND ISNULL(@p_DEP_ID,'') = ''))
|
319
|
AND (ISNULL(A.BRANCH_ID,'') <> ISNULL(@p_BRANCH_ID,'')
|
320
|
OR ISNULL(A.DEP_ID,'') <> ISNULL(@p_DEP_ID,''))))
|
321
|
BEGIN
|
322
|
--NẾU LÀ DVCM THÌ SKIP. KHÔNG UPDATE BRANCH VÀ DEP
|
323
|
IF(NOT EXISTS(SELECT 1
|
324
|
FROM TL_USER A
|
325
|
LEFT JOIN AbpUserRoles B ON A.ID = B.UserId
|
326
|
LEFT JOIN AbpRoles C ON B.RoleId = C.Id
|
327
|
WHERE A.TLNANME = @TLNAME AND C.DisplayName = 'DVCM'))
|
328
|
BEGIN
|
329
|
|
330
|
UPDATE CM_EMPLOYEE SET BRANCH_ID = @p_BRANCH_ID, DEP_ID = @p_DEP_ID
|
331
|
WHERE EMP_CODE = @p_EMP_CODE
|
332
|
|
333
|
--CHECK UPDATE TL_USER VÀ CM_EMPLOYEE_LOG
|
334
|
IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE_LOG WHERE EMP_CODE = @p_EMP_CODE))
|
335
|
BEGIN
|
336
|
UPDATE CM_EMPLOYEE_LOG SET BRANCH_CODE = (SELECT TOP 1 BRANCH_CODE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_ID),
|
337
|
DEP_CODE = (SELECT TOP 1 DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID = @p_DEP_ID)
|
338
|
WHERE EMP_CODE = @p_EMP_CODE AND USER_DOMAIN = @TLNAME
|
339
|
|
340
|
UPDATE TL_USER SET TLSUBBRID = @p_BRANCH_ID, SECUR_CODE = @p_DEP_ID, DEP_ID = @p_DEP_ID
|
341
|
WHERE TLNANME = @TLNAME
|
342
|
END
|
343
|
END
|
344
|
|
345
|
END
|
346
|
|
347
|
--PHUCVH 22/12/22 CHECK NẾU MA CHUC DANH THAY ĐỔI THÌ UPDATE
|
348
|
IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE A WHERE A.EMP_CODE = @p_EMP_CODE
|
349
|
AND ISNULL(A.POS_CODE,'') <> ISNULL(@p_POS_CODE,'')))
|
350
|
BEGIN
|
351
|
UPDATE CM_EMPLOYEE SET POS_CODE = @p_POS_CODE, POS_NAME = @p_POS_NAME
|
352
|
WHERE EMP_CODE = @p_EMP_CODE
|
353
|
|
354
|
UPDATE CM_EMPLOYEE_LOG SET POS_CODE = @p_POS_CODE, POS_NAME = @p_POS_NAME
|
355
|
WHERE EMP_CODE = @p_EMP_CODE AND USER_DOMAIN = @TLNAME
|
356
|
END
|
357
|
|
358
|
--IF @@Error <> 0 GOTO ABORT
|
359
|
--SET @Message = N'Đồng bộ điều chuyển nhân sự thành công'
|
360
|
END
|
361
|
ELSE
|
362
|
BEGIN
|
363
|
--KHÔNG CÓ TRONG HỆ THỐNG
|
364
|
--THÊM THÔNG TIN NHÂN VIÊN
|
365
|
EXEC SYS_CodeMasters_Gen 'CM_EMPLOYEE', @l_EMP_ID out
|
366
|
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],[POS_CODE],[POS_NAME])
|
367
|
VALUES(@l_EMP_ID ,@p_EMP_CODE ,@p_EMP_NAME ,@p_BRANCH_ID ,@p_DEP_ID ,@p_NOTES ,@p_RECORD_STATUS ,@p_AUTH_STATUS ,@p_MAKER_ID ,CONVERT(DATETIME, @p_CREATE_DT, 103) ,@p_CHECKER_ID ,CONVERT(DATETIME, @p_APPROVE_DT, 103), @p_POS_CODE, @p_POS_NAME )
|
368
|
--IF @@Error <> 0 GOTO ABORT
|
369
|
--SET @Message = N'Đồng bộ nhân viên mới thành công'
|
370
|
END
|
371
|
END
|
372
|
|
373
|
|
374
|
END
|
375
|
END
|