You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
399 lines
24 KiB
399 lines
24 KiB
USE [FastMoneyPro_Remit]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[INBOUND_PROC_TRANSACTION_VIEW] Script Date: 9/27/2019 1:30:13 PM ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
CREATE PROC [dbo].[INBOUND_PROC_TRANSACTION_VIEW] (
|
|
@flag VARCHAR(50)
|
|
,@user VARCHAR(30) = NULL
|
|
,@controlNo VARCHAR(30) = NULL
|
|
,@tranId BIGINT = NULL
|
|
,@message VARCHAR(500) = NULL
|
|
,@messageComplaince VARCHAR(500) = NULL
|
|
,@messageOFAC VARCHAR(500) = NULL
|
|
,@lockMode CHAR(1) = NULL
|
|
,@viewType VARCHAR(50) = NULL
|
|
,@viewMsg VARCHAR(MAX) = NULL
|
|
,@branch INT = NULL
|
|
,@sortBy VARCHAR(50) = NULL
|
|
,@sortOrder VARCHAR(5) = NULL
|
|
,@pageSize INT = NULL
|
|
,@pageNumber INT = NULL
|
|
,@ip VARCHAR(MAX) = NULL
|
|
,@dcInfo VARCHAR(MAX) = NULL
|
|
|
|
)
|
|
AS
|
|
|
|
DECLARE @controlNoEncrypted VARCHAR(100)
|
|
,@tranStatus VARCHAR(50)
|
|
SET NOCOUNT ON;
|
|
SET XACT_ABORT ON;
|
|
IF @controlNo IS NOT NULL
|
|
BEGIN
|
|
SET @controlNo = UPPER(@controlNo)
|
|
SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
|
|
SELECT @tranId = id, @tranStatus = tranStatus FROM dbo.INBOUND_VIEW_REMIT_TRAN WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted
|
|
|
|
END
|
|
|
|
ELSE IF @tranId IS NOT NULL
|
|
BEGIN
|
|
|
|
SELECT @controlNoEncrypted = controlNo, @tranStatus = tranStatus ,@controlNo = dbo.FNADecryptString(controlNo)
|
|
FROM INBOUND_VIEW_REMIT_TRAN WITH(NOLOCK) WHERE id = @tranId
|
|
|
|
END
|
|
IF @flag = 's'
|
|
BEGIN
|
|
|
|
EXEC proc_tranViewHistory 'i', @user, @tranId, @controlNo, NULL,@viewType,@viewMsg
|
|
--Transaction Details
|
|
SELECT
|
|
tranId = trn.id
|
|
,controlNo = dbo.FNADecryptString(trn.controlNo)
|
|
|
|
--Sender Information
|
|
|
|
,sCustomerId = sen.customerId
|
|
,senderName = sen.firstName + ISNULL( ' ' + sen.middleName, '') + ISNULL( ' ' + sen.lastName, '')
|
|
,sCity = isnull(sen.city,'')
|
|
,sAddress = sen.address
|
|
,sContactNo = sen.mobile
|
|
,sIdType = ISNULL(sdv.detailTitle,sen.idType)
|
|
,sIdNo = sen.idNumber
|
|
,sValidDate = sen.validDate
|
|
,sEmail = sen.email
|
|
,extCustomerId = ''
|
|
|
|
--Receiver Information
|
|
,rMemId = ''
|
|
,rCustomerId = rec.customerId
|
|
,receiverName = rec.firstName + ISNULL( ' ' + rec.middleName, '') + ISNULL( ' ' + rec.lastName, '')
|
|
,rCountryName = rec.nativeCountry
|
|
,rCity = isnull(rec.city,'')
|
|
,rAddress = rec.address
|
|
,rContactNo = rec.mobile
|
|
,rIdType = rec.idType
|
|
,rIdNo = rec.idNumber
|
|
|
|
|
|
--Sending Agent Information
|
|
,sAgentName = trn.sAgentName
|
|
,sAgentCountry = sa.agentCountry
|
|
,sCountryName = trn.sCountry
|
|
,sAgentEmail = ISNULL(sa.agentEmail1,sa.agentEmail2)
|
|
--Payout Agent Information
|
|
,pAgentName =trn.pAgentName
|
|
,pAgentCountry = trn.pCountry
|
|
,trn.tAmt
|
|
,trn.serviceCharge
|
|
,handlingFee = 0
|
|
,sAgentComm = 0
|
|
,sAgentCommCurrency ='USD'
|
|
,pAgentComm = ISNULL(pAgentComm,0)
|
|
,pAgentCommCurrency = ISNULL(pAgentCommCurrency,0)
|
|
,exRate = 0
|
|
,cAmt= ISNULL(trn.tAmt,0) + ISNULL(trn.serviceCharge,0)
|
|
,pAmt = trn.pAmt
|
|
|
|
,relationship = ISNULL(sdv1.detailTitle, ' ')
|
|
|
|
,purpose = ISNULL(trn.purposeOfRemit, '-')
|
|
,sourceOfFund = ISNULL(trn.sourceOfFund, '-')
|
|
,collMode = ''
|
|
,trn.collCurr
|
|
,paymentMethod = CASE WHEN trn.paymentMethod = '1' THEN 'CASH PAYMENT'
|
|
WHEN trn.paymentMethod = '2' THEN 'BANK DEPOSIT'
|
|
ELSE '' END
|
|
,trn.payoutCurr
|
|
,trn.chargeCurrency
|
|
,accountNo = trn.accountNo
|
|
,BankName = trn.pBankName
|
|
,trn.payStatus
|
|
|
|
,payoutMsg = ''
|
|
,trn.createdBy
|
|
,trn.createdDate
|
|
,approvedBy = au.userName
|
|
,trn.approvedDate
|
|
,trn.paidBy
|
|
,trn.paidDate
|
|
,trn.cancelRequestBy
|
|
,trn.cancelRequestDate
|
|
,trn.cancelApprovedBy
|
|
,trn.cancelApprovedDate
|
|
,lockedBy= '' --trn.lockedBy
|
|
,lockedDate='' --trn.lockedDate
|
|
,payTokenId='' --trn.payTokenId
|
|
,trn.tranStatus
|
|
,tranType='' --trn.tranType
|
|
,holdTranId=''--trn.holdTranId
|
|
,sTelNo = ''
|
|
,rTelNo = ''
|
|
,CashOrBank = CASE WHEN UPPER(trn.paymentMethod) = '2' THEN 'BANK'
|
|
ELSE 'CASH' END
|
|
,purposeOfRemit = ISNULL(trn.purposeOfRemit, '-')
|
|
,custRate = 0
|
|
,settRate = 0
|
|
,nativeCountry = sen.nativeCountry
|
|
FROM dbo.INBOUND_VIEW_REMIT_TRAN trn WITH(NOLOCK)
|
|
LEFT JOIN dbo.INBOUND_VIEW_TRAN_SENDERS sen WITH(NOLOCK) ON trn.id = sen.tranId
|
|
LEFT JOIN dbo.INBOUND_VIEW_TRAN_RECEIVERS rec WITH(NOLOCK) ON trn.id = rec.tranId
|
|
LEFT JOIN agentMaster sa WITH(NOLOCK) ON trn.sAgent = sa.agentId
|
|
LEFT JOIN dbo.applicationUsers au WITH(NOLOCK) ON trn.approvedBy = au.agentCode
|
|
LEFT JOIN staticDataValue sdv WITH(NOLOCK) ON sen.idType=CAST(sdv.valueId AS VARCHAR)
|
|
LEFT JOIN staticDataValue sdv1 WITH(NOLOCK) ON sdv1.valueId =trn.relWithSender AND sdv1.typeID='2100'
|
|
WHERE
|
|
trn.controlNo = @controlNoEncrypted OR
|
|
trn.id = @tranId
|
|
|
|
--## Log Details
|
|
SELECT
|
|
id
|
|
,[MESSAGE]
|
|
,msgType
|
|
,itt.createdBy
|
|
,itt.createdDate
|
|
,fileType = ''
|
|
FROM INBOUND_TROUBLE_TICKET itt WITH(NOLOCK)
|
|
LEFT JOIN applicationUsers au WITH(NOLOCK) ON itt.createdBy = au.userName
|
|
WHERE itt.controlNo = @controlNoEncrypted OR tranId = @tranId
|
|
ORDER BY itt.createdDate DESC
|
|
|
|
|
|
END
|
|
|
|
|
|
IF @flag = 'showLog' --Add Comment
|
|
BEGIN
|
|
|
|
--Log Details---------------------------------------------------------------------------
|
|
SELECT
|
|
rowId= Id
|
|
,message
|
|
,trn.createdBy
|
|
,trn.createdDate
|
|
|
|
FROM INBOUND_TROUBLE_TICKET trn WITH(NOLOCK)
|
|
LEFT JOIN applicationUsers au WITH(NOLOCK) ON trn.createdBy = au.userName
|
|
WHERE trn.tranId = @tranId
|
|
ORDER BY trn.createdDate DESC
|
|
|
|
END
|
|
ELSE IF @flag='OFAC'
|
|
BEGIN
|
|
SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
|
|
IF @controlNoEncrypted IS NOT NULL
|
|
SELECT @tranId = id FROM dbo.INBOUND_VIEW_REMIT_TRAN WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted
|
|
|
|
|
|
IF OBJECT_ID('tempdb..#tempMaster') IS NOT NULL
|
|
DROP TABLE #tempMaster
|
|
|
|
IF OBJECT_ID('tempdb..#tempDataTable') IS NOT NULL
|
|
DROP TABLE #tempDataTable
|
|
|
|
|
|
CREATE TABLE #tempDataTable
|
|
(
|
|
DATA VARCHAR(MAX) NULL
|
|
)
|
|
|
|
DECLARE @ofacKeyIds VARCHAR(MAX)
|
|
SELECT @ofacKeyIds=blackListId FROM dbo.INBOUND_TRAN_OFAC
|
|
WHERE TranId = @tranId
|
|
|
|
SELECT distinct A.val ofacKeyId
|
|
INTO #tempMaster
|
|
FROM
|
|
(
|
|
SELECT * FROM dbo.SplitXML(',',@ofacKeyIds)
|
|
)A
|
|
INNER JOIN
|
|
(
|
|
SELECT ofacKey FROM blacklistHistory WITH(NOLOCK)
|
|
)B ON A.val=B.ofacKey
|
|
|
|
ALTER TABLE #tempMaster ADD ROWID INT IDENTITY(1,1)
|
|
|
|
DECLARE @TNA_ID AS INT
|
|
,@MAX_ROW_ID AS INT
|
|
,@ROW_ID AS INT=1
|
|
,@ofacKeyId VARCHAR(100)
|
|
,@SDN VARCHAR(MAX)=''
|
|
,@ADDRESS VARCHAR(MAX)=''
|
|
,@REMARKS AS VARCHAR(MAX)=''
|
|
,@ALT AS VARCHAR(MAX)=''
|
|
,@DATA AS VARCHAR(MAX)=''
|
|
,@DATA_SOURCE AS VARCHAR(200)=''
|
|
|
|
SELECT @MAX_ROW_ID=MAX(ROWID) FROM #tempMaster
|
|
WHILE @MAX_ROW_ID >= @ROW_ID
|
|
BEGIN
|
|
|
|
SELECT @ofacKeyId=ofacKeyId FROM #tempMaster WHERE ROWID=@ROW_ID
|
|
|
|
SELECT @SDN='<b>'+ISNULL(entNum,'')+'</b>, <b>Name:</b> '+ ISNULL(name,''),@DATA_SOURCE='<b>Data Source:</b> '+ISNULL(dataSource,'')
|
|
FROM blacklistHistory with(nolock) WHERE ofacKey = @ofacKeyId AND vesselType='sdn'
|
|
|
|
SELECT @ADDRESS=ISNULL(address,'')+', '+ISNULL(city,'')+', '+ISNULL(STATE,'')+', '+ISNULL(zip,'')+', '+ISNULL(country,'')
|
|
FROM blacklistHistory with(nolock) WHERE ofacKey = @ofacKeyId AND vesselType='add'
|
|
|
|
SELECT @ALT = COALESCE(@ALT + ', ', '') +CAST(ISNULL(NAME,'') AS VARCHAR(MAX))
|
|
FROM blacklistHistory with(nolock) WHERE ofacKey = @ofacKeyId AND vesselType IN ('alt','aka')
|
|
|
|
SELECT @REMARKS=ISNULL(remarks,'')+isnull('<br/> ID Type:'+idType,'')+isnull(':'+idNumber,'')+isnull('|DOB:'+dob,'')+isnull(' |Father Name: '+FatherName,'')
|
|
FROM blacklistHistory with(nolock) WHERE ofacKey = @ofacKeyId AND vesselType='sdn'
|
|
|
|
SET @SDN=RTRIM(LTRIM(@SDN))
|
|
SET @ADDRESS=RTRIM(LTRIM(@ADDRESS))
|
|
SET @ALT=RTRIM(LTRIM(@ALT))
|
|
SET @REMARKS=RTRIM(LTRIM(@REMARKS))
|
|
|
|
SET @SDN=REPLACE(@SDN,', ,','')
|
|
SET @ADDRESS=REPLACE(@ADDRESS,', ,','')
|
|
SET @ALT=REPLACE(@ALT,', ,','')
|
|
SET @REMARKS=REPLACE(@REMARKS,', ,','')
|
|
|
|
SET @SDN=REPLACE(@SDN,'-0-','')
|
|
SET @ADDRESS=REPLACE(@ADDRESS,'-0-','')
|
|
SET @ALT=REPLACE(@ALT,'-0-','')
|
|
SET @REMARKS=REPLACE(@REMARKS,'-0-','')
|
|
|
|
SET @SDN=REPLACE(@SDN,',,','')
|
|
SET @ADDRESS=REPLACE(@ADDRESS,',,','')
|
|
SET @ALT=REPLACE(@ALT,',,','')
|
|
SET @REMARKS=REPLACE(@REMARKS,',,','')
|
|
|
|
IF @DATA_SOURCE IS NOT NULL AND @DATA_SOURCE<>''
|
|
SET @DATA=@DATA_SOURCE
|
|
|
|
IF @SDN IS NOT NULL AND @SDN<>''
|
|
SET @DATA=@DATA+'<BR>'+@SDN
|
|
|
|
IF @ADDRESS IS NOT NULL AND @ADDRESS<>''
|
|
SET @DATA=@DATA+'<BR><b>Address: </b>'+@ADDRESS
|
|
|
|
IF @ALT IS NOT NULL AND @ALT<>'' AND @ALT<>' '
|
|
SET @DATA=@DATA+'<BR>'+'<b>a.k.a :</b>'+@ALT+''
|
|
|
|
IF @REMARKS IS NOT NULL AND @REMARKS<>''
|
|
SET @DATA=@DATA+'<BR><b>Other Info :</b>'+@REMARKS
|
|
|
|
IF @DATA IS NOT NULL OR @DATA <>''
|
|
BEGIN
|
|
INSERT INTO #tempDataTable
|
|
SELECT REPLACE(@DATA,'<BR><BR>','')
|
|
END
|
|
|
|
SET @ROW_ID=@ROW_ID+1
|
|
END
|
|
|
|
ALTER TABLE #tempDataTable ADD ROWID INT IDENTITY(1,1)
|
|
SELECT ROWID [S.N.],DATA [Remarks] FROM #tempDataTable
|
|
|
|
END
|
|
|
|
IF @flag='Compliance'
|
|
|
|
BEGIN
|
|
SELECT @tranId = id FROM dbo.INBOUND_VIEW_REMIT_TRAN WITH(NOLOCK) WHERE controlNo = dbo.FNAEncryptString(@controlNo)
|
|
|
|
SELECT
|
|
rowId=Id
|
|
,[S.N.] = ROW_NUMBER()OVER(ORDER BY ID)
|
|
,[Remarks] = rtc.complianceReason
|
|
,[Matched TRAN ID] = @controlNo
|
|
FROM dbo.INBOUND_COMPLIANCE_LOG rtc WITH(NOLOCK)
|
|
WHERE holdTranId = @tranId
|
|
|
|
|
|
END
|
|
|
|
ELSE IF @flag = 'saveComplainceRmks' --Add Approve Remarks
|
|
BEGIN
|
|
IF EXISTS (SELECT 1 FROM INBOUND_TROUBLE_TICKET WHERE tranId =@tranId AND status='RESOLVED')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction has been resolved already', @tranId
|
|
RETURN
|
|
END
|
|
DECLARE @troubleTicketmsg varchar(MAX),@msgType VARCHAR(30)
|
|
BEGIN TRANSACTION
|
|
IF (@messageComplaince IS NOT NULL AND @messageOFAC IS NOT NULL)
|
|
BEGIN
|
|
SET @troubleTicketmsg = @messageComplaince + '/' + @messageOFAC
|
|
SET @msgType = 'C/O'
|
|
END
|
|
ELSE IF (@messageComplaince IS NOT NULL AND @messageOFAC IS NULL)
|
|
BEGIN
|
|
SET @troubleTicketmsg = @messageComplaince
|
|
SET @msgType = 'COMPLAINCE'
|
|
END
|
|
ELSE IF (@messageComplaince IS NULL AND @messageOFAC IS NOT NULL)
|
|
BEGIN
|
|
SET @troubleTicketmsg = @messageOFAC
|
|
SET @msgType = 'OFAC'
|
|
END
|
|
INSERT INTO dbo.INBOUND_TROUBLE_TICKET
|
|
( tranId ,controlNo ,message ,msgType ,status ,createdBy ,createdDate)
|
|
VALUES ( @tranId,@controlNo,ISNULL(@troubleTicketmsg,''),@msgType ,'RESOLVED' ,@user,GETDATE() )
|
|
|
|
UPDATE INBOUND_TRAN_OFAC SET
|
|
approvedRemarks = @messageOFAC
|
|
,approvedBy = @user
|
|
,approvedDate = GETDATE()
|
|
WHERE TranId = @tranId AND approvedBy IS NULL
|
|
|
|
UPDATE dbo.INBOUND_REMIT_TRAN SET tranStatus= 'PAYMENT' WHERE id = @tranId
|
|
COMMIT TRANSACTION
|
|
|
|
EXEC proc_errorHandler 0, 'Release remarks has been saved successfully.', @tranId
|
|
END
|
|
|
|
ELSE IF @flag = 'ac' --Add Comment
|
|
BEGIN
|
|
|
|
IF @message IS NULL
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Message can not be blank.', @tranId
|
|
RETURN
|
|
END
|
|
IF @user IS NULL
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Your session has expired. Cannot add complain.', NULL
|
|
RETURN
|
|
END
|
|
IF @tranId IS NULL
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction No can not be blank.', @tranId
|
|
RETURN
|
|
END
|
|
|
|
INSERT INTO dbo.INBOUND_TROUBLE_TICKET
|
|
( tranId , controlNo , message , msgType , status , createdBy , createdDate)
|
|
VALUES ( @tranId ,@controlNo ,@message ,'TROUBLE' ,'NOT RESOLVED' ,@user,GETDATE() )
|
|
|
|
SELECT '0' AS errorCode,'Comments has been added successfully.' AS Msg,@tranId AS Id,'Inbound' AS Extra ,'' AS Extra2
|
|
|
|
END
|
|
ELSE IF @flag = 'chkFlagOFAC'
|
|
BEGIN
|
|
SELECT CASE WHEN approvedDate IS NULL THEN 'N' ELSE 'Y' END AS Compliance_FLAG
|
|
FROM dbo.INBOUND_TRAN_OFAC WITH(NOLOCK) WHERE TranId = @tranId
|
|
END
|
|
|
|
ELSE IF @flag = 'chkFlagCOMPLAINCE'
|
|
BEGIN
|
|
SELECT CASE WHEN status='RESOLVED' THEN 'Y' ELSE 'N' END AS Compliance_FLAG
|
|
FROM dbo.INBOUND_TROUBLE_TICKET WITH(NOLOCK) WHERE TranId = @tranId
|
|
END
|
|
|
|
|
|
|
|
|
|
|
|
GO
|