Project

General

Profile

FILE 2.txt

Truong Nguyen Vu, 09/22/2020 09:39 AM

 
1

    
2
ALTER PROC [dbo].[CM_REJECT_LOG_ByType_Ins]
3
@p_LOG_ID	varchar(15)	= NULL,
4
@p_STAGE	varchar(5)	 = NULL,
5
@p_TRN_ID	varchar(15)	 = NULL,
6
@p_TRN_TYPE	nvarchar(100)	 = NULL,
7
@p_LOG_DT	VARCHAR	 = NULL,
8
@p_AUTH_STAT	varchar(3)	 = NULL,
9
@p_REASON	nvarchar(500)	 = NULL,
10
@p_IS_LATEST	varchar(1)	 = NULL,
11
@p_REJECTED_BY	varchar(20)	 = NULL,
12
@p_REJECTED_DT	VARCHAR	 = NULL,
13
@p_TYPE VARCHAR(20) =NULL,
14
@p_PROCESS_ID VARCHAR(20),
15
@p_REF_ID INT=NULL
16
AS
17
BEGIN TRANSACTION
18
DECLARE @PARENT_PROCESS_ID VARCHAR(20),@ROLE_ID VARCHAR(20),@ROLE_DES NVARCHAR(200),@ROLE_PARENT_ID VARCHAR(20),@ROLE_DES_PARENT NVARCHAR(200),@COMPLETE BIT
19
					
20
SET @COMPLETE=0
21
		DECLARE @p_MESSAGE NVARCHAR(100) = NULL
22
		IF(EXISTS (SELECT * FROM CM_REJECT_LOG WHERE TRN_ID = @p_TRN_ID))
23
		BEGIN
24
			UPDATE CM_REJECT_LOG SET IS_LATEST ='N' WHERE TRN_ID =@p_TRN_ID
25
		END
26
	
27
		-- END PHIEU DE THI THANH TOAN 19-11-2019
28

    
29
			--- PHIEU YEU CAU MUA SAM
30
				IF(@p_TRN_TYPE='PL_REQUEST_DOC')
31
				BEGIN	IF(EXISTS(SELECT * FROM dbo.PL_REQUEST_DOC WHERE REQ_ID=@p_TRN_ID AND PROCESS_ID='APPROVE'))
32
				BEGIN
33
					SET @p_MESSAGE =N'Trả về thất bại! Tờ trình chủ trương đã được duyệt'
34
					ROLLBACK TRANSACTION
35
					SELECT '0' as Result, @p_LOG_ID  LOG_ID ,@p_MESSAGE ErrorDesc
36
					RETURN '0'
37
				END
38
				ELSE
39
				BEGIN
40
				IF(@p_TYPE='CREATE')
41
				BEGIN
42
				UPDATE dbo.PL_REQUEST_DOC SET PROCESS_ID='REJECT',AUTH_STATUS='R' WHERE REQ_ID=@p_TRN_ID
43
				UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='R',NOTES=N'Tờ trình bị trả về' WHERE PROCESS_ID='APPNEW' AND REQ_ID=@p_TRN_ID
44
				UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='U' WHERE PROCESS_ID <>'APPNEW' AND REQ_ID=@p_TRN_ID
45
				INSERT INTO dbo.PL_PROCESS
46
				(
47
				REQ_ID,
48
				PROCESS_ID,
49
				CHECKER_ID,
50
			    APPROVE_DT,
51
			    PROCESS_DESC,
52
				NOTES
53
				)
54
				VALUES
55
				(   @p_TRN_ID,        -- REQ_ID - varchar(15)
56
					'REJECT',        -- PROCESS_ID - varchar(10)
57
					@p_REJECTED_BY,        -- CHECKER_ID - varchar(15)
58
					GETDATE(), -- APPROVE_DT - datetime
59
					@p_REASON,
60
					N'Trả về người tạo'
61
					       -- PROCESS_DESC - nvarchar(1000)
62
				)
63
				 SET @p_MESSAGE =N'Phiếu yêu cầu đã được trả về thành công'
64
				 SET @COMPLETE=1
65
				END
66
				ELSE IF(@p_TYPE='NVXL')
67
				BEGIN
68
				UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='U' WHERE REQ_ID =@p_TRN_ID AND PROCESS_ID=@p_REF_ID 
69
				UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='R' WHERE REQ_ID =@p_TRN_ID AND PROCESS_ID=@p_REF_ID AND TYPE_JOB='XL'			
70
				INSERT INTO dbo.PL_PROCESS
71
				(
72
				REQ_ID,
73
				PROCESS_ID,
74
				CHECKER_ID,
75
			    APPROVE_DT,
76
			    PROCESS_DESC,
77
				NOTES
78
				)
79
				VALUES
80
				(   @p_TRN_ID,        -- REQ_ID - varchar(15)
81
					'REJECT',        -- PROCESS_ID - varchar(10)
82
					@p_REJECTED_BY,        -- CHECKER_ID - varchar(15)
83
					GETDATE(), -- APPROVE_DT - datetime
84
					@p_REASON,
85
					N'Trả về nhân viên xử lý'
86
					       -- PROCESS_DESC - nvarchar(1000)
87
				)
88
				 SET @p_MESSAGE =N'Phiếu yêu cầu đã được trả về thành công'
89
				 	 SET @COMPLETE=1
90
				END
91
				ELSE IF(@p_TYPE='PRE_APP')
92
				BEGIN
93
					--SET @PARENT_PROCESS_ID =(SELECT TOP 1 PARENT_PROCESS_ID FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID=@p_PROCESS_ID AND REQ_ID=@p_TRN_ID)
94
					--SET @ROLE_ID=(SELECT TOP 1 ROLE_USER FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID=@p_PROCESS_ID AND REQ_ID=@p_TRN_ID)
95
					--SET @ROLE_PARENT_ID=(SELECT TOP 1 ROLE_USER FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID=@PARENT_PROCESS_ID AND REQ_ID=@p_TRN_ID)
96
					--SET @ROLE_DES=(SELECT ROLE_DESC FROM dbo.TL_SYSROLE WHERE ROLE_ID=@ROLE_ID)
97
					--SET @ROLE_DES_PARENT=(SELECT ROLE_DESC FROM dbo.TL_SYSROLE WHERE ROLE_ID=@ROLE_PARENT_ID)
98
					
99
					--UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='R',NOTES=@ROLE_DES + N' đã trả về, chờ ' + @ROLE_DES_PARENT +N' xử lý' WHERE PROCESS_ID=@PARENT_PROCESS_ID AND REQ_ID=@p_TRN_ID
100

    
101
					--UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='U' WHERE PROCESS_ID=@p_PROCESS_ID AND REQ_ID=@p_TRN_ID
102
					--UPDATE dbo.PL_REQUEST_DOC SET PROCESS_ID=@PARENT_PROCESS_ID WHERE REQ_ID=@p_TRN_ID
103
					--IF(@PARENT_PROCESS_ID='APPNEW')
104
					--	UPDATE dbo.PL_REQUEST_DOC SET AUTH_STATUS='U' WHERE REQ_ID=@p_TRN_ID
105

    
106
					--INSERT INTO dbo.PL_PROCESS
107
					--(
108
					--REQ_ID,
109
					--PROCESS_ID,
110
					--CHECKER_ID,
111
					--APPROVE_DT,
112
					--PROCESS_DESC,
113
					--NOTES
114
					--)
115
					--VALUES
116
					--(   @p_TRN_ID,        -- REQ_ID - varchar(15)
117
					--	'REJECT',        -- PROCESS_ID - varchar(10)
118
					--	@p_REJECTED_BY,        -- CHECKER_ID - varchar(15)
119
					--	GETDATE(), -- APPROVE_DT - datetime
120
					--	@p_REASON,N'Trả về ' + @ROLE_DES_PARENT
121
					--	       -- PROCESS_DESC - nvarchar(1000)
122
					--)
123
					 SET @p_MESSAGE =N'Tạm thời bạn nên trả phiếu về người tạo'
124
					 SET @COMPLETE=0
125
				END
126
				-- SET @p_MESSAGE =N'Phiếu yêu cầu đã được trả về thành công'
127
			END		
128
			END
129
			ELSE IF(@p_TRN_TYPE='TR_REQUEST_DOC')
130
			BEGIN
131
			--IF(@p_STAGE='DVMS')
132
			--BEGIN
133
			--END
134
		
135
				IF(EXISTS(SELECT * FROM dbo.TR_REQUEST_DOC WHERE REQ_ID=@p_TRN_ID AND PROCESS_ID='APPROVE'))
136
				BEGIN
137
					SET @p_MESSAGE =N'Trả về thất bại! Phiếu yêu cầu đã được duyệt'
138
					ROLLBACK TRANSACTION
139
					SELECT '0' as Result, @p_LOG_ID  LOG_ID ,@p_MESSAGE ErrorDesc
140
					RETURN '0'
141
				END
142
				ELSE
143
				BEGIN
144
				IF(@p_TYPE='CREATE')
145
				BEGIN
146
				UPDATE dbo.TR_REQUEST_DOC SET PROCESS_ID='REJECT',AUTH_STATUS='R' WHERE REQ_ID=@p_TRN_ID
147
				UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='R',NOTES=N'Tờ trình bị trả về' WHERE PROCESS_ID='APPNEW' AND REQ_ID=@p_TRN_ID
148
				UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='U' WHERE PROCESS_ID <>'APPNEW' AND REQ_ID=@p_TRN_ID
149
				INSERT INTO dbo.PL_PROCESS
150
				(
151
				REQ_ID,
152
				PROCESS_ID,
153
				CHECKER_ID,
154
			    APPROVE_DT,
155
			    PROCESS_DESC,
156
				NOTES
157
				)
158
				VALUES
159
				(   @p_TRN_ID,        -- REQ_ID - varchar(15)
160
					'REJECT',        -- PROCESS_ID - varchar(10)
161
					@p_REJECTED_BY,        -- CHECKER_ID - varchar(15)
162
					GETDATE(), -- APPROVE_DT - datetime
163
					@p_REASON,N'Trả về người tạo'
164
					       -- PROCESS_DESC - nvarchar(1000)
165
				)
166
					 SET @COMPLETE=1
167
				 SET @p_MESSAGE =N'Phiếu yêu cầu đã được trả về thành công'
168
				END
169
				ELSE IF(@p_TYPE='NVXL')
170
				BEGIN
171
				UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='U' WHERE REQ_ID =@p_TRN_ID AND PROCESS_ID=@p_REF_ID 
172
				UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='R' WHERE REQ_ID =@p_TRN_ID AND PROCESS_ID=@p_REF_ID AND TYPE_JOB='XL'		
173
				
174

    
175

    
176
				INSERT INTO dbo.PL_PROCESS
177
				(
178
				REQ_ID,
179
				PROCESS_ID,
180
				CHECKER_ID,
181
			    APPROVE_DT,
182
			    PROCESS_DESC,
183
				NOTES
184
				)
185
				VALUES
186
				(   @p_TRN_ID,        -- REQ_ID - varchar(15)
187
					'REJECT',        -- PROCESS_ID - varchar(10)
188
					@p_REJECTED_BY,        -- CHECKER_ID - varchar(15)
189
					GETDATE(), -- APPROVE_DT - datetime
190
					@p_REASON,N'Trả về nhân viên xử lý'
191
					       -- PROCESS_DESC - nvarchar(1000)
192
				)
193
					 SET @COMPLETE=1
194
				 SET @p_MESSAGE =N'Phiếu yêu cầu đã được trả về thành công'
195
				END
196
				ELSE IF(@p_TYPE='PRE_APP')
197
				BEGIN
198
					--SET @PARENT_PROCESS_ID =(SELECT TOP 1 PARENT_PROCESS_ID FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID=@p_PROCESS_ID AND REQ_ID=@p_TRN_ID)
199
					--SET @ROLE_ID=(SELECT TOP 1 ROLE_USER FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID=@p_PROCESS_ID AND REQ_ID=@p_TRN_ID)
200
					--SET @ROLE_PARENT_ID=(SELECT TOP 1 ROLE_USER FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID=@PARENT_PROCESS_ID AND REQ_ID=@p_TRN_ID)
201
					--SET @ROLE_DES=(SELECT ROLE_DESC FROM dbo.TL_SYSROLE WHERE ROLE_ID=@ROLE_ID)
202
					--SET @ROLE_DES_PARENT=(SELECT ROLE_DESC FROM dbo.TL_SYSROLE WHERE ROLE_ID=@ROLE_PARENT_ID)
203
					
204
					--UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='R',NOTES=@ROLE_DES + N' đã trả về, chờ ' + @ROLE_DES_PARENT +N' xử lý' WHERE PROCESS_ID=@PARENT_PROCESS_ID AND REQ_ID=@p_TRN_ID
205
					--IF(EXISTS(SELECT * FROM dbo.PL_REQUEST_PROCESS WHERE REQ_ID=@p_TRN_ID AND PROCESS_ID=@PARENT_PROCESS_ID AND IS_HAS_CHILD=1))
206
					--BEGIN
207
					--	UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='R' WHERE REQ_ID=@p_TRN_ID AND PROCESS_ID IN (SELECT ID FROM dbo.PL_REQUEST_PROCESS WHERE REQ_ID=@p_TRN_ID AND PROCESS_ID=@PARENT_PROCESS_ID AND IS_HAS_CHILD=1) AND LEVEL_JOB=1
208
					--END
209
					
210
					--IF(EXISTS(SELECT * FROM dbo.PL_REQUEST_PROCESS WHERE  REQ_ID =@p_TRN_ID AND PROCESS_ID='DVCM'))
211
					--BEGIN
212
					--		UPDATE dbo.TR_REQUEST_COSTCENTER SET AUTH_STATUS='R' WHERE REQ_ID=@p_TRN_ID
213
					--END
214
					
215
					--UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='U' WHERE PROCESS_ID=@p_PROCESS_ID AND REQ_ID=@p_TRN_ID
216
					--UPDATE dbo.TR_REQUEST_DOC SET PROCESS_ID=@PARENT_PROCESS_ID WHERE REQ_ID=@p_TRN_ID
217
					--IF(@PARENT_PROCESS_ID='APPNEW')
218
					--	UPDATE dbo.TR_REQUEST_DOC SET AUTH_STATUS='U' WHERE REQ_ID=@p_TRN_ID
219

    
220

    
221
					--INSERT INTO dbo.PL_PROCESS
222
					--(
223
					--REQ_ID,
224
					--PROCESS_ID,
225
					--CHECKER_ID,
226
					--APPROVE_DT,
227
					--PROCESS_DESC,NOTES
228
					--)
229
					--VALUES
230
					--(   @p_TRN_ID,        -- REQ_ID - varchar(15)
231
					--	'REJECT',        -- PROCESS_ID - varchar(10)
232
					--	@p_REJECTED_BY,        -- CHECKER_ID - varchar(15)
233
					--	GETDATE(), -- APPROVE_DT - datetime
234
					--	@p_REASON,N'Trả về ' + @ROLE_DES_PARENT
235
					--	       -- PROCESS_DESC - nvarchar(1000)
236
					--)
237
					SET @p_MESSAGE =N'Tạm thời bạn nên trả phiếu về người tạo'
238
						 SET @COMPLETE=0
239
				END
240
				
241
				
242
				END	
243
			
244
		END
245

    
246
		-- END IF
247
		ELSE
248
		BEGIN
249
			SET @p_MESSAGE =N'Trả về giao dịch thành công'
250
		END
251

    
252
		--- INSERT VAO BANG CM_REJECT_LOG
253
		IF(@COMPLETE=1)
254
		BEGIN
255
		EXEC SYS_CodeMasters_Gen 'CM_REJECT_LOG', @p_LOG_ID out
256
		IF @p_LOG_ID='' OR @p_LOG_ID IS NULL GOTO ABORT
257
		INSERT INTO [dbo].[CM_REJECT_LOG] VALUES (@p_LOG_ID,@p_STAGE,@p_TRN_ID,@p_TRN_TYPE,CONVERT(DATETIME,GETDATE(),103),'R',@p_REASON,@p_IS_LATEST,@p_REJECTED_BY,CONVERT(DATETIME,GETDATE(),103))
258
		IF @@Error <> 0 GOTO ABORT
259
		END
260
COMMIT TRANSACTION
261

    
262
SELECT '0' as Result, @p_LOG_ID  LOG_ID ,@p_MESSAGE ErrorDesc
263
RETURN '0'
264
ABORT:
265
BEGIN
266

    
267
		ROLLBACK TRANSACTION
268
		SELECT '-1' as Result, '' LOG_ID, '' ErrorDesc
269
		RETURN '-1'
270
END