Project

General

Profile

BBBG_2.txt

Luc Tran Van, 05/09/2023 05:38 PM

 
1
ALTER     PROC dbo.ASS_USE_MULTI_HANDOVER_RECORD
2
@USER_MASTER_ID VARCHAR(15) = NULL
3
AS
4
BEGIN
5
--Table 0 Nội dung && BRANCH
6
SELECT N'Hội sở - PHÒNG QUẢN LÝ TÀI SẢN' AS BRANCH_NAME,
7
(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,
8
A.CONTENT AS TITLE
9
FROM ASS_USE_MULTI_MASTER A
10
WHERE A.USER_MASTER_ID = @USER_MASTER_ID
11
--Table 1 Bên giao
12
SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME, ISNULL(D.BRANCH_NAME,'') + ISNULL(' - ' + E.DEP_NAME,'') AS BRANCH_NAME
13
FROM  ASS_USE_MULTI_MASTER A
14
LEFT JOIN TL_USER B ON A.MAKER_ID = B.TLNANME
15
LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
16
LEFT JOIN CM_BRANCH D ON A.BRANCH_CREATE = D.BRANCH_ID
17
LEFT JOIN CM_DEPARTMENT E ON A.DEPT_CREATE = E.DEP_ID
18
WHERE A.USER_MASTER_ID = @USER_MASTER_ID
19
--Table 2 Bên nhận
20
--Fix tạm UAT
21
IF(EXISTS(SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME
22
    FROM  ASS_USE_CONFIRM_MASTER A
23
    LEFT JOIN TL_USER B ON A.MAKER_ID = B.TLNANME
24
    LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
25
    WHERE A.USER_MASTER_ID = @USER_MASTER_ID))
26
BEGIN
27
SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME, ISNULL(D.BRANCH_NAME,'') + ISNULL(' - ' + E.DEP_NAME,'') AS BRANCH_NAME
28
FROM  ASS_USE_CONFIRM_MASTER A
29
LEFT JOIN TL_USER B ON A.MAKER_ID = B.TLNANME
30
LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
31
LEFT JOIN CM_BRANCH D ON A.BRANCH_ID = D.BRANCH_ID
32
LEFT JOIN CM_DEPARTMENT E ON A.DEP_ID = E.DEP_ID
33
WHERE A.USER_MASTER_ID = @USER_MASTER_ID
34
END
35
ELSE
36
BEGIN
37
SELECT '' TLFullName, '' ADDRESS, '' PHONE, '' POS_NAME
38
END
39
--TABLE 3 DANH SÁCH TÀI SẢN
40
SELECT CASE 
41
       	WHEN B.ASSET_CODE IS NOT NULL AND B.ASSET_CODE <> '' THEN B.ASSET_CODE
42
       	ELSE B.ASS_CODE_TMP
43
       END AS ASSET_CODE, B.ASSET_NAME, D.UNIT_NAME, 1 AS QUANTITY, 
44
       E.STATUS_NAME, B.ASSET_SERIAL_NO AS SERIAL, R.REQ_CODE AS REQ_CODE, B.NOTES AS QUY_CACH, A.NOTES, ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS STT
45
       ,CE.EMP_NAME
46
FROM ASS_USE_MULTI_DT A
47
LEFT JOIN TR_REQUEST_SHOP_DOC R ON A.REQ_ID = R.REQ_ID
48
LEFT JOIN ASS_MASTER B ON A.ASSET_ID = B.ASSET_ID
49
LEFT JOIN ASS_GROUP C ON B.GROUP_ID = C.GROUP_ID
50
LEFT JOIN CM_UNIT D ON C.UNIT = D.UNIT_ID 
51
LEFT JOIN ASS_STATUS E ON B.ASS_STATUS = E.STATUS_ID
52
LEFT JOIN CM_EMPLOYEE CE ON A.EMP_ID = CE.EMP_ID
53
WHERE A.USER_MASTER_ID = @USER_MASTER_ID
54
--TABLE 4 CHỮ KÝ
55
SELECT TOP 1 E.TLFullName AS CHECKER_NAME, --BÊN NHẬN
56
ISNULL(C.POS_NAME,'') + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1 PP.APPROVE_DT FROM PL_PROCESS PP 
57
                                                                  WHERE PP.REQ_ID = A.USER_MASTER_ID AND PP.PROCESS_ID = 'CONFIRM'
58
                                                                  AND PP.CHECKER_ID = B.MAKER_ID
59
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss') AS POS_NAME_2,--BÊN NHẬN
60
D.TLFullName AS MAKER_NAME, --BÊN GIAO 
61
--G.TLFullName AS INTERMEDIATE_UNIT_NAME, --ĐƠN VỊ TRUNG GIAN
62
ISNULL(F.POS_NAME,'') + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1 PP.APPROVE_DT FROM PL_PROCESS PP 
63
                                                                  WHERE PP.REQ_ID = A.USER_MASTER_ID AND PP.PROCESS_ID = 'SEND'
64
                                                                  AND PP.CHECKER_ID = A.MAKER_ID
65
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss') AS POS_NAME --BÊN GIAO 
66
--H.POS_NAME AS POS_NAME_1  -- ĐƠN VỊ TRUNG GIAN
67
FROM ASS_USE_MULTI_MASTER A
68
LEFT JOIN ASS_USE_CONFIRM_MASTER B ON A.USER_MASTER_ID = B.USER_MASTER_ID
69
LEFT JOIN TL_USER E ON B.MAKER_ID = E.TLNANME --BÊN NHẬN
70
LEFT JOIN CM_EMPLOYEE_LOG C ON B.MAKER_ID = C.USER_DOMAIN --BÊN NHẬN
71
LEFT JOIN TL_USER D ON A.MAKER_ID = D.TLNANME --BÊN GIAO 
72
LEFT JOIN CM_EMPLOYEE_LOG F ON D.TLNANME = F.USER_DOMAIN
73
--LEFT JOIN TL_USER G ON A.CHECKER_ID = G.TLNANME -- DVTG
74
--LEFT JOIN CM_EMPLOYEE_LOG H ON A.CHECKER_ID = H.USER_DOMAIN --DVTG
75
WHERE A.USER_MASTER_ID = @USER_MASTER_ID
76
--TABLE 5 SỐ
77
SELECT @USER_MASTER_ID AS NO
78
--TABLE 6 ĐƠN VỊ TRUNG GIAN
79
SELECT '' TLFullName, '' ADDRESS, '' PHONE, '' POS_NAME
80
--SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME, ISNULL(D.BRANCH_NAME,'') + ISNULL(' - ' + E.DEP_NAME,'') AS BRANCH_NAME
81
--FROM  ASS_USE_MULTI_MASTER A
82
--LEFT JOIN TL_USER B ON A.CHECKER_ID = B.TLNANME
83
--LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
84
--LEFT JOIN CM_BRANCH D ON A.BRANCH_CREATE = D.BRANCH_ID
85
--LEFT JOIN CM_DEPARTMENT E ON A.DEPT_CREATE = E.DEP_ID
86
--WHERE A.USER_MASTER_ID = @USER_MASTER_ID
87
END
88
GO
89

    
90

    
91
ALTER PROC dbo.ASS_COL_MULTI_HANDOVER_RECORD
92
@COL_MULTI_MASTER_ID VARCHAR(15) = NULL
93
AS
94
BEGIN
95
--Table 0 Nội dung && BRANCH
96
SELECT TOP 1 B.BRANCH_NAME  + ISNULL(' - ' + C.DEP_NAME,'') AS BRANCH_NAME,
97
D.CONTENT AS TITLE
98
,(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
99
FROM ASS_COLLECT_MULTI_DT A
100
LEFT JOIN CM_BRANCH B ON A.BRANCH_ID = B.BRANCH_ID
101
LEFT JOIN CM_DEPARTMENT C ON A.DEPT_ID_USE = C.DEP_ID
102
LEFT JOIN ASS_COLLECT_MULTI_MASTER D ON A.COL_MULTI_MASTER_ID = D.COL_MULTI_MASTER_ID
103
WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID
104
--Table 1 Bên giao
105
--Fix tạm UAT
106
IF(EXISTS(SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME
107
          FROM  ASS_COLLECT_CONFIRM_MASTER A
108
          LEFT JOIN TL_USER B ON A.MAKER_ID = B.TLNANME
109
          LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
110
          WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID))
111
BEGIN
112
--    IF(EXISTS(SELECT 1 FROM ASS_COLLECT_MULTI_MASTER acmm WHERE acmm.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID AND acmm.REQ_ID IS NOT NULL AND acmm.REQ_ID <> ''))
113
--    BEGIN
114
--        SELECT TOP 1  C.TLFullName, C.ADDRESS, C.PHONE, D.POS_NAME, ISNULL(E.BRANCH_NAME,'') + ISNULL(' - ' + G.DEP_NAME,'') AS BRANCH_NAME
115
--        FROM ASS_COLLECT_MULTI_MASTER A
116
--        LEFT JOIN TR_REQUEST_SHOP_DOC B ON A.REQ_ID = B.REQ_ID
117
--        LEFT JOIN TL_USER C ON B.MAKER_ID = C.TLNANME
118
--        LEFT JOIN CM_EMPLOYEE_LOG D ON B.MAKER_ID = D.USER_DOMAIN
119
--        LEFT JOIN CM_BRANCH E ON C.TLSUBBRID = E.BRANCH_ID
120
--        LEFT JOIN CM_DEPARTMENT G ON C.DEP_ID = G.DEP_ID
121
--        WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID
122
--    END
123
--    ELSE
124
--    BEGIN
125
        SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME, ISNULL(E.BRANCH_NAME,'') + ISNULL(' - ' + G.DEP_NAME,'') AS BRANCH_NAME
126
        FROM  ASS_COLLECT_CONFIRM_MASTER A
127
        LEFT JOIN TL_USER B ON A.MAKER_ID = B.TLNANME
128
        LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
129
        LEFT JOIN CM_BRANCH E ON B.TLSUBBRID = E.BRANCH_ID
130
        LEFT JOIN CM_DEPARTMENT G ON B.DEP_ID = G.DEP_ID
131
        WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID
132
--    END
133

    
134
END
135
ELSE
136
BEGIN
137
SELECT '' TLFullName, '' ADDRESS, '' PHONE, '' POS_NAME
138
END
139

    
140

    
141
--Table 2 Bên nhận
142
SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME, ISNULL(D.BRANCH_NAME,'') + ISNULL(' - ' + E.DEP_NAME,'') AS BRANCH_NAME
143
FROM  ASS_COLLECT_MULTI_MASTER A
144
LEFT JOIN TL_USER B ON A.CHECKER_ID = B.TLNANME
145
LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
146
LEFT JOIN CM_BRANCH D ON A.BRANCH_ID = D.BRANCH_ID
147
LEFT JOIN CM_DEPARTMENT E ON A.DEPT_CREATE = E.DEP_ID
148
WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID
149

    
150

    
151

    
152
--TABLE 3 DANH SÁCH TÀI SẢN
153
SELECT CASE 
154
       	WHEN B.ASSET_CODE IS NOT NULL AND B.ASSET_CODE <> '' THEN B.ASSET_CODE
155
       	ELSE B.ASS_CODE_TMP
156
       END AS ASSET_CODE, B.ASSET_NAME, D.UNIT_NAME, 1 AS QUANTITY, E.STATUS_NAME, B.ASSET_SERIAL_NO AS SERIAL, REQ.REQ_CODE AS REQ_CODE,B.NOTES AS QUY_CACH, A.NOTES,
157
       --ROW_NUMBER() OVER (PARTITION BY B.ASSET_NAME ORDER BY B.ASSET_NAME) AS STT,
158
       ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS STT,
159
       CA.CONTENT AS COLLECT_REASON
160
FROM ASS_COLLECT_MULTI_DT A
161
LEFT JOIN ASS_MASTER B ON A.ASSET_ID = B.ASSET_ID
162
LEFT JOIN ASS_GROUP C ON B.GROUP_ID = C.GROUP_ID
163
LEFT JOIN CM_UNIT D ON C.UNIT = D.UNIT_ID 
164
LEFT JOIN ASS_STATUS E ON B.ASS_STATUS = E.STATUS_ID
165
LEFT JOIN ASS_COLLECT_MULTI_MASTER  F ON A.COL_MULTI_MASTER_ID = F.COL_MULTI_MASTER_ID
166
LEFT JOIN TR_REQUEST_SHOP_DOC REQ ON F.REQ_ID = REQ.REQ_ID
167
LEFT JOIN CM_ALLCODE CA ON A.PURPOSE_ID = CA.CDVAL AND CA.CDNAME = 'REASON_ASS_REQ' AND CA.CDTYPE = 'REQ_ASSET'
168
WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID
169

    
170
--TABLE 4 CHỮ KÝ
171
--SELECT ''
172
SELECT TOP 1 E.TLFullName AS MAKER_NAME, --BÊN GIAO
173
ISNULL(C.POS_NAME,'') + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1 PP.APPROVE_DT FROM PL_PROCESS PP 
174
                                                                  WHERE PP.REQ_ID = A.COL_MULTI_MASTER_ID AND PP.PROCESS_ID = 'CONFIRM'
175
                                                                  AND PP.CHECKER_ID = B.MAKER_ID
176
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss') AS POS_NAME,--BÊN GIAO
177
D.TLFullName AS CHECKER_NAME, --BÊN NHẬN
178
--D.TLFullName AS INTERMEDIATE_UNIT_NAME, --ĐƠN VỊ TRUNG GIAN
179
--F.POS_NAME AS POS_NAME_1, --ĐƠN VỊ TRUNG GIAN
180
ISNULL(F.POS_NAME,'') + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1 PP.APPROVE_DT FROM PL_PROCESS PP 
181
                                                                  WHERE PP.REQ_ID = A.COL_MULTI_MASTER_ID AND PP.PROCESS_ID = 'APPROVE'
182
                                                                  AND PP.CHECKER_ID = A.CHECKER_ID
183
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss') AS POS_NAME_2  --BÊN NHẬN 
184
FROM ASS_COLLECT_MULTI_MASTER A
185
LEFT JOIN ASS_COLLECT_CONFIRM_MASTER B ON A.COL_MULTI_MASTER_ID = B.COL_MULTI_MASTER_ID
186
LEFT JOIN TL_USER E ON B.MAKER_ID = E.TLNANME --BÊN GIAO
187
LEFT JOIN CM_EMPLOYEE_LOG C ON B.MAKER_ID = C.USER_DOMAIN --BÊN GIAO
188
LEFT JOIN TL_USER D ON A.CHECKER_ID = D.TLNANME --BÊN NHẬN + ĐƠN VỊ TRUNG GIAN
189
LEFT JOIN CM_EMPLOYEE_LOG F ON A.CHECKER_ID = F.USER_DOMAIN --BÊN NHẬN + ĐƠN VỊ TRUNG GIAN
190
WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID
191

    
192
--TABLE 5 SỐ
193
SELECT @COL_MULTI_MASTER_ID AS NO
194

    
195
--TABLE 6 ĐƠN VỊ TRUNG GIAN
196
SELECT '' TLFullName, '' ADDRESS, '' PHONE, '' POS_NAME
197
--SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME,ISNULL(D.BRANCH_NAME,'') + ISNULL(' - ' + E.DEP_NAME,'') AS BRANCH_NAME
198
--FROM  ASS_COLLECT_MULTI_MASTER A
199
--LEFT JOIN TL_USER B ON A.CHECKER_ID = B.TLNANME
200
--LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
201
--LEFT JOIN CM_BRANCH D ON A.BRANCH_ID = D.BRANCH_ID
202
--LEFT JOIN CM_DEPARTMENT E ON A.DEPT_CREATE = E.DEP_ID
203
--WHERE A.COL_MULTI_MASTER_ID = @COL_MULTI_MASTER_ID
204

    
205
END
206
GO
207

    
208
ALTER PROC dbo.ASS_PRIVATE_TRANSFER_MULTI_MASTER_BBBG
209
@TRANS_MULTI_MASTER_ID	varchar(15) = null
210
AS 
211
BEGIN
212
DECLARE @EMP_RECEIVER VARCHAR(1) = NULL
213
DECLARE @EMP_HANDOVER VARCHAR(1) = NULL
214
--Table 0 Nội dung && BRANCH
215
SELECT TOP 1 B.BRANCH_NAME + ISNULL(' - ' + C.DEP_NAME,'') BRANCH_NAME, 
216
(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
217
FROM ASS_PRIVATE_TRANSFER_DT A
218
LEFT JOIN CM_BRANCH B ON A.BRANCH_ID_OLD = B.BRANCH_ID
219
LEFT JOIN CM_DEPARTMENT C ON A.DEPT_ID = C.DEP_ID
220
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
221

    
222

    
223
--Table 1 Bên giao
224
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
225
FROM ASS_PRIVATE_TRANSFER_DT A 
226
LEFT JOIN CM_EMPLOYEE D ON A.EMP_ID_OLD = D.EMP_ID
227
LEFT JOIN CM_EMPLOYEE_LOG C ON D.EMP_CODE = C.EMP_CODE
228
LEFT JOIN TL_USER B ON C.USER_DOMAIN = B.TLNANME
229
LEFT JOIN CM_BRANCH E ON B.TLSUBBRID = E.BRANCH_ID
230
LEFT JOIN CM_DEPARTMENT F ON B.DEP_ID = F.DEP_ID
231
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID 
232
ORDER BY A.EMP_ID_OLD DESC
233

    
234
--Table 2 Bên nhận
235
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
236
FROM ASS_PRIVATE_TRANSFER_DT A 
237
LEFT JOIN CM_EMPLOYEE D ON A.EMP_ID = D.EMP_ID
238
LEFT JOIN CM_EMPLOYEE_LOG C ON D.EMP_CODE = C.EMP_CODE
239
LEFT JOIN TL_USER B ON C.USER_DOMAIN = B.TLNANME
240
LEFT JOIN CM_BRANCH E ON B.TLSUBBRID = E.BRANCH_ID
241
LEFT JOIN CM_DEPARTMENT F ON B.DEP_ID = F.DEP_ID
242
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID 
243
ORDER BY A.EMP_ID DESC
244

    
245
--TABLE 3 DANH SÁCH TÀI SẢN
246
SELECT 
247
CASE 
248
 	WHEN B.ASSET_CODE IS NOT NULL AND B.ASSET_CODE <> '' THEN B.ASSET_CODE
249
 	ELSE B.ASS_CODE_TMP
250
 END AS ASSET_CODE, B.ASSET_NAME, D.UNIT_NAME, 1 AS QUANTITY, A.DESCRIPTION AS NOTES, 
251
 E.STATUS_NAME, B.ASSET_SERIAL_NO AS SERIAL, '' REQ_CODE, B.NOTES AS QUY_CACH, ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS STT
252
FROM ASS_PRIVATE_TRANSFER_DT A
253
LEFT JOIN ASS_MASTER B ON A.ASSET_ID = B.ASSET_ID
254
LEFT JOIN ASS_GROUP C ON B.GROUP_ID = C.GROUP_ID
255
LEFT JOIN CM_UNIT D ON C.UNIT = D.UNIT_ID 
256
LEFT JOIN ASS_STATUS E ON B.ASS_STATUS = E.STATUS_ID
257
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
258

    
259
--TABLE 4 CHỮ KÝ
260
SELECT TOP 1 B.EMP_NAME AS MAKER_NAME, --BÊN GIAO
261
ISNULL(B.POS_NAME + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1   PP.APPROVE_DT FROM PL_PROCESS PP 
262
                                                                  WHERE PP.REQ_ID = D.TRANS_MULTI_MASTER_ID AND PP.PROCESS_ID = 'SEND'
263
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss'),'')  AS POS_NAME,--BÊN GIAO
264
C.EMP_NAME AS CHECKER_NAME, --BÊN NHẬN
265
ISNULL(C.POS_NAME + CHAR(13) + N'Đã ký ngày ' + FORMAT((SELECT top 1   PP.APPROVE_DT FROM PL_PROCESS PP 
266
                                                                  WHERE PP.REQ_ID = D.TRANS_MULTI_MASTER_ID AND PP.PROCESS_ID = 'APPROVE'
267
                                                                  ORDER BY PP.ID DESC),'dd/MM/yyyy HH:mm:ss'),'')  AS POS_NAME_2  --BÊN NHẬN
268
FROM ASS_PRIVATE_TRANSFER_DT A
269
LEFT JOIN ASS_PRIVATE_TRANSFER_MASTER D ON A.TRANS_MULTI_MASTER_ID = D.TRANS_MULTI_MASTER_ID
270
LEFT JOIN CM_EMPLOYEE B ON A.EMP_ID_OLD = B.EMP_ID --BÊN GIAO
271
LEFT JOIN CM_EMPLOYEE C ON A.EMP_ID = C.EMP_ID -- BÊN NHẬN
272
WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
273

    
274
--TABLE 5 SỐ
275
SELECT @TRANS_MULTI_MASTER_ID AS NO
276

    
277
--TABLE 6 ĐƠN VỊ TRUNG GIAN
278
SELECT '' TLFullName, '' ADDRESS, '' PHONE, '' POS_NAME
279
--SELECT TOP 1 B.TLFullName, B.ADDRESS, B.PHONE, C.POS_NAME
280
--FROM  ASS_PRIVATE_TRANSFER_MASTER A
281
--LEFT JOIN TL_USER B ON A.CHECKER_ID = B.TLNANME
282
--LEFT JOIN CM_EMPLOYEE_LOG C ON B.TLNANME = C.USER_DOMAIN
283
--WHERE A.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID AND A.DEPT_CREATE = 'DEP000000000048'
284

    
285

    
286
END
287
GO
288

    
289
ALTER PROC dbo.ASS_TRANSFER_MULTI_MASTER_BBBG
290
@TRANS_MULTI_MASTER_ID	varchar(15) = null
291
AS 
292
DECLARE @REQ_ID VARCHAR(20) = (SELECT REQ_ID FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
293
DECLARE @REQ_MAKER VARCHAR(110) = (SELECT TRSD.MAKER_ID FROM TR_REQUEST_SHOP_DOC TRSD WHERE TRSD.REQ_ID = @REQ_ID)
294
DECLARE @REQ_MAKER_DT VARCHAR(110) = (SELECT TRSD.CREATE_DT FROM TR_REQUEST_SHOP_DOC TRSD WHERE TRSD.REQ_ID = @REQ_ID)
295
DECLARE @REQ_BRANCH VARCHAR(110) = (SELECT TRSD.BRANCH_ID FROM TR_REQUEST_SHOP_DOC TRSD WHERE TRSD.REQ_ID = @REQ_ID)
296
DECLARE @REQ_DEP VARCHAR(110) = (SELECT TRSD.DEP_ID FROM TR_REQUEST_SHOP_DOC TRSD WHERE TRSD.REQ_ID = @REQ_ID)
297
DECLARE @REQ_DEP_NAME NVARCHAR(510) = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @REQ_DEP)
298
DECLARE @REQ_POS NVARCHAR(510) = (SELECT CEL.POS_NAME FROM CM_EMPLOYEE_LOG CEL WHERE CEL.USER_DOMAIN = @REQ_MAKER)
299
DECLARE @REQ_MAKER_NAME NVARCHAR(500)      = (SELECT TU.TLFullName FROM TL_USER TU WHERE TU.TLNANME = @REQ_MAKER)
300
DECLARE @REQ_MAKER_PHONE NVARCHAR(500)    = (SELECT TU.PHONE FROM TL_USER TU WHERE TU.TLNANME = @REQ_MAKER)
301
DECLARE @REQ_MAKER_ADDR NVARCHAR(500)    = (SELECT TU.ADDRESS FROM TL_USER TU WHERE TU.TLNANME = @REQ_MAKER)
302
--Khiemchg lấy danh sách đơn vị nhận và cho
303
            DECLARE @INFO_TRANSFER_RECIEVE TABLE
304
            (
305
            	BRN_SD VARCHAR(50),
306
            	BRN_SD_NAME NVARCHAR(500),
307
            	K_SD VARCHAR(50),
308
            	K_SD_NAME NVARCHAR(500),
309
            	TT_SD VARCHAR(50),
310
            	TT_SD_NAME NVARCHAR(500),
311
            	DEP_SD VARCHAR(50),
312
            	DEP_SD_NAME NVARCHAR(500),
313
            	PER_SD VARCHAR(50),
314
            	BRN_N VARCHAR(50),
315
            	BRN_N_NAME NVARCHAR(500),
316
            	K_N VARCHAR(50),
317
            	K_N_NAME NVARCHAR(500),
318
            	TT_N VARCHAR(50),
319
            	TT_N_NAME NVARCHAR(500),
320
            	DEP_N VARCHAR(50),
321
            	DEP_N_NAME NVARCHAR(500),
322
            	PER_N VARCHAR(50)
323
            )
324
            INSERT INTO @INFO_TRANSFER_RECIEVE 
325
            SELECT DISTINCT BRANCH_ID_OLD, 
326
                            BB.BRANCH_NAME,
327
                            KHOI_ID_OLD,
328
                            BD.DEP_NAME,
329
                            CENTER_ID_OLD,
330
                            BF.DEP_NAME,
331
                            DEPT_ID_OLD,
332
                            BE.DEP_NAME,
333
                            EMP_ID_OLD,
334
                            A.BRANCH_ID,
335
                            CB.BRANCH_NAME,
336
                            A.KHOI_ID,
337
                            CD.DEP_NAME,
338
                            CENTER_ID,
339
                            CF.DEP_NAME,
340
                            DEPT_ID,
341
                            CE.DEP_NAME,
342
                            EMP_ID
343
            FROM ASS_TRANSFER_MULTI_DT A
344
            LEFT JOIN CM_BRANCH BB ON A.BRANCH_ID_OLD = BB.BRANCH_ID
345
            LEFT JOIN CM_DEPARTMENT BD ON BD.DEP_ID = A.KHOI_ID_OLD
346
            LEFT JOIN CM_DEPARTMENT BE ON BE.DEP_ID = A.DEPT_ID_OLD
347
            LEFT JOIN CM_DEPARTMENT BF ON BF.DEP_ID = A.CENTER_ID_OLD
348

    
349
            LEFT JOIN CM_BRANCH CB ON A.BRANCH_ID = CB.BRANCH_ID
350
            LEFT JOIN CM_DEPARTMENT CD ON CD.DEP_ID = A.KHOI_ID
351
            LEFT JOIN CM_DEPARTMENT CE ON CE.DEP_ID = A.DEPT_ID
352
            LEFT JOIN CM_DEPARTMENT CF ON CF.DEP_ID = A.CENTER_ID
353
            WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
354
            GROUP BY BRANCH_ID_OLD, 
355
                            BB.BRANCH_NAME,
356
                            KHOI_ID_OLD,
357
                            BD.DEP_NAME,
358
                            CENTER_ID_OLD,
359
                            BF.DEP_NAME,
360
                            DEPT_ID_OLD,
361
                            BE.DEP_NAME,
362
                            EMP_ID_OLD,
363
                            A.BRANCH_ID,
364
                            CB.BRANCH_NAME,
365
                            A.KHOI_ID,
366
                            CD.DEP_NAME,
367
                            CENTER_ID,
368
                            CF.DEP_NAME,
369
                            DEPT_ID,
370
                            CE.DEP_NAME,
371
                            EMP_ID
372
            --DELETE @INFO_TRANSFER_RECIEVE WHERE (BRN_SD = BRN_N AND DEP_SD = DEP_N)
373

    
374
DECLARE @SIGN_QLTS_NAME NVARCHAR(500) = ''
375
DECLARE @SIGN_QLTS_PHONE NVARCHAR(500) = ''
376
DECLARE @SIGN_QLTS_ADDR NVARCHAR(500) = ''
377
DECLARE @SIGN_QLTS_POS NVARCHAR(500) = ''
378
DECLARE @SIGN_QLTS NVARCHAR(100) = (SELECT ATMM.CHECKER_ID FROM ASS_TRANSFER_MULTI_MASTER ATMM WHERE ATMM.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
379
DECLARE @SIGN_QLTS_DT DATETIME = (SELECT TOP 1 PP.APPROVE_DT FROM PL_PROCESS PP WHERE PP.REQ_ID = @TRANS_MULTI_MASTER_ID AND PP.PROCESS_ID = 'QLTS_D' ORDER BY PP.APPROVE_DT DESC)
380
DECLARE @MAKER_ID NVARCHAR(100) = (SELECT ATMM.MAKER_ID FROM ASS_TRANSFER_MULTI_MASTER ATMM WHERE ATMM.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
381
DECLARE @MAKER_ID_DT DATETIME = (SELECT TOP 1 PP.APPROVE_DT FROM PL_PROCESS PP WHERE PP.REQ_ID = @TRANS_MULTI_MASTER_ID AND PP.PROCESS_ID = 'SEND' ORDER BY PP.APPROVE_DT DESC)
382
DECLARE @SIGN_QLTS_BR NVARCHAR(500) = (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = (SELECT TU.TLSUBBRID FROM TL_USER TU WHERE TU.TLNANME = @SIGN_QLTS))
383
DECLARE @SIGN_QLTS_DEP NVARCHAR(500) = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = (SELECT TU.SECUR_CODE FROM TL_USER TU WHERE TU.TLNANME = @SIGN_QLTS))
384
DECLARE @MAKER_NAME NVARCHAR(500) = (SELECT TU.TLFullName FROM TL_USER TU WHERE TU.TLNANME = @MAKER_ID)
385
DECLARE @MAKER_POS NVARCHAR(500) = (SELECT TOP 1 POS_NAME FROM CM_EMPLOYEE_LOG WHERE USER_DOMAIN =@MAKER_ID)
386

    
387

    
388
IF(EXISTS (SELECT * FROM dbo.FN_GET_USER_BY_ROLE_VB('QLTS', 'DV0001', 'DEP000000000048') FGUBRV WHERE FGUBRV.TLNANME = @SIGN_QLTS))
389
BEGIN 
390
	SELECT @SIGN_QLTS_NAME = TU.TLFullName, @SIGN_QLTS_PHONE = TU.PHONE, @SIGN_QLTS_ADDR = TU.ADDRESS FROM TL_USER TU WHERE TU.TLNANME = @SIGN_QLTS
391
    SET @SIGN_QLTS_POS =  (SELECT POS_NAME FROM CM_EMPLOYEE_LOG WHERE USER_DOMAIN = @SIGN_QLTS)
392
END
393
-- Thông tin chữ kí
394
DECLARE @SIGN_CHECKER_ID_KT VARCHAR(100),@SIGN_MAKER_ID VARCHAR(100),@SIGN_APPROVE_DT_KT DATETIME,@SIGN_CREATE_DT DATETIME,@SIGN_APPROVE_ID VARCHAR(20),@SIGN_APPROVE_DT DATETIME,
395
		@SIGN_RECEVI_MAKER_ID VARCHAR(100),@SIGN_RECEVI_DT DATETIME,@SIGN_MAKER_ID_KT VARCHAR(100),@SIGN_MAKER_ID_CREATE VARCHAR(50),@AUTH_STATUS VARCHAR(50)
396

    
397
-- Thông tin bên giao
398
DECLARE @DEP_TRANSFER NVARCHAR(1500)       = (SELECT TOP 1 DEP_SD FROM @INFO_TRANSFER_RECIEVE)
399
DECLARE @BRANCH_TRANSFER NVARCHAR(500)  = (SELECT TOP 1 BRN_SD FROM @INFO_TRANSFER_RECIEVE)
400
DECLARE @KHOI_TRANSFER NVARCHAR(500)    = (SELECT TOP 1 K_SD FROM @INFO_TRANSFER_RECIEVE)
401
DECLARE	@TT_TRANSFER NVARCHAR(500)      = (SELECT TOP 1 TT_SD FROM @INFO_TRANSFER_RECIEVE)
402
DECLARE @POSITION NVARCHAR(500)         --= (SELECT * FROM @INFO_TRANSFER_RECIEVE)
403
DECLARE @TRANSFER_MAKER_ID VARCHAR(100)  = (SELECT TOP 1 PER_SD FROM @INFO_TRANSFER_RECIEVE)
404
DECLARE @CREATE_DT NVARCHAR(500)        = (SELECT FORMAT(ATMM.CREATE_DT, 'dd/MM/yyyy') FROM ASS_TRANSFER_MULTI_MASTER ATMM WHERE ATMM.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
405

    
406
DECLARE @TRANSFER_CONFIRM NVARCHAR(500) =  (SELECT TOP 1 PRP.CHECKER_ID FROM PL_REQUEST_PROCESS PRP 
407
                                            WHERE PRP.PROCESS_ID = 'XNGN' AND PRP.REQ_ID = @TRANS_MULTI_MASTER_ID 
408
                                                AND PRP.BRANCH_ID = @BRANCH_TRANSFER AND ISNULL(PRP.DEP_ID,'') = ISNULL(@DEP_TRANSFER, ''))
409
DECLARE @TRANSFER_CONFIRM_DT DATETIME =  (SELECT TOP 1 PRP.APPROVE_DT FROM PL_PROCESS PRP 
410
                                            WHERE PRP.PROCESS_ID = 'CONFIRM' AND PRP.REQ_ID = @TRANS_MULTI_MASTER_ID AND PRP.CHECKER_ID = @TRANSFER_CONFIRM ORDER BY PRP.APPROVE_DT DESC)
411

    
412
DECLARE @NAME_TRANSFER NVARCHAR(500)    = (SELECT TU.TLFullName FROM TL_USER TU WHERE TU.TLNANME = @TRANSFER_CONFIRM)
413
DECLARE @POS_TRANSFER NVARCHAR(500)    = (SELECT CEL.POS_NAME FROM CM_EMPLOYEE_LOG CEL WHERE CEL.USER_DOMAIN = @TRANSFER_CONFIRM)
414
DECLARE @PHONE_TRANSFER NVARCHAR(500)    = (SELECT TU.PHONE FROM TL_USER TU WHERE TU.TLNANME = @TRANSFER_CONFIRM)
415
DECLARE @ADDR_TRANSFER NVARCHAR(500)    = (SELECT TU.ADDRESS FROM TL_USER TU WHERE TU.TLNANME = @TRANSFER_CONFIRM)
416

    
417
-- Thông tin bên nhận
418
DECLARE @DEP_RECIVE NVARCHAR(1500)         = (SELECT TOP 1 DEP_N FROM @INFO_TRANSFER_RECIEVE)
419
DECLARE @BRANCH_RECIVE NVARCHAR(500)    = (SELECT TOP 1 BRN_N FROM @INFO_TRANSFER_RECIEVE)
420
DECLARE @KHOI_RECIVE NVARCHAR(500)      = (SELECT TOP 1 K_N FROM @INFO_TRANSFER_RECIEVE)
421
DECLARE @TT_RECIVE NVARCHAR(500)        = (SELECT TOP 1 TT_N FROM @INFO_TRANSFER_RECIEVE)
422
DECLARE @POSITION_RECIVE NVARCHAR(500)
423
DECLARE @RECIVE_MAKER_ID VARCHAR(100)    = (SELECT TOP 1 PER_N FROM @INFO_TRANSFER_RECIEVE)
424

    
425
DECLARE @RECEIVE_CONFIRM NVARCHAR(500) =  (SELECT TOP 1 PRP.CHECKER_ID FROM PL_REQUEST_PROCESS PRP 
426
                                            WHERE PRP.PROCESS_ID = 'XNGN' AND PRP.REQ_ID = @TRANS_MULTI_MASTER_ID 
427
                                                AND PRP.BRANCH_ID = @BRANCH_RECIVE AND ISNULL(PRP.DEP_ID,'') = ISNULL(@DEP_RECIVE, ''))
428
DECLARE @RECEIVE_CONFIRM_DT DATETIME =  (SELECT TOP 1 PRP.APPROVE_DT FROM PL_PROCESS PRP 
429
                                            WHERE PRP.PROCESS_ID = 'CONFIRM' AND PRP.REQ_ID = @TRANS_MULTI_MASTER_ID AND PRP.CHECKER_ID = @RECEIVE_CONFIRM ORDER BY PRP.APPROVE_DT DESC)
430
DECLARE @NAME_RECIVE NVARCHAR(500)      = (SELECT TU.TLFullName FROM TL_USER TU WHERE TU.TLNANME = @RECEIVE_CONFIRM)
431
DECLARE @POS_RECIVE NVARCHAR(500)    = (SELECT CEL.POS_NAME FROM CM_EMPLOYEE_LOG CEL WHERE CEL.USER_DOMAIN = @RECEIVE_CONFIRM)
432
DECLARE @PHONE_RECIVE NVARCHAR(500)    = (SELECT TU.PHONE FROM TL_USER TU WHERE TU.TLNANME = @RECEIVE_CONFIRM)
433
DECLARE @ADDR_RECIVE NVARCHAR(500)    = (SELECT TU.ADDRESS FROM TL_USER TU WHERE TU.TLNANME = @RECEIVE_CONFIRM)
434

    
435
-- Thông tin Ngày điều chuyển
436
DECLARE @TRANSFER_DT DATETIME, @CREATE_DT_TRANSFER DATETIME
437
	SELECT  @TRANSFER_DT=TRANSFER_DT,@CREATE_DT_TRANSFER =CREATE_DT FROM dbo.ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
438

    
439
-- BÊN GIAO
440
	-- Thông tin chữ kí
441
	SET  @SIGN_MAKER_ID =  ( SELECT MAKER_ID_BG  FROM ASS_TRANSFER_CONFIRM_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
442
	SET  @SIGN_CREATE_DT = ( SELECT CONFIRM_DT_BG  FROM ASS_TRANSFER_CONFIRM_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
443
	SET @SIGN_APPROVE_ID = (SELECT CHECKER_ID FROM ASS_TRANSFER_MULTI_MASTER WHERE  TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
444
	SET @SIGN_APPROVE_DT = (SELECT APPROVE_DT FROM ASS_TRANSFER_MULTI_MASTER WHERE  TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
445

    
446
	-- Thông tin bên giao
447
	--SET @BRANCH_TRANSFER = ISNULL((SELECT TOP 1 A.BRANCH_NAME FROM dbo.CM_BRANCH A JOIN dbo.ASS_TRANSFER_MULTI_DT B ON A.BRANCH_ID = B.BRANCH_ID_OLD WHERE B.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID ORDER BY B.TRANSFER_MULTI_ID ASC), '')
448
	--	+ ISNULL((SELECT TOP 1 ' - ' + A.DEP_NAME FROM dbo.CM_DEPARTMENT A JOIN dbo.ASS_TRANSFER_MULTI_DT B ON A.DEP_ID = B.DEPT_ID_OLD WHERE B.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID ORDER BY B.TRANSFER_MULTI_ID ASC), '')
449
	--SET @NAME_TRANSFER =(SELECT TLFullName FROM TL_USER WHERE TLNANME =@TRANSFER_MAKER_ID)
450
	SET @POSITION = (SELECT TOP 1 POS_NAME FROM CM_EMPLOYEE_LOG WHERE USER_DOMAIN =@TRANSFER_CONFIRM)
451
	SET @CREATE_DT = N'Ngày ' + CAST((SELECT DAY(APPROVE_DT_KT) FROM dbo.ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID) AS VARCHAR(500))
452
				+ N' tháng ' + CAST((SELECT MONTH(APPROVE_DT_KT) FROM dbo.ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID) AS VARCHAR(500))
453
				+ N' năm ' + CAST((SELECT YEAR(APPROVE_DT_KT) FROM dbo.ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID) AS VARCHAR(500))
454
				+ N' tại ' + (SELECT B.BRANCH_NAME FROM dbo.ASS_TRANSFER_MULTI_MASTER A JOIN dbo.CM_BRANCH B ON A.BRANCH_ID = B.BRANCH_ID WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
455

    
456
-- BÊN NHẬN
457
	-- Thông tin chữ kí
458
	SET  @SIGN_RECEVI_MAKER_ID =  ( SELECT MAKER_ID_BN  FROM ASS_TRANSFER_CONFIRM_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
459
	SET  @SIGN_RECEVI_DT =  ( SELECT CONFIRM_DT_BN  FROM ASS_TRANSFER_CONFIRM_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
460
	-- Thông tin bên nhận
461
	SET @RECIVE_MAKER_ID = (SELECT TOP 1 MAKER_ID_BN FROM ASS_TRANSFER_CONFIRM_MASTER WHERE  TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
462
	--SET @BRANCH_RECIVE = ISNULL((SELECT TOP 1 A.BRANCH_NAME FROM dbo.CM_BRANCH A JOIN dbo.ASS_TRANSFER_MULTI_DT B ON A.BRANCH_ID = B.BRANCH_ID WHERE B.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID ORDER BY B.TRANSFER_MULTI_ID ASC), '')
463
	--	+ ISNULL((SELECT TOP 1 ' - ' + A.DEP_NAME FROM dbo.CM_DEPARTMENT A JOIN dbo.ASS_TRANSFER_MULTI_DT B ON A.DEP_ID = B.DEPT_ID WHERE B.TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID ORDER BY B.TRANSFER_MULTI_ID ASC), '')
464
	--SET @DEP_RECIVE = (SELECT TOP 1 DEPT_ID FROM ASS_TRANSFER_MULTI_DT WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
465
	--SET @NAME_RECIVE=  (SELECT TLFullName FROM TL_USER WHERE TLNANME = @RECIVE_MAKER_ID)
466
	SET @POSITION_RECIVE =  (SELECT POS_NAME FROM CM_EMPLOYEE_LOG WHERE USER_DOMAIN = @RECEIVE_CONFIRM)
467
	--SET @KHOI_RECIVE= (SELECT TOP 1 DVDM_NAME FROM CM_DVDM WHERE DVDM_ID IN (SELECT DVDM_ID FROM PL_COSTCENTER WHERE COST_ID IN (SELECT COST_ID FROM PL_COSTCENTER_DT
468
	--	WHERE DEP_ID =@DEP_RECIVE)) AND IS_KHOI ='1')
469

    
470

    
471
-- KẾ TOÁN
472

    
473
SET  @SIGN_MAKER_ID_CREATE =  ( SELECT A.MAKER_ID  FROM ASS_TRANSFER_MULTI_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
474
SET  @SIGN_CHECKER_ID_KT =  ( SELECT CHECKER_ID_KT  FROM ASS_TRANSFER_MULTI_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
475
SET  @SIGN_APPROVE_DT_KT =  ( SELECT APPROVE_DT_KT  FROM ASS_TRANSFER_MULTI_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
476
SET  @SIGN_MAKER_ID_KT	 =  ( SELECT A.MAKER_ID_KT  FROM ASS_TRANSFER_MULTI_MASTER A WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
477

    
478
-- DANH SÁCH TÀI SẢN
479
SELECT	ROW_NUMBER()OVER(ORDER BY A.ASSET_ID) AS STT,
480
				A.ASSET_ID, A.[TYPE_ID],C.[TYPE_CODE],  C.[TYPE_NAME], A.GROUP_ID,B.GROUP_CODE, B.GROUP_NAME, A.ASSET_NAME, A.ASSET_DESC,
481
				A.SUP_ID, FORMAT(tmp.BUY_PRICE, '#,#') AS BUY_PRICE, A.AMORT_AMT, A.ASS_TYPE, TR.BRANCH_ID,BR_R.BRANCH_CODE,BR_R.BRANCH_NAME,H.DEP_ID, H.DEP_CODE,
482
				H.DEP_NAME, A.EMP_ID,EM_R.EMP_CODE,EM_R.EMP_NAME,
483
				A.BUY_DATE, A.USE_DATE, A.SPECIAL_ASS, CAST(A.AMORT_MONTH AS INT) AS AMORT_MONTH, A.AMORT_RATE, A.AMORT_START_DATE, A.AMORT_END_DATE,
484
				A.FIRST_AMORT_AMT, 
485
				--CAST(A.AMORTIZED_MONTH AS INT) AS AMORTIZED_MONTH, 
486
				CAST((A.AMORT_MONTH - A.AMORTIZED_MONTH) AS INT) AS REMAIN_MONTH,
487
--				CASE WHEN DATEDIFF(month,A.AMORT_START_DATE,@TRANSFER_DT) > A.AMORT_MONTH THEN  CAST(A.AMORT_MONTH AS INT) ELSE CAST(DATEDIFF(month,A.AMORT_START_DATE,@TRANSFER_DT)AS INT) END AS AMORTIZED_MONTH,
488
				--CAST(DATEDIFF(month,A.AMORT_START_DATE,tmp2.AMORT_DT)AS INT)  AS AMORTIZED_MONTH,
489
        ISNULL(CAST(tmp2.AMORTIZED_MONTH AS INT),0) AS AMORTIZED_MONTH,
490
				A.AMORTIZED_AMT, 
491
				FORMAT(tmp.BUY_PRICE - ISNULL(tmp1.AMORTIZED_AMT,0) , '#,#') AS GT_CL,  --So tien khau hao con lai
492
				A.PO_ID, A.WAREHOUSE_ID, A.LOCATION, A.REF_ASSET_ID,
493
				A.REF_AMORTIZED_AMT,
494
				A.WARRANTY_MONTHS, 				
495
				A.AMORT_STATUS, 
496
				D.STATUS_NAME AMORT_STATUS_NAME, 
497
				A.ASS_STATUS, CU.UNIT_NAME,
498
				E.STATUS_NAME ASS_STATUS_NAME, --Tinh trang tai san
499
				A.ASS_STATUS_DESC,
500
				A.RECORD_STATUS, 
501
				A.AUTH_STATUS, 
502
				ZZ.AUTH_STATUS_NAME,
503
				A.MAKER_ID, 
504
				convert(varchar, A.CREATE_DT, 103) as CREATE_DT_ASS,
505
				convert(varchar, TR.CREATE_DT, 103) as CREATE_DT, 
506
				A.CHECKER_ID, 
507
				A.APPROVE_DT,
508
				TR.[DESCRIPTION], TR.BRANCH_CREATE,TR.LOCATION,TR.[DESCRIPTION],TR.TRANSFER_MULTI_ID,
509
				A.AMORT_AMT-A.AMORTIZED_AMT ASREMAIN_AMT, convert(varchar, B.CREATE_DT, 103) as CREATE_DT_ASS, 
510
				1 AS SOLUONG,
511
				TR.DESCRIPTION AS NOTES,
512
				A.ASSET_CODE,
513
--                CASE
514
--                	WHEN A.REQ_CODE IS NOT NULL AND A.PL IS NOT NULL THEN A.REQ_CODE + '/' + A.PL 
515
--                	WHEN A.REQ_CODE IS NOT NULL AND A.PL IS NULL  THEN A.REQ_CODE
516
--                	WHEN A.REQ_CODE IS NULL AND A.PL IS NOT NULL  THEN A.PL ELSE NULL
517
--                END AS PYC_PL
518
                ATMM.REQ_CODE AS PYC_PL
519
		FROM [dbo].[ASS_TRANSFER_MULTI_DT] TR
520
        LEFT JOIN [ASS_TRANSFER_MULTI_MASTER] ATMM ON TR.TRANS_MULTI_MASTER_ID = ATMM.TRANS_MULTI_MASTER_ID
521
		LEFT JOIN ASS_MASTER A ON A.ASSET_ID = TR.ASSET_ID
522
		LEFT JOIN ASS_GROUP B ON A.GROUP_ID = B.GROUP_ID
523
		LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
524
        LEFT JOIN CM_UNIT CU ON B.UNIT = CU.UNIT_ID
525
		LEFT JOIN ASS_AMORT_STATUS D ON A.AMORT_STATUS = D.STATUS_CODE
526
		LEFT JOIN ASS_STATUS E ON A.ASS_STATUS = E.STATUS_ID
527
		LEFT JOIN CM_AUTH_STATUS ZZ ON ZZ.AUTH_STATUS = TR.AUTH_STATUS
528
		LEFT JOIN CM_BRANCH BR_R ON BR_R.BRANCH_ID=TR.BRANCH_ID
529
		LEFT JOIN CM_EMPLOYEE EM_R ON EM_R.EMP_ID=TR.EMP_ID
530
		LEFT JOIN CM_DEPARTMENT H ON H.DEP_ID = TR.DEPT_ID
531
    --  PHONGNT 4/9/22 LẤY GIÁ TRỊ NGUYÊN GIÁ, KHẤU HAO TẠI THỜI ĐIỂM NGÀY ĐIỀU CHUYỂN
532
		LEFT JOIN (SELECT ASSET_ID,(SUM(CASE WHEN CRDR='C' AND TRN_DT < @TRANSFER_DT AND  ASSET_AMT IS NOT NULL   THEN ASSET_AMT END) - ISNULL(SUM(CASE WHEN CRDR='D' AND TRN_DT < @TRANSFER_DT AND  ASSET_AMT IS NOT NULL  THEN ASSET_AMT END),0)) AS BUY_PRICE FROM dbo.ASS_VALUES GROUP BY ASSET_ID) tmp ON A.ASSET_ID=tmp.ASSET_ID
533
		LEFT JOIN (SELECT ASSET_ID,(SUM(CASE WHEN CRDR='C' AND AMORT_DT < @TRANSFER_DT AND AMORT_AMT IS NOT NULL THEN AMORT_AMT END) - ISNULL(SUM(CASE WHEN CRDR='D' AND AMORT_DT < @TRANSFER_DT AND AMORT_AMT IS NOT NULL THEN AMORT_AMT END),0)) AS AMORTIZED_AMT FROM dbo.ASS_AMORT_DT GROUP BY ASSET_ID) tmp1 ON A.ASSET_ID=tmp1.ASSET_ID
534
--    LEFT JOIN (SELECT ASSET_ID,max(AMORT_DT) AS AMORT_DT FROM ASS_AMORT_DT WHERE CRDR ='C' AND AMORT_DT<@TRANSFER_DT GROUP BY ASSET_ID) tmp2  ON tmp2.ASSET_ID = A.ASSET_ID
535
    LEFT JOIN (SELECT ASSET_ID,COUNT(*) AS AMORTIZED_MONTH FROM ASS_AMORT_DT WHERE CRDR ='C' AND AMORT_DT<@TRANSFER_DT GROUP BY ASSET_ID) tmp2  ON tmp2.ASSET_ID = A.ASSET_ID
536
    --    END
537
WHERE 1=1 
538
AND TR.TRANS_MULTI_MASTER_ID= @TRANS_MULTI_MASTER_ID
539

    
540
IF(CONVERT(VARCHAR,@CREATE_DT_TRANSFER,103)<CONVERT(VARCHAR,@TRANSFER_DT,103))
541
BEGIN
542
    IF(@SIGN_APPROVE_DT_KT IS NOT NULL)
543
  BEGIN
544
  	SET @SIGN_APPROVE_DT = @TRANSFER_DT
545
  	SET @SIGN_APPROVE_DT_KT = @TRANSFER_DT
546
  	SET @SIGN_RECEVI_DT = @TRANSFER_DT
547
    SET @SIGN_CREATE_DT = @TRANSFER_DT
548
  END
549
END
550
SET @CREATE_DT = N'Ngày ' + CAST(DAY(@TRANSFER_DT) AS VARCHAR(500))
551
				+ N' tháng ' + CAST(MONTH(@TRANSFER_DT) AS VARCHAR(500))
552
				+ N' năm ' + CAST(YEAR(@TRANSFER_DT) AS VARCHAR(500))
553
				+ N' tại ' + (SELECT B.BRANCH_NAME FROM dbo.ASS_TRANSFER_MULTI_MASTER A JOIN dbo.CM_BRANCH B ON A.BRANCH_ID = B.BRANCH_ID WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID)
554
  
555
--CHECK XEM CÓ K/PB/TT ĐIỀU CHUYỂN không, không có thì lấy BRANCH
556
DECLARE @GIAO NVARCHAR(500)
557
IF(@KHOI_TRANSFER IS NOT NULL AND @DEP_TRANSFER IS NOT NULL AND @TT_TRANSFER IS NOT NULL)
558
BEGIN
559
	SET @GIAO = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @DEP_TRANSFER)
560
END
561
ELSE IF(@KHOI_TRANSFER IS NULL AND @DEP_TRANSFER IS NULL AND @TT_TRANSFER IS NULL)
562
BEGIN
563
	SET @GIAO = (SELECT CD.BRANCH_NAME FROM CM_BRANCH CD WHERE CD.BRANCH_ID = @BRANCH_TRANSFER)
564
END
565
ELSE IF(@KHOI_TRANSFER IS NULL AND @DEP_TRANSFER IS NULL AND @TT_TRANSFER IS NOT NULL)
566
BEGIN
567
	SET @GIAO = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @TT_TRANSFER) 
568
END
569
ELSE IF(@KHOI_TRANSFER IS NULL AND @DEP_TRANSFER IS NOT NULL AND @TT_TRANSFER IS NULL)
570
BEGIN
571
	SET @GIAO = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @DEP_TRANSFER) 
572
END
573
ELSE IF(@KHOI_TRANSFER IS NOT NULL AND @DEP_TRANSFER IS NULL AND @TT_TRANSFER IS NULL)
574
BEGIN
575
	SET @GIAO = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @KHOI_TRANSFER) 
576
END
577
-- THÔNG TIN BÊN GIAO Table1
578
--IF(@REQ_ID IS NOT NULL OR @REQ_ID <> '')
579
--BEGIN
580
--	SELECT 
581
--    IIF((SELECT CB.BRANCH_TYPE FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @REQ_BRANCH) = 'HS', (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @REQ_BRANCH) + ' - ' + ISNULL(@REQ_DEP_NAME,''), (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @REQ_BRANCH)) 
582
--    AS KHOI_TRANSFER, (SELECT CD.BRANCH_NAME FROM CM_BRANCH CD WHERE CD.BRANCH_ID = @REQ_BRANCH) AS BRANCH_TRANSFER, @REQ_MAKER_NAME AS NAME_TRANSFER, @REQ_MAKER_ADDR AS ADDR_TRANSFER, @REQ_MAKER_PHONE AS PHONE_TRANSFER, @REQ_POS AS POSITION_SEND, @CREATE_DT AS A1
583
--
584
--END
585
--ELSE
586
BEGIN
587
--    SELECT 
588
--    IIF((SELECT CB.BRANCH_TYPE FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_TRANSFER) = 'HS', (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_TRANSFER) + ' - ' + ISNULL(@GIAO,''), (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_TRANSFER)) 
589
--    AS KHOI_TRANSFER, (SELECT CD.BRANCH_NAME FROM CM_BRANCH CD WHERE CD.BRANCH_ID = @BRANCH_TRANSFER) AS BRANCH_TRANSFER, @MAKER_NAME AS NAME_TRANSFER, @ADDR_TRANSFER AS ADDR_TRANSFER, @PHONE_TRANSFER AS PHONE_TRANSFER, @MAKER_POS AS POSITION_SEND, @CREATE_DT AS A1
590
      SELECT 
591
      IIF((SELECT CB.BRANCH_TYPE FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_TRANSFER) = 'HS', (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_TRANSFER) + ' - ' + ISNULL(@GIAO,''), (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_TRANSFER)) 
592
      AS KHOI_TRANSFER, (SELECT CD.BRANCH_NAME FROM CM_BRANCH CD WHERE CD.BRANCH_ID = @BRANCH_TRANSFER) AS BRANCH_TRANSFER, @NAME_TRANSFER AS NAME_TRANSFER, @ADDR_TRANSFER AS ADDR_TRANSFER, @PHONE_TRANSFER AS PHONE_TRANSFER, @POS_TRANSFER AS POSITION_SEND, @CREATE_DT AS A1
593

    
594
END
595

    
596

    
597
--CHECK XEM CÓ K/PB/TT NHẬN không, không có thì lấy BRANCH
598
DECLARE @NHAN NVARCHAR(500)
599
IF(@KHOI_RECIVE IS NOT NULL AND @DEP_RECIVE IS NOT NULL AND @TT_RECIVE IS NOT NULL)
600
BEGIN
601
	SET @NHAN = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @DEP_RECIVE) 
602
END
603
ELSE IF(@KHOI_RECIVE IS NULL AND @DEP_RECIVE IS NULL AND @TT_RECIVE IS NULL)
604
BEGIN
605
	SET @NHAN = (SELECT CD.BRANCH_NAME FROM CM_BRANCH CD WHERE CD.BRANCH_ID = @BRANCH_RECIVE) 
606
END
607
ELSE IF(@KHOI_RECIVE IS NULL AND @DEP_RECIVE IS NULL AND @TT_RECIVE IS NOT NULL)
608
BEGIN
609
	SET @NHAN = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @TT_RECIVE)  
610
END
611
ELSE IF(@KHOI_RECIVE IS NULL AND @DEP_RECIVE IS NOT NULL AND @TT_RECIVE IS NULL)
612
BEGIN
613
	SET @NHAN = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @DEP_RECIVE)  
614
END
615
ELSE IF(@KHOI_RECIVE IS NOT NULL AND @DEP_RECIVE IS NULL AND @TT_RECIVE IS NULL)
616
BEGIN
617
	SET @NHAN = (SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_ID = @KHOI_RECIVE)  
618
END
619
-- THÔNG TIN BÊN NHẬN Table2
620
SELECT IIF((SELECT CB.BRANCH_TYPE FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_RECIVE) = 'HS', (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_RECIVE) + ' - ' + ISNULL(@NHAN,''), (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_RECIVE))
621
 AS KHOI_RECEIVE, (SELECT CD.BRANCH_NAME FROM CM_BRANCH CD WHERE CD.BRANCH_ID = @BRANCH_RECIVE) AS BRANCH_RECIVE, @NAME_RECIVE AS NAME_RECIVE, @ADDR_RECIVE AS ADDR_RECIVE, @PHONE_RECIVE AS PHONE_RECIVE, @POSITION_RECIVE AS POSTION_RECIVE
622

    
623
-- CHỮ KÍ
624
DECLARE @S1 NVARCHAR(500),@S2 NVARCHAR(500),@S3 NVARCHAR(500),@S4 NVARCHAR(500),@S5 NVARCHAR(500),@S6 NVARCHAR(500)
625

    
626
SET @S1 = (SELECT TLFullName FROM TL_USER WHERE TLNANME = @SIGN_MAKER_ID) + CHAR(10) + N' Đã xác nhận vào lúc ' + ISNULL(FORMAT(@SIGN_CREATE_DT,'dd/MM/yyyy,hh:mm:ss tt'),'')
627
SET @S2 = N'Người duyệt'+ CHAR(10) + (SELECT TLFullName FROM TL_USER WHERE TLNANME = @SIGN_APPROVE_ID) + CHAR(10) + N' Đã xác nhận vào lúc ' + ISNULL(FORMAT(@SIGN_APPROVE_DT,'dd/MM/yyyy,hh:mm:ss tt'),'')
628
--PHONGNT bổ sung người nhập KT
629
SET @S3 =N'Người nhập'+ CHAR(10) + (SELECT TLFullName FROM TL_USER WHERE TLNANME = @SIGN_MAKER_ID_KT) + CHAR(10) 
630
SET @S6 =N'Người duyệt'+ CHAR(10) + (SELECT TLFullName FROM TL_USER WHERE TLNANME = @SIGN_CHECKER_ID_KT) + CHAR(10) + N' Đã xác nhận vào lúc ' + ISNULL(FORMAT(@SIGN_APPROVE_DT_KT,'dd/MM/yyyy,hh:mm:ss tt'),'')
631

    
632
SET @S4 =(SELECT TLFullName FROM TL_USER WHERE TLNANME = @SIGN_RECEVI_MAKER_ID) + CHAR(10) + N' Đã xác nhận vào lúc ' + ISNULL(FORMAT(@SIGN_RECEVI_DT,'dd/MM/yyyy,hh:mm:ss tt'),'')
633
--PHONGNT bổ sung người nhập 
634
SET @S5 =N'Người nhập'+ CHAR(10) + (SELECT TLFullName FROM TL_USER WHERE TLNANME = @SIGN_MAKER_ID_CREATE) + CHAR(10) ;
635

    
636
-- Table-3 Chữ ký
637
SELECT 
638
@NAME_TRANSFER AS S1,
639
ISNULL(@POS_TRANSFER, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(@TRANSFER_CONFIRM_DT, 'dd/MM/yyyy HH:mm:ss')  AS S1_POS,
640
@SIGN_QLTS_NAME AS S2,
641
ISNULL(@SIGN_QLTS_POS, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(@SIGN_QLTS_DT, 'dd/MM/yyyy HH:mm:ss') AS S2_POS,
642
--'' AS S2,
643
--'' AS S2_POS,
644
@NAME_RECIVE AS S3,@S4 AS S4,
645
ISNULL(@POS_RECIVE,'')  + CHAR(13) + N'Đã ký ngày ' + FORMAT(@RECEIVE_CONFIRM_DT, 'dd/MM/yyyy HH:mm:ss') AS S3_POS,
646
IIF(NOT EXISTS(SELECT 1 FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID=@TRANS_MULTI_MASTER_ID AND AUTH_STATUS ='E'),@S5,NULL) AS S5,
647
@S6 AS S6
648

    
649
-- TABLE4 thông tin trung gian *(nếu có)
650
SELECT @SIGN_QLTS_BR+ ' - ' + ISNULL(@SIGN_QLTS_DEP,'') AS KHOI_MID, @SIGN_QLTS_BR AS BRANCH_MID,
651
@SIGN_QLTS_NAME AS MID_NAME, @SIGN_QLTS_ADDR AS MID_ADDR, @SIGN_QLTS_PHONE AS MID_PHONE, @SIGN_QLTS_POS AS MID_POS
652
--SELECT '' AS MID_NAME, '' AS MID_ADDR, '' AS MID_PHONE, '' AS MID_POS
653

    
654
--TABLE 5 NỘI DUNG BIÊN BẢN
655
SELECT TRANSFER_CONTENT AS TITLE FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @TRANS_MULTI_MASTER_ID
656

    
657
--TABLE 6 SỐ
658
SELECT @TRANS_MULTI_MASTER_ID AS NO
659
SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_RECIVE
660

    
661