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.
127 lines
7.0 KiB
127 lines
7.0 KiB
USE [FastMoneyPro_Remit]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[ws_proc_FindTXNStatus] Script Date: 9/27/2019 1:30:14 PM ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
CREATE PROC [dbo].[ws_proc_FindTXNStatus](
|
|
@AGENT_CODE VARCHAR(50)
|
|
,@USER_ID VARCHAR(50)
|
|
,@PASSWORD VARCHAR(50)
|
|
,@AGENT_SESSION_ID VARCHAR(50)
|
|
,@PIN_NO VARCHAR(20)
|
|
,@SENDING_COUNTRY VARCHAR(100)
|
|
,@PAYOUT_COUNTRY VARCHAR(100)
|
|
)
|
|
AS
|
|
SET NOCOUNT ON;
|
|
SET XACT_ABORT ON;
|
|
|
|
|
|
IF @USER_ID IS NULL
|
|
BEGIN
|
|
SELECT '1001' CODE, 'USER_ID Field is Empty' MESSAGE, NULL id
|
|
RETURN
|
|
END
|
|
IF @AGENT_CODE IS NULL
|
|
BEGIN
|
|
SELECT '1001' CODE, 'AGENT_CODE Field is Empty' MESSAGE, NULL id
|
|
RETURN
|
|
END
|
|
|
|
IF @PASSWORD IS NULL
|
|
BEGIN
|
|
SELECT '1001' CODE, 'PASSWORD Field is Empty' MESSAGE, NULL id
|
|
RETURN
|
|
END
|
|
|
|
IF NOT EXISTS(select 'A' from applicationUsers(nolock) where username=@USER_ID and userType ='i'
|
|
AND agentCode = @AGENT_CODE AND pwd = @PASSWORD)
|
|
BEGIN
|
|
SELECT '1002' CODE,'Authentication Failed' MESSAGE, NULL id
|
|
RETURN
|
|
END
|
|
|
|
DECLARE @controlNoEnc VARCHAR(50) = dbo.FNAEncryptString(@PIN_NO)
|
|
DECLARE @errorTable TABLE(
|
|
AGENT_REFID VARCHAR(150)
|
|
,REFID VARCHAR(50)
|
|
,SENDER_NAME VARCHAR(100)
|
|
,RECEIVER_NAME VARCHAR(100)
|
|
,PAYOUT_AMT MONEY
|
|
,PAYOUT_CURRENCY VARCHAR(3)
|
|
,[STATUS] VARCHAR(30)
|
|
,STATUS_DATE VARCHAR(20)
|
|
)
|
|
|
|
INSERT INTO @errorTable (AGENT_REFID,REFID)
|
|
SELECT @AGENT_SESSION_ID,@PIN_NO
|
|
|
|
DECLARE
|
|
@sCountry VARCHAR(150),
|
|
@pCountry VARCHAR(150),
|
|
@agentId INT,
|
|
@branchId INT,
|
|
@tranId INT,
|
|
@tranStatus VARCHAR(50),
|
|
@txnSAgent INT,
|
|
@txnPAgent INT
|
|
|
|
SELECT @pCountry = countryName FROM countryMaster WITH(NOLOCK) WHERE countryCode = @PAYOUT_COUNTRY AND ISNULL(isDeleted,'N')='N'
|
|
SELECT @sCountry = countryName FROM countryMaster WITH(NOLOCK) WHERE countryCode = @SENDING_COUNTRY AND ISNULL(isDeleted,'N')='N'
|
|
|
|
SELECT
|
|
@tranId = id
|
|
,@tranStatus = tranStatus
|
|
,@txnSAgent = sAgent
|
|
,@txnPAgent = pAgent
|
|
FROM remitTran WITH(NOLOCK)
|
|
WHERE controlNo = @controlNoEnc
|
|
AND sCountry = @sCountry
|
|
AND pCountry = @pCountry
|
|
|
|
IF @tranStatus IS NULL
|
|
BEGIN
|
|
SELECT '1003' CODE, 'Invalid Transaction' MESSAGE, * FROM @errorTable
|
|
RETURN
|
|
END
|
|
|
|
IF @txnSAgent <> @agentId AND @txnPAgent <> @agentId
|
|
BEGIN
|
|
SELECT '1003' CODE, 'You are not allow to view this transaction' MESSAGE, * FROM @errorTable
|
|
RETURN
|
|
END
|
|
|
|
SELECT
|
|
CODE = '0',
|
|
AGENT_REFID = @AGENT_SESSION_ID,
|
|
MESSAGE = 'TXN Summary',
|
|
REFID = @PIN_NO,
|
|
SENDER_NAME = RT.senderName,
|
|
RECEIVER_NAME = RT.receiverName,
|
|
PAYOUT_AMT = RT.pAmt,
|
|
PAYOUT_CURRENCY = RT.payoutCurr,
|
|
[STATUS] = CASE WHEN RT.tranStatus='Payment' THEN 'Un-paid' ELSE RT.tranStatus END,
|
|
STATUS_DATE = CASE WHEN RT.payStatus='Paid' THEN RT.paidDate WHEN RT.tranStatus='Cancel' THEN RT.cancelApprovedDate END,
|
|
TOKEN_ID = ''
|
|
FROM remitTran RT WITH(NOLOCK)
|
|
WHERE RT.id = @tranId
|
|
UNION ALL
|
|
SELECT
|
|
CODE = '0' ,
|
|
AGENT_REFID = @AGENT_SESSION_ID,
|
|
MESSAGE = 'TXN Summary',
|
|
REFID = @PIN_NO,
|
|
SENDER_NAME = RT.senderName,
|
|
RECEIVER_NAME = RT.receiverName,
|
|
PAYOUT_AMT = RT.pAmt,
|
|
PAYOUT_CURRENCY = RT.payoutCurr,
|
|
[STATUS] = CASE WHEN RT.tranStatus='Payment' THEN 'Un-paid' ELSE RT.tranStatus END,
|
|
STATUS_DATE = CASE WHEN RT.payStatus='Paid' THEN RT.paidDate WHEN RT.tranStatus='Cancel' THEN RT.cancelApprovedDate END,
|
|
TOKEN_ID = ''
|
|
FROM cancelTranHistory RT WITH(NOLOCK)
|
|
WHERE RT.tranId = @tranId
|
|
|
|
|
|
GO
|