You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

155 lines
5.9 KiB

USE [FastMoneyPro_Remit]
GO
/****** Object: StoredProcedure [dbo].[PROC_KFTC_APPROVE_REJECT] Script Date: 7/4/2019 11:35:48 AM ******/
DROP PROCEDURE [dbo].[PROC_KFTC_APPROVE_REJECT]
GO
/****** Object: StoredProcedure [dbo].[PROC_KFTC_APPROVE_REJECT] Script Date: 7/4/2019 11:35:48 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--EXEC [PROC_KFTC_APPROVE_REJECT] @flag = 'S' ,@pageNumber='1', @pageSize='10', @sortBy='CUSTOMERID', @sortOrder='ASC', @user = 'admin'
CREATE PROC [dbo].[PROC_KFTC_APPROVE_REJECT]
(
@FLAG VARCHAR(50) = NULL
,@user VARCHAR(50) = NULL
,@email VARCHAR(100) = NULL
,@idNumber VARCHAR(30) = NULL
,@type VARCHAR(20) = NULL
,@customerId BIGINT = NULL
--grid parameters
,@pageSize VARCHAR(50) = NULL
,@pageNumber VARCHAR(50) = NULL
,@sortBy VARCHAR(50) = NULL
,@sortOrder VARCHAR(50) = NULL
,@virtualAccountNo VARCHAR(50) = NULL
,@primaryAccountNo VARCHAR(50) = NULL
)
AS
SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN
DECLARE @table VARCHAR(MAX)
,@select_field_list VARCHAR(MAX)
,@extra_field_list VARCHAR(MAX)
,@sql_filter VARCHAR(MAX)
IF @FLAG = 'S'
BEGIN
SET @sortBy = 'CUSTOMERID'
SET @sortOrder = 'desc'
SET @table ='(
SELECT CM.CUSTOMERID,cm.firstName, K.userName, C.COUNTRYNAME, CM.IDNUMBER, CM.EMAIL
FROM customerMaster cm(NOLOCK)
INNER JOIN COUNTRYMASTER C(NOLOCK) ON C.COUNTRYID = CM.NATIVECOUNTRY
INNER JOIN KFTC_CUSTOMER_MASTER K(NOLOCK) ON K.customerId = CM.customerId
WHERE cm.approvedDate IS NOT NULL
AND K.ApprovedDate IS NULL
AND K.accessToken IS NOT NULL
AND K.userName IS NOT NULL)X'
SET @sql_filter = ''
IF ISNULL(@email,'') <> ''
SET @sql_Filter = @sql_Filter + ' AND email = ''' +@email+''''
IF ISNULL(@idNumber, '') <> ''
SET @sql_Filter = @sql_Filter + ' AND REPLACE(idNumber, ''-'', '''') = ''' +REPLACE(@idNumber, '-', '')+''''
SET @select_field_list ='firstName,userName,email,COUNTRYNAME,IDNUMBER,CUSTOMERID'
EXEC dbo.proc_paging
@table,@sql_filter,@select_field_list,@extra_field_list
,@sortBy,@sortOrder,@pageSize,@pageNumber
END
ELSE IF @FLAG = 'approve-reject'
BEGIN
IF NOT EXISTS(SELECT 1 FROM customerMaster (NOLOCK) WHERE customerId = @customerId AND approvedDate IS NOT NULL)
BEGIN
EXEC proc_errorHandler 1, 'Invalid account details!', null
RETURN
END
IF @type = 'approve'
BEGIN
UPDATE KFTC_CUSTOMER_MASTER SET ApprovedBy = @user, ApprovedDate = GETDATE() WHERE customerId = @customerId
EXEC proc_errorHandler 0, 'Customer auto debit account approved successfylly!', null
END
ELSE IF @type = 'reject'
BEGIN
DECLARE @ROWID BIGINT
--UPDATE KFTC_CUSTOMER_MASTER SET RejectedBy = @user, RejectedDate = GETDATE(),
-- userName = NULL, userInfo = NULL, userGender = NULL,
-- userCellNo = NULL, userEmail = NULL
--WHERE customerId = @customerId
EXEC proc_errorHandler 0, 'Customer auto debit account rejected successfylly!', null
SELECT M.accessToken access_token, S.fintechUseNo fintech_use_num, M.customerId
FROM KFTC_CUSTOMER_MASTER M(NOLOCK)
INNER JOIN KFTC_CUSTOMER_SUB S(NOLOCK)
ON S.customerId = M.customerId
WHERE M.customerId = @customerId
INSERT INTO KFTC_CUSTOMER_MASTER_DELETED
( customerId, userSeqNo, accessToken, tokenType, expiresIn,
accessTokenRegTime, accessTokenExpTime, refreshToken, scope, userCi,
userName, userInfo, userGender, userCellNo, userEmail,
RejectedBy, RejectedDate, RejectNote )
SELECT customerId, userSeqNo, accessToken, tokenType, expiresIn,
accessTokenRegTime, accessTokenExpTime, refreshToken, scope, userCi,
userName, userInfo, userGender, userCellNo, userEmail,
@user, GETDATE(), 'Rejected by user: ' + @user
FROM KFTC_CUSTOMER_MASTER (NOLOCK)
WHERE customerId = @customerId
SET @ROWID = @@IDENTITY
INSERT INTO KFTC_CUSTOMER_SUB_DELETED(
masterId, customerId, userSeqNo, fintechUseNo, accountAlias,
bankCodeStd, bankName, accountNum, accountNumMasked, accountName,
accountType, inquiryAgreeYn, transferAgreeYn,accountState, inquiryAgreeDtime,
transferAgreeDtime, RejectedBy, RejectedDate, RejectNote)
SELECT @ROWID, customerId, userSeqNo, fintechUseNo, accountAlias,
bankCodeStd, bankName, accountNum, accountNumMasked, accountName,
accountType, inquiryAgreeYn, transferAgreeYn, accountState, inquiryAgreeDtime,
transferAgreeDtime, @user, GETDATE(), 'Rejected by user: ' + @user
FROM KFTC_CUSTOMER_SUB (NOLOCK)
WHERE customerId = @customerId
DELETE FROM KFTC_CUSTOMER_MASTER WHERE customerId = @customerId
DELETE FROM KFTC_CUSTOMER_SUB WHERE customerId = @customerId
END
END
ELSE IF @FLAG='ApprovedList'
BEGIN
SET @sortBy = 'CUSTOMERID'
SET @sortOrder = 'desc'
SET @table ='(
SELECT CM.CUSTOMERID,cm.firstName, K.userName, C.COUNTRYNAME, CM.IDNUMBER, CM.EMAIL,K.ApprovedDate
FROM customerMaster cm(NOLOCK)
INNER JOIN COUNTRYMASTER C(NOLOCK) ON C.COUNTRYID = CM.NATIVECOUNTRY
INNER JOIN KFTC_CUSTOMER_MASTER K(NOLOCK) ON K.customerId = CM.customerId
WHERE cm.approvedDate IS NOT NULL AND K.ApprovedDate IS NOT NULL)X'
SET @sql_filter = ''
IF ISNULL(@email,'') <> ''
SET @sql_Filter = @sql_Filter + ' AND email = ''' +@email+''''
IF ISNULL(@idNumber, '') <> ''
SET @sql_Filter = @sql_Filter + ' AND REPLACE(idNumber, ''-'', '''') = ''' +REPLACE(@idNumber, '-', '')+''''
SET @select_field_list ='firstName,userName,email,COUNTRYNAME,IDNUMBER,CUSTOMERID,ApprovedDate'
EXEC dbo.proc_paging
@table,@sql_filter,@select_field_list,@extra_field_list
,@sortBy,@sortOrder,@pageSize,@pageNumber
END
END
GO