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.

179 lines
4.8 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_online_customerDocument] Script Date: 7/4/2019 11:35:48 AM ******/
  4. DROP PROCEDURE [dbo].[proc_online_customerDocument]
  5. GO
  6. /****** Object: StoredProcedure [dbo].[proc_online_customerDocument] 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_online_customerDocument]
  12. @flag VARCHAR(50) = NULL
  13. ,@user VARCHAR(30) = NULL
  14. ,@isHoUser VARCHAR(30) = NULL
  15. ,@cdId VARCHAR(30) = NULL
  16. ,@cdIds VARCHAR(MAX) = NULL
  17. ,@customerId VARCHAR(50) = NULL
  18. ,@agentId VARCHAR(50) = NULL
  19. ,@branchId VARCHAR(50) = NULL
  20. ,@fileName VARCHAR(50) = NULL
  21. ,@fileDescription VARCHAR(100) = NULL
  22. ,@fileType VARCHAR(10) = NULL
  23. ,@cusdocFolder VARCHAR(100) = NULL
  24. ,@sessionId VARCHAR(60) = NULL
  25. ,@sortBy VARCHAR(50) = NULL
  26. ,@sortOrder VARCHAR(5) = NULL
  27. ,@pageSize INT = NULL
  28. ,@pageNumber INT = NULL
  29. AS
  30. SET NOCOUNT ON
  31. SET XACT_ABORT ON
  32. BEGIN TRY
  33. CREATE TABLE #msg(errorCode INT, msg VARCHAR(100), id INT)
  34. DECLARE
  35. @sql VARCHAR(MAX)
  36. ,@oldValue VARCHAR(MAX)
  37. ,@newValue VARCHAR(MAX)
  38. ,@module VARCHAR(10)
  39. ,@tableAlias VARCHAR(100)
  40. ,@logIdentifier VARCHAR(50)
  41. ,@logParamMod VARCHAR(100)
  42. ,@logParamMain VARCHAR(100)
  43. ,@table VARCHAR(MAX)
  44. ,@select_field_list VARCHAR(MAX)
  45. ,@extra_field_list VARCHAR(MAX)
  46. ,@sql_filter VARCHAR(MAX)
  47. ,@modType VARCHAR(6)
  48. SELECT
  49. @logIdentifier = 'cdId'
  50. ,@logParamMain = 'customerDocument'
  51. ,@logParamMod = 'customerDocumentMod'
  52. ,@module = '20'
  53. ,@tableAlias = ''
  54. IF @customerId = '0'
  55. SET @customerId = NULL
  56. IF @flag = 's'
  57. BEGIN
  58. SELECT
  59. CdId
  60. ,CustomerId
  61. ,[FileName]
  62. ,FileDescription
  63. ,FileType
  64. ,CreatedBy
  65. ,CreatedDate
  66. ,IsDeleted
  67. ,IsOnlineDoc
  68. ,DocFolder = CASE WHEN cd.documentFolder IS NULL THEN dbo.FNAGetDocPath('df',cd.customerId,cd.sessionId,cd.createdDate)
  69. ELSE cd.documentFolder
  70. END
  71. FROM customerDocument cd WITH(NOLOCK)
  72. WHERE customerId = @customerId
  73. AND ISNULL(isDeleted,'N')<>'Y'
  74. END
  75. IF @flag = 'i'
  76. BEGIN
  77. SET @agentID = '1040';
  78. SET @branchId = '30231';
  79. BEGIN TRANSACTION
  80. SELECT @fileName = REPLACE(NEWID(), '-', '_') + '.' + @fileType
  81. INSERT INTO customerDocument (
  82. customerId
  83. ,agentId
  84. ,branchId
  85. ,[fileName]
  86. ,fileDescription
  87. ,fileType
  88. ,sessionId
  89. ,createdBy
  90. ,createdDate
  91. ,isOnlineDoc
  92. ,documentFolder
  93. )
  94. SELECT
  95. @customerId
  96. ,@agentId
  97. ,@branchId
  98. ,@fileName
  99. ,@fileDescription
  100. ,@fileType
  101. ,@sessionId
  102. ,@user
  103. ,GETDATE()
  104. ,'Y'
  105. ,@cusdocFolder
  106. SET @cdId = SCOPE_IDENTITY()
  107. SET @modType = 'Insert'
  108. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @cdId , @newValue OUTPUT
  109. INSERT INTO #msg(errorCode, msg, id)
  110. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @cdId, @user, @oldValue, @newValue
  111. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  112. BEGIN
  113. IF @@TRANCOUNT > 0
  114. ROLLBACK TRANSACTION
  115. EXEC proc_errorHandler 1, 'Failed to add new record.', @cdId
  116. RETURN
  117. END
  118. IF @@TRANCOUNT > 0
  119. COMMIT TRANSACTION
  120. DECLARE @string VARCHAR(100)
  121. SET @string = 'File Uploaded as ' + @fileName
  122. EXEC proc_errorHandler 0, @string, @fileName
  123. END
  124. ELSE IF @flag = 'u'
  125. BEGIN
  126. SET @agentID = '1040';
  127. SET @branchId = '30231';
  128. BEGIN TRANSACTION
  129. UPDATE customerDocument SET
  130. agentId=@agentId
  131. ,branchId=@branchId
  132. ,fileDescription = @fileDescription
  133. ,modifiedBy = @user
  134. ,modifiedDate = GETDATE()
  135. WHERE cdId = @cdId
  136. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @cdId, @newValue OUTPUT
  137. INSERT INTO #msg(errorCode, msg, id) EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @cdId, @user, @oldValue, @newValue
  138. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  139. BEGIN
  140. IF @@TRANCOUNT > 0
  141. ROLLBACK TRANSACTION
  142. EXEC proc_errorHandler 1, 'Failed to update record.', @cdId
  143. RETURN
  144. END
  145. IF @@TRANCOUNT > 0
  146. COMMIT TRANSACTION
  147. EXEC proc_errorHandler 0, 'Record updated successfully.', @cdId
  148. END
  149. ELSE IF @flag = 'd'
  150. BEGIN
  151. UPDATE customerDocument set isDeleted = 'Y'
  152. WHERE customerId=@customerId and [fileName]=@fileName
  153. SELECT 0 ErrorCode, 'Deleted Successfully' Msg, NULL Id
  154. END
  155. END TRY
  156. BEGIN CATCH
  157. IF @@TRANCOUNT > 0
  158. ROLLBACK TRANSACTION
  159. DECLARE @errorMessage VARCHAR(MAX)
  160. SET @errorMessage = ERROR_MESSAGE()
  161. EXEC proc_errorHandler 1, @errorMessage, @cdId
  162. END CATCH
  163. GO