1
|
DECLARE @BRANCH_CODE VARCHAR(20) = '',
|
2
|
@DEP_CODE VARCHAR(20) = ''
|
3
|
|
4
|
DECLARE cur CURSOR FOR
|
5
|
|
6
|
SELECT A.BRANCH_CODE,
|
7
|
ISNULL(B.DEP_CODE,'')
|
8
|
FROM
|
9
|
(SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS row_num,VALUE AS BRANCH_CODE FROM STRING_SPLIT('1800,1400,1400,0719,0731,2200,2200,0900,0900,0900,1902,0717,2600,2600,2600,2500,2500,0903,0902,0901,0703,0700,2300,2300,3000,0726,0726,1801,2000,0500',',')) AS A
|
10
|
LEFT JOIN (
|
11
|
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS row_num,VALUE AS DEP_CODE FROM STRING_SPLIT(',,,,,,,,,,,,,,,,,,,,,,,,,,,,,05P24',',')) AS B ON A.row_num = B.row_num
|
12
|
|
13
|
|
14
|
OPEN cur
|
15
|
|
16
|
FETCH NEXT FROM cur INTO @BRANCH_CODE,@DEP_CODE
|
17
|
|
18
|
WHILE @@FETCH_STATUS = 0 BEGIN
|
19
|
|
20
|
DECLARE @ASSET_CODE VARCHAR(20) = (SELECT TOP 1 AM.ASSET_CODE FROM ASS_MASTER AM WHERE AM.CURRENT_TRANS IS NULL AND AM.DEPT_ID = 'DEP000000000048')
|
21
|
|
22
|
DECLARE
|
23
|
@p_BRANCH_ID VARCHAR(20),
|
24
|
@p_TRANSFER_DT VARCHAR(20) = '31/03/2023',
|
25
|
@p_USER_TRANSFER varchar(200) = 'nghianh',
|
26
|
@p_NOTES nvarchar(1000),
|
27
|
@p_RECORD_STATUS varchar(1) = '1',
|
28
|
@p_AUTH_STATUS varchar(1) = 'E',
|
29
|
@p_MAKER_ID varchar(200) = 'nghianh',
|
30
|
@p_CREATE_DT VARCHAR(20) = '31/03/2023',
|
31
|
@p_APPROVE_DT VARCHAR(20) = '31/03/2023',
|
32
|
@p_CHECKER_ID varchar(100) = NULL,
|
33
|
@p_AUTH_STATUS_KT varchar(15) = NULL,
|
34
|
@p_CREATE_DT_KT varchar(100) = NULL,
|
35
|
@p_APPROVE_DT_KT VARCHAR(20) = NULL,
|
36
|
@p_MAKER_ID_KT varchar(100) = NULL,
|
37
|
@p_CHECKER_ID_KT varchar(100) = NULL,
|
38
|
@p_BRANCH_CREATE varchar(15) = 'DV0001',
|
39
|
@p_TRANSFER_CONTENT NVARCHAR(MAX) = N'Bàn giao tài sản điều chuyển cho chi nhánh'
|
40
|
|
41
|
DECLARE
|
42
|
@ASSET_ID varchar(15),
|
43
|
@KHOI_ID varchar(15),
|
44
|
@CENTER_ID varchar(15),
|
45
|
@DEPT_ID varchar(15),
|
46
|
@EMP_ID varchar(15),
|
47
|
@LOCATION varchar(500),
|
48
|
@DESCRIPTION nvarchar(1000),
|
49
|
@BRANCH_ID_OLD varchar(15),
|
50
|
@KHOI_ID_OLD varchar(15),
|
51
|
@CENTER_ID_OLD varchar(15),
|
52
|
@DEPT_ID_OLD varchar(15),
|
53
|
@EMP_ID_OLD varchar(15),
|
54
|
@REMAIN_VALUE DECIMAL(18,0),
|
55
|
@BUY_PRICE DECIMAL(18,0),
|
56
|
@DEPT_CREATE VARCHAR(15)
|
57
|
|
58
|
IF(@DEP_CODE <> '')
|
59
|
BEGIN
|
60
|
SELECT
|
61
|
@KHOI_ID = (CASE WHEN DP.TYPE = 'K' THEN DP.DEP_ID ELSE K.DEP_ID END),
|
62
|
@CENTER_ID = (CASE WHEN DP.TYPE = 'TT' THEN DP.DEP_ID ELSE TT.DEP_ID END),
|
63
|
@DEPT_ID = (CASE WHEN DP.TYPE = 'PB' THEN DP.DEP_ID ELSE NULL END)
|
64
|
FROM CM_DEPARTMENT DP
|
65
|
LEFT JOIN CM_DEPARTMENT TT ON TT.DEP_ID = DP.FATHER_ID
|
66
|
LEFT JOIN CM_DEPARTMENT K ON K.DEP_ID = DP.KHOI_ID
|
67
|
WHERE DP.DEP_CODE = @DEP_CODE
|
68
|
END
|
69
|
|
70
|
SET @p_BRANCH_ID = (SELECT CB.BRANCH_ID FROM CM_BRANCH CB WHERE CB.BRANCH_CODE = @BRANCH_CODE)
|
71
|
|
72
|
SELECT @ASSET_ID = AM.ASSET_ID,
|
73
|
@BRANCH_ID_OLD = AM.BRANCH_ID,
|
74
|
@KHOI_ID_OLD = CASE WHEN DP.TYPE = 'K' THEN DP.DEP_ID ELSE K.DEP_ID END,
|
75
|
@CENTER_ID_OLD = CASE WHEN DP.TYPE = 'TT' THEN DP.DEP_ID ELSE TT.DEP_ID END,
|
76
|
@DEPT_ID_OLD = CASE WHEN DP.TYPE = 'PB' THEN DP.DEP_ID ELSE NULL END,
|
77
|
@EMP_ID_OLD = AM.EMP_ID,
|
78
|
@LOCATION = AM.LOCATION,
|
79
|
@DESCRIPTION = AM.ASSET_DESC,
|
80
|
@REMAIN_VALUE = (ISNULL(AM.AMORT_AMT,0) - ISNULL(AM.AMORTIZED_AMT,0)),
|
81
|
@BUY_PRICE = AM.BUY_PRICE
|
82
|
FROM ASS_MASTER AM
|
83
|
LEFT JOIN CM_DEPARTMENT DP ON DP.DEP_ID = AM.DEPT_ID
|
84
|
LEFT JOIN CM_DEPARTMENT TT ON TT.DEP_ID = DP.FATHER_ID
|
85
|
LEFT JOIN CM_DEPARTMENT K ON K.DEP_ID = DP.KHOI_ID
|
86
|
WHERE AM.ASSET_CODE = @ASSET_CODE AND (AM.CURRENT_TRANS IS NULL OR AM.CURRENT_TRANS = '')
|
87
|
|
88
|
IF(@DEP_CODE <> '') SET @p_NOTES = N'Điều chuyển tài sản ' +@ASSET_CODE+ N' từ '
|
89
|
+ ISNULL((SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_ID_OLD),'')
|
90
|
+ ' - ' + ISNULL((SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_CODE = @DEPT_ID_OLD),'')
|
91
|
+ N' sang chi nhánh '
|
92
|
+ (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @p_BRANCH_ID)
|
93
|
+ ' - ' + ISNULL((SELECT CD.DEP_NAME FROM CM_DEPARTMENT CD WHERE CD.DEP_CODE = @DEP_CODE),'')
|
94
|
|
95
|
IF(@DEP_CODE = '') SET @p_NOTES = N'Điều chuyển tài sản ' +@ASSET_CODE+ N' từ '
|
96
|
+ ISNULL((SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @BRANCH_ID_OLD),'')
|
97
|
+ N' sang chi nhánh '
|
98
|
+ (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB WHERE CB.BRANCH_ID = @p_BRANCH_ID)
|
99
|
|
100
|
SET @DEPT_CREATE = (SELECT SECUR_CODE FROM dbo.TL_USER WHERE TLNANME = @p_MAKER_ID)
|
101
|
|
102
|
DECLARE @l_TRANS_MULTI_MASTER_ID VARCHAR(15)
|
103
|
EXEC SYS_CodeMasters_Gen 'ASS_TRANSFER_MULTI_MASTER', @l_TRANS_MULTI_MASTER_ID out
|
104
|
|
105
|
INSERT INTO ASS_TRANSFER_MULTI_MASTER([TRANS_MULTI_MASTER_ID],[BRANCH_ID],[TRANSFER_DT],[USER_TRANSFER],[NOTES],[RECORD_STATUS],[AUTH_STATUS],[MAKER_ID],[CREATE_DT],[CHECKER_ID],[APPROVE_DT],[REPORT_STATUS],[DEPT_CREATE], TRANSFER_CONTENT, STATUS)
|
106
|
VALUES(@l_TRANS_MULTI_MASTER_ID ,@p_BRANCH_CREATE ,CONVERT(DATETIME, @p_TRANSFER_DT, 103) ,@p_USER_TRANSFER ,@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) ,'N',@DEPT_CREATE, @p_TRANSFER_CONTENT, 'ADDNEW')
|
107
|
|
108
|
|
109
|
|
110
|
DECLARE @l_TRANSFER_MULTI_ID VARCHAR(15)
|
111
|
EXEC SYS_CodeMasters_Gen 'ASS_TRANSFER_MULTI_DT', @l_TRANSFER_MULTI_ID out
|
112
|
|
113
|
INSERT INTO ASS_TRANSFER_MULTI_DT(
|
114
|
[TRANSFER_MULTI_ID],
|
115
|
[TRANS_MULTI_MASTER_ID],
|
116
|
[ASSET_ID],
|
117
|
[BRANCH_ID],
|
118
|
[KHOI_ID],
|
119
|
[CENTER_ID],
|
120
|
[DEPT_ID],
|
121
|
[EMP_ID],
|
122
|
[BRANCH_ID_OLD],
|
123
|
[KHOI_ID_OLD],
|
124
|
[CENTER_ID_OLD],
|
125
|
[DEPT_ID_OLD],
|
126
|
[EMP_ID_OLD],
|
127
|
[USE_START_DT],
|
128
|
[DESCRIPTION],
|
129
|
[LOCATION],
|
130
|
[RECORD_STATUS],
|
131
|
[AUTH_STATUS],
|
132
|
[MAKER_ID],
|
133
|
[CREATE_DT],
|
134
|
[CHECKER_ID],
|
135
|
[APPROVE_DT],
|
136
|
[BRANCH_CREATE],
|
137
|
[REPORT_STATUS],
|
138
|
REMAIN_VALUE, BUY_PRICE
|
139
|
)
|
140
|
VALUES(
|
141
|
@l_TRANSFER_MULTI_ID,
|
142
|
@l_TRANS_MULTI_MASTER_ID,
|
143
|
@ASSET_ID,
|
144
|
@p_BRANCH_ID,
|
145
|
@KHOI_ID,
|
146
|
@CENTER_ID,
|
147
|
@DEPT_ID,
|
148
|
@EMP_ID,
|
149
|
@BRANCH_ID_OLD,
|
150
|
@KHOI_ID_OLD,
|
151
|
@CENTER_ID_OLD,
|
152
|
@DEPT_ID_OLD,
|
153
|
@EMP_ID_OLD,
|
154
|
CONVERT(DATETIME, @p_TRANSFER_DT, 103),
|
155
|
@DESCRIPTION,
|
156
|
@LOCATION,
|
157
|
@p_RECORD_STATUS,
|
158
|
@p_AUTH_STATUS,
|
159
|
@p_MAKER_ID,
|
160
|
CONVERT(DATETIME, @p_CREATE_DT, 103),
|
161
|
@p_CHECKER_ID,
|
162
|
CONVERT(DATETIME, @p_APPROVE_DT, 103),
|
163
|
@p_BRANCH_CREATE ,
|
164
|
'N',
|
165
|
@REMAIN_VALUE, @BUY_PRICE
|
166
|
)
|
167
|
|
168
|
|
169
|
INSERT INTO PL_REQUEST_PROCESS(REQ_ID,[PROCESS_ID],[STATUS],ROLE_USER,BRANCH_ID,PARENT_PROCESS_ID, DEP_ID)
|
170
|
VALUES(@l_TRANS_MULTI_MASTER_ID,'ADDNEW','C','QLTS','DV0001','',@DEPT_CREATE)
|
171
|
INSERT INTO PL_REQUEST_PROCESS(REQ_ID,[PROCESS_ID],[STATUS],ROLE_USER,BRANCH_ID,PARENT_PROCESS_ID, DEP_ID)
|
172
|
VALUES(@l_TRANS_MULTI_MASTER_ID,'QLTS_D','U','KSV_QLTS','DV0001','ADDNEW',@DEPT_CREATE)
|
173
|
|
174
|
|
175
|
EXEC ASS_TRANSFER_MULTI_Master_SendAppr @p_TRANSFER_MULTI_ID = @l_TRANS_MULTI_MASTER_ID
|
176
|
,@p_TYPE_APP = N'S_TDV'
|
177
|
,@p_USER_LOGIN = 'nghianh'
|
178
|
,@p_DESC = N''
|
179
|
|
180
|
|
181
|
EXEC ASS_TRANSFER_MULTI_MASTER_App @p_TRANS_MULTI_MASTER_ID = @l_TRANS_MULTI_MASTER_ID
|
182
|
,@p_AUTH_STATUS = 'A'
|
183
|
,@p_CHECKER_ID = 'bichnn'
|
184
|
,@p_DESC = N'Chấp thuận'
|
185
|
,@p_APPROVE_DT = '31/03/2023'
|
186
|
|
187
|
EXEC ASS_TRANSFER_MULTI_Master_SendAppr @p_TRANSFER_MULTI_ID = @l_TRANS_MULTI_MASTER_ID
|
188
|
,@p_TYPE_APP = N'CONFIRM'
|
189
|
,@p_USER_LOGIN = 'bichnn'
|
190
|
,@p_DESC = N''
|
191
|
|
192
|
|
193
|
FETCH NEXT FROM cur INTO @BRANCH_CODE,@DEP_CODE
|
194
|
|
195
|
END
|
196
|
|
197
|
CLOSE cur
|
198
|
DEALLOCATE cur
|