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.
314 lines
15 KiB
314 lines
15 KiB
USE [FastMoneyPro_Remit]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[proc_customerBankModify] Script Date: 9/11/2023 7:00:17 PM ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
|
|
|
|
|
|
ALTER 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
|
|
,@rowId INT = NULL
|
|
,@action VARCHAR(50) = ''
|
|
)
|
|
AS
|
|
-------------------------------------------------------
|
|
---Modifed June 15, 2021 -> check active condition for TBL_JAPAN_ADDRESS_DETAIL
|
|
--EXEC [dbo].[proc_customerBankModify] @flag = N'customerZip',@user = N'ajey',@searchKey = N'0391531'
|
|
--#134 -> Allow edit option of address in Town Area
|
|
-- Remove duplicates on TOWN AREA LIST
|
|
--Revised logic for town are
|
|
----------------------------------------------------------
|
|
SET NOCOUNT ON;
|
|
SET XACT_ABORT ON;
|
|
|
|
BEGIN
|
|
IF @flag = 'customerZip'
|
|
BEGIN
|
|
DECLARE @TOWN_AREA NVARCHAR(200)
|
|
|
|
|
|
|
|
CREATE TABLE #ADDRESS (
|
|
errorCode INT
|
|
,msg VARCHAR(50)
|
|
,ROW_ID BIGINT
|
|
,STATE_ID INT
|
|
,ZIP_CODE VARCHAR(20)
|
|
,CITY_NAME NVARCHAR(150)
|
|
,STREET_NAME NVARCHAR(150)
|
|
,ORDER_BY TINYINT
|
|
,SELECTED CHAR(1)
|
|
,DEFAULT_ CHAR(1)
|
|
)
|
|
|
|
INSERT INTO #ADDRESS
|
|
SELECT errorCode = 0
|
|
,msg = 'Success'
|
|
,customerId ROW_ID
|
|
,state STATE_ID
|
|
,zipCode ZIP_CODE
|
|
,CITY_NAME = city
|
|
,STREET_NAME =address
|
|
,ORDER_BY = 1
|
|
,SELECTED = 'N'
|
|
,DEFAULT_='Y'
|
|
FROM customerMaster D(NOLOCK)
|
|
WHERE customerId = @customerId
|
|
|
|
SELECT *
|
|
FROM #ADDRESS
|
|
WHERE DEFAULT_ IN ('Y')
|
|
ORDER BY ORDER_BY
|
|
RETURN;
|
|
END
|
|
IF @flag = 'customerZipAdmin'
|
|
BEGIN
|
|
DECLARE @TOWN_AREA_A NVARCHAR(200)
|
|
|
|
IF @searchKey IS NULL
|
|
SELECT @searchKey = ZIP_CODE
|
|
FROM TBL_JAPAN_ADDRESS_DETAIL(NOLOCK)
|
|
WHERE ROW_ID = @rowId
|
|
AND IS_ACTIVE = 1;
|
|
|
|
IF NOT EXISTS (
|
|
SELECT 1
|
|
FROM TBL_JAPAN_ADDRESS_DETAIL D(NOLOCK)
|
|
WHERE ZIP_CODE = @searchKey
|
|
AND IS_ACTIVE = 1
|
|
)
|
|
BEGIN
|
|
EXEC proc_errorHandler '1'
|
|
,'Invalid Attempt!'
|
|
,NULL
|
|
|
|
RETURN
|
|
END
|
|
|
|
CREATE TABLE #ADDRESS_1 (
|
|
errorCode INT
|
|
,msg VARCHAR(50)
|
|
,ROW_ID BIGINT
|
|
,STATE_ID INT
|
|
,ZIP_CODE VARCHAR(20)
|
|
,CITY_NAME NVARCHAR(150)
|
|
,STREET_NAME NVARCHAR(150)
|
|
,ORDER_BY TINYINT
|
|
,SELECTED CHAR(1)
|
|
,DEFAULT_ CHAR(1)
|
|
)
|
|
|
|
INSERT INTO #ADDRESS_1
|
|
SELECT errorCode = 0
|
|
,msg = 'Success'
|
|
,ROW_ID
|
|
,STATE_ID
|
|
,ZIP_CODE
|
|
,CITY_NAME = CITY_NAME + ISNULL(' - ' + CITY_JAPANESE, '')
|
|
,STREET_NAME = STREET_NAME + ISNULL(' - ' + STREET_JAPANESE, '')
|
|
,ORDER_BY = 1
|
|
,SELECTED = 'Y'
|
|
,DEFAULT_='Y'
|
|
FROM TBL_JAPAN_ADDRESS_DETAIL D(NOLOCK)
|
|
WHERE ZIP_CODE = @searchKey
|
|
AND IS_ACTIVE = 1
|
|
|
|
IF ISNULL(@customerId, '') <> '' AND @action = 'LOAD'
|
|
BEGIN
|
|
SELECT @TOWN_AREA_A = ISNULL(streetUnicode,'') --1265
|
|
FROM customerMaster(NOLOCK)
|
|
WHERE customerId = @customerId
|
|
IF @TOWN_AREA_A IS NULL
|
|
BEGIN
|
|
SELECT @TOWN_AREA_A = STREET_NAME + ISNULL(' - ' + STREET_JAPANESE, '')
|
|
FROM TBL_JAPAN_ADDRESS_DETAIL
|
|
WHERE ZIP_CODE = @searchKey
|
|
END
|
|
--SELECT @TOWN_AREA_A;
|
|
IF EXISTS (
|
|
SELECT *
|
|
FROM #ADDRESS_1
|
|
WHERE STREET_NAME = @TOWN_AREA_A
|
|
)
|
|
BEGIN
|
|
UPDATE #ADDRESS_1
|
|
SET ORDER_BY = 0
|
|
,SELECTED = 'Y'
|
|
,DEFAULT_= 'U'
|
|
WHERE STREET_NAME = @TOWN_AREA_A
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
IF @TOWN_AREA_A IS NOT NULL
|
|
BEGIN
|
|
INSERT INTO #ADDRESS_1
|
|
SELECT TOP 1 errorCode
|
|
,msg
|
|
,ROW_ID
|
|
,STATE_ID
|
|
,ZIP_CODE
|
|
,CITY_NAME
|
|
,STREET_NAME = @TOWN_AREA_A
|
|
,ORDER_BY = 0
|
|
,SELECTED = 'Y'
|
|
,DEFAULT_='N'
|
|
FROM #ADDRESS_1 A
|
|
END
|
|
END
|
|
SELECT *
|
|
FROM #ADDRESS_1
|
|
WHERE DEFAULT_ IN ('U','N')
|
|
ORDER BY ORDER_BY
|
|
END
|
|
|
|
IF ISNULL(@customerId, '') <> '' AND @action = 'EDIT'
|
|
BEGIN
|
|
SELECT *
|
|
FROM #ADDRESS_1
|
|
WHERE DEFAULT_ IN ('Y')
|
|
ORDER BY ORDER_BY
|
|
END
|
|
|
|
IF ISNULL(@customerId, '') = ''
|
|
BEGIN
|
|
SELECT *
|
|
FROM #ADDRESS_1
|
|
WHERE DEFAULT_ IN ('Y')
|
|
ORDER BY ORDER_BY
|
|
END
|
|
END
|
|
ELSE 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
|
|
END
|
|
--select * from TBLCUSTOMERMODIFYLOGS
|
|
--select bankName, bankAccountNo,* from customerMaster where customerId =3
|