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.
128 lines
9.2 KiB
128 lines
9.2 KiB
USE [FastMoneyPro_Remit]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[PROC_SCHEDULAR_PUSH_TXN_COMMON] Script Date: 9/27/2019 1:30:14 PM ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
----EXEC [PROC_SCHEDULAR_PUSH_TXN_COMMON] @FLAG = 'PUSH-LIST',@PAYOUTPARTNERID=590814
|
|
|
|
CREATE PROC [dbo].[PROC_SCHEDULAR_PUSH_TXN_COMMON]
|
|
@FLAG VARCHAR(20),
|
|
@PAYOUTPARTNERID BIGINT,
|
|
@TRANID BIGINT = NULL,
|
|
@PartnerPin VARCHAR(20) = NULL,
|
|
@PartnerId VARCHAR(30) = NULL,
|
|
@ControlNo VARCHAR(20) = NULL,
|
|
@message NVARCHAR(500)= NULL
|
|
|
|
AS
|
|
SET NOCOUNT ON;
|
|
|
|
IF @FLAG = 'PUSH-LIST'
|
|
BEGIN
|
|
---- 590814:NI BANK,585209:THUNES
|
|
SELECT TOP 20 TranId = R.id, BaseUrl = p.BaseUrl,[Authorization] = p.AuthKey,ControlNo = ControlNo,PayoutPartner = @PAYOUTPARTNERID,DecryptedPIN = dbo.FNADecryptString(controlNo)
|
|
FROM remitTran(NOLOCK) R
|
|
INNER JOIN serviceTypeMaster M(NOLOCK) ON M.typeTitle = R.paymentMethod
|
|
INNER JOIN TblPartnerwiseCountry(NOLOCK) P ON P.AgentId = R.pSuperAgent AND P.PaymentMethod = M.serviceTypeId
|
|
WHERE R.pSuperAgent = @PAYOUTPARTNERID
|
|
AND tranStatus = 'PAYMENT' AND payStatus = 'UNPAID'
|
|
and r.pSuperAgent <> 590814
|
|
--and R.controlNo IN('QIJJKIIMOQO','QIONPLPKKMP','QIRPJMRMROP')
|
|
--AND 1=2
|
|
RETURN
|
|
END
|
|
ELSE IF @FLAG = 'POST'
|
|
BEGIN
|
|
IF ISNULL(@PartnerPin,'') = ''
|
|
SET @PartnerPin = DBO.FNADecryptString(@ControlNo)
|
|
|
|
UPDATE remitTran SET
|
|
payStatus = 'Post',
|
|
postedBy = 'system',
|
|
postedDate = GETDATE(),
|
|
postedDateLocal = GETUTCDATE(),
|
|
controlNo = dbo.FNAEncryptString(@PartnerPin),
|
|
controlNo2 = @ControlNo,
|
|
contNo = @PartnerId
|
|
WHERE ID = @TRANID AND pSuperAgent = @PAYOUTPARTNERID
|
|
AND tranStatus = 'PAYMENT' AND payStatus = 'UNPAID'
|
|
|
|
EXEC proc_errorHandler '0','SUCCESS',NULL
|
|
RETURN
|
|
END
|
|
ELSE IF @FLAG = 'SYNC-LIST'
|
|
BEGIN
|
|
|
|
SELECT TOP 50 TranId = R.id, BaseUrl = p.BaseUrl,[Authorization] = p.AuthKey
|
|
,ControlNo = CASE WHEN @PAYOUTPARTNERID =585209 THEN DBO.FNADecryptString(controlNo2) ELSE DBO.FNADecryptString(ControlNo) END
|
|
,[PayoutPartnerId] = @PAYOUTPARTNERID
|
|
FROM remitTran(NOLOCK) R
|
|
INNER JOIN serviceTypeMaster M(NOLOCK) ON M.typeTitle = R.paymentMethod
|
|
INNER JOIN TblPartnerwiseCountry(NOLOCK) P ON P.AgentId = R.pSuperAgent AND P.PaymentMethod = M.serviceTypeId
|
|
WHERE R.pSuperAgent = @PAYOUTPARTNERID
|
|
AND tranStatus = 'PAYMENT' AND payStatus = 'POST'
|
|
ORDER BY NEWID()
|
|
RETURN
|
|
END
|
|
ELSE IF @FLAG = 'PAID'
|
|
BEGIN
|
|
UPDATE remitTran SET
|
|
tranStatus = 'Paid',
|
|
payStatus = 'Paid',
|
|
paidBy = 'system',
|
|
paidDate = GETDATE(),
|
|
paidDateLocal = GETUTCDATE()
|
|
WHERE ID = @TRANID AND pSuperAgent = @PAYOUTPARTNERID
|
|
AND tranStatus = 'PAYMENT' AND payStatus = 'POST'
|
|
|
|
IF @PAYOUTPARTNERID = 590814
|
|
BEGIN
|
|
DECLARE @CustomerEmail VARCHAR(100),@Mobile varchar(20),@SMSBody VARCHAR(90),@refund char(1)
|
|
SELECT @CustomerEmail = createdBy,@ControlNo = DBO.FNADecryptString(controlNo) FROM remitTran(NOLOCK)
|
|
WHERE ID = @TRANID AND pSuperAgent = @PAYOUTPARTNERID
|
|
|
|
SELECT @Mobile = mobile FROM customerMaster(NOLOCK) WHERE email = @CustomerEmail
|
|
SET @Mobile = CASE WHEN LEFT(@Mobile,3) = '+82' THEN REPLACE(@Mobile,'+82','0') ELSE @Mobile END
|
|
SET @Mobile = CASE WHEN LEFT(@Mobile,2) = '82' THEN REPLACE(@Mobile,'82','0') ELSE @Mobile END
|
|
|
|
IF LEN(@Mobile) = 11
|
|
BEGIN
|
|
SET @SMSBody = 'Your GME transaction '+@ControlNo+' is successfully credited to beneficiary account.'
|
|
EXEC proc_CallToSendSMS @FLAG = 'I',@SMSBody= @SMSBody ,@MobileNo=@Mobile
|
|
END
|
|
END
|
|
|
|
EXEC proc_errorHandler '0','SUCCESS',NULL
|
|
RETURN
|
|
END
|
|
ELSE IF @FLAG = 'CANCEL'
|
|
BEGIN
|
|
|
|
DECLARE @srouteId CHAR(1),@controlNoEncrypted VARCHAR(20)
|
|
|
|
--IF @PROVIDER ='contact'
|
|
BEGIN
|
|
SELECT @controlNo = DBO.FNADecryptString(CONTROLNO),@srouteId = sRouteId,@controlNoEncrypted=controlNo
|
|
FROM remitTran(NOLOCK) WHERE id = @TRANID AND pSuperAgent = @PAYOUTPARTNERID
|
|
|
|
INSERT INTO tranModifyLog(tranId,controlNo,message,MsgType,createdBy,createdDate)
|
|
SELECT @tranId,@controlNoEncrypted,@message,'API Response','system',GETDATE()
|
|
|
|
--IF @srouteId = 'W'
|
|
--BEGIN
|
|
-- IF NOT EXISTS(SELECT 'A' FROM FastMoneyPro_Account.DBO.tran_master(NOLOCK) WHERE field1= @controlNo)
|
|
-- EXEC FastMoneyPro_Account.DBO.proc_transactionVoucherEntry @controlNo
|
|
|
|
-- --INSERT INTO @tempTbl(errorcode, msg, id)
|
|
-- EXEC [proc_cancelTran] @flag = 'cancel',@controlNo = @controlNo,@user = 'system',@cancelReason = @message,@refund = 'N'
|
|
|
|
-- EXEC [proc_cancelTran] @flag = 'cancelReceipt',@tranId = @TRANID,@user = 'system'
|
|
--END
|
|
--ELSE
|
|
UPDATE remitTran SET tranStatus='Hold' WHERE id = @TRANID AND pSuperAgent = @PAYOUTPARTNERID
|
|
END
|
|
END
|
|
GO
|