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.
 
 
 

154 lines
4.8 KiB

USE [FastMoneyPro_Remit]
GO
/****** Object: StoredProcedure [dbo].[proc_customerBankModify] Script Date: 7/4/2019 11:35:48 AM ******/
DROP PROCEDURE [dbo].[proc_customerBankModify]
GO
/****** Object: StoredProcedure [dbo].[proc_customerBankModify] Script Date: 7/4/2019 11:35:48 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROC [dbo].[proc_customerBankModify]
(
@flag VARCHAR(20)
,@user VARCHAR(50) = NULL
,@searchKey VARCHAR(30) = NULL
,@searchValue VARCHAR(100) = NULL
,@bankId VARCHAR(10) = NULL
,@accNumber VARCHAR(30) = NULL
,@customerId VARCHAR(10) = NULL
,@acNameInBank NVARCHAR(50) = NULL
,@verifyDoc3 VARCHAR(100) = NULL
)
AS
SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN
IF @flag = 'S'
BEGIN
IF @searchKey IS NULL OR @searchValue IS NULL
BEGIN
EXEC proc_errorHandler '1', 'Invalid Attempt!', NULL
RETURN
END
--@Max - 2018.09
DECLARE @sql VARCHAR(MAX) = 'SELECT TOP 1 0 errorCode, CM.customerId, CM.fullName,
CM.bankAccountNo, CM.idNumber, KB.BankName, KB.bankCode, CM.homePhone, CM.verifyDoc3,
idType,
CONVERT(VARCHAR(6), CM.dob, 12) AS [dob],
CASE WHEN CM.nativeCountry = 238 THEN 1
WHEN CM.nativeCountry = 113 THEN 2
WHEN CM.nativeCountry = 45 THEN 3
ELSE 4 END AS [nativeCountryCode],
CASE WHEN CM.gender = 97 THEN 7
WHEN CM.gender = 98 THEN 8 END AS [genderCode]
FROM customerMaster CM(NOLOCK)
INNER JOIN KoreanBankList KB(NOLOCK) ON KB.rowId = CM.bankName
WHERE REPLACE('+@searchKey+', ''-'', '''') = REPLACE('''+@searchValue+''', ''-'', '''')'
EXEC(@sql)
END
ELSE IF @flag = 'customervf' -- customer verification details
BEGIN
DECLARE @sqls VARCHAR(800) ='
SELECT ''0'' As Code,
cm.fullName AS name,
ISNULL(cm.mobile,cm.homePhone) AS mobile,
cm.gender AS gender,
cm.idType As idType,
cm.idNumber As idNumber,
FORMAT(cm.dob,''MM/dd/yyyy'')AS dob,
cm.bankName AS bankName,
k.bankCode As bankCode,
cm.bankAccountNo AS accountNo,
cm.nativeCountry AS country,
obpId AS obpId,
walletAccountNo AS wallletNo
FROM customerMaster cm (NOLOCK)
INNER JOIN KoreanBankList k (nolock) on k.rowId = cm.bankName
WHERE ' + @searchKey + ' = '''+ @searchValue +''' '
print @sqls
EXEC(@sqls)
END
ELSE IF @flag = 'DDL'
BEGIN
SELECT BankName, bankCode FROM KoreanBankList (NOLOCK) ORDER BY BankName ASC
END
ELSE IF @flag = 'U'
BEGIN
IF @user IS NULL
BEGIN
EXEC proc_errorHandler '1', 'Please login first to modify customer!', NULL
RETURN
END
IF NOT EXISTS (SELECT 1 FROM customerMaster (NOLOCK) WHERE customerId = @customerId)
BEGIN
EXEC proc_errorHandler '1', 'Some thing went wrong this time, please try again later!', NULL
RETURN
END
--LOG FOR CUSTOMER UPDATE
EXEC PROC_CUSTOMERMODIFYLOG @flag = 'i', @email = NULL, @idNumber = NULL, @bank = @bankId,
@accNumber = @accNumber, @customerId = @customerId, @mobileNumber = NULL,
@user = @user
UPDATE CM SET CM.bankName = KB.rowId, CM.bankAccountNo = @accNumber, CM.CustomerBankName = @acNameInBank, CM.verifyDoc3 = ISNULL(@verifyDoc3, CM.verifyDoc3)
FROM customerMaster CM(NOLOCK)
INNER JOIN KoreanBankList KB(NOLOCK) ON KB.bankCode = @bankId
WHERE CM.customerId = @customerId
EXEC proc_errorHandler '0', 'Details updated successfully!', NULL
END
ELSE IF @flag = 'Audit'
BEGIN
UPDATE customerMaster SET AuditBy = @user,AuditDate = GETDATE() WHERE customerId = @customerId
EXEC proc_errorHandler '0', 'Document marked as Audited', NULL
RETURN
END
ELSE IF @flag = 'certificate-details'
BEGIN
DECLARE @action VARCHAR(10);
IF LOWER(@searchKey) = 'email'
BEGIN
SELECT @customerId = customerId FROM customermaster cm(NOLOCK)
WHERE email=@searchValue
END
ELSE
BEGIN
SELECT @customerId = customerId FROM customermaster cm(NOLOCK)
WHERE idnumber = @searchValue
END
IF NOT EXISTS(SELECT 'x' FROM customerMaster cm(NOLOCK) WHERE customerId = @customerId)
BEGIN
SELECT '1' errorCode,'Invalid Bank detail found check detail from Menu CUSTOMER ID VERIFICATION' Msg,null id
RETURN
END
SELECT @action = [action] FROM TblCustomerBankVerification bv(NOLOCK)
WHERE customerId=@customerId
IF UPPER(@action) = 'REQ'
BEGIN
SELECT TOP 1 '0' errorCode,certNumber as certificateNumber,bankAccountNo AS accountNo,idNumber,customerId,reqDate AS requestedDate
FROM TblCustomerBankVerification c(nolock)
inner join koreanbanklist l (nolock) on l.bankcode = c.bankCode
WHERE customerId = @customerId
RETURN
END
ELSE IF UPPER(@action) = 'SUCCESS'
BEGIN
EXEC proc_errorHandler '1', 'Bank detail Already Verified!!!!', NULL
END
ELSE
SELECT '1' errorCode,'Invalid Bank detail found check detail from Menu CUSTOMER ID VERIFICATION' Msg,null id
END
END
--select * from TBLCUSTOMERMODIFYLOGS
--select bankName, bankAccountNo,* from customerMaster where customerId =3
GO