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.
629 lines
20 KiB
629 lines
20 KiB
USE FastMoneyPro_Remit
|
|
|
|
GO
|
|
|
|
ALTER PROC [dbo].[proc_cancelTran] (
|
|
@flag VARCHAR(50)
|
|
,@controlNo VARCHAR(20) = NULL
|
|
,@user VARCHAR(30) = NULL
|
|
,@agentRefId VARCHAR(50) = NULL
|
|
,@tranId INT = NULL
|
|
,@sCountry INT = NULL
|
|
,@sFirstName VARCHAR(30) = NULL
|
|
,@sMiddleName VARCHAR(30) = NULL
|
|
,@sLastName1 VARCHAR(30) = NULL
|
|
,@sLastName2 VARCHAR(30) = NULL
|
|
,@sMemId VARCHAR(30) = NULL
|
|
,@sId BIGINT = NULL
|
|
,@sTranId VARCHAR(50) = NULL
|
|
,@rCountry INT = NULL
|
|
,@rFirstName VARCHAR(30) = NULL
|
|
,@rMiddleName VARCHAR(30) = NULL
|
|
,@rLastName1 VARCHAR(30) = NULL
|
|
,@rLastName2 VARCHAR(30) = NULL
|
|
,@rMemId VARCHAR(30) = NULL
|
|
,@rId BIGINT = NULL
|
|
,@pCountry INT = NULL
|
|
|
|
,@customerId INT = NULL
|
|
,@agentId INT = NULL
|
|
,@senderId INT = NULL
|
|
,@benId INT = NULL
|
|
,@cancelReason VARCHAR(200) = NULL
|
|
,@refund CHAR(1) = NULL
|
|
,@sortBy VARCHAR(50) = NULL
|
|
,@sortOrder VARCHAR(5) = NULL
|
|
,@pageSize INT = NULL
|
|
,@pageNumber INT = NULL
|
|
)
|
|
AS
|
|
|
|
DECLARE
|
|
@tranStatus VARCHAR(20) = NULL,
|
|
@payStatus VARCHAR(50) = NULL,
|
|
@tranType CHAR(1) = NULL
|
|
|
|
|
|
DECLARE
|
|
@select_field_list VARCHAR(MAX)
|
|
,@extra_field_list VARCHAR(MAX)
|
|
,@table VARCHAR(MAX)
|
|
,@sql_filter VARCHAR(MAX)
|
|
,@sAgent INT
|
|
,@tAmt BIGINT
|
|
,@pAmt MONEY
|
|
,@message VARCHAR(200)
|
|
|
|
SET NOCOUNT ON
|
|
SET XACT_ABORT ON
|
|
SELECT @pageSize = 1000, @pageNumber = 1
|
|
|
|
DECLARE
|
|
@code VARCHAR(50)
|
|
,@userName VARCHAR(50)
|
|
,@password VARCHAR(50)
|
|
,@lockStatus VARCHAR(20)
|
|
|
|
DECLARE @controlNoEncrypted VARCHAR(20)
|
|
SELECT @controlNoEncrypted = dbo.FNAEncryptString(UPPER(LTRIM(RTRIM(@controlNo))))
|
|
|
|
IF @flag = 'cancelRequest'
|
|
BEGIN
|
|
IF @user IS NULL
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Your session has expired. Cannot send cancel request', NULL
|
|
RETURN
|
|
END
|
|
|
|
SELECT
|
|
@tranStatus = tranStatus,
|
|
@payStatus = payStatus,
|
|
@tranId = id,
|
|
@lockStatus = lockStatus
|
|
FROM remitTran WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted
|
|
|
|
IF (@tranStatus IS NULL)
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction not found', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
|
|
SELECT @agentId = agentId FROM applicationUsers WITH(NOLOCK) WHERE userName = @user
|
|
IF @agentId <> (SELECT dbo.FNAGetHOAgentId())
|
|
BEGIN
|
|
IF EXISTS(SELECT 'X' FROM remitTran WITH(NOLOCK)
|
|
WHERE controlNo = @controlNoEncrypted AND sBranch <> @agentId)
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction is not in authorized mode', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
END
|
|
IF (@tranStatus = 'Block')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction is blocked. Please Contact HO', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Paid')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction has already been paid', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@payStatus = 'Paid')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction has already been paid', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Cancel')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction already been cancelled', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
|
|
IF (@tranStatus = 'CancelRequest')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Cancel Request has already been sent', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
BEGIN TRANSACTION
|
|
UPDATE remitTran SET
|
|
tranStatus = 'CancelRequest' --Transaction Hold
|
|
,cancelRequestBy = @user
|
|
,cancelRequestDate = dbo.FNAGetDateInNepalTZ()
|
|
,cancelRequestDateLocal = dbo.FNAGetDateInNepalTZ()
|
|
,cancelReason = @cancelReason
|
|
WHERE controlNo = @controlNoEncrypted
|
|
|
|
SELECT @message = 'Transaction requested for Cancel. Reason : ''' + @cancelReason + ''''
|
|
|
|
INSERT INTO tranCancelrequest(tranId,controlNo,cancelReason,cancelStatus,createdBy,createdDate,tranStatus)
|
|
SELECT @tranId,@controlNoEncrypted,@cancelReason,'CancelRequest',@user,GETDATE(),@tranStatus
|
|
|
|
EXEC proc_transactionLogs 'i', @user, @tranId, @message, 'Cancel Request'
|
|
IF @@TRANCOUNT > 0
|
|
COMMIT TRANSACTION
|
|
|
|
EXEC proc_errorHandler 0, 'Request for cancel done successfully', @controlNoEncrypted
|
|
|
|
EXEC proc_addCommentAPI @flag = 'i', @controlNo = @controlNo, @user = @user, @message = @message, @agentRefId = NULL
|
|
END
|
|
|
|
ELSE IF @flag = 'cancel'
|
|
BEGIN
|
|
DECLARE @TEMPTBL TABLE (ERRORCODE VARCHAR(5), MSG VARCHAR(MAX), ID VARCHAR(50))
|
|
-- @refund ='N' TREATED AS NORMAL / FULL RETUND --WHEN RT.Pagent IN( 221226) then (RT.cAmt-rt.serviceCharge)
|
|
DECLARE @sBranch INT, @pLocation INT, @pAgentComm MONEY, @cancelCharge MONEY, @returnAmt MONEY
|
|
, @idNumber VARCHAR(25),@accountType VARCHAR(20),@txnDate DATETIME, @schemeId VARCHAR(10), @holdTranId BIGINT, @schemePremium FLOAT, @email VARCHAR(100)
|
|
, @pAgent BIGINT
|
|
SELECT
|
|
@tranStatus = RT.tranStatus
|
|
,@sBranch = RT.sBranch
|
|
,@sAgent = RT.sAgent
|
|
,@pLocation = RT.pLocation
|
|
,@tAmt = RT.tAmt
|
|
,@returnAmt = (CASE WHEN ISNULL(@refund,'')='D' OR RT.Pagent IN( 221226,404522) then rt.tAmt else RT.cAmt end) - ISNULL(rt.schemePremium,0)
|
|
,@pAmt = RT.pAmt
|
|
,@tranId = RT.id
|
|
,@customerId = S.customerId
|
|
,@idNumber = S.idNumber
|
|
,@refund = case when RT.Pagent IN( 221226,404522) then 'D' else @refund end
|
|
,@accountType = rt.SrouteId
|
|
,@txnDate = rt.ApprovedDate
|
|
,@schemeId = RT.schemeId
|
|
,@holdTranId = RT.holdTranId
|
|
,@schemePremium = RT.schemePremium
|
|
,@email = S.email
|
|
,@pAgent = RT.pAgent
|
|
FROM remitTran RT WITH(NOLOCK)
|
|
INNER JOIN tranSenders S WITH(NOLOCK) ON S.tranId = RT.id
|
|
WHERE controlNo = @controlNoEncrypted
|
|
IF @user IS NULL
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Your session has expired. Cannot cancel transaction', NULL
|
|
RETURN
|
|
END
|
|
IF (@tranStatus IS NULL)
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction not found', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Paid')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction has already been paid', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Cancel')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction already been cancelled', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Hold' AND @pAgent NOT IN(590815,590852,393228,601361,601392)) ----EXCLUDE NI BANK
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction is hold. Transaction must be approved for cancellation.', NULL
|
|
RETURN
|
|
END
|
|
|
|
SET @cancelCharge = 0
|
|
|
|
BEGIN TRANSACTION
|
|
UPDATE remitTran SET
|
|
tranStatus = 'Cancel'
|
|
,cancelApprovedBy = @user
|
|
,cancelApprovedDate = GETDATE()
|
|
,cancelApprovedDateLocal = GETDATE()
|
|
,cancelReason = @cancelReason
|
|
,refund = @refund
|
|
WHERE controlNo = @controlNoEncrypted
|
|
|
|
IF @@TRANCOUNT > 0
|
|
COMMIT TRANSACTION
|
|
|
|
--SELECT @message = 'Cancel Request Approved'
|
|
SELECT @message = @cancelReason
|
|
EXEC proc_transactionLogs 'i', @user, @tranId, @message, 'Cancel Approved'
|
|
|
|
DECLARE @SMSBody VARCHAR(90) = 'Your GME transaction '+@controlNo+' was cancelled. Balance returned to your GME wallet.'
|
|
--IF @accountType = 'A' ----##AUTO DEBIT TRANSACTION
|
|
-- SET @SMSBody = 'Your GME transaction '+@controlNo+' was cancelled.Balance refunded to your account.'
|
|
DECLARE @Mobile VARCHAR(20)
|
|
|
|
----## SMS TO IDENTIFY EVERY CUSTOMRE
|
|
SELECT @Mobile = mobile
|
|
FROM FastMoneyPro_Remit.dbo.customerMaster (nolock)
|
|
WHERE customerId = @customerId
|
|
EXEC FastMoneyPro_Remit.dbo.proc_CallToSendSMS @FLAG = 'I',@SMSBody = @SMSBody,@MobileNo = @Mobile
|
|
|
|
DECLARE @ref_num VARCHAR(20),@tran_type CHAR(1) = 'T'
|
|
SET @tran_type = CASE WHEN YEAR(@txnDate) = 2018 THEN 'J' ELSE @tran_type END
|
|
|
|
SELECT TOP 1 @ref_num = t.ref_num FROM FastMoneyPro_Account.dbo.VW_PostedAccountDetail t(nolock)
|
|
WHERE field1 = @controlNo AND t.tran_type = @tran_type AND field2='remittance voucher' AND acct_type_code IS NULL
|
|
|
|
IF @ref_num IS NULL
|
|
BEGIN
|
|
--## generate voucher entry
|
|
INSERT INTO @tempTbl(errorcode, msg, id)
|
|
EXEC FastMoneyPro_Account.dbo.proc_transactionVoucherEntry @controlNo= @controlNo
|
|
|
|
SELECT TOP 1 @ref_num = t.ref_num FROM FastMoneyPro_Account.dbo.VW_PostedAccountDetail t(nolock)
|
|
WHERE field1 = @controlNo AND t.tran_type = @tran_type AND field2='remittance voucher' AND acct_type_code IS NULL
|
|
END
|
|
|
|
IF @ref_num is NOT null
|
|
BEGIN
|
|
IF @accountType = 'A' AND @txnDate < '2019-11-06'
|
|
SET @cancelReason =' old Cancellation and refund of '+@controlNo
|
|
ELSE
|
|
SET @cancelReason =' Cancellation and refund of '+@controlNo
|
|
|
|
IF @refund = 'N'
|
|
BEGIN
|
|
INSERT INTO @tempTbl(errorcode, msg, id)
|
|
EXEC FastMoneyPro_Account.dbo.proc_CancelTranVoucher @flag = 'TxnWithoutCharge',@refNum = @ref_num,@vType = @tran_type,@user = @user,@remarks = @cancelReason
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
----EXEC FastMoneyPro_Account.dbo.proc_EditVoucher @flag='REVERSE',@refNum =@ref_num,@vType = @tran_type,@User = @user,@remarks = @cancelReason
|
|
INSERT INTO @tempTbl(errorcode, msg, id)
|
|
EXEC FastMoneyPro_Account.dbo.proc_CancelTranVoucher @flag = 'TxnWithCharge',@refNum = @ref_num,@vType = @tran_type,@user = @user,@remarks = @cancelReason
|
|
END
|
|
|
|
SET @message = ' And voucher reversed successfully'
|
|
|
|
IF @accountType = 'W' ----##AUTOWALLET TRANSACTION
|
|
BEGIN
|
|
IF EXISTS(SELECT 'A' FROM customerMaster(NOLOCK) WHERE customerId = @customerId AND approvedDate IS NOT NULL)
|
|
BEGIN
|
|
UPDATE customermaster SET availableBalance = availableBalance + isnull(@returnAmt,0)
|
|
WHERE customerId = @customerId
|
|
END
|
|
END
|
|
ELSE IF @accountType = 'A' AND @txnDate>'2019-11-06'
|
|
BEGIN
|
|
IF EXISTS(SELECT 'A' FROM customerMaster(NOLOCK) WHERE customerId = @customerId AND approvedDate IS NOT NULL)
|
|
BEGIN
|
|
UPDATE customermaster SET availableBalance = availableBalance + isnull(@returnAmt,0)
|
|
WHERE customerId = @customerId
|
|
END
|
|
END
|
|
END
|
|
|
|
SET @message = 'Transaction Cancelled '+isnull(@message,'')
|
|
/*Reward entry for send txn*/
|
|
|
|
EXEC PROC_PointMasterDetails @flag='cancel',@customerId=@customerId,@tranId=@tranId
|
|
|
|
|
|
-------START cancel coupon
|
|
IF EXISTS(SELECT '1' FROM CouponIssue(NOLOCK) WHERE rowId = @schemeId)
|
|
BEGIN
|
|
DECLARE @LimitCount int, @CurrentCount int
|
|
|
|
SELECT @LimitCount = CS.usageLimit,
|
|
@CurrentCount = CI.usedCount
|
|
FROM CouponIssue(NOLOCK) AS CI
|
|
INNER JOIN CouponSetup(NOLOCK) AS CS
|
|
ON CI.couponId = CS.rowId
|
|
AND CI.rowId = @schemeId
|
|
|
|
UPDATE CouponIssue SET
|
|
usedCount = @CurrentCount - 1,
|
|
isActive = 'Y'
|
|
WHERE rowId = @schemeId
|
|
|
|
-------Start insert Coupon History
|
|
INSERT INTO CouponHistory (couponIssueId,customerId,actualDiscountValue,usedCount,holdTranId,couponStatus,createdBy,createdDate)
|
|
VALUES (@schemeId,@customerId,@schemePremium,@CurrentCount - 1,@holdTranId,'9',@email, GETDATE())
|
|
-------End insert Coupon History
|
|
END
|
|
-------END cancel coupon
|
|
EXEC [proc_errorHandler] 0, @message, @tranId
|
|
|
|
END
|
|
ELSE IF @flag = 'cancelReject'
|
|
BEGIN
|
|
BEGIN TRANSACTION
|
|
UPDATE remitTran SET
|
|
tranStatus = 'Payment'
|
|
WHERE controlNo = @controlNoEncrypted
|
|
|
|
SELECT @tranId = id FROM remitTran WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted
|
|
SELECT @message = 'Cancel Request for this transaction rejected'
|
|
EXEC proc_transactionLogs 'i', @user, @tranId, @message, 'Cancel Reject'
|
|
IF @@TRANCOUNT > 0
|
|
COMMIT TRANSACTION
|
|
|
|
EXEC proc_errorHandler 0, 'Cancel Request rejected successfully', @controlNoEncrypted
|
|
|
|
EXEC proc_addCommentAPI @flag = 'i', @controlNo = @controlNo, @user = @user, @message = @message, @agentRefId = NULL
|
|
END
|
|
ELSE IF @flag = 'detailsAgent'
|
|
BEGIN
|
|
--SELECT @agentId = agentId FROM applicationUsers WITH(NOLOCK) WHERE userName = @user
|
|
|
|
SELECT
|
|
@tranStatus = tranStatus,
|
|
@payStatus = payStatus
|
|
FROM remitTran WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted
|
|
|
|
IF (@tranStatus IS NOT NULL)
|
|
BEGIN
|
|
INSERT INTO tranViewHistory(
|
|
controlNumber
|
|
,tranViewType
|
|
,createdBy
|
|
,createdDate
|
|
)
|
|
SELECT
|
|
@controlNoEncrypted
|
|
,'C'
|
|
,@user
|
|
,GETDATE()
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
EXEC proc_errorHandler 1000, 'No Transaction Found', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
|
|
--IF NOT EXISTS(SELECT 'X' FROM remitTran WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted AND pBranch = @agentId)
|
|
--BEGIN
|
|
-- EXEC proc_errorHandler 1, 'Transaction is not in authorized mode', @controlNoEncrypted
|
|
-- RETURN
|
|
--END
|
|
IF (@tranStatus = 'Paid')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction has already been paid', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@payStatus = 'Paid')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction has already been paid', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'CancelRequest')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Cancel Request has already been sent', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Cancel')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction already been cancelled', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Lock')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction is locked. Please contact HO', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Block')
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Transaction is blocked. Please contact HO', @controlNoEncrypted
|
|
RETURN
|
|
END
|
|
--IF (@payStatus = 'Post')
|
|
--BEGIN
|
|
-- EXEC proc_errorHandler 1, 'Transaction is Post. Please contact Head Office.', @controlNoEncrypted
|
|
-- RETURN
|
|
--END
|
|
EXEC proc_errorHandler 0, 'Transaction Found', @controlNoEncrypted
|
|
SELECT
|
|
trn.id
|
|
,controlNo = dbo.FNADecryptString(trn.controlNo)
|
|
,sMemId = sen.membershipId
|
|
,sCustomerId = sen.customerId
|
|
,senderName = sen.firstName + ISNULL( ' ' + sen.middleName, '') + ISNULL( ' ' + sen.lastName1, '') + ISNULL( ' ' + sen.lastName2, '')
|
|
,sCountryName = sen.country
|
|
,sStateName = sen.state
|
|
,sDistrict = sen.district
|
|
,sCity = sen.city
|
|
,sAddress = sen.address
|
|
,sContactNo = COALESCE(sen.mobile, sen.homephone, sen.workphone)
|
|
|
|
,sIdType = sen.idType
|
|
,sIdNo = sen.idNumber
|
|
,sValidDate = sen.validDate
|
|
,sEmail = sen.email
|
|
|
|
,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 = rec.city
|
|
,rAddress = rec.address
|
|
,rContactNo = COALESCE(rec.mobile, rec.homephone, rec.workphone)
|
|
,rIdType = rec.idType
|
|
,rIdNo = rec.idNumber
|
|
|
|
,sBranchName = trn.sBranchName
|
|
,sAgentName = CASE WHEN trn.sAgent = trn.sBranch THEN trn.sSuperAgentName ELSE trn.sAgentName END
|
|
,sAgentLocation = sLoc.districtName
|
|
,sAgentDistrict = sa.agentDistrict
|
|
,sAgentCity = sa.agentCity
|
|
,sAgentCountry = sa.agentCountry
|
|
|
|
,pAgentName = CASE WHEN trn.pAgentName = trn.pBranchName THEN trn.pSuperAgentName ELSE trn.pAgentName END
|
|
,pBranchName = trn.pBranchName
|
|
,pAgentCountry = trn.pCountry
|
|
,pAgentState = trn.pState
|
|
,pAgentDistrict = trn.pDistrict
|
|
,pAgentLocation = pLoc.districtName
|
|
,pAgentCity = pa.agentCity
|
|
,pAgentAddress = pa.agentAddress
|
|
|
|
,trn.tAmt
|
|
,trn.serviceCharge
|
|
,handlingFee = ISNULL(trn.handlingFee, 0)
|
|
,trn.cAmt
|
|
,trn.pAmt
|
|
|
|
,relationship = ISNULL(trn.relWithSender, '-')
|
|
,purpose = ISNULL(trn.purposeOfRemit, '-')
|
|
,sourceOfFund = ISNULL(trn.sourceOfFund, '-')
|
|
,collMode = trn.collMode
|
|
,trn.collCurr
|
|
,paymentMethod = trn.paymentMethod
|
|
,trn.payoutCurr
|
|
,trn.tranStatus
|
|
,trn.payStatus
|
|
,payoutMsg = ISNULL(trn.pMessage, '-')
|
|
,trn.createdBy
|
|
,trn.createdDate
|
|
,trn.approvedBy
|
|
,trn.approvedDate
|
|
FROM remitTran trn WITH(NOLOCK)
|
|
LEFT JOIN tranSenders sen WITH(NOLOCK) ON trn.id = sen.tranId
|
|
LEFT JOIN tranReceivers 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 sLoc WITH(NOLOCK) ON sa.agentLocation = sLoc.districtCode
|
|
LEFT JOIN api_districtList pLoc WITH(NOLOCK) ON trn.pLocation = pLoc.districtCode
|
|
WHERE trn.controlNo = @controlNoEncrypted
|
|
|
|
END
|
|
|
|
ELSE IF @flag = 'cancelReceipt'
|
|
BEGIN
|
|
DECLARE @AccName NVARCHAR(100),@AccNo VARCHAR(30),@BankName NVARCHAR(100),@bankCode VARCHAR(5),@srouteId CHAR(1)
|
|
|
|
SELECT @controlNoEncrypted = DBO.fnaDecryptstring(Controlno),@tranStatus= tranStatus,@srouteId = sRouteId FROM remitTran(NOLOCK) WHERE ID = @tranId
|
|
|
|
IF @tranStatus <>'CANCEL'
|
|
BEGIN
|
|
SELECT '1' AS ERRORCODE,'Transaction status changed to '+@tranStatus MSG,@controlNoEncrypted as controlNo
|
|
RETURN
|
|
END
|
|
|
|
SELECT
|
|
controlNo = dbo.FNADecryptString(controlNo)
|
|
,'0' AS ERRORCODE
|
|
,postedBy = trn.sBranchName
|
|
,createdDate
|
|
,cancelDate = cancelApprovedDate
|
|
,sender = sen.firstName + ISNULL(' ' + sen.middleName, '') + ISNULL(' ' + sen.lastName1, '') + ISNULL(' ' + sen.lastName2, '')
|
|
,receiver = rec.firstName + ISNULL(' ' + rec.middleName, '') + ISNULL(' ' + rec.lastName1, '') + ISNULL(' ' + rec.lastName2, '')
|
|
,rContactNo = rec.mobile
|
|
,trn.collCurr
|
|
,trn.cAmt
|
|
,trn.serviceCharge
|
|
,trn.pAmt
|
|
,trn.cancelCharge
|
|
,returnAmt = CASE WHEN refund = 'D' THEN tAmt ELSE cAmt END
|
|
FROM remitTran trn WITH(NOLOCK)
|
|
INNER JOIN tranSenders sen WITH(NOLOCK) ON trn.id = sen.tranId
|
|
INNER JOIN tranReceivers rec WITH(NOLOCK) ON trn.id = rec.tranId
|
|
WHERE trn.id = @tranId
|
|
|
|
END
|
|
ELSE IF @flag = 's'
|
|
BEGIN
|
|
|
|
SET @table = '(
|
|
SELECT
|
|
trn.id
|
|
,controlNo = dbo.FNADecryptString(trn.controlNo)
|
|
,sCustomerId = sen.customerId
|
|
,senderName = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
|
|
,sCountryName = sen.country
|
|
,sStateName = sen.state
|
|
,sCity = sen.city
|
|
,sAddress = sen.address
|
|
,rCustomerId = rec.customerId
|
|
,receiverName = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
|
|
,rCountryName = rec.country
|
|
,rStateName = rec.state
|
|
,rCity = rec.city
|
|
,rAddress = rec.address
|
|
FROM remitTran trn WITH(NOLOCK)
|
|
LEFT JOIN tranSenders sen WITH(NOLOCK) ON trn.id = sen.tranId
|
|
LEFT JOIN tranReceivers rec WITH(NOLOCK) ON trn.id = rec.tranId
|
|
WHERE trn.tranStatus = ''CancelRequest'' and TranType =''D''
|
|
'
|
|
SET @sql_filter = ''
|
|
|
|
IF @controlNo IS NOT NULL
|
|
SET @table = @table + ' AND trn.controlNo = ''' + @controlNoEncrypted + ''''
|
|
|
|
IF @sFirstName IS NOT NULL
|
|
SET @table = @table + ' AND sen.firstName LIKE ''' + @sFirstName + '%'''
|
|
|
|
IF @sMiddleName IS NOT NULL
|
|
SET @table = @table + ' AND sen.middleName LIKE ''' + @sMiddleName + '%'''
|
|
|
|
IF @sLastName1 IS NOT NULL
|
|
SET @table = @table + ' AND sen.lastName1 LIKE ''' + @sLastName1 + '%'''
|
|
|
|
IF @sLastName2 IS NOT NULL
|
|
SET @table = @table + ' AND sen.lastName2 LIKE ''' + @sLastName2 + '%'''
|
|
|
|
IF @sMemId IS NOT NULL
|
|
SET @table = @table + ' AND sen.membershipId = ' + CAST(@sMemId AS VARCHAR)
|
|
|
|
IF @rFirstName IS NOT NULL
|
|
SET @table = @table + ' AND rec.firstName LIKE ''' + @rFirstName + '%'''
|
|
|
|
IF @rMiddleName IS NOT NULL
|
|
SET @table = @table + ' AND rec.middleName LIKE ''' + @rMiddleName + '%'''
|
|
|
|
IF @rLastName1 IS NOT NULL
|
|
SET @table = @table + ' AND rec.lastName1 LIKE ''' + @rLastName1 + '%'''
|
|
|
|
IF @rLastName2 IS NOT NULL
|
|
SET @table = @table + ' AND rec.lastName2 LIKE ''' + @rLastName2 + '%'''
|
|
|
|
IF @rMemId IS NOT NULL
|
|
SET @table = @table + ' AND c.membershipId = ' + CAST(@rMemId AS VARCHAR)
|
|
|
|
SET @select_field_list ='
|
|
id
|
|
,controlNo
|
|
,sCustomerId
|
|
,senderName
|
|
,sCountryName
|
|
,sStateName
|
|
,sCity
|
|
,sAddress
|
|
,rCustomerId
|
|
,receiverName
|
|
,rCountryName
|
|
,rStateName
|
|
,rCity
|
|
,rAddress
|
|
'
|
|
SET @table = @table + ') x'
|
|
|
|
EXEC dbo.proc_paging
|
|
@table
|
|
,@sql_filter
|
|
,@select_field_list
|
|
,@extra_field_list
|
|
,@sortBy
|
|
,@sortOrder
|
|
,@pageSize
|
|
,@pageNumber
|
|
END
|
|
|
|
ELSE IF @flag = 'checkCancleTxn'
|
|
BEGIN
|
|
SELECT
|
|
@tranStatus = tranStatus,
|
|
@tranType = tranType,
|
|
@tranId = id
|
|
FROM remitTran WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted
|
|
|
|
IF (@tranStatus IS NULL)
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Invalid transaction', @controlNo
|
|
RETURN
|
|
END
|
|
IF (@tranStatus = 'Cancel')
|
|
BEGIN
|
|
SELECT errorCode = 0, msg = 'Success', id = @controlNo, extra = @tranType, extra2 = @tranId
|
|
RETURN
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Invalid transaction', @controlNo
|
|
END
|
|
END
|