diff --git a/Deployment/V10/Backup/PROC_AUTO_APPROVE_TXN_JOB.sql b/Deployment/V10/Backup/PROC_AUTO_APPROVE_TXN_JOB.sql
new file mode 100644
index 0000000..38831ac
--- /dev/null
+++ b/Deployment/V10/Backup/PROC_AUTO_APPROVE_TXN_JOB.sql
@@ -0,0 +1,141 @@
+USE [FastMoneyPro_Remit]
+GO
+/****** Object: StoredProcedure [dbo].[PROC_AUTO_APPROVE_TXN_JOB] Script Date: 8/12/2024 4:33:25 AM ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+ALTER PROCEDURE [dbo].[PROC_AUTO_APPROVE_TXN_JOB]
+AS
+BEGIN
+ SET NOCOUNT ON;
+ SET XACT_ABORT ON;
+
+ BEGIN TRY
+ IF OBJECT_ID('tempdb..#tempTable') IS NOT NULL
+ DROP TABLE #tempTable;
+
+ DECLARE @MinAmt MONEY
+ DECLARE @tranId BIGINT
+ ,@remarks VARCHAR(100)
+ ,@controlNo VARCHAR(200)
+ ,@isactive varchar(1)
+
+ SELECT @MinAmt = ISNULL(detailTitle,300),@isactive=isActive
+ FROM staticDataValue
+ WHERE typeId = '10200'
+ AND detailDesc = 'TXN_LIMIT_FOR_AUTO_APPROVAL'
+
+
+ EXEC JobHistoryRecord @flag = 'i'
+ ,@job_name = 'PROC_AUTO_APPROVE_TXN_JOB'
+ ,@job_remarks = 'Auto Approved Txn'
+ ,@job_user = 'SYSTEM'
+ ,@job_value=@MinAmt
+ ,@old_value=@isactive
+
+ if(@isactive='N')
+ RETURN;
+
+ if(@MinAmt IS NULL)
+ RETURN;
+
+ CREATE TABLE #tempTable (
+ id BIGINT
+ ,controlNo VARCHAR(100)
+ ,amt MONEY
+ ,rowId INT
+ );
+
+ INSERT INTO #tempTable
+ SELECT id
+ ,controlNo
+ ,cAmt
+ ,rowId = 0
+ FROM remitTranTemp
+ WHERE tranStatus = 'Hold'
+ AND payStatus = 'Unpaid'
+ AND approvedBy IS NULL
+ AND tranType IN (
+ 'M'
+ ,'I'
+ )
+ AND verifiedBy IS NOT NULL
+ AND verifiedDate IS NOT NULL
+ --AND depositType='DEBIT_CARD'
+ AND ISNULL(sRouteId, 0) IN (
+ 0
+ ,'M'
+ )
+ AND cAmt <= @MinAmt
+
+ WHILE EXISTS (
+ SELECT TOP 1 1
+ FROM #tempTable
+ WHERE rowId = 0
+ )
+ BEGIN
+ SELECT @tranId = id
+ ,@controlNo = controlNo
+ FROM #tempTable(NOLOCK)
+ WHERE rowId = 0
+
+ CREATE TABLE #tempApprove (
+ errorCode VARCHAR(10)
+ ,Msg VARCHAR(MAX)
+ ,Id VARCHAR(50)
+ )
+
+ INSERT INTO #tempApprove (
+ errorCode
+ ,Msg
+ ,Id
+ )
+ EXEC proc_ApproveHoldedTXN @flag = 'approve'
+ ,@user = 'SYSTEM'
+ ,@id = @tranId
+
+ SET @remarks = 'Auto approved txn by job having less than ' + CONVERT(VARCHAR(50), @MinAmt) + ' GBP'
+
+ IF EXISTS (
+ SELECT *
+ FROM #tempApprove
+ WHERE errorCode = 0
+ )
+ BEGIN
+ INSERT INTO tranModifyLog (
+ tranId
+ ,controlNo
+ ,message
+ ,createdBy
+ ,createdDate
+ ,MsgType
+ )
+ SELECT @tranId
+ ,@controlNo
+ ,@remarks
+ ,'SYSTEM'
+ ,GETDATE()
+ ,'Auto Approved Transaction'
+
+
+ END
+
+ DROP TABLE #tempApprove
+
+ UPDATE #temptable
+ SET rowId = 1
+ WHERE id = @tranId
+ END
+ END TRY
+
+ BEGIN CATCH
+ DECLARE @errorMessage VARCHAR(MAX)
+
+ SET @errorMessage = ERROR_MESSAGE()
+
+ EXEC proc_errorHandler 1
+ ,@errorMessage
+ ,NULL
+ END CATCH
+END;
\ No newline at end of file
diff --git a/Deployment/V10/Backup/PROC_TP_TXN_PUSH.sql b/Deployment/V10/Backup/PROC_TP_TXN_PUSH.sql
new file mode 100644
index 0000000..7229997
--- /dev/null
+++ b/Deployment/V10/Backup/PROC_TP_TXN_PUSH.sql
@@ -0,0 +1,467 @@
+USE [FastMoneyPro_Remit]
+GO
+/****** Object: StoredProcedure [dbo].[PROC_TP_TXN_PUSH] Script Date: 8/12/2024 4:31:23 AM ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+
+
+--EXEC PROC_TP_TXN_PUSH @FLAG = 'GET-LIST'
+ALTER PROC [dbo].[PROC_TP_TXN_PUSH] (
+ @FLAG VARCHAR(30)
+ ,@TRAN_ID BIGINT = NULL
+ ,@PROVIDER VARCHAR(30) = NULL
+ ,@doSyncAll CHAR(1) = NULL
+ ,@statusDate DATETIME = NULL
+ ,@message VARCHAR(500) = NULL
+ ,@status VARCHAR(100) = NULL
+ ,@user VARCHAR(20) = NULL
+ ,@pCurrCostRate float =NULL
+ ,@control2 VARCHAR(30) = NULL
+ )
+AS
+SET NOCOUNT ON;
+SET XACT_ABORT ON;
+
+-- =============================================
+--Modified on: 2021/08/03 -> status date for Dongav2
+-- remove NEW_PAID_TRACK
+--Change Request #394 ->Remove Instant Pay for during ProcessBank Deposit
+-- Add BOC
+-- Brac
+--EXEC PROC_TP_TXN_PUSH @flag='add-api-comment',@PROVIDER = 'bracBank',@TRANID = '100644605',@ControlNo = '211298008',@message = 'Cancellation Completed',@status = '407'
+--Added new @Flag = 'INSTANT-PAID_V2' for manual pay
+-- =============================================
+BEGIN
+ IF ISDATE(@statusDate) = 0
+ SET @statusDate = NULL
+ DECLARE @CONTROLNO VARCHAR(30)
+ ,@TRANDATE VARCHAR(30)
+ ,@customerId VARCHAR(200)
+
+ IF @FLAG = 'GET-LIST'
+ BEGIN
+
+ SELECT ID
+ ,CONTROLNO = DBO.DECRYPTDB(rt.CONTROLNO) --+ DATEPART(SS,GETDATE())
+ INTO #REMIT_TT
+ FROM REMITTRAN(NOLOCK) rt
+ LEFT JOIN tranModifyLog (NOLOCK) tml ON tml.tranId = rt.id
+ WHERE 1 = 1
+ AND payStatus = 'unpaid'
+ AND tranStatus = 'Payment'
+ AND rt.CREATEDDATE >= '2020-02-15'
+ AND PSUPERAGENT IN (
+ 394397,394449,394502
+ )
+ AND rt.pCountry in('NEPAL','INDIA', 'PAKISTAN','Mongolia')
+ AND (tml.status <> 'Resolved' AND tml.fieldName ='STATUS_SYNC')
+
+
+ SELECT ID
+ ,CONTROLNO = DBO.DECRYPTDB(rt.CONTROLNO) --+ DATEPART(SS,GETDATE())
+ INTO #remit_unpaid
+ FROM REMITTRAN(NOLOCK) rt
+ WHERE 1 = 1
+ AND payStatus = 'unpaid'
+ AND tranStatus = 'Payment'
+ AND rt.CREATEDDATE >= '2020-02-15'
+ AND PSUPERAGENT IN (
+ 394397,394449,394502
+ )
+ AND rt.pCountry in('NEPAL','INDIA', 'PAKISTAN','Mongolia')
+
+
+ DELETE FROM #remit_unpaid WHERE id in(
+ select id FROM #REMIT_TT)
+
+ SELECT rt.ID
+ ,CONTROLNO = DBO.DECRYPTDB(rt.CONTROLNO) --+ DATEPART(SS,GETDATE())
+ ,PAYMENTMETHOD
+ ,PCOUNTRY
+ ,rt.CREATEDDATE
+ ,pbankname
+ ,pbank
+ ,pAmt
+ FROM REMITTRAN(NOLOCK) rt
+ INNER JOIN #remit_unpaid u on rt.id = u.id
+ ORDER BY rt.ID DESC
+ -- update remitTran set tranStatus='Payment', payStatus='unpaid' where controlNo = dbo.FNAEncryptString('211744466')
+ END
+ ELSE IF @FLAG = 'UPDATE-POST'
+ BEGIN
+ UPDATE dbo.remitTran
+ SET payStatus = 'POST'
+ ,postedBy = 'Scheduler'
+ ,postedDate = GETDATE()
+ ,postedDateLocal = GETDATE()
+ ,pDateCostRate=@pCurrCostRate
+ ,controlno2= CASE WHEN @control2 IS NOT NULL THEN dbo.encryptdb(@control2) ELSE controlno2 END
+ WHERE id = @TRAN_ID
+ END
+ ELSE IF @FLAG = 'UPDATE-POST_RELEASE'
+ BEGIN
+ UPDATE dbo.remitTran
+
+ SET
+ --controlno2= CASE WHEN @control2 IS NOT NULL THEN dbo.encryptdb(@control2) ELSE controlno2 END
+ downloadedDate=GETDATE()
+ WHERE id = @TRAN_ID
+ END
+ ELSE IF @FLAG = 'mark-paid'
+ BEGIN
+ DECLARE @statusDateOld DATETIME = CAST(@statusDate AS DATETIME)
+
+ --IF @PROVIDER = 'jmenepal'
+ -- AND @statusDate IS NOT NULL
+ -- SET @statusDate = DATEADD(HOUR, - 5, DATEADD(MINUTE, - 45, @statusDate))
+ IF @PROVIDER = 'gmenepal'
+ AND @statusDate IS NOT NULL
+ SET @statusDate = DATEADD(HOUR, - 5, DATEADD(MINUTE, - 45, @statusDate))
+
+
+ ELSE IF @PROVIDER = 'gccremit'
+ AND @statusDate IS NOT NULL
+ SET @statusDate = DATEADD(HOUR, - 5, DATEADD(MINUTE, - 45, @statusDate))
+
+ ELSE IF @PROVIDER = 'sendMN'
+ AND @statusDate IS NOT NULL
+ SET @statusDate = DATEADD(HOUR, - 5, DATEADD(MINUTE, - 45, @statusDate))
+
+
+ UPDATE dbo.remitTran
+ SET tranStatus = 'Paid'
+ ,payStatus = 'Paid'
+ ,paidBy = 'SchedulerJob'
+ ,paidDate = GETDATE()
+ ,paidDateLocal = ISNULL(@statusDate, DATEADD(HOUR, - 9, GETDATE())) -- GMT FORMAT
+ WHERE id = @TRAN_ID
+
+ SELECT @CONTROLNO = DBO.DECRYPTDB(CONTROLNO)
+ ,@TRANDATE = PAIDDATE
+ FROM dbo.remitTran(NOLOCK)
+ WHERE id = @TRAN_ID
+
+ UPDATE tranModifyLog set resolvedBy='Scheduler', resolvedDate=GETDATE(), status='Resolved' WHERE tranId=@TRAN_ID and fieldname='STATUS_SYNC'
+
+ DECLARE @senderId INT;
+ SELECT @senderId=customerId FROM dbo.transenders (NOLOCK)
+ WHERE tranId = @TRAN_ID
+
+ PRINT @senderId
+ PRINT @TRAN_ID
+
+ DECLARE @referralId VARCHAR(100)
+ SELECT @referralId = ISNULL(referralId, referelCode) FROM customerMaster WHERE @customerId = @senderId
+
+ IF (LEFT(@referralId, 3) NOT IN ('MOB', 'ADM', 'CRP', 'ONL'))
+ BEGIN
+ EXEC proc_InsertRewardPoints @Flag = 'TRANSACTION', @CustomerId = @senderId, @TranId = @TRAN_ID
+ END
+ ELSE
+ BEGIN
+ EXEC proc_InsertReferralRewardPoints @Flag = 'TRANSACTION', @CustomerId = @senderId, @TranId = @TRAN_ID
+
+ IF NOT EXISTS (
+ (SELECT 'X' FROM tranSenders WHERE customerId = @senderId) UNION (SELECT 'X' FROM tranSendersTemp WHERE customerId = @senderId))
+ BEGIN
+ EXEC proc_InsertRewardPoints @Flag = 'TRANSACTION', @CustomerId = @senderId, @TranId = @TRAN_ID
+ END
+ END
+
+ EXEC FASTMONEYPRO_ACCOUNT.DBO.PROC_TRANSACTION_PAID_VOUCHER_ENTRY @controlNo = @CONTROLNO
+ ,@tranDate = @TRANDATE
+ --IF EXISTS(SELECT 1 FROM FASTMONEYPRO_ACCOUNT.DBO.TRAN_MASTER (NOLOCK) WHERE FIELD1 = @controlNo AND tran_type = 'j' AND FIELD2 = 'Remittance Voucher'
+ -- AND ISNULL(ACCT_TYPE_CODE, 'Send') = 'Paid')
+ --BEGIN
+ -- UPDATE FASTMONEYPRO_ACCOUNT.DBO.TRAN_MASTER SET TRAN_DATE = @TRANDATE
+ -- WHERE FIELD1 = @controlNo
+ -- AND tran_type = 'j'
+ -- AND FIELD2 = 'Remittance Voucher'
+ -- AND ISNULL(ACCT_TYPE_CODE, 'Send') = 'Paid'
+ --END
+ END
+ ELSE IF @FLAG = 'sync-list'
+ BEGIN
+ IF ISNULL(@doSyncAll, 'N') = 'N'
+ BEGIN
+
+
+ IF @PROVIDER = 'gccremit'
+ BEGIN
+ SELECT TOP 75 id
+ ,controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,pSuperAgent
+ ,PCOUNTRY
+ ,partnerPin = DBO.DECRYPTDB(CONTROLNO2)
+ ,createdDate
+ ,paymentMethod
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-02-15'
+ AND payStatus = 'Post'
+ AND TRANSTATUS = 'Payment'
+ AND PSUPERAGENT = 394449
+ ORDER BY ID DESC
+ --AND id=dbo.fnaencryptstring('211517849')
+ END
+
+ IF @PROVIDER = 'sendMN'
+ BEGIN
+ SELECT TOP 75 id
+ ,controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,pSuperAgent
+ ,PCOUNTRY
+ ,partnerPin = DBO.DECRYPTDB(CONTROLNO2)
+ ,createdDate
+ ,paymentMethod
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-02-15'
+ AND payStatus = 'Post'
+ AND TRANSTATUS = 'Payment'
+ AND PSUPERAGENT = 394502
+ ORDER BY ID DESC
+ --AND id=dbo.fnaencryptstring('211517849')
+ END
+ IF @PROVIDER = 'sendMN'
+ BEGIN
+ SELECT id
+ ,controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,pSuperAgent
+ ,PCOUNTRY
+ ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
+ ,paymentMethod
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-03-31'
+ AND payStatus = 'Post'
+ AND TRANSTATUS = 'Payment'
+ AND PSUPERAGENT = 394502
+ END
+ ELSE IF @PROVIDER = 'transfast'
+ BEGIN
+ SELECT TOP 50 id
+ ,controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,pSuperAgent
+ ,PCOUNTRY
+ ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
+ ,createdDate
+ ,paymentMethod
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-02-15'
+ --AND PCOUNTRY NOT IN ('NEPAL','VIETNAM')
+ AND payStatus = 'Post'
+ AND TRANSTATUS = 'Payment'
+ AND PSUPERAGENT = 394130
+ --AND ID NOT IN (SELECT TRAN_ID FROM NEW_PAID_TRACK_NEW)
+ --AND id = 100466789
+ --AND CONTROLNO = DBO.FNAENCRYPTSTRING('33TF001950961')
+ ORDER BY ID DESC
+ END
+ ELSE IF @PROVIDER = 'gmenepal'
+ BEGIN
+ SELECT TOP 75 id
+ ,controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,pSuperAgent
+ ,PCOUNTRY
+ ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
+ ,createdDate
+ ,paymentMethod
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-02-15'
+ AND payStatus = 'Post'
+ AND TRANSTATUS = 'Payment'
+ AND PSUPERAGENT = 394397
+ ORDER BY ID DESC
+ END
+
+ END
+ ELSE
+ BEGIN
+
+ IF @PROVIDER = 'transfast'
+ BEGIN
+ SELECT id
+ ,controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,pSuperAgent
+ ,PCOUNTRY
+ ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
+ ,paymentMethod
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-03-31'
+ AND payStatus = 'Post'
+ AND TRANSTATUS = 'Payment'
+ AND PSUPERAGENT = 394130
+ END
+ ELSE IF @PROVIDER = 'gmenepal'
+ BEGIN
+ SELECT id
+ ,controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,pSuperAgent
+ ,PCOUNTRY
+ ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
+ ,createdDate
+ ,paymentMethod
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-02-15'
+ AND payStatus = 'Post'
+ AND TRANSTATUS = 'Payment'
+ AND PSUPERAGENT = 394397
+ ORDER BY ID DESC
+ END
+
+
+ END
+ END
+ ELSE IF @Flag = 'GET-RELEASE-LIST'
+ BEGIN
+ SELECT ID
+ ,CONTROLNO = DBO.DECRYPTDB(CONTROLNO)
+ ,CONTROLNO2 = DBO.DECRYPTDB(CONTROLNO2)
+ ,PAYMENTMETHOD
+ ,PCOUNTRY
+ ,CREATEDDATE
+ ,pbankname
+ ,pbank
+ ,sSuperAgent = pSuperAgent
+ ,[partner] = 'gccremit'
+ ,pagentcomm
+ FROM REMITTRAN(NOLOCK)
+ WHERE 1 = 1
+ AND CREATEDDATE >= '2020-03-31'
+ AND payStatus = 'POST'
+ AND tranStatus = 'Payment'
+ AND PSUPERAGENT = 394449
+ and downloadedDate IS NULL
+ ORDER BY ID DESC
+ END
+ ELSE IF @Flag = 'INSTANT-PAID'
+ BEGIN
+ --UPDATE dbo.remitTran SET tranStatus = 'Paid',
+ -- payStatus = 'Paid',
+ -- paidBy = 'Scheduler',
+ -- paidDate = GETDATE(),
+ -- paidDateLocal = DATEADD(HOUR, -9, GETDATE()) -- GMT FORMAT
+ --WHERE id = @TRAN_ID
+ --SELECT @CONTROLNO = DBO.DECRYPTDB(CONTROLNO),
+ -- @TRANDATE = PAIDDATE
+ --FROM dbo.remitTran (NOLOCK)
+ --WHERE id = @TRAN_ID
+ --EXEC FASTMONEYPRO_ACCOUNT.DBO.PROC_TRANSACTION_PAID_VOUCHER_ENTRY @controlNo = @CONTROLNO, @tranDate = @TRANDATE
+ UPDATE dbo.remitTran
+ SET payStatus = 'POST'
+ ,postedBy = 'Scheduler'
+ ,postedDate = GETDATE()
+ ,postedDateLocal = GETDATE()
+ WHERE id = @TRAN_ID
+ END
+ --ELSE IF @Flag = 'INSTANT-PAID'
+ --BEGIN
+ -- --UPDATE dbo.remitTran SET tranStatus = 'Paid',
+ -- UPDATE dbo.remitTran
+ -- SET payStatus = 'POST'
+ -- ,postedBy = 'Scheduler'
+ -- ,postedDate = GETDATE()
+ -- ,postedDateLocal = GETDATE()
+ -- WHERE id = @TRAN_ID
+ --END
+ ELSE IF @Flag = 'add-api-comment'
+ BEGIN
+ SELECT @CONTROLNO = (CONTROLNO)
+ ----,@TRANDATE = PAIDDATE
+ FROM dbo.remitTran(NOLOCK)
+ WHERE id = @TRAN_ID
+
+ IF NOT EXISTS (
+ SELECT *
+ FROM tranModifyLog
+ WHERE tranId = @TRAN_ID
+ AND fieldName = 'STATUS_SYNC'
+ AND ISNULL(oldValue,'') = @status
+ )
+ BEGIN
+ INSERT INTO tranModifyLog (
+ tranId
+ ,controlNo
+ ,message
+ ,createdBy
+ ,createdDate
+ ,MsgType
+ ,STATUS
+ ,needToSync
+ ,fieldName
+ ,oldValue
+ )
+ SELECT @TRAN_ID
+ ,@CONTROLNO
+ ,@message
+ ,ISNULL(@user,'syncApi')
+ ,GETDATE()
+ ,'C'
+ ,'Not Resolved'
+ ,1
+ ,'STATUS_SYNC'
+ ,@status
+ END
+ ELSE
+ BEGIN
+ UPDATE tranModifyLog set message= @message, createdDate= GETDATE() WHERE tranId = @TRAN_ID AND fieldName = 'STATUS_SYNC'
+ AND ISNULL(oldValue,'') = @status
+ END
+ SELECT '0' ErrorCode, 'Comment Added' Msg, 0 Id
+ END
+ ELSE IF @Flag = 'INSTANT-PAID_V2'
+ BEGIN
+ IF EXISTS ( SELECT 'X' FROM remitTran where id = @TRAN_ID and tranStatus in ('Cancel','Paid'))
+ BEGIN
+ SELECT '0' ErrorCode, 'Invalid Transaction Status!' Msg, 0 Id
+ RETURN
+ END
+ SELECT @customerId = customerId FROM tranSenders WHERE tranId = @TRAN_ID
+ DECLARE @refId VARCHAR(100)
+ SELECT @customerId = customerId FROM vwTranSenders WHERE tranId = @TRAN_ID OR holdTranId = @TRAN_ID
+
+ SELECT @refId = ISNULL(referralId,referelCode) FROM customerMaster WHERE customerId = @customerId
+
+ UPDATE dbo.remitTran SET tranStatus = 'Paid',
+ payStatus = 'Paid',
+ paidBy = 'Manual',
+ paidDate =GETDATE(),
+ paidDateLocal = DATEADD(HOUR, 1, GETDATE()) -- GMT FORMAT
+ WHERE id = @TRAN_ID and (tranStatus <> 'CANCEL' OR payStatus <> 'PAID')
+
+ IF (LEFT(@referralId, 3) NOT IN ('MOB', 'ADM', 'CRP', 'ONL'))
+ BEGIN
+ EXEC proc_InsertRewardPoints @Flag = 'TRANSACTION', @CustomerId = @customerId, @TranId = @TRAN_ID
+ END
+ ELSE
+ BEGIN
+ EXEC proc_InsertReferralRewardPoints @Flag = 'TRANSACTION', @CustomerId = @customerId, @TranId = @TRAN_ID, @ReferralId = @refId
+
+ IF NOT EXISTS (
+ (SELECT 'X' FROM tranSenders WHERE customerId = @customerId) UNION (SELECT 'X' FROM tranSendersTemp WHERE customerId = @customerId))
+ BEGIN
+ EXEC proc_InsertRewardPoints @Flag = 'TRANSACTION', @CustomerId = @customerId, @TranId = @TRAN_ID
+ END
+ END
+
+ EXEC proc_InsertRewardPoints @Flag = 'TRANSACTION', @CustomerId = @customerId, @TranId = @TRAN_ID
+
+ SELECT '0' ErrorCode, 'Transaction paid successfully' Msg, 0 Id
+ END
+END
+ --CREATE TABLE NEW_PAID_TRACK
+ --(
+ -- TRAN_ID BIGINT
+ -- ,PARTNER_NAME VARCHAR(50)
+ -- ,PAIDDATE DATETIME
+ -- ,PAIDDATE_LOCAL DATETIME
+ -- ,ORIGINAL_DATE DATETIME
+ --)
+
diff --git a/Deployment/V10/Backup/proc_ApproveHoldedTXN.sql b/Deployment/V10/Backup/proc_ApproveHoldedTXN.sql
new file mode 100644
index 0000000..2e9c301
--- /dev/null
+++ b/Deployment/V10/Backup/proc_ApproveHoldedTXN.sql
@@ -0,0 +1,2260 @@
+USE [FastMoneyPro_Remit]
+GO
+/****** Object: StoredProcedure [dbo].[proc_ApproveHoldedTXN] Script Date: 8/12/2024 4:32:30 AM ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+
+ALTER PROC [dbo].[proc_ApproveHoldedTXN] (
+ @flag VARCHAR(50)
+ ,@user VARCHAR(130)
+ ,@userType VARCHAR(10) = NULL
+ ,@branch VARCHAR(50) = NULL
+ ,@id VARCHAR(40) = NULL
+ ,@country VARCHAR(50) = NULL
+ ,@sender VARCHAR(50) = NULL
+ ,@receiver VARCHAR(50) = NULL
+ ,@amt MONEY = NULL
+ ,@bank VARCHAR(50) = NULL
+ ,@voucherNo VARCHAR(50) = NULL
+ ,@branchId INT = NULL
+ ,@pin VARCHAR(50) = NULL
+ ,@errorCode VARCHAR(10) = NULL
+ ,@msg VARCHAR(500) = NULL
+ ,@idList XML = NULL
+ ,@txnDate VARCHAR(20) = NULL
+ ,@txncreatedBy VARCHAR(50) = NULL
+ ,@xml VARCHAR(MAX) = NULL
+ ,@remarks VARCHAR(MAX) = NULL
+ ,@settlingAgentId INT = NULL
+ ,@ControlNo VARCHAR(50) = NULL
+ ,@txnType VARCHAR(1) = NULL
+ ,@sendCountry VARCHAR(50) = NULL
+ ,@sendAgent VARCHAR(50) = NULL
+ ,@sendBranch VARCHAR(50) = NULL
+ ,@approvedFrom VARCHAR(10) = NULL
+ ,@tpControlNo1 VARCHAR(30) = NULL
+ ,@tpControlNo2 VARCHAR(30) = NULL
+ ,@isTxnRealtime BIT = NULL
+ ,@isSystemReject BIT = NULL
+ ,@cancelReason VARCHAR(150) = NULL
+ ,@cancelDate VARCHAR(20) = NULL
+ ,@downlodedBy VARCHAR(50) = NULL
+ )
+AS
+--#298 Trim white space of Control number and TranId
+--#101 - Mobile Changes
+-- #652 - collected by ddl in verify transaction
+--#618: Bank Deposit details not displayed.
+-- #1135 pushNotificationHistroy
+-- #739 Ime pay
+BEGIN TRY
+ DECLARE @table VARCHAR(MAX)
+ ,@sql VARCHAR(MAX)
+ ,@sqlSelfTxn VARCHAR(MAX)
+ ,@sRouteId VARCHAR(5)
+ ,@collMode VARCHAR(100)
+
+ SET NOCOUNT ON;
+ SET XACT_ABORT ON;
+
+ DECLARE @pinEncrypted VARCHAR(50) = dbo.FNAEncryptString(@pin)
+ ,@cAmt MONEY
+ ,@userId INT
+ ,@createdBy VARCHAR(50)
+ ,@tranStatus VARCHAR(50)
+ ,@message VARCHAR(200)
+ ,@sBranch BIGINT
+ ,@invicePrintMethod VARCHAR(50)
+ ,@parentId BIGINT
+ ,@tablesql AS VARCHAR(MAX)
+ ,@branchList VARCHAR(MAX)
+ ,@denyAmt MONEY
+ ,@C2CAgentID VARCHAR(30) = '1045'
+ ,@REAgentID VARCHAR(30) = '1100'
+ ,@transactionType CHAR(1) = NULL
+ ,@controlNo2 VARCHAR(20)
+
+ IF @pin IS NULL
+ BEGIN
+ SELECT @pin = dbo.FNADecryptString(controlNo)
+ ,@pinEncrypted = controlNo
+ FROM remitTranTemp WITH (NOLOCK)
+ WHERE id = @id
+ END
+ ELSE
+ BEGIN
+ SET @pinEncrypted = dbo.FNAEncryptString(UPPER(LTRIM(RTRIM(@pin))))
+ END
+
+ DECLARE @PinList TABLE (
+ id VARCHAR(50)
+ ,pin VARCHAR(50)
+ ,hasProcess CHAR(1)
+ ,isOFAC CHAR(1)
+ ,errorMsg VARCHAR(MAX)
+ ,tranId INT
+ ,createdBy VARCHAR(50)
+ )
+ DECLARE @TempcompTable TABLE (
+ errorCode INT
+ ,msg VARCHAR(MAX)
+ ,id VARCHAR(50)
+ )
+ DECLARE @isSelfApprove VARCHAR(1)
+
+ IF @flag = 'provider'
+ BEGIN
+ DECLARE @pAgent INT
+
+ SELECT @pAgent = pAgent
+ FROM remitTranTemp WITH (NOLOCK)
+ WHERE id = @id
+
+ IF @pAgent IS NULL
+ BEGIN
+ SELECT @pAgent = pAgent
+ FROM vwremitTran WITH (NOLOCK)
+ WHERE id = @id
+ END
+
+ SELECT @pAgent pAgent
+
+ RETURN
+ END
+
+ IF @flag = 'get-info'
+ BEGIN
+ IF NOT EXISTS (
+ SELECT *
+ FROM REMITTRANTEMP(NOLOCK)
+ WHERE ID = @id
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction Not Found!'
+ ,@id
+
+ RETURN
+ END
+
+ DECLARE @partnerId INT
+ ,@isRealTime BIT
+ ,@pcountry INT
+
+
+ SELECT @partnerId = pSuperAgent
+ ,@pcountry = CM.COUNTRYID
+ ,@controlNo = DBO.DECRYPTDB(CONTROLNO)
+ FROM REMITTRANTEMP(NOLOCK) RTT
+ INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = RTT.PCOUNTRY
+ WHERE ID = @id
+
+ SELECT @isRealTime = CASE
+ WHEN @partnerId = '394397'
+ THEN 0
+ ELSE isRealTime
+ END
+ FROM TblPartnerwiseCountry(NOLOCK)
+ WHERE AgentId = @partnerId
+ AND COUNTRYID = @pcountry
+
+ SELECT 0
+ ,@partnerId
+ ,@controlNo
+ ,@isRealTime
+ ,[provide] = CASE
+ WHEN @partnerId = '393880'
+ THEN 'jmenepal'
+ WHEN @partnerId = '394130'
+ THEN 'transfast'
+ WHEN @partnerId = '394132'
+ THEN 'donga'
+ WHEN @partnerId = '394397'
+ THEN 'gmenepal'
+ ELSE 'unknown'
+ END
+ END
+
+ IF @flag = 'get-info-imepay'
+ BEGIN
+ IF NOT EXISTS (
+ SELECT *
+ FROM REMITTRANTEMP(NOLOCK)
+ WHERE ID = @id
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction Not Found!'
+ ,@id
+
+ RETURN
+ END
+
+ SELECT @partnerId = pSuperAgent
+ ,@pcountry = CM.COUNTRYID
+ ,@controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,@controlNo2 = DBO.DECRYPTDB(CONTROLNO2)
+ FROM REMITTRANTEMP(NOLOCK) RTT
+ INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = RTT.PCOUNTRY
+ WHERE ID = @id
+
+ IF EXISTS (
+ SELECT 'X'
+ FROM remitTranTemp RT(NOLOCK)
+ INNER JOIN API_BANK_LIST AB(NOLOCK) ON AB.BANK_ID = RT.PBANK
+ WHERE RT.ID = @id
+ AND AB.BANK_CODE1 IN ( 'IMEPAY','KHALTI')
+ AND RT.paymentMethod = 'MOBILE WALLET'
+ )
+ BEGIN
+ --mark realtime to confirm in approve click
+ SELECT 0
+ ,'Success'
+ ,@controlNo
+ ,@controlNo2
+ ,@partnerId
+ ,'True'
+ END
+ ELSE
+ BEGIN
+ SELECT 0
+ ,'Success'
+ ,@controlNo
+ ,@controlNo2
+ ,@partnerId
+ ,'False'
+ END
+ END
+
+ IF @flag = 'get-info-c-no'
+ BEGIN
+ DECLARE @ControlNoEnc VARCHAR(30) = DBO.FNAENCRYPTSTRING(@controlNo)
+ ,@payStatus VARCHAR(50)
+ ,@tranId BIGINT
+ ,@lockStatus VARCHAR(50)
+
+ SELECT @partnerId = pSuperAgent
+ ,@pcountry = CM.COUNTRYID
+ ,@controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,@tranStatus = tranStatus
+ ,@payStatus = payStatus
+ ,@tranId = id
+ ,@lockStatus = lockStatus
+ ,@cancelDate = ISNULL(cancelRequestDate, GETDATE())
+ FROM VWREMITTRAN(NOLOCK) RTT
+ INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = RTT.PCOUNTRY
+ WHERE controlNo = @ControlNoEnc
+
+ SELECT @isRealTime = isRealTime
+ FROM TblPartnerwiseCountry(NOLOCK)
+ WHERE AgentId = @partnerId
+ AND COUNTRYID = @pcountry
+
+ IF (@tranStatus IS NULL)
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction not found'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@tranStatus = 'Block')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction is blocked. Please Contact HO'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@tranStatus = 'Paid')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction has already been paid'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@payStatus = 'Paid')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction has already been paid'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@tranStatus = 'Cancel')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction has already been cancelled'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ SELECT 0
+ ,@partnerId
+ ,@controlNo
+ ,@isRealTime
+ ,[provide] = CASE
+ WHEN @partnerId = '393880'
+ THEN 'jmenepal'
+ WHEN @partnerId = '394130'
+ THEN 'transfast'
+ WHEN @partnerId = '394132'
+ THEN 'donga'
+ WHEN @partnerId = '394428'
+ THEN 'Cebuana'
+ ELSE 'unknown'
+ END
+ END
+
+ IF @flag = 'cancel-request'
+ BEGIN
+ SET @ControlNoEnc = DBO.FNAENCRYPTSTRING(@controlNo)
+
+ SELECT @partnerId = pSuperAgent
+ ,@pcountry = CM.COUNTRYID
+ ,@controlNo = DBO.DECRYPTDB(CONTROLNO)
+ ,@tranStatus = tranStatus
+ ,@payStatus = payStatus
+ ,@tranId = id
+ ,@lockStatus = lockStatus
+ ,@cancelDate = ISNULL(cancelRequestDate, GETDATE())
+ FROM VWREMITTRAN(NOLOCK) RTT
+ INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = RTT.PCOUNTRY
+ WHERE controlNo = @ControlNoEnc
+
+ IF (@tranStatus IS NULL)
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction not found'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@tranStatus = 'Block')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction is blocked. Please Contact HO'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@tranStatus = 'Paid')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction has already been paid'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@payStatus = 'Paid')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction has already been paid'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@tranStatus = 'Cancel')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction has already been cancelled'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ IF (@tranStatus = 'CancelRequest')
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Cancel Request has already been sent'
+ ,@ControlNoEnc
+
+ RETURN
+ END
+
+ --BEGIN TRANSACTION
+
+ IF EXISTS (
+ SELECT *
+ FROM REMITTRANTEMP(NOLOCK)
+ WHERE controlNo = @ControlNoEnc
+ )
+ BEGIN
+ UPDATE remitTranTEMP
+ SET tranStatus = 'CancelRequest' --Transaction Hold
+ ,trnStatusBeforeCnlReq = tranStatus
+ ,cancelRequestBy = @user
+ ,cancelRequestDate = GETDATE()
+ ,cancelRequestDateLocal = GETDATE()
+ ,cancelReason = @cancelReason
+ WHERE controlNo = @ControlNoEnc
+ END
+ ELSE
+ BEGIN
+ UPDATE remitTran
+ SET tranStatus = 'CancelRequest' --Transaction Hold
+ ,trnStatusBeforeCnlReq = tranStatus
+ ,cancelRequestBy = @user
+ ,cancelRequestDate = GETDATE()
+ ,cancelRequestDateLocal = GETDATE()
+ ,cancelReason = @cancelReason
+ WHERE controlNo = @ControlNoEnc
+ END
+
+ SELECT @message = 'Transaction requested for Cancel. Reason : ''' + @cancelReason + ''''
+
+ INSERT INTO tranCancelrequest (
+ tranId
+ ,controlNo
+ ,cancelReason
+ ,cancelStatus
+ ,createdBy
+ ,createdDate
+ ,tranStatus
+ )
+ SELECT @tranId
+ ,@ControlNoEnc
+ ,@cancelReason
+ ,'CancelRequest'
+ ,@user
+ ,GETDATE()
+ ,@tranStatus
+
+ --IF @@TRANCOUNT > 0
+ -- COMMIT TRANSACTION
+
+ EXEC proc_errorHandler 0
+ ,'Request for cancel done successfully'
+ ,@ControlNoEnc
+
+ EXEC proc_addCommentAPI @flag = 'i'
+ ,@controlNo = @controlNo
+ ,@user = @user
+ ,@message = @message
+ ,@agentRefId = NULL
+
+ EXEC proc_transactionLogs 'i'
+ ,@user
+ ,@tranId
+ ,@message
+ ,'Cancel Request'
+ END
+
+ IF @flag = 'get-info-for-compliance'
+ BEGIN
+ IF NOT EXISTS (
+ SELECT *
+ FROM REMITTRAN(NOLOCK)
+ WHERE ID = @id
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction Not Found!'
+ ,@id
+
+ RETURN
+ END
+
+ SELECT @partnerId = pSuperAgent
+ ,@controlNo = DBO.DECRYPTDB(CONTROLNO)
+ FROM REMITTRAN(NOLOCK)
+ WHERE ID = @id
+
+ SELECT @isRealTime = CASE
+ WHEN @partnerId = '394397'
+ THEN 0
+ ELSE isRealTime
+ END
+ FROM TblPartnerwiseCountry(NOLOCK)
+ WHERE AgentId = @partnerId
+
+ SELECT 0
+ ,@partnerId
+ ,@controlNo
+ ,@isRealTime
+ END
+
+ IF @flag = 'reject'
+ BEGIN
+ IF NOT EXISTS (
+ SELECT 'X'
+ FROM remitTranTemp RT WITH (NOLOCK)
+ WHERE RT.id = @id
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'There is no transaction to reject, either it is approved/rejected or not found!!'
+ ,@id
+
+ RETURN;
+ END
+
+ DECLARE @customerId BIGINT
+ ,@rewardtype NVARCHAR(25)
+ ,@rewardAmt MONEY
+
+ IF @isTxnRealtime IS NULL
+ SET @isTxnRealtime = 0
+
+ SELECT @tranStatus = transtatus
+ ,@denyAmt = ISNULL(cAmt, 0) - ISNULL(sAgentComm, 0) - ISNULL(agentFxGain, 0)
+ ,@sRouteId = sRouteId
+ ,@pinEncrypted = controlNo
+ ,@ControlNo = dbo.fnaDecryptstring(controlNo)
+ ,@controlno2 = dbo.fnaDecryptstring(controlNo2)
+ ,@txncreatedBy = createdBy
+ ,@COLLMODE = ISNULL(RT.depositType,'ONLINE')
+ ,@CUSTOMERID = TS.CUSTOMERID
+ ,@transactionType = rt.trantype
+ ,@rewardtype = rt.rewardType
+ ,@rewardAmt = rewardPoints
+ FROM remitTranTemp RT WITH (NOLOCK)
+ INNER JOIN TRANSENDERSTEMP TS(NOLOCK) ON TS.TRANID = RT.ID
+ WHERE RT.id = @id
+
+ --IF LEN(@pinEncrypted)<7
+ --BEGIN
+ -- select TOP 1 @ControlNo = controlNo from Application_Log.dbo.vwtpapilogs(nolock) where requestedby=@txncreatedBy AND ERRORCODE='999' order by rowid desc
+ --END
+ --IF LEN(@ControlNo) < 7
+ --BEGIN
+ -- EXEC proc_errorHandler 1, 'Sorry,Cannot Reject Transaction', @id
+ -- RETURN
+ --END
+ --BEGIN TRANSACTION
+
+ INSERT INTO tranCancelrequest (
+ tranId
+ ,controlNo
+ ,cancelReason
+ ,cancelStatus
+ ,createdBy
+ ,createdDate
+ ,tranStatus
+ ,approvedBy
+ ,approvedDate
+ ,scRefund
+ ,isScRefund
+ )
+ SELECT id
+ ,controlNo
+ ,@remarks
+ ,'Approved'
+ ,@user
+ ,GETDATE()
+ ,tranStatus
+ ,@user
+ ,GETDATE()
+ ,cAmt
+ ,'Y'
+ FROM remitTranTemp WITH (NOLOCK)
+ WHERE id = @id
+
+ UPDATE remitTranTemp
+ SET tranStatus = 'Cancel'
+ ,cancelApprovedBy = @user
+ ,cancelApprovedDate = GETDATE()
+ ,cancelApprovedDateLocal = dbo.FNAGetDateInNepalTZ()
+ ,cancelRequestBy = @user
+ ,cancelRequestDate = GETDATE()
+ ,cancelRequestDateLocal = dbo.FNADateFormatTZ(GETDATE(), @user)
+ ,trnStatusBeforeCnlReq = @tranStatus
+ ,controlNo = dbo.fnaEncryptstring(@ControlNo)
+ WHERE id = @id
+
+ INSERT INTO cancelTranHistory (
+ tranId
+ ,controlNo
+ ,sCurrCostRate
+ ,sCurrHoMargin
+ ,sCurrSuperAgentMargin
+ ,sCurrAgentMargin
+ ,pCurrCostRate
+ ,pCurrHoMargin
+ ,pCurrSuperAgentMargin
+ ,pCurrAgentMargin
+ ,agentCrossSettRate
+ ,customerRate
+ ,sAgentSettRate
+ ,pDateCostRate
+ ,agentFxGain
+ ,treasuryTolerance
+ ,customerPremium
+ ,schemePremium
+ ,sharingValue
+ ,sharingType
+ ,serviceCharge
+ ,handlingFee
+ ,sAgentComm
+ ,sAgentCommCurrency
+ ,sSuperAgentComm
+ ,sSuperAgentCommCurrency
+ ,pAgentComm
+ ,pAgentCommCurrency
+ ,pSuperAgentComm
+ ,pSuperAgentCommCurrency
+ ,promotionCode
+ ,promotionType
+ ,pMessage
+ ,sCountry
+ ,sSuperAgent
+ ,sSuperAgentName
+ ,sAgent
+ ,sAgentName
+ ,sBranch
+ ,sBranchName
+ ,pCountry
+ ,pSuperAgent
+ ,pSuperAgentName
+ ,pAgent
+ ,pAgentName
+ ,pBranch
+ ,pBranchName
+ ,paymentMethod
+ ,pBank
+ ,pBankName
+ ,pBankBranch
+ ,pBankBranchName
+ ,accountNo
+ ,externalBankCode
+ ,collMode
+ ,collCurr
+ ,tAmt
+ ,cAmt
+ ,pAmt
+ ,payoutCurr
+ ,relWithSender
+ ,purposeOfRemit
+ ,sourceOfFund
+ ,tranStatus
+ ,payStatus
+ ,createdDate
+ ,createdDateLocal
+ ,createdBy
+ ,modifiedDate
+ ,modifiedDateLocal
+ ,modifiedBy
+ ,approvedDate
+ ,approvedDateLocal
+ ,approvedBy
+ ,paidDate
+ ,paidDateLocal
+ ,paidBy
+ ,cancelRequestDate
+ ,cancelRequestDateLocal
+ ,cancelRequestBy
+ ,cancelReason
+ ,refund
+ ,cancelCharge
+ ,cancelApprovedDate
+ ,cancelApprovedDateLocal
+ ,cancelApprovedBy
+ ,blockedDate
+ ,blockedBy
+ ,lockedDate
+ ,lockedDateLocal
+ ,lockedBy
+ ,payTokenId
+ ,tranType
+ ,ContNo
+ ,uploadLogId
+ ,voucherNo
+ ,controlNo2
+ ,pBankType
+ ,trnStatusBeforeCnlReq
+ ,isSystemReject
+ ,depositType
+ ,transactionreference
+ ,isOnlineTxn
+ )
+ SELECT id
+ ,controlNo
+ ,sCurrCostRate
+ ,sCurrHoMargin
+ ,sCurrSuperAgentMargin
+ ,sCurrAgentMargin
+ ,pCurrCostRate
+ ,pCurrHoMargin
+ ,pCurrSuperAgentMargin
+ ,pCurrAgentMargin
+ ,agentCrossSettRate
+ ,customerRate
+ ,sAgentSettRate
+ ,pDateCostRate
+ ,agentFxGain
+ ,treasuryTolerance
+ ,customerPremium
+ ,schemePremium
+ ,sharingValue
+ ,sharingType
+ ,serviceCharge
+ ,handlingFee
+ ,sAgentComm
+ ,sAgentCommCurrency
+ ,sSuperAgentComm
+ ,sSuperAgentCommCurrency
+ ,pAgentComm
+ ,pAgentCommCurrency
+ ,pSuperAgentComm
+ ,pSuperAgentCommCurrency
+ ,promotionCode
+ ,promotionType
+ ,pMessage
+ ,sCountry
+ ,sSuperAgent
+ ,sSuperAgentName
+ ,sAgent
+ ,sAgentName
+ ,sBranch
+ ,sBranchName
+ ,pCountry
+ ,pSuperAgent
+ ,pSuperAgentName
+ ,pAgent
+ ,pAgentName
+ ,pBranch
+ ,pBranchName
+ ,paymentMethod
+ ,pBank
+ ,pBankName
+ ,pBankBranch
+ ,pBankBranchName
+ ,accountNo
+ ,externalBankCode
+ ,collMode
+ ,collCurr
+ ,tAmt
+ ,cAmt
+ ,pAmt
+ ,payoutCurr
+ ,relWithSender
+ ,purposeOfRemit
+ ,sourceOfFund
+ ,tranStatus
+ ,payStatus
+ ,createdDate
+ ,createdDateLocal
+ ,createdBy
+ ,modifiedDate
+ ,modifiedDateLocal
+ ,modifiedBy
+ ,approvedDate
+ ,approvedDateLocal
+ ,approvedBy
+ ,paidDate
+ ,paidDateLocal
+ ,paidBy
+ ,cancelRequestDate
+ ,cancelRequestDateLocal
+ ,cancelRequestBy
+ ,@remarks
+ ,refund
+ ,cancelCharge
+ ,GETDATE()
+ ,dbo.FNADateFormatTZ(GETDATE(), @user)
+ ,@user
+ ,blockedDate
+ ,blockedBy
+ ,lockedDate
+ ,lockedDateLocal
+ ,lockedBy
+ ,payTokenId
+ ,tranType
+ ,ContNo
+ ,uploadLogId
+ ,voucherNo
+ ,controlNo2
+ ,pBankType
+ ,trnStatusBeforeCnlReq
+ ,@isSystemReject
+ ,depositType
+ ,transactionreference
+ ,isOnlineTxn
+ FROM remitTranTemp
+ WHERE id = @id
+
+ INSERT INTO cancelTranSendersHistory (
+ tranId
+ ,customerId
+ ,membershipId
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,fullName
+ ,country
+ ,address
+ ,STATE
+ ,district
+ ,zipCode
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,customerType
+ ,occupation
+ ,idType
+ ,idNumber
+ ,idPlaceOfIssue
+ ,issuedDate
+ ,validDate
+ ,extCustomerId
+ ,cwPwd
+ ,ttName
+ ,isFirstTran
+ ,customerRiskPoint
+ ,countryRiskPoint
+ ,gender
+ ,salary
+ ,companyName
+ ,address2
+ ,dcInfo
+ ,ipAddress
+ ,notifySms
+ ,txnTestQuestion
+ ,txnTestAnswer
+ )
+ SELECT tranId
+ ,customerId
+ ,membershipId
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,fullName
+ ,country
+ ,address
+ ,STATE
+ ,district
+ ,zipCode
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,customerType
+ ,occupation
+ ,idType
+ ,idNumber
+ ,idPlaceOfIssue
+ ,issuedDate
+ ,validDate
+ ,extCustomerId
+ ,cwPwd
+ ,ttName
+ ,isFirstTran
+ ,customerRiskPoint
+ ,countryRiskPoint
+ ,gender
+ ,salary
+ ,companyName
+ ,address2
+ ,dcInfo
+ ,ipAddress
+ ,notifySms
+ ,txnTestQuestion
+ ,txnTestAnswer
+ FROM transenderstemp WITH (NOLOCK)
+ WHERE tranId = LTRIM(RTRIM(@id))
+
+ INSERT INTO cancelTranReceiversHistory (
+ tranId
+ ,customerId
+ ,membershipId
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,fullName
+ ,country
+ ,address
+ ,STATE
+ ,district
+ ,zipCode
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,customerType
+ ,occupation
+ ,idType
+ ,idNumber
+ ,idPlaceOfIssue
+ ,issuedDate
+ ,validDate
+ ,idType2
+ ,idNumber2
+ ,idPlaceOfIssue2
+ ,issuedDate2
+ ,validDate2
+ ,relationType
+ ,relativeName
+ ,gender
+ ,address2
+ ,dcInfo
+ ,ipAddress
+ )
+ SELECT tranId
+ ,customerId
+ ,membershipId
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,fullName
+ ,country
+ ,address
+ ,STATE
+ ,district
+ ,zipCode
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,customerType
+ ,occupation
+ ,idType
+ ,idNumber
+ ,idPlaceOfIssue
+ ,issuedDate
+ ,validDate
+ ,idType2
+ ,idNumber2
+ ,idPlaceOfIssue2
+ ,issuedDate2
+ ,validDate2
+ ,relationType
+ ,relativeName
+ ,gender
+ ,address2
+ ,dcInfo
+ ,ipAddress
+ FROM tranReceiversTemp WITH (NOLOCK)
+ WHERE tranId = LTRIM(RTRIM(@id))
+
+ ----reverse deposit mapping
+ --IF @COLLMODE = 'Bank Deposit'
+ -- AND @isTxnRealtime = 0
+ --BEGIN
+ -- IF EXISTS (
+ -- SELECT 'x'
+ -- FROM customer_deposit_logs
+ -- WHERE customerid = @CUSTOMERID
+ -- AND approvedby IS NULL
+ -- )
+ -- BEGIN
+ -- UPDATE customer_deposit_logs
+ -- SET processedby = NULL
+ -- ,processeddate = NULL
+ -- ,customerid = NULL
+ -- WHERE customerid = @CUSTOMERID
+ -- AND approvedby IS NULL
+ -- END
+ --END
+
+ --update balance
+ DECLARE @referralCode VARCHAR(15)
+ ,@sType CHAR(1)
+ ,@isOnbehalf CHAR(1)
+ ,@sAgent INT
+ ,@senderUserId INT
+
+ SELECT @referralCode = PROMOTIONCODE
+ ,@sAgent = sAgent
+ ,@cAmt = cAmt
+ ,@isOnbehalf = (
+ CASE
+ WHEN ISNULL(ISONBEHALF, 0) = '1'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ )
+ ,@senderUserId = AU.userId
+ FROM dbo.remitTranTemp RT(NOLOCK)
+ INNER JOIN applicationUsers AU(NOLOCK) ON AU.userName = RT.createdBy
+ WHERE controlNo = dbo.fnaEncryptstring(@ControlNo)
+
+ IF @COLLMODE = 'Cash Collect'
+ BEGIN
+ --select @sAgent,@userId,@referralCode,@cAmt,@isOnbehalf,@ControlNo
+ EXEC PROC_UPDATE_AVAILABALE_BALANCE @FLAG = 'CANCEL'
+ ,@S_AGENT = @sAgent
+ ,@S_USER = @senderUserId
+ ,@REFERRAL_CODE = @referralCode
+ ,@C_AMT = @cAmt
+ ,@ONBEHALF = @isOnbehalf
+ END
+
+ DELETE
+ FROM remitTranTemp
+ WHERE id = @id
+
+ DELETE
+ FROM tranSendersTemp
+ WHERE tranId = @id
+
+ DELETE
+ FROM tranReceiversTemp
+ WHERE tranId = @id
+
+ IF @rewardtype = 'FREE_SC'
+ BEGIN
+ UPDATE remitDatalog
+ SET controlNo = NULL
+ WHERE ControlNo = @ControlNo or controlNo = @controlNo2
+ END
+ ELSE
+ BEGIN
+ DELETE
+ FROM remitDatalog
+ WHERE tranId = @id
+ END
+ SELECT @message = 'Transaction cancel has been done successfully.'
+
+ IF @rewardtype = 'REDEEM'
+ BEGIN
+ EXEC proc_InsertRewardPoints @Flag = 'CREDIT', @CustomerId = @CUSTOMERID, @rewardPoints = @rewardAmt, @TranId = @id, @type = 'REJECT'
+ END
+
+ EXEC proc_transactionLogs @flag = 'i'
+ ,@user = @user
+ ,@tranId = @id
+ ,@message = @message
+ ,@msgType = 'Cancel'
+
+ IF @branch = 'Mobile'
+ BEGIN
+ INSERT INTO pushNotificationHistroy (
+ customerId
+ ,body
+ ,title
+ ,createDate
+ ,imageURL
+ ,sentId
+ ,Type
+ ,isReservation
+ ,isRead
+ ,isSend
+ ,category
+ )
+ SELECT @customerid
+ ,'Tran ID : ' + CAST(@id AS VARCHAR) + ' was successfully cancelled.'
+ ,'CancelTxn'
+ ,getdate()
+ ,''
+ ,@id
+ ,0
+ ,0
+ ,0
+ ,0
+ ,'INFO'
+ END
+ IF EXists(select * fROM TRU_TranDetail WHERE Tranid=@id)
+ BEGIN
+ UPDATE dbo.TRU_TranDetail
+ SET recordStatus = 'EXPIRED'
+ WHERE tranid=@id
+ and recordStatus IN ( 'PROCESS','DRAFT')
+
+ END
+ --IF @@TRANCOUNT > 0
+ -- COMMIT TRANSACTION
+ IF @transactionType = 'I'
+ BEGIN
+ IF EXISTS (
+ SELECT TOP 1 1
+ FROM applicationUsers(NOLOCK)
+ WHERE userName = @txncreatedBy
+ )
+ BEGIN
+ UPDATE APPLICATIONUSERS
+ SET freeScCounter = CASE
+ WHEN ISNULL(freeScCounter, 0) > 0
+ THEN ISNULL(freeScCounter, 0) - 1
+ ELSE freeScCounter
+ END
+ WHERE username = @txncreatedBy
+ END
+ END
+
+ EXEC proc_errorHandler 0
+ ,'Transaction Rejected Successfully'
+ ,@id
+
+ RETURN
+ END
+
+ IF @flag = 'approve'
+ BEGIN
+ IF NOT EXISTS (
+ SELECT 'X'
+ FROM remitTranTemp RT WITH (NOLOCK)
+ WHERE RT.id = @id
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'There is no transaction to approve, either it is rejected/approved or not found!!'
+ ,@id
+
+ RETURN;
+ END
+
+ --IF EXISTS (
+ -- SELECT 'X'
+ -- FROM remitTranTemp RT WITH (NOLOCK)
+ -- WHERE RT.id = @id
+ -- AND controlno = 'LLm_IOQMMRMQM'
+ -- )
+ --BEGIN
+ -- EXEC proc_errorHandler 1
+ -- ,'You can not approve this txn, please contact HQ!!'
+ -- ,@id
+
+ -- RETURN;
+ --END
+
+ DECLARE @pBank INT
+ ,@paymentMethod VARCHAR(50)
+ ,@tranType CHAR(1)
+ ,@externalBankCode INT
+ ,@createdDate DATETIME
+ ,@senderName VARCHAR(100)
+ ,@sBranchName VARCHAR(150)
+ ,@pAgentComm MONEY
+ ,@schemeId INT
+ DECLARE @agentFxGain MONEY
+
+ IF @createdBy = @user
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Same user cannot approve the Transaction'
+ ,@id
+
+ RETURN
+ END
+
+ DECLARE @tAmt MONEY
+ ,@pAmt MONEY
+ ,@introducer VARCHAR(50)
+ ,@payoutPartner INT
+ ,@serviceCharge MONEY
+ ,@pCurrCostRate FLOAT
+ ,@pCurrHoMargin FLOAT
+ ,@isFirstTran CHAR(1)
+ ,@userName VARCHAR(80)
+ ,@rewardPoints MONEY
+
+ UPDATE REMITTRANTEMP
+ SET agentFxGain = tamt - (ROUND((pamt / pCurrCostRate), 2))
+ WHERE ISNULL(psuperagent, 0) <> 394132
+ AND id = @id
+
+ SELECT @cAmt = cAmt
+ ,@customerId = cm.customerId
+ ,@userId = A.userId
+ ,@tAmt = r.tAmt
+ ,@pAmt = r.pAmt
+ ,@createdBy = r.createdBy
+ ,@controlNo = dbo.FNADecryptString(controlNo)
+ ,@sBranch = sBranch
+ ,@sBranchName = sBranchName
+ ,@pinEncrypted = controlNo
+ ,@pBank = pBank
+ ,@introducer = promotionCode
+ ,@sAgent = sAgent
+ ,@paymentMethod = paymentMethod
+ ,@tranType = tranType
+ ,@sRouteId = sRouteId
+ ,@collMode = ISNULL(R.depositType,'ONLINE')
+ ,@externalBankCode = externalBankCode
+ ,@createdDate = r.createdDate
+ ,@senderName = r.senderName
+ ,@tranStatus = R.tranStatus
+ ,@payoutPartner = R.pSuperAgent
+ ,@serviceCharge = R.serviceCharge
+ ,@pCurrCostRate = R.pCurrCostRate
+ ,@pCurrHoMargin = R.pCurrHoMargin
+ ,@agentFxGain = R.agentFxGain
+ ,@isFirstTran = ISNULL(T.isFirstTran, 'N')
+ ,@pAgentComm = r.pAgentComm
+ ,@userName = CM.USERNAME
+ ,@isOnbehalf = (
+ CASE
+ WHEN ISONBEHALF = '1'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ )
+ ,@downlodedBy = downloadedBy
+ ,@rewardPoints = ISNULL(rewardPoints, 0)
+ ,@schemeId = ISNULL(r.schemeId,0)
+ ,@rewardType = ISNULL(r.rewardType,'')
+ FROM remitTranTemp r WITH (NOLOCK)
+ INNER JOIN TRANSENDERSTemp T(NOLOCK) ON T.TRANID = R.ID
+ LEFT JOIN customerMaster cm(NOLOCK) ON T.customerId = cm.customerId
+ LEFT JOIN applicationUsers A(NOLOCK) ON A.USERNAME = R.CREATEDBY
+ WHERE r.id = @id
+
+ --IF @collMode = 'Bank Deposit'
+ --BEGIN
+ -- IF EXISTS (
+ -- SELECT 1
+ -- FROM CUSTOMER_DEPOSIT_LOGS(NOLOCK)
+ -- WHERE CUSTOMERID = @customerId
+ -- AND APPROVEDBY IS NULL
+ -- )
+ -- BEGIN
+ -- EXEC proc_errorHandler 1
+ -- ,'Customer Deposit Mapping pending for Approval!!'
+ -- ,@id
+
+ -- RETURN;
+ -- END
+
+ -- SELECT @DENYAMT = DBO.FNAGetCustomerAvailableBalance(@customerId)
+
+ -- --FNAGetCustomerAvailableBalance
+ -- IF @DENYAMT < 0
+ -- BEGIN
+ -- EXEC proc_errorHandler 1
+ -- ,'Customer do not have sufficient balance for this transaction!!'
+ -- ,@id
+
+ -- RETURN;
+ -- END
+ --END
+
+ --EXEC proc_errorHandler 0, 'Transaction Approved Successfully', @controlNo
+ --RETURN
+ DECLARE @kycStatus INT
+
+ SELECT @kycStatus = kycStatus
+ FROM TBL_CUSTOMER_KYC(NOLOCK)
+ WHERE CUSTOMERID = @customerId
+ AND ISDELETED = 0
+ --AND kycStatus=11044
+ ORDER BY KYC_DATE
+
+ SELECT @parentId = parentId
+ FROM agentMaster WITH (NOLOCK)
+ WHERE agentId = @sBranch
+
+ SELECT @invicePrintMethod = invoicePrintMethod
+ FROM agentMaster A WITH (NOLOCK)
+ INNER JOIN agentBusinessFunction B WITH (NOLOCK) ON A.agentId = B.agentId
+ WHERE A.agentId = @parentId
+
+ --BEGIN TRANSACTION
+
+ UPDATE remitTranTemp
+ SET tranStatus = CASE tranStatus
+ WHEN 'Hold'
+ THEN 'Payment'
+ WHEN 'Compliance Hold'
+ THEN 'Compliance'
+ WHEN 'OFAC Hold'
+ THEN 'OFAC'
+ WHEN 'OFAC/Compliance Hold'
+ THEN 'OFAC/Compliance'
+ WHEN 'Cash Limit Hold'
+ THEN 'Cash Limit'
+ WHEN 'Cash Limit/Compliance Hold'
+ THEN 'Cash Limit/Compliance'
+ WHEN 'Cash Limit/OFAC Hold'
+ THEN 'Cash Limit/OFAC'
+ WHEN 'Cash Limit/OFAC/Compliance Hold'
+ THEN 'Cash Limit/OFAC/Compliance'
+ ELSE 'Payment'
+ END
+ ,approvedBy = @user
+ ,approvedDate = GETDATE()
+ ,approvedDateLocal = GETDATE()
+ WHERE id = @id
+
+ PRINT @id;
+
+ -- Return;
+
+ --send email to customers
+ --INSERT INTO tempTransactionMailQueue (
+ -- controlNo
+ -- ,createdDate
+ -- ,[status]
+ -- ) --tranType is used to know either mail is sent or not, we put 'N' for not sent
+ --SELECT rt.controlNo
+ -- ,GETDATE()
+ -- ,'N'
+ --FROM remitTranTemp rt(NOLOCK)
+ --WHERE rt.id = @id
+
+ EXEC proc_customerTxnHistory @controlNo = @pinEncrypted
+
+ ----## pish temp into main table
+ EXEC proc_remitTranTempToMain @id
+
+ SELECT @TRANID = ID
+ FROM REMITTRAN(NOLOCK)
+ WHERE controlNo = @pinEncrypted
+
+ --EXEC proc_InsertRewardPoints @tranId = @tranId
+ -- ,@customerId = @customerId
+ -- ,@rewardPoints = @rewardPoints
+
+ SET @remarks = 'Remittance :' + @controlNo + ' by:' + @senderName + ' from ' + @sBranchName + '-branch on dtd: ' + cast(@createdDate AS VARCHAR)
+ SET @txnDate = @createdDate
+
+
+ --EXEC PROC_CALCULATE_REFERRAL_COMM @COMMISSION_AMT = @serviceCharge
+ -- ,@T_AMT = @tAmt
+ -- ,@FX = @agentFxGain
+ -- ,@IS_NEW_CUSTOMER = @isFirstTran
+ -- ,@REFERRAL_CODE = @introducer
+ -- ,@PAYOUT_PARTNER = @payoutPartner
+ -- ,@CUSTOMER_ID = @customerId
+ -- ,@TRAN_ID = @TRANID
+ -- ,@S_AGENT = @sAgent
+ -- ,@AMOUNT = @cAmt
+ -- ,@USER = @user
+ -- ,@TRAN_DATE = @txnDate
+ -- ,@COLL_MODE = @collMode
+ -- ,@P_AGENT_COMM_AMT = @pAgentComm
+
+ PRINT '@collMode';
+
+ PRINT @collMode
+ ----INSERT INTO TRANSACTION TABLE(MAP DEPOSIT TXN WITH CUSTOMER)
+ INSERT INTO CUSTOMER_TRANSACTIONS (
+ customerId
+ ,tranDate
+ ,particulars
+ ,deposit
+ ,withdraw
+ ,refereceId
+ ,head
+ ,createdBy
+ ,createdDate
+ ,bankId
+ )
+ SELECT @customerId
+ ,@txnDate
+ ,@remarks
+ ,0
+ ,@cAmt
+ ,@TRANID
+ ,'Send Txn: ' + @collMode
+ ,@createdBy
+ ,@createdDate
+ ,@externalBankCode
+
+ --EXEC PROC_UPDATE_AVAILABALE_BALANCE @FLAG='CANCEL',@S_AGENT = @sAgent,@S_USER = @senderUserId,@REFERRAL_CODE = @introducer,@C_AMT = @cAmt,@ONBEHALF =@isOnbehalf
+
+
+
+ --INSERT INTO CASH AND VAULT TABLE FOR BRANCH CASH HOLD LIMIT CHECK
+ --INSERT INTO CASH AND VAULT TABLE FOR BRANCH CASH HOLD LIMIT CHECK
+ --INSERT INTO CASH AND VAULT TABLE FOR BRANCH CASH HOLD LIMIT CHECK
+ --INSERT INTO CASH AND VAULT TABLE FOR BRANCH CASH HOLD LIMIT CHECK
+ --INSERT INTO CASH AND VAULT TABLE FOR BRANCH CASH HOLD LIMIT CHECK
+
+ IF ISNULL(@kycStatus, 0) <> 11044
+ BEGIN
+ --UPDATE REMITTRAN
+ --SET tranStatus = CASE tranStatus
+ -- WHEN 'Payment'
+ -- THEN 'Hold'
+ -- ELSE tranStatus
+ -- END
+ --WHERE CONTROLNO = @pinEncrypted
+
+ PRINT @kycStatus
+ INSERT INTO tranModifyLog (
+ tranId
+ ,message
+ ,createdBy
+ ,createdDate
+ ,MsgType
+ )
+ SELECT @TRANID
+ ,'Customer KYC Status not matched(i.e. KYC Completed)'
+ ,'system'
+ ,GETDATE()
+ ,'TXN HOLD: CUSTOMER KYC NOT APPROVED'
+
+ --IF @collMode = 'Bank Deposit'
+ --BEGIN
+ -- EXEC proc_UpdateCustomerBalance @controlNo = @pinEncrypted
+ -- ,@type = 'deduct'
+
+ -- SELECT @DENYAMT = DBO.FNAGetCustomerAvailableBalance(@customerId)
+
+ -- IF @DENYAMT < 0
+ -- UPDATE REMITTRAN
+ -- SET tranStatus = CASE tranStatus
+ -- WHEN 'Payment'
+ -- THEN 'Hold'
+ -- ELSE tranStatus
+ -- END
+ -- WHERE CONTROLNO = @pinEncrypted
+
+ -- IF @DENYAMT < 0
+ -- INSERT INTO tranModifyLog (
+ -- tranId
+ -- ,message
+ -- ,createdBy
+ -- ,createdDate
+ -- ,MsgType
+ -- )
+ -- SELECT @TRANID
+ -- ,'Transaction Auto Hold By System: Insufficient Balance seen in system for this customer'
+ -- ,'system'
+ -- ,GETDATE()
+ -- ,'TXN HOLD: Invalid balance'
+
+ -- EXEC PROC_UNTRANSACTED_UPDATE @UPDATE_TYPE = 'TXN-SEND'
+ -- ,@CUSTOMER_ID = @customerId
+ -- ,@UPDATE_AMT = @cAmt
+ -- ,@UPDATE_REF_NUM = @ControlNo
+ -- ,@UPDATE_DATE = @createdDate;
+ --END
+
+ RETURN;
+ END
+
+ --IF @tranType = 'M'
+ -- AND @collMode = 'Bank Deposit'
+ --BEGIN
+ -- EXEC PROC_INSERT_JP_DEPOSIT_TXN_LOG @FLAG = 'I'
+ -- ,@TRANID = @id
+ -- ,@CUSTOMERID = @customerId
+ -- ,@CAMT = @cAmt
+ --END
+
+ --For mobile broadcast notification
+ IF @tranType = 'M'
+ BEGIN
+ -- EXEC ProcBroadCastMobile @Flag='txn-approve', @RowId=@TRANID, @ControlNo=@controlNo, @CustomerId=@customerId
+
+ INSERT INTO pushNotificationHistroy (
+ customerId
+ ,body
+ ,title
+ ,createDate
+ ,imageURL
+ ,sentId
+ ,Type
+ ,isReservation
+ ,isRead
+ ,isSend
+ ,category
+ )
+ SELECT @customerid
+ ,'This is send Txn body Msg'
+ ,'SendTxn'
+ ,getdate()
+ ,''
+ ,@tranId
+ ,1
+ ,0
+ ,0
+ ,0
+ ,'INFO'
+ END
+
+ IF @sAgent = '394395'
+ AND @paymentMethod = 'Mobile Wallet'
+ BEGIN
+ UPDATE dbo.remitTran
+ SET payStatus = 'POST'
+ ,postedBy = @user
+ ,postedDate = GETDATE()
+ ,postedDateLocal = GETDATE()
+ WHERE controlNo = @pinEncrypted
+ END
+
+ INSERT INTO PinQueueList (ICN)
+ SELECT @pinEncrypted
+
+ --IF @@TRANCOUNT > 0
+ -- COMMIT TRANSACTION
+
+ EXEC proc_errorHandler 0
+ ,'Transaction Approved Successfully'
+ ,@controlNo
+
+ --## generate voucher entry
+ EXEC FastMoneyPro_Account.dbo.proc_transactionVoucherEntry @controlNo = @controlNo
+ --IF @tranType = 'M'
+ --BEGIN
+ -- EXEC ProcIntroducerCommissionDetail @TranId = @TRANID
+ -- ,@CustomerId = @customerId
+ -- ,@User = @User
+ -- ,@IsCancel = 0
+ -- ,@TranDate = @createdDate
+ --END
+
+ RETURN
+ END
+
+ IF @flag = 'verifyTxnSendFromTabPage'
+ BEGIN
+ IF EXISTS (
+ SELECT 1
+ FROM dbo.remitTranTemp
+ WHERE id = @id
+ )
+ BEGIN
+ UPDATE dbo.remitTranTemp
+ SET sRouteId = '0'
+ WHERE id = @id
+
+ EXEC proc_errorHandler 0
+ ,'Transaction Verify Successfully'
+ ,@id
+
+ RETURN;
+ END
+ ELSE
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Transaction Not Found'
+ ,@id
+
+ RETURN;
+ END
+ END
+
+ IF @flag = 'approve-all'
+ BEGIN
+ EXEC proc_ApproveHoldedTXN_Sub @user = @user
+ ,@idList = @idList
+
+ RETURN
+ END
+
+ DECLARE @cdTable VARCHAR(MAX) = ''
+
+ SET @cdTable = '
+ LEFT JOIN (
+ SELECT
+ DISTINCT
+ tranId
+ ,cb.bankName
+ ,cd.countryBankId
+ FROM collectionDetails cd WITH(NOLOCK)
+ LEFT JOIN countryBanks cb WITH(NOLOCK) ON cd.countryBankId = cb.countryBankId
+ INNER JOIN remitTranTemp trn WITH(NOLOCK) ON cd.tranId = trn.id
+ AND (trn.tranStatus = ''Hold'' OR trn.tranStatus = ''Compliance Hold'' OR trn.tranStatus = ''OFAC Hold'' )
+ AND trn.payStatus = ''Unpaid''
+ AND trn.approvedBy IS NULL
+ ) cd ON cd.tranId = trn.id '
+
+ IF EXISTS (
+ SELECT *
+ FROM dbo.sysobjects
+ WHERE id = OBJECT_ID(N'[#collModeList]')
+ AND type = 'D'
+ )
+ BEGIN
+ DROP TABLE #collModeList
+ END
+
+ CREATE TABLE #collModeList (
+ tranId INT
+ ,hasProcess CHAR(1)
+ ,proMode VARCHAR(50)
+ )
+
+ DECLARE @tranId1 INT
+
+ IF @flag = 's-admin'
+ BEGIN
+ SET @table = '
+ SELECT DISTINCT
+ trn.id
+
+ ,controlNo = ''''+DBO.FNADECRYPTSTRING(trn.CONTROLNO)+''''
+ ,branchName = am.agentName
+ ,country = trn.pCountry
+ ,senderId = sen.customerId
+ ,sender = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
+ ,receiverId = rec.customerId
+ ,receiver = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
+ ,amt = CAST(trn.cAmt AS DECIMAL(18, 2))
+ --,paymentMethod = case when trn.collMode = ''Bank Deposit'' then ''JP Post'' ELSE trn.collMode END
+ ,voucherNo = trn.voucherNo
+ ,txnDate = CAST(trn.createdDate AS DATE)
+ ,txncreatedBy = trn.createdBy
+ ,trn.paymentMethod collMode
+ ,tranType = CASE
+ WHEN (trn.tranType = ''M'' AND trn.isOnlineTxn = ''M'') THEN ''Mobile''
+ WHEN (trn.tranType = ''M'' AND trn.isOnlineTxn = ''O'') THEN ''Web''
+ WHEN trn.tranType = ''I'' THEN ''CR Panel''
+ ELSE trn.tranType END
+ ,CAST(trn.pAmt AS DECIMAL(10,2)) AS pAmt
+ ,ISNULL(depositType,'''') depositType
+ FROM remitTranTemp trn WITH(NOLOCK) ' + @cdTable +
+ '
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND trn.verifiedDate IS NOT NULL AND ISNULL(sRouteId,''0'') in(''0'',''M'')
+ AND trn.tranType=''I''
+ --AND trn.pcountry in (''vietnam'',''nepal'')
+ '
+
+ IF @id IS NOT NULL
+ SET @table = @table + ' AND trn.id = ''' + LTRIM(RTRIM(@id)) + ''''
+
+ IF @branch IS NOT NULL
+ SET @table = @table + ' AND am.agentId = ''' + @branch + ''''
+
+ IF @country IS NOT NULL
+ SET @table = @table + ' AND trn.pCountry LIKE ''' + @country + '%'''
+
+ IF @sendCountry IS NOT NULL
+ SET @table = @table + ' AND trn.sCountry LIKE ''' + @sendCountry + '%'''
+
+ IF @amt IS NOT NULL
+ SET @table = @table + ' AND trn.pAmt = ' + CAST(@amt AS VARCHAR(20)) + ''
+
+ IF @voucherNo IS NOT NULL
+ SET @table = @table + ' AND trn.voucherNo = ''' + @voucherNo + ''''
+
+ IF @txncreatedBy IS NOT NULL
+ SET @table = @table + ' AND trn.createdBy = ''' + @txncreatedBy + ''''
+
+ IF @txnDate IS NOT NULL
+ SET @table = @table + ' AND CAST(trn.createdDate AS DATE)=''' + @txnDate + ''''
+
+ IF @ControlNo IS NOT NULL
+ SET @table = @table + ' AND trn.controlNo = dbo.fnaEncryptString(''' + LTRIM(RTRIM(@ControlNo)) + ''')'
+
+ IF @sendAgent IS NOT NULL
+ SET @table = @table + ' AND trn.sAgent = ''' + @sendAgent + ''''
+
+ IF @sendBranch IS NOT NULL
+ SET @table = @table + ' AND trn.sBranch = ''' + @sendBranch + ''''
+ SET @sql = '
+ SELECT
+ *
+ FROM (
+ ' + @table + '
+ ) x
+ WHERE 1 = 1 '
+
+ IF @sender IS NOT NULL
+ SET @sql = @sql + ' AND sender LIKE ''' + @sender + '%'''
+
+ IF @receiver IS NOT NULL
+ SET @sql = @sql + ' AND receiver LIKE ''' + @receiver + '%'''
+
+ PRINT @sql
+ EXEC (@sql)
+
+ RETURN
+ END
+
+ IF @flag = 's-admin-map'
+ BEGIN
+ SET @table = '
+ SELECT DISTINCT
+ trn.id
+ ,controlNo = dbo.fnadecryptstring(controlNo)
+ ,branch = am.agentName
+ ,country = trn.pCountry
+ ,senderId = sen.customerId
+ ,sender = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
+ ,receiverId = rec.customerId
+ ,receiver = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
+ ,amt = CAST(trn.cAmt AS DECIMAL(18, 2))
+ ,paymentMethod = case when trn.collMode = ''Bank Deposit'' then ''JP Post'' ELSE trn.collMode END
+ ,voucherNo = trn.voucherNo
+ ,txnDate = CAST(trn.createdDate AS DATE)
+ ,txncreatedBy = trn.createdBy
+ ,trn.collMode collMode
+ FROM remitTranTemp trn WITH(NOLOCK) ' + @cdTable +
+ '
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND ISNULL(sRouteId,''0'') in(''0'',''M'')
+ AND trn.tranType=''I''
+ --AND trn.pcountry in (''vietnam'',''nepal'')
+ '
+
+ IF @ControlNo IS NOT NULL
+ SET @table = @table + ' AND trn.controlNo = dbo.fnaEncryptString(''' + @ControlNo + ''')'
+ SET @sql = '
+ SELECT
+ *
+ FROM (
+ ' + @table + '
+ ) x
+ WHERE 1 = 1 '
+
+ EXEC (@sql)
+
+ RETURN
+ END
+
+ IF @flag = 's-admin-online'
+ BEGIN
+ SET @table = '
+ SELECT DISTINCT
+ trn.id
+ ,branch = am.agentName
+ ,country = trn.pCountry
+ ,senderId = sen.customerId
+ ,sender = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
+ ,receiverId = rec.customerId
+ ,receiver = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
+ ,amt = CAST(trn.cAmt AS DECIMAL(18, 2))
+
+ ,txnDate = CAST(trn.createdDate AS DATE)
+ ,txncreatedBy = trn.createdBy
+ ,CASE WHEN trn.pAgent=1100 OR trn.pAgent = 1043 THEN 1 ELSE 0 END isThirdPartyTran
+ FROM remitTranTemp trn WITH(NOLOCK) ' + @cdTable +
+ '
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND ISNULL(trn.isOnlineTxn,''N'') =''Y''
+ AND trn.tranType=''O''
+ '
+
+ IF @id IS NOT NULL
+ SET @table = @table + ' AND trn.id = ''' + LTRIM(RTRIM(@id)) + ''''
+
+ IF @branch IS NOT NULL
+ SET @table = @table + ' AND am.agentId = ''' + @branch + ''''
+
+ IF @country IS NOT NULL
+ SET @table = @table + ' AND trn.pCountry LIKE ''' + @country + '%'''
+
+ IF @sendCountry IS NOT NULL
+ SET @table = @table + ' AND trn.sCountry LIKE ''' + @sendCountry + '%'''
+
+ IF @amt IS NOT NULL
+ SET @table = @table + ' AND trn.pAmt = ' + CAST(@amt AS VARCHAR(20)) + ''
+
+ IF @voucherNo IS NOT NULL
+ SET @table = @table + ' AND trn.voucherNo = ''' + @voucherNo + ''''
+
+ IF @txncreatedBy IS NOT NULL
+ SET @table = @table + ' AND trn.createdBy = ''' + @txncreatedBy + ''''
+
+ IF @txnDate IS NOT NULL
+ SET @table = @table + ' AND CAST(trn.createdDate AS DATE)=''' + @txnDate + ''''
+
+ IF @ControlNo IS NOT NULL
+ SET @table = @table + ' AND trn.controlNo = dbo.fnaEncryptString(''' + LTRIM(RTRIM(@ControlNo)) + ''')'
+
+ IF @sendAgent IS NOT NULL
+ SET @table = @table + ' AND trn.sAgent = ''' + @sendAgent + ''''
+
+ IF @sendBranch IS NOT NULL
+ SET @table = @table + ' AND trn.sBranch = ''' + @sendBranch + ''''
+ SET @sql = '
+ SELECT
+ * , STUFF((SELECT '''' + US.voucherNo +'' - ''+ CONVERT(VARCHAR(11),US.voucherDate,6) +'' - ''+ CAST(US.voucherAmt AS VARCHAR)+'' || ''
+ FROM bankCollectionVoucherDetail US
+ WHERE US.tempTranId = x.id
+ FOR XML PATH('''')), 1, 1, '''') [voucherDetail]
+ FROM (
+ ' + @table + '
+ ) x
+ WHERE 1 = 1 '
+
+ IF @sender IS NOT NULL
+ SET @sql = @sql + ' AND sender LIKE ''' + @sender + '%'''
+
+ IF @receiver IS NOT NULL
+ SET @sql = @sql + ' AND receiver LIKE ''' + @receiver + '%'''
+
+ PRINT @sql
+
+ EXEC (@sql)
+
+ RETURN
+ END
+
+ IF @flag = 's-agent'
+ BEGIN
+ SELECT @isSelfApprove = ISNULL(b.isSelfTxnApprove, 'N')
+ FROM agentmaster a WITH (NOLOCK)
+ LEFT JOIN agentBusinessFunction b WITH (NOLOCK) ON a.parentId = b.agentId
+ WHERE a.agentId = @branchId
+
+ SET @branchList = '
+ INNER JOIN (
+ SELECT ' + CAST(@branchId AS VARCHAR) + ' agentId '
+
+ IF @userType = 'RH'
+ BEGIN
+ SET @branchList = @branchList + '
+ UNION ALL
+ SELECT
+ am.agentId
+ FROM agentMaster am WITH(NOLOCK)
+ INNER JOIN regionalBranchAccessSetup rba ON am.agentId = rba.memberAgentId
+ WHERE rba.agentId = ' + CAST(@branchId AS VARCHAR) + '
+ AND ISNULL(rba.isDeleted, ''N'') = ''N''
+ AND ISNULL(rba.isActive, ''N'') = ''Y''
+ AND memberAgentId <> ' + CAST(@branchId AS VARCHAR) + ''
+ END
+
+ IF @userType = 'AH'
+ BEGIN
+ SET @branchList = @branchList + '
+ UNION ALL
+ select agentId from agentMaster with(nolock) where parentId =
+ (select parentId from agentmaster with(nolock) where agentId=' + CAST(@branchId AS VARCHAR) + ')
+ and agentId <> ' + CAST(@branchId AS VARCHAR) + ''
+ END
+
+ SET @branchList = @branchList + '
+ ) bl ON trn.sBranch = bl.agentId
+ '
+ SET @table = '
+ SELECT DISTINCT
+ trn.id
+ ,branch = am.agentName
+ ,country = trn.pCountry
+ ,senderId = sen.customerId
+ ,sender = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
+ ,receiverId = rec.customerId
+ ,receiver = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
+ ,amt = CAST(trn.cAmt AS DECIMAL(18, 3))
+ ,voucherNo = trn.voucherNo
+ ,trn.createdBy
+ ,collMode = ''Cash''
+ ,txnDate = CAST(trn.createdDate AS DATE)
+ ,txncreatedBy = trn.createdBy
+ ,CASE WHEN trn.pAgent = 1100 OR trn.pAgent = 1043 THEN 1 ELSE 0 END isThirdPartyTran
+ FROM remitTranTemp trn WITH(NOLOCK)
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ ' + @branchList +
+ '
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'',''Compliance Hold'',''OFAC Hold'',''OFAC/Compliance Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL
+ '
+
+ IF @txnType IS NOT NULL
+ SET @table = @table + ' AND trn.tranType = ''' + @txnType + ''''
+ ELSE
+ SET @table = @table + ' AND trn.tranType=''I'''
+
+ IF @id IS NOT NULL
+ SET @table = @table + ' AND trn.id = ''' + @id + ''''
+
+ IF @branch IS NOT NULL
+ SET @table = @table + ' AND am.agentId = ''' + @branch + ''''
+
+ IF @country IS NOT NULL
+ SET @table = @table + ' AND trn.pCountry LIKE ''' + @country + '%'''
+
+ IF @amt IS NOT NULL
+ SET @table = @table + ' AND trn.cAmt = ' + CAST(@amt AS VARCHAR(50))
+
+ IF @voucherNo IS NOT NULL
+ SET @table = @table + ' AND trn.voucherNo = ''' + @voucherNo + ''''
+
+ IF @txnDate IS NOT NULL
+ SET @table = @table + ' AND CAST(trn.createdDate AS DATE)=''' + @txnDate + ''''
+
+ IF @isSelfApprove = 'N'
+ SET @table = @table + ' AND trn.createdBy <> ''' + @user + ''''
+ SET @sql = '
+ SELECT
+ *
+ FROM (
+ ' + @table + '
+ ) x
+ WHERE 1 = 1 '
+
+ IF @txncreatedBy IS NOT NULL
+ SET @sql = @sql + ' AND txncreatedBy = ''' + @txncreatedBy + ''''
+
+ IF @sender IS NOT NULL
+ SET @sql = @sql + ' AND sender LIKE ''' + @sender + '%'''
+
+ IF @receiver IS NOT NULL
+ SET @sql = @sql + ' AND receiver LIKE ''' + @receiver + '%'''
+
+ --PRINT @sql
+ EXEC (@sql)
+
+ RETURN
+ END
+
+ IF @flag = 's-agent-self-txn'
+ BEGIN
+ SET @branchList = '
+ INNER JOIN (
+ SELECT ' + CAST(@branchId AS VARCHAR) + ' agentId '
+
+ IF @userType = 'RH'
+ BEGIN
+ SET @branchList = @branchList + '
+ UNION ALL
+ SELECT
+ am.agentId
+ FROM agentMaster am WITH(NOLOCK)
+ INNER JOIN regionalBranchAccessSetup rba ON am.agentId = rba.memberAgentId
+ WHERE rba.agentId = ' + CAST(@branchId AS VARCHAR) + '
+ AND ISNULL(rba.isDeleted, ''N'') = ''N''
+ AND ISNULL(rba.isActive, ''N'') = ''Y'''
+ END
+
+ SET @branchList = @branchList + '
+ ) bl ON trn.sBranch = bl.agentId
+ '
+ SET @table = '
+ SELECT DISTINCT
+ trn.id
+ ,branch = am.agentName
+ ,country = trn.pCountry
+ ,senderId = sen.customerId
+ ,sender = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
+ ,receiverId = rec.customerId
+ ,receiver = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
+ ,amt = CAST(trn.cAmt AS DECIMAL(18, 3))
+ ,voucherNo = trn.voucherNo
+ ,trn.createdBy
+ ,collMode = ''''
+ ,txnDate = CAST(trn.createdDate AS DATE)
+ ,txncreatedBy = trn.createdBy
+ FROM remitTranTemp trn WITH(NOLOCK)
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ ' + @branchList +
+ '
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ --INNER JOIN #collModeList T ON T.tranId = trn.id
+ WHERE trn.tranStatus IN (''Hold'',''Compliance Hold'',''OFAC Hold'',''OFAC/Compliance Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL
+ '
+
+ IF @txnType IS NOT NULL
+ SET @table = @table + ' AND trn.tranType = ''' + @txnType + ''''
+ ELSE
+ SET @table = @table + ' AND trn.tranType=''I'''
+
+ IF @id IS NOT NULL
+ SET @table = @table + ' AND trn.id = ''' + @id + ''''
+
+ IF @branch IS NOT NULL
+ SET @table = @table + ' AND am.agentId = ''' + @branch + ''''
+
+ IF @country IS NOT NULL
+ SET @table = @table + ' AND trn.pCountry LIKE ''' + @country + '%'''
+
+ IF @amt IS NOT NULL
+ SET @table = @table + ' AND trn.cAmt = ' + CAST(@amt AS VARCHAR(50))
+
+ IF @voucherNo IS NOT NULL
+ SET @table = @table + ' AND trn.voucherNo = ''' + @voucherNo + ''''
+
+ IF @txnDate IS NOT NULL
+ SET @table = @table + ' AND CAST(trn.createdDate AS DATE)=''' + @txnDate + ''''
+ SET @sqlSelfTxn = '
+ SELECT
+ *
+ FROM (
+ ' + @table + ' AND trn.createdBy = ''' + @user + '''
+ ) x
+ WHERE 1 = 1 '
+
+ IF @sender IS NOT NULL
+ SET @sqlSelfTxn = @sqlSelfTxn + ' AND sender LIKE ''' + @sender + '%'''
+
+ IF @receiver IS NOT NULL
+ SET @sqlSelfTxn = @sqlSelfTxn + ' AND receiver LIKE ''' + @receiver + '%'''
+
+ EXEC (@sqlSelfTxn)
+
+ RETURN
+ END
+
+ IF @flag = 's_txn_summary'
+ BEGIN
+ SET @branchList = '
+ INNER JOIN (
+ SELECT ' + CAST(@branchId AS VARCHAR) + ' agentId '
+
+ IF @userType = 'RH'
+ BEGIN
+ SET @branchList = @branchList + '
+ UNION ALL
+ SELECT
+ am.agentId
+ FROM agentMaster am WITH(NOLOCK)
+ INNER JOIN regionalBranchAccessSetup rba ON am.agentId = rba.memberAgentId
+ WHERE rba.agentId = ' + CAST(@branchId AS VARCHAR) + '
+ AND ISNULL(rba.isDeleted, ''N'') = ''N''
+ AND ISNULL(rba.isActive, ''N'') = ''Y'''
+ END
+
+ IF @userType = 'AH'
+ BEGIN
+ SET @branchList = @branchList + '
+ UNION ALL
+ select agentId from agentMaster with(nolock) where parentId =
+ (select parentId from agentmaster with(nolock) where agentId=' + CAST(@branchId AS VARCHAR) + ')
+ and agentId <> ' + CAST(@branchId AS VARCHAR) + ''
+ END
+
+ SET @branchList = @branchList + '
+ ) bl ON trn.sBranch = bl.agentId
+ '
+ SET @tablesql = '
+ select country,sum(txnCount) txnCount,sum(txnHoldCount) txnHoldCount from
+ (
+ select country,txnCount,txnHoldCount from
+ (
+ SELECT
+ country = CASE WHEN trn.tranType = ''B'' then pCountry+''(B2B)'' else pCountry end
+ ,txnCount = case when trn.createdBy <> ''' + @user + ''' then 1 else 0 end
+ ,txnHoldCount = case when trn.createdBy = ''' + @user + ''' then 1 else 0 end
+ FROM remitTranTemp trn WITH(NOLOCK)
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ ' + @branchList +
+ '
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'',''Compliance Hold'',''OFAC Hold'',''OFAC/Compliance Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND trn.tranType IN (''I'',''B'')
+ )z
+ )x group by country'
+
+ --print(@tablesql)
+ EXEC (@tablesql)
+ END
+
+ IF @flag = 's_admin_txn_summary'
+ BEGIN
+ SET @tablesql = '
+ SELECT
+ sn = row_number() over(order by trn.sCountry)
+ ,country = upper(trn.sCountry)
+ ,txnCount = count(''x'')
+ FROM remitTranTemp trn WITH(NOLOCK)
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'',''Compliance Hold'',''OFAC Hold'',''OFAC/Compliance Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND trn.tranType=''I'' AND
+ trn.tranType <> ''O'' AND isOnlineTxn <> ''Y''
+ group by trn.sCountry
+ '
+
+ EXEC (@tablesql)
+ --print @tablesql
+ END
+
+ IF @flag = 'OnlineTxn-waitingList'
+ BEGIN
+ SET @tablesql = '
+ SELECT
+ sn = row_number() over(order by trn.sCountry)
+ ,country = upper(trn.sCountry)
+ ,txnCount = count(''x'')
+ FROM remitTranTemp trn WITH(NOLOCK)
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'',''Compliance Hold'',''OFAC Hold'',''OFAC/Compliance Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND trn.tranType=''O'' AND isOnlineTxn =''Y''
+ group by trn.sCountry
+ '
+
+ EXEC (@tablesql)
+ --print @tablesql
+ END
+
+ IF @flag = 'getTxnForApproveByAgent'
+ BEGIN
+ SET @table = '
+ SELECT DISTINCT
+ trn.id
+ ,controlNo = dbo.fnadecryptstring(controlNo)
+ ,branch = am.agentName
+ ,country = trn.pCountry
+ ,senderId = sen.customerId
+ ,sender = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
+ ,receiverId = rec.customerId
+ ,receiver = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
+ ,amt = CAST(trn.cAmt AS DECIMAL(18, 2))
+ ,trn.paymentMethod
+ ,voucherNo = trn.voucherNo
+ ,txnDate = CAST(trn.createdDate AS DATE)
+ ,txncreatedBy = trn.createdBy
+ FROM remitTranTemp trn WITH(NOLOCK) ' + @cdTable +
+ '
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND
+ ISNULL(trn.isOnlineTxn,''N'') <>''Y'' AND trn.tranType<>''O''
+ AND TRN.COLLMODE = ''CASH COLLECT''
+ '
+
+ IF @user IS NOT NULL
+ SET @table = @table + ' AND trn.createdBy <> ''' + @user + ''''
+
+ IF @settlingAgentId IS NOT NULL
+ SET @table = @table + ' AND trn.sAgent = ''' + CAST(@settlingAgentId AS VARCHAR) + ''''
+
+ IF @id IS NOT NULL
+ SET @table = @table + ' AND trn.id = ''' + LTRIM(RTRIM(@id)) + ''''
+
+ IF @country IS NOT NULL
+ SET @table = @table + ' AND trn.pCountry LIKE ''' + @country + '%'''
+
+ IF @sendCountry IS NOT NULL
+ SET @table = @table + ' AND trn.sCountry LIKE ''' + @sendCountry + '%'''
+
+ IF @amt IS NOT NULL
+ SET @table = @table + ' AND trn.pAmt = ' + CAST(@amt AS VARCHAR(20)) + ''
+
+ IF @voucherNo IS NOT NULL
+ SET @table = @table + ' AND trn.voucherNo = ''' + @voucherNo + ''''
+
+ IF @txncreatedBy IS NOT NULL
+ SET @table = @table + ' AND trn.createdBy = ''' + @txncreatedBy + ''''
+
+ IF @txnDate IS NOT NULL
+ SET @table = @table + ' AND CAST(trn.createdDate AS DATE)=''' + @txnDate + ''''
+
+ IF @ControlNo IS NOT NULL
+ SET @table = @table + ' AND trn.controlNo = dbo.fnaEncryptString(''' + LTRIM(RTRIM(@ControlNo)) + ''')'
+
+ IF @sendBranch IS NOT NULL
+ SET @table = @table + ' AND trn.sBranch = ''' + @sendBranch + ''''
+ SET @sql = '
+ SELECT
+ *
+ FROM (
+ ' + @table + '
+ ) x
+ WHERE 1 = 1 '
+
+ IF @sender IS NOT NULL
+ SET @sql = @sql + ' AND sender LIKE ''' + @sender + '%'''
+
+ IF @receiver IS NOT NULL
+ SET @sql = @sql + ' AND receiver LIKE ''' + @receiver + '%'''
+
+ PRINT @sql
+
+ EXEC (@sql)
+
+ RETURN
+ END
+
+ IF @flag = 'getTxnForVerify'
+ BEGIN
+ SET @table = '
+ SELECT DISTINCT
+ trn.id
+ ,controlNo = dbo.fnadecryptstring(controlNo)
+ ,branch = am.agentName
+ ,country = trn.pCountry
+ ,senderId = sen.customerId
+ ,sender = sen.firstName + ISNULL( '' '' + sen.middleName, '''') + ISNULL( '' '' + sen.lastName1, '''') + ISNULL( '' '' + sen.lastName2, '''')
+ ,receiverId = rec.customerId
+ ,receiver = rec.firstName + ISNULL( '' '' + rec.middleName, '''') + ISNULL( '' '' + rec.lastName1, '''') + ISNULL( '' '' + rec.lastName2, '''')
+ ,amt = CAST(trn.cAmt AS DECIMAL(18, 2))
+ ,trn.paymentMethod
+ ,voucherNo = trn.voucherNo
+ ,txnDate = CAST(trn.createdDate AS DATE)
+ ,txncreatedBy = trn.createdBy
+ FROM remitTranTemp trn WITH(NOLOCK) ' + @cdTable +
+ '
+ LEFT JOIN apiRoutingTable art WITH(NOLOCK) ON trn.pAgent = art.agentId
+ INNER JOIN agentMaster am WITH(NOLOCK) ON trn.sBranch = am.agentId
+ INNER JOIN tranSendersTemp sen WITH(NOLOCK) ON trn.id = sen.tranId
+ INNER JOIN tranReceiversTemp rec WITH(NOLOCK) ON trn.id = rec.tranId
+ WHERE trn.tranStatus IN (''Hold'') AND
+ trn.payStatus = ''Unpaid'' AND
+ trn.approvedBy IS NULL AND ISNULL(sRouteId,''0'') =''1''
+ '
+
+ IF @sAgent IS NOT NULL
+ BEGIN
+ SET @table = @table + ' AND trn.sAgent = ''' + @sendAgent + ''''
+ END
+
+ SET @sql = '
+ SELECT
+ *
+ FROM (
+ ' + @table + '
+ ) x
+ WHERE 1 = 1 '
+
+ PRINT @sql
+
+ EXEC (@sql)
+ END
+END TRY
+
+BEGIN CATCH
+ --IF @@TRANCOUNT > 0
+ -- ROLLBACK TRANSACTION
+
+ SELECT 1 error_code
+ ,ERROR_MESSAGE() msg
+ ,NULL id
+END CATCH
diff --git a/Deployment/V10/Backup/proc_notification.sql b/Deployment/V10/Backup/proc_notification.sql
new file mode 100644
index 0000000..d89b8f1
--- /dev/null
+++ b/Deployment/V10/Backup/proc_notification.sql
@@ -0,0 +1,128 @@
+USE [FastMoneyPro_Remit]
+GO
+/****** Object: StoredProcedure [dbo].[proc_notification] Script Date: 8/12/2024 4:34:30 AM ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+
+
+ALTER PROC [dbo].[proc_notification]
+ @user VARCHAR(50)
+ ,@portal VARCHAR(20) = NULL
+ ,@branch_id INT = NULL
+AS
+-- EXEC [proc_notification] @user='atit'
+--#1064 - add renew id
+--#24825 - changes to get correct notification count
+ SET NOCOUNT ON;
+ SET XACT_ABORT ON;
+ BEGIN
+ IF @portal = 'AGENT'
+ BEGIN
+ --SELECT COUNT('A') AS [count] , CAST(COUNT('A') AS VARCHAR) + 'Vault Deposit Request(s) pending' AS [msg],
+ -- 'Approve Deposit Request(s)' AS Msg1,'/AgentNew/vaulttransfer/approvetransfertovaultlist.aspx' AS [link]
+ --FROM BRANCH_CASH_IN_OUT (NOLOCK)
+ --WHERE branchId = @branch_id
+ --AND HEAD = 'Transfer To Vault'
+ --AND MODE = 'C'
+ --AND createdBy <> @user
+ --AND APPROVEDBY IS NULL
+
+ --UNION ALL
+
+ --SELECT COUNT('A') AS [count] , CAST(COUNT('A') AS VARCHAR) + 'Vault Deposit Request(s) pending' AS [msg],
+ -- 'Approve Deposit Request(s)' AS Msg1,'/AgentNew/ApproveCashTransfer/List.aspx' AS [link]
+ --FROM BRANCH_CASH_IN_OUT B(NOLOCK)
+ --INNER JOIN FASTMONEYPRO_ACCOUNT.DBO.AC_MASTER AM(NOLOCK) ON AM.ACCT_NUM = B.TOACC
+ --WHERE AM.AGENT_ID = @branch_id
+ --AND AM.ACCT_RPT_CODE = 'BVA'
+ --AND HEAD = 'Transfer From Vault'
+ --AND MODE = 'CV'
+ --AND APPROVEDBY IS NULL
+ RETURN
+ END
+ IF (SELECT dbo.FNAHasRight(@User,'90100000') )='N'
+ RETURN
+ DECLARE @NotificationList table([count] INT,Msg VARCHAR(100), Msg1 VARCHAR(50),Link VARCHAR(100))
+
+ INSERT INTO @NotificationList
+ -- SELECT COUNT('A') AS [count] , CAST(COUNT('A') AS VARCHAR) + ' Modification Request(s) pending' AS [msg],
+ --'Approve Modify Txn(s)' AS Msg1,'/Remit/Transaction/ApproveModification/List.aspx' AS [link]
+ -- FROM tranModifyLog TL WITH ( NOLOCK )
+ -- WHERE TL.status = 'Request' AND TL.MsgType = 'Modify'
+ --UNION ALL
+ --SELECT COUNT('A') AS [count] ,CAST(COUNT('A') AS VARCHAR) + ' Cancel Request(s) pending' AS [msg], 'Approve Cancel Txn(s)' AS Msg1,
+ -- '/Remit/Transaction/Cancel/ApproveReqUnapprovedTxn.aspx' AS [link]
+ --FROM vwRemitTran trn WITH ( NOLOCK )
+ -- INNER JOIN tranCancelrequest A WITH ( NOLOCK ) ON A.controlNo = trn.controlNo
+ --WHERE trn.tranStatus = 'CancelRequest'
+ -- AND A.cancelStatus = 'CancelRequest'
+ --UNION ALL
+ --SELECT COUNT('A') AS [count] ,
+ -- CAST(COUNT('A') AS VARCHAR) + ' Blocked Transaction(s)' AS [msg], 'Approve Blocked Txn(s)' AS Msg1,
+ -- '/Remit/Transaction/BlockTransaction/List.aspx' AS [link]
+ --FROM remitTran trn WITH ( NOLOCK )
+ --WHERE trn.tranStatus = 'Block'
+ --UNION ALL
+ --SELECT COUNT('A') AS [count] ,CAST(COUNT('A') AS VARCHAR) + ' Locked Transaction(s)' AS [msg], 'Release Locked Txn(s)' AS Msg1,
+ -- '/Remit/Transaction/UnlockTransaction/List.aspx' AS [link]
+ --FROM remitTran trn WITH ( NOLOCK )
+ --WHERE trn.tranStatus = 'Lock'
+ -- -- AND trn.tranType = 'D'
+ --UNION ALL
+ SELECT COUNT('A') AS [count] ,
+ CAST(COUNT('A') AS VARCHAR) + ' Txn(s) Pending For Approval' AS [msg], 'Approve Txn(s)' AS Msg1,
+ '/Remit/Transaction/Approve/Manage.aspx' AS [link]
+ FROM dbo.remitTran
+ WHERE tranStatus = 'Hold'
+ AND payStatus = 'Unpaid'
+ AND approvedBy IS NULL
+ -- AND tranType = 'D'
+
+ UNION ALL
+ SELECT COUNT('A') AS [count] ,
+ CAST(COUNT('A') AS VARCHAR) + '(CR) Txn Approval Pending' AS [msg], 'Approve International Txn(s)' AS Msg1,
+ '/Remit/Transaction/ApproveTxn/holdTxnList.aspx' AS [link]
+ FROM dbo.remitTranTemp
+ WHERE tranStatus IN ( 'Hold')
+ AND payStatus = 'Unpaid'
+ AND approvedBy IS NULL AND verifiedDate IS NOT NULL AND ISNULL(sRouteId,'0') in('0','M')
+ AND tranType = 'I'
+ UNION ALL
+ SELECT COUNT('A') AS [count] ,
+ CAST(COUNT('A') AS VARCHAR) + ' Mobile/Web Txn Approval Pending' AS [msg], 'Approve Mobile/Web Txn(s)' AS Msg1,
+ '/Remit/Transaction/ApproveTxn/holdTxnListMobile.aspx?country=UNITED KINGDOM' AS [link]
+ FROM dbo.remitTranTemp
+ WHERE tranStatus IN ( 'Hold') --, 'Compliance Hold', 'OFAC Hold', 'OFAC/Compliance Hold'
+ AND payStatus = 'Unpaid'
+ AND approvedBy IS NULL
+ AND tranType = 'M'
+ AND verifiedBy IS NOT NULL
+ UNION ALL
+ SELECT COUNT('A') AS [count] ,
+ CAST(COUNT('A') AS VARCHAR) + ' Slip upload(s) Pending For Approval' AS [msg], 'Slip Deposit(s)' AS Msg1,
+ '/MobileRemit/Admin/DepositSlip/Manage.aspx' AS [link]
+ FROM dbo.[depositSlip] WHERE status =0 and approveddate is null
+
+ UNION ALL
+ -- SELECT COUNT('A') AS [count] ,
+ -- CAST(COUNT('A') AS VARCHAR) + ' Renew id(s) Pending For Approval' AS [msg], 'Renew Id(s)' AS Msg1,
+ -- '/MobileRemit/Admin/Operation/RenewID/Manage.aspx' AS [link]
+ -- FROM dbo.customerdocumenttmp where ISNULL(isDeleted,0)=0 and approvedby IS NULL
+ --UNION ALL
+ SELECT COUNT('A') AS [count] ,
+ CAST(COUNT('A') AS VARCHAR) + ' Partner Ticket(s) For Resolve' AS [msg], 'Partner Trouble Ticket(s)' AS Msg1,
+ '/Remit/Transaction/TroubleTicket/UnResolvedList.aspx' AS [link]
+ FROM tranModifyLog TM
+ inner join remitTran RT WITH(NOLOCK) ON TM.tranId = RT.id-- or rt.controlNo = tm.controlNo)
+ left join applicationUsers AU WITH(NOLOCK) on AU.userName=TM.createdBy
+ left join agentMaster AM WITH(NOLOCK) ON AM.agentId=AU.agentId
+ where fieldName='STATUS_SYNC' AND [status] ='Not Resolved'
+ AND TM.MsgType = 'c' and tm.createdby in ('syncApi','TxnPushJob')
+
+ SELECT * FROM @NotificationList WHERE [count] > 0
+ END;
+
+
+
diff --git a/Deployment/V10/Backup/proc_online_core_customerSetup.sql b/Deployment/V10/Backup/proc_online_core_customerSetup.sql
new file mode 100644
index 0000000..4a0ea64
--- /dev/null
+++ b/Deployment/V10/Backup/proc_online_core_customerSetup.sql
@@ -0,0 +1,3872 @@
+USE [FastMoneyPro_Remit]
+GO
+/****** Object: StoredProcedure [dbo].[proc_online_core_customerSetup] Script Date: 8/12/2024 4:35:44 AM ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+
+
+
+
+
+ALTER PROC [dbo].[proc_online_core_customerSetup] @flag VARCHAR(50) = NULL
+ ,@user VARCHAR(30) = NULL
+ ,@customerId VARCHAR(30) = NULL
+ ,@fullName NVARCHAR(200) = NULL
+ ,@passportNo VARCHAR(30) = NULL
+ ,@mobile VARCHAR(15) = NULL
+ ,@firstName VARCHAR(100) = NULL
+ ,@middleName VARCHAR(100) = NULL
+ ,@lastName1 VARCHAR(100) = NULL
+ ,@lastName2 VARCHAR(100) = NULL
+ ,@customerIdType VARCHAR(30) = NULL
+ ,@customerIdNo VARCHAR(50) = NULL
+ ,@custIdissueDate VARCHAR(30) = NULL
+ ,@custIdValidDate VARCHAR(30) = NULL
+ ,@custDOB VARCHAR(30) = NULL
+ ,@custTelNo VARCHAR(30) = NULL
+ ,@custMobile VARCHAR(30) = NULL
+ ,@custCity VARCHAR(100) = NULL
+ ,@custPostal VARCHAR(30) = NULL
+ ,@companyName VARCHAR(100) = NULL
+ ,@custAdd1 VARCHAR(100) = NULL
+ ,@custAdd2 VARCHAR(100) = NULL
+ ,@country VARCHAR(30) = NULL
+ ,@custNativecountry VARCHAR(30) = NULL
+ ,@custEmail VARCHAR(50) = NULL
+ ,@custGender VARCHAR(30) = NULL
+ ,@custSalary VARCHAR(30) = NULL
+ ,@memberId VARCHAR(30) = NULL
+ ,@occupation VARCHAR(30) = NULL
+ ,@state VARCHAR(30) = NULL
+ ,@zipCode VARCHAR(30) = NULL
+ ,@district VARCHAR(30) = NULL
+ ,@homePhone VARCHAR(30) = NULL
+ ,@workPhone VARCHAR(30) = NULL
+ ,@placeOfIssue VARCHAR(30) = NULL
+ ,@customerType VARCHAR(30) = NULL
+ ,@isBlackListed VARCHAR(30) = NULL
+ ,@relativeName VARCHAR(30) = NULL
+ ,@relationId VARCHAR(30) = NULL
+ ,@lastTranId VARCHAR(30) = NULL
+ ,@receiverName VARCHAR(100) = NULL
+ ,@tranId VARCHAR(20) = NULL
+ ,@ICN VARCHAR(50) = NULL
+ ,@bank VARCHAR(100) = NULL
+ ,@bankId VARCHAR(100) = NULL
+ ,@accountNumber VARCHAR(100) = NULL
+ ,@mapCodeInt VARCHAR(10) = NULL
+ ,@sortBy VARCHAR(50) = NULL
+ ,@sortOrder VARCHAR(5) = NULL
+ ,@pageSize INT = NULL
+ ,@pageNumber INT = NULL
+ ,@HasDeclare INT = NULL
+ ,@agent VARCHAR(50) = NULL
+ ,@branch VARCHAR(50) = NULL
+ ,@branchId VARCHAR(50) = NULL
+ ,@onlineUser VARCHAR(50) = NULL
+ ,@ipAddress VARCHAR(30) = NULL
+ ,@howDidYouHear VARCHAR(200) = NULL
+ ,@ansText VARCHAR(200) = NULL
+ ,@isActive CHAR(1) = NULL
+ ,@email VARCHAR(150) = NULL
+ ,@searchCriteria VARCHAR(30) = NULL
+ ,@searchValue VARCHAR(50) = NULL
+ ,@newPassword VARCHAR(20) = NULL
+ ,@createdDate DATETIME = NULL
+ ,@createdBy VARCHAR(50) = NULL
+ ,@verifyDoc1 VARCHAR(255) = NULL
+ ,@verifyDoc2 VARCHAR(255) = NULL
+ ,@verifyDoc3 VARCHAR(255) = NULL
+ ,@verifyDoc4 VARCHAR(255) = NULL
+ ,@membershipId VARCHAR(50) = NULL
+ ,@sourceOfFound VARCHAR(100) = NULL
+ ,@street VARCHAR(80) = NULL
+ ,@streetUnicode NVARCHAR(100) = NULL
+ ,@cityUnicode NVARCHAR(100) = NULL
+ ,@visaStatus INT = NULL
+ ,@employeeBusinessType INT = NULL
+ ,@nameOfEmployeer VARCHAR(80) = NULL
+ ,@SSNNO VARCHAR(20) = NULL
+ ,@remittanceAllowed BIT = NULL
+ ,@remarks VARCHAR(1000) = NULL
+ ,@registerationNo VARCHAR(30) = NULL
+ ,@organizationType INT = NULL
+ ,@dateofIncorporation DATETIME = NULL
+ ,@natureOfCompany INT = NULL
+ ,@position INT = NULL
+ ,@nameOfAuthorizedPerson VARCHAR(80) = NULL
+ ,@fromDate NVARCHAR(20) = NULL
+ ,@toDate NVARCHAR(20) = NULL
+ ,@monthlyIncome VARCHAR(50) = NULL
+ ,@isCounterVisited CHAR(1) = NULL
+ ,@additionalAddress VARCHAR(50) = NULL
+ ,@loginBranchId BIGINT = NULL
+ ,@rowid BIGINT = NULL
+ ,@docType INT = NULL
+ ,@occupationOther VARCHAR(100) = NULL
+ ,@changedSecurityInfo VARCHAR(50) = NULL
+ ,@referralId VARCHAR(10) = NULL
+ ,@customerOtherIdNo VARCHAR(50) = NULL
+ ,@serviceUsedFor VARCHAR(10) = NULL
+ ,@password VARCHAR(20) = NULL
+ ,@mobileUser VARCHAR(5) = NULL
+ ,@roleId VARCHAR(50) = NULL
+ ,@ofacRes VARCHAR(MAX) = NULL
+ ,@ofacReason VARCHAR(200) = NULL
+ ,@ofacRemarks VARCHAR(200) = NULL
+ ,@deleteReason VARCHAR(200) = NULL
+ ,@registrationType VARCHAR(10) = NULL
+ ,@source varchar(10) = NULL
+ ,@lawsoncardno VARCHAR(10)= NUll
+ ,@createdFrom CHAR(1)= 'C'
+ ,@referralCode VARCHAR(100) = NULL
+ ,@kycStatus VARCHAR(100) = NULL
+AS
+SET NOCOUNT ON;
+SET XACT_ABORT ON;
+
+----------------------------------------------------
+--#134 -> Allow edit option of address in Town Area
+--Replace with FNAGetCustomerAddress
+--#180 -> SHOW KANJI AND ROMAN TEXT IN ADDRESS STATE AND CITY
+--#178 -> Show only Roman in Remittance Statement
+--#101 -> mobile changes
+--#712 -> @flag = customerdetailForEnableDisable
+-- #698 -> flag = 'customer-details-activate'
+-- #740 -> added @flag = 'clearKYC'
+-- #733 -> Possible Duplicate Match summary
+--format date
+-- #947 -> Added back button for re-verification in approve customer page
+-- #989 -> Added new @flag = 'deleteCustomer' for deleting customer from verify mobile customer page
+-- #950 -> Add additional information on edit customer page (changes in @flag = 'customer-details')
+-- #1077 -> Updated ac_master on customer modification for wallet name change
+-- #1094 -> remarks for verify pending
+-- #1104 - show dj list in approve customer , @Flag ='verify-customer-details', commented out, chages in @flag = 'ofac-list'
+--Replace fullname with lastname, fix verify Remarks
+-- #1121 - @flag = 'customer-details' , added introducer
+--#1058 Lawson card Enhancement
+-- #131 - possible duplicate matches @Flag ='verify-customer-details'
+-- #11862 - Possible duplicate match sender - Mobile
+-- #11968 - menu for delete customer , @flag = 'deleteCustomer-new'
+-- #11922 - delete verfication for trustdoc on delete customer , @flag = 'deleteCustomer'
+-- #20532 changes in @flag = 'customer-register-core' for otp email for user reg from customer portal
+-- added hyperlink in membership id to redirect in customer details page
+-- #32089 Add Action button in Incomplete KYC report
+---------------------------------------------------------------------------
+IF @sortBy = 'SN'
+ SET @sortBy = NULL;
+
+SELECT @homePhone = @customerIdNo
+ ,@accountNumber = REPLACE(@accountNumber, '-', '');
+
+IF ISNUMERIC(@country) <> '1'
+ SET @country = (
+ SELECT TOP 1 countryId
+ FROM countryMaster WITH (NOLOCK)
+ WHERE countryName = @country
+ );
+
+BEGIN TRY
+ CREATE TABLE #msg (
+ errorCode INT
+ ,msg VARCHAR(100)
+ ,id INT
+ );
+
+ DECLARE @sql VARCHAR(MAX)
+ ,@oldValue VARCHAR(MAX)
+ ,@newValue VARCHAR(MAX)
+ ,@module VARCHAR(10)
+ ,@tableAlias VARCHAR(100)
+ ,@logIdentifier VARCHAR(50)
+ ,@logParamMod VARCHAR(100)
+ ,@logParamMain VARCHAR(100)
+ ,@table VARCHAR(MAX)
+ ,@select_field_list VARCHAR(MAX)
+ ,@extra_field_list VARCHAR(MAX)
+ ,@sql_filter VARCHAR(MAX)
+ ,@modType VARCHAR(6)
+ ,@errorMsg VARCHAR(MAX)
+ ,@bankName VARCHAR(100)
+ --,@registrationType VARCHAR(10) = NULL
+ ,@trustdocId UNIQUEIDENTIFIER = NULL;
+
+
+ SELECT @logIdentifier = 'customerId'
+ ,@logParamMain = 'customerMaster'
+ ,@module = '20'
+ ,@tableAlias = 'CustomerMaster';
+
+ SET @fullName = UPPER(@fullName)
+ SET @passportNo = UPPER(@passportNo)
+ SET @firstName = UPPER(@firstName)
+ SET @middleName = UPPER(@middleName)
+ SET @lastName1 = UPPER(@lastName1)
+ SET @lastName2 = UPPER(@lastName2)
+
+ /***************************************GME Online Core************************************************/
+ IF @flag = 'customer-list'
+ BEGIN
+ IF @sortBy IS NULL
+ SET @sortBy = 'createdDate';
+
+ IF @sortOrder IS NULL
+ SET @sortOrder = 'DESC';
+ SET @table = '(
+ SELECT
+ customerId as Id
+ ,fullName = ISNULL(firstName, '''') + ISNULL('' '' + middleName, '''') + ISNULL('' '' + lastName1, '''') + ISNULL('' '' + lastName2, '''')
+ ,sd.detailTitle as idType
+ ,ISNULL(cm.idNumber,'''') as idNumber
+ ,com.countryName
+ ,cm.city
+ ,ISNULL(cm.email,'''') as email
+ ,ISNULL(cm.mobile,'''') as mobile
+ ,cm.createdDate
+ ,accountName =cm.bankAccountNo
+ ,bankName = bl.bankName
+ FROM dbo.customerMaster cm(nolock)
+ LEFT JOIN dbo.staticDataValue sd(nolock) ON sd.valueId=cm.idType
+ INNER JOIN dbo.countryMaster com(nolock) ON com.countryId = cm.nativeCountry
+ LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId
+ WHERE 1=1 and cm.approvedDate is null
+ ';
+
+ IF @createdDate IS NOT NULL
+ SET @table = @table + ' AND cm.createdDate between ''' + CONVERT(VARCHAR, @createdDate, 101) + ''' AND ''' + CONVERT(VARCHAR, @createdDate, 101) + ' 23:59:59''';
+ SET @table = @table + ')x';
+ SET @sql_filter = '';
+
+ IF @mobile IS NOT NULL
+ SET @sql_filter = @sql_filter + ' AND REPLACE(idNumber, ''-'', '''') =''' + REPLACE(@mobile, '-', '') + '''';
+
+ --SET @sql_filter = @sql_filter + ' AND mobile ='''+ @mobile + '''';
+ IF @email IS NOT NULL
+ SET @sql_filter += ' AND email like ''' + @email + '%''';
+
+ IF @custNativecountry IS NOT NULL
+ SET @sql_filter += ' AND countryName = ''' + @custNativecountry + '''';
+ SET @select_field_list = 'id,fullName,idType,idNumber,countryName,city,email,mobile,createdDate,accountName,bankName';
+
+ EXEC dbo.proc_paging @table
+ ,@sql_filter
+ ,@select_field_list
+ ,@extra_field_list
+ ,@sortBy
+ ,@sortOrder
+ ,@pageSize
+ ,@pageNumber;
+
+ RETURN;
+ END;
+
+ IF @flag = 'customer-list-approved'
+ BEGIN
+ IF @sortBy IS NULL
+ SET @sortBy = 'createdDate';
+
+ IF @sortOrder IS NULL
+ SET @sortOrder = 'DESC';
+ SET @table = '(
+ SELECT
+ customerId as Id
+ ,fullName = ISNULL(firstName, '''') + ISNULL('' '' + middleName, '''') + ISNULL('' '' + lastName1, '''') + ISNULL('' '' + lastName2, '''')
+ ,sd.detailTitle as idType
+ ,ISNULL(cm.idNumber,'''') as idNumber
+ ,com.countryName
+ ,cm.city
+ ,ISNULL(cm.email,'''') as email
+ ,ISNULL(cm.mobile,'''') as mobile
+ ,cm.createdDate
+ ,accountName =cm.bankAccountNo
+ ,bankName = bl.bankName
+ FROM dbo.customerMaster cm(nolock)
+ LEFT JOIN dbo.staticDataValue sd(nolock) ON sd.valueId=cm.idType
+ INNER JOIN dbo.countryMaster com(nolock) ON com.countryId = cm.nativeCountry
+ LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId
+ WHERE 1=1 and cm.approvedDate is not null
+ ';
+
+ IF @createdDate IS NOT NULL
+ SET @table = @table + ' AND cm.createdDate between ''' + CONVERT(VARCHAR, @createdDate, 101) + ''' AND ''' + CONVERT(VARCHAR, @createdDate, 101) + ' 23:59:59''';
+ SET @sql_filter = '';
+ SET @table = @table + ')x';
+
+
+ IF @mobile IS NOT NULL
+ SET @sql_filter = @sql_filter + ' AND REPLACE(idNumber, ''-'', '''') =''' + REPLACE(@mobile, '-', '') + '''';
+
+ --SET @sql_filter = @sql_filter + ' AND mobile ='''+ @mobile + '''';
+ IF @email IS NOT NULL
+ SET @sql_filter += ' AND email like ''' + @email + '%''';
+
+ IF @custNativecountry IS NOT NULL
+ SET @sql_filter += ' AND countryName = ''' + @custNativecountry + '''';
+ SET @select_field_list = 'id,fullName,idType,idNumber,countryName,city,email,mobile,createdDate,accountName,bankName';
+
+ EXEC dbo.proc_paging @table
+ ,@sql_filter
+ ,@select_field_list
+ ,@extra_field_list
+ ,@sortBy
+ ,@sortOrder
+ ,@pageSize
+ ,@pageNumber;
+
+ RETURN;
+ END;
+
+ IF @flag = 'resetpwd'
+ BEGIN
+ UPDATE dbo.customerMaster
+ SET customerPassword = dbo.FNAEncryptString(@newPassword)
+ ,isForcedPwdChange = 1
+ ,invalidAttemptCount = 0
+ WHERE customerId = @customerId;
+
+ EXEC dbo.proc_errorHandler '0'
+ ,'Success!'
+ ,NULL;
+
+ RETURN;
+ END;
+
+ IF @flag = 'autosetpwd'
+ BEGIN
+ SELECT @mobile = mobile
+ ,@firstName = firstName
+ FROM customerMaster(NOLOCK)
+ WHERE customerId = @customerId;
+
+ SELECT @newPassword = LOWER(LEFT(@firstName, 1)) + LOWER(RIGHT(NEWID(), 6)) + '@G';
+
+ SET @newPassword = REPLACE(@newPassword, 'o', 'z');
+ SET @newPassword = REPLACE(@newPassword, '0', '9');
+ SET @newPassword = REPLACE(@newPassword, 'i', 'L');
+
+ UPDATE dbo.customerMaster
+ SET customerPassword = dbo.FNAEncryptString(@newPassword)
+ ,isForcedPwdChange = 0
+ ,invalidAttemptCount = 0
+ ,modifiedBy = @user
+ ,modifiedDate = GETDATE()
+ WHERE customerId = @customerId;
+
+ SET @errorMsg = 'Your JME login password is ' + @newPassword;
+
+ EXEC proc_CallToSendSMS @FLAG = 'I'
+ ,@SMSBody = @errorMsg
+ ,@MobileNo = @mobile;
+
+ EXEC dbo.proc_errorHandler '0'
+ ,'Success!'
+ ,@mobile;
+
+ RETURN;
+ END;
+
+ IF @flag = 'sEmail'
+ BEGIN
+ SELECT email
+ FROM dbo.customerMaster(NOLOCK)
+ WHERE customerId = @customerId;
+
+ RETURN;
+ END;
+
+ IF @flag = 'modify-list'
+ BEGIN
+ IF @sortBy IS NULL
+ SET @sortBy = 'createdDate';
+
+ IF @sortOrder IS NULL
+ SET @sortOrder = 'DESC';
+ SET @table = '(
+ SELECT
+ cm.customerId
+ ,fullName = cm.firstName
+ ,sd.detailTitle as idType
+ ,ISNULL(cm.idNumber,'''') as idNumber
+ ,ISNULL(cm.email,'''') as email
+ ,ISNULL(cm.mobile,'''') as mobile
+ ,cm.createdDate
+ ,cm.bankAccountNo
+ ,bankName = bl.bankName
+ ,cm.walletAccountNo
+ FROM dbo.customerMaster cm(nolock)
+ LEFT JOIN dbo.staticDataValue sd(nolock) ON sd.valueId=cm.idType
+ LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId
+ WHERE cm.approvedDate is not null and 1=1
+ ';
+
+ IF @createdDate IS NOT NULL
+ SET @table = @table + ' AND cm.verifiedDate between ''' + CONVERT(VARCHAR, @createdDate, 101) + ''' AND ''' + CONVERT(VARCHAR, @createdDate, 101) + ' 23:59:59''';
+ SET @table = @table + ')x';
+ SET @sql_filter = '';
+
+ IF ISNULL(@searchCriteria, '') <> ''
+ AND ISNULL(@searchValue, '') <> ''
+ BEGIN
+ IF @searchCriteria = 'idNumber'
+ BEGIN
+ IF ISNUMERIC(@searchValue) <> 1
+ SET @searchValue = '-1';--to ignore string value for datatype integer/customerID
+ SET @sql_filter = @sql_filter + ' AND customerId = ''' + @searchValue + '''';
+ END;
+ ELSE IF @searchCriteria = 'emailId'
+ SET @sql_filter = @sql_filter + ' AND email like ''' + @searchValue + '%''';
+ ELSE IF @searchCriteria = 'customerName'
+ SET @sql_filter = @sql_filter + ' AND fullName like ''' + @searchValue + '%''';
+ ELSE IF @searchCriteria = 'mobile'
+ SET @sql_filter = @sql_filter + ' AND mobile = ''' + @searchValue + '''';
+ END;
+
+ SET @select_field_list = 'customerId,fullName,idType,idNumber,email,mobile,createdDate,bankAccountNo,bankName,walletAccountNo';
+
+ EXEC dbo.proc_paging @table
+ ,@sql_filter
+ ,@select_field_list
+ ,@extra_field_list
+ ,@sortBy
+ ,@sortOrder
+ ,@pageSize
+ ,@pageNumber;
+
+ RETURN;
+ END;
+
+ IF @flag = 's'
+ BEGIN
+ IF @sortBy IS NULL
+ SET @sortBy = 'createdDate';
+
+ IF @sortOrder IS NULL
+ SET @sortOrder = 'DESC';
+ SET @table = '(
+ SELECT distinct
+ customerId=cm.customerId
+ ,MEMBERSHIPID = '''' + CM.membershipId +''''
+ --,cm.membershipId
+ ,fullName =cm.fullName
+ ,sd.detailTitle as idType
+ ,ISNULL(cm.idNumber,'''') as idNumber
+ ,com.countryName,cm.dob,cm.address
+ ,cm.city
+ ,ISNULL(cm.email,'''') as email
+ ,ISNULL(cm.mobile,'''') as mobile
+ ,cm.createdDate
+ ,cm.bankAccountNo
+ ,bankName = bl.bankName
+ ,cm.LawsonCardNo
+ ,RegistrationType = CASE WHEN cm.RegistrationType IS NULL THEN ''Manual'' ELSE cm.RegistrationType END
+ ,ISNULL(cm.verificationCode, ''NOT COMPLETED'') as KYC_Status
+ ,Introducer=cm.referelCode
+ ,cm.idExpiryDate
+ ,idStatus = CASE WHEN GETDATE() > cm.idExpiryDate
+ THEN ''Expired''
+ ELSE ''Valid''
+ END
+ ,numOfReceiver = (SELECT COUNT(*) FROM receiverInformation WHERE customerId = cm1.customerId)
+ FROM dbo.customerMaster cm(nolock)
+ LEFT JOIN dbo.staticDataValue sd(nolock) ON sd.valueId=cm.idType
+ INNER JOIN dbo.countryMaster com(nolock) ON com.countryId = cm.nativeCountry
+ LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId
+ INNER JOIN customerMaster cm1 (NOLOCK) on cm.customerId = cm1.customerId
+ LEFT JOIN receiverInformation RI (NOLOCK) ON RI.customerId = cm1.customerId
+ WHERE 1=1 ) x';
+ SET @sql_filter = '';
+
+ IF ISNULL(@fromDate, '') <> ''
+ AND ISNULL(@toDate, '') <> ''
+ SET @sql_filter += ' AND createdDate BETWEEN ''' + @fromDate + ''' AND ''' + @toDate + ' 23:59:59'''
+
+ IF ISNULL(@kycStatus, '') <> ''
+ SET @sql_filter = @sql_filter + ' AND KYC_Status like ''' + @kycStatus + '%''';
+ BEGIN
+ IF @searchCriteria = 'idNumber'
+ BEGIN
+ SET @sql_filter = @sql_filter + ' AND REPLACE(idNumber, ''-'', '''') = ''' + REPLACE(@searchValue, '-', '') + '''';
+ END;
+ ELSE IF @searchCriteria = 'emailId'
+ SET @sql_filter = @sql_filter + ' AND email like ''' + @searchValue + '%''';
+ ELSE IF @searchCriteria = 'customerName'
+ SET @sql_filter = @sql_filter + ' AND fullName like ''' + @searchValue + '%''';
+ ELSE IF @searchCriteria = 'mobile'
+ SET @sql_filter = @sql_filter + ' AND mobile = ''' + @searchValue + '''';
+ ELSE IF @searchCriteria = 'bankAccountNo'
+ SET @sql_filter = @sql_filter + ' AND bankAccountNo = ''' + @searchValue + '''';
+ ELSE IF @searchCriteria = 'nativeCountry'
+ SET @sql_filter = @sql_filter + ' AND countryName = ''' + @searchValue + '''';
+ ELSE IF @searchCriteria = 'LawsonCardNo'
+ SET @sql_filter = @sql_filter + ' AND LawsonCardNo = ''' + @searchValue + '''';
+ ELSE IF @searchCriteria = 'verificationCode'
+ SET @sql_filter = @sql_filter + ' AND KYC_Status = ''' + @searchValue + '''';
+ ELSE IF @searchCriteria = 'idType'
+ SET @sql_filter = @sql_filter + ' AND idType like ''' + @searchValue + '%''';
+ ELSE IF @searchCriteria = 'idExpiryDate'
+ SET @sql_filter = @sql_filter + ' AND idStatus like ''' + @searchValue + '%''';
+ ELSE IF @searchCriteria = 'numOfReceiver'
+ SET @sql_filter = @sql_filter + ' AND numOfReceiver = ''' + @searchValue + '''';
+
+ END;
+
+
+ --IF @createdDate IS NOT NULL
+ -- SET @table = @table + ' AND cm.createdDate between '''+ CONVERT(VARCHAR,@createdDate,101) + ''' AND '''+ CONVERT(VARCHAR,@createdDate,101) + ' 23:59:59''';
+ -- SET @table=@table+')x'
+ -- SET @sql_filter = ''
+ -- IF @mobile IS NOT NULL
+ -- SET @sql_filter = @sql_filter + ' AND mobile ='''+ @mobile + '''';
+ -- IF @email IS NOT NULL
+ -- SET @sql_filter += ' AND email=''' + @email+ '''';
+ SET @select_field_list = 'customerId,membershipId,dob,address,fullName,idType,idNumber,countryName,city,email,mobile,createdDate,bankAccountNo,bankName,LawsonCardNo,RegistrationType,KYC_Status,Introducer,idExpiryDate,numOfReceiver';
+
+ EXEC dbo.proc_paging @table
+ ,@sql_filter
+ ,@select_field_list
+ ,@extra_field_list
+ ,@sortBy
+ ,@sortOrder
+ ,@pageSize
+ ,@pageNumber;
+
+ print @table
+ RETURN;
+ END;
+
+ IF @flag = 'customer-register-core'
+ BEGIN
+ SET @onlineUser = CASE
+ WHEN @onlineUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ SET @mobileUser = CASE
+ WHEN @mobileUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+
+ IF EXISTS (
+ SELECT 1
+ FROM customermaster
+ WHERE (
+ email = @custEmail
+ OR customerEmail = @custEmail
+ OR userName = @custEmail
+ )
+ )
+ BEGIN
+ SELECT '1' ErrorCode
+ ,'email already used' Msg
+ ,NULL id;
+
+ RETURN
+ END
+
+ IF EXISTS (
+ SELECT 1
+ FROM customermaster
+ WHERE
+ --@custMobile = mobile
+ --OR
+ --(LEN(@custMobile) = 10 AND (
+ -- mobile = '44' + @custMobile OR
+ -- '+44' + mobile = @custMobile
+ --))
+ --OR
+ --(LEN(@custMobile) = 12 AND LEFT(@custMobile, 2) = '44' AND (
+ -- mobile = SUBSTRING(@custMobile, 3, 10)
+ --))
+ --OR
+ --(LEN(@custMobile) = 13 AND LEFT(@custMobile, 3) = '+44' AND (
+ -- mobile = SUBSTRING(@custMobile, 4, 10)
+ --))
+ @custMobile IN (mobile, '+44' + mobile, '44' + mobile, SUBSTRING(mobile, 3, LEN(mobile)))
+ )
+ BEGIN
+ SELECT '1' AS ErrorCode,
+ 'Mobile No. ''' + @custMobile + ''' is already used' AS Msg,
+ @custMobile AS id;
+
+ RETURN;
+ END
+
+ --IF RIGHT(LEFT(@customerIdNo, 7), 1) <> '-'
+ --BEGIN
+ -- SELECT @errorMsg = 'Invalid Id number ' + @customerIdNo + ', your id number must be similar to XXXXXX-XXXXXXX(Include ''-'' also).'
+ -- EXEC proc_errorHandler 1, @errorMsg, @customerId
+ -- RETURN
+ --END
+ DECLARE @OBP_ID INT = NULL
+
+ --SELECT @OBP_ID = MAX(CAST(OBPID AS INT)) FROM CUSTOMERMASTER (NOLOCK)
+ --SET @OBP_ID = @OBP_ID + 1
+ --postalcode
+ IF EXISTS (
+ SELECT 'X'
+ FROM customerMaster WITH (NOLOCK)
+ WHERE email = @custEmail
+ )
+ BEGIN
+ SELECT @errorMsg = 'Customer with email ' + @custEmail + ' already exist.';
+
+ EXEC proc_errorHandler 1
+ ,@errorMsg
+ ,@customerId;
+
+ RETURN;
+ END;
+
+ IF EXISTS (
+ SELECT 'X'
+ FROM customerMaster WITH (NOLOCK)
+ WHERE email = @custEmail
+ AND ISNULL(onlineUser, 'N') = 'Y'
+ AND ISNULL(isDeleted, 'N') = 'N'
+ )
+ BEGIN
+ SELECT @errorMsg = 'Customer with email ' + @custEmail + ' already exist.';
+
+ EXEC proc_errorHandler 1
+ ,@errorMsg
+ ,@customerId;
+
+ RETURN;
+ END;
+
+ IF EXISTS (
+ SELECT 'x'
+ FROM customerMaster(NOLOCK)
+ WHERE REPLACE(idNumber, '-', '') = REPLACE(@customerIdNo, '-', '')
+ )
+ BEGIN
+ SELECT @errorMsg = 'Customer with idnumber ' + @customerIdNo + ' already exist.';
+
+ EXEC proc_errorHandler 1
+ ,@errorMsg
+ ,@customerId;
+
+ RETURN;
+ END;
+
+ DECLARE @newMobileNumber VARCHAR(20) = REPLACE(@custMobile, '+', '')
+
+ SET @newMobileNumber = CASE
+ WHEN @newMobileNumber LIKE '44%'
+ THEN STUFF(@newMobileNumber, 1, 2, '')
+ ELSE @newMobileNumber
+ END
+
+ --SET @newMobileNumber = '%' + @newMobileNumber
+ -- IF EXISTS ( SELECT 'X' FROM customerMaster WITH (NOLOCK)
+ -- WHERE mobile LIKE @newMobileNumber)
+ -- BEGIN
+ -- SELECT @errorMsg = 'Customer with mobile number '+ @custMobile + ' already exist.';
+ -- EXEC proc_errorHandler 1, @errorMsg, @customerId;
+ -- RETURN;
+ -- END;
+ --IF @customerIdType IN (1302,8008)
+ -- AND LEN(@customerIdNo) <> 14
+ -- BEGIN
+ -- SELECT @errorMsg = 'Invalid Id number '+ @customerIdNo + ', your id number must be similar to XXXXXX-XXXXXXX(Include ''-'' also).';
+ -- EXEC proc_errorHandler 1, @errorMsg, @customerId;
+ -- RETURN;
+ -- END;
+ SELECT @firstName = LTRIM(RTRIM(@firstName))
+ ,@middleName = LTRIM(RTRIM(@middleName))
+ ,@lastName1 = LTRIM(RTRIM(@lastName1))
+ ,@fullName = ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '') + ISNULL(' ' + @lastName2, '')
+
+ IF EXISTS (
+ SELECT 'X'
+ FROM customerMaster WITH (NOLOCK)
+ WHERE fullName = @fullName
+ AND dob = @custDOB
+ AND ISNULL(onlineUser, 'N') = 'Y'
+ AND ISNULL(mobileUser, 'N') = 'Y'
+ AND ISNULL(isDeleted, 'N') = 'N'
+ )
+ BEGIN
+ SELECT @errorMsg = 'It looks like you have already registered with IME London with fullname: ' + @fullName + ' and DOB: ' + @custDOB + '.\nPlease contact us on +44 02088660307 or e-mail us at info@imelondon.co.uk for any assistance.';
+
+ EXEC proc_errorHandler 1
+ ,@errorMsg
+ ,@customerId;
+
+ RETURN;
+ END;
+
+ IF @newPassword IS NULL
+ BEGIN
+ SET @newPassword = RIGHT('0000000' + CAST(CHECKSUM(NEWID()) AS VARCHAR), 7);
+ END
+
+ IF @streetUnicode = 'Nnull'
+ BEGIN
+ SET @streetUnicode = NULL;
+ END;
+
+ IF @cityUnicode = 'Nnull'
+ BEGIN
+ SET @cityUnicode = NULL;
+ END;
+
+ IF @customerType = '4701'
+ BEGIN
+ SET @employeeBusinessType = NULL;
+ END
+
+ --IF ISNULL(@street, '') <> ''
+ --BEGIN
+ -- SET @district = @street
+ -- SET @street = rtrim(ltrim(replace(replace(cast(@streetunicode AS VARCHAR), '?', ''), '-', '')));
+
+ -- SELECT @custCity = CITY_NAME
+ -- FROM TBL_JAPAN_ADDRESS_DETAIL(NOLOCK)
+ -- WHERE ROW_ID = @district
+ --END
+ --ELSE
+ --BEGIN
+ -- SELECT @custCity = CITY_NAME
+ -- ,@district = ROW_ID
+ -- FROM TBL_JAPAN_ADDRESS_DETAIL(NOLOCK)
+ -- WHERE ZIP_CODE = @zipCode
+ --END
+
+ BEGIN TRANSACTION;
+
+ INSERT INTO customerMaster (
+ firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,country
+ ,[address]
+ ,zipCode
+ ,district
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,occupation
+ ,isBlackListed
+ ,lastTranId
+ ,relationId
+ ,relativeName
+ ,gender
+ ,salaryRange
+ ,address2
+ ,fullName
+ ,createdBy
+ ,createdDate
+ ,postalCode
+ ,idIssueDate
+ ,idExpiryDate
+ ,idType
+ ,idNumber
+ ,telNo
+ ,agentId
+ ,branchId
+ ,onlineUser
+ ,ipAddress
+ ,customerPassword
+ ,customerType
+ ,isActive
+ ,verifiedBy
+ ,verifiedDate
+ ,isForcedPwdChange
+ ,bankName
+ ,bankAccountNo
+ ,HasDeclare
+ ,membershipId
+ ,[state]
+ ,sourceOfFund
+ ,street
+ ,streetUnicode
+ ,cityUnicode
+ ,visaStatus
+ ,employeeBusinessType
+ ,nameOfEmployeer
+ ,SSNNO
+ ,remittanceAllowed
+ ,remarks
+ ,registerationNo
+ ,organizationType
+ ,dateofIncorporation
+ ,natureOfCompany
+ ,position
+ ,nameOfAuthorizedPerson
+ ,monthlyIncome
+ ,OBPID
+ ,ADDITIONALADDRESS
+ ,documentType
+ ,occupationOther
+ ,isExistingCustomer
+ ,createdFrom
+ ,referralId
+ ,referelCode
+ ,otherIdNumber
+ ,serviceUsedFor
+ ,mobileUser
+ ,username
+ ,isEmailVerified
+ ,lawsoncardno
+ ,registrationType
+ ,verificationCode
+
+ )
+ VALUES (
+ @firstName
+ ,@middleName
+ ,@lastName1
+ ,@lastName2
+ ,@country
+ ,@custAdd1
+ ,ISNULL(@zipCode, @custPostal)
+ ,@district
+ ,@custCity
+ ,@custEmail
+ ,NULL
+ ,@workPhone
+ ,@custMobile
+ ,ISNULL(@custNativecountry,@country)
+ ,@custDOB
+ ,@placeOfIssue
+ ,@occupation
+ ,@isBlackListed
+ ,@lastTranId
+ ,@relationId
+ ,@relativeName
+ ,@custGender
+ ,@custSalary
+ ,@custAdd2
+ ,@fullName
+ ,@user
+ ,DATEADD(HH, 0, GETUTCDATE())
+ ,@custPostal
+ ,@custIdissueDate
+ ,@custIdValidDate
+ ,@customerIdType
+ ,@customerIdNo
+ ,@custTelNo
+ ,@loginBranchId
+ ,@branch
+ ,@onlineUser
+ ,@ipAddress
+ ,dbo.FNAEncryptString(@password)
+ ,@customerType
+ ,'Y'
+ ,@user
+ ,NULL
+ ,0
+ ,@bankId
+ ,@accountNumber
+ ,@HasDeclare
+ ,---- New Added Values
+ @membershipId
+ ,UPPER(@state)
+ ,UPPER(@sourceOfFound)
+ ,UPPER(@street)
+ ,UPPER(@streetUnicode)
+ ,UPPER(@cityUnicode)
+ ,@visaStatus
+ ,@employeeBusinessType
+ ,@nameOfEmployeer
+ ,@SSNNO
+ ,@remittanceAllowed
+ ,@remarks
+ ,@registerationNo
+ ,@organizationType
+ ,@dateofIncorporation
+ ,@natureOfCompany
+ ,@position
+ ,@nameOfAuthorizedPerson
+ ,@monthlyIncome
+ ,NULL
+ ,@additionalAddress
+ ,@docType
+ ,@occupationOther
+ ,CASE
+ WHEN @serviceUsedFor = 'on' THEN 0 ELSE 1 END
+ ,CASE @createdFrom WHEN 'W' THEN 'O' ELSE 'C' END
+ ,@referralId
+ ,@referralCode
+ ,UPPER(@customerOtherIdNo)
+ ,CASE
+ WHEN @serviceUsedFor = 'on'
+ THEN 'CM'
+ ELSE 'C'
+ END
+ ,'Y'
+ ,CASE
+ WHEN @serviceUsedFor IN ('on', 'online', 'CM') THEN @custEmail ELSE @custEmail END
+ , 0
+ ,CASE @createdFrom WHEN 'W' THEN 'KYC_LATER' ELSE 'KYC_NOW' END
+ ,'MKYC'
+ ,CASE @createdFrom WHEN 'C' THEN 'PROCESSING' ELSE 'NOT_COMPLETED' END
+ )
+
+ SET @customerId = SCOPE_IDENTITY();
+
+ EXEC PROC_GENERATE_MEMBERSHIP_ID @USER = @user
+ ,@CUSTOMERID = @customerId
+ ,@loginBranchId = @loginBranchId
+ ,@MEMBESHIP_ID = @membershipId OUT;
+
+ UPDATE dbo.customerMaster
+ SET membershipId = @membershipId
+ WHERE customerId = @customerId;
+
+ --IF @isCounterVisited ='Y'
+ --BEGIN
+ -- INSERT INTO dbo.TBL_CUSTOMER_KYC
+ -- ( customerId,kycMethod,kycStatus,createdBy,createdDate,isDeleted
+ -- )
+ -- VALUES (
+ -- @customerId,11048,11044,@user,GETDATE(),0
+ -- )
+ --END
+ IF @@TRANCOUNT > 0
+ COMMIT TRANSACTION;
+
+ SELECT '0' ErrorCode
+ ,'Customer has been registered successfully with membershipId: ' + CAST(@membershipId AS VARCHAR) Msg
+ ,@customerId id
+ ,cast(@customerId AS VARCHAR) + '|' + cast(@membershipId AS VARCHAR) + '|' + cast(cast(GETDATE() AS DATE) AS VARCHAR) extra
+ ,cast(@membershipId AS VARCHAR) extra1
+ END;
+
+ IF @flag = 'customer-details'
+ BEGIN
+ DECLARE @isTxnMade CHAR(1) , @introducer VARCHAR(100)
+
+ IF(@customerId IS NULL)
+ RETURN;
+
+ SELECT @introducer = intro.fullName + ' - ' + intro.membershipId
+ FROM (
+ SELECT cm.referelCode
+ ,cm.membershipId
+ ,customerId
+ FROM customerMaster cm(NOLOCK)
+ WHERE CM.createdFrom='M' AND referelCode IS NOT NULL
+ AND CM.customerId = ISNULL(@customerId, CM.customerId)
+ ) x
+ LEFT JOIN customerMaster intro(NOLOCK) ON intro.membershipId = x.referelCode
+ --WHERE x.customerId = ISNULL(@customerId, x.customerId)
+
+ --if exists (select 1 from remitTran RT(nolock)
+ -- inner join customerMaster CM(nolock) on CM.email = RT.createdBy
+ -- where CM.customerId = @customerId)
+ -- set @isTxnMade = 'Y'
+ --else
+ -- set @isTxnMade = 'N'
+ SELECT cu.customerId
+ ,isTxnMade = 'N'
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,country
+ ,[address]
+ ,zipCode = ISNULL(zipCode, postalCode)
+ ,city
+ ,email = ISNULL(email, '')
+ ,mobile = cu.mobile
+ ,nativeCountry = (
+ SELECT countryName
+ FROM dbo.countryMaster
+ WHERE countryId = cu.nativeCountry
+ )
+ ,cu.nativeCountry nativeCountryId
+ ,homePhone
+ ,occupation
+ ,address2
+ ,fullName
+ ,ISNULL(postalCode,zipcode) postalCode
+ ,CONVERT(VARCHAR, idType) + '|' + CONVERT(VARCHAR, sv.detailDesc) + '|' + CONVERT(VARCHAR, ISNULL(CID.expiryType, 'N')) idType
+ ,UPPER(idNumber) idNumber
+ ,telNo
+ ,
+ --companyName ,
+ gender
+ ,cu.ipAddress
+ ,verifyDoc1
+ ,verifyDoc2
+ ,verifyDoc3
+ ,verifyDoc4 = SelfieDoc
+ ,verifiedBy
+ ,verifiedDate = CONVERT(VARCHAR, verifiedDate)
+ ,bankAccountNo
+ ,bankName = vb.rowId
+ ,isApproved = CASE
+ WHEN cu.approvedBy IS NULL
+ THEN 'N'
+ ELSE 'Y'
+ END
+ ,CONVERT(VARCHAR(10), dob, 121) AS dob
+ ,CONVERT(VARCHAR(10), idIssueDate, 121) AS idIssueDate
+ ,CONVERT(VARCHAR(10), idExpiryDate, 121) AS idExpiryDate
+ ,
+ ---added value field on 2018-12-28 by anoj
+ membershipId
+ ,[state]
+ ,sourceOfFund
+ ,additionalAddress
+ ,street = STREET_NAME
+ ,streetUnicode = STREET_JAPANESE
+ ,cityUnicode = CITY_JAPANESE
+ ,city = CITY_NAME
+ ,visaStatus
+ ,employeeBusinessType
+ ,nameOfEmployeer
+ ,SSNNO
+ ,remittanceAllowed
+ ,remarks
+ ,registerationNo
+ ,organizationType
+ ,CONVERT(VARCHAR(10), dateofIncorporation, 121) AS dateofIncorporation
+ ,natureOfCompany
+ ,position
+ ,onlineUser
+ ,mobileUser
+ ,customerType
+ ,nameOfAuthorizedPerson
+ ,sv.detailTitle IdTypeName
+ ,cu.idNumber
+ ,cu.monthlyIncome
+ ,documentType
+ ,district
+ ,occupationText = occupationOther
+ ,CONVERT(VARCHAR(10), cu.createdDate, 121) createdDate
+ ,REF.REFERRAL_NAME
+ ,REF.REFERRAL_CODE
+ ,cu.otherIdNumber
+ ,sv.valueId [idTypeValue]
+ ,createdFrom = ISNULL(cu.createdFrom, 'C')
+ ,allowEditEmail = CASE
+ WHEN ISNULL(cu.createdFrom, 'C') = 'C'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ ,serviceUsedFor = ISNULL(serviceUsedFor, 'C')
+ ,CONVERT(VARCHAR, cu.createdDate, 23) AS createdDate
+ ,approvedDate = CONVERT(VARCHAR, cu.approvedDate)
+ ,cu.approvedBy
+ ,cu.lawsonCardno
+ ,cu.verifyRemarks
+ ,introducer = @introducer
+ ,cu.registrationType
+ ,mu.ResidenceType
+ ,ISNULL(mu.useNfc,'Y') useNfc
+ FROM customerMaster cu WITH (NOLOCK)
+ LEFT JOIN tbl_japan_address_detail TJ(NOLOCK) ON TJ.ROW_ID = CU.DISTRICT
+ LEFT JOIN vwBankLists vb WITH (NOLOCK) ON cu.bankName = vb.rowId
+ LEFT JOIN dbo.staticDataValue sv(NOLOCK) ON sv.valueId = cu.idType
+ LEFT JOIN dbo.countryMaster CM(NOLOCK) ON CM.countryId = CU.country
+ LEFT JOIN countryIdType CID WITH (NOLOCK) ON CID.IdTypeId = cu.idType
+ LEFT JOIN REFERRAL_AGENT_WISE REF(NOLOCK) ON REF.REFERRAL_CODE = CU.REFERRALID
+ LEFT JOIN mobile_userRegistration mu on mu.customerId=cu.customerId
+ WHERE cu.customerId = @customerId;
+ END;
+
+ IF @flag = 'customer-update-approve'
+ BEGIN
+ IF ISNULL(@customerType, '') = ''
+ SET @customerType = '4700' --SET CUSTOMER TYPE AS INDIVIDUAL
+ --LOG FOR CUSTOMER UPDATE
+ SET @fullName = ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '');
+ SET @onlineUser = CASE
+ WHEN @onlineUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ SET @mobileUser = CASE
+ WHEN @mobileUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+
+ UPDATE dbo.customerMaster
+ SET firstName = @firstName
+ ,middleName = CASE
+ WHEN @customerType = '4700'
+ THEN @middleName
+ ELSE NULL
+ END
+ ,lastName1 = CASE
+ WHEN @customerType = '4700'
+ THEN @lastName1
+ ELSE NULL
+ END
+ ,lastName2 = CASE
+ WHEN @customerType = '4700'
+ THEN @lastName2
+ ELSE NULL
+ END
+ ,country = @country
+ ,[address] = @custAdd1
+ ,district = @district
+ ,city = @custCity
+ ,email = @custEmail
+ ,mobile = @custMobile
+ ,nativeCountry = @custNativecountry
+ ,occupation = CASE
+ WHEN @customerType = '4700'
+ THEN @occupation
+ ELSE NULL
+ END
+ ,gender = CASE
+ WHEN @customerType = '4700'
+ THEN @custGender
+ ELSE NULL
+ END
+ ,fullName = ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '') + ISNULL(' ' + @lastName2, '')
+ ,telNo = @custTelNo
+ ,agentId = @agent
+ ,branchId = @branch
+ ,dob = CASE
+ WHEN @custDOB IS NOT NULL
+ THEN @custDOB
+ ELSE dob
+ END
+ ,onlineUser = @onlineUser
+ ,mobileUser = @mobileUser
+ ,customerType = @customerType
+ ,isActive = 'Y'
+ ,modifiedBy = @user
+ ,modifiedDate = GETDATE()
+ ,idIssueDate = ISNULL(@custIdissueDate, idIssueDate) --new added by dhan
+ ,idExpiryDate = ISNULL(@custIdValidDate, idExpiryDate)
+ ,idType = ISNULL(@customerIdType, idType)
+ ,idNumber = ISNULL(@customerIdNo, idNumber)
+ ,zipCode = @zipCode
+ ,
+ --added New Field Value on 2018-12-28 --added by anoj
+ [state] = @state
+ ,sourceOfFund = @sourceOfFound
+ ,street = @street
+ ,streetUnicode = @streetUnicode
+ ,cityUnicode = @cityUnicode
+ ,visaStatus = CASE
+ WHEN @customerType = '4700'
+ THEN @visaStatus
+ ELSE NULL
+ END
+ ,employeeBusinessType = CASE
+ WHEN @customerType = '4700'
+ THEN @employeeBusinessType
+ ELSE NULL
+ END
+ ,nameOfEmployeer = CASE
+ WHEN @customerType = '4700'
+ THEN @nameOfEmployeer
+ ELSE NULL
+ END
+ ,SSNNO = CASE
+ WHEN @customerType = '4700'
+ THEN @SSNNO
+ ELSE NULL
+ END
+ ,remittanceAllowed = CASE
+ WHEN @customerType = '4700'
+ THEN @remittanceAllowed
+ ELSE NULL
+ END
+ ,remarks = CASE
+ WHEN @customerType = '4700'
+ THEN @remarks
+ ELSE NULL
+ END
+ ,registerationNo = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @registerationNo
+ END
+ ,organizationType = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @organizationType
+ END
+ ,dateofIncorporation = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @dateofIncorporation
+ END
+ ,natureOfCompany = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @natureOfCompany
+ END
+ ,position = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @position
+ END
+ ,nameOfAuthorizedPerson = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @nameOfAuthorizedPerson
+ END
+ ,companyName = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @companyName
+ END
+ ,monthlyIncome = @monthlyIncome
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer has been updated successfully.' Msg
+ ,@customerId id;
+ END;
+
+ IF @flag = 'customer-update-new'
+ BEGIN
+ SET @fullName = ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '');
+ SET @onlineUser = CASE
+ WHEN @onlineUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ SET @mobileUser = CASE
+ WHEN @mobileUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+
+ EXEC PROC_CUSTOMERMODIFYLOG @flag = 'i'
+ ,@user = @user
+ ,@mobileUser = @mobileUser
+ ,@customerId = @customerId
+ ,@customerType = @customerType
+ ,@firstName = @firstName
+ ,@middleName = @middleName
+ ,@lastName1 = @lastName1
+ ,@fullName = @fullName
+ ,@country = @country
+ ,@zipCode = @zipCode
+ ,@state = @state
+ ,@street = @street
+ ,@custCity = @custCity
+ ,@cityUnicode = @cityUnicode
+ ,@streetUnicode = @streetUnicode
+ ,@custGender = @custGender
+ ,@custNativecountry = @custNativecountry
+ ,@dob = @custDOB
+ ,@email = @custEmail
+ ,@custTelNo = @custTelNo
+ ,@mobileNumber = @custMobile
+ ,@visaStatus = @visaStatus
+ ,@employeeBusinessType = @employeeBusinessType
+ ,@nameOfEmployeer = @nameOfEmployeer
+ ,@SSNNO = @SSNNO
+ ,@occupation = @occupation
+ ,@sourceOfFound = @sourceOfFound
+ ,@monthlyIncome = @monthlyIncome
+ ,@idType = @customerIdType
+ ,@idNumber = @customerIdNo
+ ,@issueDate = @custIdissueDate
+ ,@expiryDate = @custIdValidDate
+ ,@remittanceAllowed = @remittanceAllowed
+ ,@onlineUser = @onlineUser
+ ,@remarks = @remarks
+ ,@companyName = @companyName
+ ,@registerationNo = @registerationNo
+ ,@organizationType = @organizationType
+ ,@dateofIncorporation = @dateofIncorporation
+ ,@natureOfCompany = @natureOfCompany
+ ,@nameOfAuthorizedPerson = @nameOfAuthorizedPerson
+ ,@position = @position
+ ,@bank = @bank
+ ,@accNumber = @accountNumber
+
+ UPDATE dbo.customerMaster
+ SET firstName = @firstName
+ ,middleName = CASE
+ WHEN @customerType = '4700'
+ THEN @middleName
+ ELSE NULL
+ END
+ ,lastName1 = CASE
+ WHEN @customerType = '4700'
+ THEN @lastName1
+ ELSE NULL
+ END
+ ,lastName2 = CASE
+ WHEN @customerType = '4700'
+ THEN @lastName2
+ ELSE NULL
+ END
+ ,country = @country
+ ,[address] = @custAdd1
+ ,district = @district
+ ,city = @custCity
+ ,email = @custEmail
+ ,mobile = @custMobile
+ ,nativeCountry = @custNativecountry
+ ,occupation = CASE
+ WHEN @customerType = '4700'
+ THEN @occupation
+ ELSE NULL
+ END
+ ,gender = CASE
+ WHEN @customerType = '4700'
+ THEN @custGender
+ ELSE NULL
+ END
+ ,fullName = ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '') + ISNULL(' ' + @lastName2, '')
+ ,telNo = @custTelNo
+ ,agentId = @agent
+ ,branchId = @branch
+ ,dob = CASE
+ WHEN @custDOB IS NOT NULL
+ THEN @custDOB
+ ELSE dob
+ END
+ ,onlineUser = @onlineUser
+ ,mobileUser = @mobileUser
+ ,customerType = @customerType
+ ,isActive = 'Y'
+ ,modifiedBy = @user
+ ,modifiedDate = GETDATE()
+ ,idIssueDate = ISNULL(@custIdissueDate, idIssueDate) --new added by dhan
+ ,idExpiryDate = ISNULL(@custIdValidDate, idExpiryDate)
+ ,idType = ISNULL(@customerIdType, idType)
+ ,idNumber = ISNULL(@customerIdNo, idNumber)
+ ,zipCode = @zipCode
+ ,
+ --added New Field Value on 2018-12-28 --added by anoj
+ [state] = @state
+ ,sourceOfFund = @sourceOfFound
+ ,street = @street
+ ,streetUnicode = @streetUnicode
+ ,cityUnicode = @cityUnicode
+ ,visaStatus = CASE
+ WHEN @customerType = '4700'
+ THEN @visaStatus
+ ELSE NULL
+ END
+ ,employeeBusinessType = CASE
+ WHEN @customerType = '4700'
+ THEN @employeeBusinessType
+ ELSE NULL
+ END
+ ,nameOfEmployeer = CASE
+ WHEN @customerType = '4700'
+ THEN @nameOfEmployeer
+ ELSE NULL
+ END
+ ,SSNNO = CASE
+ WHEN @customerType = '4700'
+ THEN @SSNNO
+ ELSE NULL
+ END
+ ,remittanceAllowed = CASE
+ WHEN @customerType = '4700'
+ THEN @remittanceAllowed
+ ELSE NULL
+ END
+ ,remarks = CASE
+ WHEN @customerType = '4700'
+ THEN @remarks
+ ELSE NULL
+ END
+ ,registerationNo = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @registerationNo
+ END
+ ,organizationType = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @organizationType
+ END
+ ,dateofIncorporation = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @dateofIncorporation
+ END
+ ,natureOfCompany = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @natureOfCompany
+ END
+ ,position = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @position
+ END
+ ,nameOfAuthorizedPerson = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @nameOfAuthorizedPerson
+ END
+ ,companyName = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @companyName
+ END
+ ,monthlyIncome = @monthlyIncome
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer has been updated successfully.' Msg
+ ,@customerId id;
+ END;
+
+ IF @flag = 'customer-editeddata'
+ BEGIN
+ IF EXISTS (
+ SELECT 1
+ FROM customerMasterEditedDataMod
+ WHERE customerId = @customerId
+ )
+ BEGIN
+ SELECT '1' ErrorCode
+ ,'Approve previous modification First.' Msg
+ ,@customerId id;
+
+ RETURN
+ END
+
+ IF EXISTS (
+ SELECT 1
+ FROM customermaster
+ WHERE idNumber = @customerIdNo
+ AND customerId <> @customerId
+ )
+ BEGIN
+ SELECT @membershipId = membershipId
+ ,@email = email
+ FROM customermaster
+ WHERE idNumber = @customerIdNo
+ AND customerId <> @customerId
+
+ SELECT '1' ErrorCode
+ ,'ID already existing for customer ' + ISNULL(@membershipId, @email) Msg
+ ,@customerId id;
+
+ RETURN
+ END
+
+ IF EXISTS (
+ SELECT 1
+ FROM customermaster
+ WHERE (
+ email = @custEmail
+ OR customerEmail = @custEmail
+ OR userName = @custEmail
+ )
+ AND customerId <> @customerId
+ )
+ BEGIN
+ SELECT @membershipId = membershipId
+ FROM customermaster
+ WHERE (
+ email = @custEmail
+ OR customerEmail = @custEmail
+ OR userName = @custEmail
+ )
+ AND customerId <> @customerId
+
+ SET @errorMsg = 'email already used for existing customer ' + ISNULL(@membershipId, '');
+
+ SELECT '1' ErrorCode
+ ,@errorMsg Msg
+ ,@customerId id;
+
+ RETURN
+ END
+
+
+ --IF EXISTS (
+ -- SELECT 1
+ -- FROM customermaster
+ -- WHERE
+ -- customerId <> @customerId
+ -- AND (
+ -- (LEN(@custMobile) = 10 AND (
+ -- mobile = @custMobile OR
+ -- CONCAT('+44', mobile) = @custMobile
+ -- ))
+ -- OR
+ -- (LEN(@custMobile) = 13 AND (
+ -- mobile = @custMobile OR
+ -- @custMobile = CONCAT('+44', SUBSTRING(mobile, 3, 10))
+ -- ))
+ -- OR
+ -- (LEN(@custMobile) = 12 AND (
+ -- mobile = @custMobile OR
+ -- @custMobile = CONCAT('44', mobile)
+ -- ))
+ -- )
+ --)
+ --BEGIN
+ -- SELECT '1' AS ErrorCode,
+ -- 'Mobile No. ''' + @custMobile + ''' is already used' AS Msg,
+ -- @custMobile AS id;
+
+ -- RETURN;
+ --END
+
+
+ SET @onlineUser = CASE
+ WHEN @onlineUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ SET @mobileUser = CASE
+ WHEN @mobileUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+ SET @fullName = ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '') + ISNULL(' ' + @lastName2, '')
+
+ DECLARE @approvedBy VARCHAR(30)
+ ,@approvedDate VARCHAR(50)
+
+ IF @streetunicode = 'Nnull'
+ SET @streetunicode = NULL;
+
+ --IF ISNULL(@street, '') <> ''
+ --BEGIN
+ -- SET @district = @street
+ -- SET @street = rtrim(ltrim(replace(replace(cast(@streetunicode AS VARCHAR), '?', ''), '-', '')));
+
+ -- SELECT @custCity = CITY_NAME
+ -- FROM TBL_JAPAN_ADDRESS_DETAIL(NOLOCK)
+ -- WHERE ROW_ID = @district
+ --END
+ --ELSE
+ --BEGIN
+ -- SELECT @custCity = CITY_NAME
+ -- ,@district = ROW_ID
+ -- FROM TBL_JAPAN_ADDRESS_DETAIL(NOLOCK)
+ -- WHERE ZIP_CODE = @zipCode
+ --END
+
+ EXEC PROC_CUSTOMERMODIFYLOG_NEW @flag = 'i-new'
+ ,@user = @user
+ ,@customerId = @customerId
+ ,@customerType = @customerType
+ ,@fullName = @fullName
+ ,@firstName = @firstName
+ ,@middleName = @middleName
+ ,@lastName1 = @lastName1
+ ,@country = @country
+ ,@zipCode = @zipCode
+ ,@state = @state
+ ,@street = @street
+ ,@custCity = @custCity
+ ,@cityUnicode = @cityUnicode
+ ,@streetUnicode = @streetUnicode
+ ,@custGender = @custGender
+ ,@custNativecountry = @custNativecountry
+ ,@dob = @custDOB
+ ,@email = @custEmail
+ ,@custTelNo = @custTelNo
+ ,@mobileNumber = @custMobile
+ ,@visaStatus = @visaStatus
+ ,@employeeBusinessType = @employeeBusinessType
+ ,@nameOfEmployeer = @nameOfEmployeer
+ ,@SSNNO = @SSNNO
+ ,@occupation = @occupation
+ ,@sourceOfFound = @sourceOfFound
+ ,@monthlyIncome = @monthlyIncome
+ ,@idType = @customerIdType
+ ,@idNumber = @customerIdNo
+ ,@issueDate = @custIdissueDate
+ ,@expiryDate = @custIdValidDate
+ ,@remittanceAllowed = @remittanceAllowed
+ ,@onlineUser = @onlineUser
+ ,@mobileUser = @mobileUser
+ ,@remarks = @remarks
+ --used for customer type organisation
+ ,@companyName = @companyName
+ ,@registerationNo = @registerationNo
+ ,@organizationType = @organizationType
+ ,@dateofIncorporation = @dateofIncorporation
+ ,@natureOfCompany = @natureOfCompany
+ ,@nameOfAuthorizedPerson = @nameOfAuthorizedPerson
+ ,@position = @position
+ ,@additionaladdress = @additionaladdress
+ ,@otherIdNumber = @customerOtherIdNo
+ ,@loginBranchId = @loginBranchId
+ ,@changedSecurityInfo = @changedSecurityInfo OUT
+ ,@RegistrationType = @registrationType
+
+ --SELECT @approvedBy = approvedBy,@approvedDate = approvedDate FROM dbo.customerMaster WHERE customerid = @customerId
+ --IF @approvedBy IS NULL AND @approvedDate IS NULL
+ BEGIN
+ --IF CUSTOMER IS NOT APPROVED YET DIRECT UPDATE MAIN TABLE
+ SELECT @createdDate = createdDate
+ FROM customermaster
+ WHERE customerId = @customerId;
+
+ UPDATE dbo.customerMaster
+ SET firstName = @firstName
+ ,middleName = CASE
+ WHEN @customerType = '4700'
+ THEN @middleName
+ ELSE NULL
+ END
+ ,lastName1 = CASE
+ WHEN @customerType = '4700'
+ THEN @lastName1
+ ELSE NULL
+ END
+ ,lastName2 = CASE
+ WHEN @customerType = '4700'
+ THEN @lastName2
+ ELSE NULL
+ END
+ ,country = @country
+ ,[address] = @custAdd1
+ ,district = @district
+ ,city = @custCity
+ ,email = @custEmail
+ ,mobile = @custMobile
+ ,nativeCountry = @custNativecountry
+ ,occupation = CASE
+ WHEN @customerType = '4700'
+ THEN @occupation
+ ELSE NULL
+ END
+ ,gender = CASE
+ WHEN @customerType = '4700'
+ THEN @custGender
+ ELSE NULL
+ END
+ ,fullName = CASE
+ WHEN @customerType = '4700'
+ THEN ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '') + ISNULL(' ' + @lastName2, '')
+ ELSE @firstName
+ END
+ ,telNo = @custTelNo
+ ,agentId = @agent
+ ,branchId = @branch
+ ,dob = CASE
+ WHEN @custDOB IS NOT NULL
+ THEN @custDOB
+ ELSE dob
+ END
+ ,onlineUser = @onlineUser
+ ,mobileUser = @mobileUser
+ ,customerType = @customerType
+ ,isActive = 'Y'
+ ,modifiedBy = @user
+ ,modifiedDate = GETDATE()
+ ,idIssueDate = ISNULL(@custIdissueDate, idIssueDate) --new added by dhan
+ ,idExpiryDate = ISNULL(@custIdValidDate, idExpiryDate)
+ ,idType = ISNULL(@customerIdType, idType)
+ ,idNumber = ISNULL(@customerIdNo, idNumber)
+ ,zipCode = @zipCode
+ ,
+ --added New Field Value on 2018-12-28 --added by anoj
+ [state] = @state
+ ,sourceOfFund = @sourceOfFound
+ ,street = UPPER(@street)
+ ,additionalAddress = UPPER(@additionalAddress)
+ ,streetUnicode = CASE
+ WHEN @customerType = '4700'
+ THEN UPPER(@streetUnicode)
+ ELSE NULL
+ END
+ ,cityUnicode = CASE
+ WHEN @customerType = '4700'
+ THEN UPPER(@cityUnicode)
+ ELSE NULL
+ END
+ ,visaStatus = CASE
+ WHEN @customerType = '4700'
+ THEN @visaStatus
+ ELSE NULL
+ END
+ ,employeeBusinessType = CASE
+ WHEN @customerType = '4700'
+ THEN @employeeBusinessType
+ ELSE NULL
+ END
+ ,nameOfEmployeer = CASE
+ WHEN @customerType = '4700'
+ THEN @nameOfEmployeer
+ ELSE NULL
+ END
+ ,SSNNO = CASE
+ WHEN @customerType = '4700'
+ THEN @SSNNO
+ ELSE NULL
+ END
+ ,remittanceAllowed = CASE
+ WHEN @customerType = '4700'
+ THEN @remittanceAllowed
+ ELSE NULL
+ END
+ ,remarks = CASE
+ WHEN @customerType = '4700'
+ THEN @remarks
+ ELSE NULL
+ END
+ ,registerationNo = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @registerationNo
+ END
+ ,organizationType = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @organizationType
+ END
+ ,dateofIncorporation = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @dateofIncorporation
+ END
+ ,natureOfCompany = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @natureOfCompany
+ END
+ ,position = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @position
+ END
+ ,nameOfAuthorizedPerson = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @nameOfAuthorizedPerson
+ END
+ ,companyName = CASE
+ WHEN @customerType = '4700'
+ THEN NULL
+ ELSE @companyName
+ END
+ ,monthlyIncome = @monthlyIncome
+ ,documentType = @docType
+ ,isCDDIUpdated = 1
+ ,occupationOther = @occupationOther
+ ,referralId = @referralId
+ ,otherIdNumber = @customerOtherIdNo
+ ,registrationType = @registrationType
+ WHERE customerId = @customerId;
+
+ DECLARE @walletAccountNo VARCHAR(20), @fullNameWallet VARCHAR(100);
+
+ SELECT @walletAccountNo = walletAccountNo,
+ @fullNameWallet = CASE
+ WHEN @customerType = '4700'
+ THEN ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '') + ISNULL(' ' + @lastName2, '')
+ ELSE @fullName
+ END
+ FROM customermaster
+ WHERE customerId = @customerId;
+
+ --UPDATE FastMoneyPro_Account.dbo.ac_master
+ --SET acct_name = @fullNameWallet where acct_num = @walletAccountNo
+
+ SELECT '0' ErrorCode
+ ,'Customer data has been updated successfully.' Msg
+ ,@customerId id
+ ,ISNULL(cast(@customerId AS VARCHAR), '') + '|' + ISNULL(cast(@membershipId AS VARCHAR), '') + '|' + ISNULL(cast(cast(@createdDate AS DATE) AS VARCHAR), '') Extra;
+ -- --//begin check to know security infor has been updated or not
+ -- CREATE TABLE #changeList (rowId int identity(1,1),columnName varchar(100))
+ -- DECLARE @changedColumns varchar(100),@changedValues varchar(200),@total int,@initial int = 1,@individualColumnName varchar(50)
+ -- DECLARE @idType VARCHAR (30),@idNumber VARCHAR(30),@idIssueDate VARCHAR(30),@idExpiryDate VARCHAR(30)
+ -- DECLARE @dynamicParameters varchar(100)
+ -- SET @idType = @customerIdType
+ -- SET @idNumber = @customerIdNo
+ -- SET @idIssueDate = @custIdissueDate
+ -- SET @idExpiryDate = @custIdValidDate
+ -- INSERT INTO #changeList
+ -- SELECT @customerId
+ -- INSERT INTO #changeList
+ -- SELECT VALUE FROM dbo.Split(',', @changedSecurityInfo)
+ -- SELECT @total = count(*) FROM #changeList where columnName <> ''
+ -- WHILE (@total >= @initial)
+ -- BEGIN
+ -- IF @initial = 1
+ -- BEGIN
+ -- SET @changedColumns = 'customerId'
+ -- set @changedValues = '''' + @customerId +''''
+ -- END
+ -- ELSE
+ -- BEGIN
+ -- --prepare column name
+ -- SELECT @individualColumnName = columnName from #changeList where rowid = @initial
+ -- SET @changedColumns = @changedColumns +','+ @individualColumnName
+ -- --prepare column value
+ -- set @individualColumnName = @individualColumnName
+ -- set @changedValues = case when @individualColumnName = 'idType' then @changedValues +',' + '''' + @idType +''''
+ -- when @individualColumnName = 'idNumber' then @changedValues +','+ '''' + @idNumber +''''
+ -- when @individualColumnName = 'idIssueDate' then @changedValues +','+ '''' + @idIssueDate +''''
+ -- when @individualColumnName = 'idExpiryDate' then @changedValues +','+ '''' + @idExpiryDate +''''
+ -- else '' end
+ -- END
+ -- set @initial = @initial + 1
+ -- END
+ --set @sql = 'insert into customerMasterEditedDataMod (' + @changedColumns + ',modType)'
+ --+ 'values(' + @changedValues +',''u'')'
+ --print (@sql)
+ --exec(@sql)
+ --IF @total > 1
+ --BEGIN
+ -- SELECT '0' ErrorCode ,
+ -- 'Customer data has been updated successfull And is waiting for approval.' Msg ,
+ -- @customerId id;
+ --END
+ --ELSE
+ --BEGIN
+ -- SELECT '0' ErrorCode ,
+ -- 'Customer data has been updated successfully.' Msg ,
+ -- @customerId id;
+ --END
+ END
+ --ELSE
+ --BEGIN
+ -- IF EXISTS(SELECT 'X' FROM dbo.customerMasterEditedDataMod WHERE customerid = @customerId)
+ -- BEGIN
+ -- UPDATE dbo.customerMasterEditedDataMod
+ -- SET firstName = @firstName ,
+ -- middleName = CASE WHEN @customerType = '4700'
+ -- THEN @middleName
+ -- ELSE NULL
+ -- END ,
+ -- lastName1 = CASE WHEN @customerType = '4700'
+ -- THEN @lastName1
+ -- ELSE NULL
+ -- END ,
+ -- lastName2 = CASE WHEN @customerType = '4700'
+ -- THEN @lastName2
+ -- ELSE NULL
+ -- END ,
+ -- country = @country ,
+ -- [address] = @custAdd1 ,
+ -- district = @district ,
+ -- city = @custCity ,
+ -- email = @custEmail ,
+ -- mobile = @custMobile ,
+ -- nativeCountry = @custNativecountry ,
+ -- occupation = CASE WHEN @customerType = '4700'
+ -- THEN @occupation
+ -- ELSE NULL
+ -- END ,
+ -- gender = CASE WHEN @customerType = '4700'
+ -- THEN @custGender
+ -- ELSE NULL
+ -- END ,
+ -- fullName = CASE WHEN @customerType = '4700'
+ -- THEN ISNULL(@firstName, '') + ISNULL(' '
+ -- + @middleName,
+ -- '') + ISNULL(' '
+ -- + @lastName1, '')
+ -- + ISNULL(' ' + @lastName2, '')
+ -- ELSE @firstName
+ -- END,
+ -- telNo = @custTelNo ,
+ -- agentId = @agent ,
+ -- branchId = @branch ,
+ -- dob = CASE WHEN @custDOB IS NOT NULL THEN @custDOB
+ -- ELSE dob
+ -- END ,
+ -- onlineUser = @onlineUser,
+ -- customerType = @customerType ,
+ -- isActive = 'Y' ,
+ -- modifiedBy = @user ,
+ -- modifiedDate = GETDATE() ,
+ -- idIssueDate = ISNULL(@custIdissueDate, idIssueDate) --new added by dhan
+ -- ,
+ -- idExpiryDate = ISNULL(@custIdValidDate, idExpiryDate) ,
+ -- idType = ISNULL(@customerIdType, idType) ,
+ -- idNumber = ISNULL(@customerIdNo, idNumber) ,
+ -- zipCode = @zipCode ,
+ -- postalCode = @custPostal ,
+ -- --added New Field Value on 2018-12-28 --added by anoj
+ -- [state] = @state ,
+ -- sourceOfFund = @sourceOfFound,
+ -- street = @street ,
+ -- streetUnicode = CASE WHEN @customerType = '4700'
+ -- THEN @streetUnicode
+ -- ELSE NULL
+ -- END ,
+ -- cityUnicode = CASE WHEN @customerType = '4700'
+ -- THEN @cityUnicode
+ -- ELSE NULL
+ -- END ,
+ -- visaStatus = CASE WHEN @customerType = '4700'
+ -- THEN @visaStatus
+ -- ELSE NULL
+ -- END ,
+ -- employeeBusinessType = CASE WHEN @customerType = '4700'
+ -- THEN @employeeBusinessType
+ -- ELSE NULL
+ -- END ,
+ -- nameOfEmployeer = CASE WHEN @customerType = '4700'
+ -- THEN @nameOfEmployeer
+ -- ELSE NULL
+ -- END ,
+ -- SSNNO = CASE WHEN @customerType = '4700' THEN @SSNNO
+ -- ELSE NULL
+ -- END ,
+ -- remittanceAllowed = CASE WHEN @customerType = '4700'
+ -- THEN @remittanceAllowed
+ -- ELSE NULL
+ -- END ,
+ -- remarks = CASE WHEN @customerType = '4700'
+ -- THEN @remarks
+ -- ELSE NULL
+ -- END ,
+ -- registerationNo = CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @registerationNo
+ -- END ,
+ -- organizationType = CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @organizationType
+ -- END ,
+ -- dateofIncorporation = CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @dateofIncorporation
+ -- END ,
+ -- natureOfCompany = CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @natureOfCompany
+ -- END ,
+ -- position = CASE WHEN @customerType = '4700' THEN NULL
+ -- ELSE @position
+ -- END ,
+ -- nameOfAuthorizedPerson = CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @nameOfAuthorizedPerson
+ -- END ,
+ -- companyName = CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @companyName
+ -- END,
+ -- monthlyIncome =@monthlyIncome
+ -- WHERE customerId = @customerId;
+ -- SELECT '0' ErrorCode ,
+ -- 'Customer data has been updated successfully and is waiting for approval' Msg ,
+ -- @customerId id;
+ -- END
+ -- ELSE
+ -- BEGIN
+ -- INSERT INTO customerMasterEditedDataMod(
+ -- customerId,firstName,middleName,lastName1,lastName2,country,[address],zipCode,district,city,email,workPhone,mobile,
+ -- nativeCountry,dob,placeOfIssue,occupation,isBlackListed,lastTranId,relationId,relativeName,gender,salaryRange,address2,
+ -- fullName,
+ -- createdBy,createdDate,postalCode,idIssueDate,idExpiryDate,idType,idNumber,telNo,agentId,branchId,onlineUser,
+ -- ipAddress,customerType,isActive,verifiedBy,verifiedDate,isForcedPwdChange,bankName,bankAccountNo,HasDeclare,
+ -- membershipId,[state],sourceOfFund,street,streetUnicode,cityUnicode,visaStatus,employeeBusinessType,nameOfEmployeer,SSNNO,
+ -- remittanceAllowed,remarks,registerationNo,organizationType,dateofIncorporation,natureOfCompany,position,nameOfAuthorizedPerson,monthlyIncome,[modType]
+ -- )
+ -- VALUES (
+ -- @customerId,@firstName,@middleName,@lastName1,@lastName2,@country,@custAdd1,ISNULL(@zipCode, @custPostal),@district,@custCity,@custEmail,@workPhone,@custMobile,
+ -- @custNativecountry,@custDOB,@placeOfIssue,@occupation,@isBlackListed,@lastTranId,@relationId,@relativeName,@custGender,@custSalary,@custAdd2,
+ -- ISNULL(@firstName, '') + ISNULL(' '+ @middleName,'') + ISNULL(' '+ @lastName1, '')+ ISNULL(' ' + @lastName2, ''),
+ -- @user,DATEADD(HH, 0, GETUTCDATE()),@custPostal,@custIdissueDate,@custIdValidDate,@customerIdType,@customerIdNo,@custTelNo,@agent,@branch,@onlineUser,
+ -- @ipAddress,@customerType,'Y',@user,GETDATE(),'1',@bankId,@accountNumber,@HasDeclare,---- New Added Values
+ -- @membershipId,@state,@sourceOfFound,@street,@streetUnicode,@cityUnicode,@visaStatus,@employeeBusinessType,@nameOfEmployeer,@SSNNO,
+ -- @remittanceAllowed,@remarks,@registerationNo,CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @organizationType
+ -- END,@dateofIncorporation,CASE WHEN @customerType = '4700'
+ -- THEN NULL
+ -- ELSE @natureOfCompany
+ -- END,@position,@nameOfAuthorizedPerson,@monthlyIncome,'u'
+ -- )
+ -- SELECT '0' ErrorCode ,
+ -- 'Customer data has been edited successfully and is waiting for approval' Msg ,
+ -- @customerId id;
+ -- END
+ --END
+ END
+
+ IF @flag = 'customer-update-core'
+ BEGIN
+ SET @onlineUser = CASE
+ WHEN @onlineUser = 'true'
+ THEN 'Y'
+ ELSE 'N'
+ END
+
+ DECLARE @userType VARCHAR(5);
+
+ SELECT @userType = userType
+ FROM applicationUsers(NOLOCK)
+ WHERE userName = @user;
+
+ IF EXISTS (
+ SELECT 'a'
+ FROM dbo.customerMaster(NOLOCK)
+ WHERE customerId = @customerId
+ AND approvedBy IS NOT NULL
+ AND @userType <> 'HO'
+ )
+ BEGIN
+ SELECT '1' ErrorCode
+ ,'Customer is already approved, you can not modify this customer data.' Msg
+ ,@customerId id;
+
+ RETURN;
+ END;
+
+ --LOG FOR CUSTOMER UPDATE
+ EXEC PROC_CUSTOMERMODIFYLOG @flag = 'i'
+ ,@email = @custEmail
+ ,@idNumber = @customerIdNo
+ ,@bank = @bankId
+ ,@accNumber = @accountNumber
+ ,@customerId = @customerId
+ ,@mobileNumber = @custMobile
+ ,@user = @user;
+
+ UPDATE dbo.customerMaster
+ SET firstName = @firstName
+ ,middleName = middleName
+ ,lastName1 = @lastName1
+ ,lastName2 = @lastName2
+ ,country = @country
+ ,[address] = @custAdd1
+ ,zipCode = ISNULL(@zipCode, @custPostal)
+ ,district = @district
+ ,city = @custCity
+ ,email = @custEmail
+ --,homePhone = @customerIdNo
+ ,workPhone = @workPhone
+ ,mobile = @custMobile
+ ,nativeCountry = @custNativecountry
+ ,dob = @custDOB
+ ,placeOfIssue = @placeOfIssue
+ ,occupation = @occupation
+ ,isBlackListed = @isBlackListed
+ ,lastTranId = @lastTranId
+ ,relationId = @relationId
+ ,relativeName = @relativeName
+ ,gender = @custGender
+ ,companyName = @companyName
+ ,salaryRange = @custSalary
+ ,address2 = @custAdd2
+ ,fullName = ISNULL(@firstName, '') + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName1, '') + ISNULL(' ' + @lastName2, '')
+ ,
+ --postalCode = @custPostal ,
+ idIssueDate = @custIdissueDate
+ ,idExpiryDate = @custIdValidDate
+ ,idType = @customerIdType
+ ,idNumber = @customerIdNo
+ ,telNo = @custTelNo
+ ,agentId = @agent
+ ,branchId = @branch
+ ,onlineUser = @onlineUser
+ ,customerType = @customerType
+ ,isActive = 'Y'
+ ,bankName = @bankId
+ ,modifiedBy = @user
+ ,modifiedDate = GETDATE()
+ ,bankAccountNo = @accountNumber
+ ,HasDeclare = @HasDeclare
+ ,mobileUser = @mobileUser
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer has been updated successfully.' Msg
+ ,@customerId id;
+ END;
+
+ IF @flag = 'verify-customer-details'
+ BEGIN
+ SELECT *
+ FROM (
+ SELECT fileName
+ ,fileType
+ ,documentType = detailTitle
+ ,ROW_NUMBER() OVER (
+ PARTITION BY SV.detailTitle ORDER BY CD.createdDate DESC
+ ) rn
+ FROM customerDocument CD(NOLOCK)
+ INNER JOIN STATICDATAVALUE SV(NOLOCK) ON SV.valueId = CD.documentType
+ WHERE ISNULL(isDeleted, 'N') = 'N'
+ AND customerId = @customerId
+ AND valueId IN (
+ 11054
+ ,11055
+ ,11056
+ ,11057
+ )
+ ) X
+ WHERE rn = 1
+
+ SELECT ROW_NUMBER() OVER (
+ ORDER BY [customerId] ASC
+ ) SN
+ ,cm.walletAccountNo AS [walletNumber]
+ ,cm.customerId
+ ,cm.createdDate
+ ,CM.membershipId
+ ,ISNULL(email, '-') email
+ ,cm.fullName
+ ,cm.firstname
+ ,cm.middlename
+ ,cm.lastname1
+ ,sdg.detailTitle AS [gender]
+ ,cmb.countryName AS [country]
+ ,cmn.countryName AS [nativeCountry]
+ ,ISNULL(cm.homePhone, '-') homePhone
+ ,cm.postalCode
+ ,[address] = cm.address --dbo.FNAGetCustomerAddress(cm.customerId, 'CUST-SEARCH-DETAILS')
+ ,cm.city
+ ,cm.zipcode
+ ,ISNULL(COALESCE(cm.telNo, cm.homePhone), '-') telNo
+ ,ISNULL(cm.mobile, '-') mobile
+ ,sdo.detailTitle AS [occupation]
+ ,CASE
+ WHEN cm.idtype = '11402'
+ THEN cm.otherIdNumber
+ ELSE sdi.detailTitle
+ END AS [idType]
+ ,cm.idType AS [idTypeCode]
+ ,UPPER(cm.idNumber) idNumber
+ ,cm.verifyDoc1
+ ,cm.verifyDoc2
+ ,cm.verifyDoc3
+ ,CONVERT(VARCHAR(10), dob, 121) AS [dob]
+ ,CONVERT(VARCHAR(10), idIssueDate, 121) AS [idIssueDate]
+ ,CONVERT(VARCHAR(10), idExpiryDate, 121) AS [idExpiryDate]
+ ,bl.BankName
+ ,bl.bankCode
+ ,cm.bankAccountNo
+ ,cm.walletAccountNo
+ ,cm.homePhone
+ ,cm.availableBalance
+ ,verifyDoc4 = SelfieDoc
+ ,cm.obpId
+ ,cm.AuditDate
+ ,customerType = TYP.detailTitle
+ ,cm.customerStatus
+ ,CONVERT(VARCHAR(6), cm.dob, 12) AS [dobYMD]
+ ,CASE
+ WHEN gender = '97'
+ THEN '7'
+ WHEN gender = '98'
+ THEN '8'
+ END AS [genderCode]
+ ,CASE
+ WHEN nativeCountry = '238'
+ THEN '1'
+ WHEN nativeCountry = '113'
+ THEN '2'
+ WHEN nativeCountry = '45'
+ THEN '3'
+ ELSE '4'
+ END AS [nativeCountryCode]
+ ,doc.detailTitle AS DocumentType
+ ,visa.detailTitle VisaStatus
+ ,businessType.detailTitle EmployeeBusinessType
+ ,ISNULL(cm.NameOfEmployeer, '-') NameOfEmployeer
+ ,ISNULL(cm.SsnNo, '-') SsnNo
+ ,sourceOfFund.detailTitle SourceOfFund
+ ,ISNULL(cm.MonthlyIncome, '-') MonthlyIncome
+ ,ISNULL(cm.Remarks, '-') Remarks
+ ,CASE
+ WHEN cm.RemittanceAllowed = '1'
+ THEN 'Yes'
+ ELSE 'No'
+ END RemittanceAllowed
+ ,CASE
+ WHEN cm.OnlineUser = 'Y'
+ THEN 'Yes'
+ ELSE 'No'
+ END OnlineUser
+ ,CASE
+ WHEN cm.mobileUser = 'Y'
+ THEN 'Yes'
+ ELSE 'No'
+ END MobileUser
+ ,cm.createdFrom
+ ,cm.otherIdNumber
+ ,sdi.valueId [idTypeValue]
+ FROM customerMaster cm(NOLOCK)
+ LEFT JOIN staticDataValue TYP(NOLOCK) ON TYP.valueId = cm.customerType
+ LEFT JOIN staticDataValue sdg(NOLOCK) ON sdg.valueId = cm.gender
+ LEFT JOIN dbo.countryMaster cmb(NOLOCK) ON cmb.countryId = cm.country
+ LEFT JOIN dbo.countryMaster cmn(NOLOCK) ON cmn.countryId = cm.nativeCountry
+ LEFT JOIN staticDataValue sdo(NOLOCK) ON sdo.valueId = cm.occupation
+ LEFT JOIN staticDataValue sdi(NOLOCK) ON sdi.valueId = cm.idType
+ LEFT JOIN staticDataValue doc(NOLOCK) ON doc.valueId = cm.documentType
+ LEFT JOIN KoreanBankList bl(NOLOCK) ON cm.bankName = bl.rowId
+ LEFT JOIN countryStateMaster CSM(NOLOCK) ON CSM.stateId = CAST(cm.STATE AS VARCHAR)
+ LEFT JOIN StaticDataValue visa(NOLOCK) ON visa.valueId = cm.visaStatus
+ LEFT JOIN StaticDataValue businessType(NOLOCK) ON businessType.valueId = cm.employeeBusinessType
+ LEFT JOIN StaticDataValue sourceOfFund(NOLOCK) ON sourceOfFund.valueId = cm.sourceOfFund
+ LEFT JOIN tbl_japan_address_detail detail(NOLOCK) ON detail.zip_code = cm.zipcode
+ WHERE customerId = @customerId;
+
+ -- get matched data
+
+ SELECT @fullName = fullName , @registrationType = RegistrationType
+ FROM customerMaster cm(NOLOCK)
+ WHERE customerId = @customerId
+
+ CREATE TABLE #TEMP_ID_match (ID BIGINT)
+
+ INSERT INTO #TEMP_ID_match
+ SELECT CAST(value AS BIGINT)
+ FROM [dbo].[Split](',', DBO.GET_MATCHED_ID(@fullName, @customerId, @registrationType))
+
+ CREATE TABLE #TEMP (
+ CUSTOMERID VARCHAR(100)
+ ,[NAME] VARCHAR(100)
+ ,DOB DATE
+ ,IDNUMBER VARCHAR(50)
+ )
+
+ INSERT INTO #TEMP
+ SELECT customerid
+ ,fullName
+ ,CAST(dob AS DATE)
+ ,idNumber
+ FROM CustomerMaster cm(NOLOCK)
+ INNER JOIN #TEMP_ID_match T ON CM.customerid = t.id
+ WHERE customerid <> @customerid
+
+ SELECT ROW_NUMBER() OVER (
+ ORDER BY [NAME] ASC
+ ) SN
+ ,*
+ FROM #TEMP
+
+ SELECT 'X'
+
+ EXEC proc_online_core_customerSetup @flag = 'ofac-list' , @customerid = @customerId
+ END;
+
+ IF @flag = 'get-matched-data'
+ BEGIN
+ SELECT @fullName = fullName , @registrationType = RegistrationType
+ FROM customerMaster cm(NOLOCK)
+ WHERE customerId = @customerId
+
+ CREATE TABLE #TEMP_ID (ID BIGINT)
+
+ INSERT INTO #TEMP_ID
+ SELECT CAST(value AS BIGINT)
+ FROM [dbo].[Split](',', DBO.GET_MATCHED_ID(@fullName, @customerId,@registrationType))
+
+ CREATE TABLE #TEMP1 (
+ CUSTOMERID VARCHAR(100)
+ ,[NAME] VARCHAR(100)
+ ,DOB DATE
+ ,IDNUMBER VARCHAR(50)
+ )
+
+ INSERT INTO #TEMP1
+ SELECT customerid
+ ,fullName
+ ,CAST(dob AS DATE)
+ ,idNumber
+ FROM CustomerMaster cm(NOLOCK)
+ INNER JOIN #TEMP_ID T ON CM.customerid = t.id
+ WHERE customerid <> @customerid
+
+ SELECT ROW_NUMBER() OVER (
+ ORDER BY [NAME] ASC
+ ) SN
+ ,*
+ FROM #TEMP1
+ END;
+
+ IF @flag = 'ofac-list'
+ BEGIN
+ -- START OFAC Checking
+ DECLARE @checkNameBy VARCHAR(10)
+ ,@matchBy CHAR(1)
+
+ SELECT @checkNameBy = TRACK_BY
+ FROM OFACSETTING(NOLOCK)
+
+ IF @checkNameBy IS NULL
+ SET @checkNameBy = 'OFAC'
+
+ SELECT @fullName = fullName FROM customerMaster(nolock) where customerId = @customerId
+
+ DECLARE @matchPercentage INT
+
+ SELECT @matchPercentage = MATCH_PERCENTAGE
+ FROM OFACSETTING
+
+ IF @checkNameBy = 'OFAC'
+ BEGIN
+ EXEC proc_ofacTracker @flag = 't'
+ ,@name = @fullName
+ ,@Result = @ofacRes OUTPUT
+ END
+ ELSE
+ BEGIN
+ SELECT @ofacRes = Dowjones.[dbo].[DJ_GET_SUSPICIOUS_NAME_MATCH_IDS_V2](@fullName)
+ END
+
+
+
+ DECLARE @result VARCHAR(MAX)
+
+ IF ISNULL(@ofacRes, '') <> ''
+ BEGIN
+ SET @matchBy = 'S'
+ SET @ofacReason = 'Matched by name'
+ END
+
+ IF (@ofacRes <> '')
+ BEGIN
+ IF @checkNameBy = 'OFAC'
+ BEGIN
+ SET @result = @ofacRes + '|' + ISNULL(@ofacReason, '')
+
+ SELECT errorCode = 100
+ ,msg = 'WARNING!!! This customer is listed on OFAC List'
+ ,id = @result
+ ,extra = @checkNameBy
+
+ EXEC proc_sendPageLoadData @flag = 'ofac'
+ ,@user = @user
+ ,@blackListIds = @ofacRes
+ END
+ ELSE
+ BEGIN
+ SET @result = @ofacRes + '|' + ISNULL(@ofacReason, '')
+
+ SELECT errorCode = 100
+ ,msg = 'WARNING!!! This customer is listed on DJ List'
+ ,id = @result
+ ,extra = @checkNameBy
+
+ EXEC proc_sendPageLoadData @flag = 'ofac'
+ ,@user = @user
+ ,@blackListIds = @ofacRes
+ ,@TRACK_BY = 'DJ'
+ END
+ SELECT firstname firstName, ISNULL(middleName,'') middleName, lastName1 FROM customerMaster(nolock) where customerId = @customerId
+ END
+
+
+
+ END
+
+
+ IF @flag = 'verify-customer-agent'
+ BEGIN
+ UPDATE dbo.customerMaster
+ SET verifiedDate = GETDATE()
+ ,verifiedBy = @user
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer verified successfully.' Msg
+ ,@customerId id;
+ END;
+
+ IF @flag = 'approve-customer-admin'
+ BEGIN
+ UPDATE dbo.customerMaster
+ SET approvedDate = GETDATE()
+ ,approvedBy = @user
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer approved successfully.' Msg
+ ,@customerId id;
+ END;
+
+ IF @flag = 'verify-pending'
+ BEGIN
+ UPDATE dbo.customerMaster
+ SET verifiedDate = GETDATE()
+ ,verifiedBy = @user
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer verified successfully.' Msg
+ ,@customerId id;
+ END;
+
+ IF @flag = 'approve-pending'
+ BEGIN
+ UPDATE dbo.customerMaster
+ SET approvedDate = GETDATE()
+ ,approvedBy = @user
+ ,customerStatus = 'V'
+ ,userName = email
+ WHERE customerId = @customerId;
+
+ SELECT username = ISNULL(cm.userName, '')
+ ,[password] = LOWER(dbo.FNADecryptString(cm.customerPassword))
+ ,[channel] = LOWER(ISNULL(cm.createdBy, ''))
+ ,[account] = ISNULL(cm.membershipId, '')
+ ,walletAccountNo
+ ,bankAccountNo
+ ,fullName
+ ,CustomerBankName
+ ,printLetter = CASE
+ WHEN ISNULL(serviceUsedFor, 'C') = 'C'
+ THEN 'N'
+ ELSE 'Y'
+ END
+ FROM dbo.customerMaster cm(NOLOCK)
+ WHERE cm.customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer verified successfully.' Msg
+ ,@customerId id;
+
+ RETURN;
+ END;
+
+ --@Max : 2018.09
+ IF @flag = 'kj-modificationList'
+ BEGIN
+ SELECT k.bankCode
+ ,bankAccountNo
+ ,walletAccountNo
+ ,obpId
+ ,CustomerBankName
+ ,c.idType
+ ,c.idNumber
+ ,CONVERT(VARCHAR(6), c.dob, 12) AS [dobYMD]
+ ,CASE
+ WHEN c.gender = '97'
+ THEN '7'
+ WHEN c.gender = '98'
+ THEN '8'
+ END AS [genderCode]
+ ,CASE
+ WHEN c.nativeCountry = '238'
+ THEN '1'
+ WHEN c.nativeCountry = '113'
+ THEN '2'
+ WHEN c.nativeCountry = '45'
+ THEN '3'
+ ELSE '4'
+ END AS [nativeCountryCode]
+ FROM customerMaster c(NOLOCK)
+ INNER JOIN KoreanBankList k(NOLOCK) ON k.rowId = c.bankName
+ WHERE customerId = @customerId;
+
+ RETURN;
+ END;
+
+ IF @flag = 'kj-modification'
+ BEGIN
+ UPDATE customerMaster
+ SET CustomerBankName = @fullName
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer updated successfully.' Msg
+ ,@customerId id;
+
+ RETURN;
+ END;
+
+ IF @flag = 'customerdetail'
+ BEGIN
+ SELECT firstName
+ ,[address] = dbo.FNAGetCustomerAddress(cm.customerId, '')
+ ,mobile
+ ,fullName
+ ,nativeCoun.countryName nativeCountry
+ ,sv.detailTitle idType
+ ,cm.idNumber
+ ,customerDetail = CASE
+ WHEN ISNULL(cm.createdFrom, 'C') = 'C'
+ THEN 'Counter'
+ ELSE 'Mobile'
+ END + '/' + CASE ISNULL(serviceUsedFor, 'C')
+ WHEN 'C'
+ THEN 'Counter Visit Only'
+ WHEN 'CM'
+ THEN 'Counter and Mobile'
+ WHEN 'M'
+ THEN 'Mobile'
+ WHEN 'CMO'
+ THEN 'Counter, Mobile and Online'
+ ELSE 'Counter Visit Only'
+ END
+ FROM dbo.customerMaster cm(NOLOCK)
+ LEFT JOIN dbo.countryStateMaster csm(NOLOCK) ON csm.stateId = cm.STATE
+ LEFT JOIN dbo.countryMaster country(NOLOCK) ON country.countryId = cm.country
+ LEFT JOIN dbo.countryMaster nativeCoun(NOLOCK) ON nativeCoun.countryId = cm.nativeCountry
+ LEFT JOIN dbo.staticDataValue sv(NOLOCK) ON sv.valueId = cm.idType
+ WHERE customerId = @customerId;
+ END;
+
+ IF @flag = 'customerdetailForEnableDisable'
+ BEGIN
+ IF @sortBy IS NULL
+ SET @sortBy = 'createdDate';
+
+ IF @sortOrder IS NULL
+ SET @sortOrder = 'DESC';
+ SET @table =
+ '(
+ SELECT firstName ,
+ cm.customerId,
+ convert(varchar(10),cm.dob ,121) dob,
+ [address]= dbo.FNAGetCustomerAddress(cm.customerId, '''') ,
+ mobile ,
+ fullName,
+ nativeCoun.countryName nativeCountry,
+ sv.detailTitle idType,
+ cm.idNumber,
+ ISNULL(cm.isactive, ''Y'') isactive,
+ case when ISNULL(cm.isActive,''Y'') = ''Y'' then ''Enabled'' else ''Disabled'' end status
+ ,case when ISNULL(cm.createdFrom, ''C'') = ''C'' THEN ''CORE'' WHEN cm.createdFrom = ''M'' THEN ''MOBILE'' ELSE cm.createdFrom END createdFrom
+ FROM dbo.customerMaster cm (NOLOCK)
+ LEFT JOIN dbo.countryStateMaster csm (NOLOCK) ON csm.stateId=cm.state
+ LEFT JOIN dbo.countryMaster country (NOLOCK) ON country.countryId =cm.country
+ LEFT JOIN dbo.countryMaster nativeCoun (NOLOCK) ON nativeCoun.countryId =cm.nativeCountry
+ LEFT JOIN dbo.staticDataValue sv(NOLOCK) ON sv.valueId=cm.idType
+ WHERE customerId = '''
+ + @customerId + '''
+ ) x';
+ SET @select_field_list = 'customerId,status,dob,address,fullName,idType,idNumber,nativeCountry,mobile,isactive,createdFrom';
+
+ EXEC dbo.proc_paging @table
+ ,@sql_filter
+ ,@select_field_list
+ ,@extra_field_list
+ ,@sortBy
+ ,@sortOrder
+ ,@pageSize
+ ,@pageNumber;
+
+ RETURN;
+ END;
+
+ IF @flag = 'customerforaccept'
+ BEGIN
+ IF @sortBy IS NULL
+ SET @sortBy = 'createdDate';
+
+ IF @sortOrder IS NULL
+ SET @sortOrder = 'DESC';
+ SET @table = '(
+ SELECT isnull(firstName,'''') firstname,
+ cm.customerId,
+ convert(varchar(10),cm.dob ,121) dob,
+ [address]= dbo.FNAGetCustomerAddress(cm.customerId, '''') ,
+ mobile ,
+ fullName,
+ nativeCoun.countryName nativeCountry,
+ sv.detailTitle idType,
+ cm.idNumber,
+ ISNULL(cm.isactive, ''Y'') isactive
+
+ FROM dbo.customerMaster cm (NOLOCK)
+ LEFT JOIN dbo.countryStateMaster csm (NOLOCK) ON csm.stateId=cm.state
+ LEFT JOIN dbo.countryMaster country (NOLOCK) ON country.countryId =cm.country
+ LEFT JOIN dbo.countryMaster nativeCoun (NOLOCK) ON nativeCoun.countryId =cm.nativeCountry
+ LEFT JOIN dbo.staticDataValue sv(NOLOCK) ON sv.valueId=cm.idType
+ WHERE customerId = ''' + @customerId + '''
+ ) x';
+ SET @select_field_list = 'customerId,dob,address,fullName,idType,idNumber,nativeCountry,mobile,isactive';
+
+ EXEC dbo.proc_paging @table
+ ,@sql_filter
+ ,@select_field_list
+ ,@extra_field_list
+ ,@sortBy
+ ,@sortOrder
+ ,@pageSize
+ ,@pageNumber;
+
+ RETURN;
+ END;
+
+ IF @flag = 'fileUpload'
+ BEGIN
+ UPDATE dbo.customerMaster
+ SET verifyDoc1 = CASE
+ WHEN @verifyDoc1 IS NOT NULL
+ THEN @verifyDoc1
+ ELSE verifyDoc1
+ END
+ ,verifyDoc2 = CASE
+ WHEN @verifyDoc2 IS NOT NULL
+ THEN @verifyDoc2
+ ELSE verifyDoc2
+ END
+ ,verifyDoc3 = CASE
+ WHEN @verifyDoc3 IS NOT NULL
+ THEN @verifyDoc3
+ ELSE verifyDoc3
+ END
+ ,SelfieDoc = CASE
+ WHEN @verifyDoc4 IS NOT NULL
+ THEN @verifyDoc4
+ ELSE SelfieDoc
+ END
+ WHERE customerId = @customerId;
+
+ SELECT '0' ErrorCode
+ ,'Customer has been updated successfully.' Msg
+ ,@customerId id;
+ END;
+
+ IF @FLAG = 'delete'
+ BEGIN
+ IF EXISTS (
+ SELECT TOP 1 1
+ FROM TRANSENDERS S(NOLOCK)
+ WHERE S.CUSTOMERID = @rowid
+ )
+ BEGIN
+ SELECT 1 ErrorCode
+ ,'You can not delete this customer, customer has already done transaction!' Msg
+ ,@rowid id
+
+ RETURN
+ END
+
+ IF EXISTS (
+ SELECT TOP 1 1
+ FROM TRANSENDERStemp S(NOLOCK)
+ WHERE S.CUSTOMERID = @rowid
+ )
+ BEGIN
+ SELECT 1 ErrorCode
+ ,'You can not delete this customer, customer has already done transaction!' Msg
+ ,@rowid id
+
+ RETURN
+ END
+
+ --IF EXISTS (
+ -- SELECT *
+ -- FROM CUSTOMERMASTER(NOLOCK)
+ -- WHERE CUSTOMERID = @rowid
+ -- AND APPROVEDDATE IS NOT NULL
+ -- )
+ --BEGIN
+ -- SELECT 1 ErrorCode
+ -- ,'You can not delete this customer, customer has already been approved!' Msg
+ -- ,@rowid id
+
+ -- RETURN
+ --END
+
+ --select * from customermasterdeleted
+ INSERT INTO customermasterdeleted
+ SELECT membershipId
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,country
+ ,address
+ ,STATE
+ ,zipCode
+ ,district
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,customerType
+ ,occupation
+ ,CASE WHEN @deleteReason IS NULL THEN '' ELSE 'Y' END
+ ,createdBy
+ ,createdDate
+ ,modifiedBy
+ ,modifiedDate
+ ,approvedBy
+ ,approvedDate
+ ,isDeleted
+ ,lastTranId
+ ,relationId
+ ,relativeName
+ ,address2
+ ,fullName
+ ,postalCode
+ ,idExpiryDate
+ ,idType
+ ,idNumber
+ ,telNo
+ ,companyName
+ ,gender
+ ,salaryRange
+ ,bonusPointPending
+ ,Redeemed
+ ,bonusPoint
+ ,todaysSent
+ ,todaysNoOfTxn
+ ,agentId
+ ,branchId
+ ,memberIDissuedDate
+ ,memberIDissuedByUser
+ ,memberIDissuedAgentId
+ ,memberIDissuedBranchId
+ ,totalSent
+ ,idIssueDate
+ ,onlineUser
+ ,customerPassword
+ ,customerStatus
+ ,isActive
+ ,islocked
+ ,sessionId
+ ,lastLoginTs
+ ,howDidYouHear
+ ,ansText
+ ,ansEmail
+ ,state2
+ ,ipAddress
+ ,marketingSubscription
+ ,paidTxn
+ ,firstTxnDate
+ ,verifyDoc1
+ ,verifyDoc2
+ ,verifiedBy
+ ,verifiedDate
+ ,verifyDoc3
+ ,isForcedPwdChange
+ ,bankName
+ ,bankAccountNo
+ ,walletAccountNo
+ ,availableBalance
+ ,obpId
+ ,CustomerBankName
+ ,referelCode
+ ,isEmailVerified
+ ,verificationCode
+ ,SelfieDoc
+ ,HasDeclare
+ ,AuditDate
+ ,AuditBy
+ ,SchemeStartDate
+ ,invalidAttemptCount
+ ,sourceOfFund
+ ,street
+ ,streetUnicode
+ ,cityUnicode
+ ,visaStatus
+ ,employeeBusinessType
+ ,nameOfEmployeer
+ ,SSNNO
+ ,remittanceAllowed
+ ,remarks
+ ,registerationNo
+ ,organizationType
+ ,dateofIncorporation
+ ,natureOfCompany
+ ,position
+ ,nameOfAuthorizedPerson
+ ,monthlyIncome
+ ,ADDITIONALADDRESS
+ ,@user
+ ,GETDATE()
+ ,customerId
+ ,mobileUser
+ ,agreeYn
+ ,customerEmail
+ ,anotherIdType
+ ,anotherIDNumber
+ ,anotherIDIssueDate
+ ,anotherIDExpiryDate
+ ,mobileApprovedBy
+ ,mobileApprovedDate
+ ,mobileVerificationType
+ ,verifyRemarks
+ ,ISNULL(ofacRemarks,ofacRemarks)
+ ,isOfac
+ ,LawsonCardNo
+ ,RegistrationType
+ ,TrustDocId
+ FROM customerMaster
+ WHERE customerId = @rowid
+
+ DELETE
+ FROM customerMaster
+ WHERE customerid = @rowid
+ BEGIN
+ EXEC proc_applicationLogs @flag = 'i'
+ ,@logType = 'Delete'
+ ,@tableName = 'CustomerMaster'
+ ,@dataId = @rowid
+ ,@oldData = 'Deleted customer was registered from core!!'
+ ,@newData = 'APPROVE REJECT'
+ ,@module = '50'
+ ,@user = @user
+ END
+
+ SELECT 0 ErrorCode
+ ,'Customer Deleted Successfully' Msg
+ ,@rowid id
+
+
+
+ SELECT @email = username
+ FROM mobile_userRegistration
+ WHERE customerId = @customerId
+
+ DELETE
+ FROM CUSTOMERMASTER
+ WHERE CUSTOMERID = @customerId
+
+ DELETE
+ FROM CUSTOMERMASTERTEMP
+ WHERE CUSTOMERID = @customerId
+ AND username = @email
+
+ DELETE
+ FROM mobile_userRegistration
+ WHERE CUSTOMERID = @customerId
+ AND username = @email and customerId = @customerId
+
+ -- SELECT * FROM CUSTOMER_PROMOTION
+ UPDATE Customer_Promotion SET [status] = 2 WHERE destinationCustomerId = @customerId AND codeType = 'REGISTRATION'
+ -- BEGIN
+ UPDATE TBL_MOBILE_OTP_REQUEST
+ SET IS_EXPIRED = '1'
+ ,IS_SUCCESS = '0'
+ ,MODIFIED_DATE = GETDATE()
+ WHERE USER_ID = @email
+ AND REQUEST_FOR = 'REGISTER'
+ -- END
+
+ SET @oldValue = CASE WHEN @ofacReason IS NULL THEN '' ELSE 'OFAC' END
+
+ BEGIN
+ EXEC proc_applicationLogs @flag = 'i'
+ ,@logType = 'Delete'
+ ,@tableName = 'CustomerMaster'
+ ,@dataId = @customerId
+ ,@oldData = @oldValue
+ ,@newData = 'OFAC REJECT'
+ ,@module = '40'
+ ,@user = @user
+ END
+
+ SELECT 0 ErrorCode
+ ,'Customer Deleted Successfully' Msg
+ ,@customerId id
+
+ END
+
+ IF @FLAG = 'reject'
+ BEGIN
+ IF EXISTS (
+ SELECT *
+ FROM CUSTOMERMASTER(NOLOCK)
+ WHERE CUSTOMERID = @rowid
+ AND approvedDate IS NOT NULL
+ )
+ BEGIN
+ SELECT 1 ErrorCode
+ ,'Existing customer cannot be rejected. Please proceed to disable mobile login.' Msg
+ ,@rowid id
+
+ RETURN
+ END
+
+ IF EXISTS (
+ SELECT *
+ FROM mobile_userRegistration(NOLOCK)
+ WHERE CUSTOMERID = @rowid
+ )
+ -- AND APPROVEDDATE IS NOT NULL
+ BEGIN
+ UPDATE mobile_userRegistration
+ SET isDeleted = 'Y'
+ ,deletedBy = @user
+ ,deletedDate = GETDATE()
+ WHERE customerid = @rowid
+ -- RETURN
+ END
+
+ IF EXISTS (
+ SELECT *
+ FROM CUSTOMERMASTER(NOLOCK)
+ WHERE CUSTOMERID = @rowid
+ AND APPROVEDDATE IS NULL
+ )
+ BEGIN
+ UPDATE customerMaster
+ SET isActive = 'N'
+ ,deletedBy = @user
+ ,deletedDate = GETDATE()
+ WHERE customerid = @rowid
+ END
+
+ UPDATE Customer_Promotion SET [status] = 2 WHERE destinationCustomerId = @customerId AND codeType = 'REGISTRATION'
+ SELECT 0 ErrorCode
+ ,'Customer Rejected Successfully' Msg
+ ,@rowid id
+ END
+
+ IF @FLAG = 'getDetailsOfSendRequest'
+ BEGIN
+ --SELECT @customerId = CM.CUSTOMERID FROM SEND_MONEY_REQUEST SEQ(nolock)
+ --INNER JOIN CUSTOMERMASTER CM (NOLOCK) ON CM.MEMBERSHIPID = SEQ.MEMBERSHIPID
+ -- WHERE ROWID = @rowid
+ SELECT cm.walletAccountNo AS [walletNumber]
+ ,cm.customerId
+ ,seq.createdDate
+ ,CM.membershipId
+ ,ISNULL(email, '-') email
+ ,cm.fullName
+ ,sdg.detailTitle AS [gender]
+ ,cmb.countryName AS [country]
+ ,cmn.countryName AS [nativeCountry]
+ ,ISNULL(cm.homePhone, '-') homePhone
+ ,cm.postalCode
+ ,ISNULL(CSM.stateName, '') + ISNULL(' - ' + detail.state_japanese, '') + ', ' + ISNULL(cm.city, '') + ISNULL(' - ' + detail.city_japanese, '') + ', ' + ISNULL(cm.street, '') + ISNULL(' - ' + detail.STREET_JAPANESE, '') + ', ' + ISNULL(cm.additionalAddress, '') [address]
+ ,cm.city
+ ,cm.zipcode
+ ,ISNULL(COALESCE(cm.telNo, cm.homePhone), '-') telNo
+ ,ISNULL(cm.mobile, '-') mobile
+ ,sdo.detailTitle AS [occupation]
+ ,sdi.detailTitle AS [idType]
+ ,cm.idType AS [idTypeCode]
+ ,cm.idNumber
+ ,cm.verifyDoc1
+ ,cm.verifyDoc2
+ ,cm.verifyDoc3
+ ,CONVERT(VARCHAR(10), dob, 121) AS [dob]
+ ,CONVERT(VARCHAR(10), idIssueDate, 121) AS [idIssueDate]
+ ,CONVERT(VARCHAR(10), idExpiryDate, 121) AS [idExpiryDate]
+ ,cm.homePhone
+ ,cm.availableBalance
+ ,verifyDoc4 = SelfieDoc
+ ,cm.obpId
+ ,cm.AuditDate
+ ,customerType = TYP.detailTitle
+ ,cm.customerStatus
+ ,CONVERT(VARCHAR(6), cm.dob, 12) AS [dobYMD]
+ ,CASE
+ WHEN gender = '97'
+ THEN '7'
+ WHEN gender = '98'
+ THEN '8'
+ END AS [genderCode]
+ ,CASE
+ WHEN nativeCountry = '238'
+ THEN '1'
+ WHEN nativeCountry = '113'
+ THEN '2'
+ WHEN nativeCountry = '45'
+ THEN '3'
+ ELSE '4'
+ END AS [nativeCountryCode]
+ ,doc.detailTitle AS DocumentType
+ ,visa.detailTitle VisaStatus
+ ,businessType.detailTitle EmployeeBusinessType
+ ,ISNULL(cm.NameOfEmployeer, '-') NameOfEmployeer
+ ,ISNULL(cm.SsnNo, '-') SsnNo
+ ,sourceOfFund.detailTitle SourceOfFund
+ ,ISNULL(cm.MonthlyIncome, '-') MonthlyIncome
+ ,ISNULL(cm.Remarks, '-') Remarks
+ ,CASE
+ WHEN cm.RemittanceAllowed = '1'
+ THEN 'Yes'
+ ELSE 'No'
+ END RemittanceAllowed
+ ,CASE
+ WHEN cm.OnlineUser = 'Y'
+ THEN 'Yes'
+ ELSE 'No'
+ END OnlineUser
+ ,CASE
+ WHEN cm.mobileUser = 'Y'
+ THEN 'Yes'
+ ELSE 'No'
+ END MobileUser
+ ,seq.receiverFullName recFullname
+ ,seq.receiverAddress recAddress
+ ,seq.collMode
+ ,seq.receiverMobileNumber recMobile
+ ,CM1.countryName pCountry
+ ,cm1.countryId pCountryId
+ ,pMode = CASE
+ WHEN SEQ.pModeId = 2
+ THEN 'Bank Deposit'
+ ELSE 'Cash Payment'
+ END
+ ,pModeId = seq.pModeId
+ ,ABL.Bank_Name pAgentName
+ ,ABL.bank_id pAgnetId
+ ,ISNULL(ABBL.BRANCH_NAME, seq.pBranchName) pBranchName
+ ,ABBL.BRANCH_ID pBranchId
+ ,seq.accountNumber
+ ,cAmt
+ ,tAmt
+ ,serviceCharge
+ ,purpose.detailTitle purposeOfRemittance
+ ,RELATION.detailTitle relationShip
+ ,REF.REFERRAL_NAME referralName
+ FROM customerMaster cm(NOLOCK)
+ LEFT JOIN staticDataValue TYP(NOLOCK) ON TYP.valueId = cm.customerType
+ LEFT JOIN staticDataValue sdg(NOLOCK) ON sdg.valueId = cm.gender
+ LEFT JOIN dbo.countryMaster cmb(NOLOCK) ON cmb.countryId = cm.country
+ LEFT JOIN dbo.countryMaster cmn(NOLOCK) ON cmn.countryId = cm.nativeCountry
+ LEFT JOIN staticDataValue sdo(NOLOCK) ON sdo.valueId = cm.occupation
+ LEFT JOIN staticDataValue sdi(NOLOCK) ON sdi.valueId = cm.idType
+ LEFT JOIN staticDataValue doc(NOLOCK) ON doc.valueId = cm.documentType
+ LEFT JOIN countryStateMaster CSM(NOLOCK) ON CSM.stateId = CAST(cm.STATE AS VARCHAR)
+ LEFT JOIN StaticDataValue visa(NOLOCK) ON visa.valueId = cm.visaStatus
+ LEFT JOIN StaticDataValue businessType(NOLOCK) ON businessType.valueId = cm.employeeBusinessType
+ LEFT JOIN StaticDataValue sourceOfFund(NOLOCK) ON sourceOfFund.valueId = cm.sourceOfFund
+ LEFT JOIN tbl_japan_address_detail detail(NOLOCK) ON detail.zip_code = cm.zipcode
+ INNER JOIN SEND_MONEY_REQUEST SEQ(NOLOCK) ON SEQ.membershipId = CM.membershipId
+ LEFT JOIN countryMaster CM1(NOLOCK) ON CM1.countryId = cast(SEQ.pCountryId AS VARCHAR)
+ LEFT JOIN API_BANK_LIST ABL(NOLOCK) ON ABL.BANK_ID = SEQ.pAgentId
+ LEFT JOIN API_BANK_BRANCH_LIST ABBL(NOLOCK) ON ABBL.BRANCH_ID = SEQ.branchId
+ LEFT JOIN StaticDataValue purpose(NOLOCK) ON purpose.valueid = seq.purposeOfRemittance
+ LEFT JOIN StaticDataValue RELATION(NOLOCK) ON RELATION.VALUEID = seq.relationShip
+ LEFT JOIN REFERRAL_AGENT_WISE REF(NOLOCK) ON REF.REFERRAL_CODE = SEQ.CREATEDBY
+ WHERE SEQ.ROWID = @ROWID
+ END
+
+ IF @FLAG = 'clearKYC'
+ BEGIN
+ IF EXISTS (
+ SELECT *
+ FROM customerMaster(NOLOCK)
+ WHERE CUSTOMERID = @customerId
+ )
+ -- AND APPROVEDDATE IS NOT NULL
+ BEGIN
+ DECLARE @oldData_p VARCHAR(500);
+
+ SELECT @oldData_p = CONCAT (
+ 'hasDeclare: ' + CAST(hasDeclare AS VARCHAR)
+ ,' '
+ ,'agreeYn: ' + CAST(agreeYn AS VARCHAR)
+ ) + ' ' + ISNULL(mobileverifieddate, 'N/A') + ' ' + ISNULL(mobileverifiedby, 'N/A')
+ FROM customerMaster(NOLOCK)
+ WHERE CUSTOMERID = @customerId
+
+ EXEC proc_applicationLogs @flag = 'i'
+ ,@logType = 'Update-kyc'
+ ,@tableName = 'CustomerMaster'
+ ,@dataId = @customerId
+ ,@oldData = @oldData_p
+ ,@newData = 'hasDeclare =0, agreeYn =0'
+ ,@module = '20'
+ ,@user = @user
+
+ UPDATE customerMaster
+ SET HasDeclare = '0'
+ ,mobileverifieddate = NULL
+ ,mobileApprovedDate = NULL
+ ,mobileApprovedBy = ''
+ ,agreeYn = '0'
+ ,modifiedDate = GETDATE()
+ ,modifiedBy = @user
+ WHERE customerid = @customerId
+ END
+
+ SELECT 0 ErrorCode
+ ,'Customer KYC has been successfully cleared.' Msg
+ ,@customerId id
+
+ RETURN
+ END
+
+ IF @FLAG = 'CUSTOMER-DETAILS-ACTIVATE'
+ BEGIN
+ SELECT CASE
+ WHEN cd.documentType = '0'
+ AND filetype = 'application/pdf'
+ THEN cd.filedescription
+ ELSE ISNULL(sdv.detailTitle, 'signature')
+ END documentType
+ ,fileType = CASE
+ WHEN ISNULL(cd.fileType, 'image/jpeg') IN ('receiver')
+ THEN 'application/pdf'
+ ELSE ISNULL(cd.fileType, 'image/jpeg')
+ END
+ ,convert(VARCHAR(10), cd.createddate, 111) uploadedDate
+ ,'' + cd.fileName + '' fileName
+ 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;
+ END
+
+ IF @FLAG = 'reVerify'
+ BEGIN
+ IF EXISTS (
+ SELECT *
+ FROM customerMaster(NOLOCK)
+ WHERE CUSTOMERID = @customerId
+ )
+ -- AND APPROVEDDATE IS NOT NULL
+ BEGIN
+ DECLARE @oldData1 VARCHAR(500);
+
+ SELECT @oldData1 = CAST(mobileVerificationType AS VARCHAR) + ' ' + '|' + ' ' + ISNULL(mobileverifieddate, 'N/A') + ' ' + '|' + ' ' + ISNULL(mobileverifiedby, 'N/A')
+ FROM customerMaster(NOLOCK)
+ WHERE CUSTOMERID = @customerId
+
+ EXEC proc_applicationLogs @flag = 'i'
+ ,@logType = 'Re-Verify-Customer'
+ ,@tableName = 'CustomerMaster'
+ ,@dataId = @customerId
+ ,@oldData = @oldData1
+ ,@newData = 'Sent for re-verification'
+ ,@module = '30'
+ ,@user = @user
+
+
+ UPDATE customerMaster
+ SET mobileverifieddate = NULL
+ ,mobileVerificationType = ''
+ ,mobileverifiedby = ''
+ ,modifiedDate = GETDATE()
+ ,modifiedBy = @user
+ ,hasdeclare=0
+ ,agreeyn=0
+ ,isAgreeDate=GETDATE()
+ ,LawsonCardNo=NULL
+ ,mobileApprovedDate = NULL
+ WHERE customerid = @customerId
+ END
+
+ SELECT 0 ErrorCode
+ ,'Customer moved to verification queue.' Msg
+ ,@customerId id
+
+ RETURN
+ END
+
+ IF @FLAG = 'deleteCustomer'
+ BEGIN
+
+ INSERT INTO customermasterdeleted
+ SELECT membershipId
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,country
+ ,address
+ ,STATE
+ ,zipCode
+ ,district
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,customerType
+ ,occupation
+ ,CASE WHEN @ofacReason IS NULL THEN '' ELSE 'Y' END
+ ,createdBy
+ ,createdDate
+ ,modifiedBy
+ ,modifiedDate
+ ,approvedBy
+ ,approvedDate
+ ,isDeleted
+ ,lastTranId
+ ,relationId
+ ,relativeName
+ ,address2
+ ,fullName
+ ,postalCode
+ ,idExpiryDate
+ ,idType
+ ,idNumber
+ ,telNo
+ ,companyName
+ ,gender
+ ,salaryRange
+ ,bonusPointPending
+ ,Redeemed
+ ,bonusPoint
+ ,todaysSent
+ ,todaysNoOfTxn
+ ,agentId
+ ,branchId
+ ,memberIDissuedDate
+ ,memberIDissuedByUser
+ ,memberIDissuedAgentId
+ ,memberIDissuedBranchId
+ ,totalSent
+ ,idIssueDate
+ ,onlineUser
+ ,customerPassword
+ ,customerStatus
+ ,isActive
+ ,islocked
+ ,sessionId
+ ,lastLoginTs
+ ,howDidYouHear
+ ,ansText
+ ,ansEmail
+ ,state2
+ ,ipAddress
+ ,marketingSubscription
+ ,paidTxn
+ ,firstTxnDate
+ ,verifyDoc1
+ ,verifyDoc2
+ ,verifiedBy
+ ,verifiedDate
+ ,verifyDoc3
+ ,isForcedPwdChange
+ ,bankName
+ ,bankAccountNo
+ ,walletAccountNo
+ ,availableBalance
+ ,obpId
+ ,CustomerBankName
+ ,referelCode
+ ,isEmailVerified
+ ,verificationCode
+ ,SelfieDoc
+ ,HasDeclare
+ ,AuditDate
+ ,AuditBy
+ ,SchemeStartDate
+ ,invalidAttemptCount
+ ,sourceOfFund
+ ,street
+ ,streetUnicode
+ ,cityUnicode
+ ,visaStatus
+ ,employeeBusinessType
+ ,nameOfEmployeer
+ ,SSNNO
+ ,remittanceAllowed
+ ,remarks
+ ,registerationNo
+ ,organizationType
+ ,dateofIncorporation
+ ,natureOfCompany
+ ,position
+ ,nameOfAuthorizedPerson
+ ,monthlyIncome
+ ,ADDITIONALADDRESS
+ ,@user
+ ,GETDATE()
+ ,customerId
+ ,mobileUser
+ ,agreeYn
+ ,customerEmail
+ ,anotherIdType
+ ,anotherIDNumber
+ ,anotherIDIssueDate
+ ,anotherIDExpiryDate
+ ,mobileApprovedBy
+ ,mobileApprovedDate
+ ,mobileVerificationType
+ ,verifyRemarks
+ ,@ofacRemarks
+ ,isOfac
+ ,LawsonCardNo
+ ,RegistrationType
+ ,TrustDocId
+ FROM customerMaster
+ WHERE customerId = @customerId
+
+ SELECT @email = username
+ FROM mobile_userRegistration
+ WHERE customerId = @customerId
+
+ SELECT @registrationType = registrationType , @trustdocId = TrustDocId
+ FROM customerMaster (NOLOCK)
+ WHERE customerId = @customerId
+
+ DELETE
+ FROM CUSTOMERMASTER
+ WHERE CUSTOMERID = @customerId
+
+ DELETE
+ FROM CUSTOMERMASTERTEMP
+ WHERE CUSTOMERID = @customerId
+ AND username = @email
+
+ DELETE
+ FROM mobile_userRegistration
+ WHERE CUSTOMERID = @customerId
+ AND username = @email and customerId = @customerId
+
+ UPDATE Customer_Promotion SET [status] = 2 WHERE destinationCustomerId = @customerId AND codeType = 'REGISTRATION'
+ BEGIN
+ UPDATE TBL_MOBILE_OTP_REQUEST
+ SET IS_EXPIRED = '1'
+ ,IS_SUCCESS = '0'
+ ,MODIFIED_DATE = GETDATE()
+ WHERE USER_ID = @email
+ AND REQUEST_FOR = 'REGISTER'
+ END
+
+ SET @oldValue = CASE WHEN @ofacReason IS NULL THEN '' ELSE 'OFAC' END
+
+ SELECT 0 ErrorCode
+ ,'Customer Deleted Successfully' Msg
+ ,@customerId id
+ ,@registrationType extra
+ ,@trustdocId Extra1
+
+ EXEC proc_applicationLogs @flag = 'i'
+ ,@logType = 'Delete'
+ ,@tableName = 'CustomerMaster'
+ ,@dataId = @customerId
+ ,@oldData = @oldValue
+ ,@newData = @registrationType
+ ,@module = '40'
+ ,@user = @user
+ END
+
+ IF @FLAG = 'download'
+ BEGIN
+ SELECT
+ SN =ROW_NUMBER() OVER (ORDER BY (SELECT NULL)),
+ customerId,
+ membershipId
+ ,fullName =fullName
+ ,sd.detailTitle as idType
+ ,ISNULL(cm.idNumber,'') as idNumber
+ ,com.countryName,cm.dob,cm.address
+ ,cm.city
+ ,ISNULL(cm.email,'') as email
+ ,ISNULL(cm.mobile,'') as mobile
+ ,cm.createdDate
+ ,cm.bankAccountNo
+ ,bankName = bl.bankName
+ ,cm.LawsonCardNo
+ ,RegistrationType = CASE WHEN cm.RegistrationType IS NULL THEN 'Manual' ELSE cm.RegistrationType END
+ ,ISNULL(cm.verificationCode, 'NOT COMPLETED') as KYC_Status
+ ,ISNULL(cm.referelCode,'') as introducer
+ FROM dbo.customerMaster cm(nolock)
+ LEFT JOIN dbo.staticDataValue sd(nolock) ON sd.valueId=cm.idType
+ INNER JOIN dbo.countryMaster com(nolock) ON com.countryId = cm.nativeCountry
+ LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId
+ END
+ IF @FLAG = 'deleteCustomer-new'
+ BEGIN
+ IF EXISTS ( SELECT TOP 1 1 FROM CUSTOMERMASTERTEMP (NOLOCK) WHERE CUSTOMERID = @CUSTOMERID AND @source = 'temp' AND membershipId IS NULL )
+ BEGIN
+ SELECT @email = username
+ FROM mobile_userRegistration
+ WHERE customerId = @customerId
+
+ DELETE
+ FROM CUSTOMERMASTERTEMP
+ WHERE CUSTOMERID = @customerId
+
+ DELETE
+ FROM mobile_userRegistration
+ WHERE CUSTOMERID = @customerId
+ AND username = @email and customerId = @customerId
+
+ UPDATE TBL_MOBILE_OTP_REQUEST
+ SET IS_EXPIRED = '1'
+ ,IS_SUCCESS = '0'
+ ,MODIFIED_DATE = GETDATE()
+ WHERE USER_ID = @email
+ AND REQUEST_FOR = 'REGISTER'
+
+ SELECT 0 ErrorCode
+ ,'Customer Deleted Successfully' Msg
+ ,@customerId id
+ ,@registrationType Extra1
+ ,@trustdocId Extra2
+
+ EXEC proc_applicationLogs @flag = 'i'
+ ,@logType = 'Delete'
+ ,@tableName = 'CustomerMasterTemp'
+ ,@dataId = @customerId
+ ,@oldData = 'Deleted customer from menu!!'
+ ,@newData = @deleteReason
+ ,@module = '50'
+ ,@user = @user
+ END
+ ELSE
+ BEGIN
+ IF EXISTS (
+ SELECT TOP 1 1
+ FROM TRANSENDERS S(NOLOCK)
+ WHERE S.CUSTOMERID = @customerId
+ )
+ BEGIN
+ SELECT 1 ErrorCode
+ ,'You can not delete this customer, customer has already done transaction!' Msg
+ ,@customerId id
+
+ RETURN
+ END
+
+ IF EXISTS (
+ SELECT TOP 1 1
+ FROM TRANSENDERStemp S(NOLOCK)
+ WHERE S.CUSTOMERID = @customerId
+ )
+ BEGIN
+ SELECT 1 ErrorCode
+ ,'You can not delete this customer, customer has already done transaction!' Msg
+ ,@customerId id
+
+ RETURN
+ END
+
+ --IF EXISTS (
+ -- SELECT *
+ -- FROM CUSTOMERMASTER(NOLOCK)
+ -- WHERE CUSTOMERID = @customerId
+ -- AND APPROVEDDATE IS NOT NULL
+ -- )
+ --BEGIN
+ -- SELECT 1 ErrorCode
+ -- ,'You can not delete this customer, customer has already been approved!' Msg
+ -- ,@customerId id
+
+ -- RETURN
+ --END
+
+ --select * from customermasterdeleted
+ INSERT INTO customermasterdeleted
+ SELECT membershipId
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,lastName2
+ ,country
+ ,address
+ ,STATE
+ ,zipCode
+ ,district
+ ,city
+ ,email
+ ,homePhone
+ ,workPhone
+ ,mobile
+ ,nativeCountry
+ ,dob
+ ,placeOfIssue
+ ,customerType
+ ,occupation
+ ,CASE WHEN @deleteReason IS NULL THEN '' ELSE 'Y' END
+ ,createdBy
+ ,createdDate
+ ,modifiedBy
+ ,modifiedDate
+ ,approvedBy
+ ,approvedDate
+ ,isDeleted
+ ,lastTranId
+ ,relationId
+ ,relativeName
+ ,address2
+ ,fullName
+ ,postalCode
+ ,idExpiryDate
+ ,idType
+ ,idNumber
+ ,telNo
+ ,companyName
+ ,gender
+ ,salaryRange
+ ,bonusPointPending
+ ,Redeemed
+ ,bonusPoint
+ ,todaysSent
+ ,todaysNoOfTxn
+ ,agentId
+ ,branchId
+ ,memberIDissuedDate
+ ,memberIDissuedByUser
+ ,memberIDissuedAgentId
+ ,memberIDissuedBranchId
+ ,totalSent
+ ,idIssueDate
+ ,onlineUser
+ ,customerPassword
+ ,customerStatus
+ ,isActive
+ ,islocked
+ ,sessionId
+ ,lastLoginTs
+ ,howDidYouHear
+ ,ansText
+ ,ansEmail
+ ,state2
+ ,ipAddress
+ ,marketingSubscription
+ ,paidTxn
+ ,firstTxnDate
+ ,verifyDoc1
+ ,verifyDoc2
+ ,verifiedBy
+ ,verifiedDate
+ ,verifyDoc3
+ ,isForcedPwdChange
+ ,bankName
+ ,bankAccountNo
+ ,walletAccountNo
+ ,availableBalance
+ ,obpId
+ ,CustomerBankName
+ ,referelCode
+ ,isEmailVerified
+ ,verificationCode
+ ,SelfieDoc
+ ,HasDeclare
+ ,AuditDate
+ ,AuditBy
+ ,SchemeStartDate
+ ,invalidAttemptCount
+ ,sourceOfFund
+ ,street
+ ,streetUnicode
+ ,cityUnicode
+ ,visaStatus
+ ,employeeBusinessType
+ ,nameOfEmployeer
+ ,SSNNO
+ ,remittanceAllowed
+ ,remarks
+ ,registerationNo
+ ,organizationType
+ ,dateofIncorporation
+ ,natureOfCompany
+ ,position
+ ,nameOfAuthorizedPerson
+ ,monthlyIncome
+ ,ADDITIONALADDRESS
+ ,@user
+ ,GETDATE()
+ ,customerId
+ ,mobileUser
+ ,agreeYn
+ ,customerEmail
+ ,anotherIdType
+ ,anotherIDNumber
+ ,anotherIDIssueDate
+ ,anotherIDExpiryDate
+ ,mobileApprovedBy
+ ,mobileApprovedDate
+ ,mobileVerificationType
+ ,verifyRemarks
+ ,ISNULL(ofacRemarks,ofacRemarks)
+ ,isOfac
+ ,LawsonCardNo
+ ,RegistrationType
+ ,TrustDocId
+ FROM customerMaster
+ WHERE customerId = @customerId
+
+ SELECT @email = username
+ FROM mobile_userRegistration
+ WHERE customerId = @customerId
+
+ SELECT @registrationType = RegistrationType , @trustdocId = TrustDocId
+ FROM customerMaster (NOLOCK)
+ WHERE customerId = @customerId
+
+ DELETE
+ FROM CUSTOMERMASTER
+ WHERE CUSTOMERID = @customerId
+
+ DELETE
+ FROM CUSTOMERMASTERTEMP
+ WHERE CUSTOMERID = @customerId
+ AND username = @email
+
+ DELETE
+ FROM mobile_userRegistration
+ WHERE CUSTOMERID = @customerId
+ AND username = @email and customerId = @customerId
+
+ UPDATE Customer_Promotion SET [status] = 2 WHERE destinationCustomerId = @customerId AND codeType = 'REGISTRATION'
+
+ UPDATE TBL_MOBILE_OTP_REQUEST
+ SET IS_EXPIRED = '1'
+ ,IS_SUCCESS = '0'
+ ,MODIFIED_DATE = GETDATE()
+ WHERE USER_ID = @email
+ AND REQUEST_FOR = 'REGISTER'
+
+ SELECT 0 ErrorCode
+ ,'Customer Deleted Successfully' Msg
+ ,@customerId id
+ ,@registrationType Extra1
+ ,@trustdocId Extra2
+
+ EXEC proc_applicationLogs @flag = 'i'
+ ,@logType = 'Delete'
+ ,@tableName = 'CustomerMaster'
+ ,@dataId = @customerId
+ ,@oldData = 'Deleted customer from menu!!'
+ ,@newData = @deleteReason
+ ,@module = '50'
+ ,@user = @user
+ END
+ END
+
+
+ IF @FLAG = 'moveCustomer'
+ BEGIN
+ DECLARE @KYCOptionold VARCHAR(30), @ruleType CHAR(1)
+
+ IF EXISTS (
+ SELECT 'X'
+ FROM CustomerMastertemp(NOLOCK)
+ WHERE username = @email
+ )
+ BEGIN
+
+ SELECT @customerId = customerid, @referralId = referelCode
+ FROM CustomerMastertemp(NOLOCK)
+ WHERE username = @email
+
+ INSERT INTO TBLCUSTOMERMODIFYLOGS (
+ customerId
+ ,columnName
+ ,oldValue
+ ,modifiedBy
+ ,modifiedDate
+ ,newValue
+ ,amendmentId
+ ,agentId
+ )
+ SELECT @customerId
+ ,'KYCOption'
+ ,''
+ ,@email
+ ,GETDATE()
+ ,'KYC_LATER' + + '|' + 'MKYC'
+ ,''
+ ,''
+
+ INSERT INTO dbo.customerMaster (
+ membershipId
+ ,fullName
+ ,firstName
+ ,middleName
+ ,lastName1
+ ,mobile
+ ,gender
+ ,dob
+ ,occupation
+ ,nativeCountry
+ ,country
+ ,bankName
+ ,bankAccountNo
+ ,idType
+ ,idNumber
+ ,homePhone
+ ,idIssueDate
+ ,idExpiryDate
+ ,verifyDoc1
+ ,verifyDoc2
+ ,verifyDoc3
+ ,SelfieDoc
+ ,referelCode
+ ,createdBy
+ ,createdDate
+ ,isActive
+ ,onlineUser
+ ,customerPassword
+ ,[address]
+ ,city
+ ,state2
+ ,customerType
+ ,ADDITIONALADDRESS
+ ,monthlyIncome
+ ,organizationType
+ ,username
+ ,anotherIdType
+ ,employeeBusinessType
+ ,documentType
+ ,remittanceallowed
+ ,txnPin
+ ,nameOfEmployeer
+ ,isExistingCustomer
+ ,HasDeclare
+ ,createdFrom
+ ,email
+ ,customerEmail
+ ,isEmailVerified
+ ,mobileUser
+ ,RegistrationType
+ ,lawsoncardno
+ ,zipCode
+
+ )
+ SELECT CMT.membershipId
+ ,fullName
+ ,CMT.firstName
+ ,CMT.middleName
+ ,cmt.lastName1
+ ,mobile
+ ,gender
+ ,CASE ISDATE(dob)
+ WHEN 1
+ THEN CONVERT(date,dob,103)
+ ELSE ''
+ END
+ ,CMT.occupation
+ ,nativeCountry
+ ,233
+ ,bankName
+ ,bankAccountNo
+ ,idType
+ ,idNumber
+ ,CMT.homePhone
+ ,CMT.idIssueDate
+ ,idExpiryDate
+ ,verifyDoc1
+ ,verifyDoc2
+ ,verifyDoc3
+ ,CMT.selfie
+ ,CMT.referelCode
+ ,CMT.createdBy
+ ,createdDate
+ ,'Y'
+ ,'Y'
+ ,customerPassword
+ ,[address]
+ ,city
+ ,state2
+ ,4700
+ ,ADDITIONALADDRESS
+ ,monthlyIncome
+ ,organizationType
+ ,username
+ ,anotherIdType
+ ,employeeBusinessType
+ ,documentType
+ ,1
+ ,NULL
+ ,nameOfEmployeer
+ ,0
+ ,0
+ ,'M'
+ ,email
+ ,customerEmail
+ ,isEmailVerified
+ ,mobileUser
+ ,RegistrationType
+ ,'KYC_LATER'
+ --,CASE @clientid WHEN 'KYC_LATER' THEN GETDATE() ELSE NULL END
+ --,CASE @clientid WHEN 'KYC_LATER' THEN 'verified' ELSE NULL END
+ --,@username
+ ,zipCode
+ FROM dbo.CustomerMasterTemp AS CMT(NOLOCK)
+ WHERE CMT.username = @email
+
+ SET @customerId = @@IDENTITY
+
+ UPDATE dbo.mobile_userRegistration
+ SET customerId = @customerId
+ WHERE username = @email
+
+ DELETE
+ FROM customerMasterTemp
+ WHERE username = @email
+
+ DECLARE @MEMBESHIP_ID VARCHAR(50) = NULL, @existingMemId VARCHAR(50)
+
+ EXEC PROC_GENERATE_MEMBERSHIP_ID @CUSTOMERID = 0
+ ,@USER = 'mobile'
+ ,@loginBranchId = 0
+ ,@MEMBESHIP_ID = @MEMBESHIP_ID OUT
+
+ SELECT @existingMemId = membershipId FROM customerMaster WHERE username = @email
+
+ UPDATE dbo.customerMaster
+ SET MEMBERSHIPID = CASE WHEN @existingMemId = NULL OR @existingMemId IS NULL THEN @MEMBESHIP_ID ELSE @existingMemId END
+ ,mobileverifieddate = GETDATE()
+ ,mobileverifiedby = @email
+ ,mobileVerificationType = 'verified'
+ ,HasDeclare = 1
+ ,agreeYn = 1
+ --,LawsonCardNo = ISNULL(@clientid, '')
+ WHERE customerId = @customerId
+
+ IF (LEFT(@referralId, 3) NOT IN ('MOB', 'ADM', 'CRP', 'ONL'))
+ BEGIN
+ SELECT @ruleType = CASE
+ WHEN RULE_TYPE = 1 THEN 'Y'
+ WHEN RULE_TYPE IS NULL THEN 'N'
+ ELSE 'N'
+ END
+ FROM REFERRAL_AGENT_WISE
+ WHERE REFERRAL_CODE = @referralId
+
+ IF (@ruleType = 'Y')
+ BEGIN
+ EXEC proc_InsertReferralRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @referralId
+ END
+ END
+
+ INSERT INTO pushNotificationHistroy (
+ customerId
+ ,body
+ ,title
+ ,createDate
+ ,imageURL
+ ,sentId
+ ,Type
+ ,isReservation
+ ,isRead
+ ,isSend
+ ,category
+ ,isClickable
+ )
+ SELECT @customerId
+ ,'Congratulations, You are now ready to send money from IME London Mobile App'
+ ,'IME LONDON Registration'
+ ,getdate()
+ ,''
+ ,@customerId
+ ,0
+ ,0
+ ,0
+ ,0
+ ,'INFO'
+ ,'N'
+ END
+
+ SELECT 0 ErrorCode
+ ,'Success' Msg
+ ,NULL Id
+ END
+
+END TRY
+
+BEGIN CATCH
+ IF @@TRANCOUNT > 0
+ ROLLBACK TRANSACTION;
+
+ DECLARE @errorMessage VARCHAR(MAX);
+
+ SET @errorMessage = ERROR_MESSAGE();
+
+ EXEC proc_errorHandler 1
+ ,@errorMessage
+ ,@customerId;
+END CATCH;
+
+
+
diff --git a/Deployment/V10/Backup/proc_searchCustomerIRH.sql b/Deployment/V10/Backup/proc_searchCustomerIRH.sql
new file mode 100644
index 0000000..ab2b522
--- /dev/null
+++ b/Deployment/V10/Backup/proc_searchCustomerIRH.sql
@@ -0,0 +1,1134 @@
+USE [FastMoneyPro_Remit]
+GO
+/****** Object: StoredProcedure [dbo].[proc_searchCustomerIRH] Script Date: 8/12/2024 4:36:32 AM ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+
+
+
+
+ALTER PROC [dbo].[proc_searchCustomerIRH]
+ --DECLARE
+ @user VARCHAR(20) = NULL
+ ,@flag VARCHAR(20) = NULL
+ ,@searchType VARCHAR(20) = NULL
+ ,@searchValue VARCHAR(80) = NULL
+ ,@country VARCHAR(50) = NULL
+ ,@senderId VARCHAR(20) = NULL
+ ,@recId VARCHAR(20) = NULL
+ ,@agentType CHAR(1) = NULL --I-Internal, E-External
+ ,@sCountryId VARCHAR(50) = NULL
+ ,@settlementAgent VARCHAR(50) = NULL
+ ,@customerId VARCHAR(10) = NULL
+ ,@relation VARCHAR(100) = NULL
+ ,@relationOther VARCHAR(100) = NULL
+ ,@purpose VARCHAR(100) = NULL
+ ,@purposeOther VARCHAR(100) = NULL
+ ,@visaStatus VARCHAR(100) = NULL
+ ,@occupation VARCHAR(100) = NULL
+ ,@occupationOther VARCHAR(100) = NULL
+ ,@RID BIGINT = NULL
+ ,@goodsType VARCHAR(100) = NULL
+ ,@goodsOrigin VARCHAR(100) = NULL
+ ,@portOfShipment VARCHAR(100) = NULL
+AS
+SET NOCOUNT ON;
+
+----------------------------------------
+--JME-561 July 21 -> Show Customer Document in Send Money
+--JME-544 July 22 -> document view issue for receiver. Set application/pdf
+--SEP 21 -->#134 -> Allow edit option of address in Town Area
+--#621 ->Disabled customer allowed to do txn
+-----------------------------------------
+--SELECT @flag ='s', @searchType = 'customerId', @searchValue = '282083105155', @sCountryId = '119', @settlementAgent = '4880'
+DECLARE @SQL VARCHAR(MAX)
+ ,@TranId VARCHAR(50)
+DECLARE @idType VARCHAR(30)
+DECLARE @senderName VARCHAR(100)
+DECLARE @membershipId VARCHAR(50)
+DECLARE @txnList TABLE (
+ id BIGINT NOT NULL
+ ,receiver VARCHAR(100)
+ ,rIdNumber VARCHAR(50)
+ ,rMobile VARCHAR(50)
+ )
+
+IF @flag = 'SAVE'
+BEGIN
+ IF EXISTS (
+ SELECT 'X'
+ FROM customerMaster(NOLOCK)
+ WHERE customerId = @customerId
+ AND ISNULL(isCDDIUpdated, 0) = 0
+ )
+ BEGIN
+ UPDATE customerMaster
+ SET OCCUPATION = @occupation
+ ,occupationOther = @occupationOther
+ ,visaStatus = @visaStatus
+ ,isCDDIUpdated = 1
+ WHERE CUSTOMERID = @customerId
+ END
+
+ IF EXISTS (
+ SELECT 'X'
+ FROM receiverinformation(NOLOCK)
+ WHERE RECEIVERID = @RID
+ AND ISNULL(isCDDIUpdated, 0) = 0
+ )
+ BEGIN
+ UPDATE receiverinformation
+ SET relationOther = @relationOther
+ ,purposeOther = @purposeOther
+ ,relationship = @relation
+ ,purposeOfRemit = @purpose
+ ,isCDDIUpdated = 1
+ ,goodsType = @goodsType
+ ,goodsOrigin = @goodsOrigin
+ ,portOfShipment = @portOfShipment
+ WHERE RECEIVERID = @RID
+ END
+
+ EXEC proc_errorHandler 0
+ ,'Updated successfully!'
+ ,NULL
+END
+
+IF @FLAG IN (
+ 'SenderH'
+ ,'s'
+ ) --Direct Search By Passport/Mobile Number
+BEGIN
+ DECLARE @customers TABLE (
+ customerId BIGINT
+ ,idNumber VARCHAR(50)
+ )
+ DECLARE @SenderIDimage VARCHAR(500)
+ ,@fileName VARCHAR(200)
+
+ IF ISNULL(@searchValue, '') = ''
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Please enter value to search'
+ ,NULL
+
+ RETURN
+ END
+
+ IF @searchType = 'email'
+ BEGIN
+ SET @SQL = '
+ SELECT TOP 1 customerId, idNumber FROM customerMaster WITH(NOLOCK)
+ WHERE ISNULL(isDeleted, ''N'') = ''N'' AND ISNULL(isBlacklisted, ''N'') = ''N''
+ '
+
+ --IF @sCountryId IS NOT NULL
+ -- SET @SQL = @SQL + ' AND country = ''' + @sCountryId + ''''
+
+ IF @searchValue IS NOT NULL
+ SET @SQL = @SQL + ' AND email=''' + @searchValue + ''''
+ ELSE
+ SET @SQL = @SQL + ' AND 1 = 2'
+
+ PRINT @SQL
+
+ INSERT INTO @customers
+ EXEC (@SQL)
+
+ IF NOT EXISTS (
+ SELECT 'X'
+ FROM @customers
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Customer not found with the respected search'
+ ,NULL
+
+ RETURN
+ END
+ END
+
+ SELECT TOP 1 @fileName = [fileName]
+ FROM customerDocument WITH (NOLOCK)
+ WHERE customerId = @customerId
+ ORDER BY createdDate DESC
+
+ IF @fileName IS NULL
+ SET @SenderIDimage = 'Customer Id Image: '
+ ELSE
+ SET @SenderIDimage = 'Customer Id Image: '
+
+ DECLARE @txnSum INT
+ ,@txnCount VARCHAR(20)
+ ,@date VARCHAR(20) = CONVERT(VARCHAR, GETDATE(), 111)
+
+ SET @txnSum = ISNULL(@txnSum, 0)
+ SET @txnCount = ISNULL(@txnCount, 0)
+
+ DECLARE @receiverName VARCHAR(200)
+ ,@rCustomerId VARCHAR(20)
+ ,@receiverCountry VARCHAR(100)
+ ,@receiverAddress VARCHAR(200)
+ ,@receiverCity VARCHAR(100)
+ ,@receiverEmail VARCHAR(100)
+ ,@receiverPhone VARCHAR(50)
+ ,@receiverMobile VARCHAR(50)
+ ,@receiverIDDescription VARCHAR(50)
+ ,@receiverID VARCHAR(30)
+ ,@paymentType VARCHAR(100)
+ ,@rBankAcNo VARCHAR(50)
+ ,@paidCType VARCHAR(3)
+ ,@receiveCType VARCHAR(3)
+ ,@pBank INT
+ ,@pBankBranch INT
+ ,@pBankBranchName VARCHAR(50)
+ ,@receiverCountryId INT
+
+ SELECT TOP 1 @receiverName = ReceiverName
+ ,@rCustomerId = CustomerId
+ ,@receiverCountry = UPPER(ReceiverCountry)
+ ,@receiverAddress = ReceiverAddress
+ ,@receiverCity = receiverCity
+ ,@receiverEmail = ''
+ ,@receiverPhone = ReceiverPhone
+ ,@receiverMobile = receiver_mobile
+ ,@receiverIDDescription = ReceiverIDDescription
+ ,@ReceiverID = ReceiverID
+ ,@paymentType = CASE paymentType
+ WHEN 'Cash Pay'
+ THEN 'CASH PAYMENT'
+ WHEN 'Bank Transfer'
+ THEN 'BANK DEPOSIT'
+ WHEN 'Account Deposit To Other Bank'
+ THEN 'BANK DEPOSIT'
+ ELSE UPPER(paymentType)
+ END
+ ,@pBank = pBank
+ ,@pBankBranch = pBankBranch
+ ,@pBankBranchName = pBankBranchName
+ ,@rBankAcNo = rBankACNo
+ ,@paidCType = paidCType
+ ,@receiveCType = receiveCType
+ FROM customerTxnHistory WITH (NOLOCK)
+ WHERE senderPassport = @searchValue
+ ORDER BY tranNo DESC
+
+ DECLARE @rFirstName VARCHAR(100)
+ ,@rMiddleName VARCHAR(100)
+ ,@rLastName1 VARCHAR(100)
+ ,@rLastName2 VARCHAR(100)
+ ,@rFullName VARCHAR(100)
+ ,@totalRows INT
+
+ SELECT @rFirstName = firstName
+ ,@rMiddleName = middleName
+ ,@rLastName1 = lastName1
+ ,@rLastName2 = lastName2
+ FROM dbo.FNASplitName(@receiverName)
+
+ SELECT TOP 1 0 errorCode
+ ,customerId = CM.customerId
+ ,sMemId = CM.membershipId
+ ,sfirstName = CM.firstName
+ ,smiddleName = ISNULL(CM.middleName, '')
+ ,slastName1 = ISNULL(CM.lastName1, '')
+ ,slastName2 = ISNULL(CM.lastName2, '')
+ ,sState = ISNULL(CM.STATE, '')
+ ,scountry = ISNULL(CM.nativecountry, '')
+ ,saddress = ISNULL(CM.address, '')
+ ,saddress2 = ISNULL(CM.address2, '')
+ ,szipCode = ISNULL(CM.zipCode, '')
+ ,sDistrict = CM.district
+ ,sCity = CM.city
+ ,semail = ISNULL(CM.email, '')
+ ,sgender = CASE
+ WHEN CM.gender = 97
+ THEN 'Male'
+ WHEN CM.gender = 98
+ THEN 'Female'
+ END
+ ,shomePhone = ISNULL(CM.homePhone, '')
+ ,sworkPhone = isnull(CM.workPhone, '')
+ ,smobile = CM.mobile
+ ,sdob = convert(VARCHAR(20), CM.dob, 111)
+ ,sCustomerType = custType.detailTitle
+ ,sOccupation = CM.occupation
+ ,idName = sdv.detailTitle
+ ,sidNumber = ISNULL(CM.idNumber, '')
+ ,svalidDate = ISNULL(CONVERT(VARCHAR, CM.idExpiryDate, 111), '')
+ ,senderName = CM.fullName
+ ,companyName = CM.companyName
+ ,receiverName = @receiverName
+ ,rId = @rCustomerId
+ ,rfirstName = @rFirstName
+ ,rmiddleName = @rMiddleName
+ ,rlastName1 = @rLastName1
+ ,rlastName2 = @rLastName2
+ ,rcountry = @receiverCountry
+ ,raddress = @receiverAddress
+ ,raddress2 = ''
+ ,rState = ''
+ ,rzipCode = ''
+ ,rDistrict = ''
+ ,rCity = @receiverCity
+ ,remail = ISNULL(@receiverEmail, '')
+ ,rgender = ''
+ ,rhomePhone = ISNULL(@receiverPhone, '')
+ ,rworkPhone = ISNULL(@receiverPhone, '')
+ ,rmobile = ISNULL(@receiverMobile, '')
+ ,rdob = ''
+ ,ridtype = @receiverIDDescription
+ ,ridNumber = @receiverID
+ ,rvalidDate = ''
+ ,purposeOfRemit = ''
+ ,sourceOfFund = ''
+ ,relWithSender = ''
+ ,pCountry = @receiverCountry
+ ,paymentMethod = @paymentType
+ ,pAgent = ''
+ ,pBank = ISNULL(@pBank, '')
+ ,pBankBranch = ISNULL(@pBankBranch, '')
+ ,pBankBranchName = ISNULL(@pBankBranchName, '')
+ ,accountNo = ISNULL(@rBankAcNo, '')
+ ,collCurr = @paidCType
+ ,payoutCurr = @receiveCType
+ ,salaryRange = cm.salaryRange
+ ,txnSum = dbo.ShowDecimal(CAST(@txnSum AS VARCHAR(200)))
+ ,txnSum2 = @txnSum
+ ,txnPerDayCustomerLimit = isnull(dbo.FNAGetPerDayCustomerLimit(@settlementAgent), 0)
+ ,txnCount = @txnCount
+ ,SenderIDimage = @SenderIDimage
+ INTO #sTemp
+ FROM dbo.customerMaster CM WITH (NOLOCK)
+ LEFT JOIN staticDataValue sdv WITH (NOLOCK) ON sdv.valueId = CM.idType
+ LEFT JOIN staticDataValue custType WITH (NOLOCK) ON CM.customerType = custType.valueId
+ WHERE CM.customerId IN (
+ SELECT customerId
+ FROM @customers
+ )
+ --AND country = @sCountryId
+
+ IF NOT EXISTS (
+ SELECT 'x'
+ FROM #sTemp
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Customer not found with the respected search'
+ ,NULL
+
+ RETURN
+ END
+
+ SELECT *
+ FROM #sTemp
+
+ --DROP TABLE #sTemp
+ RETURN
+END
+
+IF @FLAG IN ('s-new') --Direct Search By Passport/Mobile Number
+BEGIN
+ DECLARE @IdNumber VARCHAR(30)
+ ,@AVAILABLEBALANCE MONEY
+
+ IF ISNULL(@customerId, '') = ''
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Please enter value to search'
+ ,NULL
+
+ RETURN
+ END
+
+ --SELECT @AVAILABLEBALANCE = availableLimit
+ --FROM DBO.FNAGetUserCashLimitDetails(@user, NULL)
+
+ SELECT @IdNumber = idNumber
+ FROM customerMaster(NOLOCK)
+ WHERE customerId = @customerId
+
+ DECLARE @kycStatus INT
+ ,@MSG VARCHAR(150)
+ ,@visaStatusNotFound VARCHAR(10)
+ ,@remittanceAllowed INT
+
+ SELECT @kycStatus = kycStatus
+ FROM TBL_CUSTOMER_KYC(NOLOCK)
+ WHERE CUSTOMERID = @customerId
+ AND ISDELETED = 0
+ --AND kycStatus='11044'
+ ORDER BY KYC_DATE
+
+ SELECT @remittanceAllowed = remittanceAllowed FROM customerMaster(NOLOCK)
+ WHERE CUSTOMERID = @customerId
+ --IF ISNULL(@kycStatus, 0) <> 11044
+ --BEGIN
+ -- IF @kycStatus IS NOT NULL
+ -- SELECT @MSG = 'KYC for selected customer is not completed, it is in status : ' + detailTitle
+ -- FROM staticDataValue(NOLOCK)
+ -- WHERE valueId = @kycStatus
+ -- ELSE
+ -- SELECT @MSG = 'Please complete KYC status first'
+
+ -- EXEC proc_errorHandler 1
+ -- ,@MSG
+ -- ,NULL
+
+ -- RETURN
+ --END
+
+ IF ISNULL(@remittanceAllowed,0) ='0'
+ BEGIN
+ SELECT @MSG = 'This customer is not allowed perform transaction.'
+
+ EXEC proc_errorHandler 1
+ ,@MSG
+ ,NULL
+
+ RETURN
+ END
+ --SELECT @visaStatus = visaStatus
+ --FROM customermaster cm(NOLOCK)
+ --INNER JOIN STATICDATAVALUE VISASTATUS ON VISASTATUS.VALUEID = cm.visastatus
+ --WHERE cm.customerId = @customerId
+ -- AND ISNULL(VISASTATUS.isActive, 'N') = 'Y'
+
+ --IF @visaStatus IS NULL
+ --BEGIN
+ -- SET @visaStatusNotFound = 'true'
+ --END
+
+ --IF @IdNumber IS NULL
+ --BEGIN
+ -- EXEC proc_errorHandler 1
+ -- ,'Invalid customer, Please udpate Identity Type Card Number to proceed!'
+ -- ,NULL
+
+ -- RETURN
+ --END
+
+ SELECT TOP 1 @fileName = [fileName]
+ FROM customerDocument WITH (NOLOCK)
+ WHERE customerId = @customerId
+ AND fileType = 'custDoc'
+ ORDER BY createdDate DESC
+
+ IF @fileName IS NULL
+ SET @SenderIDimage = 'Customer Id Image: '
+ ELSE
+ SET @SenderIDimage = 'Customer Id Image: '
+
+ SET @txnSum = ISNULL(@txnSum, 0)
+ SET @txnCount = ISNULL(@txnCount, 0)
+
+ SELECT TOP 1 @receiverName = ReceiverName
+ ,@rCustomerId = CustomerId
+ ,@receiverCountry = UPPER(ReceiverCountry)
+ ,@receiverCountryId = CM.countryId
+ ,@receiverAddress = ReceiverAddress
+ ,@receiverCity = receiverCity
+ ,@receiverEmail = ''
+ ,@receiverPhone = ReceiverPhone
+ ,@receiverMobile = receiver_mobile
+ ,@receiverIDDescription = ReceiverIDDescription
+ ,@ReceiverID = ReceiverID
+ ,@paymentType = CASE paymentType
+ WHEN 'Cash Pay'
+ THEN 'CASH PAYMENT'
+ WHEN 'Bank Transfer'
+ THEN 'BANK DEPOSIT'
+ WHEN 'Account Deposit To Other Bank'
+ THEN 'BANK DEPOSIT'
+ ELSE UPPER(paymentType)
+ END
+ ,@pBank = pBank
+ ,@pBankBranch = pBankBranch
+ ,@pBankBranchName = pBankBranchName
+ ,@rBankAcNo = rBankACNo
+ ,@paidCType = paidCType
+ ,@receiveCType = receiveCType
+ FROM customerTxnHistory T WITH (NOLOCK)
+ INNER JOIN countryMaster CM(NOLOCK) ON CM.countryName = T.ReceiverCountry
+ WHERE senderPassport = @IdNumber
+ ORDER BY tranNo DESC
+
+ IF @receiverEmail IS NULL
+ OR @receiverEmail = ''
+ BEGIN
+ SELECT @receiverEmail = email
+ FROM dbo.receiverInformation
+ WHERE mobile LIKE '%' + @receiverMobile + '%'
+ END
+
+ SELECT @rFirstName = firstName
+ ,@rMiddleName = middleName
+ ,@rLastName1 = lastName1
+ ,@rLastName2 = lastName2
+ FROM dbo.FNASplitName(@receiverName)
+
+ SELECT TOP 1 0 errorCode
+ ,customerId = CM.customerId
+ ,sMemId = CM.membershipId
+ ,sfirstName = CM.firstName
+ ,smiddleName = ISNULL(CM.middleName, '')
+ ,slastName1 = ISNULL(CM.lastName1, '')
+ ,slastName2 = ISNULL(CM.lastName2, '')
+ ,sState = ISNULL(CM.STATE, '')
+ ,scountry = ISNULL(CM.nativecountry, '')
+ ,saddress = ISNULL(CM.address, '')
+ ,saddress2 = ISNULL(CM.address2, '')
+ ,szipCode = ISNULL(CM.zipCode, '')
+ ,sDistrict = CM.district
+ ,sCity = CM.city
+ ,semail = ISNULL(CM.email, '')
+ ,sgender = CASE
+ WHEN CM.gender = 97
+ THEN 'Male'
+ WHEN CM.gender = 98
+ THEN 'Female'
+ END
+ ,shomePhone = ISNULL(CM.telNo, '')
+ ,sworkPhone = isnull(CM.workPhone, '')
+ ,smobile = CM.mobile
+ ,sdob = convert(VARCHAR(20), CM.dob, 23)
+ ,sCustomerType = custType.detailTitle
+ ,sOccupation = CM.occupation
+ ,idName = sdv.detailTitle
+ ,sidNumber = ISNULL(CM.idNumber, '')
+ ,svalidDate = ISNULL(CONVERT(VARCHAR, CM.idExpiryDate, 23), '')
+ ,senderName = CM.fullName
+ ,companyName = CASE
+ WHEN cm.companyName IS NULL
+ AND CM.customerType = '4701'
+ THEN cm.firstName
+ END
+ ,receiverName = @receiverName
+ ,rId = @rCustomerId
+ ,rfirstName = @rFirstName
+ ,rmiddleName = @rMiddleName
+ ,rlastName1 = @rLastName1
+ ,rlastName2 = @rLastName2
+ ,rcountry = @receiverCountry
+ ,raddress = @receiverAddress
+ ,raddress2 = ''
+ ,rState = ''
+ ,rzipCode = ''
+ ,rDistrict = ''
+ ,rCity = @receiverCity
+ ,remail = ISNULL(@receiverEmail, '')
+ ,rgender = ''
+ ,rhomePhone = ISNULL(@receiverPhone, '')
+ ,rworkPhone = ISNULL(@receiverPhone, '')
+ ,rmobile = ISNULL(@receiverMobile, '')
+ ,rdob = ''
+ ,ridtype = @receiverIDDescription
+ ,ridNumber = @receiverID
+ ,rvalidDate = ''
+ ,purposeOfRemit = ''
+ ,sourceOfFund = sourceOfFund
+ ,relWithSender = ''
+ ,pCountry = @receiverCountry
+ ,pCountryId = @receiverCountryId
+ ,paymentMethod = @paymentType
+ ,pAgent = ''
+ ,pBank = ISNULL(@pBank, '')
+ ,pBankBranch = ISNULL(@pBankBranch, '')
+ ,pBankBranchName = ISNULL(@pBankBranchName, '')
+ ,accountNo = ISNULL(@rBankAcNo, '')
+ ,collCurr = @paidCType
+ ,payoutCurr = @receiveCType
+ ,salaryRange = cm.salaryRange
+ ,txnSum = dbo.ShowDecimal(CAST(@txnSum AS VARCHAR(200)))
+ ,txnSum2 = @txnSum
+ ,txnPerDayCustomerLimit = isnull(dbo.FNAGetPerDayCustomerLimit(@settlementAgent), 0)
+ ,txnCount = @txnCount
+ ,SenderIDimage = @SenderIDimage
+ ,idIssueDate = ISNULL(CONVERT(VARCHAR, CM.idIssueDate, 23), '')
+ ,street = ISNULL(CM.streetUnicode, CM.street)
+ ,CM.organizationType
+ ,CM.customerType
+ ,CM.PLACEOFISSUE
+ ,AVAILABLEBALANCE = ISNULL(@AVAILABLEBALANCE, 0)
+ ,CM.monthlyIncome
+ ,visaStatusNotFound = @visaStatusNotFound
+ ,cm.additionalAddress
+ ,showCDDI = CASE
+ WHEN ISNULL(isCDDIUpdated, 0) = 0
+ THEN 'Y'
+ ELSE 'N'
+ END
+ ,cm.otherIdNumber
+ ,sdv.valueId [idTypeValue]
+ ,VISASTATUS.detailTitle visaStatus
+ ,rewardPoints = CAST(dbo.[FNA_GET_AVAILABLE_BALANCE_POINTS](@customerId) AS INT)
+ INTO #sTempNew
+ FROM dbo.customerMaster CM WITH (NOLOCK)
+ LEFT JOIN staticDataValue sdv WITH (NOLOCK) ON sdv.valueId = CM.idType
+ LEFT JOIN staticDataValue custType WITH (NOLOCK) ON CM.customerType = custType.valueId
+ LEFT JOIN STATICDATAVALUE VISASTATUS ON VISASTATUS.VALUEID = cm.visastatus
+ WHERE CM.customerId IN (@customerId)
+ --AND country = @sCountryId
+
+ IF NOT EXISTS (
+ SELECT 'x'
+ FROM #sTempNew
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'Customer not found with the respected search'
+ ,NULL
+
+ RETURN
+ END
+
+ SELECT *
+ FROM #sTempNew
+
+ 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 = '' + cd.fileName + ''
+ 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;
+
+ SELECT fullName = firstName + ISNULL(' ' + middleName, '') + ISNULL(' ' + lastName1, '')
+ ,receiverId
+ FROM dbo.receiverInformation(NOLOCK)
+ WHERE customerId = @customerId
+ AND ISNULL(ISDELETED, 0) <> 1
+ ORDER BY FULLNAME ASC
+
+ --DROP TABLE #sTemp
+ RETURN
+END
+ELSE IF @flag = 'ASN'
+BEGIN
+ IF NOT EXISTS (
+ SELECT *
+ FROM dbo.customerMaster(NOLOCK)
+ WHERE customerId = @recId
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'No result found'
+ ,NULL
+
+ RETURN
+ END
+
+ SELECT TOP 1 0 errorCode
+ ,customerId = CM.idNumber
+ ,sMemId = CM.membershipId
+ ,sfirstName = CM.firstName
+ ,smiddleName = ISNULL(CM.middleName, '')
+ ,slastName1 = ISNULL(CM.lastName1, '')
+ ,slastName2 = ISNULL(CM.lastName2, '')
+ ,sState = ISNULL(CM.STATE, '')
+ ,scountry = ISNULL(CM.nativecountry, '')
+ ,saddress = ISNULL(CM.address, '')
+ ,saddress2 = ISNULL(CM.address2, '')
+ ,szipCode = ISNULL(CM.zipCode, '')
+ ,sDistrict = CM.district
+ ,sCity = CM.city
+ ,semail = ISNULL(CM.email, '')
+ ,sgender = CASE
+ WHEN CM.gender = 97
+ THEN 'Male'
+ WHEN CM.gender = 98
+ THEN 'Female'
+ END
+ ,shomePhone = ISNULL(CM.homePhone, '')
+ ,sworkPhone = isnull(CM.workPhone, '')
+ ,smobile = CM.mobile
+ ,sdob = convert(VARCHAR(20), CM.dob, 111)
+ ,sCustomerType = custType.detailTitle
+ ,sOccupation = CM.occupation
+ ,idName = sdv.detailTitle
+ ,sidNumber = ISNULL(CM.idNumber, '')
+ ,svalidDate = ISNULL(CONVERT(VARCHAR, CM.idExpiryDate, 111), '')
+ ,senderName = CM.fullName
+ ,companyName = CM.companyName
+ ,receiverName = @receiverName
+ ,rId = @rCustomerId
+ ,rfirstName = @rFirstName
+ ,rmiddleName = @rMiddleName
+ ,rlastName1 = @rLastName1
+ ,rlastName2 = @rLastName2
+ ,rcountry = @receiverCountry
+ ,raddress = @receiverAddress
+ ,raddress2 = ''
+ ,rState = ''
+ ,rzipCode = ''
+ ,rDistrict = ''
+ ,rCity = @receiverCity
+ ,remail = ISNULL(@receiverEmail, '')
+ ,rgender = ''
+ ,rhomePhone = ISNULL(@receiverPhone, '')
+ ,rworkPhone = ISNULL(@receiverPhone, '')
+ ,rmobile = ISNULL(@receiverMobile, '')
+ ,rdob = ''
+ ,ridtype = @receiverIDDescription
+ ,ridNumber = @receiverID
+ ,rvalidDate = ''
+ ,purposeOfRemit = ''
+ ,sourceOfFund = ''
+ ,relWithSender = ''
+ ,pCountry = @receiverCountry
+ ,paymentMethod = @paymentType
+ ,pAgent = ''
+ ,pBank = ISNULL(@pBank, '')
+ ,pBankBranch = ISNULL(@pBankBranch, '')
+ ,pBankBranchName = ISNULL(@pBankBranchName, '')
+ ,accountNo = ISNULL(@rBankAcNo, '')
+ ,collCurr = @paidCType
+ ,payoutCurr = @receiveCType
+ ,salaryRange = cm.salaryRange
+ ,txnSum = dbo.ShowDecimal(CAST(@txnSum AS VARCHAR(200)))
+ ,txnSum2 = @txnSum
+ ,txnPerDayCustomerLimit = isnull(dbo.FNAGetPerDayCustomerLimit(@settlementAgent), 0)
+ ,txnCount = @txnCount
+ ,SenderIDimage = @SenderIDimage
+ FROM dbo.customerMaster CM WITH (NOLOCK)
+ LEFT JOIN staticDataValue sdv WITH (NOLOCK) ON sdv.valueId = CM.idType
+ LEFT JOIN staticDataValue custType WITH (NOLOCK) ON CM.customerType = custType.valueId
+ WHERE CM.customerId = @recId
+END
+ELSE IF @flag = 'srr' --Search Recent Receiver List
+BEGIN
+ SELECT @membershipId = isnull(membershipId, '')
+ ,@senderName = fullName
+ FROM customers WITH (NOLOCK)
+ WHERE idNumber = @senderId
+
+ SET @SQL = '
+ IF OBJECT_ID(''tempdb..#TEMP'') IS NOT NULL DROP TABLE #TEMP
+ SELECT TOP 5 TR.customerId id,TS.fullName,COUNT(1) NO_OF_TXN
+ INTO #TEMP
+ FROM dbo.tranReceivers TR(NOLOCK)
+ INNER JOIN dbo.tranSenders TS(NOLOCK) ON TR.tranId = TS.tranId
+ WHERE TS.customerId = ''' + @senderId + '''
+ GROUP BY TR.customerId,TS.fullName
+ ORDER BY NO_OF_TXN DESC'
+ SET @SQL = @SQL + '
+ SELECT TOP 5 T.id ,
+ membershiId=RI.membershipId,
+ senderName=T.fullName,
+ receiverName = RI.firstName+ISNULL('' ''+ri.middleName,'''')+ISNULL('' ''+ri.lastName1,'''') ,
+ rMobile=RI.mobile,
+ bank='''',
+ payMode='''',
+ bankBranch='''',
+ acNo=ri.receiverAccountNo,
+ idType=RI.idType,
+ idNumber=RI.idNumber
+ FROM dbo.receiverInformation RI(NOLOCK)
+ INNER JOIN #TEMP T ON T.id = RI.receiverId'
+
+ IF @searchValue IS NOT NULL
+ SET @SQL = @SQL + ' AND RI.firstName+ISNULL('' ''+ri.middleName,'''')+ISNULL('' ''+ri.lastName1,'''') LIKE ''' + @searchValue + '%'''
+
+ --SET @SQL = @SQL + '
+ --GROUP BY receiverName ,CTH.receiver_mobile ,CTH.rBankName ,CTH.rBankBranch ,CTH.rBankACNo ,CTH.membershipId ,senderName ,CTH.Tranno
+ --ORDER BY MAX(ri.receiverId) DESC'
+ PRINT 1
+ PRINT (@SQL)
+
+ EXEC (@SQL)
+
+ RETURN
+END
+ELSE IF @flag = 'sth' --Sender Txn History
+BEGIN
+ --******Inficare System Search******
+ SELECT @senderName = fullName
+ FROM customers WITH (NOLOCK)
+ WHERE idNumber = @senderId
+
+ SET @SQL = '
+ SELECT TOP 5
+ id = ms.Tranno
+ ,senderName = ''' + @senderName + '''
+ ,receiverName = ms.ReceiverName
+ ,tAmt = ms.paidAmt
+ ,createdDate = CONVERT(VARCHAR , ms.confirmDate, 111)
+ ,ICN = dbo.FNADecryptString(ms.refno)
+ ,payMode = ms.paymentType
+ ,bank = CASE WHEN ms.paymentType = ''Bank Transfer'' THEN ms.rBankName
+ WHEN ms.paymentType = ''Account Deposit to Other Bank'' THEN ms.ben_bank_name ELSE ms.rBankName END
+ ,bankBranch = CASE WHEN ms.paymentType = ''Bank Transfer'' THEN ms.rBankBranch
+ WHEN ms.paymentType = ''Account Deposit to Other Bank'' THEN ms.rBankAcType ELSE ms.rBankBranch END
+ ,acNo = ms.rBankACNo
+ FROM customerTxnHistory ms WITH(NOLOCK)
+ WHERE senderPassport = ''' + @senderId + '''
+ '
+
+ IF @recId IS NOT NULL
+ SET @SQL = @SQL + ' AND ms.ReceiverName LIKE ''' + @recId + '%'''
+ SET @SQL = @SQL + ' ORDER BY ms.Tranno DESC'
+
+ EXEC (@SQL)
+
+ RETURN
+END
+ELSE IF @flag = 'advS' --Advance Search(Load Customer Grid)
+BEGIN
+ SET @searchValue = ISNULL(@searchValue, '')
+ SET @SQL = '
+ SELECT DISTINCT TOP 15
+ errorCode = ''0''
+ ,customerId = C.customerId
+ ,membershipId = C.membershipId
+ ,senderName = C.fullName
+ ,countryName = CM.countryName
+ ,address = C.address
+ ,mobile = C.mobile
+ ,nativeCountry = C.nativeCountry
+ ,email = C.email
+ ,idNumber = C.idNumber
+ ,idType = SV.detailTitle
+ ,validDate = CONVERT(VARCHAR, C.idExpiryDate, 111)
+ ,cUstId = C.idNumber
+ FROM customerMaster C WITH(NOLOCK)
+ INNER JOIN countryMaster CM WITH (NOLOCK) ON C.country = CM.countryId
+ LEFT JOIN staticDataValue SV WITH (NOLOCK) ON SV.valueId = C.idType
+ WHERE ISNULL(C.isDeleted,''N'') = ''N'' AND ISNULL(isBlackListed, ''N'') = ''N''
+ '
+
+ IF @sCountryId IS NOT NULL
+ SET @SQL = @SQL + ' AND c.country = ''' + @sCountryId + ''''
+
+ IF @searchType = 'firstName'
+ SET @SQL = @SQL + ' AND C.fullName LIKE ''' + @searchValue + '%'''
+ ELSE IF @searchType = 'Address'
+ SET @SQL = @SQL + ' AND C.Address LIKE ''' + @searchValue + '%'''
+ ELSE IF @searchType = 'Passport'
+ SET @SQL = @SQL + ' AND C.idType = 1302 AND C.idNumber = ''' + @searchValue + ''''
+ ELSE IF @searchType IS NOT NULL
+ AND @searchType <> 'IC'
+ SET @SQL = @SQL + ' AND C.' + @searchType + ' = ''' + @searchValue + ''''
+ ELSE
+ SET @SQL = @SQL + ' AND 1 = 2'
+
+ --PRINT @SQL
+ EXEC (@SQL)
+END
+ELSE IF @flag = 'advS-new' --Advance Search(Load Customer Grid)
+BEGIN
+ SET @searchValue = ISNULL(@searchValue, '')
+ SET @SQL = '
+ SELECT DISTINCT TOP 15
+ errorCode = ''0''
+ ,customerId = C.customerId
+ ,membershipId = C.membershipId
+ ,senderName = C.fullName
+ ,countryName = CM.countryName
+ ,address = C.address
+ ,mobile = C.mobile
+ ,nativeCountry = C.nativeCountry
+ ,email = C.email
+ ,idNumber = C.idNumber
+ ,idType = SV.detailTitle
+ ,validDate = CONVERT(VARCHAR, C.idExpiryDate, 111)
+ ,cUstId = C.idNumber
+ FROM customerMaster C WITH(NOLOCK)
+ INNER JOIN countryMaster CM WITH (NOLOCK) ON C.country = CM.countryId
+ LEFT JOIN staticDataValue SV WITH (NOLOCK) ON SV.valueId = C.idType
+ WHERE ISNULL(C.isDeleted,''N'') = ''N'' AND ISNULL(isBlackListed, ''N'') = ''N''
+ '
+
+ IF @sCountryId IS NOT NULL
+ SET @SQL = @SQL + ' AND c.country = ''' + @sCountryId + ''''
+
+ IF @searchType = 'name'
+ SET @SQL = @SQL + ' AND C.fullName LIKE ''' + @searchValue + '%'''
+ ELSE IF @searchType = 'email'
+ SET @SQL = @SQL + ' AND C.email LIKE ''' + @searchValue + '%'''
+ ELSE IF @searchType = 'membershipId'
+ SET @SQL = @SQL + ' AND C.membershipId LIKE ''' + @searchValue + '%'''
+ ELSE IF @searchType = 'dob'
+ SET @SQL = @SQL + ' AND C.dob LIKE ''' + @searchValue + '%'''
+ ELSE
+ SET @SQL = @SQL + ' AND 1 = 2'
+
+ --PRINT @SQL
+ EXEC (@SQL)
+END
+ELSE IF @searchType = 'ICN' --Search By ICN
+BEGIN
+ EXEC proc_errorHandler 1
+ ,'Search By ICN is not allowed for now'
+ ,NULL
+
+ RETURN
+
+ SELECT TOP 1 @SenderId = C.customerId
+ ,@TranId = trn.id
+ ,@ReceiverID = cast(R.customerId AS VARCHAR(20))
+ --,S.customerId
+ FROM customers C
+ LEFT JOIN tranSenders S WITH (NOLOCK) ON C.customerId = S.customerId
+ LEFT JOIN remitTran trn WITH (NOLOCK) ON S.tranId = trn.id
+ LEFT JOIN tranReceivers R WITH (NOLOCK) ON R.tranId = trn.id
+ WHERE trn.controlNo = dbo.FNADecryptString(@searchValue)
+ AND R.tranId IS NOT NULL
+ ORDER BY trn.id DESC
+
+ --select @searchValue
+ IF NOT EXISTS (
+ SELECT 'A'
+ FROM customers
+ WHERE customerId = @SenderId
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'This Member is not found.'
+ ,NULL
+
+ RETURN;
+ END
+
+ IF EXISTS (
+ SELECT 'A'
+ FROM customers
+ WHERE customerId = @SenderId
+ AND ISNULL(isBlackListed, 'N') = 'Y'
+ )
+ BEGIN
+ EXEC proc_errorHandler 1
+ ,'This customer is blacklisted. Cannot proceed for transaction.'
+ ,NULL
+
+ RETURN;
+ END
+
+ SELECT 0 errorCode
+ ,*
+ FROM (
+ SELECT membershipId [sMemId]
+ ,firstName sfirstName
+ ,isnull(middleName, '') smiddleName
+ ,isnull(lastName1, '') slastName1
+ ,isnull(lastName2, '') slastName2
+ ,country scountry
+ ,isnull([address], '') saddress
+ ,isnull([State], '') sState
+ ,isnull(zipCode, '') szipCode
+ ,district [sDistrict]
+ ,city [sCity]
+ ,email semail
+ ,homePhone shomePhone
+ ,isnull(workPhone, '') sWorkPhone
+ ,mobile smobile
+ ,convert(VARCHAR(20), dob, 111) sdob
+ ,Typ.detailTitle sCustomerType
+ ,Ocu.detailTitle sOccupation
+ ,relativeName sRelativeName
+ ,Rel.detailTitle sRelation
+ ,Cont.countryName scountryName
+ ,ID.idType sidType
+ ,ID.idNumber sidNumber
+ ,ID.validDate svalidDate
+ FROM customers C WITH (NOLOCK)
+ LEFT JOIN customerIdentity ID WITH (NOLOCK) ON C.customerId = ID.idType
+ JOIN staticDataValue Rel WITH (NOLOCK) ON C.relationId = Rel.valueId
+ JOIN staticDataValue Ocu WITH (NOLOCK) ON C.occupation = Ocu.valueId
+ JOIN staticDataValue Typ WITH (NOLOCK) ON C.customerType = Typ.valueId
+ JOIN countryMaster Cont WITH (NOLOCK) ON C.country = Cont.countryId
+ WHERE C.customerId = @SenderId
+ ) AS sender
+ LEFT JOIN (
+ SELECT membershipId [rMemId]
+ ,firstName rfirstName
+ ,isnull(middleName, '') rmiddleName
+ ,isnull(lastName1, '') rlastName1
+ ,isnull(lastName2, '') rlastName2
+ ,country [rcountry]
+ ,isnull([address], '') raddress
+ ,isnull([State], '') rState
+ ,isnull(zipCode, '') rzipCode
+ ,district [rDistrict]
+ ,city [rCity]
+ ,email remail
+ ,homePhone rhomePhone
+ ,isnull(workPhone, '') sWorkPhone
+ ,mobile rmobile
+ ,convert(VARCHAR(20), dob, 111) rdob
+ ,Typ.detailTitle rCustomerType
+ ,Ocu.detailTitle rOccupation
+ ,relativeName rRelativeName
+ ,Rel.detailTitle rRelation
+ ,Cont.countryName rcountryName
+ ,ID.idType ridType
+ ,ID.idNumber ridNumber
+ ,ID.validDate rvalidDate
+ FROM customers C WITH (NOLOCK)
+ LEFT JOIN customerIdentity ID WITH (NOLOCK) ON C.customerId = ID.idType
+ JOIN staticDataValue Rel WITH (NOLOCK) ON C.relationId = Rel.valueId
+ JOIN staticDataValue Ocu WITH (NOLOCK) ON C.occupation = Ocu.valueId
+ JOIN staticDataValue Typ WITH (NOLOCK) ON C.customerType = Typ.valueId
+ JOIN countryMaster Cont WITH (NOLOCK) ON C.country = Cont.countryId
+ WHERE C.customerId = @ReceiverID
+ ) AS REC ON sender.sMemId = REC.rMemId
+END
+ELSE IF @flag = 'R' --Load Receiver after picked
+BEGIN
+ DECLARE @TRANLIST TABLE (
+ tranId BIGINT
+ ,customerId INT
+ )
+
+ --*****Inficare Search Receiver******
+ --INSERT INTO @TRANLIST(tranId)
+ --SELECT MAX(ms.Tranno) FROM irh_ime_plus_01.dbo.moneySend ms WITH(NOLOCK)
+ --WHERE senderPassport = @senderId
+ --GROUP BY ms.Tranno
+ SELECT @rFullName = receiverName
+ FROM customerTxnHistory WITH (NOLOCK)
+ WHERE Tranno = @recId
+
+ SELECT @rFirstName = firstName
+ ,@rMiddleName = middleName
+ ,@rLastName1 = lastName1
+ ,@rLastName2 = lastName2
+ FROM dbo.FNASplitName(@rFullName)
+
+ SELECT DISTINCT ID = ms.Tranno
+ ,[sid] = ms.senderPassport
+ ,[senderName] = ms.SenderName
+ ,sidType = ms.senderFax
+ ,sidNumber = ms.senderPassport
+ ,smobile = ms.sender_mobile
+ ,saddress = ms.SenderAddress
+ ,tranNo = dbo.FNADecryptString(ms.refno)
+ ,[receiverName] = ms.receiverName
+ ,firstName = @rFirstName
+ ,middleName = @rMiddleName
+ ,lastName1 = @rLastName1
+ ,lastName2 = @rLastName2
+ ,pBranchName = ms.rBankBranch
+ ,paymentMethod = CASE ms.paymentType
+ WHEN 'Cash Pay'
+ THEN 'CASH PAYMENT'
+ WHEN 'Bank Transfer'
+ THEN 'BANK DEPOSIT'
+ WHEN 'Account Deposit to Other Bank'
+ THEN 'BANK DEPOSIT'
+ ELSE UPPER(ms.paymentType)
+ END
+ ,tAmt = ms.paidAmt
+ ,createdDate = CONVERT(VARCHAR, ms.confirmDate, 111)
+ ,sCountry = ms.SenderCountry
+ ,idType = ms.receiverIDDescription
+ ,idNumber = ms.receiverID
+ ,validDate = ''
+ ,dob = ''
+ ,homePhone = ReceiverPhone
+ ,mobile = receiver_mobile
+ ,[address] = ReceiverAddress
+ ,[state] = ReceiverCity
+ ,zipCode = ''
+ ,country = ReceiverCountry
+ ,email = ''
+ ,accountNo = ISNULL(ms.rBankACNo, '')
+ ,pBank = ISNULL(pBank, 0)
+ ,pBankBranch = ISNULL(pBankBranch, 0)
+ ,pBankBranchName = ISNULL(pBankBranchName, '')
+ FROM customerTxnHistory ms WITH (NOLOCK)
+ WHERE
+ --ms.SenderName LIKE ISNULL(@searchValue + '%', '%') AND
+ ms.Tranno = @recId
+END
+ELSE IF @flag = 'branchByAgent'
+BEGIN
+ IF @agentType = 'I'
+ BEGIN
+ SET @SQL = '
+ SELECT TOP 20
+ agentId
+ ,agentName
+ ,agentAddress
+ ,agentCity = ISNULL(agentCity,'''')
+ ,agentPhone1 = ISNULL(agentPhone1 ,'''')
+ ,agentState = ISNULL(agentState, '''')
+ ,extCode = ISNULL(extCode, '''')
+ FROM agentMaster WITH(NOLOCK)
+ WHERE ISNULL(isDeleted, ''N'') = ''N''
+ AND agentType = ''2904''
+ AND parentId = ''' + @senderId + '''
+ '
+
+ IF @searchValue IS NOT NULL
+ SET @SQL = @SQL + ' AND ' + @searchType + ' LIKE ''%' + @searchValue + '%'''
+ SET @SQL = @SQL + ' ORDER BY agentName ASC'
+ END
+ ELSE IF @agentType = 'E'
+ BEGIN
+ IF @searchType = 'agentName'
+ SET @searchType = 'branchName'
+ ELSE IF @searchType = 'agentAddress'
+ SET @searchType = 'address'
+ ELSE IF @searchType = 'agentCity'
+ SET @searchType = 'city'
+ ELSE IF @searchType = 'agentPhone1'
+ SET @searchType = 'phone'
+ ELSE IF @searchType = 'agentState'
+ SET @searchType = 'State'
+ ELSE IF @searchType = 'extCode'
+ SET @searchType = 'externalCode'
+ SET @SQL = '
+ SELECT TOP 10
+ agentId = extBranchId
+ ,agentName = branchName
+ ,agentAddress = address
+ ,agentCity = ISNULL(city, '''')
+ ,agentPhone1 = ISNULL(phone, '''')
+ ,agentState = ISNULL(State, '''')
+ ,extCode = ISNULL(externalCode, '''')
+ FROM externalBankBranch WITH(NOLOCK)
+ WHERE ISNULL(isDeleted, ''N'') = ''N''
+ AND extBankId = ''' + @senderId + '''
+ AND ISNULL(isBlocked,''N'') = ''N''
+ '
+
+ IF @searchValue IS NOT NULL
+ SET @SQL = @SQL + ' AND ' + @searchType + ' LIKE ''' + @searchValue + '%'''
+ SET @SQL = @SQL + ' ORDER BY agentName ASC'
+ END
+
+ EXEC (@SQL)
+
+ PRINT (@SQL)
+
+ RETURN
+END
+ELSE IF @flag = 'locationByAgent'
+BEGIN
+ SELECT TOP 50 L.LocationId
+ ,L.Address
+ ,L.City
+ ,A.agentName
+ FROM agentDoorToDoorLocation L WITH (NOLOCK)
+ INNER JOIN agentMaster A WITH (NOLOCK) ON L.agentId = A.agentId
+ WHERE L.agentId = @senderId
+ AND L.Address LIKE ISNULL(@searchValue + '%', '%')
+ ORDER BY L.Address
+END
diff --git a/Deployment/V10/PROC_AUTO_APPROVE_TXN_JOB.sql b/Deployment/V10/PROC_AUTO_APPROVE_TXN_JOB.sql
new file mode 100644
index 0000000..1024bc2
Binary files /dev/null and b/Deployment/V10/PROC_AUTO_APPROVE_TXN_JOB.sql differ
diff --git a/Deployment/V10/proc_notification.sql b/Deployment/V10/proc_notification.sql
new file mode 100644
index 0000000..eaaae85
Binary files /dev/null and b/Deployment/V10/proc_notification.sql differ