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

154 lines
4.8 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_customerBankModify] Script Date: 7/4/2019 11:35:48 AM ******/
  4. DROP PROCEDURE [dbo].[proc_customerBankModify]
  5. GO
  6. /****** Object: StoredProcedure [dbo].[proc_customerBankModify] Script Date: 7/4/2019 11:35:48 AM ******/
  7. SET ANSI_NULLS ON
  8. GO
  9. SET QUOTED_IDENTIFIER ON
  10. GO
  11. CREATE PROC [dbo].[proc_customerBankModify]
  12. (
  13. @flag VARCHAR(20)
  14. ,@user VARCHAR(50) = NULL
  15. ,@searchKey VARCHAR(30) = NULL
  16. ,@searchValue VARCHAR(100) = NULL
  17. ,@bankId VARCHAR(10) = NULL
  18. ,@accNumber VARCHAR(30) = NULL
  19. ,@customerId VARCHAR(10) = NULL
  20. ,@acNameInBank NVARCHAR(50) = NULL
  21. ,@verifyDoc3 VARCHAR(100) = NULL
  22. )
  23. AS
  24. SET NOCOUNT ON;
  25. SET XACT_ABORT ON;
  26. BEGIN
  27. IF @flag = 'S'
  28. BEGIN
  29. IF @searchKey IS NULL OR @searchValue IS NULL
  30. BEGIN
  31. EXEC proc_errorHandler '1', 'Invalid Attempt!', NULL
  32. RETURN
  33. END
  34. --@Max - 2018.09
  35. DECLARE @sql VARCHAR(MAX) = 'SELECT TOP 1 0 errorCode, CM.customerId, CM.fullName,
  36. CM.bankAccountNo, CM.idNumber, KB.BankName, KB.bankCode, CM.homePhone, CM.verifyDoc3,
  37. idType,
  38. CONVERT(VARCHAR(6), CM.dob, 12) AS [dob],
  39. CASE WHEN CM.nativeCountry = 238 THEN 1
  40. WHEN CM.nativeCountry = 113 THEN 2
  41. WHEN CM.nativeCountry = 45 THEN 3
  42. ELSE 4 END AS [nativeCountryCode],
  43. CASE WHEN CM.gender = 97 THEN 7
  44. WHEN CM.gender = 98 THEN 8 END AS [genderCode]
  45. FROM customerMaster CM(NOLOCK)
  46. INNER JOIN KoreanBankList KB(NOLOCK) ON KB.rowId = CM.bankName
  47. WHERE REPLACE('+@searchKey+', ''-'', '''') = REPLACE('''+@searchValue+''', ''-'', '''')'
  48. EXEC(@sql)
  49. END
  50. ELSE IF @flag = 'customervf' -- customer verification details
  51. BEGIN
  52. DECLARE @sqls VARCHAR(800) ='
  53. SELECT ''0'' As Code,
  54. cm.fullName AS name,
  55. ISNULL(cm.mobile,cm.homePhone) AS mobile,
  56. cm.gender AS gender,
  57. cm.idType As idType,
  58. cm.idNumber As idNumber,
  59. FORMAT(cm.dob,''MM/dd/yyyy'')AS dob,
  60. cm.bankName AS bankName,
  61. k.bankCode As bankCode,
  62. cm.bankAccountNo AS accountNo,
  63. cm.nativeCountry AS country,
  64. obpId AS obpId,
  65. walletAccountNo AS wallletNo
  66. FROM customerMaster cm (NOLOCK)
  67. INNER JOIN KoreanBankList k (nolock) on k.rowId = cm.bankName
  68. WHERE ' + @searchKey + ' = '''+ @searchValue +''' '
  69. print @sqls
  70. EXEC(@sqls)
  71. END
  72. ELSE IF @flag = 'DDL'
  73. BEGIN
  74. SELECT BankName, bankCode FROM KoreanBankList (NOLOCK) ORDER BY BankName ASC
  75. END
  76. ELSE IF @flag = 'U'
  77. BEGIN
  78. IF @user IS NULL
  79. BEGIN
  80. EXEC proc_errorHandler '1', 'Please login first to modify customer!', NULL
  81. RETURN
  82. END
  83. IF NOT EXISTS (SELECT 1 FROM customerMaster (NOLOCK) WHERE customerId = @customerId)
  84. BEGIN
  85. EXEC proc_errorHandler '1', 'Some thing went wrong this time, please try again later!', NULL
  86. RETURN
  87. END
  88. --LOG FOR CUSTOMER UPDATE
  89. EXEC PROC_CUSTOMERMODIFYLOG @flag = 'i', @email = NULL, @idNumber = NULL, @bank = @bankId,
  90. @accNumber = @accNumber, @customerId = @customerId, @mobileNumber = NULL,
  91. @user = @user
  92. UPDATE CM SET CM.bankName = KB.rowId, CM.bankAccountNo = @accNumber, CM.CustomerBankName = @acNameInBank, CM.verifyDoc3 = ISNULL(@verifyDoc3, CM.verifyDoc3)
  93. FROM customerMaster CM(NOLOCK)
  94. INNER JOIN KoreanBankList KB(NOLOCK) ON KB.bankCode = @bankId
  95. WHERE CM.customerId = @customerId
  96. EXEC proc_errorHandler '0', 'Details updated successfully!', NULL
  97. END
  98. ELSE IF @flag = 'Audit'
  99. BEGIN
  100. UPDATE customerMaster SET AuditBy = @user,AuditDate = GETDATE() WHERE customerId = @customerId
  101. EXEC proc_errorHandler '0', 'Document marked as Audited', NULL
  102. RETURN
  103. END
  104. ELSE IF @flag = 'certificate-details'
  105. BEGIN
  106. DECLARE @action VARCHAR(10);
  107. IF LOWER(@searchKey) = 'email'
  108. BEGIN
  109. SELECT @customerId = customerId FROM customermaster cm(NOLOCK)
  110. WHERE email=@searchValue
  111. END
  112. ELSE
  113. BEGIN
  114. SELECT @customerId = customerId FROM customermaster cm(NOLOCK)
  115. WHERE idnumber = @searchValue
  116. END
  117. IF NOT EXISTS(SELECT 'x' FROM customerMaster cm(NOLOCK) WHERE customerId = @customerId)
  118. BEGIN
  119. SELECT '1' errorCode,'Invalid Bank detail found check detail from Menu CUSTOMER ID VERIFICATION' Msg,null id
  120. RETURN
  121. END
  122. SELECT @action = [action] FROM TblCustomerBankVerification bv(NOLOCK)
  123. WHERE customerId=@customerId
  124. IF UPPER(@action) = 'REQ'
  125. BEGIN
  126. SELECT TOP 1 '0' errorCode,certNumber as certificateNumber,bankAccountNo AS accountNo,idNumber,customerId,reqDate AS requestedDate
  127. FROM TblCustomerBankVerification c(nolock)
  128. inner join koreanbanklist l (nolock) on l.bankcode = c.bankCode
  129. WHERE customerId = @customerId
  130. RETURN
  131. END
  132. ELSE IF UPPER(@action) = 'SUCCESS'
  133. BEGIN
  134. EXEC proc_errorHandler '1', 'Bank detail Already Verified!!!!', NULL
  135. END
  136. ELSE
  137. SELECT '1' errorCode,'Invalid Bank detail found check detail from Menu CUSTOMER ID VERIFICATION' Msg,null id
  138. END
  139. END
  140. --select * from TBLCUSTOMERMODIFYLOGS
  141. --select bankName, bankAccountNo,* from customerMaster where customerId =3
  142. GO