Project

General

Profile

PHE DUYET PDN TAM UNG NOI BO.txt

Luc Tran Van, 10/27/2020 10:39 AM

 
1

    
2
ALTER PROCEDURE [dbo].[TR_ROLE_NOTIFI_ID]
3
@PO_ID	varchar(500),
4
@TYPE VARCHAR(100)
5
AS
6
	PRINT @TYPE
7

    
8
	DECLARE 
9
		@BRANCH_CREATE VARCHAR(15),
10
		@DEP_CREATE VARCHAR(15),
11
		@BRANCH_TYPE VARCHAR(15),
12
		@FATHER_ID VARCHAR(15),
13
		@FLAG VARCHAR(1), -- FLAG = 1: THANH TOÁN / TẠM ỨNG
14
		@AUTH_STATUS VARCHAR(10),
15
		@PROCESS VARCHAR(10),
16
		@MAKER_ID VARCHAR(15)
17

    
18
	DECLARE @l_LST_REQ_ID TABLE (
19
	[ID] [int] IDENTITY(1,1) NOT NULL,
20
	[REQ_PAY_ID] [VARCHAR](15) NULL)
21
	INSERT INTO @l_LST_REQ_ID SELECT VALUE FROM WSISPLIT(@PO_ID,',')
22
	DECLARE @LST_POID TABLE(ID VARCHAR(15))
23
	DECLARE @LST_USER_RECIVE TABLE (TLNAME VARCHAR(10))
24
	--- DECLARE TABLE NHAN DU LIEU LA USER NAME DANG O BUOC PHE DUYET HIEN TAI
25
	DECLARE @PL_PROCESS_CURRENT_SEARCH_TEMP TABLE
26
	(
27
	REQ_ID varchar(15),
28
	PROCESS_ID varchar(10),
29
	DVDM_NAME nvarchar(500),
30
	TLNAME nvarchar(255),
31
	TLFullName nvarchar(255),
32
	NOTES nvarchar(500)
33
	)
34
	IF @TYPE = 'PO'
35
	BEGIN
36
		INSERT INTO @LST_POID VALUES(@PO_ID)
37
		SET @FLAG = 0
38
	END ELSE
39
	IF @TYPE = 'USE'
40
	BEGIN
41
		INSERT INTO @LST_POID SELECT B.PO_ID 
42
		FROM ASS_MASTER_PO B WHERE B.ASSET_ID = (SELECT A.ASSET_ID FROM ASS_USE A WHERE A.USE_ID = @PO_ID)
43
		SET @FLAG = 0
44
	END ELSE
45
	IF @TYPE = 'USE_MUILT'
46
	BEGIN
47
		INSERT INTO @LST_POID SELECT B.PO_ID 
48
		FROM ASS_MASTER_PO B WHERE B.ASSET_ID IN (SELECT A.ASSET_ID FROM ASS_USE_MULTI_DT A WHERE A.USER_MASTER_ID = @PO_ID)
49
		GROUP BY B.PO_ID
50
		SET @FLAG = 0
51
	END ELSE
52
	IF @TYPE = 'USE_ADDNEW'
53
	BEGIN
54
		INSERT INTO @LST_POID SELECT B.PO_ID 
55
		FROM ASS_ADDNEW_PO B WHERE B.ADDNEW_ID = @PO_ID
56
		SET @FLAG = 0
57
	END 	
58
	-- Tạm ứng 
59
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_SEND_APR')
60
	BEGIN
61
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
62
		--IF(@AUTH_STATUS  = 'U')
63
		--BEGIN
64
		--	INSERT INTO @LST_USER_RECIVE (TLNAME) 
65
		--	(SELECT TRASFER_USER_RECIVE FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID)
66
		--	SET @FLAG = 1
67
		--END
68
		IF(EXISTS(SELECT * FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =@PO_ID AND (TRASFER_USER_RECIVE IS NOT NULL AND TRASFER_USER_RECIVE <>'')))
69
			BEGIN
70
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
71
				(SELECT TRASFER_USER_RECIVE FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID)
72
			END
73
			ELSE
74
			BEGIN
75
				SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
76
				SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
77
				SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
78
				SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
79
				SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
80
				IF(@BRANCH_TYPE = 'PGD' )
81
				BEGIN
82
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
83
					SELECT TLNANME FROM TL_USER 
84
					WHERE 1=1
85
					AND TLSUBBRID = @BRANCH_CREATE
86
					AND (RoleName IN ('TPGD','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('TPGD','PP')))
87
				
88
				END
89
				ELSE IF(@BRANCH_TYPE = 'CN' )
90
				BEGIN
91
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
92
					SELECT TLNANME FROM TL_USER 
93
					WHERE 1=1
94
					AND TLSUBBRID = @BRANCH_CREATE 
95
					AND (RoleName IN ('GDDV','PGD') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PGD')))
96
				END
97
				ELSE IF(@BRANCH_TYPE = 'HS' )
98
				BEGIN
99
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
100
					SELECT TLNANME FROM TL_USER
101
					WHERE 1=1
102
					AND TLSUBBRID = @BRANCH_CREATE
103
					AND SECUR_CODE = @DEP_CREATE
104
					AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PP')))
105
				END
106
			END
107
	END 
108
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_CONFIRM')
109
	BEGIN
110
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
111
		SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
112
		SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
113
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
114
		SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
115
		IF(@BRANCH_TYPE = 'PGD' )
116
		BEGIN
117
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
118
			SELECT TLNANME FROM TL_USER 
119
			WHERE 1=1
120
			AND TLSUBBRID = @FATHER_ID
121
			AND (RoleName IN ('TPGD','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('TPGD','PP')))
122
			
123
		END
124
		ELSE IF(@BRANCH_TYPE = 'CN' )
125
		BEGIN
126
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
127
			SELECT TLNANME FROM TL_USER 
128
			WHERE 1=1
129
			AND TLSUBBRID = @BRANCH_CREATE 
130
			AND (RoleName IN ('GDDV','PGD') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PGD')))
131
		END
132
		ELSE IF(@BRANCH_TYPE = 'HS' )
133
		BEGIN
134
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
135
			SELECT TLNANME FROM TL_USER
136
			WHERE 1=1
137
			AND TLSUBBRID = @BRANCH_CREATE
138
			AND SECUR_CODE = @DEP_CREATE
139
			AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PP')))
140
		END
141
		SET @FLAG = 1
142
	END 
143
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_APR')
144
	BEGIN
145
		  DECLARE @ROLE_CURRENT VARCHAR(15), @USER_RECIVE_MAIL VARCHAR(15), @REQ_TYPE VARCHAR(15)
146
		  SET @REQ_TYPE =(SELECT TOP 1 REQ_TYPE FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID=@PO_ID)
147
		--SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
148
		 SET @BRANCH_CREATE = (SELECT TOP 1 BRANCH_CREATE FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
149
		 SET @DEP_CREATE = (SELECT TOP 1 DEP_ID FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
150
		--SET @BRANCH_TYPE = (SELECT TOP 1 BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
151
		--SET @FATHER_ID = (SELECT TOP 1 FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
152
		--IF(@AUTH_STATUS='A')
153
		--BEGIN
154
		--	IF (@BRANCH_TYPE <> 'HS')
155
		--	BEGIN
156
		--		INSERT INTO @LST_USER_RECIVE (TLNAME) 
157
		--		SELECT TLNANME FROM TL_USER
158
		--		WHERE 1=1
159
		--		--AND TLSUBBRID = @FATHER_ID 
160
		--		AND (RoleName = 'KSV' OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW = 'KSV'))
161
		--		AND TLSUBBRID = 'DV0001' AND SECUR_CODE ='DEP000000000022'
162
		--	END
163
		--	ELSE IF (@BRANCH_TYPE = 'HS')
164
		--	BEGIN
165
		--		--IF((SELECT REQ_TYPE FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID) = 'I')
166
		--		--BEGIN
167
				
168
		--		--END
169
		--		--ELSE 
170
		--		--BEGIN
171
		--			INSERT INTO @LST_USER_RECIVE (TLNAME) 
172
		--			SELECT TLNANME FROM TL_USER 
173
		--			WHERE 1=1
174
		--			--AND TLSUBBRID = @BRANCH_CREATE 
175
		--			AND (RoleName = 'KSV' OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW = 'KSV'))
176
		--			AND TLSUBBRID = 'DV0001' AND SECUR_CODE ='DEP000000000022'
177
		--		--END
178
		--	END
179
		--END
180
		--ELSE
181
		--BEGIN
182
		--	DECLARE @ROLE_CURRENT VARCHAR(15), @USER_RECIVE_MAIL VARCHAR(15)
183
		--	SET @ROLE_CURRENT =(SELECT TOP 1 ROLE_USER FROM PL_REQUEST_PROCESS WHERE REQ_ID =@PO_ID AND STATUS='C')
184
		--	SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName =@ROLE_CURRENT)
185
		--	INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
186
		--END
187
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='TGD' AND @REQ_TYPE ='I'))
188
		BEGIN
189
			SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='TGD')
190
			INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
191
		END
192
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I'))
193
		BEGIN
194
			IF(@DEP_CREATE ='DEP000000000014' OR (SELECT DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID =@DEP_CREATE) ='0690604')
195
			BEGIN
196
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='tunt')
197
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
198
			END
199
		END
200
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I'))
201
		BEGIN
202
			IF(@DEP_CREATE ='DEP000000000014' OR (SELECT DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID =@DEP_CREATE) ='0690604')
203
			BEGIN
204
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='hantt')
205
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
206
			END
207
		END
208
		IF(EXISTS(SELECT * FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =@PO_ID AND AUTH_STATUS ='A'))
209
		BEGIN
210
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
211
			SELECT TOP 1 MAKER_ID FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
212
			--INSERT INTO @LST_USER_RECIVE (TLNAME) 
213
			--SELECT TOP 1 MAKER_ID_KT FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
214
		END
215
		SET @FLAG = 1
216
	END
217
	-- Điều phối tạm ứng/ thanh toán PL_REQUEST_PROCESS_CHILD
218
	ELSE IF (@TYPE = 'TR_REQ_PAYMENT_TRANSFER')
219
	BEGIN
220
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
221
		SELECT TOP 1 TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID IN (SELECT REQ_PAY_ID FROM @l_LST_REQ_ID) AND TYPE_JOB = 'XL'
222
	END
223
	-- 
224
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_KT_SEND_APR')
225
	BEGIN
226
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
227
		SELECT TOP 1 TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = @PO_ID AND TYPE_JOB = 'KS'
228
	END
229
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_KT_APPR')
230
	BEGIN
231
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
232
		SELECT TOP 1 MAKER_ID FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
233
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
234
		SELECT TOP 1 MAKER_ID_KT FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
235
		SET @FLAG = 1
236
	END
237
	-- Thanh toán
238
	ELSE IF (@TYPE = 'TR_REQ_PAYMENT_SEND_APR')
239
	BEGIN
240
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
241
			IF(EXISTS(SELECT * FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =@PO_ID AND (TRASFER_USER_RECIVE IS NOT NULL AND TRASFER_USER_RECIVE <>'')))
242
			BEGIN
243
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
244
				(SELECT TRASFER_USER_RECIVE FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID)
245
			END
246
			ELSE
247
			BEGIN
248
				SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
249
				SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
250
				SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
251
				SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
252
				SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
253
				IF(@BRANCH_TYPE = 'PGD' )
254
				BEGIN
255
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
256
					SELECT TLNANME FROM TL_USER 
257
					WHERE 1=1
258
					AND TLSUBBRID = @BRANCH_CREATE
259
					AND (RoleName IN ('TPGD','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('TPGD','PP')))
260
				
261
				END
262
				ELSE IF(@BRANCH_TYPE = 'CN' )
263
				BEGIN
264
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
265
					SELECT TLNANME FROM TL_USER 
266
					WHERE 1=1
267
					AND TLSUBBRID = @BRANCH_CREATE 
268
					AND (RoleName IN ('GDDV','PGD') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PGD')))
269
				END
270
				ELSE IF(@BRANCH_TYPE = 'HS' )
271
				BEGIN
272
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
273
					SELECT TLNANME FROM TL_USER
274
					WHERE 1=1
275
					AND TLSUBBRID = @BRANCH_CREATE
276
					AND SECUR_CODE = @DEP_CREATE
277
					AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PP')))
278
				END
279
			END
280
			SET @FLAG = 1
281
	END 
282
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_APR')
283
	BEGIN
284
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
285
		IF(@AUTH_STATUS  = 'A')
286
		BEGIN
287
			SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
288
			SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
289
			SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
290
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
291
			SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
292
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
293
			SELECT TLNANME FROM TL_USER 
294
			WHERE 1=1
295
			--AND TLSUBBRID = @BRANCH_CREATE 
296
			AND (RoleName = 'KSV' OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW = 'KSV'))
297
			AND TLSUBBRID = 'DV0001' AND SECUR_CODE ='DEP000000000022'
298
			--IF (@BRANCH_TYPE <> 'HS')
299
			--BEGIN
300
			--	INSERT INTO @LST_USER_RECIVE (TLNAME) 
301
			--	SELECT TLNANME FROM TL_USER
302
			--	WHERE 1=1
303
			--	AND TLSUBBRID = @FATHER_ID 
304
			--	AND (RoleName = 'KSV' OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW = 'KSV'))
305
			--END
306
			--ELSE IF (@BRANCH_TYPE = 'HS')
307
			--BEGIN
308
			--	INSERT INTO @LST_USER_RECIVE (TLNAME) 
309
			--	SELECT TLNANME FROM TL_USER 
310
			--	WHERE 1=1
311
			--	AND TLSUBBRID = @BRANCH_CREATE 
312
			--	AND (RoleName = 'KSV' OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW = 'KSV'))
313
			--END
314
			SET @FLAG = 1
315
		END
316
	END
317
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_CONFIRM')
318
	BEGIN
319
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
320
		SET @PROCESS = ( SELECT TOP 1 PROCESS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
321
		IF(@AUTH_STATUS  = 'U' AND @PROCESS = '0')
322
		BEGIN
323
			SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
324
			SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
325
			SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
326
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
327
			SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
328
			IF(@BRANCH_TYPE = 'PGD' )
329
			BEGIN
330
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
331
				SELECT TLNANME FROM TL_USER 
332
				WHERE 1=1
333
				AND TLSUBBRID = @FATHER_ID
334
				AND (RoleName IN ('TPGD','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('TPGD','PP')))
335
				
336
			END
337
			ELSE IF(@BRANCH_TYPE = 'CN' )
338
			BEGIN
339
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
340
				SELECT TLNANME FROM TL_USER 
341
				WHERE 1=1
342
				AND TLSUBBRID = @BRANCH_CREATE 
343
				AND (RoleName IN ('GDDV','PGD') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PGD')))
344
			END
345
			ELSE IF(@BRANCH_TYPE = 'HS' )
346
			BEGIN
347
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
348
				SELECT TLNANME FROM TL_USER
349
				WHERE 1=1
350
				AND TLSUBBRID = @BRANCH_CREATE
351
				AND SECUR_CODE = @DEP_CREATE
352
				AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PP')))
353
			END
354
			SET @FLAG = 1
355
		END
356
	END
357
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_KT_SEND_APR')
358
	BEGIN
359
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
360
		SELECT TOP 1 TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = @PO_ID AND TYPE_JOB = 'KS'
361
		SET @FLAG = 1
362
	END
363
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_KT_APR')
364
	BEGIN
365
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
366
		SELECT TOP 1 MAKER_ID FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
367
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
368
		SELECT TOP 1 MAKER_ID_KT FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
369
		SET @FLAG = 1
370
	END
371
	-- Tờ trình chủ trương
372
	ELSE IF(@TYPE = 'PL_SEND_APP' OR @TYPE ='PL_REQUEST_DOC_App'  OR @TYPE ='REQ_PROCESS_CHILD_Upd' OR @TYPE='REQ_PROCESS_CHILD_App')
373
	BEGIN
374
		SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
375
		INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
376
		EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'TTCT-DVKD'
377
		SET @FLAG = 2
378
	END
379
	ELSE IF(@TYPE='PL_REQ_PROCESS_CHILD_Ins')
380
	BEGIN
381
		DECLARE @PLREQ_ID VARCHAR(15)
382
		WHILE((SELECT COUNT(*) FROM @l_LST_REQ_ID) >0)
383
		BEGIN
384
			SET @PLREQ_ID =(SELECT TOP 1 REQ_PAY_ID FROM @l_LST_REQ_ID)
385
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
386
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
387
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PLREQ_ID,@MAKER_ID,'TTCT-DVKD'
388
			DELETE FROM @l_LST_REQ_ID WHERE REQ_PAY_ID =@PLREQ_ID
389
		END
390
		SET @FLAG = 2
391
	END
392
	ELSE IF(@TYPE='REQUEST_DOC_PROCESS_Approve')
393
	BEGIN
394
		--DECLARE @REQ_ID VARCHAR(15)
395
		--WHILE((SELECT COUNT(*) FROM @l_LST_REQ_ID) >0)
396
		--BEGIN
397
			--SET @REQ_ID =(SELECT TOP 1 REQ_PAY_ID FROM @l_LST_REQ_ID)
398
			--SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
399
			--INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
400
			--EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @REQ_ID,@MAKER_ID,'TTCT-DVKD'
401
			--DELETE FROM @l_LST_REQ_ID WHERE REQ_PAY_ID =@REQ_ID
402
		--END
403
		-- NEU TOI TGD THI GUI MAIL CHO ANH THIEU, ANH HUNG
404
		--IF(EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID=@PO_ID AND PROCESS_ID ='TGD'))
405
		--BEGIN
406
		--	INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP SELECT @PO_ID,'','','thieuvq','',''
407
		--	INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP SELECT @PO_ID,'','','hungdv','',''
408
		--END
409
		IF(NOT EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='APPROVE'))
410
		BEGIN
411
			IF(NOT EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='TGD'))
412
			BEGIN
413
				SET @FLAG = 2
414
				--SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
415
				INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
416
				EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'TTCT-DVKD'
417
			END
418
		END
419
		ELSE
420
		BEGIN
421
			SET @FLAG = 3
422
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
423
			--INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
424
			--EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @REQ_ID,@MAKER_ID,'TTCT-DVKD'
425
		END
426
	END
427
	-------------------------------------------------------------------------------------------------------
428
	----- PHIẾU YÊU CẦU MUA SẮM --------------
429
	ELSE IF(@TYPE = 'TR_REQUEST_DOC_SendApp' OR @TYPE ='TR_REQUEST_DOC_App' OR @TYPE ='TR_REQ_PROCESS_CHILD_App' OR @TYPE ='TR_REQ_PROCESS_CHILD_Upd' OR @TYPE='REQ_PROCESS_CHILD_App')
430
	BEGIN
431
		SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
432
		INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
433
		EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'PYCMS-DVKD'
434
		SET @FLAG = 2
435
	END
436
	ELSE IF(@TYPE='TR_REQ_PROCESS_CHILD_Ins')
437
	BEGIN
438
		
439
		DECLARE @REQ_DOC_ID VARCHAR(15)
440
		WHILE((SELECT COUNT(*) FROM @l_LST_REQ_ID) >0)
441
		BEGIN
442
			SET @REQ_DOC_ID =(SELECT TOP 1 REQ_PAY_ID FROM @l_LST_REQ_ID)
443
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
444
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
445
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @REQ_DOC_ID,@MAKER_ID,'PYCMS-DVKD'
446
			DELETE FROM @l_LST_REQ_ID WHERE REQ_PAY_ID =@REQ_DOC_ID
447
		END
448
		SET @FLAG = 2
449
	END
450
	ELSE IF(@TYPE='TR_REQUEST_DOC_PROCESS_Approve')
451
	BEGIN
452
		IF(NOT EXISTS(SELECT * FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='APPROVE'))
453
		BEGIN
454
			--SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
455
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
456
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'PYCMS-DVKD'
457
			SET @FLAG = 3
458
		END
459
		ELSE
460
		BEGIN
461
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
462
		END
463
	END
464
	----- END PYC MUA SẮM --------------------
465
	IF(@FLAG = 0)
466
	BEGIN
467
		SELECT A.*,B.TLFullName,B.EMAIL 
468
		FROM TL_ROLE_NOTIFICATION A
469
		LEFT JOIN TL_USER B ON A.TL_NAME=B.TLNANME
470
		WHERE EXISTS(SELECT * FROM @LST_POID WHERE ID = A.PO_ID)
471
		AND B.TLNANME <>'trungnq1'
472
	END
473
	ELSE IF(@FLAG = 1)
474
	BEGIN 
475
		SELECT B.*,A.TLFullName,A.EMAIL 
476
		FROM TL_USER  A
477
		LEFT JOIN TL_ROLE_NOTIFICATION B ON B.TL_NAME=A.TLNANME
478
		WHERE A.TLNANME IN (SELECT * FROM @LST_USER_RECIVE)
479
		AND A.TLNANME <>'trungnq1'
480
	END
481
	-- NEU LA TO TRINH CHU TRUONG, PYC MS THÌ TRA VE FLAG =2
482
	ELSE IF(@FLAG = 2)
483
	BEGIN 
484
		SELECT B.*,A.TLFullName,A.EMAIL 
485
		FROM TL_USER  A
486
		LEFT JOIN TL_ROLE_NOTIFICATION B ON B.TL_NAME=A.TLNANME
487
		WHERE A.TLNANME IN (SELECT TLNAME FROM @PL_PROCESS_CURRENT_SEARCH_TEMP)
488
		AND A.TLNANME <>'trungnq1'
489
	END
490
	-- SAU KHI TT CHU TRUONG DUOC PHE DUYET THI THONG BAO CHO NGUOI TAO TO TRINH
491
	ELSE IF(@FLAG = 3)
492
	BEGIN 
493
		SELECT B.*,A.TLFullName,A.EMAIL 
494
		FROM TL_USER  A
495
		LEFT JOIN TL_ROLE_NOTIFICATION B ON B.TL_NAME=A.TLNANME
496
		WHERE (A.TLNANME  =@MAKER_ID OR A.TLNANME IN (SELECT TLNAME FROM @PL_PROCESS_CURRENT_SEARCH_TEMP))
497
		AND A.TLNANME <>'trungnq1'
498
	END
499

    
500