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.

135 lines
9.8 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_kycActivation] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. CREATE proc [dbo].[proc_kycActivation]
  9. @flag varchar(50)
  10. ,@user varchar(30)
  11. ,@kycId bigint = NULL
  12. ,@remitCardNo varchar(20) = NULL
  13. AS
  14. SET NOCOUNT ON
  15. SET XACT_ABORT ON
  16. BEGIN TRY
  17. DECLARE
  18. @sql VARCHAR(MAX)
  19. ,@table VARCHAR(MAX)
  20. IF @flag = 's'
  21. BEGIN
  22. SELECT
  23. id = main.remitCardNo
  24. ,[S.N.] = row_number()over(order by main.firstName)
  25. ,[IME Remit Card Number] = main.remitCardNo
  26. ,[Customer Name] = isnull(' '+main.salutation,'')+' '+ isnull(' '+main.firstName,'')+ isnull(' '+main.middleName,'')+ isnull(' '+main.lastName,'')
  27. ,[Agent Name] = case when main.agentId is null then 'Head Office' else am.agentName END
  28. ,[Created By] = main.createdBy
  29. ,[Created Date] = main.createdDate
  30. ,[Approved By] = main.approvedBy
  31. ,[Approved Date] = main.approvedDate
  32. FROM kycMaster main WITH(NOLOCK)
  33. LEFT JOIN agentMaster am WITH(NOLOCK) ON main.agentId = am.agentId
  34. WHERE main.activatedDate IS NULL
  35. AND ISNULL(main.isDeleted,'N')<>'Y'
  36. AND ISNULL(main.isActivated,'N') = 'N'
  37. AND main.remitCardNo = ISNULL(@remitCardNo,main.remitCardNo)
  38. --FROM kycMaster main WITH(NOLOCK)
  39. --LEFT JOIN agentMaster am WITH(NOLOCK) ON main.agentId = am.agentId
  40. --WHERE main.activatedDate IS NOT NULL
  41. --AND ISNULL(main.isDeleted,'N')<>'Y'
  42. --AND ISNULL(main.isActivated,'N') = 'Y'
  43. --AND main.remitCardNo = ISNULL(@remitCardNo,main.remitCardNo)
  44. ORDER BY main.firstName
  45. END
  46. IF @flag = 'activate'
  47. BEGIN
  48. UPDATE kycMaster
  49. SET isActivated = 'Y',
  50. activatedBy = @user,
  51. activatedDate = Getdate()
  52. WHERE remitCardNo = @remitCardNo
  53. EXEC proc_errorHandler 0, 'IME Remit Card has been activated successfully.', @remitCardNo
  54. -- ## Send SMS
  55. DECLARE @mobile VARCHAR(10),@customerName varchar(500),@msg varchar(max)
  56. select
  57. @mobile = mobileP,
  58. @customerName = isnull(' '+main.salutation,'')+' '+ isnull(' '+main.firstName,'')+ isnull(' '+main.middleName,'')+ isnull(' '+main.lastName,'')
  59. from kycMaster main with(nolock) where remitCardNo = @remitCardNo
  60. IF @mobile <> '' OR @mobile IS NOT NULL or @customerName <> '' and @customerName is not null
  61. BEGIN
  62. SET @msg = 'Dear '+upper(@customerName)+', Your IME Remit Card No. '+@remitCardNo+' has been activated. Now you can send and receive money using your IME Remit Card. Thank You -IME, For further information, please contact: 01-4430600'
  63. INSERT INTO smsqueue(mobileNo,msg,createdDate,createdBy,country)
  64. SELECT @mobile,@msg,GETDATE(),@user,'Nepal'
  65. END
  66. RETURN;
  67. END
  68. IF @flag = 's_block'
  69. BEGIN
  70. SELECT
  71. id = main.remitCardNo
  72. ,[IME Remit Card Number] = main.remitCardNo
  73. ,[Customer Name] = isnull(' '+main.salutation,'')+' '+ isnull(' '+main.firstName,'')+ isnull(' '+main.middleName,'')+ isnull(' '+main.lastName,'')
  74. ,[Agent Name] = case when main.agentId is null then 'Head Office' else am.agentName END
  75. ,[Created By] = main.createdBy
  76. ,[Created Date] = main.createdDate
  77. ,[Approved By] = main.approvedBy
  78. ,[Approved Date] = main.approvedDate
  79. ,[Activated By] = main.activatedBy
  80. ,[Activated Date] = main.activatedDate
  81. FROM kycMaster main WITH(NOLOCK)
  82. LEFT JOIN agentMaster am WITH(NOLOCK) ON main.agentId = am.agentId
  83. WHERE main.blockedDate is null
  84. AND ISNULL(main.isDeleted,'N')<>'Y'
  85. AND ISNULL(main.isDeleted,'N') = 'N'
  86. AND main.remitCardNo = @remitCardNo
  87. END
  88. IF @flag = 'u_block'
  89. BEGIN
  90. UPDATE kycMaster
  91. SET isBlocked = 'Y',
  92. blockedBy = @user,
  93. blockedDate = Getdate()
  94. WHERE remitCardNo = @remitCardNo
  95. EXEC proc_errorHandler 0, 'IME Remit Card has been blocked successfully.', @remitCardNo
  96. RETURN;
  97. END
  98. IF @flag = 'pin_refresh'
  99. BEGIN
  100. SELECT
  101. id = main.remitCardNo
  102. ,[S.N.] = row_number()over(order by main.firstName)
  103. ,[IME Remit Card Number] = main.remitCardNo
  104. ,[Customer Name] = isnull(' '+main.salutation,'')+' '+ isnull(' '+main.firstName,'')+ isnull(' '+main.middleName,'')+ isnull(' '+main.lastName,'')
  105. ,[Agent Name] = case when main.agentId is null then 'Head Office' else am.agentName END
  106. ,[Created By] = main.createdBy
  107. ,[Created Date] = main.createdDate
  108. ,[Approved By] = main.approvedBy
  109. ,[Approved Date] = main.approvedDate
  110. FROM kycMaster main WITH(NOLOCK)
  111. LEFT JOIN agentMaster am WITH(NOLOCK) ON main.agentId = am.agentId
  112. WHERE main.activatedDate IS NOT NULL
  113. AND ISNULL(main.isDeleted,'N')<>'Y'
  114. AND ISNULL(main.isActivated,'N') = 'Y'
  115. AND main.remitCardNo = ISNULL(@remitCardNo,main.remitCardNo)
  116. ORDER BY main.firstName
  117. END
  118. END TRY
  119. BEGIN CATCH
  120. IF @@TRANCOUNT > 0
  121. ROLLBACK TRANSACTION
  122. SELECT 1 errCode, ERROR_MESSAGE() + ERROR_LINE() mes, NULL id
  123. END CATCH
  124. GO