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.

113 lines
6.7 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_modifyTxnAPI] 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_modifyTxnAPI] (
  9. @flag VARCHAR(50)
  10. ,@controlNo VARCHAR(20) = NULL
  11. ,@user VARCHAR(30) = NULL
  12. ,@agentRefId VARCHAR(50) = NULL
  13. ,@tranId BIGINT = NULL
  14. ,@newPLocation INT = NULL
  15. )
  16. AS
  17. /*
  18. SELECT * FROM remitTran
  19. EXEC proc_modifyTxnAPI @flag = 'details', @user = 'shree_b1', @controlNo = '91191505349'
  20. */
  21. DECLARE
  22. @select_field_list VARCHAR(MAX)
  23. ,@extra_field_list VARCHAR(MAX)
  24. ,@table VARCHAR(MAX)
  25. ,@sql_filter VARCHAR(MAX)
  26. ,@sAgent INT
  27. ,@tAmt MONEY
  28. ,@cAmt MONEY
  29. ,@pAmt MONEY
  30. ,@message VARCHAR(200)
  31. SET NOCOUNT ON
  32. SET XACT_ABORT ON
  33. --Modify Location----------------------------------------------------------------------------------------------------
  34. IF @flag = 'ml' --Modify Location
  35. BEGIN
  36. --Necessary Parameters: @user, @tranId, @newDdlValue
  37. IF @agentRefId IS NULL
  38. SET @agentRefId = '4' + LEFT(CAST(ABS(CHECKSUM(NEWID())) AS VARCHAR(10)) + '0000000000', 7)
  39. IF @newPLocation IS NULL
  40. BEGIN
  41. EXEC proc_errorHandler 1, 'Please enter valid agent payout location!', @tranId
  42. RETURN
  43. END
  44. DECLARE
  45. @deliveryMethodId INT
  46. ,@deliveryMethod VARCHAR(50)
  47. ,@sBranch INT
  48. ,@pSuperAgent INT
  49. ,@sCountryId INT
  50. ,@sCountry VARCHAR(100)
  51. ,@pCountryId INT
  52. ,@pCountry VARCHAR(100)
  53. ,@pLocation INT
  54. ,@agentId INT
  55. ,@amount MONEY
  56. ,@oldSc MONEY
  57. ,@newSc MONEY
  58. ,@collCurr VARCHAR(3)
  59. SELECT
  60. @deliveryMethod = paymentMethod
  61. ,@sBranch = sBranch
  62. ,@pSuperAgent = pSuperAgent
  63. ,@sCountry = sCountry
  64. ,@pCountry = pCountry
  65. ,@agentId = pBranch
  66. ,@amount = tAmt
  67. ,@oldSc = serviceCharge
  68. ,@collCurr = collCurr
  69. ,@controlNo = dbo.FNADecryptString(controlNo)
  70. FROM remitTran WITH(NOLOCK)
  71. WHERE id = @tranId
  72. SELECT @deliveryMethodId = serviceTypeId FROM serviceTypeMaster WITH(NOLOCK) WHERE typeTitle = @deliveryMethod AND ISNULL(isDeleted, 'N') = 'N'
  73. SELECT @sCountryId = countryId FROM countryMaster WITH(NOLOCK) WHERE countryName = @sCountry
  74. SELECT @pCountryId = countryId FROM countryMaster WITH(NOLOCK) WHERE countryName = @pCountry
  75. IF(@sCountry = 'Nepal')
  76. SELECT @newSc = ISNULL(serviceCharge, 0) FROM dbo.FNAGetDomesticSendComm(@sBranch, NULL, @newPLocation, @deliveryMethodId, @amount)
  77. ELSE
  78. SELECT @newSc = ISNULL(amount, -1) FROM [dbo].FNAGetSC(@sBranch, @pSuperAgent, @pCountryId, @newPLocation, @agentId , @deliveryMethodId, @amount, @collCurr)
  79. IF (@oldSc <> @newSc)
  80. BEGIN
  81. EXEC proc_errorHandler 1, 'Service charge for this location varies. Cannot modify location.', @tranId
  82. EXEC proc_errorHandler 1, 'Service charge for this location varies. Cannot modify location.', @tranId
  83. RETURN
  84. END
  85. SELECT '0' Code, '123' AGENT_REFID, 'TXN Location Changed' Message, @controlNo REFID
  86. END
  87. IF @flag = 'mpl'
  88. BEGIN
  89. IF @agentRefId IS NULL
  90. SET @agentRefId = '4' + LEFT(CAST(ABS(CHECKSUM(NEWID())) AS VARCHAR(10)) + '0000000000', 7)
  91. SELECT '0' Code, @agentRefId AGENT_REFID, 'TXN Location Changed' Message, '' REFID
  92. END
  93. ----------------------------------------------------------------------------------------------------------------
  94. GO