|
|
USE [FastMoneyPro_Remit] GO /****** Object: StoredProcedure [dbo].[proc_online_complianceCheck] Script Date: 7/4/2019 11:35:48 AM ******/ DROP PROCEDURE [dbo].[proc_online_complianceCheck] GO /****** Object: StoredProcedure [dbo].[proc_online_complianceCheck] Script Date: 7/4/2019 11:35:48 AM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROC [dbo].[proc_online_complianceCheck] ( @flag VARCHAR(50) , @user VARCHAR(100) , @senderId VARCHAR(50) = NULL , @benId VARCHAR(50) = NULL , @rMobile VARCHAR(20) = NULL , @raccountNo VARCHAR(50) = NULL , @pCountryId INT = NULL , @deliveryMethod VARCHAR(50) = NULL , @deliveryMethodId INT = NULL , @sBranch INT = NULL , @pBranch INT = NULL , @agentRefId VARCHAR(50) = NULL , @collCurr VARCHAR(3) = NULL , @sIdType VARCHAR(30) = NULL , @sIdNo VARCHAR(25) = NULL , @rfName VARCHAR(80) = NULL , @cAmt MONEY = NULL , @sCountry VARCHAR(30) = NULL , @pCountry VARCHAR(30) = NULL , @sMobile VARCHAR(25) = NULL , @senderName VARCHAR(100) )
AS SET NOCOUNT ON; SET XACT_ABORT ON;
BEGIN TRY BEGIN DECLARE @pStateId INT
,@totalRows INT
,@count INT
,@id INT
,@tAmt MONEY = NULL ,@csMasterId INT
,@complianceRes VARCHAR(20) ,@collModeDesc VARCHAR(50) ,@compFinalRes VARCHAR(20) ,@errorCode VARCHAR(5) ,@msg VARCHAR(MAX)
IF @collCurr <> 'GBP' BEGIN SET @sBranch = '32916'; END; ELSE BEGIN SET @sBranch = '32915'; END;
IF @flag = 'complianceCheck' BEGIN DECLARE @complianceRuleId INT, @complienceMessage VARCHAR(1000), @shortMsg VARCHAR(150), @complienceErrorCode INT
EXEC [proc_complianceRuleDetail] @user = @user ,@sIdType = @sIdType ,@sIdNo = @sIdNo ,@receiverName = @rfName ,@cAmt = @cAmt ,@country = @sCountry ,@message = @complienceMessage OUTPUT ,@shortMessage = @shortMsg OUTPUT ,@errCode = @complienceErrorCode OUTPUT ,@ruleId = @complianceRuleId OUTPUT IF(@complienceErrorCode <> 0) BEGIN IF(@complienceErrorCode = 1) BEGIN SET @errorCode=101 --SELECT 101 errorCode,@msg msg, @complienceErrorCode id, @complienceMessage compApproveRemark,'compliance' vtype END ELSE BEGIN SET @errorCode=102 INSERT remitTranComplianceTemp(csDetailTranId, matchTranId, agentRefId) SELECT @complianceRuleId, NULL, @agentRefId
--SELECT 102 errorCode,@msg msg, @complienceErrorCode id, @complienceMessage compApproveRemark,'compliance' vtype END INSERT INTO ComplianceLog(senderName, senderCountry, senderIdType, senderIdNumber, senderMobile, receiverName, receiverCountry, payOutAmt, complianceId, complianceReason, complainceDetailMessage, createdBy, createdDate, logType)
SELECT @senderName, @sCountry, @sIdType, @sIdNo, @sMobile, @rfName, @pCountry, @cAmt, @complianceRuleId, @shortMsg, @complienceMessage, @user, GETDATE(), 'online'
DECLARE @tempRowId INT = @@IDENTITY
SELECT @errorCode errorCode ,complianceReason msg , id ,CASE WHEN @errorCode=102 THEN 'HOLD' ELSE 'Blocked' END vtype FROM ComplianceLog WHERE id = @tempRowId --SELECT -- @errorCode
-- ,csDetailRecId = ''
-- ,[S.N.] = ROW_NUMBER()OVER(ORDER BY id)
-- ,[Remarks] = complianceReason
-- ,[Action] = CASE WHEN @complienceErrorCode=102 THEN 'HOLD' ELSE 'Blocked' END
----,[Matched Tran ID] = '' --FROM ComplianceLog --WHERE id = @tempRowId RETURN END ELSE BEGIN SELECT 0 errorCode,'Success' msg, 0 id END END END END TRY BEGIN CATCH IF @@TRANCOUNT<>0 ROLLBACK TRANSACTION DECLARE @errorMessage VARCHAR(MAX) SET @errorMessage = ERROR_MESSAGE() EXEC proc_errorHandler 1, @errorMessage, @user END CATCH GO
|