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.
 
 

1525 lines
84 KiB

USE [FastMoneyPro_Remit]
GO
/****** Object: StoredProcedure [dbo].[proc_transactionView] Script Date: 6/5/2024 3:49:35 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROC [dbo].[proc_transactionView] (
@flag VARCHAR(50)
,@user VARCHAR(30) = NULL
,@controlNo VARCHAR(30) = NULL
,@tranId BIGINT = NULL
,@message NVARCHAR(500) = NULL
,@messageComplaince VARCHAR(500) = NULL
,@messageOFAC VARCHAR(500) = NULL
,@messageCashLimitHold 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
,@holdTranId INT = NULL
,@rowId INT = NULL
,@newAnswer VARCHAR(50) = NULL
)
AS
-----------------------------------
--July 14 --> Flag='@flag='Compliance'
--Aug 05 JME-567 ->add col 'receiverNameAlt' changes to show BENEFICIARY NAME AS PER BANK
--Sept 21 #134 -> Allow edit option of address in Town Area
--Replace with FNAGetCustomerAddress
--#298 Trim white space of Control number and TranId
--#469 Show additional fields incase of Payment of Import Good
--#334 : OFAC screening changes.
--#101: mobile changes
--#618 ID TYPE empty for mobile transaction
--#807 Add hyperlink as View Details in Search transaction --AGT: VIEW TXN (SEARCH TRANSACTION)
-- #932 - goods origin
--#1320 - Remove Khanji character from search transaction
--#1404 - @flag = 's' , add payer label in search transactioN
--#1553 - Search transaction ui , @flag = 's'
--#9658 -- add delete trouble ticket in search transaction
--#10906 - approve transacation doc details
--#10703 - allow edit Questionnaire , @flag = 'show-QA'
--#18970 change to redirect to edit customer page
--#31894 select verification details in @flag = 's'
-----------------------------------
DECLARE @select_field_list VARCHAR(MAX)
,@extra_field_list VARCHAR(MAX)
,@table VARCHAR(MAX)
,@sql_filter VARCHAR(MAX)
DECLARE @controlNoEncrypted VARCHAR(100)
,@code VARCHAR(50)
,@userName VARCHAR(50)
,@password VARCHAR(50)
,@userType VARCHAR(10)
,@tranStatus VARCHAR(50)
,@tranIdType CHAR(1)
,@voucherNo VARCHAR(50)
,@nepDate VARCHAR(50)
SET NOCOUNT ON;
SET XACT_ABORT ON;
SET @tranIdType = DBO.FNAGetTranIdType(LTRIM(RTRIM(@tranId)))
SET @nepDate = GETDATE()
IF @controlNo IS NOT NULL
BEGIN
SET @controlNo = LTRIM(RTRIM(@controlNo))
SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
SELECT @tranId = id
,@tranStatus = tranStatus
,@holdTranId = holdTranId
FROM vwRemitTran WITH (NOLOCK)
WHERE controlNo = @controlNoEncrypted
END
ELSE IF @tranId IS NOT NULL
BEGIN
IF @tranIdType = 'H' --- h - remitTRanTemp , c- remitTran
SELECT @controlNoEncrypted = controlNo
,@tranStatus = tranStatus
,@voucherNo = voucherNo
,@holdTranId = holdTranId
,@controlNo = dbo.FNADecryptString(controlNo)
FROM vwremitTran WITH (NOLOCK)
WHERE holdTranId = @tranId
ELSE
SELECT @controlNoEncrypted = controlNo
,@tranStatus = tranStatus
,@voucherNo = voucherNo
,@holdTranId = holdTranId
,@controlNo = dbo.FNADecryptString(controlNo)
FROM remitTran WITH (NOLOCK)
WHERE id = @tranId
IF LEN(@controlNoEncrypted) = 0
SET @controlNoEncrypted = '0'
END
IF @flag = 's'
BEGIN
DECLARE @partnerId INT
,@isRealTime BIT
,@pcountry INT
,@IsQuestionnaire VARCHAR(30) = 'NONE'
,@TranType CHAR(1) = 'I'
,@customerId INT
SELECT @customerId = customerid
FROM tranSendersTemp(NOLOCK)
WHERE tranId = @tranId
SELECT @partnerId = pSuperAgent
,@pcountry = CM.COUNTRYID
FROM REMITTRANTEMP(NOLOCK) RTT
INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = RTT.PCOUNTRY
WHERE DBO.DECRYPTDB(CONTROLNO) = @controlNo
SELECT @isRealTime = isRealTime
FROM TblPartnerwiseCountry(NOLOCK)
WHERE AgentId = @partnerId
AND COUNTRYID = @pcountry
IF @viewType = 'COMPLIANCE'
BEGIN
SELECT @TranType = tranType
,@holdTranId = holdtranId
FROM vwRemitTran(NOLOCK)
WHERE controlNo = @controlNoEncrypted
OR isnull(id, holdTranId) = @tranId
IF NOT EXISTS (
SELECT *
FROM TBL_TXN_COMPLIANCE_CDDI(NOLOCK)
WHERE TRAN_ID = @holdTranId
)
BEGIN
IF @TranType = 'M'
BEGIN
IF EXISTS (
SELECT TOP 1 1
FROM remitTranCompliance RTC(NOLOCK)
INNER JOIN csDetail CD(NOLOCK) ON RTC.csDetailTranId = CD.csDetailId
WHERE RTC.TranId = @tranId
AND CD.nextAction = 'Q'
)
BEGIN
SET @IsQuestionnaire = 'ONLY NORMAL'
END
IF EXISTS (
SELECT *
FROM remitTranCompliance(NOLOCK)
WHERE TranId = @tranId
AND reason = 'Questionnaire require due to Visa Status'
)
BEGIN
IF @IsQuestionnaire = 'ONLY NORMAL'
BEGIN
SET @IsQuestionnaire = 'BOTH'
END
ELSE
BEGIN
SET @IsQuestionnaire = 'ONLY VISA'
END
END
END
END
END
EXEC proc_tranViewHistory 'i'
,@user
,@tranId
,@controlNo
,NULL
,@viewType
,@viewMsg
DECLARE @referralName VARCHAR(100)
SELECT @referralName = referral_name
FROM vwremittran rt(NOLOCK)
INNER JOIN referral_agent_wise ref(NOLOCK) ON ref.referral_code = rt.promotionCode
WHERE (
rt.controlNo = @controlNoEncrypted
OR isnull(rt.id, rt.holdTranId) = @tranId
)
AND ref.staff_visit = 1
--Transaction Details
SELECT tranId = trn.holdtranid
,holdTranId = trn.holdTranId
,controlNo = dbo.FNADecryptString(trn.controlNo)
--Sender Information
,sMemId = ISNULL(sen.membershipId, cm.membershipId)
,sCustomerId = sen.customerId
,Isnull(cm.postalcode, cm.membershipid) uniqueId
,senderName = sen.firstName + ISNULL(' ' + sen.middleName, '') + ISNULL(' ' + sen.lastName1, '') + ISNULL(' ' + sen.lastName2, '')
,ShowDetails = CASE @viewMsg
WHEN 'AGT: VIEW TXN (SEARCH TRANSACTION)'
THEN '<a class= "btn btn-primary" style="padding-left:0.2em;" target="_blank" title = "Show Deatils" href="/AgentNew/Customer/CustomerDetails.aspx?customerId=' + CAST(sen.customerid AS VARCHAR) + '" > View Details </a>'
ELSE '<a class= "btn btn-primary" style="padding-left:0.2em;" target="_blank" title = "Show Deatils" href="/Remit/Administration/CustomerSetup/CustomerDetails.aspx?customerId=' + CAST(sen.customerid AS VARCHAR) + '" > View Details </a>'
END
,editCustomer = '<a class="btn btn-edit" style="padding-left:0.2em;" target="_blank" title="Edit Customer" href="/Remit/Administration/CustomerRegistration/Manage.aspx?customerId=' + CAST(sen.customerid AS VARCHAR) + '&MethodName=GetCustomerDetailsForEdit" > Edit Customer </a>'
,sCountryName = trn.sCountry
,sStateName = sen.STATE
,sDistrict = sen.district
,sCity = isnull(sen.city, '')
--,sAddress = DBO.FNAGetCustomerAddress(trn.ID, 'TXN-SEARCH')
,sAddress = ISNULL(cm.zipCode, cm.postalCode) + ISNULL(', ' + cm.city,'') + ISNULL(', ' + cm.address, '') + ISNULL(', ' + cm.ADDITIONALADDRESS,'')--DBO.FNAGetCustomerAddress(sen.customerId, 'SEARCH-TXN')
,sContactNo = COALESCE(sen.mobile, sen.homephone, sen.workphone)
,sDob = convert(VARCHAR(10), sen.dob, 121)
,sIdType = ISNULL(sen.idtype, 'Other (please specify)' + (':') + ('' + cm.otherIdNumber))
,sIdNo = UPPER(sen.idNumber)
,sValidDate = sen.validDate
,sEmail = sen.email
,extCustomerId = sen.extCustomerId
,walletNo = cm.walletAccountNo
,VISA.detailTitle visaStatus
,CASE
WHEN cm.occupation = '11383'
THEN (occ.DETAILTITLE) + (':') + cm.occupationOther
ELSE occ.DETAILTITLE
END [Occupation]
--Receiver Information
,rMemId = rec.membershipId
,rCustomerId = rec.customerId
,receiverName = rec.firstName + ISNULL(' ' + rec.middleName, '') + ISNULL(' ' + rec.lastName1, '') + ISNULL(' ' + rec.lastName2, '')
,rCountryName = rec.country
,rStateName = rec.STATE
,rDistrict = rec.district
,rCity = isnull(rec.city, '')
,rAddress = rec.address
,rContactNo = COALESCE(rec.mobile, rec.homephone, rec.workphone)
,rIdType = ISNULL(sdv1.detailTitle, rec.idType)
,rIdNo = UPPER(ISNULL(rec.idNumber2, rec.idNumber) + isnull(' ' + rec.idPlaceOfIssue2, ''))
--Sending Agent Information
,sAgentEmail = sa.agentEmail1
,sAgentName = CASE
WHEN trn.sAgentName = trn.sBranchName
THEN '-'
ELSE trn.sAgentName
END
,sBranchName = trn.sBranchName
,sAgentCountry = sa.agentCountry
,sAgentState = sa.agentState
,sAgentDistrict = sa.agentDistrict
,sAgentLocation = sLoc.districtName
,sAgentCity = sa.agentCity
,sAgentAddress = sa.agentAddress
--Payout Agent Information
,trn.pAgent
,pAgentName = CASE
WHEN trn.pAgentName IS NULL
THEN '[Any Where]'
ELSE CASE
WHEN trn.pAgentName = trn.pBranchName
THEN '-'
ELSE trn.pAgentName
END
END
,pBranchName = trn.pBranchName
,pAgentCountry = trn.pCountry
,pAgentState = trn.pState
,pAgentDistrict = rec.district
,pAgentLocation = CASE
WHEN trn.pBank IS NOT NULL
THEN trn.pBankName
ELSE ''
END
,pAgentCity = pa.agentCity
,pAgentAddress = pa.agentAddress
,payerName = pbd.PAYER_CODE + ' - ' + pbd.Payer_Name
,trn.tAmt
,trn.serviceCharge
,handlingFee = ISNULL(trn.handlingFee, 0)
,sAgentComm = isnull(trn.sAgentComm, 0)
,sAgentCommCurrency = ISNULL(trn.sAgentCommCurrency, 0)
,pAgentComm = ISNULL(trn.pAgentComm, 0)
,pAgentCommCurrency = ISNULL(trn.pAgentCommCurrency, 0)
,exRate = trn.customerRate
,trn.cAmt
,pAmt = FLOOR(trn.pAmt)
,relationship = ISNULL(trn.relWithSender, ISNULL('' + sdv2.detailTitle, ''))
,purpose = ISNULL(trn.purposeOfRemit, '-')
,sourceOfFund = ISNULL(trn.sourceOfFund, '-')
,collMode = trn.collMode
,trn.collCurr
,paymentMethod = UPPER(trn.paymentMethod)
,trn.payoutCurr
,BranchName = trn.pBankBranchName
,accountNo = trn.accountNo
,BankName = trn.pBankName
,postDate =tr.postedDate
,releaseDate =tr.downloadedDate
,tranStatus = CASE
WHEN trn.payStatus = 'Post'
AND trn.tranType = 'D'
THEN 'Post'
ELSE trn.tranStatus
END
,trn.payStatus
,createdFrom = CASE
WHEN (trn.tranType = 'M' AND trn.isOnlineTxn = 'M') THEN 'Mobile'
WHEN (trn.tranType = 'M' AND trn.isOnlineTxn = 'O') THEN 'Web Online'
WHEN trn.tranType = 'I' THEN 'CR Panel'
ELSE trn.tranType END
,payoutMsg = ISNULL(trn.pMessage, '-')
,trn.createdBy
,trn.createdDate
,trn.approvedBy
,trn.approvedDate
,trn.paidBy
,trn.paidDate
,trn.cancelRequestBy
,trn.cancelRequestDate
,trn.cancelApprovedBy
,trn.cancelApprovedDate
,trn.lockedBy
,trn.lockedDate
,trn.payTokenId
,trn.tranStatus
,trn.tranType
,trn.holdTranId
,sTelNo = ISNULL(sen.homephone, sen.workphone)
,rTelNo = ISNULL(rec.homephone, rec.workphone)
,CashOrBank = ''
,PurposeofRemit = CASE
WHEN trn.PurposeofRemit = 'Payment of import good'
THEN CONCAT (
'<b>'
,trn.purposeOfRemit
,'</b>'
,'<br/>'
,'<b>Goods Type:</b> ' + ISNULL(rec.goodsType, '')
,'<br/>'
,'<b>Goods Origin:</b> ' + ISNULL(goodsorigin, '')
,'<br/>'
,'<b>Port Of Shipment:</b> ' + ISNULL(rec.portOfShipment, '')
)
ELSE ISNULL(trn.purposeOfRemit, '-')
END
,custRate = isnull(trn.customerRate, 0) + isnull(trn.schemePremium, 0)
,settRate = trn.agentCrossSettRate
,nativeCountry = sen.nativeCountry
,@isRealTime AS isRealTime
,CASE
WHEN ISNULL(@referralName, '') = ''
THEN '-'
ELSE @referralName
END referralName
,introducer = CASE
WHEN trn.referralId IS NULL
THEN '-'
ELSE intro.fullName + ' ' + ' - ' + intro.membershipId
END
,receiverNameAlt = ISNULL(trn.receiverNameAlt, '')
,IsQuestionnaire = @IsQuestionnaire
,pSuperAgent = trn.pSuperAgent
,cm.createdDate registerDate
,rewardPoints = trn.rewardPoints
,customerPremium = trn.customerPremium
,depositType = tr.depositType
,trustPaymentId = tpd.transactionReference
,pCountryId = cs.countryId
,verifiedBy = tr.verifiedBy
,verifiedDate = tr.verifiedDate
FROM vwRemitTran trn WITH (NOLOCK)
LEFT JOIN remitTranTemp rt WITH (NOLOCK) ON trn.id = rt.id
LEFT JOIN vwTranSenders sen WITH (NOLOCK) ON trn.id = sen.tranId
LEFT JOIN vwTranReceivers rec WITH (NOLOCK) ON trn.id = rec.tranId
LEFT JOIN agentMaster sa WITH (NOLOCK) ON trn.sBranch = sa.agentId
LEFT JOIN agentMaster pa WITH (NOLOCK) ON trn.pBranch = pa.agentId
LEFT JOIN api_districtList pLoc WITH (NOLOCK) ON trn.pLocation = pLoc.districtCode
LEFT JOIN apiLocationMapping ALM WITH (NOLOCK) ON pLoc.districtCode = ALM.apiDistrictCode
LEFT JOIN zoneDistrictMap ZDM WITH (NOLOCK) ON ZDM.districtId = ALM.districtId
LEFT JOIN api_districtList sLoc WITH (NOLOCK) ON sa.agentLocation = sLoc.districtCode
LEFT JOIN staticDataValue sdv WITH (NOLOCK) ON sen.idType = CAST(sdv.valueId AS VARCHAR)
LEFT JOIN staticDataValue sdv1 WITH (NOLOCK) ON rec.idType = CAST(sdv1.valueId AS VARCHAR)
LEFT JOIN staticDataValue sdv2 WITH (NOLOCK) ON rec.relationType = CAST(sdv2.valueId AS VARCHAR)
LEFT JOIN customerMaster cm WITH (NOLOCK) ON cm.customerId = sen.customerId
LEFT JOIN customerMaster intro WITH (NOLOCK) ON intro.customerId = trn.referralId
LEFT JOIN staticDataValue VISA WITH (NOLOCK) ON CM.VISASTATUS = CAST(VISA.VALUEID AS VARCHAR)
LEFT JOIN tbl_japan_address_detail detail WITH (NOLOCK) ON detail.zip_code = sen.zipcode
LEFT JOIN dbo.countryStateMaster SS(NOLOCK) ON cast(SS.stateId AS INT) = detail.state_Id
LEFT JOIN STATICDATAVALUE occ ON occ.VALUEID = CM.occupation
LEFT JOIN PAYER_BANK_DETAILS pbd WITH (NOLOCK) ON pbd.payer_id = trn.payerId
LEFT JOIN dbo.countryMaster cs(NOLOCK) ON cs.countryName = rec.country
LEFT JOIN TRU_TranDetail tpd WITH (NOLOCK) ON tpd.Tranid = trn.id
LEFT JOIN remitTran tr WITH (NOLOCK) ON tr.id = trn.id
WHERE trn.controlNo = @controlNoEncrypted
OR isnull(trn.id, trn.holdTranId) = LTRIM(RTRIM(@tranId))
--End of Transaction Details------------------------------------------------------------
--Lock Transaction----------------------------------------------------------------------
IF (@lockMode = 'Y')
BEGIN
UPDATE remitTran
SET tranStatus = 'Lock'
,lockedBy = @user
,lockedDate = GETDATE()
,lockedDateLocal = @nepDate
WHERE (
tranStatus = 'Payment'
AND tranStatus <> 'CancelRequest'
)
AND payStatus = 'Unpaid'
AND (
controlNo = @controlNoEncrypted
OR id = @tranId
)
END
--End of Lock Transaction---------------------------------------------------------------
--Log Details---------------------------------------------------------------------------
PRINT @holdTranId
SELECT *
FROM (
SELECT rowId = 0
,message = 'OFAC Release Msg:' + approvedRemarks
,createdBy = approvedBy
,createdDate = approvedDate
,fileType = NULL
,deleteComment = 'N'
,fieldName = NULL
FROM remittranofac
WHERE tranid = @holdTranId
AND approvedBy IS NOT NULL
UNION ALL
SELECT rowId
,message = CASE
WHEN message IS NULL
THEN fieldName + ' ' + OLDVALUE + ' Changed By ' + REPLACE(REPLACE(FIELDVALUE, '<root><row ', ''), ' secondLastName = ""/></root>', '')
ELSE [MESSAGE]
END
,trn.createdBy
,trn.createdDate
,isnull(trn.fileType, '') fileType
,deleteComment = 'Y'
,fieldName
FROM tranModifyLog trn WITH (NOLOCK)
LEFT JOIN applicationUsers au WITH (NOLOCK) ON trn.createdBy = au.userName
WHERE (
trn.tranId = @tranId
OR trn.controlNo = @controlNoEncrypted
)
AND ISNULL(trn.STATUS, '') <> 'Deleted'
AND ISNULL(trn.OLDVALUE, '') NOT IN (
'7000'
,'100'
,'415'
,'416'
)
) x
ORDER BY X.rowId DESC
SELECT bankName = 'Cash'
,collMode = 'Cash'
,amt = ''
,collDate = ''
,voucherNo = ''
,narration = 'Cash Collection'
SELECT C.PARTICULARS
,C.TRANDATE
,C.DEPOSITAMOUNT
FROM TBL_BANK_DEPOSIT_TXN_MAPPING B(NOLOCK)
INNER JOIN CUSTOMER_DEPOSIT_LOGS C(NOLOCK) ON C.TRANID = B.DEPOSIT_LOG_ID
WHERE HOLD_TRAN_ID = @holdTranId
-- Document Details
SELECT ROW_NUMBER() OVER (
ORDER BY uploadedDate ASC
) SN
,*
FROM (
SELECT documentType = CASE
WHEN cd.documentType = '0'
AND filetype = 'application/pdf'
THEN cd.filedescription
ELSE ISNULL(sdv.detailTitle, 'signature')
END
,fileType = CASE
WHEN ISNULL(cd.fileType, 'image/jpeg') IN ('receiver')
THEN 'application/pdf'
ELSE ISNULL(cd.fileType, 'image/jpeg')
END
,uploadedDate = CONVERT(VARCHAR(10), cd.createddate, 111)
,fileName = '<a style=''cursor:pointer;'' onclick="showDocument(' + Cast(cd.cdId AS VARCHAR) + ',''' + CASE
WHEN ISNULL(cd.fileType, 'image/jpeg') IN ('receiver')
THEN 'application/pdf'
ELSE ISNULL(cd.fileType, 'image/jpeg')
END + ''');">' + cd.fileName + '</a>'
FROM dbo.customerDocument cd
LEFT JOIN dbo.staticDataValue sdv ON sdv.valueId = cd.documentType
WHERE cd.customerId = @customerId
AND ISNULL(isDeleted, 'N') = 'N'
--ORDER BY cd.createdDate
) X
---- Questionaire details
--SELECT ROW_NUMBER() OVER (
-- ORDER BY ORDER_BY
-- ) SN
-- ,*
--FROM (
-- SELECT ORDER_BY
-- ,QSN
-- ,ANSWER_TEXT
-- ,editQuestionnaire = '<button id="btnUpdate" class="btn btn-primary" value="Edit" onClick="UpdateQuestionnaire();"/>'
-- FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
-- INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID
-- WHERE CAST(A.TRAN_ID AS VARCHAR) = CAST(ISNULL(@holdTranId, 0) AS VARCHAR)
-- ) x
END
ELSE IF @flag = 'voucher'
BEGIN
IF EXISTS (
SELECT *
FROM dbo.bankCollectionVoucherDetail(NOLOCK)
WHERE tempTranId = @tranId
)
BEGIN
SELECT b.voucherAmt
,b.voucherDate
,b.voucherNo
,v.bankName
FROM dbo.bankCollectionVoucherDetail b(NOLOCK)
INNER JOIN vwBankLists v(NOLOCK) ON b.bankId = v.rowId
WHERE b.tempTranId = @tranId
END
ELSE
BEGIN
SELECT b.voucherAmt
,b.voucherDate
,b.voucherNo
,v.bankName
FROM dbo.bankCollectionVoucherDetail b(NOLOCK)
INNER JOIN vwBankLists v(NOLOCK) ON b.bankId = v.rowId
WHERE b.mainTranId = @tranId
END
END
ELSE IF @flag = 'ac' --Add Comment
BEGIN
BEGIN TRY
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
DECLARE @ttId VARCHAR(10) = NULL
,@OrderNo VARCHAR(50) = NULL
SELECT @OrderNo = NULLIF(LTRIM(RTRIM(voucherNo)), '')
FROM remitTran(NOLOCK)
WHERE id = @tranId
AND sRouteId = 'RIA'
BEGIN TRAN
INSERT INTO tranModifyLog (
tranId
,controlNo
,message
,createdBy
,createdDate
,MsgType
,STATUS
,needToSync
)
SELECT @tranId
,@controlNoEncrypted
,@message
,@user
,@nepDate
,'C'
,'Not Resolved'
,CASE
WHEN @OrderNo IS NOT NULL
THEN 1
ELSE 0
END
--SET @ttId=@@IDENTITY
--IF @OrderNo IS NOT NULL
--BEGIN
-- UPDATE tranModifyLog SET needToSync=1 WHERE rowId=@ttId
--END
IF ISNUMERIC(@controlNo) = 1
AND right(@controlNo, 1) <> 'D'
BEGIN
INSERT INTO dbo.rs_remitTranTroubleTicket (
RefNo
,Comments
,DatePosted
,PostedBy
,uploadBy
,STATUS
,noteType
,tranno
,category
)
SELECT @controlNoEncrypted
,@message
,GETDATE()
,@user
,@user
,NULL
,2
,NULL
,'push'
END
COMMIT TRAN
---EXEC proc_errorHandler 0, 'Comments has been added successfully.', @tranId
SELECT '0' AS errorCode
,'Comments has been added successfully.' AS Msg
,@ttId AS Id
,'RIA' AS Extra
,@OrderNo AS Extra2
END TRY
BEGIN CATCH
SELECT 1 error_code
,ERROR_MESSAGE() mes
,NULL id
END CATCH
END
IF @flag = 'showLog' --Add Comment
BEGIN
--Log Details---------------------------------------------------------------------------
--SELECT
-- rowId
-- ,message
-- ,trn.createdBy
-- ,trn.createdDate
-- ,isnull(trn.fileType,'') fileType
--FROM tranModifyLog trn WITH(NOLOCK)
--LEFT JOIN applicationUsers au WITH(NOLOCK) ON trn.createdBy = au.userName
--WHERE trn.tranId = @tranId
--ORDER BY trn.createdDate DESC
SELECT *
FROM (
SELECT rowId = 0
,message = 'OFAC Release Msg:' + approvedRemarks
,createdBy = approvedBy
,createdDate = approvedDate
,fileType = NULL
,deleteComment = 'N'
,fieldName = null
FROM remittranofac
WHERE tranid = @holdTranId
UNION ALL
SELECT rowId
,message = CASE
WHEN message IS NULL
THEN fieldName + ' ' + OLDVALUE + ' Changed By ' + REPLACE(REPLACE(FIELDVALUE, '<root><row ', ''), ' secondLastName = ""/></root>', '')
ELSE [MESSAGE]
END
,trn.createdBy
,trn.createdDate
,isnull(trn.fileType, '') fileType
,deleteComment = 'Y'
,fieldName
FROM tranModifyLog trn WITH (NOLOCK)
LEFT JOIN applicationUsers au WITH (NOLOCK) ON trn.createdBy = au.userName
WHERE (
trn.tranId = @tranId
OR trn.controlNo = @controlNoEncrypted
)
AND trn.[status] <> 'Deleted'
) x
ORDER BY X.rowId DESC
END
ELSE IF @flag = 'OFAC'
BEGIN
DECLARE @TRACK_BY VARCHAR(20)
SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
IF @controlNoEncrypted IS NOT NULL
SELECT @holdTranId = holdTranId
,@tranId = id
FROM vwRemitTran 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 NVARCHAR(MAX) NULL)
DECLARE @ofacKeyIds VARCHAR(MAX)
,@ofacRemarks NVARCHAR(MAX)
SELECT @ofacKeyIds = blackListId
,@TRACK_BY = ISNULL(TRACK_BY, 'OFAC')
,@ofacRemarks = ofacDetail
FROM dbo.remitTranOfac
WHERE TranId = ISNULL(@holdTranId, @tranId)
IF @ofacRemarks IS NOT NULL
BEGIN
SELECT ofacRemarks = @ofacRemarks
,'Y' isJsonData
RETURN
END
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 NVARCHAR(MAX) = ''
,@DATA_SOURCE AS VARCHAR(200) = ''
IF @TRACK_BY = 'DJ'
BEGIN
IF OBJECT_ID('tempdb..#tempDJresult') IS NOT NULL
DROP TABLE #tempDJ
SELECT DISTINCT X.val ofacKeyId
INTO #tempDJ
FROM (
SELECT *
FROM dbo.SplitXML(',', @ofacKeyIds)
) X
ALTER TABLE #tempDJ ADD ROWID INT IDENTITY (
1
,1
)
SELECT @MAX_ROW_ID = MAX(ROWID)
FROM #tempDJ
WHILE @MAX_ROW_ID >= @ROW_ID
BEGIN
SELECT @ofacKeyId = ofacKeyId
FROM #tempDJ
WHERE ROWID = @ROW_ID
SELECT @DATA = RESULT
FROM Dowjones.DBO.DJ_FNAGET_PERSON_DETAIL(@ofacKeyId)
IF ISNULL(@DATA, '') <> ''
BEGIN
INSERT INTO #tempDataTable
SELECT @DATA
END
SET @ROW_ID = @ROW_ID + 1
END
ALTER TABLE #tempDataTable ADD ROWID INT IDENTITY (
1
,1
)
SELECT ROWID [S.N.]
,DATA [Remarks]
,'N' isJsonData
FROM #tempDataTable
RETURN
END
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
)
SELECT @MAX_ROW_ID = MAX(ROWID)
FROM #tempMaster
WHILE @MAX_ROW_ID >= @ROW_ID
BEGIN
SELECT @SDN = ''
,@ADDRESS = ''
,@ADDRESS = ''
,@ALT = ''
,@REMARKS = ''
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]
,'N' isJsonData
FROM #tempDataTable
END
ELSE IF @flag = 'Compliance'
BEGIN
SELECT @holdTranId = holdTranId
,@tranId = id
FROM vwRemitTran WITH (NOLOCK)
WHERE controlNo = dbo.FNAEncryptString(@controlNo)
SELECT rowId
,csDetailRecId
,[S.N.] = ROW_NUMBER() OVER (
ORDER BY ROWID
)
,[Remarks]
,[Matched ControlNo]
,[Doc. Required]
,[Approved Remarks]
FROM (
SELECT rowId
,csDetailRecId = CL.id
,[Remarks] = CASE
WHEN RTC.CSDETAILTRANID = 0
THEN RTC.REASON
WHEN RTC.CSDETAILTRANID <> 0
THEN CL.COMPLAINCEDETAILMESSAGE
END
--,[Matched TRAN ID] = ISNULL(rtc.matchTranId, '-')
,[Matched ControlNo] = ISNULL(CASE
WHEN dbo.fnadecryptstring(rtt.controlno) = ''
AND dbo.fnadecryptstring(rth.controlno) = ''
THEN dbo.fnadecryptstring(rt.controlno)
WHEN dbo.fnadecryptstring(rtt.controlno) = ''
AND dbo.fnadecryptstring(rt.controlno) = ''
THEN dbo.fnadecryptstring(rth.controlno)
ELSE dbo.fnadecryptstring(rtt.controlno)
END, '-')
,[Doc. Required] = CASE
WHEN isDocumentRequired = 1
THEN 'Yes'
ELSE 'No'
END
,[Approved Remarks] = rtc.approvedby + ': ' + rtc.approvedremarks
FROM ComplianceLog CL
LEFT JOIN remitTranCompliance rtc WITH (NOLOCK) ON CL.TRANID = RTC.TRANID AND RTC.CSDETAILTRANID = CL.complianceId
LEFT JOIN CSDETAIL CD(NOLOCK) ON CD.csDetailId = CL.complianceId
LEFT JOIN vwremittran rtt(NOLOCK) ON rtt.holdtranid = rtc.matchTranId
LEFT JOIN vwremittran rth(NOLOCK) ON rth.id = rtc.matchTranId
LEFT JOIN cancelTranHistory rt(NOLOCK) ON rt.tranid = rtc.matchTranId
WHERE rtc.TranId = ISNULL(@holdTranId, @tranId)
AND ISNULL(rtc.reason, '') <> 'Suspected duplicate transaction'
--AND CD.nextAction = 'H'
UNION ALL
SELECT rowId
,csDetailRecId = CASE
WHEN CSDETAILTRANID <> 0
THEN CL.id
ELSE 0
END
,[Remarks] = CASE
WHEN RTC.CSDETAILTRANID = 0
THEN RTC.REASON
WHEN RTC.CSDETAILTRANID <> 0
THEN CL.COMPLAINCEDETAILMESSAGE
END
--,[Matched TRAN ID] = ISNULL(rtc.matchTranId, '-')
,[Matched ControlNo] = ISNULL(CASE
WHEN dbo.fnadecryptstring(rtt.controlno) = ''
AND dbo.fnadecryptstring(rth.controlno) = ''
THEN dbo.fnadecryptstring(rt.controlno)
WHEN dbo.fnadecryptstring(rtt.controlno) = ''
AND dbo.fnadecryptstring(rt.controlno) = ''
THEN dbo.fnadecryptstring(rth.controlno)
ELSE dbo.fnadecryptstring(rtt.controlno)
END, '-')
,[Doc. Required] = CASE
WHEN isDocumentRequired = 1
THEN 'Yes'
ELSE 'No'
END
,[Approved Remarks] = rtc.approvedby + ': ' + rtc.approvedremarks
FROM remitTranCompliance rtc
LEFT JOIN ComplianceLog CL WITH (NOLOCK) ON CL.TRANID = RTC.TRANID --AND RTC.CSDETAILTRANID = CL.complianceId
LEFT JOIN CSDETAIL CD(NOLOCK) ON CD.csDetailId = CL.complianceId
LEFT JOIN vwremittran rtt(NOLOCK) ON rtt.holdtranid = rtc.matchTranId
LEFT JOIN vwremittran rth(NOLOCK) ON rth.id = rtc.matchTranId
LEFT JOIN cancelTranHistory rt(NOLOCK) ON rt.tranid = rtc.matchTranId
WHERE rtc.TranId = ISNULL(@holdTranId, @tranId)
AND rtc.reason = 'Suspected duplicate transaction'
) X
END
ELSE IF @flag = 'CashLimitHold'
BEGIN
SELECT @holdTranId = holdTranId
,@tranId = id
FROM vwRemitTran WITH (NOLOCK)
WHERE controlNo = dbo.FNAEncryptString(@controlNo)
SELECT rowId
,[S.N.] = ROW_NUMBER() OVER (
ORDER BY ROWID
)
,[TRAN ID] = rtclh.tranId
,[Remarks] = ' Transaction is in Cash Limit Hold beacase send amount is greater than available cash hold limit'
FROM remitTranCashLimitHold rtclh WITH (NOLOCK)
WHERE rtclh.TranId = ISNULL(@holdTranId, @tranId)
END
--EXEC proc_transactionView @FLAG='COMPL_DETAIL',@controlNo='1',@tranId='1'
IF @flag = 'COMPL_DETAIL'
BEGIN
/*
5000 By Sender ID
5001 By Sender Name
5002 By Sender Mobile
5003 By Beneficiary ID
5004 By Beneficiary ID(System)
5005 By Beneficiary Name
5006 By Beneficiary Mobile
5007 By Beneficiary A/C Number
*/
DECLARE @tranIds AS VARCHAR(MAX)
,@criteria AS INT
,@totalTran AS INT
,@criteriaValue AS VARCHAR(500)
,@id AS INT
,@reason VARCHAR(500)
SELECT @tranIds = matchTranId
,@id = TranId
FROM remitTranCompliance WITH (NOLOCK)
WHERE rowId = @controlNo --(ROWID) --id of remitTranCompliance
SELECT @criteria = criteria
FROM csDetailRec WITH (NOLOCK)
WHERE csDetailRecId = @tranId --id of csDetailRec
SELECT @totalTran = COUNT(*)
FROM dbo.Split(',', @tranIds)
IF @criteria = '5000'
SELECT @criteriaValue = B.membershipId
FROM tranSenders B WITH (NOLOCK)
WHERE B.tranId = @id
IF @criteria = '5001'
SELECT @criteriaValue = senderName
FROM remitTran WITH (NOLOCK)
WHERE Id = @id
--SELECT @criteriaValue = SNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '') FROM tranSenders B with(nolock) WHERE B.tranId = @id
IF @criteria = '5002'
SELECT @criteriaValue = B.mobile
FROM tranSenders B WITH (NOLOCK)
WHERE B.tranId = @id
IF @criteria = '5003'
SELECT @criteriaValue = B.membershipId
FROM tranReceivers B WITH (NOLOCK)
WHERE B.tranId = @id
IF @criteria = '5004'
SELECT @criteriaValue = B.membershipId
FROM tranReceivers B WITH (NOLOCK)
WHERE B.tranId = @id
IF @criteria = '5005'
SELECT @criteriaValue = receiverName
FROM remitTran WITH (NOLOCK)
WHERE Id = @id
--SELECT @criteriaValue = ISNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '') FROM tranReceivers B with(nolock) WHERE B.tranId = @id
IF @criteria = '5006'
SELECT @criteriaValue = B.mobile
FROM tranReceivers B WITH (NOLOCK)
WHERE B.tranId = @id
IF @criteria = '5007'
SELECT @criteriaValue = A.accountNo
FROM remitTran A WITH (NOLOCK)
WHERE A.id = @id
-- @tranId=0 LOGIC IS ONLY FOR Suspected duplicate transaction WHERE THERE IS csDetailRecId ALWAYS 0
SELECT REMARKS = CASE
WHEN @tranId = 0
THEN @reason
ELSE RTRIM(LTRIM(dbo.FNAGetDataValue(condition))) + ' ' + CASE
WHEN checkType = 'Sum'
THEN 'Transaction Amount'
WHEN checkType = 'Count'
THEN 'Transaction Count'
END + ' exceeds ' + CAST(parameter AS VARCHAR) + ' limit within ' + CAST(period AS VARCHAR) + ' days ' + dbo.FNAGetDataValue(criteria) + ': <font size=''2px''>' + ISNULL(@criteriaValue, '') + '</font>'
END
,totTran = 'Total Count: <b>' + CASE
WHEN @tranId = 0
THEN '1'
ELSE CAST(@totalTran AS VARCHAR)
END + '</b>'
FROM csDetailRec WITH (NOLOCK)
WHERE csDetailRecId = CASE
WHEN @tranId = 0
THEN 1
ELSE @tranId
END
SELECT [S.N.] = ROW_NUMBER() OVER (
ORDER BY @controlNo
)
,[CONTROL NO.] = dbo.FNADecryptString(trn.controlNo)
,[TRAN AMOUNT] = dbo.ShowDecimal(trn.cAmt)
,[CURRENCY] = trn.collCurr
,[TRAN DATE] = CONVERT(VARCHAR, trn.createdDate, 101)
FROM VWremitTran trn WITH (NOLOCK)
INNER JOIN (
SELECT *
FROM dbo.Split(',', @tranIds)
) B ON trn.holdTranId = B.value
UNION ALL
---- RECORD DISPLAY FROM CANCEL TRANSACTION TABLE
SELECT [S.N.] = ROW_NUMBER() OVER (
ORDER BY @controlNo
)
,[CONTROL NO.] = dbo.FNADecryptString(trn.controlNo)
,[TRAN AMOUNT] = dbo.ShowDecimal(trn.cAmt)
,[CURRENCY] = trn.collCurr
,[TRAN DATE] = CONVERT(VARCHAR, trn.createdDate, 101)
FROM cancelTranHistory trn WITH (NOLOCK)
INNER JOIN (
SELECT *
FROM dbo.Split(',', @tranIds)
) B ON trn.tranId = B.value
END
ELSE IF @flag = 'saveComplainceRmks' --Add Approve Remarks
BEGIN TRY
IF EXISTS (
SELECT 'X'
FROM remitTranOfac WITH (NOLOCK)
WHERE TranId = @holdTranId
)
BEGIN
IF EXISTS (
SELECT 'X'
FROM remitTranCompliance WITH (NOLOCK)
WHERE TranId = @holdTranId
)
BEGIN
IF @messageOFAC IS NULL
BEGIN
EXEC proc_errorHandler 1
,'OFAC remarks can not be blank.'
,@holdTranId
RETURN;
END
IF @messageComplaince IS NULL
BEGIN
EXEC proc_errorHandler 1
,'Complaince remarks can not be blank.'
,@holdTranId
RETURN;
END
END
ELSE
BEGIN
IF @messageOFAC IS NULL
BEGIN
EXEC proc_errorHandler 1
,'OFAC remarks can not be blank.'
,@holdTranId
RETURN;
END
END
END
IF EXISTS (
SELECT 'X'
FROM remitTranCompliance WITH (NOLOCK)
WHERE TranId = @holdTranId
)
BEGIN
IF @messageComplaince IS NULL
BEGIN
EXEC proc_errorHandler 1
,'Complaince remarks can not be blank.'
,@holdTranId
RETURN;
END
END
BEGIN TRANSACTION
UPDATE remitTranOfac
SET approvedRemarks = @messageOFAC
,approvedBy = @user
,approvedDate = @nepDate
WHERE TranId = ISNULL(@holdTranId, @tranId)
AND approvedBy IS NULL
UPDATE remitTranCompliance
SET approvedRemarks = @messageComplaince
,approvedBy = @user
,approvedDate = @nepDate
WHERE TranId = ISNULL(@holdTranId, @tranId)
AND approvedBy IS NULL
UPDATE remitTranTemp
SET tranStatus = CASE tranStatus
WHEN 'Cash Limit/Compliance Hold'
THEN 'Cash Limit'
WHEN 'Cash Limit/OFAC Hold'
THEN 'Cash Limit'
WHEN 'Cash Limit/OFAC/Compliance Hold'
THEN 'Cash Limit'
ELSE 'Hold'
END
WHERE id = @tranId
COMMIT TRANSACTION
EXEC proc_errorHandler 0
,'Release remarks has been saved successfully.'
,@tranId
END TRY
BEGIN CATCH
SELECT 1 error_code
,ERROR_MESSAGE() mes
,NULL id
END CATCH ELSE
IF @flag = 'saveCashHoldRmks' --Add Approve Remarks
BEGIN TRY
IF EXISTS (
SELECT 'X'
FROM dbo.remitTranCashLimitHold WITH (NOLOCK)
WHERE TranId = @holdTranId
)
BEGIN
IF @messageCashLimitHold IS NULL
BEGIN
EXEC proc_errorHandler 1
,'Cash Limit Hold remarks can not be blank.'
,@holdTranId
RETURN;
END
END
BEGIN TRANSACTION
--select * from remitTranCashLimitHold
--EXEC proc_transactionView @flag = 'saveCashHoldRmks', @user = 'admin', @controlNo = '212048659', @tranId = '100353262', @messageComplaince = null, @messageOFAC = null, @messageCashLimitHold = 'approve cash hold limit'
UPDATE H
SET H.approvedRemarks = @messageCashLimitHold
,H.approvedBy = @user
,H.approvedDate = GETDATE()
FROM REMITTRAN R(NOLOCK)
INNER JOIN remitTranCashLimitHold H(NOLOCK) ON R.HOLDTRANID = H.TRANID
AND R.id = @tranId
AND H.approvedBy IS NULL
UPDATE remitTran
SET tranStatus = CASE tranStatus
WHEN 'Cash Limit Hold'
THEN 'Payment'
WHEN 'Cash Limit/Compliance Hold'
THEN 'Compliance Hold'
WHEN 'Cash Limit/OFAC Hold'
THEN 'OFAC Hold'
WHEN 'Cash Limit/OFAC/Compliance Hold'
THEN 'OFAC/Compliance Hold'
ELSE 'Payment'
END
WHERE id = @tranId
COMMIT TRANSACTION
EXEC proc_errorHandler 0
,'Release remarks has been saved successfully.'
,@tranId
END TRY
BEGIN CATCH
SELECT 1 error_code
,ERROR_MESSAGE() mes
,NULL id
END CATCH
--EXEC proc_transactionView @FLAG='chkFlag',@tranId='26'
ELSE
IF @flag = 'chkFlagOFAC'
BEGIN
SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
IF @controlNoEncrypted IS NOT NULL
SELECT @holdTranId = holdTranId
,@tranId = id
FROM vwRemitTran WITH (NOLOCK)
WHERE controlNo = @controlNoEncrypted
PRINT @holdTranId;
SELECT CASE
WHEN approvedDate IS NULL
THEN 'N'
ELSE 'Y'
END AS Compliance_FLAG
FROM remitTranOfac O(NOLOCK)
WHERE TranId = @holdTranId
END
ELSE IF @flag = 'chkFlagCOMPLAINCE'
BEGIN
SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
IF @controlNoEncrypted IS NOT NULL
SELECT @holdTranId = holdTranId
,@tranId = id
FROM vwRemitTran WITH (NOLOCK)
WHERE controlNo = @controlNoEncrypted
SELECT CASE
WHEN approvedDate IS NULL
THEN 'N'
ELSE 'Y'
END AS Compliance_FLAG
FROM remitTranCompliance(NOLOCK)
WHERE TranId = @holdTranId
END
ELSE IF @flag = 'chkFlagCashLimitHold'
BEGIN
SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
IF @controlNoEncrypted IS NOT NULL
SELECT @holdTranId = holdTranId
,@tranId = id
FROM vwRemitTran WITH (NOLOCK)
WHERE controlNo = @controlNoEncrypted
SELECT CASE
WHEN H.approvedDate IS NULL
THEN 'N'
ELSE 'Y'
END AS Compliance_FLAG
FROM remitTranCashLimitHold H(NOLOCK)
WHERE TRANID = @holdTranId
END
ELSE IF @flag = 'va' --Verify Agent For Tran Modification
BEGIN
--Necessary paremeter: @user, @branch, @controlNo
IF NOT EXISTS (
SELECT 'X'
FROM remitTran WITH (NOLOCK)
WHERE controlNo = dbo.FNAEncryptString(@controlNo)
AND sBranch = @branch
)
BEGIN
EXEC proc_errorHandler 1
,'Transaction not found'
,NULL
RETURN
END
EXEC proc_errorHandler 0
,'Success'
,NULL
END
IF @flag = 'show-QA'
BEGIN
SELECT ROW_NUMBER() OVER (
ORDER BY ORDER_BY
) SN
,*
FROM (
SELECT ORDER_BY
,QSN
,ANSWER_TEXT
,A.ROW_ID
,editQuestionnaire = '<button id="btnUpdate" class="btn btn-primary" value="Edit" onClick="UpdateQuestionnaire();"/>'
FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID
WHERE CAST(A.TRAN_ID AS VARCHAR) = CAST(ISNULL(@holdTranId, 0) AS VARCHAR)
) x
END
IF @flag = 'update-QA'
BEGIN
-- select * from TBL_TXN_COMPLIANCE_CDDI where tran_id = 10400665
DECLARE @oldAnswer VARCHAR(25)
SELECT @oldAnswer = ANSWER_TEXT
FROM TBL_TXN_COMPLIANCE_CDDI
WHERE ROW_ID = @rowId
UPDATE TBL_TXN_COMPLIANCE_CDDI
SET ANSWER_TEXT = @newAnswer
WHERE ROW_ID = @rowId
EXEC proc_applicationLogs @FLAG = 'i'
,@logType = 'Update'
,@tableName = 'TBL_TXN_COMPLIANCE_CDDI'
,@dataId = @rowId
,@oldData = @oldAnswer
,@newData = @newAnswer
,@module = NULL
,@user = @user
SELECT 0 'ErrorCode'
,'Success' Msg
,NULL Id
END
IF @flag = 's-QuestionaireAnswer'
BEGIN
SET @sortBy = 'ORDER_BY'
SET @table = '
(
SELECT ORDER_BY, QUES_ID,QSN,ANSWER_TEXT
,[updateQ] = ''<button id="btnUpdate" onClick="UpdateQuestionnaire();"/> ''
FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID WHERE CAST(A.TRAN_ID AS VARCHAR) = ''' + CAST(ISNULL(@holdTranId, 0) AS VARCHAR) + '''';
SET @table = @table + ' )x';
SET @pageSize = 50
SET @select_field_list = 'QUES_ID,QSN,ANSWER_TEXT,updateQ';
EXEC dbo.proc_paging @table
,@sql_filter
,@select_field_list
,@extra_field_list
,@sortBy
,@sortOrder
,@pageSize
,@pageNumber;
END
IF @flag = 'questionaire-available'
BEGIN
SELECT *
FROM TBL_TXN_COMPLIANCE_CDDI
WHERE TRAN_ID = @holdTranId
END
IF @flag = 'checkTran'
BEGIN
SELECT @holdTranId = holdtranid
FROM remittran
WHERE id = @TranId
--contain n ofac and cash hold
IF EXISTS (
SELECT 'x'
FROM remittranofac rto(NOLOCK)
INNER JOIN remitTranCashLimitHold rtch(NOLOCK) ON rto.tranid = rtch.tranid
WHERE rto.tranid = @holdTranId
)
BEGIN
SELECT 1 'ErrorCode'
,'Contains in both Ofac and Cash limit' Msg
,NULL Id
RETURN
END
IF EXISTS (
SELECT 'x'
FROM remittrancompliance rto(NOLOCK)
INNER JOIN remitTranCashLimitHold rtch(NOLOCK) ON rto.tranid = rtch.tranid
WHERE rto.tranid = @holdTranId
)
BEGIN
SELECT 1 'ErrorCode'
,'Contains in both Compliance and Cash limit' Msg
,NULL Id
RETURN
END
SELECT 0 'ErrorCode'
,'Not Found in both' Msg
,NULL Id
END
IF @flag = 'deleteTroubleTicket'
BEGIN
UPDATE tranModifyLog
SET STATUS = 'Deleted'
,resolvedby = @user
,resolvedDate = getdate()
WHERE rowId = @rowId
EXEC proc_errorHandler 0
,'Trouble ticket deleted sucessfully.'
,NULL
END