Project

General

Profile

tr_role_noti.txt

Luc Tran Van, 12/08/2022 11:20 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
		---------BAODNQ 26/10/2022 : TĂNG KÍCH THƯỚC BIẾN @FLAG
15
		@FLAG VARCHAR(5), -- FLAG = 1: THANH TOÁN / TẠM ỨNG
16
		@AUTH_STATUS VARCHAR(10),
17
		@PROCESS VARCHAR(10),
18
		@MAKER_ID VARCHAR(15),
19
		@DEP_CODE VARCHAR(15),
20
		@NV_XL_MS VARCHAR(15)
21
	DECLARE @ROLE_CURRENT VARCHAR(15), @USER_RECIVE_MAIL VARCHAR(15), @REQ_TYPE VARCHAR(15)
22
	DECLARE @SYS_PREFIX VARCHAR(15),@PAGE NVARCHAR(200)
23
	DECLARE @l_LST_REQ_ID TABLE (
24
	[ID] [int] IDENTITY(1,1) NOT NULL,
25
	[REQ_PAY_ID] [VARCHAR](50) NULL)
26
	INSERT INTO @l_LST_REQ_ID SELECT VALUE FROM WSISPLIT(@PO_ID,',')
27
	DECLARE @LST_POID TABLE(ID VARCHAR(15))
28
	DECLARE @LST_USER_RECIVE TABLE (TLNAME VARCHAR(10))
29
	--- DECLARE TABLE NHAN DU LIEU LA USER NAME DANG O BUOC PHE DUYET HIEN TAI
30
	DECLARE @PL_PROCESS_CURRENT_SEARCH_TEMP TABLE
31
	(
32
	REQ_ID varchar(15),
33
	PROCESS_ID varchar(10),
34
	DVDM_NAME nvarchar(500),
35
	TLNAME nvarchar(255),
36
	TLFullName nvarchar(255),
37
	NOTES nvarchar(500)
38
	)
39
	-----BAODNQ 5/1/2021 : Thêm gửi mail cho GDDV, TP, PP----------
40
	DECLARE @p_MAKER_ID VARCHAR(15), @p_ROLE_ID VARCHAR(15), @p_ROLE_NAME VARCHAR(15) 
41
	DECLARE @LST_ROLE TABLE(ROLE_ID VARCHAR(15), ROLE_NAME VARCHAR(15))
42
	---------BAODNQ 2/11/2022 : Lấy mã code phòng ban tạo-------------
43
	DECLARE @p_DEP_CREATE_CODE VARCHAR(15)
44
	--------------------------
45
	IF @TYPE = 'PO'
46
	BEGIN
47
		INSERT INTO @LST_POID VALUES(@PO_ID)
48
		SET @FLAG = 0
49
	END ELSE
50
	IF @TYPE = 'USE'
51
	BEGIN
52
		INSERT INTO @LST_POID SELECT B.PO_ID 
53
		FROM ASS_MASTER_PO B WHERE B.ASSET_ID = (SELECT A.ASSET_ID FROM ASS_USE A WHERE A.USE_ID = @PO_ID)
54
		SET @FLAG = 0
55
	END ELSE
56
	IF @TYPE = 'USE_MUILT'
57
	BEGIN
58
		INSERT INTO @LST_POID SELECT B.PO_ID 
59
		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)
60
		GROUP BY B.PO_ID
61
		SET @FLAG = 0
62
	END ELSE
63
	IF @TYPE = 'USE_ADDNEW'
64
	BEGIN
65
		INSERT INTO @LST_POID SELECT B.PO_ID 
66
		FROM ASS_ADDNEW_PO B WHERE B.ADDNEW_ID = @PO_ID
67
		SET @FLAG = 0
68
	END 	
69
	-- Tạm ứng 
70
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_SEND_APR')
71
	BEGIN
72
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
73
		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 <>'')))
74
			BEGIN
75
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
76
				(SELECT TRASFER_USER_RECIVE FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID)
77
			END
78
			ELSE
79
			BEGIN
80
				SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
81
				SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
82
				SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
83
				SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
84
				SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
85
				IF(@BRANCH_TYPE = 'PGD' )
86
				BEGIN
87
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
88
					SELECT TLNANME FROM TL_USER 
89
					WHERE 1=1
90
					AND TLSUBBRID = @FATHER_ID
91
					AND (	RoleName IN ('TPGD','PP') 
92
									OR RoleName IN (	SELECT ROLE_OLD 
93
														FROM TL_SYS_ROLE_MAPPING 
94
														WHERE ROLE_NEW IN ('TPGD','PP')
95
														AND RECORD_STATUS = 1 AND BRANCH_ID = @FATHER_ID
96
														AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
97
														AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')
98
													)
99
						)
100
				
101
				END
102
				ELSE IF(@BRANCH_TYPE = 'CN' )
103
				BEGIN
104
				
105
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
106
					SELECT TLNANME FROM TL_USER 
107
					WHERE 1=1
108
					AND TLSUBBRID = @BRANCH_CREATE 
109
					AND (RoleName IN ('GDDV','PGD') OR RoleName IN (	SELECT ROLE_OLD 
110
																		FROM TL_SYS_ROLE_MAPPING 
111
																		WHERE ROLE_NEW IN ('GDDV','PGD')
112
																		AND RECORD_STATUS = 1 AND BRANCH_ID = @BRANCH_CREATE
113
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
114
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')
115
																	)
116
						)
117
					
118
				END
119
				ELSE IF(@BRANCH_TYPE = 'HS' )
120
				BEGIN
121
						INSERT INTO @LST_USER_RECIVE (TLNAME) 
122
						SELECT TLNANME FROM TL_USER
123
						WHERE 1=1
124
						AND TLSUBBRID = @BRANCH_CREATE
125
						AND SECUR_CODE = @DEP_CREATE
126
						AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD
127
																		FROM TL_SYS_ROLE_MAPPING 
128
																		WHERE ROLE_NEW IN ('GDDV','PP') 
129
																		AND RECORD_STATUS = 1 AND BRANCH_ID =@BRANCH_CREATE AND DEP_ID =@DEP_CREATE
130
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
131
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')
132
																		)
133
							)
134
				END
135
			END
136
	SET @FLAG = 1
137
	END 
138
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_CONFIRM')
139
	BEGIN
140
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
141
		SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
142
		SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
143
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
144
		SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
145
		SET @REQ_TYPE =(SELECT TOP 1 REQ_TYPE FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID=@PO_ID)
146
		SET @DEP_CODE =(SELECT TOP 1 DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID =@DEP_CREATE)
147
		IF(@BRANCH_TYPE = 'PGD' )
148
		BEGIN
149
			IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000015')) -- KHOI HO TRO
150
			BEGIN
151
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='tunt')
152
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
153
			END
154
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000016')) -- KHOI QUAN LY RUI RO
155
			BEGIN
156
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='linhvtk')
157
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
158
			END
159
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000017')) -- KHOI TAI CHINH
160
			BEGIN
161
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='nhalc')
162
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
163
			END
164
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000018')) -- KHOI CNTT
165
			BEGIN
166
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='haipv')
167
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
168
			END
169
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000020')) -- KHOI CNTT
170
			BEGIN
171
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='tuvm')
172
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
173
			END
174
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000022')) -- KHOI KHCN - KHACH HANG CA NHAN
175
			BEGIN
176
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='sangnm1')
177
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
178
			END
179
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000022')) -- KHOI KHCN - KHACH HANG CA NHAN
180
			BEGIN
181
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='nhannt')
182
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
183
			END
184
			-- PTGD
185
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000019')) -- KHOI VAN HANH
186
			BEGIN
187
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='muoilvb')
188
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
189
			END
190
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000014')) -- KHOI TRUC THUOC TGD
191
			BEGIN
192
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='tupa')
193
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
194
			END
195
			ELSE
196
			BEGIN
197
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
198
				SELECT TLNANME FROM TL_USER 
199
				WHERE 1=1
200
				AND TLSUBBRID = @FATHER_ID
201
				AND (RoleName IN ('TPGD','PP') OR RoleName IN (SELECT ROLE_OLD 
202
																FROM TL_SYS_ROLE_MAPPING 
203
																WHERE ROLE_NEW IN ('TPGD','PP') AND RECORD_STATUS = 1  AND BRANCH_ID =@FATHER_ID
204
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
205
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
206
			END
207
			
208
		END
209
		ELSE IF(@BRANCH_TYPE = 'CN' )
210
		BEGIN
211
			IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000015')) -- KHOI HO TRO
212
			BEGIN
213
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='tunt')
214
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
215
			END
216
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000016')) -- KHOI QUAN LY RUI RO
217
			BEGIN
218
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='linhvtk')
219
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
220
			END
221
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000017')) -- KHOI TAI CHINH
222
			BEGIN
223
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='nhalc')
224
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
225
			END
226
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000018')) -- KHOI CNTT
227
			BEGIN
228
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='haipv')
229
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
230
			END
231
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000020')) -- KHOI CNTT
232
			BEGIN
233
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='tuvm')
234
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
235
			END
236
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000022')) -- KHOI KHCN - KHACH HANG CA NHAN
237
			BEGIN
238
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='sangnm1')
239
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
240
			END
241
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000022')) -- KHOI KHCN - KHACH HANG CA NHAN
242
			BEGIN
243
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE TLNANME ='nhannt')
244
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
245
			END
246
			-- PTGD
247
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000019')) -- KHOI VAN HANH
248
			BEGIN
249
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='muoilvb')
250
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
251
			END
252
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000014')) -- KHOI TRUC THUOC TGD
253
			BEGIN
254
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='tupa')
255
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
256
			END
257
			ELSE
258
			BEGIN
259
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
260
				SELECT TLNANME FROM TL_USER 
261
				WHERE 1=1
262
				AND TLSUBBRID = @BRANCH_CREATE 
263
				AND (RoleName IN ('GDDV','PGD') OR RoleName IN (SELECT ROLE_OLD 
264
																FROM TL_SYS_ROLE_MAPPING 
265
																WHERE ROLE_NEW IN ('GDDV','PGD') AND RECORD_STATUS = 1  AND BRANCH_ID =@BRANCH_CREATE
266
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
267
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
268
			END
269
		END
270
		ELSE IF(@BRANCH_TYPE = 'HS' )
271
		BEGIN
272
			IF(EXISTS(SELECT PROCESS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =@PO_ID AND (PROCESS ='' OR PROCESS IS NULL)))
273
			BEGIN
274
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
275
				SELECT TLNANME FROM TL_USER
276
				WHERE 1=1
277
				AND TLSUBBRID = @BRANCH_CREATE
278
				AND SECUR_CODE = @DEP_CREATE
279
				AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD 
280
																FROM TL_SYS_ROLE_MAPPING 
281
																WHERE ROLE_NEW IN ('GDDV','PP') AND RECORD_STATUS = 1 AND BRANCH_ID =@BRANCH_CREATE AND DEP_ID =@DEP_CREATE
282
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
283
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
284
			END
285
			ELSE
286
			BEGIN
287
				
288
				IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I'))
289
				BEGIN
290
					IF(@DEP_CREATE ='DEP000000000014' OR (@DEP_CODE LIKE'%06906%' AND @DEP_CODE <> '0690605'))
291
					BEGIN
292
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='tunt')
293
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
294
					END
295
					ELSE IF((@DEP_CODE LIKE'%06907%'))
296
					BEGIN
297
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='linhvtk')
298
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
299
					END
300
					ELSE IF((@DEP_CODE LIKE'%06908%'))
301
					BEGIN
302
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='nhalc')
303
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
304
					END
305
					ELSE IF((@DEP_CODE LIKE'%06909%'))
306
					BEGIN
307
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='haipv')
308
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
309
					END
310
					ELSE IF((@DEP_CODE LIKE'%06921%'))
311
					BEGIN
312
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='sangnm1')
313
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
314
					END
315
				END
316
				-- NEU CAP TIEP THEO LA PTGD
317
				ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I'))
318
				BEGIN
319
					/*
320
					IF(@DEP_CREATE ='DEP000000000014' OR (@DEP_CODE LIKE'%06906%' AND @DEP_CODE <> '0690605'))
321
					BEGIN
322
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='hantt')
323
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
324
					END
325
					*/
326
					IF(@DEP_CODE ='0690405')
327
					BEGIN
328
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='tupa')
329
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
330
					END
331
					---- LUCTV 24.11.2022 BO SUNG GUI MAIL PTGD KHOI VAN HANH
332
					IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000019') 
333
					OR EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I'))
334
					BEGIN
335
						SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='muoilvb')
336
						INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
337
					END
338
				END
339
				-- NEU CAP TIEP THEO LA TKTGD
340
				ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='TKTGD' AND @REQ_TYPE ='I'))
341
				BEGIN
342
					INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='TKTGD'
343
				END
344
				-- NEU CAP TIEP THEO LA TKHDQT
345
				ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='TKHDQT' AND @REQ_TYPE ='I'))
346
				BEGIN
347
					INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='TKHDQT'
348
				END
349
				-- NEU CAP TIEP THEO LA TGD
350
				ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='TGD' AND @REQ_TYPE ='I'))
351
				BEGIN
352
					INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='TGD'
353
				END
354
				-- NEU CAP TIEP THEO LA HDQT
355
				ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='HDQT' AND @REQ_TYPE ='I'))
356
				BEGIN
357
					INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='HDQT'
358
				END
359
			END
360
		END
361
		SET @FLAG = 1
362
	END 
363
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_APR')
364
	BEGIN
365
		SET @REQ_TYPE =(SELECT TOP 1 REQ_TYPE FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID=@PO_ID)
366
		--SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
367
		SET @BRANCH_CREATE = (SELECT TOP 1 BRANCH_CREATE FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
368
		SET @DEP_CREATE = (SELECT TOP 1 DEP_ID FROM TR_REQ_ADVANCE_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
369
		SET @DEP_CODE =(SELECT TOP 1 DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID =@DEP_CREATE)
370
		 /*
371
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='TKTGD' AND @REQ_TYPE ='I'))
372
		BEGIN
373
			INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='TKTGD'
374
		END
375
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='TKHDQT' AND @REQ_TYPE ='I'))
376
		BEGIN
377
			INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='TKHDQT'
378
		END
379
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='TGD' AND @REQ_TYPE ='I'))
380
		BEGIN
381
			--SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='TGD')
382
			--INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
383
			INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='TGD'
384
		END
385
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='HDQT' AND @REQ_TYPE ='I'))
386
		BEGIN
387
			--SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='TGD')
388
			--INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
389
			INSERT INTO @LST_USER_RECIVE SELECT TLNANME FROM TL_USER WHERE RoleName ='HDQT'
390
		END
391
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='GDK' AND @REQ_TYPE ='I'))
392
		BEGIN
393
			IF(@DEP_CREATE ='DEP000000000014' OR (@DEP_CODE LIKE'%06906%' AND @DEP_CODE <> '0690605'))
394
				BEGIN
395
					SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='tunt')
396
					INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
397
				END
398
				ELSE IF((@DEP_CODE LIKE'%06907%'))
399
				BEGIN
400
					SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='linhvtk')
401
					INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
402
				END
403
				ELSE IF((@DEP_CODE LIKE'%06908%'))
404
				BEGIN
405
					SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='nhalc')
406
					INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
407
				END
408
				ELSE IF((@DEP_CODE LIKE'%06909%'))
409
				BEGIN
410
					SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='haipv')
411
					INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
412
				END
413
				ELSE IF((@DEP_CODE LIKE'%06921%'))
414
				BEGIN
415
					SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='GDK' AND TLNANME ='sangnm1')
416
					INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
417
				END
418
		END
419
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I'))
420
		BEGIN
421
			/*
422
			IF(@DEP_CREATE ='DEP000000000014' OR (@DEP_CODE LIKE'%06906%' AND @DEP_CODE <> '0690605'))
423
			BEGIN
424
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='hantt')
425
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
426
			END
427
			*/
428
			IF( @DEP_CODE ='0690405')
429
			BEGIN
430
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='tupa')
431
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
432
			END
433
			---- LUCTV 24.11.2022 BO SUNG GUI MAIL PTGD KHOI VAN HANH
434
			ELSE IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I' AND DVDM_ID ='DM0000000000019') 
435
			OR EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID=@PO_ID AND STATUS ='C' AND ROLE_USER ='PTGD' AND @REQ_TYPE ='I') )
436
			BEGIN
437
				SET @USER_RECIVE_MAIL =(SELECT TOP 1 TLNANME FROM TL_USER WHERE RoleName ='PTGD' AND TLNANME ='muoilvb')
438
				INSERT INTO @LST_USER_RECIVE (TLNAME)  VALUES (@USER_RECIVE_MAIL)
439
			END
440
		END
441
		*/
442
		
443
		IF(EXISTS(SELECT * FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID =@PO_ID AND AUTH_STATUS ='A'))
444
		BEGIN
445
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
446
			SELECT TOP 1 MAKER_ID FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
447

    
448
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
449
			SELECT TLNANME FROM TL_USER 
450
			WHERE 1=1
451
			AND (RoleName = 'KSV' AND TLSUBBRID = 'DV0001' AND SECUR_CODE ='DEP000000000022')
452
			--OR TLNANME IN (SELECT TLNAME FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW ='KSV' AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL) AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL) AND RECORD_STATUS = 1)
453
		END
454
		SET @FLAG = 1
455
	END
456
	-- Điều phối tạm ứng/ thanh toán PL_REQUEST_PROCESS_CHILD
457
	ELSE IF (@TYPE = 'TR_REQ_PAYMENT_TRANSFER')
458
	BEGIN
459
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
460
		SELECT TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID IN (SELECT REQ_PAY_ID FROM @l_LST_REQ_ID) AND TYPE_JOB = 'XL' AND STATUS_JOB ='C'
461
		SET @FLAG = 1
462
	END
463
	-- 
464
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_KT_SEND_APR')
465
	BEGIN
466
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
467
		SELECT TOP 1 TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = @PO_ID AND TYPE_JOB = 'KS'
468
		SET @FLAG = 1
469
	END
470
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_KT_SEND_SUG')
471
	BEGIN
472
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
473
		SELECT TOP 1 TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = @PO_ID AND TYPE_JOB = 'KS'
474
		SET @FLAG = 1
475
	END
476
	ELSE IF (@TYPE = 'TR_REQ_ADVANCE_PAYMENT_KT_APPR')
477
	BEGIN
478
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
479
		SELECT TOP 1 MAKER_ID FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
480
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
481
		SELECT TOP 1 MAKER_ID_KT FROM TR_REQ_ADVANCE_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
482
		SET @FLAG = 1
483
	END
484
	-- Thanh toán
485
	ELSE IF (@TYPE = 'TR_REQ_PAYMENT_SEND_APR')
486
	BEGIN
487
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
488
			IF(EXISTS(SELECT * FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =@PO_ID AND (TRASFER_USER_RECIVE IS NOT NULL AND TRASFER_USER_RECIVE <>'')))
489
			BEGIN
490
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
491
				(SELECT TRASFER_USER_RECIVE FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID)
492
			END
493
			ELSE
494
			BEGIN
495
				SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
496
				SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
497
				SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
498
				SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
499
				SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
500
				IF(@BRANCH_TYPE = 'PGD' )
501
				BEGIN
502
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
503
					SELECT TLNANME FROM TL_USER 
504
					WHERE 1=1
505
					AND TLSUBBRID = @BRANCH_CREATE
506
					AND (RoleName IN ('TPGD','PP') OR RoleName IN (SELECT ROLE_OLD 
507
																	FROM TL_SYS_ROLE_MAPPING 
508
																	WHERE ROLE_NEW IN ('TPGD','PP') AND RECORD_STATUS = 1  AND BRANCH_ID =@BRANCH_CREATE
509
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
510
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
511
				END
512
				ELSE IF(@BRANCH_TYPE = 'CN' )
513
				BEGIN
514
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
515
					SELECT TLNANME FROM TL_USER 
516
					WHERE 1=1
517
					AND TLSUBBRID = @BRANCH_CREATE 
518
					AND (RoleName IN ('GDDV','PGD') OR RoleName IN (SELECT ROLE_OLD 
519
																	FROM TL_SYS_ROLE_MAPPING 
520
																	WHERE ROLE_NEW IN ('GDDV','PGD') AND RECORD_STATUS = 1 AND BRANCH_ID =@BRANCH_CREATE
521
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
522
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
523
				END
524
				ELSE IF(@BRANCH_TYPE = 'HS' )
525
				BEGIN
526
					INSERT INTO @LST_USER_RECIVE (TLNAME) 
527
					SELECT TLNANME FROM TL_USER
528
					WHERE 1=1
529
					AND TLSUBBRID = @BRANCH_CREATE
530
					AND SECUR_CODE = @DEP_CREATE
531
					AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD 
532
																	FROM TL_SYS_ROLE_MAPPING 
533
																	WHERE ROLE_NEW IN ('GDDV','PP') AND RECORD_STATUS = 1 AND BRANCH_ID =@BRANCH_CREATE AND DEP_ID =@DEP_CREATE
534
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
535
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
536
				END
537
			END
538
			SET @FLAG = 1
539
	END 
540
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_APR')
541
	BEGIN
542
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
543
		IF(@AUTH_STATUS  = 'A')
544
		BEGIN
545
			SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
546
			SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
547
			SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
548
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
549
			SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
550

    
551
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
552
			SELECT TOP 1 MAKER_ID FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
553

    
554
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
555
			SELECT TLNANME FROM TL_USER 
556
			WHERE 1=1 
557
			AND (RoleName = 'KSV' OR RoleName IN (SELECT ROLE_OLD 
558
												FROM TL_SYS_ROLE_MAPPING 
559
												WHERE ROLE_NEW = 'KSV' AND RECORD_STATUS = 1
560
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
561
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
562
			AND TLSUBBRID = 'DV0001' AND SECUR_CODE ='DEP000000000022'
563

    
564
			SET @FLAG = 1
565
		END
566
	END
567
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_CONFIRM')
568
	BEGIN
569
		SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
570
		SET @PROCESS = ( SELECT TOP 1 PROCESS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
571
		IF(@AUTH_STATUS  = 'U' AND @PROCESS = '0')
572
		BEGIN
573
			SET @AUTH_STATUS =( SELECT TOP 1 AUTH_STATUS FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID =  @PO_ID)
574
			SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
575
			SET @DEP_CREATE = (SELECT DEP_ID FROM TR_REQ_PAYMENT  WHERE REQ_PAY_ID =  @PO_ID)
576
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
577
			SET @FATHER_ID = (SELECT FATHER_ID FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
578
			IF(@BRANCH_TYPE = 'PGD' )
579
			BEGIN
580
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
581
				SELECT TLNANME FROM TL_USER 
582
				WHERE 1=1
583
				AND TLSUBBRID = @BRANCH_CREATE
584
				AND (RoleName IN ('TPGD','PP') OR RoleName IN (SELECT ROLE_OLD 
585
																FROM TL_SYS_ROLE_MAPPING 
586
																WHERE ROLE_NEW IN ('TPGD','PP') AND RECORD_STATUS = 1 AND BRANCH_ID = @BRANCH_CREATE
587
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
588
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
589
				
590
			END
591
			ELSE IF(@BRANCH_TYPE = 'CN' )
592
			BEGIN
593
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
594
				SELECT TLNANME FROM TL_USER 
595
				WHERE 1=1
596
				AND TLSUBBRID = @BRANCH_CREATE 
597
				AND (RoleName IN ('GDDV','PGD') OR RoleName IN (SELECT ROLE_OLD 
598
																FROM TL_SYS_ROLE_MAPPING 
599
																WHERE ROLE_NEW IN ('GDDV','PGD') AND RECORD_STATUS = 1 AND BRANCH_ID = @BRANCH_CREATE
600
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
601
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
602
			END
603
			ELSE IF(@BRANCH_TYPE = 'HS' )
604
			BEGIN
605
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
606
				SELECT TLNANME FROM TL_USER
607
				WHERE 1=1
608
				AND TLSUBBRID = @BRANCH_CREATE
609
				AND SECUR_CODE = @DEP_CREATE
610
				AND (RoleName IN ('GDDV','PP') OR RoleName IN (SELECT ROLE_OLD 
611
																FROM TL_SYS_ROLE_MAPPING WHERE ROLE_NEW IN ('GDDV','PP') AND RECORD_STATUS = 1 AND BRANCH_ID =@BRANCH_CREATE AND DEP_ID =@DEP_CREATE
612
																		AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
613
																		AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE ='')))
614
			END
615
			SET @FLAG = 1
616
		END
617
	END
618
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_KT_SEND_APR')
619
	BEGIN
620
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
621
		SELECT TOP 1 TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = @PO_ID AND TYPE_JOB = 'KS'
622
		SET @FLAG = 1
623
	END
624
	ELSE IF (@TYPE = 'TR_REQ_PAYMENT_KT_SEND_SUG')
625
	BEGIN
626
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
627
		SELECT TOP 1 TLNAME FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID = @PO_ID AND TYPE_JOB = 'KS'
628
		SET @FLAG = 1
629
	END
630
	ELSE IF(@TYPE = 'TR_REQ_PAYMENT_KT_APR')
631
	BEGIN
632
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
633
		SELECT TOP 1 MAKER_ID FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
634
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
635
		SELECT TOP 1 MAKER_ID_KT FROM TR_REQ_PAYMENT WHERE REQ_PAY_ID = @PO_ID 
636
		SET @FLAG = 1
637
	END
638
	-- Tờ trình chủ trương
639
	ELSE IF(@TYPE = 'PL_SEND_APP' OR @TYPE ='PL_REQUEST_DOC_App'  OR @TYPE ='REQ_PROCESS_CHILD_Upd' OR @TYPE='REQ_PROCESS_CHILD_App')
640
	BEGIN
641
		SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
642
		INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
643
		EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'TTCT-DVKD'
644
		SET @FLAG = 2
645
	END
646
	ELSE IF(@TYPE='PL_REQ_PROCESS_CHILD_Ins')
647
	BEGIN
648
		DECLARE @PLREQ_ID VARCHAR(15)
649
		WHILE((SELECT COUNT(*) FROM @l_LST_REQ_ID) >0)
650
		BEGIN
651
			SET @PLREQ_ID =(SELECT TOP 1 REQ_PAY_ID FROM @l_LST_REQ_ID)
652
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
653
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
654
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PLREQ_ID,@MAKER_ID,'TTCT-DVKD'
655
			DELETE FROM @l_LST_REQ_ID WHERE REQ_PAY_ID =@PLREQ_ID
656
		END
657
		SET @FLAG = 2
658
	END
659
	ELSE IF(@TYPE='REQUEST_DOC_PROCESS_Approve')
660
	BEGIN
661
		IF(NOT EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='APPROVE'))
662
		BEGIN
663
			IF(NOT EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='TGD'))
664
			BEGIN
665
				SET @FLAG = 2
666
				--SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
667
				INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
668
				EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'TTCT-DVKD'
669
			END
670
			ELSE IF (EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='TGD'))
671
			BEGIN
672
				SET @FLAG = 2
673
				--SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
674
				INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
675
				EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'TTCT-DVKD'
676
				--INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP (REQ_ID,TLNAME) SELECT @PO_ID, TLNANME FROM TL_USER WHERE RoleName ='TGD'
677
			END
678
			ELSE IF (EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='HDQT'))
679
			BEGIN
680
				SET @FLAG = 2
681
				--SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
682
				INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
683
				EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'TTCT-DVKD'
684
				--INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP (REQ_ID,TLNAME) SELECT @PO_ID, TLNANME FROM TL_USER WHERE RoleName ='TKTGD'
685
			END
686
		END
687
		ELSE
688
		BEGIN
689
			SET @FLAG = 3
690
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID)
691
			--INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
692
			--EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @REQ_ID,@MAKER_ID,'TTCT-DVKD'
693
		END
694
	END
695
	ELSE IF(@TYPE='RESEND_REQUEST_DOC_PROCESS_Approve') --- LUCTV 28.11.2022 BO SUNG THEM 1 TYPE DE ANH BAOTQ GUI MAIL VE THU KY TGD DE THU KY TGD COPY LINK GUI CEO TRONG TRUONG HOP CEO MISS MAIL
696
	BEGIN
697
		IF (EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='TGD'))
698
			BEGIN
699
				SET @FLAG = 2
700
				INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP (REQ_ID,TLNAME) SELECT @PO_ID, TLNANME FROM TL_USER WHERE RoleName ='TKTGD'
701
			END
702
		ELSE IF (EXISTS(SELECT * FROM PL_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='HDQT'))
703
			BEGIN
704
				SET @FLAG = 2
705
				INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP (REQ_ID,TLNAME) SELECT @PO_ID, TLNANME FROM TL_USER WHERE RoleName ='TKHDQT'
706
		END
707
	END --- LUCTV 28.11.2022
708
	-------------------------------------------------------------------------------------------------------
709
	----- PHIẾU YÊU CẦU MUA SẮM --------------
710
	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')
711
	BEGIN
712
		-------------------Nếu PYCMS chưa hoàn tất-------------------
713
		IF(NOT EXISTS(SELECT * FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='APPROVE'))
714
		BEGIN
715
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
716
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
717
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'PYCMS-DVKD'
718
			SET @FLAG = 2
719
		END
720
		-------------------Nếu PYCMS hoàn tất-------------------
721
		ELSE
722
		BEGIN
723
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
724
			SET @NV_XL_MS =(SELECT TOP 1 USER_DVMS FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
725
			SET @FLAG = 4
726
		END
727
	END
728
	ELSE IF(@TYPE='TR_REQ_PROCESS_CHILD_Ins')
729
	BEGIN
730
		
731
		DECLARE @REQ_DOC_ID VARCHAR(15)
732
		WHILE((SELECT COUNT(*) FROM @l_LST_REQ_ID) >0)
733
		BEGIN
734
			SET @REQ_DOC_ID =(SELECT TOP 1 REQ_PAY_ID FROM @l_LST_REQ_ID)
735
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
736
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
737
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @REQ_DOC_ID,@MAKER_ID,'PYCMS-DVKD'
738
			DELETE FROM @l_LST_REQ_ID WHERE REQ_PAY_ID =@REQ_DOC_ID
739
		END
740
		SET @FLAG = 2
741
	END
742
	ELSE IF(@TYPE='TR_REQUEST_DOC_PROCESS_Approve')
743
	BEGIN
744
		IF(NOT EXISTS(SELECT * FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID AND PROCESS_ID ='APPROVE'))
745
		BEGIN
746
			--SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
747
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
748
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'PYCMS-DVKD'
749
			SET @FLAG = 3
750
		END
751
		ELSE
752
		BEGIN
753
			SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
754
			SET @NV_XL_MS =(SELECT TOP 1 USER_DVMS FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
755
			SET @FLAG = 4
756
		END
757
	END
758
	----------------BAODNQ 20/10/2022 ; LẮP MAIL GỬI KHI CHUYỂN PYCMS CHO DVCM-----------------
759
	ELSE IF(@TYPE = 'TR_REQUEST_DOC_MOVE_DVCM')
760
	BEGIN
761
		SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_REQUEST_DOC WHERE REQ_ID =@PO_ID)
762
		INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
763
		EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'PYCMS-DVKD'
764
		SET @FLAG = 2
765
	END
766
	---------------ENDBAODNQ-----------------------------
767

    
768
	------BAODNQ 4/1/2022: --------------
769
	-----Khai báo DTSD nội bộ - gửi YC phê duyệt-------
770
	ELSE IF @TYPE='BUD_CONTRACT_MASTER_SEND_APPROVE'
771
	BEGIN
772
		-----Có cấp phê duyệt trung gian-------
773
		IF (EXISTS (SELECT*FROM BUD_CONTRACT_MASTER WHERE CONTRACT_ID = @PO_ID AND SIGN_USER IS NOT NULL))
774
		BEGIN
775
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
776
					(SELECT A.SIGN_USER FROM BUD_CONTRACT_MASTER A WHERE A.CONTRACT_ID = @PO_ID)
777

    
778
		END
779
		ELSE
780
		-----Ko có cấp phê duyệt trung gian-------
781
		BEGIN
782
			SET @BRANCH_CREATE = (SELECT BRANCH_ID FROM BUD_CONTRACT_MASTER WHERE CONTRACT_ID = @PO_ID)
783
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
784
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM BUD_CONTRACT_MASTER WHERE CONTRACT_ID = @PO_ID)
785
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
786

    
787
			IF(@BRANCH_TYPE = 'PGD')
788
			BEGIN
789
				INSERT INTO @LST_USER_RECIVE (TLNAME)
790
						--(SELECT TLNANME FROM TL_USER 
791
						--WHERE 1=1
792
						--AND TLSUBBRID = @BRANCH_CREATE
793
						--AND RoleName IN ('TPGD', 'PPGD'))
794
						SELECT TLNANME
795
						FROM TL_USER
796
						WHERE 1=1
797
						AND TLSUBBRID = @BRANCH_CREATE
798
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
799
			END
800
			ELSE IF(@BRANCH_TYPE = 'CN')
801
			BEGIN
802
				INSERT INTO @LST_USER_RECIVE (TLNAME)
803
						--(SELECT TLNANME FROM TL_USER 
804
						--WHERE 1=1
805
						--AND TLSUBBRID = @BRANCH_CREATE
806
						--AND RoleName IN ('GDDV', 'PDG'))
807
						SELECT TLNANME
808
						FROM TL_USER
809
						WHERE 1=1
810
						AND TLSUBBRID = @BRANCH_CREATE
811
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
812
			END
813
			ELSE IF(@BRANCH_TYPE = 'HS')
814
			BEGIN
815
				INSERT INTO @LST_USER_RECIVE (TLNAME)
816
						--(SELECT TLNANME FROM TL_USER 
817
						--WHERE 1=1
818
						--AND TLSUBBRID = @BRANCH_CREATE
819
						--AND DEP_ID = @DEP_CREATE
820
						--AND RoleName IN ('GDDV', 'PP'))
821
						SELECT TLNANME
822
						FROM TL_USER
823
						WHERE 1=1
824
						AND TLSUBBRID = @BRANCH_CREATE
825
						AND DEP_ID = @DEP_CREATE
826
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
827
			END
828
		END
829
		
830
		SET @FLAG = 5
831
	END
832
	
833
	-----Khai báo DTSD nội bộ - trung gian duyệt thành công-------
834
	ELSE IF @TYPE='BUD_CONTRACT_MASTER_CONFIRM'
835
	BEGIN
836
		SET @BRANCH_CREATE = (SELECT BRANCH_ID FROM BUD_CONTRACT_MASTER WHERE CONTRACT_ID = @PO_ID)
837
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
838
		SET @p_MAKER_ID = (SELECT MAKER_ID FROM BUD_CONTRACT_MASTER WHERE CONTRACT_ID = @PO_ID)
839
		SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
840

    
841
		IF(@BRANCH_TYPE = 'PGD')
842
		BEGIN
843
			INSERT INTO @LST_USER_RECIVE (TLNAME)
844
					--(SELECT TLNANME FROM TL_USER 
845
					--WHERE 1=1
846
					--AND TLSUBBRID = @BRANCH_CREATE
847
					--AND RoleName IN ('TPGD', 'PPGD'))
848
					SELECT TLNANME
849
					FROM TL_USER
850
					WHERE 1=1
851
					AND TLSUBBRID = @BRANCH_CREATE
852
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
853
		END
854
		ELSE IF(@BRANCH_TYPE = 'CN')
855
		BEGIN
856
			INSERT INTO @LST_USER_RECIVE (TLNAME)
857
					--(SELECT TLNANME FROM TL_USER 
858
					--WHERE 1=1
859
					--AND TLSUBBRID = @BRANCH_CREATE
860
					--AND RoleName IN ('GDDV', 'PDG'))
861
					SELECT TLNANME
862
					FROM TL_USER
863
					WHERE 1=1
864
					AND TLSUBBRID = @BRANCH_CREATE
865
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
866
		END
867
		ELSE IF(@BRANCH_TYPE = 'HS')
868
		BEGIN
869
			INSERT INTO @LST_USER_RECIVE (TLNAME)
870
					--(SELECT TLNANME FROM TL_USER 
871
					--WHERE 1=1
872
					--AND TLSUBBRID = @BRANCH_CREATE
873
					--AND DEP_ID = @DEP_CREATE
874
					--AND RoleName IN ('GDDV', 'PP'))
875
					SELECT TLNANME
876
					FROM TL_USER
877
					WHERE 1=1
878
					AND TLSUBBRID = @BRANCH_CREATE
879
					AND DEP_ID = @DEP_CREATE
880
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
881
		END
882
		
883
		SET @FLAG = 5
884
	END
885
	-----Khai báo DTSD nội bộ - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-------
886
	ELSE IF @TYPE='BUD_CONTRACT_MASTER_APPROVED'
887
	BEGIN
888
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
889
					(SELECT A.MAKER_ID FROM BUD_CONTRACT_MASTER A WHERE A.CONTRACT_ID = @PO_ID)
890
		
891
		SET @FLAG = 5
892
	END
893
	---Quản lý hợp đồng khách thuê - gửi YC phê duyệt-----
894
	ELSE IF @TYPE='BUD_CONTRACT_CUST_MASTER_SEND_APPROVE'
895
	BEGIN
896
		-----Có cấp phê duyệt trung gian-------
897
		IF (EXISTS (SELECT*FROM BUD_CONTRACT_CUST_MASTER WHERE CONTRACT_ID = @PO_ID AND SIGN_USER IS NOT NULL))
898
		BEGIN
899
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
900
					(SELECT A.SIGN_USER FROM BUD_CONTRACT_CUST_MASTER A WHERE A.CONTRACT_ID = @PO_ID) 
901
		END	
902
		ELSE
903
		-----Ko có cấp phê duyệt trung gian-------
904
		BEGIN
905
			SET @BRANCH_CREATE = (SELECT BRANCH_ID FROM BUD_CONTRACT_CUST_MASTER WHERE CONTRACT_ID = @PO_ID)
906
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
907
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM BUD_CONTRACT_CUST_MASTER WHERE CONTRACT_ID = @PO_ID)
908
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
909

    
910
			IF(@BRANCH_TYPE = 'PGD')
911
			BEGIN
912
				INSERT INTO @LST_USER_RECIVE (TLNAME)
913
						--SELECT TLNANME FROM TL_USER 
914
						--WHERE 1=1
915
						--AND TLSUBBRID = @BRANCH_CREATE
916
						--AND RoleName IN ('TPGD', 'PP')
917
						SELECT TLNANME
918
						FROM TL_USER
919
						WHERE 1=1
920
						AND TLSUBBRID = @BRANCH_CREATE
921
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
922
			END
923
			ELSE IF(@BRANCH_TYPE = 'CN')
924
			BEGIN
925
				INSERT INTO @LST_USER_RECIVE (TLNAME)
926
						--SELECT TLNANME FROM TL_USER 
927
						--WHERE 1=1
928
						--AND TLSUBBRID = @BRANCH_CREATE
929
						--AND RoleName IN ('GDDV', 'PDG')
930
						SELECT TLNANME
931
						FROM TL_USER
932
						WHERE 1=1
933
						AND TLSUBBRID = @BRANCH_CREATE
934
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
935
			END
936
			ELSE IF(@BRANCH_TYPE = 'HS')
937
			BEGIN
938
				INSERT INTO @LST_USER_RECIVE (TLNAME)
939
						--SELECT TLNANME FROM TL_USER 
940
						--WHERE 1=1
941
						--AND TLSUBBRID = @BRANCH_CREATE
942
						--AND DEP_ID = @DEP_CREATE
943
						--AND RoleName IN ('GDDV', 'PP')
944
						SELECT TLNANME
945
						FROM TL_USER
946
						WHERE 1=1
947
						AND TLSUBBRID = @BRANCH_CREATE
948
						AND DEP_ID = @DEP_CREATE
949
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
950
			END
951
		END
952

    
953
		SET @FLAG = 5
954
	END
955
	---Quản lý hợp đồng khách thuê - trung gian duyệt thành công-----
956
	ELSE IF @TYPE='BUD_CONTRACT_CUST_MASTER_CONFIRM'
957
	BEGIN
958
		SET @BRANCH_CREATE = (SELECT BRANCH_ID FROM BUD_CONTRACT_CUST_MASTER WHERE CONTRACT_ID = @PO_ID)
959
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
960
		SET @p_MAKER_ID = (SELECT MAKER_ID FROM BUD_CONTRACT_CUST_MASTER WHERE CONTRACT_ID = @PO_ID)
961
		SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
962

    
963
		IF(@BRANCH_TYPE = 'PGD')
964
		BEGIN
965
			INSERT INTO @LST_USER_RECIVE (TLNAME)
966
					--(SELECT TLNANME FROM TL_USER 
967
					--WHERE 1=1
968
					--AND TLSUBBRID = @BRANCH_CREATE
969
					--AND RoleName IN ('TPGD', 'PP'))
970
					SELECT TLNANME
971
					FROM TL_USER
972
					WHERE 1=1
973
					AND TLSUBBRID = @BRANCH_CREATE
974
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
975
		END
976
		ELSE IF(@BRANCH_TYPE = 'CN')
977
		BEGIN
978
			INSERT INTO @LST_USER_RECIVE (TLNAME)
979
					--(SELECT TLNANME FROM TL_USER 
980
					--WHERE 1=1
981
					--AND TLSUBBRID = @BRANCH_CREATE
982
					--AND RoleName IN ('GDDV', 'PDG'))
983
					SELECT TLNANME
984
					FROM TL_USER
985
					WHERE 1=1
986
					AND TLSUBBRID = @BRANCH_CREATE
987
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
988
		END
989
		ELSE IF(@BRANCH_TYPE = 'HS')
990
		BEGIN
991
			INSERT INTO @LST_USER_RECIVE (TLNAME)
992
					--(SELECT TLNANME FROM TL_USER 
993
					--WHERE 1=1
994
					--AND TLSUBBRID = @BRANCH_CREATE
995
					--AND DEP_ID = @DEP_CREATE
996
					--AND RoleName IN ('GDDV', 'PP'))
997
					SELECT TLNANME
998
					FROM TL_USER
999
					WHERE 1=1
1000
					AND TLSUBBRID = @BRANCH_CREATE
1001
					AND DEP_ID = @DEP_CREATE
1002
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1003
		END
1004
		
1005
		SET @FLAG = 5
1006
	END
1007
	---Quản lý hợp đồng khách thuê - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-----
1008
	ELSE IF @TYPE='BUD_CONTRACT_CUST_MASTER_APPROVED'
1009
	BEGIN
1010
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
1011
					(SELECT A.MAKER_ID FROM BUD_CONTRACT_CUST_MASTER A WHERE A.CONTRACT_ID = @PO_ID)
1012
		SET @FLAG = 5
1013
	END
1014

    
1015
	------datmq 7/1/2022: --------------
1016
	-----Quản lý trụ sở - gửi YC phê duyệt-------
1017
	ELSE IF @TYPE='BUD_MASTER_SEND_APPROVE'
1018
	BEGIN
1019
		-----Có cấp phê duyệt trung gian-------
1020
		IF (EXISTS (SELECT*FROM BUD_MASTER WHERE BUILDING_ID = @PO_ID AND SIGN_USER IS NOT NULL))
1021
		BEGIN
1022
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
1023
					(SELECT A.SIGN_USER FROM BUD_MASTER A WHERE A.BUILDING_ID = @PO_ID)
1024
		END
1025
		ELSE
1026
		-----Ko có cấp phê duyệt trung gian-------
1027
		BEGIN
1028
			SET @BRANCH_CREATE = (SELECT BRANCH_ID FROM BUD_MASTER WHERE BUILDING_ID = @PO_ID)
1029
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1030
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM BUD_MASTER WHERE BUILDING_ID = @PO_ID)
1031
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1032

    
1033
			IF(@BRANCH_TYPE = 'PGD')
1034
			BEGIN
1035
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1036
						--SELECT TLNANME FROM TL_USER 
1037
						--WHERE 1=1
1038
						--AND TLSUBBRID = @BRANCH_CREATE
1039
						--AND RoleName IN ('TPGD', 'PP')
1040
						SELECT TLNANME
1041
						FROM TL_USER
1042
						WHERE 1=1
1043
						AND TLSUBBRID = @BRANCH_CREATE
1044
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
1045
			END
1046
			ELSE IF(@BRANCH_TYPE = 'CN')
1047
			BEGIN
1048
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1049
						--SELECT TLNANME FROM TL_USER 
1050
						--WHERE 1=1
1051
						--AND TLSUBBRID = @BRANCH_CREATE
1052
						--AND RoleName IN ('GDDV', 'PDG')
1053
						SELECT TLNANME
1054
						FROM TL_USER
1055
						WHERE 1=1
1056
						AND TLSUBBRID = @BRANCH_CREATE
1057
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1058
			END
1059
			ELSE IF(@BRANCH_TYPE = 'HS')
1060
			BEGIN
1061
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1062
						--SELECT TLNANME FROM TL_USER 
1063
						--WHERE 1=1
1064
						--AND TLSUBBRID = @BRANCH_CREATE
1065
						--AND DEP_ID = @DEP_CREATE
1066
						--AND RoleName IN ('GDDV', 'PP')
1067
						SELECT TLNANME
1068
						FROM TL_USER
1069
						WHERE 1=1
1070
						AND TLSUBBRID = @BRANCH_CREATE
1071
						AND DEP_ID = @DEP_CREATE
1072
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1073
			END
1074
		END
1075
		SET @FLAG = 6
1076
	END
1077
	-----Quản lý trụ sở - trung gian duyệt thành công-------
1078
	ELSE IF @TYPE='BUD_MASTER_CONFIRM'
1079
	BEGIN
1080
		SET @BRANCH_CREATE = (SELECT BRANCH_ID FROM BUD_MASTER WHERE BUILDING_ID = @PO_ID)
1081
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1082
		SET @p_MAKER_ID = (SELECT MAKER_ID FROM BUD_MASTER WHERE BUILDING_ID = @PO_ID)
1083
		SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1084

    
1085
		IF(@BRANCH_TYPE = 'PGD')
1086
		BEGIN
1087
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1088
					--(SELECT TLNANME FROM TL_USER 
1089
					--WHERE 1=1
1090
					--AND TLSUBBRID = @BRANCH_CREATE
1091
					--AND RoleName IN ('TPGD', 'PPGD'))
1092
					SELECT TLNANME
1093
					FROM TL_USER
1094
					WHERE 1=1
1095
					AND TLSUBBRID = @BRANCH_CREATE
1096
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
1097
		END
1098
		ELSE IF(@BRANCH_TYPE = 'CN')
1099
		BEGIN
1100
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1101
					--(SELECT TLNANME FROM TL_USER 
1102
					--WHERE 1=1
1103
					--AND TLSUBBRID = @BRANCH_CREATE
1104
					--AND RoleName IN ('GDDV', 'PDG'))
1105
					SELECT TLNANME
1106
					FROM TL_USER
1107
					WHERE 1=1
1108
					AND TLSUBBRID = @BRANCH_CREATE
1109
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1110
		END
1111
		ELSE IF(@BRANCH_TYPE = 'HS')
1112
		BEGIN
1113
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1114
					--(SELECT TLNANME FROM TL_USER 
1115
					--WHERE 1=1
1116
					--AND TLSUBBRID = @BRANCH_CREATE
1117
					--AND DEP_ID = @DEP_CREATE
1118
					--AND RoleName IN ('GDDV', 'PP'))
1119
					SELECT TLNANME
1120
					FROM TL_USER
1121
					WHERE 1=1
1122
					AND TLSUBBRID = @BRANCH_CREATE
1123
					AND DEP_ID = @DEP_CREATE
1124
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1125
		END
1126
		
1127
		SET @FLAG = 6
1128
	END
1129
	---Quản lý trụ sở - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-----
1130
	ELSE IF @TYPE='BUD_MASTER_APPROVED'
1131
	BEGIN
1132
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
1133
					(SELECT A.MAKER_ID FROM BUD_MASTER A WHERE A.BUILDING_ID = @PO_ID)
1134
		SET @FLAG = 6
1135
	END
1136
	-----PhongNT 15/9/2022: Quản lý TSCĐ/CCLĐ--------
1137
	-- Thêm mới tài sản HCQT
1138
	
1139
	ELSE IF @TYPE = 'ASS_SEND_TDV'
1140
	BEGIN
1141
		--cắt chuỗi lấy PREFIX để xác định Thêm mới, Xuất, Điều chuyển, Thu hồi, Thanh lý
1142
		SET @SYS_PREFIX =(SELECT LEFT(Val,PATINDEX('%[^a-z]%', Val+'0')-1) from(
1143
		  SELECT SUBSTRING(@PO_ID, PATINDEX('%[a-z]%', @PO_ID), LEN(@PO_ID)) Val
1144
		)x)
1145

    
1146
		SELECT @PAGE = sp.ID
1147
		FROM SYS_PREFIX sp WHERE sp.Prefix = @SYS_PREFIX
1148

    
1149
		
1150
	 --   SET @BRANCH_CREATE = (SELECT BRANCH_ID FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID = @PO_ID)
1151
		--SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1152
		--SET @p_MAKER_ID = (SELECT MAKER_ID FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID = @PO_ID)
1153
		--SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1154

    
1155
		IF(@PAGE='ASS_ADDNEW')
1156
			BEGIN
1157
				SELECT @BRANCH_CREATE=B.TLSUBBRID, @BRANCH_TYPE =B.BRANCH_TYPE, @DEP_CREATE = B.DEP_ID
1158
				FROM (SELECT MAKER_ID FROM ASS_ADDNEW WHERE ADDNEW_ID =@PO_ID) A
1159
				LEFT JOIN TL_USER B ON  B.TLNANME = A.MAKER_ID
1160
			END
1161
		ELSE IF(@PAGE='ASS_COLLECT_MULTI_MASTER')
1162
			BEGIN
1163
				SELECT @BRANCH_CREATE=B.TLSUBBRID, @BRANCH_TYPE =B.BRANCH_TYPE, @DEP_CREATE = B.DEP_ID
1164
				FROM (SELECT MAKER_ID FROM ASS_COLLECT_MULTI_MASTER WHERE COL_MULTI_MASTER_ID =@PO_ID) A
1165
				LEFT JOIN TL_USER B ON  B.TLNANME = A.MAKER_ID
1166
			END
1167
		ELSE IF(@PAGE='ASS_TRANSFER_MULTI_MASTER')
1168
			BEGIN
1169
				SELECT @BRANCH_CREATE=B.TLSUBBRID, @BRANCH_TYPE =B.BRANCH_TYPE, @DEP_CREATE = B.DEP_ID
1170
				FROM (SELECT MAKER_ID FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID =@PO_ID) A
1171
				LEFT JOIN TL_USER B ON  B.TLNANME = A.MAKER_ID
1172
			END
1173
		ELSE IF(@PAGE='ASS_USE_MULTI_MASTER')
1174
			BEGIN
1175
				SELECT @BRANCH_CREATE=B.TLSUBBRID, @BRANCH_TYPE =B.BRANCH_TYPE, @DEP_CREATE = B.DEP_ID
1176
				FROM (SELECT MAKER_ID FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID =@PO_ID) A
1177
				LEFT JOIN TL_USER B ON  B.TLNANME = A.MAKER_ID	
1178
			END
1179
		ELSE IF(@PAGE='ASS_LIQUIDATION')
1180
			BEGIN
1181
				SELECT @BRANCH_CREATE=B.TLSUBBRID, @BRANCH_TYPE =B.BRANCH_TYPE, @DEP_CREATE = B.DEP_ID
1182
				FROM (SELECT MAKER_ID FROM ASS_LIQUIDATION WHERE LIQ_ID =@PO_ID) A
1183
				LEFT JOIN TL_USER B ON  B.TLNANME = A.MAKER_ID	
1184
			END
1185
		ELSE IF(@PAGE='ASS_INVENTORY_MASTER')
1186
			BEGIN
1187
				IF((SELECT SIGN_USER FROM ASS_INVENTORY_MASTER WHERE INVENT_ID = @PO_ID) IS NOT NULL)
1188
					BEGIN
1189
						INSERT INTO @LST_USER_RECIVE (TLNAME)
1190
						(SELECT SIGN_USER FROM ASS_INVENTORY_MASTER WHERE INVENT_ID = @PO_ID)
1191
					END
1192
				ELSE
1193
					BEGIN
1194
						SELECT @BRANCH_CREATE=B.TLSUBBRID, @BRANCH_TYPE =B.BRANCH_TYPE, @DEP_CREATE = B.DEP_ID
1195
						FROM (SELECT MAKER_ID FROM ASS_INVENTORY_MASTER WHERE INVENT_ID =@PO_ID) A
1196
						LEFT JOIN TL_USER B ON  B.TLNANME = A.MAKER_ID
1197
					END
1198
			END
1199

    
1200
		IF (@BRANCH_TYPE = 'HS')
1201
		BEGIN
1202
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1203
				(SELECT TLNANME FROM TL_USER 
1204
				WHERE 1=1
1205
				AND TLSUBBRID = @BRANCH_CREATE
1206
				AND SECUR_CODE = @DEP_CREATE
1207
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TP'))
1208
				UNION ALL
1209
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1210
				WHERE 1=1
1211
				AND BRANCH_ID = @BRANCH_CREATE
1212
				AND DEP_ID = @DEP_CREATE
1213
				AND ROLE_NEW IN ('GDDV','TP')
1214
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1215
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1216
		END
1217
		ELSE IF(@BRANCH_TYPE IS NOT NULL)
1218
		BEGIN
1219
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1220
				(SELECT TLNANME FROM TL_USER 
1221
				WHERE 1=1
1222
				AND TLSUBBRID = @BRANCH_CREATE
1223
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TPGD'))
1224
				UNION ALL
1225
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1226
				WHERE 1=1
1227
				AND BRANCH_ID = @BRANCH_CREATE
1228
				AND ROLE_NEW IN ('GDDV','TPGD')
1229
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1230
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1231
		END
1232
		SET @FLAG = 6
1233
	END
1234
	ELSE IF @TYPE = 'ASS_SEND_GDV'
1235
		BEGIN
1236
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1237
			(SELECT TLNANME FROM dbo.FN_GET_USER_BY_ROLE('GDV','DV0001','DEP000000000022'))
1238
			SET @FLAG = 6
1239
		END
1240
	ELSE IF @TYPE = 'ASS_REJECT_GDV'
1241
		BEGIN
1242
		--cắt chuỗi lấy PREFIX để xác định Thêm mới, Xuất, Điều chuyển, Thu hồi, Thanh lý
1243
		SET @SYS_PREFIX =(SELECT LEFT(Val,PATINDEX('%[^a-z]%', Val+'0')-1) from(
1244
		  SELECT SUBSTRING(@PO_ID, PATINDEX('%[a-z]%', @PO_ID), LEN(@PO_ID)) Val
1245
		)x)
1246

    
1247
		SELECT @PAGE = sp.ID
1248
		FROM SYS_PREFIX sp WHERE sp.Prefix = @SYS_PREFIX
1249

    
1250
			IF(@PAGE='ASS_ADDNEW')
1251
			BEGIN
1252
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1253
				(
1254
				SELECT MAKER_ID_KT
1255
				FROM ASS_ADDNEW 
1256
				WHERE ADDNEW_ID = @PO_ID
1257
				)
1258
			END
1259
		ELSE IF(@PAGE='ASS_COLLECT_MULTI_MASTER')
1260
			BEGIN
1261
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1262
				(
1263
				SELECT MAKER_ID_KT
1264
				FROM ASS_COLLECT_MULTI_MASTER 
1265
				WHERE COL_MULTI_MASTER_ID = @PO_ID
1266
				)
1267
			END
1268
		ELSE IF(@PAGE='ASS_TRANSFER_MULTI_MASTER')
1269
			BEGIN
1270
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1271
				(
1272
				SELECT MAKER_ID_KT
1273
				FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @PO_ID
1274
				)
1275
			END
1276
		ELSE IF(@PAGE='ASS_USE_MULTI_MASTER')
1277
			BEGIN
1278
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1279
				(
1280
				SELECT MAKER_ID_KT
1281
				FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID = @PO_ID
1282
				)
1283
			END
1284
		ELSE IF(@PAGE='ASS_LIQUIDATION')
1285
			BEGIN
1286
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1287
				(
1288
				SELECT MAKER_ID_KT
1289
				FROM ASS_LIQUIDATION WHERE LIQ_ID = @PO_ID
1290
				)
1291

    
1292
			END
1293
		SET @FLAG = 6
1294
	END
1295
	ELSE IF @TYPE = 'ASS_SEND_KSV'
1296
		BEGIN
1297
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1298
			(SELECT TLNANME FROM dbo.FN_GET_USER_BY_ROLE('KSV','DV0001','DEP000000000022'))
1299
			SET @FLAG = 6
1300
		END
1301
	ELSE IF @TYPE = 'ASS_APPROVED'
1302
		BEGIN
1303
			--cắt chuỗi lấy PREFIX để xác định Thêm mới, Xuất, Điều chuyển, Thu hồi, Thanh lý
1304
			SET @SYS_PREFIX =(SELECT LEFT(Val,PATINDEX('%[^a-z]%', Val+'0')-1) from(
1305
			  SELECT SUBSTRING(@PO_ID, PATINDEX('%[a-z]%', @PO_ID), LEN(@PO_ID)) Val
1306
			)x)
1307

    
1308
			SELECT @PAGE = sp.ID
1309
			FROM SYS_PREFIX sp WHERE sp.Prefix = @SYS_PREFIX
1310

    
1311
			
1312
		IF(@PAGE='ASS_ADDNEW')
1313
			BEGIN
1314
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1315
				(SELECT MAKER_ID
1316
				FROM ASS_ADDNEW 
1317
				WHERE ADDNEW_ID = @PO_ID
1318
				UNION
1319
				SELECT MAKER_ID_KT
1320
				FROM ASS_ADDNEW 
1321
				WHERE ADDNEW_ID = @PO_ID
1322
				)
1323
			END
1324
		ELSE IF(@PAGE='ASS_COLLECT_MULTI_MASTER')
1325
			BEGIN
1326
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1327
				(SELECT MAKER_ID
1328
				FROM ASS_COLLECT_MULTI_MASTER 
1329
				WHERE COL_MULTI_MASTER_ID = @PO_ID
1330
				UNION
1331
				SELECT MAKER_ID_KT
1332
				FROM ASS_COLLECT_MULTI_MASTER 
1333
				WHERE COL_MULTI_MASTER_ID = @PO_ID
1334
				)
1335
			END
1336
		ELSE IF(@PAGE='ASS_TRANSFER_MULTI_MASTER')
1337
			BEGIN
1338
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1339
				(SELECT MAKER_ID
1340
				FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @PO_ID
1341
				UNION
1342
				SELECT MAKER_ID_KT
1343
				FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @PO_ID
1344
				)
1345
			END
1346
		ELSE IF(@PAGE='ASS_USE_MULTI_MASTER')
1347
			BEGIN
1348
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1349
				(SELECT MAKER_ID
1350
				FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID = @PO_ID
1351
				UNION
1352
				SELECT MAKER_ID_KT
1353
				FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID = @PO_ID
1354
				)
1355
			END
1356
		ELSE IF(@PAGE='ASS_LIQUIDATION')
1357
			BEGIN
1358
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1359
				(SELECT MAKER_ID
1360
				FROM ASS_LIQUIDATION WHERE LIQ_ID = @PO_ID
1361
				UNION
1362
				SELECT MAKER_ID_KT
1363
				FROM ASS_LIQUIDATION WHERE LIQ_ID = @PO_ID
1364
				)
1365

    
1366
			END
1367
		ELSE IF(@PAGE='ASS_UPDATE')
1368
		BEGIN
1369
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1370
			(SELECT MAKER_ID
1371
			FROM ASS_UPDATE au WHERE au.UPDATE_ID = @PO_ID
1372
			)
1373

    
1374
		END
1375
		ELSE IF(@PAGE='ASS_INVENTORY_MASTER')
1376
		BEGIN
1377
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1378
			(SELECT MAKER_ID
1379
			FROM ASS_INVENTORY_MASTER au WHERE au.INVENT_ID = @PO_ID
1380
			)
1381

    
1382
		END
1383
			SET @FLAG = 6
1384
	END
1385
	ELSE IF @TYPE = 'ASS_SEND_NT'
1386
		BEGIN
1387
			--cắt chuỗi lấy PREFIX để xác định Thêm mới, Xuất, Điều chuyển, Thu hồi, Thanh lý
1388
			SET @SYS_PREFIX =(SELECT LEFT(Val,PATINDEX('%[^a-z]%', Val+'0')-1) from(
1389
			  SELECT SUBSTRING(@PO_ID, PATINDEX('%[a-z]%', @PO_ID), LEN(@PO_ID)) Val
1390
			)x)
1391

    
1392
			SELECT @PAGE = sp.ID
1393
			FROM SYS_PREFIX sp WHERE sp.Prefix = @SYS_PREFIX
1394
      
1395
		IF(@PAGE='ASS_ADDNEW')
1396
			BEGIN
1397
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1398
				(SELECT MAKER_ID
1399
				FROM ASS_ADDNEW 
1400
				WHERE ADDNEW_ID = @PO_ID
1401
				)
1402
			END
1403
		ELSE IF(@PAGE='ASS_COLLECT_MULTI_MASTER')
1404
			BEGIN
1405
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1406
				(SELECT MAKER_ID
1407
				FROM ASS_COLLECT_MULTI_MASTER 
1408
				WHERE COL_MULTI_MASTER_ID = @PO_ID
1409
				)
1410
			END
1411
		ELSE IF(@PAGE='ASS_TRANSFER_MULTI_MASTER')
1412
			BEGIN
1413
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1414
				(SELECT MAKER_ID
1415
				FROM ASS_TRANSFER_MULTI_MASTER WHERE TRANS_MULTI_MASTER_ID = @PO_ID
1416
				)
1417
			END
1418
		ELSE IF(@PAGE='ASS_USE_MULTI_MASTER')
1419
			BEGIN
1420
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1421
				(SELECT MAKER_ID
1422
				FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID = @PO_ID
1423
				)
1424
			END
1425
		ELSE IF(@PAGE='ASS_LIQUIDATION')
1426
			BEGIN
1427
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1428
				(SELECT MAKER_ID
1429
				FROM ASS_LIQUIDATION WHERE LIQ_ID = @PO_ID
1430
				)
1431
			END
1432
    ELSE IF(@PAGE='ASS_UPDATE')
1433
			BEGIN
1434
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1435
				(SELECT MAKER_ID
1436
				FROM ASS_UPDATE au WHERE UPDATE_ID = @PO_ID
1437
				)
1438
			END
1439
   ELSE IF(@PAGE='ASS_COST_ALLOCATION')
1440
			BEGIN
1441
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1442
				(SELECT MAKER_ID
1443
				FROM ASS_COST_ALLOCATION au WHERE au.COS_ID = @PO_ID
1444
				)
1445
      END
1446
	    ELSE IF(@PAGE='CON_MASTER')
1447
			BEGIN
1448
				
1449
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1450
				(SELECT MAKER_ID
1451
				FROM CON_MASTER CM WHERE CM.CONSTRUCT_ID = @PO_ID
1452
				)
1453
      END
1454
		 ELSE IF(@PAGE='CON_LAYOUT_BLUEPRINT')
1455
			BEGIN
1456
				
1457
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1458
				(SELECT MAKER_ID
1459
				FROM CON_LAYOUT_BLUEPRINT CM WHERE CM.CON_LAYOUT_BLUEPRINT_ID = @PO_ID
1460
				)
1461
      END
1462
		SET @FLAG = 6
1463
	END
1464
	ELSE IF @TYPE = 'ASS_SEND_CONFIRM'
1465
		BEGIN
1466
			--cắt chuỗi lấy PREFIX để xác định Thêm mới, Xuất, Điều chuyển, Thu hồi, Thanh lý
1467
			SET @SYS_PREFIX =(SELECT LEFT(Val,PATINDEX('%[^a-z]%', Val+'0')-1) from(
1468
				SELECT SUBSTRING(@PO_ID, PATINDEX('%[a-z]%', @PO_ID), LEN(@PO_ID)) Val
1469
			)x)
1470

    
1471
			SELECT @PAGE = sp.ID
1472
			FROM SYS_PREFIX sp WHERE sp.Prefix = @SYS_PREFIX
1473

    
1474
			DECLARE @BRANCH_ID VARCHAR(20),@DEP_ID VARCHAR(20)
1475
		
1476
		IF(@PAGE='ASS_COLLECT_MULTI_MASTER')
1477
			BEGIN
1478
				SELECT TOP 1 @BRANCH_CREATE = A.BRANCH_ID,@DEP_CREATE = A.DEPT_ID_USE,@BRANCH_TYPE = B.BRANCH_TYPE
1479
				FROM  dbo.ASS_COLLECT_MULTI_DT A
1480
				LEFT JOIN dbo.CM_BRANCH B ON A.BRANCH_ID =B.BRANCH_ID
1481
				WHERE COL_MULTI_MASTER_ID = @PO_ID
1482
				ORDER BY COLLECT_MULTI_ID ASC
1483
			END
1484
		ELSE IF(@PAGE='ASS_USE_MULTI_MASTER')
1485
			BEGIN
1486
				SELECT TOP 1 @BRANCH_CREATE = A.BRANCH_ID, @DEP_CREATE = DEPT_ID,@BRANCH_TYPE = B.BRANCH_TYPE
1487
				FROM  dbo.ASS_USE_MULTI_DT A
1488
				LEFT JOIN dbo.CM_BRANCH B ON A.BRANCH_ID =B.BRANCH_ID
1489
				WHERE A.USER_MASTER_ID = @PO_ID
1490
				ORDER BY USE_MULTI_ID ASC
1491
			END
1492
		
1493
    
1494
		IF (@BRANCH_TYPE = 'HS')
1495
		BEGIN
1496
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1497
				(SELECT TLNANME FROM TL_USER 
1498
				WHERE 1=1
1499
				AND TLSUBBRID = @BRANCH_CREATE
1500
				AND SECUR_CODE = @DEP_CREATE
1501
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TP'))
1502
				UNION ALL
1503
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1504
				WHERE 1=1
1505
				AND 
1506
				((BRANCH_ID = @BRANCH_ID AND DEP_ID = @DEP_ID)
1507
				OR
1508
				(BRANCH_ID = @BRANCH_CREATE AND DEP_ID = @DEP_CREATE))
1509
				AND ROLE_NEW IN ('GDDV','TP')
1510
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1511
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1512
		END
1513
		ELSE
1514
		BEGIN
1515
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1516
				(SELECT TLNANME FROM TL_USER 
1517
				WHERE 1=1
1518
				AND TLSUBBRID = @BRANCH_CREATE
1519
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TPGD'))
1520
				UNION ALL
1521
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1522
				WHERE 1=1
1523
				AND 
1524
				((BRANCH_ID = @BRANCH_ID)
1525
				OR
1526
				(BRANCH_ID = @BRANCH_CREATE))
1527
				AND ROLE_NEW IN ('GDDV','TPGD')
1528
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1529
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1530
		END
1531
		SET @FLAG =6
1532
	END
1533
	ELSE IF @TYPE ='ASS_TRANSFER_CONFIRM_HANDOVER'
1534
	BEGIN
1535
		SELECT TOP 1 @BRANCH_CREATE=A.BRANCH_ID_OLD,@DEP_CREATE =DEPT_ID_OLD,@BRANCH_TYPE =b.BRANCH_TYPE
1536
		FROM  dbo.ASS_TRANSFER_MULTI_DT A
1537
		LEFT  JOIN dbo.CM_BRANCH B ON B.BRANCH_ID = A.BRANCH_ID_OLD
1538
		WHERE A.TRANS_MULTI_MASTER_ID = @PO_ID
1539
		ORDER BY TRANSFER_MULTI_ID ASC
1540

    
1541
		IF (@BRANCH_TYPE = 'HS')
1542
		BEGIN
1543
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1544
				(SELECT TLNANME FROM TL_USER 
1545
				WHERE 1=1
1546
				AND TLSUBBRID = @BRANCH_CREATE
1547
				AND SECUR_CODE = @DEP_CREATE
1548
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TP'))
1549
				UNION ALL
1550
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1551
				WHERE 1=1
1552
				AND 
1553
				((BRANCH_ID = @BRANCH_ID AND DEP_ID = @DEP_ID)
1554
				OR
1555
				(BRANCH_ID = @BRANCH_CREATE AND DEP_ID = @DEP_CREATE))
1556
				AND ROLE_NEW IN ('GDDV','TP')
1557
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1558
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1559
		END
1560
		ELSE
1561
		BEGIN
1562
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1563
				(SELECT TLNANME FROM TL_USER 
1564
				WHERE 1=1
1565
				AND TLSUBBRID = @BRANCH_CREATE
1566
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TPGD'))
1567
				UNION ALL
1568
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1569
				WHERE 1=1
1570
				AND 
1571
				((BRANCH_ID = @BRANCH_ID)
1572
				OR
1573
				(BRANCH_ID = @BRANCH_CREATE))
1574
				AND ROLE_NEW IN ('GDDV','TPGD')
1575
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1576
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1577
		END
1578
		SET @FLAG =6
1579
	END
1580
	ELSE IF @TYPE ='ASS_TRANSFER_CONFIRM_RECEIVER'
1581
	BEGIN
1582
		SELECT TOP 1 @BRANCH_CREATE =A.BRANCH_ID,@DEP_CREATE = DEPT_ID,@BRANCH_TYPE =b.BRANCH_TYPE
1583
		FROM  dbo.ASS_TRANSFER_MULTI_DT A
1584
		LEFT  JOIN dbo.CM_BRANCH B ON B.BRANCH_ID = A.BRANCH_ID
1585
		WHERE A.TRANS_MULTI_MASTER_ID = @PO_ID
1586
		ORDER BY TRANSFER_MULTI_ID ASC
1587

    
1588

    
1589
		IF (@BRANCH_TYPE = 'HS')
1590
		BEGIN
1591
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1592
				(SELECT TLNANME FROM TL_USER 
1593
				WHERE 1=1
1594
				AND TLSUBBRID = @BRANCH_CREATE
1595
				AND SECUR_CODE = @DEP_CREATE
1596
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TP'))
1597
				UNION ALL
1598
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1599
				WHERE 1=1
1600
				AND 
1601
				((BRANCH_ID = @BRANCH_ID AND DEP_ID = @DEP_ID)
1602
				OR
1603
				(BRANCH_ID = @BRANCH_CREATE AND DEP_ID = @DEP_CREATE))
1604
				AND ROLE_NEW IN ('GDDV','TP')
1605
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1606
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1607
		END
1608
		ELSE
1609
		BEGIN
1610
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1611
				(SELECT TLNANME FROM TL_USER 
1612
				WHERE 1=1
1613
				AND TLSUBBRID = @BRANCH_CREATE
1614
				AND EXISTS(SELECT * FROM [dbo].[TL_USER_GET_ROLES](TLNANME) WHERE ROLE_ID IN ('GDDV','TPGD'))
1615
				UNION ALL
1616
				SELECT TLNAME AS TLNANME FROM dbo.TL_SYS_ROLE_MAPPING
1617
				WHERE 1=1
1618
				AND 
1619
				((BRANCH_ID = @BRANCH_ID)
1620
				OR
1621
				(BRANCH_ID = @BRANCH_CREATE))
1622
				AND ROLE_NEW IN ('GDDV','TPGD')
1623
				AND (CONVERT(DATE,GETDATE(),103) >= CONVERT(DATE,EFF_DATE, 103) OR EFF_DATE IS NULL OR EFF_DATE ='')
1624
				AND (CONVERT(DATE, GETDATE(),103) <=CONVERT(DATE,EXP_DATE, 103) OR EXP_DATE IS NULL OR EXP_DATE =''))
1625
		END
1626
		SET @FLAG =6
1627
	END
1628
	ELSE IF @TYPE ='ASS_INVENTORY_RECIVE_MAIL'
1629
	BEGIN
1630
		IF(EXISTS(SELECT 1 FROM ASS_INVENTORY_MASTER WHERE SIGN_USER IS NOT NULL AND CHECKER_ID_DVKD IS NULL AND INVENT_ID=@PO_ID))
1631
			BEGIN
1632
				SELECT @BRANCH_CREATE =BRANCH_ID,@DEP_ID = DEPT_ID FROM dbo.ASS_INVENTORY_MASTER WHERE INVENT_ID=@PO_ID
1633
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1634
				(SELECT TLNANME FROM dbo.FN_GET_USER_BY_ROLE('GDDV',@BRANCH_CREATE,@DEP_ID))
1635
			END
1636
		ELSE
1637
			BEGIN
1638
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1639
				(SELECT PARTY_NAME FROM dbo.ASS_INVENTORY_PARTY_DT WHERE IS_RECIVE_MAIL =1 AND INVENT_ID =@PO_ID)
1640
			END
1641
		
1642
		SET @FLAG =6
1643
	END
1644
	ELSE IF @TYPE ='ASS_INVENTORY_MAIN'
1645
	BEGIN
1646
		INSERT INTO @LST_USER_RECIVE (TLNAME)
1647
		(SELECT PARTY_NAME FROM dbo.ASS_INVENTORY_PARTY_DT WHERE IS_MAIN = 1 AND INVENT_ID =@PO_ID)
1648
		SET @FLAG =6
1649
	END
1650

    
1651
	----------BAODNQ :15/2/2022 --Xử lý gửi mail cho phân hệ Quản lý BDS---------
1652
	---Quản lý BDS- gửi YC phê duyệt-----
1653
	ELSE IF @TYPE='RET_MASTER_SEND_APPROVE'
1654
	BEGIN
1655
		-----Có cấp phê duyệt trung gian-------
1656
		IF (EXISTS (SELECT * FROM RET_MASTER WHERE RET_ID = @PO_ID AND SIGN_USER IS NOT NULL))
1657
		BEGIN
1658
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
1659
					(SELECT A.SIGN_USER FROM RET_MASTER A WHERE A.RET_ID = @PO_ID) 
1660
		END	
1661
		ELSE
1662
		-----Ko có cấp phê duyệt trung gian-------
1663
		BEGIN
1664
			SET @BRANCH_CREATE = 
1665
				(SELECT  B.BRANCH_ID
1666
				FROM RET_MASTER A
1667
				LEFT JOIN ASS_MASTER B ON A.ASSET_ID = B.ASSET_ID
1668
				WHERE RET_ID = @PO_ID)
1669
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1670
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM RET_MASTER WHERE RET_ID = @PO_ID)
1671
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1672

    
1673
			IF(@BRANCH_TYPE = 'PGD')
1674
			BEGIN
1675
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1676
						--SELECT TLNANME FROM TL_USER 
1677
						--WHERE 1=1
1678
						--AND TLSUBBRID = @BRANCH_CREATE
1679
						--AND RoleName IN ('TPGD', 'PP')
1680
						SELECT TLNANME
1681
						FROM TL_USER
1682
						WHERE 1=1
1683
						AND TLSUBBRID = @BRANCH_CREATE
1684
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
1685
			END
1686
			ELSE IF(@BRANCH_TYPE = 'CN')
1687
			BEGIN
1688
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1689
						--SELECT TLNANME FROM TL_USER 
1690
						--WHERE 1=1
1691
						--AND TLSUBBRID = @BRANCH_CREATE
1692
						--AND RoleName IN ('GDDV', 'PDG')
1693
						SELECT TLNANME
1694
						FROM TL_USER
1695
						WHERE 1=1
1696
						AND TLSUBBRID = @BRANCH_CREATE
1697
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1698
			END
1699
			ELSE IF(@BRANCH_TYPE = 'HS')
1700
			BEGIN
1701
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1702
						--SELECT TLNANME FROM TL_USER 
1703
						--WHERE 1=1
1704
						--AND TLSUBBRID = @BRANCH_CREATE
1705
						--AND DEP_ID = @DEP_CREATE
1706
						--AND RoleName IN ('GDDV', 'PP')
1707
						SELECT TLNANME
1708
						FROM TL_USER
1709
						WHERE 1=1
1710
						AND TLSUBBRID = @BRANCH_CREATE
1711
						AND DEP_ID = @DEP_CREATE
1712
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1713
			END
1714
		END
1715

    
1716
		SET @FLAG = 7
1717
	END
1718
	---Quản lý BDS - trung gian duyệt thành công-----
1719
	ELSE IF @TYPE='RET_MASTER_CONFIRM'
1720
	BEGIN
1721
		SET @BRANCH_CREATE = 
1722
				(SELECT  B.BRANCH_ID
1723
				FROM RET_MASTER A
1724
				LEFT JOIN ASS_MASTER B ON A.ASSET_ID = B.ASSET_ID
1725
				WHERE RET_ID = @PO_ID)
1726
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1727
		SET @p_MAKER_ID = (SELECT MAKER_ID FROM RET_MASTER WHERE RET_ID = @PO_ID)
1728
		SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1729

    
1730
		IF(@BRANCH_TYPE = 'PGD')
1731
		BEGIN
1732
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1733
					--(SELECT TLNANME FROM TL_USER 
1734
					--WHERE 1=1
1735
					--AND TLSUBBRID = @BRANCH_CREATE
1736
					--AND RoleName IN ('TPGD', 'PP'))
1737
					SELECT TLNANME
1738
					FROM TL_USER
1739
					WHERE 1=1
1740
					AND TLSUBBRID = @BRANCH_CREATE
1741
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1742
		END
1743
		ELSE IF(@BRANCH_TYPE = 'CN')
1744
		BEGIN
1745
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1746
					--(SELECT TLNANME FROM TL_USER 
1747
					--WHERE 1=1
1748
					--AND TLSUBBRID = @BRANCH_CREATE
1749
					--AND RoleName IN ('GDDV', 'PDG'))
1750
					SELECT TLNANME
1751
					FROM TL_USER
1752
					WHERE 1=1
1753
					AND TLSUBBRID = @BRANCH_CREATE
1754
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1755
		END
1756
		ELSE IF(@BRANCH_TYPE = 'HS')
1757
		BEGIN
1758
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1759
					--(SELECT TLNANME FROM TL_USER 
1760
					--WHERE 1=1
1761
					--AND TLSUBBRID = @BRANCH_CREATE
1762
					--AND DEP_ID = @DEP_CREATE
1763
					--AND RoleName IN ('GDDV', 'PP'))
1764
					SELECT TLNANME
1765
					FROM TL_USER
1766
					WHERE 1=1
1767
					AND TLSUBBRID = @BRANCH_CREATE
1768
					AND DEP_ID = @DEP_CREATE
1769
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1770
		END
1771
		
1772
		SET @FLAG = 7
1773
	END
1774
	---Quản lý BDS - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-----
1775
	ELSE IF @TYPE='RET_MASTER_APPROVED'
1776
	BEGIN
1777
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
1778
					(SELECT A.MAKER_ID FROM RET_MASTER A WHERE A.RET_ID = @PO_ID)
1779
		SET @FLAG = 7
1780
	END
1781

    
1782
	---Thông tin sửa chữa BDS- gửi YC phê duyệt-----
1783
	ELSE IF @TYPE='RET_REPAIR_SEND_APPROVE'
1784
	BEGIN
1785
		-----Có cấp phê duyệt trung gian-------
1786
		IF (EXISTS (SELECT*FROM RET_REPAIR WHERE RP_ID = @PO_ID AND SIGN_USER IS NOT NULL))
1787
		BEGIN
1788
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
1789
					(SELECT A.SIGN_USER FROM RET_REPAIR A WHERE A.RP_ID = @PO_ID) 
1790
		END	
1791
		ELSE
1792
		-----Ko có cấp phê duyệt trung gian-------
1793
		BEGIN
1794
			SET @BRANCH_CREATE = (SELECT OFFER_BRANCH FROM RET_REPAIR WHERE RP_ID = @PO_ID)
1795
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1796
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM RET_REPAIR WHERE RP_ID = @PO_ID)
1797
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1798

    
1799
			IF(@BRANCH_TYPE = 'PGD')
1800
			BEGIN
1801
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1802
						--SELECT TLNANME FROM TL_USER 
1803
						--WHERE 1=1
1804
						--AND TLSUBBRID = @BRANCH_CREATE
1805
						--AND RoleName IN ('TPGD', 'PP')
1806
						SELECT TLNANME
1807
						FROM TL_USER
1808
						WHERE 1=1
1809
						AND TLSUBBRID = @BRANCH_CREATE
1810
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
1811
			END
1812
			ELSE IF(@BRANCH_TYPE = 'CN')
1813
			BEGIN
1814
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1815
						--SELECT TLNANME FROM TL_USER 
1816
						--WHERE 1=1
1817
						--AND TLSUBBRID = @BRANCH_CREATE
1818
						--AND RoleName IN ('GDDV', 'PDG')
1819
						SELECT TLNANME
1820
						FROM TL_USER
1821
						WHERE 1=1
1822
						AND TLSUBBRID = @BRANCH_CREATE
1823
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1824

    
1825
			END
1826
			ELSE IF(@BRANCH_TYPE = 'HS')
1827
			BEGIN
1828
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1829
						--SELECT TLNANME FROM TL_USER 
1830
						--WHERE 1=1
1831
						--AND TLSUBBRID = @BRANCH_CREATE
1832
						--AND DEP_ID = @DEP_CREATE
1833
						--AND RoleName IN ('GDDV', 'PP')
1834
						SELECT TLNANME
1835
						FROM TL_USER
1836
						WHERE 1=1
1837
						AND TLSUBBRID = @BRANCH_CREATE
1838
						AND DEP_ID = @DEP_CREATE
1839
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1840

    
1841
			END
1842
		END
1843

    
1844
		SET @FLAG = 7
1845
	END
1846
	---Thông tin sửa chữa BDS - trung gian duyệt thành công-----
1847
	ELSE IF @TYPE='RET_REPAIR_CONFIRM'
1848
	BEGIN
1849
		SET @BRANCH_CREATE = (SELECT OFFER_BRANCH FROM RET_REPAIR WHERE RP_ID = @PO_ID)
1850
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1851
		SET @p_MAKER_ID = (SELECT MAKER_ID FROM RET_REPAIR WHERE RP_ID = @PO_ID)
1852
		SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1853

    
1854
		IF(@BRANCH_TYPE = 'PGD')
1855
		BEGIN
1856
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1857
					--(SELECT TLNANME FROM TL_USER 
1858
					--WHERE 1=1
1859
					--AND TLSUBBRID = @BRANCH_CREATE
1860
					--AND RoleName IN ('TPGD', 'PP'))
1861
					SELECT TLNANME
1862
					FROM TL_USER
1863
					WHERE 1=1
1864
					AND TLSUBBRID = @BRANCH_CREATE
1865
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
1866

    
1867
		END
1868
		ELSE IF(@BRANCH_TYPE = 'CN')
1869
		BEGIN
1870
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1871
					--(SELECT TLNANME FROM TL_USER 
1872
					--WHERE 1=1
1873
					--AND TLSUBBRID = @BRANCH_CREATE
1874
					--AND RoleName IN ('GDDV', 'PDG'))
1875
					SELECT TLNANME
1876
					FROM TL_USER
1877
					WHERE 1=1
1878
					AND TLSUBBRID = @BRANCH_CREATE
1879
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1880

    
1881
		END
1882
		ELSE IF(@BRANCH_TYPE = 'HS')
1883
		BEGIN
1884
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1885
					--(SELECT TLNANME FROM TL_USER 
1886
					--WHERE 1=1
1887
					--AND TLSUBBRID = @BRANCH_CREATE
1888
					--AND DEP_ID = @DEP_CREATE
1889
					--AND RoleName IN ('GDDV', 'PP'))
1890
					SELECT TLNANME
1891
					FROM TL_USER
1892
					WHERE 1=1
1893
					AND TLSUBBRID = @BRANCH_CREATE
1894
					AND DEP_ID = @DEP_CREATE
1895
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1896

    
1897
		END
1898
		
1899
		SET @FLAG = 7
1900
	END
1901
	---Thông tin sửa chữa BDS - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-----
1902
	ELSE IF @TYPE='RET_REPAIR_APPROVED'
1903
	BEGIN
1904
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
1905
					(SELECT A.MAKER_ID FROM RET_REPAIR A WHERE A.RP_ID = @PO_ID)
1906
		SET @FLAG = 7
1907
	END
1908

    
1909
	---BDS thuê làm trụ sở CN/PGD - gửi YC phê duyệt-----
1910
	ELSE IF @TYPE='REAL_ESTATE_R_H_SEND_APPROVE'
1911
	BEGIN
1912
		-----Có cấp phê duyệt trung gian-------
1913
		IF (EXISTS (SELECT*FROM REAL_ESTATE_R_H WHERE RET_R_H_ID = @PO_ID AND SIGN_USER IS NOT NULL))
1914
		BEGIN
1915
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
1916
					(SELECT A.SIGN_USER FROM REAL_ESTATE_R_H A WHERE A.RET_R_H_ID = @PO_ID) 
1917
		END	
1918
		ELSE
1919
		-----Ko có cấp phê duyệt trung gian-------
1920
		BEGIN
1921
			SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM REAL_ESTATE_R_H WHERE RET_R_H_ID = @PO_ID)
1922
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1923
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM REAL_ESTATE_R_H WHERE RET_R_H_ID = @PO_ID)
1924
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1925

    
1926
			IF(@BRANCH_TYPE = 'PGD')
1927
			BEGIN
1928
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1929
						--SELECT TLNANME FROM TL_USER 
1930
						--WHERE 1=1
1931
						--AND TLSUBBRID = @BRANCH_CREATE
1932
						--AND RoleName IN ('TPGD', 'PP')
1933
						SELECT TLNANME
1934
						FROM TL_USER
1935
						WHERE 1=1
1936
						AND TLSUBBRID = @BRANCH_CREATE
1937
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
1938

    
1939
			END
1940
			ELSE IF(@BRANCH_TYPE = 'CN')
1941
			BEGIN
1942
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1943
						--SELECT TLNANME FROM TL_USER 
1944
						--WHERE 1=1
1945
						--AND TLSUBBRID = @BRANCH_CREATE
1946
						--AND RoleName IN ('GDDV', 'PDG')
1947
						SELECT TLNANME
1948
						FROM TL_USER
1949
						WHERE 1=1
1950
						AND TLSUBBRID = @BRANCH_CREATE
1951
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
1952
			END
1953
			ELSE IF(@BRANCH_TYPE = 'HS')
1954
			BEGIN
1955
				INSERT INTO @LST_USER_RECIVE (TLNAME)
1956
						--SELECT TLNANME FROM TL_USER 
1957
						--WHERE 1=1
1958
						--AND TLSUBBRID = @BRANCH_CREATE
1959
						--AND DEP_ID = @DEP_CREATE
1960
						--AND RoleName IN ('GDDV', 'PP')
1961
						SELECT TLNANME
1962
						FROM TL_USER
1963
						WHERE 1=1
1964
						AND TLSUBBRID = @BRANCH_CREATE
1965
						AND DEP_ID = @DEP_CREATE
1966
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
1967
			END
1968
		END
1969

    
1970
		SET @FLAG = 7
1971
	END
1972
	---BDS thuê làm trụ sở CN/PGD - trung gian duyệt thành công-----
1973
	ELSE IF @TYPE='REAL_ESTATE_R_H_CONFIRM'
1974
	BEGIN
1975
		SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM REAL_ESTATE_R_H WHERE RET_R_H_ID = @PO_ID)
1976
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
1977
		SET @p_MAKER_ID = (SELECT MAKER_ID FROM REAL_ESTATE_R_H WHERE RET_R_H_ID = @PO_ID)
1978
		SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
1979

    
1980
		IF(@BRANCH_TYPE = 'PGD')
1981
		BEGIN
1982
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1983
					--(SELECT TLNANME FROM TL_USER 
1984
					--WHERE 1=1
1985
					--AND TLSUBBRID = @BRANCH_CREATE
1986
					--AND RoleName IN ('TPGD', 'PP'))
1987
					SELECT TLNANME
1988
					FROM TL_USER
1989
					WHERE 1=1
1990
					AND TLSUBBRID = @BRANCH_CREATE
1991
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
1992
		END
1993
		ELSE IF(@BRANCH_TYPE = 'CN')
1994
		BEGIN
1995
			INSERT INTO @LST_USER_RECIVE (TLNAME)
1996
					--(SELECT TLNANME FROM TL_USER 
1997
					--WHERE 1=1
1998
					--AND TLSUBBRID = @BRANCH_CREATE
1999
					--AND RoleName IN ('GDDV', 'PDG'))
2000
					SELECT TLNANME
2001
					FROM TL_USER
2002
					WHERE 1=1
2003
					AND TLSUBBRID = @BRANCH_CREATE
2004
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
2005
		END
2006
		ELSE IF(@BRANCH_TYPE = 'HS')
2007
		BEGIN
2008
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2009
					--(SELECT TLNANME FROM TL_USER 
2010
					--WHERE 1=1
2011
					--AND TLSUBBRID = @BRANCH_CREATE
2012
					--AND DEP_ID = @DEP_CREATE
2013
					--AND RoleName IN ('GDDV', 'PP'))
2014
					SELECT TLNANME
2015
					FROM TL_USER
2016
					WHERE 1=1
2017
					AND TLSUBBRID = @BRANCH_CREATE
2018
					AND DEP_ID = @DEP_CREATE
2019
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
2020
		END
2021
		
2022
		SET @FLAG = 7
2023
	END
2024
	---BDS thuê làm trụ sở CN/PGD - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-----
2025
	ELSE IF @TYPE='REAL_ESTATE_R_H_APPROVED'
2026
	BEGIN
2027
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2028
					(SELECT A.MAKER_ID FROM REAL_ESTATE_R_H A WHERE A.RET_R_H_ID = @PO_ID)
2029
		SET @FLAG = 7
2030
	END
2031

    
2032
	---BDS đang hoàn thiện thủ tục pháp lý - gửi YC phê duyệt-----
2033
	ELSE IF @TYPE='REAL_ESTATE_L_C_SEND_APPROVE'
2034
	BEGIN
2035
		-----Có cấp phê duyệt trung gian-------
2036
		IF (EXISTS (SELECT*FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @PO_ID AND SIGN_USER IS NOT NULL))
2037
		BEGIN
2038
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
2039
					(SELECT A.SIGN_USER FROM REAL_ESTATE_L_C A WHERE A.RET_L_C_ID = @PO_ID) 
2040
		END	
2041
		ELSE
2042
		-----Ko có cấp phê duyệt trung gian-------
2043
		BEGIN
2044
			SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @PO_ID)
2045
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
2046
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @PO_ID)
2047
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
2048

    
2049
			IF(@BRANCH_TYPE = 'PGD')
2050
			BEGIN
2051
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2052
						--SELECT TLNANME FROM TL_USER 
2053
						--WHERE 1=1
2054
						--AND TLSUBBRID = @BRANCH_CREATE
2055
						--AND RoleName IN ('TPGD', 'PP')
2056
						SELECT TLNANME
2057
						FROM TL_USER
2058
						WHERE 1=1
2059
						AND TLSUBBRID = @BRANCH_CREATE
2060
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
2061
			END
2062
			ELSE IF(@BRANCH_TYPE = 'CN')
2063
			BEGIN
2064
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2065
						--SELECT TLNANME FROM TL_USER 
2066
						--WHERE 1=1
2067
						--AND TLSUBBRID = @BRANCH_CREATE
2068
						--AND RoleName IN ('GDDV', 'PDG')
2069
						SELECT TLNANME
2070
						FROM TL_USER
2071
						WHERE 1=1
2072
						AND TLSUBBRID = @BRANCH_CREATE
2073
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
2074
			END
2075
			ELSE IF(@BRANCH_TYPE = 'HS')
2076
			BEGIN
2077
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2078
						--SELECT TLNANME FROM TL_USER 
2079
						--WHERE 1=1
2080
						--AND TLSUBBRID = @BRANCH_CREATE
2081
						--AND DEP_ID = @DEP_CREATE
2082
						--AND RoleName IN ('GDDV', 'PP')
2083
						SELECT TLNANME
2084
						FROM TL_USER
2085
						WHERE 1=1
2086
						AND TLSUBBRID = @BRANCH_CREATE
2087
						AND DEP_ID = @DEP_CREATE
2088
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
2089
			END
2090
		END
2091

    
2092
		SET @FLAG = 7
2093
	END
2094
	---BDS đang hoàn thiện thủ tục pháp lý - trung gian duyệt thành công-----
2095
	ELSE IF @TYPE='REAL_ESTATE_L_C_CONFIRM'
2096
	BEGIN
2097
		SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @PO_ID)
2098
		SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
2099
		SET @p_MAKER_ID = (SELECT MAKER_ID FROM REAL_ESTATE_L_C WHERE RET_L_C_ID = @PO_ID)
2100
		SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
2101

    
2102
		IF(@BRANCH_TYPE = 'PGD')
2103
		BEGIN
2104
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2105
					--(SELECT TLNANME FROM TL_USER 
2106
					--WHERE 1=1
2107
					--AND TLSUBBRID = @BRANCH_CREATE
2108
					--AND RoleName IN ('TPGD', 'PP'))
2109
					SELECT TLNANME
2110
					FROM TL_USER
2111
					WHERE 1=1
2112
					AND TLSUBBRID = @BRANCH_CREATE
2113
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
2114
		END
2115
		ELSE IF(@BRANCH_TYPE = 'CN')
2116
		BEGIN
2117
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2118
					--(SELECT TLNANME FROM TL_USER 
2119
					--WHERE 1=1
2120
					--AND TLSUBBRID = @BRANCH_CREATE
2121
					--AND RoleName IN ('GDDV', 'PDG'))
2122
					SELECT TLNANME
2123
					FROM TL_USER
2124
					WHERE 1=1
2125
					AND TLSUBBRID = @BRANCH_CREATE
2126
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
2127
		END
2128
		ELSE IF(@BRANCH_TYPE = 'HS')
2129
		BEGIN
2130
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2131
					--(SELECT TLNANME FROM TL_USER 
2132
					--WHERE 1=1
2133
					--AND TLSUBBRID = @BRANCH_CREATE
2134
					--AND DEP_ID = @DEP_CREATE
2135
					--AND RoleName IN ('GDDV', 'PP'))
2136
					SELECT TLNANME
2137
					FROM TL_USER
2138
					WHERE 1=1
2139
					AND TLSUBBRID = @BRANCH_CREATE
2140
					AND DEP_ID = @DEP_CREATE
2141
					AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP'))
2142
		END
2143
		
2144
		SET @FLAG = 7
2145
	END
2146
	---BDS đang hoàn thiện thủ tục pháp lý - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-----
2147
	ELSE IF @TYPE='REAL_ESTATE_L_C_APPROVED'
2148
	BEGIN
2149
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2150
					(SELECT A.MAKER_ID FROM REAL_ESTATE_L_C A WHERE A.RET_L_C_ID = @PO_ID)
2151
		SET @FLAG = 7
2152
	END
2153
	--PHONGNT 24/2/2022 PHIẾU YÊU CẦU CÔNG TÁC--
2154
	---PHIẾU YÊU CẦU CÔNG TÁC - gửi YC cho cấp phê duyệt trung gian---
2155
	ELSE IF @TYPE='TR_REQUEST_JOB_FORM_SIGN'
2156
	BEGIN
2157
		DECLARE @SIGN_USER VARCHAR(20)
2158
		SET @SIGN_USER = (SELECT SIGN_USER FROM TR_REQUEST_JOB_FORM WHERE REQ_ID = @PO_ID)
2159
		IF (@SIGN_USER ='TKTGD')
2160
			BEGIN
2161
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
2162
						SELECT TLNANME FROM dbo.FN_GET_USER_BY_ROLE(@SIGN_USER,'','')
2163
			END	
2164
		ELSE IF (@SIGN_USER IS NOT NULL)
2165
			BEGIN
2166
				INSERT INTO @LST_USER_RECIVE (TLNAME) 
2167
						(SELECT A.SIGN_USER FROM TR_REQUEST_JOB_FORM A WHERE A.REQ_ID = @PO_ID) 
2168
			END
2169

    
2170
		SET @FLAG = 7
2171
	END
2172
	ELSE IF @TYPE='TR_REQUEST_JOB_FORM_SEND'
2173
	BEGIN
2174
		DECLARE @DVCM_ID VARCHAR(20)
2175
		SELECT TOP 1 @ROLE_CURRENT = Temp.ROLE_USER, @DVCM_ID=Temp.DVDM_ID,@BRANCH_ID =Temp.BRANCH_ID,@DEP_ID=Temp.DEP_ID 
2176
		FROM dbo.PL_REQUEST_PROCESS Temp WHERE Temp.REQ_ID=@PO_ID AND (Temp.STATUS='C' OR Temp.STATUS='R')
2177

    
2178
		IF(@ROLE_CURRENT IN ('GDK','PTGD'))
2179
			BEGIN
2180
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2181
							(SELECT TLNANME FROM dbo.FN_GET_USER_MANAGER_BY_DVCM(@ROLE_CURRENT,@DVCM_ID)) 
2182
			END
2183
		ELSE 
2184
			BEGIN
2185
				IF(EXISTS(SELECT 1 FROM dbo.FN_GET_USER_BY_ROLE(@ROLE_CURRENT,@BRANCH_ID,@DEP_ID)))
2186
					BEGIN
2187
						INSERT INTO @LST_USER_RECIVE (TLNAME)
2188
								(SELECT TLNANME FROM dbo.FN_GET_USER_BY_ROLE(@ROLE_CURRENT,@BRANCH_ID,@DEP_ID))
2189
					END
2190
				ELSE
2191
					BEGIN
2192
						INSERT INTO @LST_USER_RECIVE (TLNAME)
2193
								(SELECT value FROM wsiSplit(@ROLE_CURRENT,','))
2194
					END
2195
			END
2196
		SET @FLAG = 7
2197
	END
2198
	---Phiếu yêu cầu công tác - trưởng đơn vị đã duyệt, trả mail về cho ng tạo-----
2199
	ELSE IF @TYPE='TR_REQUEST_JOB_FORM_APPROVED'
2200
	BEGIN
2201
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2202
		(SELECT A.MAKER_ID FROM TR_REQUEST_JOB_FORM A WHERE A.REQ_ID = @PO_ID)
2203
		UNION ALL
2204
		(SELECT A.EMP_ID FROM TR_REQUEST_JOB_FORM A WHERE A.REQ_ID = @PO_ID)
2205
		SET @FLAG = 7
2206
	END
2207
	--PHONGNT 24/2/2022 PHIẾU YÊU CẦU XE--
2208
	---PHIẾU YÊU CẦU XE - gửi YC phê duyệt---
2209
	ELSE IF @TYPE='TR_REQUEST_CAR_SEND_TDV'
2210
	BEGIN
2211
			SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQUEST_CAR WHERE REQ_ID = @PO_ID)
2212
			SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
2213
			SET @p_MAKER_ID = (SELECT MAKER_ID FROM TR_REQUEST_CAR WHERE REQ_ID = @PO_ID)
2214
			SET @DEP_CREATE =(SELECT DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
2215

    
2216
			IF(@BRANCH_TYPE = 'PGD')
2217
			BEGIN
2218
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2219
						SELECT TLNANME FROM TL_USER A
2220
						JOIN AbpUserRoles B ON B.UserId = A.ID
2221
						JOIN AbpRoles C ON C.Id=B.RoleId
2222
						WHERE 1=1
2223
						AND A.TLSUBBRID = @BRANCH_CREATE
2224
						AND C.DisplayName IN ('TPGD', 'PPGD')
2225
			END
2226
			ELSE IF(@BRANCH_TYPE = 'CN')
2227
			BEGIN
2228
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2229
						SELECT TLNANME FROM TL_USER A
2230
						JOIN AbpUserRoles B ON B.UserId = A.ID
2231
						JOIN AbpRoles C ON C.Id=B.RoleId
2232
						WHERE 1=1
2233
						AND A.TLSUBBRID = @BRANCH_CREATE
2234
						AND RoleName IN ('GDDV', 'PDG')
2235
			END
2236
			ELSE IF(@BRANCH_TYPE = 'HS')
2237
			BEGIN
2238
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2239
						SELECT TLNANME FROM TL_USER A
2240
						JOIN AbpUserRoles B ON B.UserId = A.ID
2241
						JOIN AbpRoles C ON C.Id=B.RoleId
2242
						WHERE 1=1
2243
						AND A.TLSUBBRID = @BRANCH_CREATE
2244
						AND A.DEP_ID = @DEP_CREATE
2245
						AND RoleName IN ('GDDV', 'TP','TBP','PP')
2246
			END
2247
		SET @FLAG = 7
2248
	END
2249
	---Phiếu yêu cầu xe - gửi mail cho người cập nhật phiếu-----
2250
	ELSE IF @TYPE='TR_REQUEST_CAR_SEND_USERUPD'
2251
	BEGIN
2252
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2253
					(SELECT USER_UPDATE FROM TR_REQUEST_CAR  WHERE REQ_ID = @PO_ID) 
2254
		SET @FLAG = 7
2255
	END
2256
	---Phiếu yêu cầu xe - gửi mail cho CVĐĐ Xe-----
2257
	ELSE IF @TYPE='TR_REQUEST_CAR_SEND_CV'
2258
	BEGIN
2259
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2260
					(SELECT CDVAL FROM CM_ALLCODE  WHERE CDNAME = 'REQCAR') 
2261
		SET @FLAG = 7
2262
	END
2263
	---Phiếu yêu cầu xe - gửi mail cho người tạo-----
2264
	ELSE IF @TYPE='TR_REQUEST_CAR_COST_SEND_MAKER'
2265
	BEGIN
2266
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2267
					(SELECT MAKER_ID FROM TR_REQUEST_CAR  WHERE REQ_ID = @PO_ID) 
2268
		SET @FLAG = 7
2269
	END
2270
	---Phiếu yêu cầu xe - CVĐĐ Xe đã duyệt, gửi mail cho Lãnh Đạo HC HO-----
2271
	ELSE IF @TYPE='TR_REQUEST_CAR_COST_CV_App'
2272
	BEGIN
2273
		SET @BRANCH_CREATE = (SELECT BRANCH_CREATE FROM TR_REQUEST_CAR WHERE REQ_ID = @PO_ID)
2274
		INSERT INTO @LST_USER_RECIVE (TLNAME)
2275
					(SELECT TLNANME FROM TL_USER 
2276
					WHERE 1=1
2277
					AND TLSUBBRID = @BRANCH_CREATE
2278
					AND RoleName IN ('GDDV', 'PP'))
2279
		SET @FLAG = 7
2280
	END
2281
	---Phiếu yêu cầu xe - Gửi CV và người tạo-----
2282
	ELSE IF @TYPE='TR_REQUEST_CAR_SEND_CV_USER'
2283
	BEGIN
2284
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2285
					(SELECT MAKER_ID FROM TR_REQUEST_CAR  WHERE REQ_ID = @PO_ID) 
2286
		INSERT INTO @LST_USER_RECIVE (TLNAME) 
2287
					(SELECT USER_UPDATE FROM TR_REQUEST_CAR  WHERE REQ_ID = @PO_ID) 
2288
		SET @FLAG = 7
2289
	END
2290
	-- Kho vật liệu
2291
	ELSE IF (@TYPE = 'MW_IN_KT_APPR')
2292
	BEGIN
2293
		IF(EXISTS(SELECT * FROM MW_IN_MASTER WHERE IN_ID = @PO_ID AND AUTH_STATUS = 'A' AND AUTH_STATUS_KT = 'A'))
2294
		BEGIN
2295
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
2296
			(SELECT MAKER_ID FROM MW_IN_MASTER WHERE IN_ID = @PO_ID)
2297
		END
2298
		SET @FLAG = 8
2299
	END
2300
	ELSE IF (@TYPE = 'MW_OUT_KT_APPR')
2301
	BEGIN
2302
		IF(EXISTS(SELECT * FROM MW_OUT WHERE OUT_ID = @PO_ID AND AUTH_STATUS = 'A' AND KT_AUTH_STATUS = 'A'))
2303
		BEGIN
2304
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
2305
			(SELECT MAKER_ID FROM MW_OUT WHERE OUT_ID = @PO_ID)
2306
		END
2307
		SET @FLAG = 8
2308
	END
2309
	ELSE IF (@TYPE = 'MW_TRANSFER_KT_APPR')
2310
	BEGIN
2311
		IF(EXISTS(SELECT * FROM MW_TRANSFER WHERE TRANSFER_ID = @PO_ID AND AUTH_STATUS = 'A' AND KT_AUTH_STATUS = 'A'))
2312
		BEGIN
2313
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
2314
			(SELECT MAKER_ID FROM MW_TRANSFER WHERE TRANSFER_ID = @PO_ID)
2315
		END
2316
		SET @FLAG = 8
2317
	END
2318
	ELSE IF (@TYPE = 'MW_LIQUID_KT_APPR')
2319
	BEGIN
2320
		IF(EXISTS(SELECT * FROM MW_LIQ_MASTER WHERE LIQ_ID = @PO_ID AND AUTH_STATUS = 'A' AND KT_AUTH_STATUS = 'A'))
2321
		BEGIN
2322
			INSERT INTO @LST_USER_RECIVE (TLNAME) 
2323
			(SELECT MAKER_ID FROM MW_LIQ_MASTER WHERE LIQ_ID = @PO_ID)
2324
		END
2325
		SET @FLAG = 8
2326
	END
2327
  ELSE IF @TYPE = 'TR_REJECT_GDV'
2328
		BEGIN
2329
		--cắt chuỗi lấy PREFIX để xác định Thêm mới, Xuất, Điều chuyển, Thu hồi, Thanh lý
2330
		SET @SYS_PREFIX =(SELECT LEFT(Val,PATINDEX('%[^a-z]%', Val+'0')-1) from(
2331
		  SELECT SUBSTRING(@PO_ID, PATINDEX('%[a-z]%', @PO_ID), LEN(@PO_ID)) Val
2332
		)x)
2333

    
2334
		SELECT @PAGE = sp.ID
2335
		FROM SYS_PREFIX sp WHERE sp.Prefix = @SYS_PREFIX
2336
			IF(@PAGE='TR_REQ_PAYMENT')
2337
			BEGIN
2338
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2339
				(
2340
				SELECT MAKER_ID_KT
2341
				FROM TR_REQ_PAYMENT 
2342
				WHERE REQ_PAY_ID = @PO_ID
2343
				)
2344
			END
2345
		ELSE IF(@PAGE='TR_REQ_ADVANCE_PAMENT')
2346
			BEGIN
2347
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2348
				(
2349
				SELECT MAKER_ID_KT
2350
				FROM TR_REQ_ADVANCE_PAYMENT 
2351
				WHERE REQ_PAY_ID = @PO_ID
2352
				)
2353
			END
2354
		
2355
		SET @FLAG = 6
2356
	END
2357
  ELSE IF @TYPE = 'TR_REJECT_NT'
2358
		BEGIN
2359
			--cắt chuỗi lấy PREFIX để xác định Thêm mới, Xuất, Điều chuyển, Thu hồi, Thanh lý
2360
			SET @SYS_PREFIX =(SELECT LEFT(Val,PATINDEX('%[^a-z]%', Val+'0')-1) from(
2361
			  SELECT SUBSTRING(@PO_ID, PATINDEX('%[a-z]%', @PO_ID), LEN(@PO_ID)) Val
2362
			)x)
2363
      
2364

    
2365
			SELECT @PAGE = sp.ID
2366
			FROM SYS_PREFIX sp WHERE sp.Prefix = @SYS_PREFIX
2367
			
2368
		IF(@PAGE='TR_REQ_PAYMENT')
2369
			BEGIN
2370
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2371
				(SELECT MAKER_ID
2372
				FROM TR_REQ_PAYMENT 
2373
				WHERE REQ_PAY_ID = @PO_ID
2374
				)
2375
			END
2376
		ELSE IF(@PAGE='TR_REQ_ADVANCE_PAMENT')
2377
			BEGIN
2378
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2379
				(SELECT MAKER_ID
2380
				FROM TR_REQ_ADVANCE_PAYMENT 
2381
				WHERE REQ_PAY_ID = @PO_ID
2382
				)
2383
			END
2384
		SET @FLAG = 6
2385
	END
2386

    
2387
	----------------BAODNQ 26/10/2022 : GỬI MAIL QUẢN LÝ HỢP ĐỒNG-------------------
2388
	--------------------NG TẠO GỬI YÊU CẦU PHÊ DUYỆT HỢP ĐỒNG--------------------
2389
	ELSE IF (@TYPE = 'TR_CONTRACT_SEND_APP')
2390
	BEGIN
2391
		DECLARE @p_MAKER_BRANCH_CREATE VARCHAR(15), 
2392
				@p_MAKER_BRANCH_TYPE VARCHAR(15),
2393
				@p_MAKER_DEP_CREATE VARCHAR(15)
2394
		SET @p_MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_CONTRACT WHERE CONTRACT_ID = @PO_ID)
2395
		SET @p_MAKER_BRANCH_CREATE  = (SELECT TOP 1 TLSUBBRID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
2396
		SET @p_MAKER_BRANCH_TYPE = (SELECT TOP 1 BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @p_MAKER_BRANCH_CREATE)
2397
		SET @p_MAKER_DEP_CREATE =(SELECT TOP 1 DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
2398
		SET @p_DEP_CREATE_CODE = (SELECT TOP 1 DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID = @p_MAKER_DEP_CREATE)
2399
		IF(@p_MAKER_BRANCH_TYPE = 'PGD')
2400
		BEGIN
2401
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2402
				SELECT TLNANME
2403
				FROM TL_USER
2404
				WHERE 1=1
2405
				AND TLSUBBRID = @p_MAKER_BRANCH_CREATE
2406
				AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
2407
		END
2408
		ELSE IF (@p_MAKER_BRANCH_TYPE = 'CN')
2409
		BEGIN
2410
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2411
				SELECT TLNANME
2412
				FROM TL_USER
2413
				WHERE 1=1
2414
				AND TLSUBBRID = @p_MAKER_BRANCH_CREATE
2415
				AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
2416
		END
2417
		ELSE IF (@p_MAKER_BRANCH_TYPE = 'HS')
2418
		BEGIN
2419
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2420
				SELECT TLNANME
2421
				FROM TL_USER
2422
				WHERE 1=1
2423
				AND TLSUBBRID = @p_MAKER_BRANCH_CREATE
2424
				AND DEP_ID = @p_MAKER_DEP_CREATE
2425
				AND(
2426
					(------------Nếu là phòng hành chính, k gửi mail cho GDDV-------------
2427
						@p_DEP_CREATE_CODE = '0690604'
2428
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TBP', 'TP', 'PP')) 
2429
					)
2430
					OR(------------Các phòng ban khác gửi mail bth-------------
2431
						@p_DEP_CREATE_CODE <> '0690604'
2432
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP')) 
2433
					)
2434
				)
2435
		END
2436

    
2437
		SET @FLAG = 9
2438
	END
2439

    
2440
	--------------------TRƯỞNG ĐV ĐÃ DUYỆT, TRẢ MAIL VỀ CHO NG TẠO---------------------
2441
	ELSE IF (@TYPE = 'TR_CONTRACT_APPROVE')
2442
	BEGIN
2443
		INSERT INTO @LST_USER_RECIVE (TLNAME)
2444
			(SELECT A.MAKER_ID FROM TR_CONTRACT A WHERE A.CONTRACT_ID = @PO_ID)
2445
		SET @FLAG = 9
2446
	END
2447

    
2448
	----------------BAODNQ 26/10/2022 : GỬI MAIL QUẢN LÝ PO-------------------
2449
	--------------------NG TẠO GỬI YÊU CẦU PHÊ DUYỆT PO--------------------
2450
	ELSE IF(@TYPE = 'TR_PO_MASTER_SEND_APP')
2451
	BEGIN
2452
		SET @BRANCH_CREATE = (SELECT TOP 1 BRANCH_ID FROM TR_PO_MASTER WHERE PO_ID = @PO_ID)
2453
		SET @BRANCH_TYPE = (SELECT TOP 1 BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_CREATE)
2454
		SET @p_MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_PO_MASTER WHERE PO_ID = @PO_ID)
2455
		SET @DEP_CREATE = (SELECT TOP 1 DEP_ID FROM TL_USER WHERE TLNANME = @p_MAKER_ID)
2456
		SET @p_DEP_CREATE_CODE = (SELECT TOP 1 DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID = @DEP_CREATE)
2457

    
2458
		IF(@BRANCH_TYPE = 'PGD')
2459
		BEGIN
2460
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2461
				SELECT TLNANME
2462
				FROM TL_USER
2463
				WHERE 1=1
2464
				AND TLSUBBRID = @BRANCH_CREATE
2465
				AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TPGD', 'PPGD'))
2466
		END
2467
		ELSE IF (@BRANCH_TYPE = 'CN')
2468
		BEGIN
2469
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2470
				SELECT TLNANME
2471
				FROM TL_USER
2472
				WHERE 1=1
2473
				AND TLSUBBRID = @BRANCH_CREATE
2474
				AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'PGD'))
2475
		END
2476
		ELSE IF (@BRANCH_TYPE = 'HS')
2477
		BEGIN
2478
			INSERT INTO @LST_USER_RECIVE (TLNAME)
2479
				SELECT TLNANME
2480
				FROM TL_USER
2481
				WHERE 1=1
2482
				AND TLSUBBRID = @BRANCH_CREATE
2483
				AND DEP_ID = @DEP_CREATE
2484
				AND(
2485
					(------------Nếu là phòng hành chính, k gửi mail cho GDDV-------------
2486
						@p_DEP_CREATE_CODE = '0690604'
2487
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('TBP', 'TP', 'PP')) 
2488
					)
2489
					OR(------------Các phòng ban khác gửi mail bth-------------
2490
						@p_DEP_CREATE_CODE <> '0690604'
2491
						AND EXISTS(SELECT * FROM TL_USER_GET_ROLES (TLNANME) WHERE ROLE_ID IN ('GDDV', 'TBP', 'TP', 'PP')) 
2492
					)
2493
				)
2494
				
2495
		END
2496

    
2497
		SET @FLAG = 10
2498
	END
2499

    
2500
	--------------------TRƯỞNG ĐV ĐÃ DUYỆT, TRẢ MAIL VỀ CHO NG TẠO---------------------
2501
	ELSE IF(@TYPE = 'TR_PO_MASTER_APPROVE')
2502
	BEGIN
2503
		INSERT INTO @LST_USER_RECIVE (TLNAME)
2504
			(SELECT A.MAKER_ID FROM TR_PO_MASTER A WHERE A.PO_ID = @PO_ID)
2505
		SET @FLAG = 10
2506
	END
2507
	------------------END BAODNQ--------------------
2508

    
2509
	----- END PYC MUA SẮM --------------------
2510

    
2511
	----------------BAODNQ 30/11/2022 : GỬI MAIL ĐÁNH GIÁ NCC------------------------------
2512
	---------------Ng tạo gửi phê duyệt, cấp trung gian duyệt, trưởng đơn vị duyệt---------------------
2513
	---------------NVXL ĐMMS gửi phê duyệt, KSV/trưởng đơn vị ĐMMS duyệt, lãnh đạo khối/GDK hỗ trợ duyệt, điều phối xử lý---------------------------
2514
	ELSE IF(@TYPE = 'TR_RATE_SUPPLIER_MASTER_SendAppr' OR @TYPE = 'TR_RATE_SUPPLIER_MASTER_Confirm' OR @TYPE = 'TR_RATE_SUPPLIER_MASTER_App'
2515
			OR @TYPE = 'TR_RATE_SUPPLIER_PROCESS_CHILD_Upd' OR @TYPE = 'TR_RATE_SUPPLIER_PROCESS_CHILD_App'
2516
			OR @TYPE = 'TR_RATE_SUPPLIER_MASTER_PROCESS_App' OR @TYPE = 'TR_RATE_SUPPLIER_PROCESS_CHILD_Ins')
2517
	BEGIN
2518
		SET @MAKER_ID = (SELECT TOP 1 MAKER_ID FROM TR_RATE_SUPPLIER_MASTER WHERE RATE_ID =@PO_ID)
2519
		--------------Nếu phiếu chưa hoàn tất, gửi mail cho ng xử lý kế tiếp-----------------
2520
		IF(NOT EXISTS(SELECT RATE_ID FROM TR_RATE_SUPPLIER_MASTER WHERE RATE_ID = @PO_ID AND PROCESS_STATUS = 'APPROVE'))
2521
		BEGIN
2522
			INSERT INTO @PL_PROCESS_CURRENT_SEARCH_TEMP
2523
			EXEC [dbo].[PL_PROCESS_CURRENT_SEARCH] @PO_ID,@MAKER_ID,'RATE_SUP'
2524
			SET @FLAG = 11
2525
		END
2526
		--------------Nếu đã hoàn tất, gửi mail cho ng tạo-----------------
2527
		ELSE
2528
		BEGIN
2529
			INSERT INTO @LST_USER_RECIVE(TLNAME)
2530
				SELECT @MAKER_ID
2531
			SET @FLAG = 12
2532
		END
2533
		
2534
	END
2535

    
2536
	---START hieuhm 09/11/2022 Gửi phê duyệt công trình, gửi mail cho người duyệt-----
2537
	ELSE IF @TYPE='CON_MASTER_SendApp'
2538
	BEGIN
2539
		DECLARE @BRANCH_ID_CONMASTER VARCHAR(15) = '', @DEP_ID_CONMASTER VARCHAR(15) =''
2540
		--SELECT @BRANCH_ID_CONMASTER = BRANCH_ID, @DEP_ID_CONMASTER = DEP_CREATE FROM CON_MASTER WHERE CONSTRUCT_ID = @PO_ID
2541
		INSERT INTO @LST_USER_RECIVE (TLNAME) (SELECT TLNANME FROM [dbo].[FN_GET_USER_BY_ROLE] ('GDDV',@BRANCH_ID_CONMASTER,@DEP_ID_CONMASTER))
2542
		SET @FLAG = 6
2543
	END
2544
	---END hieuhm 09/11/2022 Gửi phê duyệt công trình, gửi mail cho người duyệt-----
2545

    
2546
	---START hieuhm 11/11/2022 Phê duyệt công trình, gửi mail cho người tạo-----
2547
	ELSE IF @TYPE='CON_MASTER_APP'
2548
	BEGIN
2549
		INSERT INTO @LST_USER_RECIVE (TLNAME) (SELECT MAKER_ID FROM CON_MASTER CM WHERE CM.CONSTRUCT_ID = @PO_ID)		
2550
		SET @FLAG = 6
2551
	END
2552
	---END hieuhm 11/11/2022 Phê duyệt công trình, gửi mail cho người tạo-----
2553

    
2554
	---START hieuhm 16/11/2022 Gửi phê duyệt layout bản vẽ, gửi mail cho người duyệt-----
2555
	ELSE IF (@TYPE='CON_LAYOUT_BLUEPRINT_App' OR @TYPE ='CON_LAYOUT_BLUEPRINT_SendApp')
2556
	BEGIN
2557
		IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID = @PO_ID AND [STATUS] = 'C' AND PROCESS_ID <> 'APPROVE'))
2558
		BEGIN
2559
			DECLARE @BRANCH_ID_CONLB VARCHAR(15) = '', @DEP_ID_CONLB VARCHAR(15) ='', @ROLE_CONLB VARCHAR(15) ='',@PROCESS_ID_CONLB VARCHAR(15) ='',@DVDM_ID_CONLB VARCHAR(15) =''
2560
			SELECT @BRANCH_ID_CONLB = BRANCH_ID,@DEP_ID_CONLB = DEP_ID,@ROLE_CONLB = ROLE_USER,@PROCESS_ID_CONLB = PROCESS_ID,@DVDM_ID_CONLB = DVDM_ID FROM PL_REQUEST_PROCESS WHERE REQ_ID = @PO_ID AND [STATUS] = 'C'
2561
			IF(@PROCESS_ID_CONLB NOT IN ('GDK_HT','PTGD_TC','PTGD_VH'))
2562
			BEGIN
2563
				INSERT INTO @LST_USER_RECIVE (TLNAME) (SELECT DISTINCT TLNANME FROM [dbo].[FN_GET_USER_BY_ROLE] (@ROLE_CONLB,@BRANCH_ID_CONLB,@DEP_ID_CONLB))
2564
			END
2565
			ELSE
2566
			BEGIN
2567
				DECLARE @BRANCH_TYPE_CONLB VARCHAR(15) = (SELECT BRANCH_TYPE FROM dbo.CM_BRANCH WHERE BRANCH_ID = @BRANCH_ID_CONLB)
2568
				INSERT INTO @LST_USER_RECIVE (TLNAME)
2569
				SELECT TLNANME FROM (
2570
					SELECT TU.TLNANME, TU.TLFullName, TU.TLSUBBRID AS BRANCH_ID, TU.SECUR_CODE AS DEP_ID, R.DisplayName AS ROLE_OLD, TRM.ROLE_NEW,NULL AS EFF_DATE, NULL AS EXP_DATE
2571
					FROM dbo.TL_USER TU
2572
					LEFT JOIN dbo.AbpUserRoles UR ON TU.ID = UR.UserId
2573
					INNER JOIN dbo.AbpRoles R ON R.Id = UR.RoleId
2574
					LEFT JOIN (SELECT * FROM dbo.TL_SYS_ROLE_MAPPING RM WHERE RM.TLNAME IS NULL OR RM.TLNAME = '') TRM ON (TRM.ROLE_OLD = R.DisplayName)
2575
					UNION ALL
2576
					SELECT TU.TLNANME, TU.TLFullName, RM.BRANCH_ID, RM.DEP_ID, RM.ROLE_OLD, RM.ROLE_NEW, RM.EFF_DATE,RM.EXP_DATE
2577
					FROM dbo.TL_USER TU
2578
					LEFT JOIN dbo.TL_SYS_ROLE_MAPPING RM ON TU.TLNANME = RM.TLNAME
2579
					WHERE CAST(RM.EXP_DATE AS DATE) >= CAST(GETDATE() AS DATE)
2580
				) TMP 
2581
				WHERE 1 = 1
2582
				AND ((TMP.ROLE_OLD = @ROLE_CONLB OR TMP.ROLE_NEW = @ROLE_CONLB ) OR @ROLE_CONLB IS NULL OR @ROLE_CONLB = '')
2583
				AND ((TMP.BRANCH_ID IN (SELECT BRANCH_ID FROM PL_COSTCENTER_DT WHERE COST_ID IN (select COST_ID from PL_COSTCENTER where DVDM_ID = @DVDM_ID_CONLB)) AND TMP.DEP_ID IN (SELECT DEP_ID FROM PL_COSTCENTER_DT WHERE COST_ID IN (select COST_ID from PL_COSTCENTER where DVDM_ID = @DVDM_ID_CONLB)))
2584
					OR (NOT EXISTS(SELECT * FROM PL_COSTCENTER_DT WHERE COST_ID IN (select COST_ID from PL_COSTCENTER where DVDM_ID = @DVDM_ID_CONLB)))
2585
				)
2586
			END
2587
		END
2588
		SET @FLAG = 6
2589
	END
2590
	-----END hieuhm 16/11/2022 Gửi phê duyệt layout bản vẽ, gửi mail cho người duyệt-----
2591
	IF(@FLAG = 0)
2592
	BEGIN 
2593
		SELECT A.*,B.TLFullName,B.EMAIL 
2594
		FROM TL_ROLE_NOTIFICATION A
2595
		LEFT JOIN TL_USER B ON A.TL_NAME=B.TLNANME
2596
		WHERE EXISTS(SELECT * FROM @LST_POID WHERE ID = A.PO_ID)
2597
		
2598
	END
2599
	ELSE IF(@FLAG = 1)
2600
	BEGIN 
2601
		SELECT B.*,A.TLFullName,A.EMAIL 
2602
		FROM TL_USER  A
2603
		LEFT JOIN TL_ROLE_NOTIFICATION B ON B.TL_NAME=A.TLNANME AND 1 >2
2604
		WHERE (A.TLNANME IN (SELECT * FROM @LST_USER_RECIVE))
2605
		--AND A.TLNANME NOT IN  ('trungnq1','taila')
2606
	END
2607
	-- NEU LA TO TRINH CHU TRUONG, PYC MS THÌ TRA VE FLAG =2
2608
	ELSE IF(@FLAG = 2)
2609
	BEGIN 
2610
		SELECT B.*,A.TLFullName,A.EMAIL 
2611
		FROM TL_USER  A
2612
		LEFT JOIN TL_ROLE_NOTIFICATION B ON B.TL_NAME=A.TLNANME AND 1>2
2613
		WHERE (A.TLNANME IN (SELECT TLNAME FROM @PL_PROCESS_CURRENT_SEARCH_TEMP))
2614
		--AND A.TLNANME NOT IN  ('trungnq1','taila')
2615
		
2616
	END
2617
	-- SAU KHI TT CHU TRUONG DUOC PHE DUYET THI THONG BAO CHO NGUOI TAO TO TRINH
2618
	ELSE IF(@FLAG = 3)
2619
	BEGIN 
2620
		SELECT B.*,A.TLFullName,A.EMAIL 
2621
		FROM TL_USER  A
2622
		LEFT JOIN TL_ROLE_NOTIFICATION B ON B.TL_NAME=A.TLNANME AND 1>2
2623
		WHERE (A.TLNANME  =@MAKER_ID OR A.TLNANME IN (SELECT TLNAME FROM @PL_PROCESS_CURRENT_SEARCH_TEMP))
2624
		--AND A.TLNANME NOT IN  ('trungnq1','taila')
2625
	END
2626
	-- SAU KHI PYCMS  DUOC PHE DUYET THI THONG BAO CHO NGUOI TAO VA NGUOI XU LY
2627
	ELSE IF(@FLAG = 4)
2628
	BEGIN 
2629
		SELECT B.*,A.TLFullName,A.EMAIL 
2630
		FROM TL_USER  A
2631
		LEFT JOIN TL_ROLE_NOTIFICATION B ON B.TL_NAME=A.TLNANME AND 1>2
2632
		WHERE (A.TLNANME  =@MAKER_ID OR A.TLNANME =@NV_XL_MS)
2633
		--AND A.TLNANME NOT IN  ('trungnq1','taila')
2634
	END
2635

    
2636
	-----------Quản lý cho thuê----------------
2637
	ELSE IF(@FLAG = 5)
2638
	BEGIN
2639
		SELECT TLFullName, EMAIL AS Email, ID as [USER_ID]
2640
		FROM TL_USER  
2641
		WHERE (TLNANME IN (SELECT TLNAME FROM @LST_USER_RECIVE))
2642
	END
2643

    
2644
	ELSE IF(@FLAG = 6)
2645
	BEGIN
2646
		SELECT TLFullName, EMAIL AS Email, ID as [USER_ID]
2647
		FROM TL_USER  
2648
		WHERE (TLNANME IN (SELECT TLNAME FROM @LST_USER_RECIVE))
2649
	END
2650
	--------------BAODNQ 15/2/2022: Quản lý BDS--------------------
2651
	ELSE IF(@FLAG = 7)
2652
	BEGIN
2653
		SELECT TLFullName, EMAIL AS Email, ID as [USER_ID]
2654
		FROM TL_USER  
2655
		WHERE (TLNANME IN (SELECT TLNAME FROM @LST_USER_RECIVE))
2656
	END
2657
	--------------QUẢN LÝ THANH TOÁN TẠM ỨNG------------------
2658
	ELSE IF(@FLAG = 8)
2659
	BEGIN
2660
		SELECT TLFullName, EMAIL AS Email, ID as [USER_ID]
2661
		FROM TL_USER  
2662
		WHERE (TLNANME IN (SELECT TLNAME FROM @LST_USER_RECIVE))
2663
	END
2664
	--------------BAODNQ 26/10/2022 QUẢN LÝ HỢP ĐỒNG MUA SẮM-------------------
2665
	ELSE IF (@FLAG = 9)
2666
	BEGIN
2667
		SELECT TLFullName, EMAIL AS Email, ID as [USER_ID]
2668
		FROM TL_USER  
2669
		WHERE (TLNANME IN (SELECT TLNAME FROM @LST_USER_RECIVE))
2670
	END
2671
	--------------BAODNQ 26/10/2022 QUẢN LÝ PO-------------------
2672
	ELSE IF (@FLAG = 10)
2673
	BEGIN
2674
		SELECT TLFullName, EMAIL AS Email, ID as [USER_ID]
2675
		FROM TL_USER  
2676
		WHERE (TLNANME IN (SELECT TLNAME FROM @LST_USER_RECIVE))
2677
	END
2678
	--------------BAODNQ 30/11/2022 ĐÁNH GIÁ NCC------------------
2679
		-------------Nếu phiếu chưa hoàn tất---------------
2680
	ELSE IF(@FLAG = 11)
2681
	BEGIN
2682
		SELECT TU.TLFullName, TU.EMAIL AS Email, TU.ID AS [USER_ID]
2683
		FROM TL_USER TU
2684
		WHERE TU.TLNANME IN (SELECT TLNAME FROM @PL_PROCESS_CURRENT_SEARCH_TEMP)
2685
	END
2686
		-------------Nếu phiếu đã hoàn tất---------------
2687
	ELSE IF(@FLAG = 12)
2688
	BEGIN
2689
		SELECT TLFullName, EMAIL AS Email, ID as [USER_ID]
2690
		FROM TL_USER  
2691
		WHERE (TLNANME IN (SELECT TLNAME FROM @LST_USER_RECIVE))
2692
	END