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.
761 lines
59 KiB
761 lines
59 KiB
|
|
ALTER PROCEDURE [dbo].[mobile_proc_customerMaster]
|
|
@flag VARCHAR(30)
|
|
,@userName VARCHAR(100) = NULL
|
|
,@firstName VARCHAR(50) = NULL
|
|
,@middleName VARCHAR(50) = NULL
|
|
,@lastName VARCHAR(50) = NULL
|
|
,@nickName VARCHAR(100) = NULL
|
|
,@mobileNumber VARCHAR(30) = NULL
|
|
,@email VARCHAR(100) = NULL
|
|
,@gender VARCHAR(15) = NULL
|
|
,@dateOfBirth DATETIME = NULL
|
|
,@nativeCountry VARCHAR(100) = NULL
|
|
,@country VARCHAR(100) = NULL
|
|
,@address VARCHAR(150) = NULL
|
|
,@city VARCHAR(50) = NULL
|
|
,@province VARCHAR(50) = NULL
|
|
,@occupation VARCHAR(100) = NULL
|
|
,@primaryBankName VARCHAR(200) = NULL
|
|
,@primaryAccountNumber VARCHAR(100) = NULL
|
|
,@verificationIdType VARCHAR(50) = NULL
|
|
,@verificationIdNumber VARCHAR(50) = NULL
|
|
,@issueDate DATETIME = NULL
|
|
,@expiryDate DATETIME = NULL
|
|
,@regIdcardFrontUrl VARCHAR(200) = NULL
|
|
,@regIdcardBackUrl VARCHAR(200) = NULL
|
|
,@passbookUrl VARCHAR(200) = NULL
|
|
,@passportUrl VARCHAR(200) = NULL
|
|
,@selfieUrl VARCHAR(300) = NULL
|
|
-- CDD parameters
|
|
,@cddCode VARCHAR(100) = NULL
|
|
,@sourceOfFund VARCHAR(500) = NULL
|
|
,@referralCode VARCHAR(100) = NULL
|
|
|
|
|
|
,@appVersion VARCHAR(100) = NULL
|
|
,@phoneBrand VARCHAR(100) = NULL
|
|
,@phoneOS VARCHAR(100) = NULL
|
|
,@fcmId VARCHAR(MAX) = NULL
|
|
,@osVersion VARCHAR(100) = NULL
|
|
|
|
,@fullName VARCHAR(200) = NULL
|
|
,@passportNumber VARCHAR(100) = NULL
|
|
,@anotherIDType VARCHAR(20) = NULL
|
|
,@anotherIDNumber VARCHAR(20) = NULL
|
|
,@branch VARCHAR(20) = NULL
|
|
,@type INT = NULL
|
|
|
|
|
|
|
|
AS
|
|
SET NOCOUNT ON;
|
|
SET XACT_ABORT ON;
|
|
BEGIN TRY
|
|
------------------------------------------------------------------------------------------------------------
|
|
--select column [mobile_userRegistration].isForcePassChange
|
|
------------------------------------------------------------------------------------------------------------
|
|
DECLARE @errorMsg VARCHAR(MAX),@customerId BIGINT,@yearlyLimit MONEY,@totalSend MONEY,
|
|
@totalSendText VARCHAR(200), @YearStart DATE, @YearEnd DATETIME,@cust BIGINT = NULL;
|
|
DECLARE @IsActive CHAR(1)
|
|
DECLARE @redirectTo VARCHAR(100) = ''
|
|
SET @country = '118';
|
|
|
|
SET @firstName = UPPER(@firstName)
|
|
SET @middleName = UPPER(@middleName)
|
|
SET @lastName = UPPER(@lastName)
|
|
SET @fullName = @firstName + ISNULL(' ' + @middleName, '') + ISNULL(' ' + @lastName, '')
|
|
|
|
IF @flag='i'
|
|
BEGIN
|
|
--SELECT @customerId = customerId FROM customerMasterTemp with (nolock)
|
|
--WHERE email = @username OR mobile = @username
|
|
|
|
--CHECK FOR customer IN temp table
|
|
SELECT @customerId = customerId FROM customerMasterTemp with (nolock)
|
|
WHERE username = @userName
|
|
|
|
IF @customerId IS NULL
|
|
BEGIN
|
|
IF EXISTS(SELECT TOP 1 'A' FROM customerMaster(NOLOCK) WHERE userName = @userName)
|
|
BEGIN
|
|
SELECT @errorMsg = 'It looks like you are already registered in GME system!'
|
|
EXEC proc_errorHandler 1, @errorMsg, @userName
|
|
RETURN
|
|
END
|
|
END
|
|
|
|
SELECT @email = @userName
|
|
|
|
BEGIN TRANSACTION
|
|
UPDATE dbo.customerMasterTemp SET
|
|
firstName = @fullName,
|
|
fullName = @fullName,
|
|
nickName = @nickName,
|
|
mobile = @mobileNumber,
|
|
homePhone = @verificationIdNumber,
|
|
--email=@email,
|
|
gender = CASE WHEN UPPER(@gender) = 'M' THEN '97' WHEN UPPER(@gender) = 'F' THEN '98' ELSE '99' END ,
|
|
--dob=@dateOfBirth,
|
|
nativeCountry= @nativeCountry,
|
|
country = @country,
|
|
[address] = @address,
|
|
city = @province,
|
|
state2 = @province,
|
|
occupation = @occupation,
|
|
bankName = @primaryBankName,
|
|
bankAccountNo= @primaryAccountNumber,
|
|
idNumber = @verificationIdNumber,
|
|
idType = @verificationIdType,
|
|
idIssueDate = @issueDate,
|
|
createdDate = GETDATE(),
|
|
sourceOfFund=CASE WHEN @sourceOfFund IS NOT NULL
|
|
THEN (SELECT sd.detailTitle FROM dbo.staticDataValue sd(NOLOCK) WHERE sd.valueId=@sourceOfFund)
|
|
ELSE sourceOfFund
|
|
END,
|
|
idExpiryDate= @expiryDate,
|
|
verifyDoc1 = @regIdcardFrontUrl,
|
|
verifyDoc2 = @regIdcardBackUrl,
|
|
verifyDoc3 = @passbookUrl,
|
|
verifyDoc4 = @passportUrl,
|
|
selfie = @selfieUrl,
|
|
referelCode = @referralCode
|
|
WHERE userName = @username
|
|
|
|
INSERT INTO dbo.customerMaster
|
|
(
|
|
fullName,firstName,mobile,email,gender,dob,occupation,nativeCountry,country,bankName,bankAccountNo,idType,idNumber,homePhone,idIssueDate
|
|
,idExpiryDate,sourceOfFund,verifyDoc1,verifyDoc2,verifyDoc3,SelfieDoc,referelCode,createdBy,createdDate,isActive,onlineUser,customerPassword,[address]
|
|
,city,state2,customerType,agreeYn
|
|
)
|
|
SELECT fullName,CMT.firstName,mobile,email,gender,dob,CMT.occupation,nativeCountry,country,bankName,bankAccountNo,idType,idNumber,CMT.homePhone,
|
|
CMT.idIssueDate,idExpiryDate,sourceOfFund,verifyDoc1,verifyDoc2,verifyDoc3,CMT.selfie,CMT.referelCode,CMT.createdBy,GETDATE(),'Y','Y',customerPassword,[address]
|
|
,state2,state2,4701,CMT.agreeYn
|
|
FROM dbo.CustomerMasterTemp AS CMT(NOLOCK)
|
|
WHERE CMT.customerId = @customerId
|
|
|
|
SET @cust = @@IDENTITY
|
|
UPDATE dbo.mobile_userRegistration SET customerId = @cust WHERE username = @username
|
|
|
|
DELETE FROM customerMasterTemp WHERE username = @username
|
|
|
|
COMMIT TRANSACTION
|
|
IF @@TRANCOUNT=0
|
|
BEGIN
|
|
SELECT 0 as ERRORCODE, 'KYC Submitted successfully' AS MSG, @userName AS ID,@cust AS EXTRA
|
|
--SELECT
|
|
-- errorCode='0'
|
|
-- ,userId=@userName
|
|
-- ,firstName=ISNULL(cm.firstName, '')
|
|
-- ,middleName=ISNULL(cm.middleName, '')
|
|
-- ,lastName=ISNULL(cm.lastName1,'')
|
|
-- ,fullname=ISNULL(cm.firstName, '') + ISNULL(' ' + cm.middleName, '') + ISNULL(' ' + cm.lastName1, '')
|
|
-- ,mobileNumber=ISNULL(mobile,'')
|
|
-- ,email=ISNULL(email,'')
|
|
-- ,gender=ISNULL(sv.detailTitle,'')
|
|
-- ,dateOfBirth=CONVERT(VARCHAR(10),dob,120)
|
|
-- ,nativeCountry=ISNULL(com1.countryName,'')
|
|
-- ,country=ISNULL(com.countryName,'')
|
|
-- ,address=ISNULL(address,'')
|
|
-- ,city=ISNULL(city,'')
|
|
-- ,province=ISNULL(cm.state2,'')
|
|
-- ,provinceId= cm.state2
|
|
-- ,occupation=ISNULL(sdv.detailTitle,'')
|
|
-- ,primaryBankName=ISNULL(bl.BankName,'')
|
|
-- ,primaryAccountNumber=ISNULL(cm.bankAccountNo,'')
|
|
-- ,verificationIdType=ISNULL(dv.detailTitle,'')
|
|
-- ,verificationIdNumber=ISNULL(cm.idNumber,'')
|
|
-- ,issueDate=CONVERT(VARCHAR(10),cm.idIssueDate,120)
|
|
-- ,expiryDate=CONVERT(VARCHAR(10),cm.idExpiryDate,120)
|
|
-- ,sourceOfFund=ISNULL(cm.sourceOfFund,'')
|
|
-- ,regIdcardFrontUrl=ISNULL(cm.verifyDoc1,'')
|
|
-- ,regIdcardBackUrl=ISNULL(cm.verifyDoc2,'')
|
|
-- ,passbookUrl=ISNULL(cm.verifyDoc3,'')
|
|
-- ,selfieUrl=ISNULL(cm.SelfieDoc,'')
|
|
-- ,passportUrl=''
|
|
--FROM dbo.customerMaster cm WITH(NOLOCK)
|
|
--LEFT JOIN dbo.vwBankLists bl WITH(NOLOCK)ON cm.bankName=bl.rowId
|
|
--LEFT JOIN dbo.staticDataValue sdv WITH(NOLOCK)ON cm.occupation=sdv.valueId
|
|
--LEFT JOIN dbo.staticDataValue sv WITH(NOLOCK)ON cm.gender=sv.valueId
|
|
--LEFT JOIN dbo.countryMaster com WITH(NOLOCK)ON cm.country=com.countryId
|
|
--LEFT JOIN dbo.countryMaster com1 WITH(NOLOCK)ON cm.nativeCountry=com1.countryId
|
|
--LEFT JOIN dbo.staticDataValue dv WITH(NOLOCK)ON cm.idType=dv.valueId
|
|
--WHERE customerId=@cust
|
|
RETURN
|
|
END
|
|
|
|
EXEC proc_errorHandler 1, 'Failed to Submit KYC', @userName
|
|
-- SELECT errorCode='1'
|
|
--,userId=''
|
|
--,firstName=''
|
|
--,middleName=''
|
|
--,lastName=''
|
|
--,fullname=''
|
|
--,mobileNumber=''
|
|
--,email=''
|
|
--,gender=''
|
|
--,dateOfBirth=''
|
|
--,nativeCountry=''
|
|
--,country=''
|
|
--,address=''
|
|
--,city=''
|
|
--,province=''
|
|
--,provinceId=''
|
|
--,occupation=''
|
|
--,primaryBankName=''
|
|
--,primaryAccountNumber=''
|
|
--,verificationIdType=''
|
|
--,verificationIdNumber=''
|
|
--,issueDate=''
|
|
--,expiryDate=''
|
|
--,sourceOfFund=''
|
|
--,regIdcardFrontUrl=''
|
|
--,regIdcardBackUrl=''
|
|
--,passbookUrl=''
|
|
--,passportUrl=''
|
|
--,selfieUrl=''
|
|
RETURN
|
|
|
|
END
|
|
IF @flag = 'i-V2'
|
|
BEGIN
|
|
--CHECK FOR customer IN temp table
|
|
SELECT @customerId = customerId FROM customerMasterTemp with (nolock) WHERE username = @userName
|
|
|
|
--PRINT @userName
|
|
--PRINT @customerId
|
|
IF @customerId IS NULL
|
|
BEGIN
|
|
IF EXISTS(SELECT TOP 1 'A' FROM customerMaster(NOLOCK) WHERE EMAIL = @userName)
|
|
BEGIN
|
|
SELECT @errorMsg = 'It looks like you are already registered in GME system!'
|
|
EXEC proc_errorHandler 1, @errorMsg, @userName
|
|
RETURN
|
|
END
|
|
END
|
|
|
|
|
|
BEGIN TRANSACTION
|
|
UPDATE dbo.customerMasterTemp SET
|
|
firstName = @fullName,
|
|
fullName = @fullName,
|
|
nickName = @nickName,
|
|
homePhone = @verificationIdNumber,
|
|
email = @userName,
|
|
customerEmail = @email,
|
|
gender = CASE WHEN UPPER(@gender) = 'M' THEN '97' WHEN UPPER(@gender) = 'F' THEN '98' ELSE '99' END ,
|
|
dob = @dateOfBirth,
|
|
country = @country,
|
|
[address] = @address,
|
|
city = @city,
|
|
state2 = @province,
|
|
occupation = @occupation,
|
|
bankName = @primaryBankName,
|
|
bankAccountNo= @primaryAccountNumber,
|
|
idNumber = @verificationIdNumber,
|
|
idType = @verificationIdType,
|
|
idIssueDate = @issueDate,
|
|
createdDate = GETDATE(),
|
|
sourceOfFund=CASE WHEN @sourceOfFund IS NOT NULL
|
|
THEN (SELECT TOP 1 sd.detailTitle FROM dbo.staticDataValue sd(NOLOCK) WHERE sd.valueId=@sourceOfFund)
|
|
ELSE sourceOfFund
|
|
END,
|
|
idExpiryDate= @expiryDate,
|
|
verifyDoc1 = @regIdcardFrontUrl,
|
|
verifyDoc2 = @regIdcardBackUrl,
|
|
verifyDoc3 = @passbookUrl,
|
|
verifyDoc4 = @passportUrl,
|
|
selfie = @selfieUrl,
|
|
referelCode = @referralCode
|
|
WHERE customerId = @customerId
|
|
|
|
INSERT INTO dbo.customerMaster
|
|
(
|
|
fullName,firstName,mobile,email,customerEmail,gender,dob,occupation,nativeCountry,country,bankName,bankAccountNo,idType,idNumber,homePhone,idIssueDate
|
|
,idExpiryDate,sourceOfFund,verifyDoc1,verifyDoc2,verifyDoc3,SelfieDoc,referelCode,createdBy,createdDate,isActive,onlineUser,customerPassword,[address]
|
|
,city,state2,customerType
|
|
)
|
|
SELECT fullName,CMT.firstName,mobile,email,customerEmail,gender,dob,CMT.occupation,nativeCountry,country,bankName,bankAccountNo,idType,idNumber,CMT.homePhone,
|
|
CMT.idIssueDate,idExpiryDate,sourceOfFund,verifyDoc1,verifyDoc2,verifyDoc3,CMT.selfie,CMT.referelCode,CMT.createdBy,GETDATE(),'Y','Y',customerPassword,[address]
|
|
,city,state2,4701
|
|
FROM dbo.CustomerMasterTemp AS CMT(NOLOCK)
|
|
WHERE CMT.customerId = @customerId
|
|
|
|
SET @cust = @@IDENTITY
|
|
UPDATE dbo.mobile_userRegistration SET customerId = @cust WHERE username = @username
|
|
|
|
DELETE FROM customerMasterTemp WHERE username = @username
|
|
|
|
COMMIT TRANSACTION
|
|
IF @@TRANCOUNT=0
|
|
BEGIN
|
|
SELECT 0 as ERRORCODE, 'KYC Submitted successfully' AS MSG, @userName AS ID,@cust AS EXTRA
|
|
RETURN
|
|
END
|
|
|
|
EXEC proc_errorHandler 1, 'Failed to Submit KYC', @userName
|
|
RETURN
|
|
|
|
END
|
|
IF @flag='u'
|
|
BEGIN
|
|
IF (YEAR(GETDATE()) - YEAR(@dateOfBirth) < 16)
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Customer Not Eligible', @userName
|
|
RETURN
|
|
END
|
|
|
|
----OR cm.mobile=@userName not aplicable
|
|
IF NOT EXISTS(SELECT TOP 1 'x' FROM dbo.customerMaster(NOLOCK) cm WHERE cm.email = @userName )
|
|
BEGIN
|
|
SELECT @errorMsg = 'Customer with userId ' + @userName + ' does not exists.'
|
|
EXEC proc_errorHandler 1, @errorMsg, @userName
|
|
RETURN
|
|
END
|
|
|
|
SELECT
|
|
@customerId=cm.customerId
|
|
FROM dbo.customerMaster(NOLOCK) cm
|
|
WHERE cm.email = @userName
|
|
--OR cm.mobile=@userName
|
|
|
|
BEGIN TRANSACTION
|
|
UPDATE dbo.customerMaster SET
|
|
firstName = ISNULL(@fullName,fullName),
|
|
fullName = ISNULL(@fullName,fullName),
|
|
----nickName=ISNULL(@nickName,nickName),
|
|
mobile = ISNULL(@mobileNumber,mobile),
|
|
email = ISNULL(@email,email),
|
|
gender = ISNULL(@gender,gender),
|
|
dob = ISNULL(@dateOfBirth,dob),
|
|
nativeCountry= ISNULL(@nativeCountry,nativeCountry),
|
|
country = ISNULL(@country,country),
|
|
[address] = ISNULL(@address,[address]),
|
|
city = ISNULL(@city,city),
|
|
state2 = CASE WHEN @province IS NOT NULL
|
|
THEN (SELECT TOP 1 cim.cityName FROM dbo.CityMaster cim(NOLOCK) WHERE cim.cityId=@province)
|
|
ELSE state2
|
|
END,
|
|
occupation = ISNULL(@occupation,occupation),
|
|
bankName = ISNULL(@primaryBankName,bankName),
|
|
bankAccountNo= ISNULL(@primaryAccountNumber,bankAccountNo),
|
|
idNumber = ISNULL(@verificationIdNumber,idNumber),
|
|
idType = ISNULL(@verificationIdType,idType),
|
|
idIssueDate = ISNULL(@issueDate,idIssueDate),
|
|
sourceOfFund= CASE WHEN @sourceOfFund IS NOT NULL
|
|
THEN (SELECT TOP 1 sd.detailTitle FROM dbo.staticDataValue sd(NOLOCK) WHERE sd.valueId=@sourceOfFund)
|
|
ELSE sourceOfFund
|
|
END,
|
|
idExpiryDate= ISNULL(@expiryDate,idExpiryDate),
|
|
verifyDoc1 = ISNULL(@regIdcardFrontUrl,verifyDoc1),
|
|
verifyDoc2 = ISNULL(@regIdcardBackUrl,verifyDoc2),
|
|
verifyDoc3 = ISNULL(@passbookUrl,verifyDoc3),
|
|
SelfieDoc = ISNULL(@selfieUrl,SelfieDoc)
|
|
FROM customermaster(NOLOCK) cust
|
|
WHERE cust.customerId=@customerId
|
|
|
|
IF @@TRANCOUNT>0
|
|
COMMIT TRANSACTION
|
|
SELECT errorCode ='0'
|
|
,userId =@userName
|
|
,firstName=ISNULL(cm.firstName, '')
|
|
,middleName=ISNULL(cm.middleName, '')
|
|
,lastName=ISNULL(cm.lastName1,'')
|
|
,fullname =ISNULL(cm.firstName, '') + ISNULL(' ' + cm.middleName, '') + ISNULL(' ' + cm.lastName1, '')
|
|
,nickName = ''
|
|
,mobileNumber=ISNULL(mobile,'')
|
|
,email=ISNULL(email,'')
|
|
,gender=ISNULL(sv.detailTitle,'')
|
|
,dateOfBirth=CONVERT(VARCHAR(10),dob,120)
|
|
,nativeCountry=ISNULL(com1.countryName,'')
|
|
,country=ISNULL(com.countryName,'')
|
|
,[address]=ISNULL([address],'')
|
|
,city=ISNULL(city,'')
|
|
,province=ISNULL(cm.state2,'')
|
|
,provinceId=ISNULL(cim.cityId,'')
|
|
,occupation=ISNULL(sdv.detailTitle,'')
|
|
,primaryBankName='Fast Remit Bank'--bl.BankName
|
|
,primaryAccountNumber=ISNULL(cm.bankAccountNo,'')
|
|
,verificationIdType=ISNULL(dv.detailTitle,'')
|
|
,verificationIdNumber=ISNULL(cm.idNumber,'')
|
|
,issueDate=CONVERT(VARCHAR(10),cm.idIssueDate,120)
|
|
,expiryDate=CONVERT(VARCHAR(10),cm.idExpiryDate,120)
|
|
,sourceOfFund=ISNULL(cm.sourceOfFund,'')
|
|
,regIdcardFrontUrl=ISNULL(cm.verifyDoc1,'')
|
|
,regIdcardBackUrl=ISNULL(cm.verifyDoc2,'')
|
|
,passbookUrl=ISNULL(cm.verifyDoc3,'')
|
|
,passportUrl=''
|
|
,selfieUrl=ISNULL(cm.SelfieDoc,'')
|
|
FROM (SELECT TOP 1 * FROM dbo.customerMaster(NOLOCK) cm WHERE cm.customerId = @customerId)cm
|
|
LEFT JOIN dbo.vwBankLists(NOLOCK) bl ON cm.bankName=bl.bankCode
|
|
LEFT JOIN mobile_userRegistration(NOLOCK) v ON cm.customerId=v.customerId
|
|
LEFT JOIN dbo.staticDataValue(NOLOCK) sdv ON cm.occupation=sdv.valueId
|
|
LEFT JOIN dbo.staticDataValue(NOLOCK) sv ON cm.gender=sv.valueId
|
|
LEFT JOIN dbo.countryMaster(NOLOCK) com ON cm.country=com.countryId
|
|
LEFT JOIN dbo.staticDataValue(NOLOCK) dv ON cm.idType=dv.valueId
|
|
LEFT JOIN dbo.countryMaster(NOLOCK) com1 ON cm.nativeCountry=com1.countryId
|
|
LEFT JOIN dbo.CityMaster cim(NOLOCK) ON LTRIM(RTRIM(cim.cityName))=LTRIM(RTRIM(cm.state2))
|
|
--WHERE cm.customerId = @customerId
|
|
RETURN
|
|
END
|
|
|
|
IF @flag='s'
|
|
BEGIN
|
|
IF NOT EXISTS(SELECT TOP 1 'x' FROM dbo.customerMaster(NOLOCK) cm WHERE cm.email=@userName OR cm.mobile=@userName)
|
|
BEGIN
|
|
SELECT @errorMsg = 'Customer with userId ' + @userName + ' does not exists.'
|
|
EXEC proc_errorHandler 1, @errorMsg, @userName
|
|
RETURN
|
|
END
|
|
|
|
SELECT
|
|
@customerId=cm.customerId
|
|
FROM dbo.customerMaster(NOLOCK) cm
|
|
WHERE cm.email = @userName OR cm.mobile = @userName
|
|
|
|
SELECT
|
|
errorCode='0'
|
|
,userId = @userName
|
|
,firstName = ISNULL(cm.firstName, '')
|
|
,middleName = ''
|
|
,lastName = ''
|
|
,fullname = ISNULL(cm.fullName, '')
|
|
,nickName = ''
|
|
,mobileNumber= ISNULL(mobile,'')
|
|
,email = ISNULL(email,'')
|
|
,gender = ISNULL(sv.detailTitle,'')
|
|
,dateOfBirth= CONVERT(VARCHAR(10),dob,120)
|
|
,nativeCountry= ISNULL(com1.countryName,'')
|
|
,country = 'South Korea'
|
|
,address = ISNULL(address,'')
|
|
,city = ISNULL(city,'')
|
|
,province = ISNULL(cm.state2,'')
|
|
,provinceId = ISNULL(cim.cityId,'')
|
|
,occupation = ISNULL(sdv.detailTitle,'')
|
|
,primaryBankName='Fast Remit Bank'--ISNULL(bl.BankName,'')
|
|
,primaryAccountNumber=ISNULL(cm.bankAccountNo,'')
|
|
,verificationIdType=ISNULL(dv.detailTitle,'')
|
|
,verificationIdNumber=ISNULL(cm.idNumber,'')
|
|
,issueDate = CONVERT(VARCHAR(10),cm.idIssueDate,120)
|
|
,expiryDate = CONVERT(VARCHAR(10),cm.idExpiryDate,120)
|
|
,sourceOfFund= ISNULL(cm.sourceOfFund,'')
|
|
,regIdcardFrontUrl=ISNULL(cm.verifyDoc1,'')
|
|
,regIdcardBackUrl=ISNULL(cm.verifyDoc2,'')
|
|
,passbookUrl= ISNULL(cm.verifyDoc3,'')
|
|
,selfieUrl = ISNULL(cm.SelfieDoc,'')
|
|
FROM (SELECT TOP 1 * FROM dbo.customerMaster cm WITH(NOLOCK) WHERE customerId = @customerId)cm
|
|
LEFT JOIN dbo.vwBankLists bl WITH(NOLOCK) ON cm.bankName = bl.bankCode
|
|
LEFT JOIN dbo.staticDataValue sdv WITH(NOLOCK) ON cm.occupation = sdv.valueId
|
|
LEFT JOIN dbo.staticDataValue sv WITH(NOLOCK) ON cm.gender = sv.valueId
|
|
LEFT JOIN dbo.countryMaster com1 WITH(NOLOCK) ON cm.nativeCountry = com1.countryId
|
|
LEFT JOIN dbo.staticDataValue dv WITH(NOLOCK) ON cm.idType = dv.valueId
|
|
LEFT JOIN dbo.CityMaster cim(NOLOCK) ON cim.cityName = cm.state2
|
|
--WHERE customerId=@customerId
|
|
RETURN
|
|
END
|
|
|
|
IF @flag='getUser' --customer due deligience(static data values)
|
|
BEGIN
|
|
-- OR cm.mobile=@userName USE IN FUTURE
|
|
IF EXISTS(SELECT TOP 1 'x' FROM dbo.customerMaster(NOLOCK) cm WHERE cm.email=@userName)
|
|
BEGIN
|
|
|
|
--DECLARE @yearlyLimit VARCHAR(100)=''
|
|
--DECLARE @YearStart DATE, @YearEnd DATETIME
|
|
|
|
SELECT @YearStart = DATEADD(yy, DATEDIFF(yy, 0, GETDATE()), 0)
|
|
,@YearEnd = DATEADD(yy, DATEDIFF(yy, 0, GETDATE()) + 1, -1)+' 23:59:59'
|
|
|
|
--deCLARE @CUSTID BIGINT
|
|
SELECT @customerId = customerId FROM dbo.customerMaster(NOLOCK) cm WHERE cm.email = @userName
|
|
--OR cm.mobile=@userName USE IN FUTURE
|
|
|
|
SELECT @totalSend = SUM(ROUND(R.tAmt/(R.sCurrCostRate+R.sCurrHoMargin), 2, 0))
|
|
FROM REMITTRAN R(NOLOCK)
|
|
INNER JOIN TRANSENDERS T(NOLOCK) ON T.TRANID = R.ID
|
|
AND T.CUSTOMERID = @customerId
|
|
AND R.TRANSTATUS <> 'Cancel'
|
|
AND R.approvedDate BETWEEN @YearStart AND @YearEnd
|
|
|
|
SELECT @yearlyLimit = amount
|
|
FROM dbo.csDetail CD(NOLOCK)
|
|
INNER JOIN csMaster CM(NOLOCK) ON CM.csMasterId = CD.csMasterId
|
|
AND CD.period = 365
|
|
AND CD.condition = 4600
|
|
AND ISNULL(CD.isActive, 'Y') = 'Y'
|
|
AND ISNULL(CD.isDeleted, 'N') = 'N'
|
|
AND ISNULL(CD.isEnable, 'Y') = 'Y'
|
|
AND ISNULL(CM.isActive, 'Y') = 'Y'
|
|
AND ISNULL(CM.isDeleted, 'N') = 'N'
|
|
|
|
SET @yearlyLimit = (@yearlyLimit - ISNULL(@totalSend, 0))
|
|
|
|
SELECT
|
|
@customerId=cm.customerId
|
|
FROM dbo.customerMaster(NOLOCK) cm WHERE cm.email = @userName
|
|
--OR cm.mobile=@userName ## not applicable
|
|
|
|
SELECT
|
|
errorCode = '0'
|
|
,userId = @userName
|
|
,firstName = ISNULL(cm.firstName, '')
|
|
,middleName = ISNULL(cm.middleName, '')
|
|
,lastName = ISNULL(cm.lastName1,'')
|
|
,nickName = ''
|
|
,email = ISNULL(cm.email,'')
|
|
,mobileNumber = ISNULL(cm.mobile,'')
|
|
,verificationCode= ISNULL(ur.OTP,'')
|
|
,VerificationCodeExpiryDate=''
|
|
,createdDate = CONVERT(VARCHAR(10),ur.createdDate,120)
|
|
,userRoles = ''
|
|
,rewardPoint = CAST(ISNULL(cm.bonusPoint,0) AS DECIMAL)
|
|
,isActive = CASE WHEN ISNULL(cm.isActive,'Y')='Y' THEN 1 ELSE 0 END
|
|
,hasKYC = CASE WHEN ISNULL(cm.createdDate,'')<>'' THEN 1 ELSE 0 END
|
|
,isVerified = CASE WHEN cm.approvedDate IS NOT NULL THEN 1 ELSE 0 END
|
|
,forgetCode = ISNULL(ur.passRecoveryCode,'')
|
|
,ForgetCodeExpiryDate=''
|
|
,primaryBankName= 'Fast Remit Bank'--CASE WHEN cm.customerType='11048' THEN N'WSB (050)' ELSE 'Kwangju Bank (034)' END
|
|
,walletNumber = ISNULL(cm.walletAccountNo,'')
|
|
,availableBalance= @yearlyLimit -- CAST([dbo].FNAGetCustomerACBal(@userName) AS DECIMAL) --change this with yearly limit after fix in mobile
|
|
,dpUrl = ''
|
|
,ISNULL(ur.cmRegistrationId,'') cmRegistrationId
|
|
,yearlyLimit = FORMAT(@yearlyLimit,'0,00') --@yearlyLimit
|
|
FROM (SELECT TOP 1 * FROM dbo.customerMaster cm WITH(NOLOCK) WHERE customerId = @customerId)cm
|
|
LEFT JOIN dbo.mobile_userRegistration(NOLOCK) ur ON ur.customerId=cm.customerId
|
|
LEFT JOIN dbo.vwBankLists bl WITH(NOLOCK) ON bl.bankCode=cm.bankName
|
|
--WHERE cm.customerId=@customerId
|
|
RETURN
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
SELECT @errorMsg = 'Customer with userId ' + @userName + ' does not exists.'
|
|
EXEC proc_errorHandler 1, @errorMsg, @userName
|
|
RETURN
|
|
END
|
|
END
|
|
|
|
IF @flag='refresh-customer-info'
|
|
BEGIN
|
|
DECLARE @isExistingCustomer BIT, @hasUpdatedDefaultCredentials INT,@createdFrom CHAR(1), @isForcedPwdChange INT , @isForcePassChangeMob INT
|
|
|
|
SELECT @yearlyLimit = amount
|
|
FROM dbo.csDetail CD(NOLOCK)
|
|
INNER JOIN csMaster CM(NOLOCK) ON CM.csMasterId = CD.csMasterId
|
|
AND CD.period = 365
|
|
AND CD.condition = 4600
|
|
AND ISNULL(CD.isActive, 'Y') = 'Y'
|
|
AND ISNULL(CD.isDeleted, 'N') = 'N'
|
|
AND ISNULL(CD.isEnable, 'Y') = 'Y'
|
|
AND ISNULL(CM.isActive, 'Y') = 'Y'
|
|
AND ISNULL(CM.isDeleted, 'N') = 'N'
|
|
|
|
IF EXISTS(SELECT TOP 1 'A' from CustomerMasterTemp(nolock) where username = @userName AND isActive = 'Y')
|
|
BEGIN
|
|
SET @isExistingCustomer = 1
|
|
IF EXISTS (SELECT * FROM CustomerMasterTemp CT(NOLOCK) WHERE username = @userName AND OldCustomerId IS NULL)
|
|
BEGIN
|
|
SET @isExistingCustomer = 0
|
|
END
|
|
|
|
UPDATE mobile_userRegistration SET
|
|
appVersion = @appVersion
|
|
,phoneBrand = @phoneBrand
|
|
,phoneOS = @phoneOS
|
|
,deviceId = ISNULL(@fcmId, deviceId)
|
|
,osVersion = @osVersion
|
|
WHERE customerId=(SELECT TOP 1 customerId from CustomerMasterTemp(nolock) where username = @userName AND isActive = 'Y')
|
|
SELECT
|
|
'0' ErrorCode
|
|
,@userName userId
|
|
,cust.customerId SenderId
|
|
,@userName firstName
|
|
--,ISNULL(cust.middleName,'') middleName
|
|
--,ISNULL(cust.lastName1,'') lastName
|
|
--,ISNULL(cust.nickName,'') nickName
|
|
,ISNULL(cust.email,'') email
|
|
,ISNULL(cust.customerEmail,'') AS customerEmail
|
|
,ISNULL(cust.mobile,'') phone
|
|
,CONVERT(VARCHAR(10),cust.dob,120) dob
|
|
--,cust.idType AS idType
|
|
--,cust.idNumber AS idNumber
|
|
,'' AS countryCode
|
|
,CAST(ISNULL(cust.bonusPoint,0) AS DECIMAL) rewardPoint
|
|
,CASE WHEN ISNULL(cust.isActive,'N')='Y' THEN 1 ELSE 0 END active
|
|
,kyc = 0
|
|
,verified = 0
|
|
,'' walletNumber
|
|
,0 availableBalance
|
|
,'Fast Remit Bank' primaryBankName
|
|
,ISNULL(dpUrl,'') dpUrl
|
|
,ISNULL(ur.cmRegistrationId,'') cmRegistrationId
|
|
,ISNULL(co.countryName,'') country
|
|
,'' city
|
|
,'' [address]
|
|
,'' [province]
|
|
,'' [provinceId]
|
|
,CASE WHEN cust.referelCode IS NOT NULL THEN 1 ELSE 0 END isReferred
|
|
,'' sourceId
|
|
,yearlyLimit=FORMAT(@yearlyLimit,'0,00')
|
|
,PennyTestStatus = '2'
|
|
,'' accessTokenRegTime ,'' accessTokenExpTime
|
|
,redirectTo = @redirectTo
|
|
,cust.membershipId AS referelCode
|
|
--,cust.referelCode
|
|
,agreeYn = ISNULL(cust.agreeYn, 0)
|
|
,isExistingCustomer = @isExistingCustomer
|
|
,hasUpdatedDefaultCredentials = 2
|
|
,hasVerifiedOTP = CASE WHEN ISNULL(isEmailVerified, 0) = 0 THEN 'False' ELSE 'True' END
|
|
,IsBiometricLogin = 0
|
|
,BiometricLoginType = ''
|
|
-- ,CASE ur.isForcePassChange WHEN '1' THEN 'Y' ELSE 'N' END IsForcedPwdChange
|
|
FROM (SELECT TOP 1 * FROM CustomerMasterTemp(NOLOCK) cust WHERE cust.username = @userName)cust
|
|
LEFT JOIN mobile_userRegistration(NOLOCK) ur ON cust.customerId=ur.customerId
|
|
LEFT JOIN countryMaster co(NOLOCK) ON cust.country=co.countryId
|
|
LEFT JOIN dbo.CityMaster cm(NOLOCK) ON cust.state2 = cm.cityName
|
|
--WHERE cust.email = @userName
|
|
|
|
RETURN
|
|
END
|
|
SELECT
|
|
@customerId=cm.customerId,@IsActive = isActive, @createdFrom = ISNULL(createdFrom, 'O'), @isForcedPwdChange = ISNULL(isForcedPwdChange, 2),
|
|
@isExistingCustomer = ISNULL(isexistingcustomer, 0), @isForcePassChangeMob= ISNULL( ur.isForcePassChange,0)
|
|
FROM dbo.customerMaster(NOLOCK) cm
|
|
INNER JOIN mobile_userRegistration(NOLOCK) ur on cm.customerId=ur.customerId
|
|
WHERE cm.username = @userName
|
|
|
|
IF @isForcedPwdChange <> 0
|
|
BEGIN
|
|
IF @createdFrom = 'C'
|
|
SET @hasUpdatedDefaultCredentials = 2
|
|
|
|
IF @createdFrom = 'M' AND @isExistingCustomer = 1
|
|
SET @hasUpdatedDefaultCredentials = 0
|
|
IF @createdFrom = 'M' AND @isExistingCustomer = 0
|
|
SET @hasUpdatedDefaultCredentials = 1 --change Pin
|
|
IF @createdFrom = 'A'
|
|
SET @hasUpdatedDefaultCredentials = 2 --change pin & password
|
|
IF @createdFrom = 'O'
|
|
SET @hasUpdatedDefaultCredentials = 0
|
|
END
|
|
ELSE
|
|
SET @hasUpdatedDefaultCredentials = 0
|
|
|
|
IF(@hasUpdatedDefaultCredentials=0 and @isForcePassChangeMob=1)
|
|
BEGIN
|
|
SET @hasUpdatedDefaultCredentials = 3 -- change password only
|
|
END
|
|
--OR cm.mobile=@userName future use
|
|
|
|
DECLARE @hasPennyTestDone VARCHAR(1)='0'
|
|
SELECT @hasPennyTestDone = '1'
|
|
|
|
IF @customerId IS NULL
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Unauthorized access found, Please contact GME support', @userName
|
|
RETURN
|
|
END
|
|
|
|
IF EXISTS(SELECT TOP 1 'x' FROM dbo.customerMaster(NOLOCK) WHERE approvedDate < '2018-12-19' AND customerId = @customerId)
|
|
BEGIN
|
|
SET @hasPennyTestDone = '2'
|
|
END
|
|
|
|
SET @hasPennyTestDone = '2'
|
|
IF ISNULL(@IsActive,'N') <> 'Y'
|
|
BEGIN
|
|
EXEC proc_errorHandler 1, 'Your account has blocked, Please contact GME support', @userName
|
|
RETURN
|
|
END
|
|
SELECT @YearStart = DATEADD(yy, DATEDIFF(yy, 0, GETDATE()), 0)
|
|
,@YearEnd = DATEADD(yy, DATEDIFF(yy, 0, GETDATE()) + 1, -1)+' 23:59:59'
|
|
|
|
SELECT @totalSend = SUM(R.tAmt)--SUM(ROUND(R.tAmt/(R.sCurrCostRate+R.sCurrHoMargin), 2, 0))
|
|
FROM REMITTRAN R(NOLOCK)
|
|
INNER JOIN TRANSENDERS T(NOLOCK) ON T.TRANID = R.ID
|
|
AND T.CUSTOMERID = @customerId
|
|
AND R.TRANSTATUS <> 'Cancel'
|
|
AND R.approvedDate BETWEEN @YearStart AND @YearEnd
|
|
|
|
SET @yearlyLimit = (@yearlyLimit - ISNULL(@totalSend, 0))
|
|
|
|
|
|
UPDATE mobile_userRegistration SET
|
|
appVersion = @appVersion
|
|
,phoneBrand = @phoneBrand
|
|
,phoneOS = @phoneOS
|
|
,deviceId = ISNULL(@fcmId, deviceId)
|
|
,osVersion = @osVersion
|
|
WHERE customerId=@customerId
|
|
|
|
SELECT
|
|
'0' ErrorCode
|
|
,@userName userId
|
|
,cust.customerId SenderId
|
|
,ISNULL(cust.firstName,'') firstName
|
|
--,ISNULL(cust.middleName,'') middleName
|
|
--,ISNULL(cust.lastName1,'') lastName
|
|
--,'' nickName
|
|
,ISNULL(cust.email,'') email
|
|
,ISNULL(cust.customerEmail,'') AS customerEmail
|
|
,ISNULL(cust.mobile,'') phone
|
|
,CONVERT(VARCHAR(10),cust.dob,120) dob
|
|
--,cust.idType AS idType
|
|
--,cust.idNumber AS idNumber
|
|
|
|
,cm1.countryCode AS countryCode
|
|
,CAST(ISNULL(cust.bonusPoint,0) AS DECIMAL) rewardPoint
|
|
,CASE WHEN ISNULL(cust.isActive,'N')='Y' THEN 1 ELSE 0 END active
|
|
,ISNULL(HasDeclare, 0) kyc
|
|
,CASE WHEN mobileVerifiedDate IS NOT NULL THEN 1 ELSE 0 END verified
|
|
--,CASE WHEN ISNULL(isExistingCustomer, 1) = 0 THEN CASE WHEN cust.ApprovedDate IS NOT NULL THEN 1 ELSE 0 END
|
|
-- ELSE CASE WHEN mobileVerifiedDate IS NOT NULL THEN 1 ELSE 0 END END verified
|
|
,ISNULL(cust.walletAccountNo,'') walletNumber
|
|
,FORMAT([dbo].FNAGetCustomerACBal(cust.username) ,'0,00') availableBalance
|
|
--,ISNULL(bl.BankName,'') primaryBankName
|
|
,cust.username
|
|
,primaryBankName='Fast Remit Bank'--CASE WHEN cust.customerType='11048' THEN N'저축은행 (050)' ELSE 'Kwangju Bank (034)' END
|
|
,'' dpUrl
|
|
,ISNULL(ur.cmRegistrationId,'') cmRegistrationId
|
|
,ISNULL(co.countryName,'') country
|
|
,ISNULL(cust.city,'') city
|
|
,ISNULL(cust.[address],'') [address]
|
|
,ISNULL(cust.state2,'') [province]
|
|
,ISNULL(cm.cityId,'') [provinceId]
|
|
,CASE WHEN cust.referelCode IS NOT NULL THEN 1 ELSE 0 END isReferred
|
|
,ISNULL(sdv.valueId,'') sourceId
|
|
,yearlyLimit= FORMAT(@yearlyLimit,'0,00')
|
|
,PennyTestStatus = @hasPennyTestDone-----0 not started, 1 requested , 2 completed
|
|
,kcm.accessTokenRegTime
|
|
,kcm.accessTokenExpTime
|
|
,redirectTo = @redirectTo
|
|
,cust.membershipId as referelCode
|
|
,agreeYn = ISNULL(cust.agreeYn, 0)
|
|
,isExistingCustomer = ISNULL(isExistingCustomer, 1)
|
|
,hasUpdatedDefaultCredentials = ISNULL(@hasUpdatedDefaultCredentials, 0)
|
|
,hasVerifiedOTP = ISNULL(isEmailVerified, 0)
|
|
,IsBiometricLogin = ISNULL(IsBiometricLogin, 0)
|
|
,BiometricLoginType = ISNULL(BiometricLoginType, '')
|
|
--,CASE ur.isForcePassChange WHEN '1' THEN 'Y' ELSE 'N' END IsForcedPwdChange
|
|
FROM (SELECT TOP 1 * FROM customerMaster(NOLOCK) cust WHERE cust.customerId = @customerId)cust
|
|
LEFT JOIN dbo.countryMaster AS CM1 ON cm1.countryId=cust.nativeCountry
|
|
LEFT JOIN mobile_userRegistration(NOLOCK) ur ON cust.customerId=ur.customerId
|
|
LEFT JOIN dbo.vwBankLists (NOLOCK) bl ON cust.bankName=bl.rowId
|
|
LEFT JOIN countryMaster co(NOLOCK) ON cust.country=co.countryId
|
|
LEFT JOIN staticDatavalue sdv(NOLOCK) ON cust.sourceOfFund = sdv.detailTitle AND sdv.typeID = '3900' AND ISNULL(sdv.IS_DELETE,'N')='N'
|
|
LEFT JOIN dbo.CityMaster cm(NOLOCK) ON cust.state2 = cm.cityName
|
|
LEFT JOIN dbo.KFTC_CUSTOMER_MASTER(NOLOCK) kcm ON cust.customerId = kcm.customerId
|
|
--WHERE cust.customerId = @customerId AND ISNULL(sdv.IS_DELETE,'N')='N'
|
|
RETURN
|
|
END
|
|
|
|
END TRY
|
|
BEGIN CATCH
|
|
IF @@TRANCOUNT > 0
|
|
ROLLBACK TRANSACTION
|
|
DECLARE @errorMessage VARCHAR(MAX)
|
|
SET @errorMessage = ERROR_MESSAGE()
|
|
SELECT '1' ErrorCode, @errorMessage Msg ,NULL ID
|
|
END CATCH
|
|
|
|
|
|
|