Project

General

Profile

HAM LAY EMAIL ĐỂ GỬI.txt

Luc Tran Van, 11/09/2020 03:19 PM

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

    
530