USE [FastMoneyPro_Remit] GO /****** Object: StoredProcedure [dbo].[proc_online_approve_Customer] Script Date: 4/5/2024 9:54:01 AM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROC [dbo].[proc_online_approve_Customer] @flag VARCHAR(50) = NULL ,@user VARCHAR(30) = NULL ,@customerId VARCHAR(30) = NULL ,@searchCriteria VARCHAR(30) = NULL ,@searchValue VARCHAR(50) = NULL ,@fromDate DATETIME = NULL ,@toDate DATETIME = NULL ,@cusType VARCHAR(50) = NULL ,@accountNumber VARCHAR(100) = NULL ,@agentId BIGINT = NULL ,@CustomerBankName NVARCHAR(100) = NULL ,@obpId VARCHAR(50) = 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 ,@password VARCHAR(50) = NULL ,@action CHAR(20) = NULL ,@referral VARCHAR(50) = NULL ,@verifyType VARCHAR(50) = NULL ,@customerPassword NVARCHAR(50) = NULL ,@HasDeclare VARCHAR(50) = NULL ,@agreeYn VARCHAR(50) = NULL ,@isForcedPwdChange VARCHAR(50) = NULL ,@isEmailVerified VARCHAR(50) = NULL ,@createdFrom1 VARCHAR(50) = NULL ,@mobileUser VARCHAR(50) = NULL ,@referelCode VARCHAR(50) = NULL ,@customerStatus1 VARCHAR(50) = NULL ,@mobileverifiedby VARCHAR(50) = NULL ,@mobileverifieddate VARCHAR(50) = NULL ,@mobileapprovedby VARCHAR(50) = NULL ,@mobileapproveddate VARCHAR(50) = NULL ,@mobileverificationType VARCHAR(50) = NULL ,@modifiedDate VARCHAR(50) = NULL ,@modifiedBy VARCHAR(100) = NULL ,@newData VARCHAR(300) = NULL ,@oldData VARCHAR(300) = NULL ,@isValidatedCustomer VARCHAR(5) = NULL ,@isAgreeDate DATETIME = NULL ,@verifyRemarks NVARCHAR(800) = NULL ,@ofacRemarks NVARCHAR(800) = NULL ,@status VARCHAR(500) = NULL AS SET NOCOUNT ON; SET XACT_ABORT ON; -------------------------------------------------------------------------------------- -- #494 -> Added others value in approve customer screen by Leeza -- #101 -> Mobile changes - @serviceUsedFor -- #438 - added createdFrom -- #660 -> Add referral code in customer detail screen for activating mobile --Bug #681 ->Non KYC customer are appearing approve customer list -- #675 Divide the approval customer into 2 step process --#698 Create new screen to activate mobile service -- cm.agreeYn,0)= 1 for verify Customer -- Support #741 assign approve date during active mobile -- #779 added log for activate mobile @flag = 'mobile-activate-log' -- set MobileOTP expiry in case of activate mobile -- Delete mobile-user-registration if exist -- #958 - Add Asc/Desc sorting in Verify/Approve Customer From Mobile -- #1008 - Allow saving filled customer data in verify Customer from mobile -- #1030 - @flag='create-mobile-login', update isAgreeDate -- #1094 - verify pending remarks , @flag = 'approve-pending-mobile' , 'verify-mobile-user' -- #1104 - @flag = 'approve-pending' , add ofacRemarks, changes in @flag = 'approve-pending-mobile' and @flag = 'verify-mobile-user' -- added logs for delete -- #1195 changes in @flag = 'searchCriteria', @flag = 'unApprovedCustomerFromMobile', @flag = 'al' to add lawson card no in search field -- #11751 - add registered Type -- selected the customers created from agent portal as well in @flag = 'vl' -- change in @flag = 'searchCriteria' to add filterlist -------------------------------------------------------------------------------------- BEGIN TRY DECLARE @table VARCHAR(MAX) ,@select_field_list VARCHAR(MAX) ,@extra_field_list VARCHAR(MAX) ,@sql_filter VARCHAR(MAX) DECLARE @email VARCHAR(200) ,@username VARCHAR(50) ,@pwd VARCHAR(50) ,@channel VARCHAR(20) = NULL DECLARE @customerStatus NVARCHAR(100) ,@createdFrom VARCHAR(5) , @bonusPoint MONEY , @rewardValue MONEY , @sourceCustomerId INT SET @toDate = @toDate + ' 23:59:59' IF @flag = 'vl' --verified list/approve pending list BEGIN SET @sortBy = 'createdDate' SET @sortOrder = 'desc' SET @table = '( SELECT SN=ROW_NUMBER() over(ORDER BY cm.customerId asc) ,customerId=cm.customerId ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype=case when cm.idtype = ''11402'' then cm.otherIdNumber else sdv.detailTitle end ,idNumber= cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,createdBy=cm.createdBy ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,bankName=bl.bankName ,case when ISNULL(cm.createdFrom, ''C'') = ''C'' THEN ''COUNTER'' WHEN cm.createdFrom = ''M'' THEN ''MOBILE'' ELSE cm.createdFrom END createdFrom ,Introducer='' FROM customerMaster cm(NOLOCK) LEFT JOIN APPLICATIONUSERS AU(NOLOCK) ON AU.USERNAME = CM.CREATEDBY LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId WHERE cm.approvedDate IS NULL --AND ISNULL(CM.CREATEDFROM, ''C'') = ''C'' AND CM.CREATEDFROM IN (''C'',''O'') --AND ISNULL(CM.isVerifiedByCustomer, 0) = 1 and cm.isActive = ''Y''' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.createdDate BETWEEN ''' + CAST(@fromDate AS VARCHAR) + ''' AND ''' + CAST(@toDate AS VARCHAR) + '''' 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+'''' 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 = 'membershipId' SET @sql_Filter = @sql_Filter + ' AND membershipId = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' END SET @select_field_list = ' SN,customerId,email,fullName,dob,address,nativeCountry,idtype,idNumber ,createdDate,createdBy,verifiedBy,branchName,verifiedDate,bankAccountNo,bankName,createdFrom,Introducer ' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber RETURN END ELSE IF @flag = 'al' --approved list BEGIN IF @sortBy IS NULL SET @sortBy = 'customerId' IF @sortOrder IS NULL SET @sortOrder = 'ASC' SET @table = '( SELECT SN=ROW_NUMBER() over(ORDER BY cm.customerId asc) ,customerId=cm.customerId ,email=cm.email ,fullName= cm.fullName ,idtype=sdv.detailTitle ,idNumber=cm.idNumber ,mobile=cm.mobile ,bankName=bl.bankName ,cm.bankAccountNo ,CM.walletAccountNo ,cm.availableBalance ,cm.dob,cm.address ,country = ''South Korea'' ,nativeCountry = com.CountryName ,cm.createdDate ,approvedBy=cm.approvedBy ,approvedDate=CAST(cm.approvedDate AS DATE) ,case when ISNULL(cm.createdFrom, ''C'') = ''C'' THEN ''COUNTER'' WHEN cm.createdFrom = ''M'' THEN ''MOBILE'' ELSE cm.createdFrom END createdFrom ,cm.LawsonCardNo FROM customerMaster cm(NOLOCK) INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId LEFT JOIN KoreanBankList bl (NOLOCK) ON cm.bankName = bl.rowId WHERE cm.approvedDate is not null ' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.approvedDate BETWEEN ''' + CAST(CAST(@fromDate AS DATE) AS VARCHAR) + ''' AND ''' + CAST(CAST(@toDate AS DATE) AS VARCHAR) + ' 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+'''' 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 = 'mobile' SET @sql_Filter = @sql_Filter + ' AND mobile = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'membershipId' SET @sql_Filter = @sql_Filter + ' AND membershipId = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' END SET @select_field_list = ' SN,customerId,email,fullName,idtype,idNumber,mobile,bankName,bankAccountNo,walletAccountNo,availableBalance ,dob,address,country,nativeCountry,createdDate,approvedDate,approvedBy,createdFrom,LawsonCardNo' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber RETURN END ELSE IF @flag = 'p' --pending list BEGIN IF @sortBy IS NULL SET @sortBy = 'customerId' IF @sortOrder IS NULL SET @sortOrder = 'ASC' SET @table = '( SELECT SN=ROW_NUMBER() over(ORDER BY cm.customerId asc) ,customerId=cm.customerId ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,country=c.countryName ,ipAddress=isnull(cm.ipAddress,'''') ,nativeCountry=com.countryName ,idtype=sdv.detailTitle ,idNumber=cm.idNumber ,telNo=isnull(cm.telNo,'''') ,mobile=cm.mobile ,createdDate=CAST(cm.createdDate AS DATE) ,bankName=bl.bankName ,cm.bankAccountNo FROM customerMaster cm(NOLOCK) LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId LEFT JOIN countryMaster c(NOLOCK) ON cm.country=c.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId WHERE cm.verifiedDate IS NULL' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.createdDate BETWEEN ''' + CAST(@fromDate AS VARCHAR) + ''' AND ''' + CAST(@toDate AS VARCHAR) + '''' SET @table = @table + ')x' SET @sql_filter = '' IF ISNULL(@searchCriteria, '') <> '' AND ISNULL(@searchValue, '') <> '' 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 = 'membershipId' SET @sql_Filter = @sql_Filter + ' AND membershipId = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'bankAccountNo' SET @sql_Filter = @sql_Filter + ' AND bankAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' END SET @select_field_list = ' SN ,customerId ,email ,fullName ,dob ,address ,country --,ipAddress ,nativeCountry ,idtype ,idNumber --,telNo ,mobile ,createdDate ,bankName ,bankAccountNo ' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber RETURN END ELSE IF @flag = 'searchCriteria' BEGIN SELECT '' value ,'Select' [text] UNION ALL SELECT 'emailId' ,'Email ID' UNION ALL SELECT 'IdNumber' ,'ID - Number' UNION ALL SELECT 'nativeCountry' ,'Native Country' UNION ALL SELECT 'customerName' ,'Customer Name' UNION ALL SELECT 'mobile' ,'Mobile No' UNION ALL SELECT 'membershipId' ,'Membership ID' UNION ALL SELECT 'verificationCode' ,'KYC Status' UNION ALL SELECT 'idType' ,'ID Type' RETURN END ELSE IF @flag = 'ddlCustomerType' BEGIN SELECT '' value ,'Select' [text] UNION ALL SELECT 'n' ,'Newly Registered' UNION ALL SELECT 'y' ,'Existing' RETURN END ELSE 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 RETURN END ELSE IF @flag = 'create-mobile-login' BEGIN DECLARE @serviceUsedFor VARCHAR(10) ,@existingemailagent VARCHAR(50) SELECT @existingemailagent = email FROM customerMaster(NOLOCK) WHERE customerid = @customerId IF EXISTS ( SELECT * FROM customerMaster(NOLOCK) WHERE CUSTOMERID = @customerId AND APPROVEDDATE IS NULL ) BEGIN SELECT '1' ErrorCode ,'Customer is not approved yet, approve customer first!' Msg ,NULL RETURN END IF EXISTS ( SELECT * FROM customerMaster(NOLOCK) WHERE email = @existingemailagent AND mobileApprovedDate IS NOT NULL and customerid<>@customerId ) BEGIN SELECT '1' ErrorCode ,'Customer with same email already exists! Please try again with a different email.' Msg ,NULL RETURN END SELECT @email = EMAIL ,@customerId = customerId FROM CUSTOMERMASTER(NOLOCK) WHERE CUSTOMERID = @customerId AND APPROVEDDATE IS NOT NULL IF @customerId IS NULL BEGIN SELECT '1' ErrorCode ,'Customer is not approved yet, approve customer first!' Msg ,NULL RETURN END IF @email IS NULL BEGIN SELECT '1' ErrorCode ,'Email ID field is empty, please update email first!' Msg ,NULL RETURN END IF @serviceUsedFor LIKE '%M%' BEGIN SELECT '1' ErrorCode ,'Mobile user already created!' Msg ,NULL RETURN END IF EXISTS ( SELECT * FROM mobile_userRegistration WHERE username = @existingemailagent AND customerId <> @customerId ) BEGIN DELETE FROM mobile_userRegistration WHERE username = @existingemailagent END SELECT @username = username ,@serviceUsedFor = serviceUsedFor ,@mobileUser = mobileUser ,@referelCode = referelCode ,@customerStatus = customerstatus ,@isAgreeDate = isAgreeDate FROM customerMaster WHERE customerId = @customerId UPDATE dbo.customerMaster SET username = ISNULL(username, email) ,customerPassword = dbo.FNAEncryptString(@password) ,HasDeclare = 1 ,agreeYn = 1 ,isAgreeDate = GETDATE() --,isForcedPwdChange = 1 --,isEmailVerified = 0 --,createdFrom = 'C' ,mobileUser = 'Y' --,referelCode = @referral --,customerStatus = 'OTC' ,mobileverifiedby = @user ,mobileverifieddate = GETDATE() --,mobileverificationType = 'verified' ,mobileapprovedby = @user ,mobileapproveddate = GETDATE() ,mobileverificationType = 'approved' --,modifiedDate = GETDATE() --,modifiedBy = @user WHERE customerId = @customerId UPDATE TBL_MOBILE_OTP_REQUEST SET IS_SUCCESS = '0' ,IS_EXPIRED = '1' ,MODIFIED_DATE = GETDATE() WHERE REQUEST_FOR = 'REGISTER' AND user_id = @email SELECT '0' ErrorCode ,'Mobile login created successfully.' Msg ,@customerId id ,'Y' extra EXEC PROC_CUSTOMERMODIFYLOG @flag = 'mobile-activate-log' ,@user = @user ,@customerId = @customerId ,@username = @username ,@mobileUser = @mobileUser ,@referelCode = @referelCode ,@mobileverifiedby = @user ,@mobileverifieddate = @mobileverifieddate ,@mobileapprovedby = @user ,@mobileverificationType = @mobileverificationType ,@serviceUsedFor = @serviceUsedFor ,@customerStatus = @customerStatus ,@isAgreeDate = @isAgreeDate --SELECT '0' ErrorCode -- ,'Mobile login created successfully, please check mobile customer approve menu.' Msg -- ,@customerId id --,'approved' EXTRA2 RETURN END ELSE IF @flag = 'approve-pending' BEGIN DECLARE @custIdNumber VARCHAR(50) ,@WALLET_ACC_NO VARCHAR(30) ,@fullName VARCHAR(100) DECLARE @isOfac CHAR(1) DECLARE @referalid INT; SELECT @custIdNumber = idNumber ,@fullName = ISNULL(fullName, firstName),@createdFrom = createdFrom, @referelCode = referelCode FROM dbo.customerMaster(NOLOCK) WHERE customerId = @customerId SET @isOfac = CASE WHEN ISNULL(@ofacRemarks, '') = '' THEN 'N' ELSE 'Y' END IF NOT EXISTS ( SELECT * FROM CUSTOMERMASTER(NOLOCK) WHERE CUSTOMERID = @customerId AND APPROVEDDATE IS NULL ) BEGIN SELECT '1' ErrorCode ,'Customer already approved or does not exists!' Msg ,NULL RETURN END SELECT @custIdNumber = idNumber ,@fullName = ISNULL(fullName, firstName),@createdFrom = createdFrom, @referelCode = ISNULL(referralId, referelCode) FROM dbo.customerMaster(NOLOCK) WHERE customerId = @customerId IF EXISTS ( SELECT 'X' FROM dbo.customerMaster(NOLOCK) WHERE replace(idNumber, '-', '') = replace(@custIdNumber, '-', '') GROUP BY replace(idNumber, '-', '') HAVING count(1) > 1 ) BEGIN SELECT '1' ErrorCode ,'Duplicate id number found for customer' Msg ,NULL RETURN END IF EXISTS ( SELECT 'X' FROM dbo.customerMaster(NOLOCK) WHERE replace(idNumber, '-', '') = replace(@custIdNumber, '-', '') AND approvedBy IS NOT NULL ) BEGIN SELECT '1' ErrorCode ,'Customer with same id number already approved.' Msg ,NULL RETURN END EXEC PROC_CREATE_CUSTOMER_WALLET @CUSTOMER_ID = @customerId ,@USER = @USER -- DECLARE @isOfac CHAR(1) SET @isOfac = CASE WHEN ISNULL(@ofacRemarks, '') = '' THEN 'N' ELSE 'Y' END SELECT @status = ISNULL(verificationCode,'NOT_COMPLETED') FROM customerMaster WHERE customerId = @customerId print @status --return IF(@status = 'NOT_COMPLETED') BEGIN UPDATE dbo.customerMaster SET verifiedDate = CASE WHEN verifiedDate IS NULL THEN GETDATE() ELSE verifiedDate END ,mobileverifiedby = CASE WHEN @createdFrom IN ('O','M') THEN @user ELSE NULL END ,mobileverifieddate = CASE WHEN @createdFrom IN ('O','M') THEN GETDATE() ELSE NULL END ,verifiedBy = @user ,verificationCode = 'PROCESSING' WHERE customerId = @customerId SELECT '0' ErrorCode ,'Customer verification status has been updated. Proceed to approve customer!' Msg ,@customerId id RETURN END ELSE IF(@status = 'PROCESSING') BEGIN UPDATE dbo.customerMaster SET approvedBy = @user ,approvedDate = GETDATE() ,username = email ,mobileApprovedDate = CASE WHEN @createdFrom IN ('O','M') THEN GETDATE() ELSE NULL END ,mobileApprovedBy = CASE WHEN @createdFrom IN ('O','M') THEN @user ELSE NULL END ,ofacRemarks = @ofacRemarks ,isOfac = @isOfac ,lawsonCardNo = CASE WHEN ISNULL(lawsonCardNo,'')='' THEN 'KYC_NOW' ELSE lawsonCardNo END ,isVerifiedByCustomer=1 ,verificationCode = 'COMPLETED' WHERE customerId = @customerId IF NOT EXISTS ( SELECT 1 FROM dbo.TBL_CUSTOMER_KYC WHERE customerId = @customerId AND kycStatus = '11044' AND isDeleted <> '1' ) BEGIN INSERT INTO TBL_CUSTOMER_KYC ( customerId ,kycmethod ,kycStatus ,remarks ,createdBy ,createdDate ,trackingNo ,KYC_DATE ) VALUES ( @customerId ,CASE WHEN @createdFrom = 'C' THEN '11048' --counter visit WHEN @createdFrom = 'M' THEN '11051' --mobile app WHEN @createdFrom = 'O' THEN '11444' --web online ELSE '' END ,'11044' ,'KYC has been completed' ,@user ,GETDATE() ,'' ,GETDATE() ); END IF(@referelCode IS NOT NULL) BEGIN DECLARE @referalid INT; IF (LEFT(@referelCode, 3) IN ('MOB', 'ADM', 'CRP', 'ONL')) BEGIN SELECT @referalid=customerId FROM customerMaster WHERE membershipId = @referelCode; IF NOT EXISTS(select 'X' FROM Customer_Promotion where sourceCustomerid= @referalid and destinationcustomerid=@customerId AND CodeType='REGISTRATION') BEGIN EXEC proc_InsertRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @referalid END END ELSE BEGIN --print 'ref' --print @referelCode --print 'sada' --return DECLARE @refRowId BIGINT SELECT @refRowId = ROW_ID FROM REFERRAL_AGENT_WISE WHERE REFERRAL_CODE = @referelCode IF NOT EXISTS(SELECT 'X' FROM REFERRAL_INCENTIVE_TRANSACTION_WISE WHERE CUSTOMER_ID = @customerId) BEGIN EXEC proc_InsertReferralRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @referelCode END EXEC proc_InsertRewardPoints @Flag = 'REGISTER', @CustomerId = @refRowId, @ReferralId = @customerId END END --IF(@referelCode IS NOT NULL) -- BEGIN -- DECLARE @referalid INT; -- SELECT @referalid=customerId FROM customerMaster WHERE membershipId = @referelCode; -- IF NOT EXISTS(select 'X' FROM Customer_Promotion where sourceCustomerid= @referalid and destinationcustomerid=@customerId -- AND CodeType='REGISTRATION') -- BEGIN -- EXEC proc_InsertRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @referalid -- END -- END END ELSE IF(@status = 'COMPLETED' AND @createdFrom='C') BEGIN PRINT @createdFrom UPDATE dbo.customerMaster SET approvedBy = @user ,approvedDate = GETDATE() ,username = email ,ofacRemarks = @ofacRemarks ,isOfac = @isOfac ,lawsonCardNo = CASE WHEN ISNULL(lawsonCardNo,'')='' THEN 'KYC_NOW' ELSE lawsonCardNo END ,isVerifiedByCustomer=1 WHERE customerId = @customerId END SELECT '0' ErrorCode ,'Customer approved successfully.' Msg ,@customerId id SELECT username = ISNULL(cm.userName, '') ,[password] = dbo.FNADecryptString(cm.customerPassword) ,[channel] = 'registration' ,[account] = ISNULL(cm.membershipId, '') ,fullName ,CustomerBankName ,cm.idType ,cm.createdFrom ,cm.ofacRemarks ,REPLACE(cm.idNumber, ' ', '') AS [idNumber] ,CONVERT(VARCHAR, cm.dob, 111) AS [dob] ,printLetter = CASE WHEN ISNULL(serviceUsedFor, 'C') LIKE '%M%' THEN 'Y' ELSE 'N' END ,email FROM dbo.customerMaster cm(NOLOCK) WHERE cm.customerId = @customerId RETURN END ELSE IF @flag = 'verify-mobile-user' BEGIN IF NOT EXISTS ( SELECT * FROM CUSTOMERMASTER(NOLOCK) WHERE CUSTOMERID = @customerId AND mobileapproveddate IS NULL ) BEGIN SELECT '1' ErrorCode ,'Customer already approved or does not exists!' Msg ,NULL RETURN END SELECT @customerStatus = customerStatus ,@createdFrom = createdFrom FROM customerMaster WHERE customerId = @customerId IF @verifyType = 'verify' BEGIN IF @isValidatedCustomer = 'Y' AND @verifyRemarks IS NULL BEGIN UPDATE CUSTOMERMASTER SET mobileVerifiedby = @user ,mobileVerifiedDate = Getdate() ,mobileVerificationType = 'verified' WHERE customerId = @customerId END SELECT @newData = CONCAT ( ISNULL(@user, '') ,'|' ,ISNULL(CAST(Getdate() AS VARCHAR), '') ,'|' ,'Verified' ,'|' ,ISNULL(@verifyType, '') ) --EXEC proc_applicationLogs @flag = 'i' -- ,@logType = 'verify-mobile-user' -- ,@tableName ='CustomerMaster' -- ,@dataId = @customerId -- ,@oldData = -- ,@newData = @newData -- ,@module = '22' -- ,@user = @user INSERT INTO applicationLogs ( logType ,tableName ,dataId ,oldData ,newData ,module ,createdBy ,createdDate ) VALUES ( 'verify-mobile-user-existing' ,'CustomerMaster' ,@customerId ,'verify-existing' ,@newData ,'22' ,@user ,GETDATE() ) SELECT '0' ErrorCode -- ,'Customer Verified Successfully.' Msg ,CASE WHEN @isValidatedCustomer = 'Y' AND @verifyRemarks IS NULL THEN 'Y' WHEN @isValidatedCustomer = 'Y' AND @verifyRemarks IS NOT NULL THEN 'R' ELSE 'N' END Msg ,@customerId id ,'Y' extra ,'verified' EXTRA2 END IF @verifyType = 'approve' SET @isOfac = CASE WHEN ISNULL(@ofacRemarks, '') = '' THEN 'N' ELSE 'Y' END BEGIN UPDATE CUSTOMERMASTER SET mobileApprovedBy = @user ,mobileApprovedDate = Getdate() ,mobileVerificationType = 'approved' ,serviceUsedFor = 'CM' --,HasDeclare = 1 --,agreeYn = 1 -- ,isForcedPwdChange = 1 --,isEmailVerified = 0 ,createdFrom = 'C' ,mobileUser = 'Y' ,ofacRemarks = @ofacRemarks ,isOfac = @isOfac --,referelCode = ISNULL(@referral,referelCode) --,customerStatus = 'OTC' -- ,customerPassword= dbo.FNAEncryptString(@password) WHERE customerId = @customerId SELECT @newData = CONCAT ( ISNULL(@user, '') ,'|' ,ISNULL(CAST(Getdate() AS VARCHAR), '') ,'|' ,'approved|CM' ,'|' ,ISNULL(@verifyType, '') ) INSERT INTO applicationLogs ( logType ,tableName ,dataId ,oldData ,newData ,module ,createdBy ,createdDate ) VALUES ( 'approve-mobile-user-existing' ,'CustomerMaster' ,@customerId ,'approve-existing' ,@newData ,'23' ,@user ,GETDATE() ) SELECT '0' ErrorCode ,'Customer approved successfully.' Msg ,@customerId id ,CASE WHEN @customerStatus = 'OTC' THEN 'N' WHEN @createdFrom = 'M' THEN 'N' ELSE 'Y' END extra ,'approved' EXTRA2 END SELECT username = ISNULL(cm.userName, '') ,[password] = dbo.FNADecryptString(cm.customerPassword) ,[channel] = 'registration' ,[account] = ISNULL(cm.membershipId, '') ,fullName ,CustomerBankName ,cm.idType ,cm.ofacRemarks ,REPLACE(cm.idNumber, ' ', '') AS [idNumber] ,CONVERT(VARCHAR, cm.dob, 111) AS [dob] FROM dbo.customerMaster cm(NOLOCK) WHERE cm.customerId = @customerId RETURN END ELSE IF @flag = 'approve-pending-mobile' BEGIN DECLARE @isExistingCustomer BIT ,@existingemail VARCHAR(50) DECLARE @customerStatusmobile NVARCHAR(100) ,@createdFromMobile VARCHAR(5) ,@trustDocId UNIQUEIDENTIFIER = NULL ,@fcmid VARCHAR(300) ,@deviceType VARCHAR(100) --SELECT @customerStatusmobile = customerStatus --FROM customerMaster --WHERE customerId = @customerId --SELECT @createdFromMobile = createdFrom --FROM customerMaster --WHERE customerId = @customerId SELECT @custIdNumber = idNumber ,@fullName = ISNULL(fullName, firstName) ,@isExistingCustomer = ISNULL(isExistingCustomer, 0) ,@existingemail = email ,@customerStatusmobile = customerStatus ,@createdFromMobile = createdFrom ,@trustDocId=TrustDocId ,@referelCode=ISNULL(referralId,referelCode) FROM dbo.customerMaster(NOLOCK) WHERE customerId = @customerId IF ISNULL(@isExistingCustomer, 0) = 1 BEGIN IF NOT EXISTS ( SELECT * FROM CUSTOMERMASTER(NOLOCK) WHERE CUSTOMERID = @customerId AND mobileapprovedDate IS NULL ) BEGIN SELECT '1' ErrorCode ,'Customer already approved or does not exists!' Msg ,NULL RETURN END IF EXISTS ( SELECT * FROM CUSTOMERMASTER(NOLOCK) WHERE email = @existingemail AND mobileApprovedDate IS NOT NULL ) BEGIN SELECT '1' ErrorCode ,'Customer with same email already exists! Please try again with a different email.' Msg ,NULL RETURN END IF @verifyType = 'verify' BEGIN IF @isValidatedCustomer = 'Y' AND @verifyRemarks IS NULL BEGIN UPDATE CUSTOMERMASTER SET mobileVerifiedby = @user ,mobileVerifiedDate = Getdate() ,mobileVerificationType = 'verified' WHERE customerId = @customerId END PRINT 'A'; SELECT @newData = CONCAT ( ISNULL(@user, '') ,'|' ,ISNULL(CAST(Getdate() AS VARCHAR), '') ,'|' ,'verified' ,'|' ,ISNULL(@verifyType, '') ) INSERT INTO applicationLogs ( logType ,tableName ,dataId ,oldData ,newData ,module ,createdBy ,createdDate ) VALUES ( 'approve-mobile-user-verify' ,'CustomerMaster' ,@customerId ,'verify-new-user' ,@newData ,'24' ,@user ,GETDATE() ) SELECT '0' ErrorCode --,'Customer verified successfully.' Msg ,CASE WHEN @isValidatedCustomer = 'Y' AND @verifyRemarks IS NULL THEN 'Y' WHEN @isValidatedCustomer = 'Y' AND @verifyRemarks IS NOT NULL THEN 'R' ELSE 'N' END Msg ,@customerId id ,'Y' extra ,'verified' EXTRA2 END IF @verifyType = 'approve' BEGIN SET @isOfac = CASE WHEN ISNULL(@ofacRemarks, '') = '' THEN 'N' ELSE 'Y' END UPDATE CUSTOMERMASTER SET mobileApprovedBy = @user ,mobileApprovedDate = Getdate() ,mobileVerificationType = 'approved' ,serviceUsedFor = 'CM' ,referelCode = ISNULL(@referelCode, referelCode) ,HasDeclare = 1 ,agreeYn = 1 ,username = ISNULL(username, email) ,ofacRemarks = @ofacRemarks ,isOfac = @isOfac WHERE customerId = @customerId IF @trustDocId IS NOT NULL BEGIN UPDATE trustDocCustomer SET verifiedDate=GETDATE() , verified=1 WHERE id=@trustDocId and customerId= @customerId; END SELECT @newData = CONCAT ( ISNULL(@user, '') ,'|' ,ISNULL(CAST(Getdate() AS VARCHAR), '') ,'|' ,'approved|CM' ,'|' ,ISNULL(@verifyType, '') ) INSERT INTO applicationLogs ( logType ,tableName ,dataId ,oldData ,newData ,module ,createdBy ,createdDate ) VALUES ( 'approve-mobile-user' ,'CustomerMaster' ,@customerId ,'approve-new-user' ,@newData ,'25' ,@user ,GETDATE() ) IF(@referelCode IS NOT NULL) BEGIN DECLARE @custId INT; IF (LEFT(@referelCode, 3) IN ('MOB', 'ADM', 'CRP', 'ONL')) BEGIN SELECT @custId=customerId FROM customerMaster WHERE membershipId = @referelCode; IF NOT EXISTS(select 'X' FROM Customer_Promotion where sourceCustomerid= @custId and destinationcustomerid=@customerId AND CodeType='REGISTRATION') BEGIN EXEC proc_InsertRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @custId END END ELSE BEGIN SELECT @refRowId = ROW_ID FROM REFERRAL_AGENT_WISE WHERE REFERRAL_CODE = @referelCode IF NOT EXISTS(SELECT 'X' FROM REFERRAL_INCENTIVE_TRANSACTION_WISE WHERE CUSTOMER_ID = @customerId) BEGIN EXEC proc_InsertReferralRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @referelCode END EXEC proc_InsertRewardPoints @Flag = 'REGISTER', @CustomerId = @refRowId, @ReferralId = @customerId END END SELECT '0' ErrorCode ,'Customer approved successfully.' Msg ,@customerId id ,CASE WHEN @customerStatusmobile = 'OTC' THEN 'N' WHEN @createdFromMobile = 'M' THEN 'N' ELSE 'Y' END extra ,'approved' EXTRA2 END SELECT username = ISNULL(cm.userName, '') ,[password] = dbo.FNADecryptString(cm.customerPassword) ,[channel] = 'registration' ,[account] = ISNULL(cm.membershipId, '') ,fullName ,CustomerBankName ,cm.idType ,cm.ofacRemarks ,REPLACE(cm.idNumber, ' ', '') AS [idNumber] ,CONVERT(VARCHAR, cm.dob, 111) AS [dob] FROM dbo.customerMaster cm(NOLOCK) WHERE cm.customerId = @customerId RETURN END IF NOT EXISTS ( SELECT * FROM CUSTOMERMASTER(NOLOCK) WHERE CUSTOMERID = @customerId AND mobileapprovedDate IS NULL ) BEGIN SELECT '1' ErrorCode ,'Customer already approved or does not exists!' Msg ,NULL RETURN END IF EXISTS ( SELECT 'X' FROM dbo.customerMaster(NOLOCK) WHERE replace(idNumber, '-', '') = replace(@custIdNumber, '-', '') GROUP BY replace(idNumber, '-', '') HAVING count(1) > 1 ) BEGIN SELECT '1' ErrorCode ,'Duplicate id number found for customer' Msg ,NULL RETURN END IF EXISTS ( SELECT 'X' FROM dbo.customerMaster(NOLOCK) WHERE replace(idNumber, '-', '') = replace(@custIdNumber, '-', '') AND mobileapprovedDate IS NOT NULL AND ISNULL(@isExistingCustomer, 1) = 0 ) BEGIN SELECT '1' ErrorCode ,'Customer with same id number already approved.' Msg ,NULL RETURN END EXEC PROC_CREATE_CUSTOMER_WALLET @CUSTOMER_ID = @customerId ,@USER = @USER IF @verifyType = 'verify' BEGIN IF @isValidatedCustomer = 'Y' AND (@verifyRemarks IS NULL OR @verifyRemarks='') BEGIN UPDATE CUSTOMERMASTER SET mobileVerifiedby = @user ,mobileVerifiedDate = Getdate() ,mobileVerificationType = 'verified' --,serviceUsedFor = 'CM' WHERE customerId = @customerId END INSERT INTO applicationLogs ( logType ,tableName ,dataId ,oldData ,newData ,module ,createdBy ,createdDate ) VALUES ( 'approve-mobile-user-verify' ,'CustomerMaster' ,@customerId ,'verify-new-user' ,@verifyRemarks ,'24' ,@user ,GETDATE() ) SELECT '0' ErrorCode --,'Customer verified successfully.' Msg ,CASE WHEN @isValidatedCustomer = 'Y' AND @verifyRemarks IS NULL THEN 'Y' WHEN @isValidatedCustomer = 'Y' AND @verifyRemarks IS NOT NULL THEN 'R' ELSE 'N' END Msg ,@customerId id ,'Y' extra ,'verified' EXTRA2 END IF @verifyType = 'approve' BEGIN SET @isOfac = CASE WHEN ISNULL(@ofacRemarks, '') = '' THEN 'N' ELSE 'Y' END UPDATE CUSTOMERMASTER SET mobileApprovedBy = @user ,mobileApprovedDate = Getdate() ,mobileVerificationType = 'approved' ,serviceUsedFor = 'CM' ,approvedBy = @user ,approvedDate = GETDATE() ,mobileUser = 'Y' ,ofacRemarks = @ofacRemarks ,isOfac = @isOfac ,verificationCode = 'COMPLETED' WHERE customerId = @customerId IF(@referelCode IS NOT NULL) BEGIN IF (LEFT(@referelCode, 3) IN ('MOB', 'ADM', 'CRP', 'ONL')) BEGIN SELECT @custId=customerId FROM customerMaster WHERE membershipId = @referelCode; IF NOT EXISTS(select 'X' FROM Customer_Promotion where sourceCustomerid= @custId and destinationcustomerid=@customerId AND CodeType='REGISTRATION') BEGIN EXEC proc_InsertRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @custId END END ELSE BEGIN SELECT @refRowId = ROW_ID FROM REFERRAL_AGENT_WISE WHERE REFERRAL_CODE = @referelCode IF NOT EXISTS(SELECT 'X' FROM REFERRAL_INCENTIVE_TRANSACTION_WISE WHERE CUSTOMER_ID = @customerId) BEGIN EXEC proc_InsertReferralRewardPoints @Flag = 'REGISTER', @CustomerId = @customerId, @ReferralId = @referelCode END EXEC proc_InsertRewardPoints @Flag = 'REGISTER', @CustomerId = @refRowId, @ReferralId = @customerId END END IF @trustDocId IS NOT NULL BEGIN UPDATE trustDocCustomer SET verifiedDate=GETDATE() , verified=1 WHERE id=@trustDocId and customerId= @customerId; --DECLARE @body varchar(150), @pinNo INT= DBO.FNAGetRandomTransactionPinNo(6); -- update customerMaster set txnPin = @pinNo where customerId = @customerId and RegistrationType='EKYC'; --SET @body='Your Transaction PIN is '+ CAST( @pinNo AS varchar) +', please click notification at the top of dashboard to change it.'; -- INSERT INTO pushNotificationHistroy(customerId,body,title,createDate,imageURL,sentId,Type,isReservation,isRead,isSend,category) -- SELECT @customerid,@body,'Txn Pin',getdate(),'',@customerId,0,0,0,0,'INFO' END SELECT @status = verificationCode FROM customerMaster WHERE customerId = @customerId print @status --return IF(@status = 'NOT_COMPLETED') BEGIN UPDATE dbo.customerMaster SET verifiedDate = GETDATE() ,mobileverifiedby = CASE WHEN @createdFrom IN ('O','M') THEN @user ELSE NULL END ,mobileverifieddate = CASE WHEN @createdFrom IN ('O','M') THEN GETDATE() ELSE NULL END ,verifiedBy = @user ,verificationCode = 'PROCESSING' WHERE customerId = @customerId SELECT '0' ErrorCode ,'Customer status has been updated. Proceed to approve customer!' Msg ,@customerId id RETURN END SELECT @fcmid = deviceId, @deviceType = DeviceType FROM mobile_userRegistration WHERE customerId = @customerId SELECT '0' ErrorCode ,'Customer approved successfully.' Msg ,@customerId id ,@fcmid extra ,@deviceType Extra2 ,'approved' Extra3 END SELECT username = ISNULL(cm.userName, '') ,[password] = dbo.FNADecryptString(cm.customerPassword) ,[channel] = 'registration' ,[account] = ISNULL(cm.membershipId, '') ,fullName ,CustomerBankName ,cm.idType ,REPLACE(cm.idNumber, ' ', '') AS [idNumber] ,CONVERT(VARCHAR, cm.dob, 111) AS [dob] FROM dbo.customerMaster cm(NOLOCK) WHERE cm.customerId = @customerId --For mobile broadcast notification --EXEC ProcBroadCastMobile @Flag = 'customer-approve' -- ,@RowId = @customerId -- ,@ControlNo = @customerId -- ,@CustomerId = @customerId RETURN END ELSE IF @flag = 'update-obpId' BEGIN BEGIN TRAN UPDATE dbo.customerMaster SET obpId = @obpId ,approvedDate = GETDATE() ,approvedBy = @user ,customerStatus = 'V' ,verifiedBy = CASE WHEN verifiedBy IS NULL THEN @user ELSE verifiedBy END ,verifiedDate = CASE WHEN verifiedDate IS NULL THEN GETDATE() ELSE verifiedDate END WHERE customerId = @customerId DECLARE @Mobile VARCHAR(20) SELECT @virtualAccountNo = walletAccountNo ,@CustomerBankName = firstName + '- Principle' ,@Mobile = mobile FROM customerMaster(NOLOCK) WHERE customerId = @customerId ----#### SEND NOTIFICATION TO CUSTOMER DECLARE @SMSBody VARCHAR(90) = 'Dear ' + LEFT(@CustomerBankName, 14) + ' You are successfully registered with GME.Thank you for choosing GME.' EXEC FastMoneyPro_Remit.dbo.proc_CallToSendSMS @FLAG = 'I' ,@SMSBody = @SMSBody ,@MobileNo = @Mobile IF NOT EXISTS ( SELECT 'A' FROM FastMoneyPro_Account.dbo.ac_master(NOLOCK) WHERE acct_num = @virtualAccountNo ) BEGIN DECLARE @GL INT = 79 INSERT INTO FastMoneyPro_Account.dbo.ac_master ( acct_num ,acct_name ,gl_code ,branch_id ,acct_ownership ,acct_rpt_code ,acct_opn_date ,clr_bal_amt ,system_reserved_amt ,lien_amt ,utilised_amt ,available_amt ,created_date ,created_by ,company_id ) SELECT @virtualAccountNo ,@CustomerBankName ,@GL ,@customerId ,'c' ,'CP' ,getdate() ,0 ,0 ,0 ,0 ,0 ,getdate() ,@user ,1 END COMMIT TRAN SELECT '0' ErrorCode ,'Customer Partern service account registered successfully.' Msg ,@customerId id END ELSE IF @flag = 'checkVirtualNo' BEGIN IF NOT EXISTS ( SELECT 'X' FROM dbo.customerMaster WHERE walletAccountNo = @virtualAccountNo ) SELECT '1' ErrorCode ,'Invalid Virtual AccountNo' Msg ,NULL id RETURN; END ELSE IF @flag = 'checkPrimaryAccountNo' BEGIN IF NOT EXISTS ( SELECT 'X' FROM dbo.customerMaster WHERE bankAccountNo = @primaryAccountNo ) SELECT '1' ErrorCode ,'Invalid Primary AccountNo' Msg ,NULL id END ELSE IF @flag = 'AuditList' --AUDITED DOC LIST BEGIN SET @sortBy = 'createdDate' SET @sortOrder = 'desc' SET @table = '( SELECT SN=ROW_NUMBER() over(ORDER BY cm.customerId asc) ,customerId=cm.customerId ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype=sdv.detailTitle ,idNumber=cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,bankName=bl.bankName ,cm.AuditBy,cm.AuditDate FROM customerMaster cm(NOLOCK) LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId WHERE cm.verifiedDate IS NOT NULL AND cm.AuditDate IS NOT NULL' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.createdDate BETWEEN ''' + CAST(@fromDate AS VARCHAR) + ''' AND ''' + CAST(@toDate AS VARCHAR) + '''' 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+'''' 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 = 'walletAccountNo' SET @sql_Filter = @sql_Filter + ' AND walletAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'bankAccountNo' SET @sql_Filter = @sql_Filter + ' AND bankAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' END SET @select_field_list = ' SN,customerId,email,fullName,dob,address,nativeCountry,idtype,idNumber ,createdDate,verifiedBy,branchName,verifiedDate,bankAccountNo,bankName,AuditBy,AuditDate ' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber RETURN END ELSE IF @flag = 's-customereditedata' BEGIN IF @sortBy IS NULL SET @sortBy = 'createdDate' IF @sortOrder IS NULL SET @sortOrder = 'DESC' SET @table = '( SELECT fullName ,customerId ,membershipId ,mobile ,city ,rowId ,createdDate ,hasChanged = CASE WHEN approvedBy IS NULL THEN ''Y'' ELSE ''N'' END ,modifiedBy = CASE WHEN approvedBy IS NULL THEN createdBy ELSE createdBy END from customerMasterEditedDataMod )x' SET @sql_filter = '' SET @select_field_list = 'fullName,customerId,membershipId,mobile,city,rowId,createdDate,hasChanged,modifiedBy' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber END ELSE IF @flag = 's-customereditedata-new' BEGIN IF @sortBy IS NULL SET @sortBy = 'createdDate' IF @sortOrder IS NULL SET @sortOrder = 'DESC' SET @table = '( SELECT cm.fullName ,cm.customerId ,cm.membershipId ,cm.mobile ,cm.city ,cmMode.rowId ,cm.createdDate ,hasChanged = CASE WHEN cmMode.approvedBy IS NULL THEN ''Y'' ELSE ''N'' END ,modifiedBy = CASE WHEN cmMode.approvedBy IS NULL THEN cmMode.createdBy ELSE cmMode.createdBy END ,case when ISNULL(cm.createdFrom, ''C'') = ''C'' THEN ''COUNTER'' WHEN cm.createdFrom = ''M'' THEN ''MOBILE'' ELSE cm.createdFrom END createdFrom from customerMasterEditedDataMod cmMode (nolock) INNER JOIN CUSTOMERMASTER CM (NOLOCK) ON CM.CUSTOMERID = cmMode.customerId )x' SET @sql_filter = '' SET @select_field_list = 'fullName,customerId,membershipId,mobile,city,rowId,createdDate,hasChanged,modifiedBy' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber END ELSE IF @flag = 'approve' BEGIN DECLARE @firstName VARCHAR(30) = NULL ,@middleName VARCHAR(30) = NULL ,@lastName1 VARCHAR(100) = NULL ,@onlineUser VARCHAR(50) = NULL ,@customerType VARCHAR(30) = NULL ,@country VARCHAR(30) = NULL ,@zipCode VARCHAR(30) = NULL ,@state VARCHAR(30) = NULL ,@street VARCHAR(80) = NULL ,@custCity VARCHAR(100) = NULL ,@cityUnicode NVARCHAR(100) = NULL ,@streetUnicode NVARCHAR(100) = NULL ,@custGender VARCHAR(30) = NULL ,@custNativecountry VARCHAR(30) = NULL ,@custDOB VARCHAR(30) = NULL ,@custEmail VARCHAR(50) = NULL ,@custTelNo VARCHAR(30) = NULL ,@custMobile VARCHAR(30) = NULL ,@dob DATETIME = NULL ,@visaStatus INT = NULL ,@employeeBusinessType INT = NULL ,@nameOfEmployeer VARCHAR(80) = NULL ,@SSNNO VARCHAR(20) = NULL ,@occupation VARCHAR(30) = NULL ,@sourceOfFound VARCHAR(100) = NULL ,@monthlyIncome VARCHAR(50) = NULL ,@customerIdType VARCHAR(30) = NULL ,@customerIdNo VARCHAR(50) = NULL ,@custIdissueDate VARCHAR(30) = NULL ,@custIdValidDate VARCHAR(30) = NULL ,@remittanceAllowed BIT = NULL ,@remarks VARCHAR(1000) = NULL ,@companyName VARCHAR(100) = NULL ,@registerationNo VARCHAR(30) = NULL ,@organizationType INT = NULL ,@dateofIncorporation DATETIME = NULL ,@natureOfCompany INT = NULL ,@nameOfAuthorizedPerson VARCHAR(80) = NULL ,@position INT = NULL SELECT @customerId = customerId ,@customerType = customerType ,@fullName = fullName ,@firstName = firstName ,@middleName = middleName ,@lastName1 = lastName1 ,@country = country ,@zipCode = zipCode ,@state = STATE ,@street = street ,@custCity = city ,@cityUnicode = cityUnicode ,@streetUnicode = streetUnicode ,@custGender = gender ,@custNativecountry = nativeCountry ,@custDOB = CONVERT(VARCHAR, dob, 111) ,@custEmail = email ,@custTelNo = telNo ,@custMobile = mobile ,@visaStatus = visaStatus ,@employeeBusinessType = employeeBusinessType ,@nameOfEmployeer = nameOfEmployeer ,@SSNNO = SSNNO ,@occupation = occupation ,@sourceOfFound = sourceOfFund ,@monthlyIncome = monthlyIncome ,@customerIdType = idType ,@customerIdNo = idNumber ,@custIdissueDate = CONVERT(VARCHAR, idIssueDate, 111) ,@custIdValidDate = CONVERT(VARCHAR, idExpiryDate, 111) ,@remittanceAllowed = remittanceAllowed ,@onlineUser = onlineUser ,@remarks = remarks ,@companyName = companyName ,@registerationNo = registerationNo ,@organizationType = organizationType ,@dateofIncorporation = CONVERT(VARCHAR, dateofIncorporation, 111) ,@natureOfCompany = natureOfCompany ,@nameOfAuthorizedPerson = nameOfAuthorizedPerson ,@position = position FROM dbo.customerMasterEditedDataMod WHERE customerId = @customerId --LOG FOR CUSTOMER UPDATE --SET @fullName=ISNULL(@firstName, '') + ISNULL(' ' -- + @firstName, -- '') + ISNULL(' ' -- + @lastName1, ''); SET @onlineUser = CASE WHEN @onlineUser = 'Y' THEN 'True' ELSE 'False' END EXEC PROC_CUSTOMERMODIFYLOG @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 ,@remarks = @remarks , --used for customer type organisation @companyName = @companyName ,@registerationNo = @registerationNo ,@organizationType = @organizationType ,@dateofIncorporation = @dateofIncorporation ,@natureOfCompany = @natureOfCompany ,@nameOfAuthorizedPerson = @nameOfAuthorizedPerson ,@position = @position UPDATE cm SET cm.firstName = cmm.firstName ,cm.middleName = cmm.middleName ,cm.lastName1 = cmm.lastName1 ,cm.country = cmm.country ,cm.STATE = cmm.STATE ,cm.zipCode = cmm.zipCode ,cm.city = cmm.city ,cm.street = cmm.street ,cm.fullName = ISNULL(cmm.firstName, '') + ISNULL(' ' + cmm.middleName, '') + ISNULL(' ' + cmm.lastName1, '') ,cm.email = cmm.email ,cm.cityUnicode = cmm.cityUnicode ,cm.streetUnicode = cmm.streetUnicode ,cm.homePhone = cmm.homePhone ,cm.mobile = cmm.mobile ,cm.nativeCountry = cmm.nativeCountry ,cm.dob = cmm.dob ,cm.nameOfEmployeer = cmm.nameOfEmployeer ,cm.SSNNO = cmm.SSNNO ,cm.occupation = cmm.occupation ,cm.idExpiryDate = cmm.idExpiryDate ,cm.idType = cmm.idType ,cm.idNumber = cmm.idNumber ,cm.telNo = cmm.telNo ,cm.gender = cmm.gender ,cm.idIssueDate = cmm.idIssueDate ,cm.onlineUser = cmm.onlineUser ,cm.sourceOfFund = cmm.sourceOfFund ,cm.visaStatus = cmm.visaStatus ,cm.employeeBusinessType = cmm.employeeBusinessType ,cm.remittanceAllowed = cmm.remittanceAllowed ,cm.remarks = cmm.remarks ,cm.organizationType = cmm.organizationType ,cm.dateofIncorporation = cmm.dateofIncorporation ,cm.natureOfCompany = cmm.natureOfCompany ,cm.nameOfAuthorizedPerson = cmm.nameOfAuthorizedPerson ,cm.monthlyIncome = cmm.monthlyIncome ,cm.registerationNo = cmm.registerationNo ,cm.modifiedBy = @user ,cm.modifiedDate = GETDATE() FROM dbo.customerMaster cm(NOLOCK) INNER JOIN dbo.customerMasterEditedDataMod cmm(NOLOCK) ON cmm.customerId = cm.customerId WHERE cm.customerId = @customerId DELETE FROM dbo.customerMasterEditedDataMod WHERE customerId = @customerId EXEC proc_errorHandler 0 ,'Customer Edited Data Approved Successfully' ,@customerId END ELSE IF @flag = 'reject' BEGIN DELETE FROM dbo.customerMasterEditedDataMod WHERE customerId = @customerId EXEC dbo.proc_errorHandler @errorCode = '0' ,-- varchar(10) @msg = 'Changes rejected successfully' ,-- varchar(max) @id = @customerid -- varchar(50) END IF @flag = 'vl-forAgent' --verified list/approve pending list BEGIN --DECLARE @agentid VARCHAR(10) --SELECT @agentid = agentid FROM applicationusers WHERE username = @user --DECLARE @branchcode VARCHAR(10) --SELECT @branchcode = branchcode FROM agentmaster WHERE agentid = @agentid SET @sortBy = 'createdDate' SET @sortOrder = 'desc' SET @table = '( SELECT customerId=cm.customerId ,CM.membershipid ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype=case when cm.idtype = ''11402'' then cm.otherIdNumber else sdv.detailTitle end ,idNumber= cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,createdBy=cm.createdBy ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,bankName=bl.bankName ,cm.agentId FROM customerMaster cm(NOLOCK) INNER JOIN APPLICATIONUSERS AU(NOLOCK) ON AU.USERNAME = CM.CREATEDBY LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId WHERE 1=1 --AND ISNULL(CM.isVerifiedByCustomer, 0) = 1 AND au.username <> ''' + @user + ''' AND cm.approvedDate IS NULL AND CM.ISACTIVE = ''Y''' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.createdDate BETWEEN ''' + CAST(@fromDate AS VARCHAR) + ''' AND ''' + CAST(@toDate AS VARCHAR) + '''' SET @table = @table + ')x' SET @sql_filter = '' --SET @sql_Filter=@sql_Filter + ' AND substring(membershipid,1,3) = '''+@branchcode+'''' SET @sql_Filter = @sql_Filter + ' AND agentId = ' + cast(@agentId AS VARCHAR) + '' 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+'''' 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 = 'walletAccountNo' SET @sql_Filter = @sql_Filter + ' AND walletAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'bankAccountNo' SET @sql_Filter = @sql_Filter + ' AND bankAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' END SET @select_field_list = ' customerId,membershipid,email,fullName,dob,address,nativeCountry,idtype,idNumber ,createdDate,createdBy,verifiedBy,branchName,verifiedDate,bankAccountNo,bankName ' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber RETURN END IF @flag = 'unVerifiedCustomerFromMobile' -- unverified list/verify pending list BEGIN IF @sortBy IS NULL SET @sortBy = 'createdDate' IF @sortOrder IS NULL SET @sortOrder = 'DESC' SET @table = '( SELECT customerId=cm.customerId ,CM.membershipid ,cm.userName ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype= case when cm.idtype=''11402'' then ISNULL(sdv.detailTitle, '''') + (''-'') + ISNULL('' '' + cm.otherIdNumber, '''') else sdv.detailTitle end ,idNumber=cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,createdBy=cm.createdBy ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,cm.agentId ,case when isnull(cm.isExistingCustomer,1) = 1 then ''Yes'' ELSE ''No'' End isExistingCustomer ,createdUserFrom = ''mobile'' ,ISNULL(verifyRemarks,'''') VerifyRemarks ,[RegistrationType] = CASE WHEN cm.RegistrationType IS NULL THEN ''MANUAL'' WHEN cm.registrationtype=''MKYC'' THEN ''MANUAL'' ELSE cm.RegistrationType END ,[TructDocState]= dbo.FNAGetTrustDocStatus(cm.trustdocid) FROM customerMaster cm(NOLOCK) LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 AND CM.ISACTIVE = ''Y'' AND USERNAME IS NOT NULL AND cm.MOBILEVERIFIEDDATE IS NULL and cm.membershipId is not null and ISNULL(cm.serviceUsedFor, ''C'') NOT LIKE ''%M%'' and ISNULL(cm.isEmailVerified, 0) = 1 and ISNULL(cm.agreeYn,0)= 1 UNION ALL SELECT customerId=cm.customerId ,CM.membershipid ,cm.userName ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype=sdv.detailTitle ,idNumber=cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,createdBy=cm.createdBy ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,cm.agentId ,case when isnull(cm.isExistingCustomer,1) = 1 then ''Yes'' ELSE ''No'' End isExistingCustomer ,createdUserFrom = ''core'' ,ISNULL(verifyRemarks,'''') VerifyRemarks ,[RegistrationType] = CASE WHEN cm.RegistrationType IS NULL THEN ''MANUAL'' WHEN cm.registrationtype=''MKYC'' THEN ''MANUAL'' ELSE cm.RegistrationType END ,[TructDocState]= dbo.FNAGetTrustDocStatus(cm.trustdocid) FROM customerMaster cm(NOLOCK) LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 AND CM.ISACTIVE = ''Y'' AND USERNAME IS NOT NULL AND cm.MOBILEVERIFIEDDATE IS NULL and cm.membershipId is not null and cm.serviceUsedFor LIKE ''%M%'' and ISNULL(cm.isEmailVerified, 0) = 0 and cm.approvedDate IS NOT NULL ' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.createdDate BETWEEN ''' + CAST(@fromDate AS VARCHAR) + ''' AND ''' + CAST(@toDate AS VARCHAR) + '''' SET @table = @table + ')x' SET @sql_filter = '' IF ISNULL(@searchCriteria, '') <> '' AND ISNULL(@searchValue, '') <> '' 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 = 'walletAccountNo' SET @sql_Filter = @sql_Filter + ' AND walletAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'bankAccountNo' SET @sql_Filter = @sql_Filter + ' AND bankAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' END SET @select_field_list = ' customerId,userName,isExistingCustomer,membershipid,email,fullName,dob,address,nativeCountry,idtype,idNumber ,createdDate,createdBy,verifiedBy,branchName,verifiedDate,bankAccountNo,createdUserFrom,VerifyRemarks,RegistrationType,TructDocState ' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber RETURN END IF @flag = 'unApprovedCustomerFromAgent' --verified list/approve pending list BEGIN SET @sortBy = 'createdDate' SET @sortOrder = 'desc' SET @table = '( SELECT customerId=cm.customerId ,CM.membershipid ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype=sdv.detailTitle ,idNumber=cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,createdBy=cm.createdBy ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,bankName=bl.bankName ,cm.agentId FROM customerMaster cm(NOLOCK) LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 LEFT JOIN vwBankLists bl (NOLOCK) ON cm.bankName = bl.rowId where cm.approvedDate IS NULL AND CM.ISACTIVE = ''Y'' AND MEMBERSHIPID LIKE ''%AGT%'' AND CREATEDFROM = ''A'' ' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.createdDate BETWEEN ''' + CAST(@fromDate AS VARCHAR) + ''' AND ''' + ISNULL(CAST(@toDate AS VARCHAR), '') + '''' 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+'''' 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 = 'walletAccountNo' SET @sql_Filter = @sql_Filter + ' AND walletAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'bankAccountNo' SET @sql_Filter = @sql_Filter + ' AND bankAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' END SET @select_field_list = ' customerId,membershipid,email,fullName,dob,address,nativeCountry,idtype,idNumber ,createdDate,createdBy,verifiedBy,branchName,verifiedDate,bankAccountNo,bankName ' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber RETURN END IF @flag = 'unApprovedCustomerFromMobile' --verified list/approve pending list BEGIN IF @sortBy IS NULL SET @sortBy = 'createdDate' IF @sortOrder IS NULL SET @sortOrder = 'DESC' SET @table = '( SELECT customerId=cm.customerId ,MEMBERSHIPID = '''' + CM.membershipId +'''' --,CM.membershipid '''' -- + CM.membershipId + '''' ,cm.userName ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype= case when cm.idtype=''11402'' then ISNULL(sdv.detailTitle, '''') + (''-'') + ISNULL('' '' + cm.otherIdNumber, '''') else sdv.detailTitle end ,idNumber=cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,createdBy=cm.createdBy ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,cm.agentId ,case when isnull(cm.isExistingCustomer,1) = 1 then ''Yes'' ELSE ''No'' End isExistingCustomer ,createdUserFrom = ''mobile'' ,LawsonCardNo = cm.LawsonCardNo ,[RegistrationType] = CASE WHEN cm.LawsonCardNo IS NULL THEN '''' ELSE cm.LawsonCardNo END ,ISNULL(verificationCode,''NOT_COMPLETED'') verificationCode FROM customerMaster cm(NOLOCK) LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 AND CM.ISACTIVE = ''Y'' AND USERNAME IS NOT NULL AND cm.MOBILEVERIFIEDDATE IS not NULL and cm.membershipId is not null -- and cm.serviceUsedFor LIKE ''%M%'' and ISNULL(cm.serviceUsedFor, ''C'') NOT LIKE ''%M%'' and ISNULL(cm.isEmailVerified, 0) = 1 and cm.mobileVerificationType = ''verified'' and ISNULL(cm.agreeYn,0)= 1 and cm.hasDeclare = ''1'' and cm.agreeYn = ''1'' UNION ALL SELECT customerId=cm.customerId ,MEMBERSHIPID = '''' + CM.membershipId +'''' ,cm.userName ,email=cm.email ,fullName= REPLACE(ISNULL(cm.firstName, '''') + ISNULL('' '' + cm.middleName, '''') + ISNULL('' '' + cm.lastName1, ''''), '' '', '' '') ,dob=CONVERT(VARCHAR,cm.dob,101) ,address=cm.[address] ,nativeCountry=com.countryName ,idtype=sdv.detailTitle ,idNumber=cm.idNumber ,createdDate=CAST(cm.createdDate AS DATE) ,createdBy=cm.createdBy ,verifiedBy=cm.verifiedBy ,branchName='''' ,verifiedDate=CAST(cm.verifiedDate AS DATE) ,ipAddress=cm.ipAddress ,mobile=cm.mobile ,bankAccountNo ,cm.agentId ,case when isnull(cm.isExistingCustomer,1) = 1 then ''Yes'' ELSE ''No'' End isExistingCustomer ,createdUserFrom = ''core'' ,LawsonCardNo = cm.LawsonCardNo ,[RegistrationType] = CASE WHEN cm.RegistrationType IS NULL THEN ''Manual'' ELSE cm.RegistrationType END ,ISNULL(verificationCode,''NOT_COMPLETED'') verificationCode FROM customerMaster cm(NOLOCK) LEFT JOIN countryMaster com(NOLOCK) ON cm.nativeCountry=com.countryId INNER JOIN staticDataValue sdv (NOLOCK) ON sdv.valueId=cm.idType AND sdv.typeID=1300 AND CM.ISACTIVE = ''Y'' AND USERNAME IS NOT NULL AND cm.MOBILEVERIFIEDDATE IS NOT NULL and cm.membershipId is not null and cm.serviceUsedFor LIKE ''%M%'' --and ISNULL(cm.serviceUsedFor, ''C'') NOT LIKE ''%M%'' and ISNULL(cm.isEmailVerified, 0) = 0 and cm.approvedDate IS NOT NULL and cm.mobileVerificationType = ''verified'' and ISNULL(cm.agreeYn,0)= 1' IF ISNULL(@fromDate, '') <> '' AND ISNULL(@toDate, '') <> '' SET @table = @table + ' AND cm.createdDate BETWEEN ''' + CAST(@fromDate AS VARCHAR) + ''' AND ''' + CAST(@toDate AS VARCHAR) + '''' 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+'''' 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 = 'walletAccountNo' SET @sql_Filter = @sql_Filter + ' AND walletAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'bankAccountNo' SET @sql_Filter = @sql_Filter + ' AND bankAccountNo = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'nativeCountry' SET @sql_Filter = @sql_Filter + ' AND nativeCountry = ''' + @searchValue + '''' ELSE IF @searchCriteria = 'LawsonCardNo' SET @sql_Filter = @sql_Filter + ' AND LawsonCardNo = ''' + @searchValue + '''' END SET @select_field_list = ' customerId,userName,isExistingCustomer,membershipid,email,fullName,dob,address,nativeCountry,idtype,idNumber ,createdDate,createdBy,verifiedBy,branchName,verifiedDate,bankAccountNo,createdUserFrom,LawsonCardNo,[RegistrationType],verificationCode ' EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber --,@action RETURN END END TRY BEGIN CATCH IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION DECLARE @errorMessage VARCHAR(MAX) SET @errorMessage = ERROR_MESSAGE() EXEC proc_errorHandler 1 ,@errorMessage ,NULL END CATCH