Project

General

Profile

DIEU_CHUYEN_NOI_BO.txt

Luc Tran Van, 04/21/2023 01:54 PM

 
1
ALTER TRIGGER dbo.TRIG_CM_EMPLOYEE_SYNC_Ins
2
	ON dbo.CM_EMPLOYEE_SYNC
3
	AFTER INSERT
4
AS 
5
BEGIN
6
  --STORE ĐỒNG BỘ NHÂN VIÊN VÀ ĐIỀU CHUYỂN TÀI SẢN NHÂN SỰ
7
  --29/09/22
8
	SET NOCOUNT ON;
9
          IF (EXISTS(SELECT TOP 1 MaNS FROM INSERTED)) 
10
          BEGIN  
11
          
12
              DECLARE @MaDV_Cu_SYNC VARCHAR(500) = (SELECT TOP 1 MaDVCu FROM INSERTED)
13
              DECLARE @MaDV_Moi_SYNC VARCHAR(500) = (SELECT TOP 1 MaDVMoi FROM INSERTED) 
14

    
15
              --UPDATE MÃ MỚI DO KT UPDATE
16
              IF(@MaDV_Cu_SYNC = '0100')
17
              BEGIN
18
                  SET @MaDV_Cu_SYNC = '0600'
19
              END
20

    
21
              IF(@MaDV_Cu_SYNC = '0101')
22
              BEGIN
23
                  SET @MaDV_Cu_SYNC = '0601'
24
              END
25

    
26
              IF(@MaDV_Moi_SYNC = '0100')
27
              BEGIN
28
                  SET @MaDV_Moi_SYNC = '0600'
29
              END
30

    
31
              IF(@MaDV_Moi_SYNC = '0101')
32
              BEGIN
33
                  SET @MaDV_Moi_SYNC = '0601'
34
              END
35
                
36
              --MAP DATA HR VỚI KT
37
              IF(EXISTS(SELECT 1 FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Cu_SYNC))
38
              BEGIN
39
                  SET @MaDV_Cu_SYNC = (SELECT TOP 1 KT_ID FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Cu_SYNC)
40
              END
41
              IF(EXISTS(SELECT 1 FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Moi_SYNC))
42
              BEGIN
43
                  SET @MaDV_Moi_SYNC = (SELECT TOP 1 KT_ID FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Moi_SYNC)
44
              END
45
              DECLARE @MACD_CU_SYNC VARCHAR(500) = (SELECT TOP 1 MaCDCu FROM INSERTED)
46
              DECLARE @MACD_MOI_SYNC VARCHAR(500) = (SELECT TOP 1 MaCDMoi FROM INSERTED)
47
    
48
            --START: PARAM INSERT NHÂN VIÊN MỚI
49
              DECLARE @l_EMP_ID VARCHAR(500)
50
              DECLARE @p_EMP_CODE	varchar(500)  = (SELECT TOP 1 MaNS FROM INSERTED)
51
              DECLARE @p_EMP_NAME	nvarchar(500)  = (SELECT TOP 1 HoTen FROM INSERTED)
52
      
53
              DECLARE @p_BRANCH_ID	varchar(15) = NULL 
54
              DECLARE @p_DEP_ID	varchar(15) = NULL             
55
              
56
              DECLARE @p_POS_CODE VARCHAR(50) = NULL
57
              DECLARE @p_POS_NAME NVARCHAR(MAX) = NULL             
58
      
59
              DECLARE @p_NOTES	nvarchar(1000)  = N'ĐỒNG BỘ'
60
              DECLARE @p_RECORD_STATUS	varchar(1)  = '1'
61
              DECLARE @p_AUTH_STATUS	varchar(1)  = 'A'
62
              DECLARE @p_MAKER_ID	varchar(15)  = 'ADMIN'
63
              DECLARE @p_CREATE_DT	VARCHAR(50) = GETDATE()
64
              DECLARE @p_CHECKER_ID	varchar(15)  = 'ADMIN'
65
              DECLARE @p_APPROVE_DT	VARCHAR(50) = GETDATE()
66
            --END: PARAM INSERT NHÂN VIÊN MỚI
67
    
68
            --START: PARAM INSERT CM_EMPLOYEE_TRANSFER_LOG
69
              DECLARE @I_EMP_ID VARCHAR(20) = (SELECT TOP 1 ce.EMP_ID FROM CM_EMPLOYEE ce WHERE ce.EMP_CODE = (SELECT MaNS FROM INSERTED))
70
              DECLARE @I_STATUS VARCHAR(5) 
71
    
72
              DECLARE @C_Ma_DV_Cu VARCHAR(500) = NULL  --MÃ ĐV CŨ ĐỂ CHECK IF
73
              DECLARE @C_Ma_DV_Moi VARCHAR(500) = NULL --MÃ DV MỚI ĐỂ CHECK IF
74
              DECLARE @C_Ma_PB_Cu VARCHAR(500) = NULL  --MÃ PB CŨ ĐỂ CHECK IF
75
              DECLARE @C_Ma_PB_Moi VARCHAR(500) = NULL --MÃ PB MỚI ĐỂ CHECK IF
76
            --END: PARAM INSERT CM_EMPLOYEE_TRANSFER_LOG
77

    
78
              DECLARE @TLNAME VARCHAR(200) = NULL
79

    
80
              DECLARE @BLOCK_ID_OLD VARCHAR(15) = NULL --Mã khối cũ check điều chuyển nhân sự
81
              DECLARE @CENTER_ID_OLD VARCHAR(15) = NULL  --Mã trung tâm cũ check điều chuyển nhân sự
82
              DECLARE @DEP_ID_OLD VARCHAR(15) = NULL  --Mã phòng ban cũ check điều chuyển nhân sự
83

    
84
              DECLARE @BLOCK_ID_NEW VARCHAR(15) = NULL  --Mã khối mới check điều chuyển nhân sự
85
              DECLARE @CENTER_ID_NEW VARCHAR(15) = NULL  --Mã trung tâm mới check điều chuyển nhân sự
86
              DECLARE @DEP_ID_NEW VARCHAR(15) = NULL  --Mã phòng ban mới check điều chuyển nhân sự
87
    
88
            --START: PARAM INSERT 
89
    
90
            --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
91
            IF (EXISTS(SELECT TOP 1 MaDVCu FROM INSERTED WHERE MaDVCu IS NOT NULL AND MaDVCu <> ''))
92
            BEGIN 
93
                --CHECK XEM MÃ LÀ ĐƠN VỊ HAY PHÒNG BAN
94
                IF(EXISTS(SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC))
95
                BEGIN
96
                    SET @p_BRANCH_ID = 'DV0001'
97
                    SET @C_Ma_DV_Cu = 'DV0001'
98
                    SET @p_DEP_ID = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC)
99
                    SET @C_Ma_PB_Cu = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC)
100
                END
101
                ELSE
102
                BEGIN
103
                    SET @p_BRANCH_ID = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Cu_SYNC)
104
                    SET @C_Ma_DV_Cu = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Cu_SYNC)
105
                END         
106
            END
107
            --ELSE
108
    
109
            IF(EXISTS(SELECT TOP 1 MaDVMoi FROM INSERTED WHERE MaDVMoi IS NOT NULL AND MaDVMoi <> ''))
110
            BEGIN
111
                --CHECK XEM MÃ LÀ ĐƠN VỊ HAY PHÒNG BAN
112
                IF(EXISTS(SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = (SELECT MaDVMoi FROM INSERTED)))
113
                BEGIN
114
                    SET @p_BRANCH_ID = 'DV0001'
115
                    SET @C_Ma_DV_Moi = 'DV0001'
116
                    SET @p_DEP_ID = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Moi_SYNC)
117
                    SET @C_Ma_PB_Moi = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Moi_SYNC)
118
                END
119
                ELSE
120
                BEGIN
121
                    SET @p_BRANCH_ID = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Moi_SYNC)
122
                    SET @C_Ma_DV_Moi = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Moi_SYNC)
123
                END
124
            END        
125
            
126
            --GET KHỐI, TRUNG TÂM, PHÒNG BAN
127
            EXEC CM_DEPARTMENT_GET_BLOCK_CENTER @C_Ma_PB_Cu ,@BLOCK_ID_OLD OUT ,@CENTER_ID_OLD OUT , @DEP_ID_OLD OUT   
128
                                   
129
            --GET KHỐI, TRUNG TÂM, PHÒNG BAN
130
            EXEC CM_DEPARTMENT_GET_BLOCK_CENTER @C_Ma_PB_Moi, @BLOCK_ID_NEW OUT ,@CENTER_ID_NEW OUT ,@DEP_ID_NEW OUT     
131
                               
132
            IF(@p_BRANCH_ID <> 'DV0001')
133
            BEGIN
134
                SET @p_DEP_ID = NULL
135
            END
136

    
137
            PRINT @C_Ma_DV_Cu
138
            PRINT @C_Ma_DV_Moi
139
        		IF((@C_Ma_DV_Cu IS NULL OR @C_Ma_DV_Cu = '') AND (@C_Ma_DV_Moi IS NULL OR @C_Ma_DV_Moi = ''))
140
        		BEGIN
141
          			--N'Mã DV cũ và Mã DV mới không có giá trị'
142
                PRINT 1
143
        		END
144
            ELSE
145
            BEGIN
146
            
147
              IF((SELECT COUNT(*) FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE) > 1)
148
              BEGIN
149
                    SET @TLNAME = (SELECT TOP 1 CEL.USER_DOMAIN FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE 
150
                              AND CEL.BRANCH_CODE = @MaDV_Cu_SYNC
151
                              AND (CEL.DEP_CODE = @C_Ma_PB_Cu OR @C_Ma_PB_Cu IS NULL))
152
              END
153
              ELSE
154
              BEGIN
155
                  SET @TLNAME = (SELECT TOP 1 CEL.USER_DOMAIN FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE)
156
              END
157

    
158
            --CHECK DATA CHỨC DANH LƯU CỘT CDMOI HAY CDCU
159
            IF(EXISTS(SELECT 1 FROM INSERTED WHERE MaCDMoi IS NOT NULL AND MaCDMoi <> ''))
160
            BEGIN
161
                  --NẾU CHỨC DANH CHƯA CÓ TRONG HỆ THỐNG THÌ THÊM MỚI CHỨC DANH
162
                  IF(NOT EXISTS(SELECT 1 FROM CM_MAPPING_CHUCDANH_ROLE WHERE MA_CHUC_DANH = @MACD_MOI_SYNC))
163
                  BEGIN
164
                       INSERT INTO CM_MAPPING_CHUCDANH_ROLE (MA_CHUC_DANH, TEN_CHUC_DANH, NHOM_CHUC_DANH, ROLE_ID)
165
                       VALUES (@MACD_MOI_SYNC, (SELECT TOP 1 CDMoi FROM INSERTED), NULL, NULL);
166
                  END
167
    
168
                  SET @p_POS_CODE = @MACD_MOI_SYNC
169
                  SET @p_POS_NAME = (SELECT TOP 1 CDMoi FROM INSERTED)
170
            END
171
            ELSE IF(EXISTS(SELECT 1 FROM INSERTED WHERE MaCDCu IS NOT NULL AND MaCDCu <> ''))
172
            BEGIN
173
                  --NẾU CHỨC DANH CHƯA CÓ TRONG HỆ THỐNG THÌ THÊM MỚI CHỨC DANH
174
                  IF(NOT EXISTS(SELECT 1 FROM CM_MAPPING_CHUCDANH_ROLE WHERE MA_CHUC_DANH = @MACD_CU_SYNC))
175
                  BEGIN
176
                       INSERT INTO CM_MAPPING_CHUCDANH_ROLE (MA_CHUC_DANH, TEN_CHUC_DANH, NHOM_CHUC_DANH, ROLE_ID)
177
                       VALUES (@MACD_CU_SYNC, (SELECT TOP 1 CDCu FROM INSERTED), NULL, NULL);
178
                  END
179
    
180
                  SET @p_POS_CODE = @MACD_CU_SYNC
181
                  SET @p_POS_NAME = (SELECT TOP 1 CDCu FROM INSERTED)
182
            END
183
    
184
    
185
             --CHECK NHÂN VIÊN XEM CÓ XEM TRONG HỆ THỐNG KHÔNG
186
             IF(EXISTS(SELECT TOP 1 ce.EMP_ID FROM CM_EMPLOYEE ce WHERE ce.EMP_CODE = (SELECT MaNS FROM INSERTED)))
187
             BEGIN
188
                
189
                IF(EXISTS(
190
                        SELECT atmd.ASSET_ID FROM ASS_TRANSFER_MULTI_DT atmd
191
                        WHERE (atmd.EMP_ID = @I_EMP_ID AND atmd.EMP_ID_OLD = @I_EMP_ID 
192
                                               AND (atmd.BRANCH_ID = @C_Ma_DV_Moi AND atmd.BRANCH_ID_OLD = @C_Ma_DV_Cu
193
                                                    AND ISNULL(atmd.KHOI_ID_OLD,'') = ISNULL(@BLOCK_ID_OLD,'') AND ISNULL(atmd.KHOI_ID,'') = ISNULL(@BLOCK_ID_NEW,'')
194
                                                    AND ISNULL(atmd.CENTER_ID_OLD,'') = ISNULL(@CENTER_ID_OLD,'') AND ISNULL(atmd.CENTER_ID,'') = ISNULL(@CENTER_ID_NEW,'')
195
                                                    AND ISNULL(atmd.DEPT_ID_OLD,'') = ISNULL(@DEP_ID_OLD,'') AND ISNULL(atmd.DEPT_ID,'') = ISNULL(@DEP_ID_NEW,''))  
196
      																				 AND atmd.AUTH_STATUS_KT <> 'A') --ĐIỀU CHUYỂN TS TỪ ĐV NÀY SANG ĐV KHÁC CHO CÙNG NV
197
                              OR (atmd.EMP_ID_OLD = @I_EMP_ID AND atmd.EMP_ID <> @I_EMP_ID  
198
                                  AND atmd.BRANCH_ID_OLD = @C_Ma_DV_Cu 
199
                                  AND ISNULL(atmd.KHOI_ID_OLD,'') = ISNULL(@BLOCK_ID_OLD,'')
200
                                  AND ISNULL(atmd.CENTER_ID_OLD,'') = ISNULL(@CENTER_ID_OLD,'')
201
                                  AND ISNULL(atmd.DEPT_ID_OLD,'') = ISNULL(@DEP_ID_OLD,'')
202
                                  AND atmd.AUTH_STATUS_KT <> 'A') --ĐIỀU CHUYỂN TS TỪ ĐV NÀY SANG ĐV KHÁC NHƯNG KHÁC NV
203
                        UNION ALL
204
                        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 ))                             
205
                  SET @I_STATUS = '0'
206
                ELSE
207
                  SET @I_STATUS = '1'
208
      
209
                INSERT INTO CM_EMPLOYEE_TRANSFER_LOG (EMP_ID, TRANSFER_DT, BRANCH_ID_OLD, DEP_ID_OLD, BRANCH_ID_NEW, DEP_ID_NEW, STATUS)
210
                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);  
211
      
212
                --CHECK TRƯỜNG HỢP 1 NHÂN VIÊN CÓ QUYỀN 2 CHI NHÁNH TRỞ TRÊN (KHÁC TLNAME)
213

    
214
                --PHUCVH 22/12/22 CHECK NẾU MADV,PB MỚI THAY ĐỔI THÌ UPDATE LẠI MADV,PB CHO NHANVIEN
215
                IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE A WHERE A.EMP_CODE = @p_EMP_CODE 
216
                              AND ISNULL(@p_BRANCH_ID,'') <> ''
217
                              AND ((ISNULL(@p_BRANCH_ID,'') = 'DV0001' AND ISNULL(@p_DEP_ID,'') <> '')
218
                                    OR (ISNULL(@p_BRANCH_ID,'') <> 'DV0001' AND ISNULL(@p_DEP_ID,'') = ''))
219
                              AND (ISNULL(A.BRANCH_ID,'') <> ISNULL(@p_BRANCH_ID,'')
220
                                  OR ISNULL(A.DEP_ID,'') <> ISNULL(@p_DEP_ID,''))))
221
                BEGIN
222
                      UPDATE CM_EMPLOYEE SET BRANCH_ID = @p_BRANCH_ID, DEP_ID = @p_DEP_ID 
223
                      WHERE EMP_CODE = @p_EMP_CODE
224
    
225
                      --CHECK UPDATE TL_USER VÀ CM_EMPLOYEE_LOG
226
                      IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE_LOG WHERE EMP_CODE = @p_EMP_CODE))
227
                      BEGIN
228
                          UPDATE CM_EMPLOYEE_LOG SET BRANCH_CODE = (SELECT TOP 1 BRANCH_CODE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_ID),
229
                                                     DEP_CODE = (SELECT TOP 1 DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID = @p_DEP_ID)
230
                          WHERE EMP_CODE = @p_EMP_CODE AND USER_DOMAIN = @TLNAME
231
    
232
                          UPDATE TL_USER SET TLSUBBRID = @p_BRANCH_ID, SECUR_CODE = @p_DEP_ID, DEP_ID = @p_DEP_ID
233
                          WHERE TLNANME = @TLNAME
234
                      END
235
    
236
                END  
237
                
238
                --PHUCVH 22/12/22 CHECK NẾU MA CHUC DANH THAY ĐỔI THÌ UPDATE
239
                IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE A WHERE A.EMP_CODE = @p_EMP_CODE
240
                                AND ISNULL(A.POS_CODE,'') <> ISNULL(@p_POS_CODE,'')))
241
                BEGIN
242
                     UPDATE CM_EMPLOYEE SET POS_CODE = @p_POS_CODE, POS_NAME = @p_POS_NAME
243
                     WHERE EMP_CODE = @p_EMP_CODE 
244
    
245
                     UPDATE CM_EMPLOYEE_LOG SET POS_CODE = @p_POS_CODE, POS_NAME = @p_POS_NAME
246
                     WHERE EMP_CODE = @p_EMP_CODE AND USER_DOMAIN = @TLNAME
247
                END                     
248
    
249
                --IF @@Error <> 0 GOTO ABORT
250
          		  --SET @Message = N'Đồng bộ điều chuyển nhân sự thành công'
251
             END
252
             ELSE
253
             BEGIN
254
                --KHÔNG CÓ TRONG HỆ THỐNG
255
                --THÊM THÔNG TIN NHÂN VIÊN
256
                		EXEC SYS_CodeMasters_Gen 'CM_EMPLOYEE', @l_EMP_ID out		       
257
                		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])
258
                		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 )
259
                    --IF @@Error <> 0 GOTO ABORT
260
            				--SET @Message = N'Đồng bộ nhân viên mới thành công'
261
             END
262
            END
263
    
264
            
265
          END
266
END
267

    
268
GO
269
ALTER PROC dbo.ASS_PRIVATE_TRANSFER_MULTI_MASTER_BBBG
270
@TRANS_MULTI_MASTER_ID	varchar(15) = null
271
AS 
272
BEGIN
273
DECLARE @EMP_RECEIVER VARCHAR(1) = NULL
274
DECLARE @EMP_HANDOVER VARCHAR(1) = NULL
275
--Table 0 Nội dung && BRANCH
276
SELECT TOP 1 B.BRANCH_NAME + ISNULL(' - ' + C.DEP_NAME,'') BRANCH_NAME, 
277
(N'Hôm nay, ngày ' + CONVERT(VARCHAR(5),DAY(GETDATE())) + N' tháng ' + CONVERT(VARCHAR(5),MONTH(GETDATE())) + N' năm ' + CONVERT(VARCHAR(5),YEAR(GETDATE())) + N' tại ') AS DD_MM_YY
278
FROM ASS_PRIVATE_TRANSFER_DT A
279
LEFT JOIN CM_BRANCH B ON A.BRANCH_ID_OLD = B.BRANCH_ID
280
LEFT JOIN CM_DEPARTMENT C ON A.DEPT_ID = C.DEP_ID
281
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
282

    
283

    
284
--Table 1 Bên giao
285
SELECT TOP 1 D.EMP_NAME TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME, ISNULL(E.BRANCH_NAME,'') + ISNULL(' - ' + F.DEP_NAME,'') AS BRANCH_NAME
286
FROM ASS_PRIVATE_TRANSFER_DT A 
287
LEFT JOIN CM_EMPLOYEE D ON A.EMP_ID_OLD = D.EMP_ID
288
LEFT JOIN CM_EMPLOYEE_LOG C ON D.EMP_CODE = C.EMP_CODE
289
LEFT JOIN TL_USER B ON C.USER_DOMAIN = B.TLNANME
290
LEFT JOIN CM_BRANCH E ON B.TLSUBBRID = E.BRANCH_ID
291
LEFT JOIN CM_DEPARTMENT F ON B.DEP_ID = F.DEP_ID
292
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID 
293
ORDER BY A.EMP_ID_OLD DESC
294

    
295
--Table 2 Bên nhận
296
SELECT TOP 1 D.EMP_NAME TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME, ISNULL(E.BRANCH_NAME,'') + ISNULL(' - ' + F.DEP_NAME,'') AS BRANCH_NAME
297
FROM ASS_PRIVATE_TRANSFER_DT A 
298
LEFT JOIN CM_EMPLOYEE D ON A.EMP_ID = D.EMP_ID
299
LEFT JOIN CM_EMPLOYEE_LOG C ON D.EMP_CODE = C.EMP_CODE
300
LEFT JOIN TL_USER B ON C.USER_DOMAIN = B.TLNANME
301
LEFT JOIN CM_BRANCH E ON B.TLSUBBRID = E.BRANCH_ID
302
LEFT JOIN CM_DEPARTMENT F ON B.DEP_ID = F.DEP_ID
303
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID 
304
ORDER BY A.EMP_ID DESC
305

    
306
--TABLE 3 DANH SÁCH TÀI SẢN
307
SELECT 
308
CASE 
309
 	WHEN B.ASSET_CODE IS NOT NULL AND B.ASSET_CODE <> '' THEN B.ASSET_CODE
310
 	ELSE B.ASS_CODE_TMP
311
 END AS ASSET_CODE, B.ASSET_NAME, D.UNIT_NAME, 1 AS QUANTITY, A.DESCRIPTION AS NOTES, 
312
 E.STATUS_NAME, B.ASSET_SERIAL_NO AS SERIAL, ISNULL(B.PL,'') REQ_CODE, B.NOTES AS QUY_CACH, ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS STT
313
FROM ASS_PRIVATE_TRANSFER_DT A
314
LEFT JOIN ASS_MASTER B ON A.ASSET_ID = B.ASSET_ID
315
LEFT JOIN ASS_GROUP C ON B.GROUP_ID = C.GROUP_ID
316
LEFT JOIN CM_UNIT D ON C.UNIT = D.UNIT_ID 
317
LEFT JOIN ASS_STATUS E ON B.ASS_STATUS = E.STATUS_ID
318
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
319

    
320
--TABLE 4 CHỮ KÝ
321
SELECT TOP 1 B.EMP_NAME AS MAKER_NAME, --BÊN GIAO
322
ISNULL(B.POS_NAME + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1   PP.APPROVE_DT FROM PL_PROCESS PP 
323
                                                                  WHERE PP.REQ_ID = D.TRANS_MULTI_MASTER_ID AND PP.PROCESS_ID = 'SEND'
324
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss'),'')  AS POS_NAME,--BÊN GIAO
325
C.EMP_NAME AS CHECKER_NAME, --BÊN NHẬN
326
ISNULL(C.POS_NAME + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1   PP.APPROVE_DT FROM PL_PROCESS PP 
327
                                                                  WHERE PP.REQ_ID = D.TRANS_MULTI_MASTER_ID AND PP.PROCESS_ID = 'APPROVE'
328
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss'),'')  AS POS_NAME_2  --BÊN NHẬN
329
FROM ASS_PRIVATE_TRANSFER_DT A
330
LEFT JOIN ASS_PRIVATE_TRANSFER_MASTER D ON A.TRANS_MULTI_MASTER_ID = D.TRANS_MULTI_MASTER_ID
331
LEFT JOIN CM_EMPLOYEE B ON A.EMP_ID_OLD = B.EMP_ID --BÊN GIAO
332
LEFT JOIN CM_EMPLOYEE C ON A.EMP_ID = C.EMP_ID -- BÊN NHẬN
333
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
334

    
335
--TABLE 5 SỐ
336
SELECT @TRANS_MULTI_MASTER_ID AS NO
337

    
338
--TABLE 6 ĐƠN VỊ TRUNG GIAN
339
SELECT '' TLFullName, '' ADDRESS, '' PHONE, '' POS_NAME
340
--SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME
341
--FROM  ASS_PRIVATE_TRANSFER_MASTER A
342
--LEFT JOIN TL_USER B ON A.CHECKER_ID = B.TLNANME
343
--LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
344
--WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID AND A.DEPT_CREATE = 'DEP000000000048'
345

    
346

    
347
END