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.

106 lines
3.7 KiB

1 year ago
  1. ALTER pROCEDURE [dbo].[Proc_ReceiverPageFieldSetup]
  2. @flag VARCHAR(15)
  3. ,@PcountryId VARCHAR (3) = NULL
  4. ,@PaymentMethodId VARCHAR (3) = NULL
  5. ,@xml NVARCHAR(MAX) = NULL
  6. ,@user VARCHAR(50) = NULL
  7. AS
  8. SET NOCOUNT ON
  9. IF @flag ='servicetype'
  10. BEGIN
  11. SELECT valueField=0,textField='All'
  12. UNION
  13. SELECT valueField =serviceTypeId,textField =typeTitle FROM serviceTypeMaster(NOLOCK)
  14. WHERE isActive='Y' ORDER BY valueField
  15. RETURN
  16. END
  17. IF @flag = 'countryPay'
  18. BEGIN
  19. SELECT countryId='0',countryName='All'
  20. UNION
  21. SELECT countryId, countryName FROM countryMaster (NOLOCK)
  22. WHERE ISNULL(isOperativeCountry,'') = 'Y'
  23. AND ISNULL(operationType,'B') IN ('B','R')
  24. ORDER BY countryId ASC
  25. RETURN
  26. END
  27. IF @flag = 'getdata'
  28. BEGIN
  29. SELECT field, fieldRequired, minfieldlength=isnull(minfieldlength,0),maxfieldlength=isnull(maxfieldlength,0),
  30. KeyWord =isnull(KeyWord, 'N')FROM receiverFieldSetup(NOLOCK)
  31. WHERE pCountry=@PcountryId AND PaymentMethodId=@PaymentMethodId
  32. RETURN
  33. END
  34. IF @flag ='d'
  35. BEGIN
  36. IF EXISTS (SELECT 1 FROM receiverFieldSetup(NOLOCK) WHERE pCountry=@PcountryId AND paymentMethodId=@PaymentMethodId)
  37. BEGIN
  38. DELETE FROM receiverFieldSetup WHERE pCountry=@PcountryId AND paymentMethodId=@PaymentMethodId
  39. EXEC proc_errorHandler 0, 'Record delete Successfully.', ''
  40. END
  41. ELSE
  42. BEGIN
  43. EXEC proc_errorHandler 1, 'Failed to delete record.', ''
  44. END
  45. RETURN
  46. END
  47. IF @flag = 'U'
  48. BEGIN
  49. DECLARE @xmlData XML
  50. SET @xmlData = CAST(@xml AS XML)
  51. IF EXISTS (SELECT 1 FROM receiverFieldSetup(NOLOCK) WHERE paymentMethodId=@PaymentMethodId AND pCountry=@PcountryId)
  52. BEGIN
  53. BEGIN TRY
  54. BEGIN TRANSACTION
  55. UPDATE dbo.receiverFieldSetup
  56. SET
  57. fieldrequired = XCol.value('(fieldRequired)[1]','varchar(25)'),
  58. minfieldlength = XCol.value('(minFieldlength)[1]','varchar(3)'),
  59. maxfieldlength = XCol.value('(maxFieldlength)[1]','varchar(3)'),
  60. KeyWord =XCol.value('(KeyWord)[1]','varchar(3)'),
  61. pCountry=@PcountryId,paymentMethodId= @PaymentMethodId, modifiedBy=@user, modifiedDate= GETDATE()
  62. FROM @xmlData.nodes('/ArrayOfFieldsetting/Fieldsetting') AS XTbl(XCol)
  63. WHERE pCountry=@PcountryId AND paymentMethodId=@PaymentMethodId AND field=XCol.value('(field)[1]','varchar(25)')
  64. UPDATE receiverFieldSetup SET minfieldLength=-1,maxfieldLength=-1, isDropDown=1
  65. WHERE field IN('Native Country','Province','District','Realation Group','Id Type','Transfer Reason', 'Bank Name','Branch Name')
  66. COMMIT
  67. EXEC proc_errorHandler 0, 'Record Update Successfully ', ''
  68. END TRY
  69. BEGIN CATCH
  70. IF @@TRANCOUNT > 0
  71. ROLLBACK
  72. EXEC proc_errorHandler 1, 'Failed to update record.', ''
  73. END CATCH
  74. RETURN
  75. END
  76. ELSE
  77. BEGIN
  78. BEGIN TRY
  79. BEGIN TRAN
  80. INSERT INTO dbo.receiverFieldSetup(field, fieldrequired,minfieldLength,maxfieldLength,KeyWord,pCountry,paymentMethodId,createdBy,createdDate)
  81. SELECT
  82. field = XCol.value('(field)[1]','varchar(25)'),
  83. fieldrequired = XCol.value('(fieldRequired)[1]','varchar(1)'),
  84. minfieldLength = XCol.value('(minFieldlength)[1]','varchar(3)'),
  85. maxfieldLength = XCol.value('(maxFieldlength)[1]','varchar(3)'),
  86. KeyWord = XCol.value('(KeyWord)[1]','varchar(3)'),
  87. @PcountryId,@PaymentMethodId,@user,GETDATE()
  88. FROM @xmlData.nodes('/ArrayOfFieldsetting/Fieldsetting') AS XTbl(XCol)
  89. UPDATE receiverFieldSetup SET minfieldLength=-1,maxfieldLength=-1, isDropDown=1
  90. WHERE field IN('Native Country','Province','District','Realation Group','Id Type','Transfer Reason', 'Bank Name','Branch Name')
  91. COMMIT
  92. EXEC proc_errorHandler 0, 'Record save Successfully ', ''
  93. END TRY
  94. BEGIN CATCH
  95. IF @@TRANCOUNT > 0
  96. ROLLBACK
  97. EXEC proc_errorHandler 1, 'Failed to save record.', ''
  98. END CATCH
  99. RETURN
  100. END
  101. END