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.

281 lines
15 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_agentOwnershipInf] 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_agentOwnershipInf]
  9. @flag VARCHAR(50) = NULL
  10. ,@user VARCHAR(30) = NULL
  11. ,@aoiId VARCHAR(30) = NULL
  12. ,@agentId INT = NULL
  13. ,@ownerName VARCHAR(50) = NULL
  14. ,@ssn VARCHAR(20) = NULL
  15. ,@idType INT = NULL
  16. ,@idNumber VARCHAR(50) = NULL
  17. ,@issuingCountry INT = NULL
  18. ,@expiryDate DATETIME = NULL
  19. ,@permanentAddress VARCHAR(100) = NULL
  20. ,@country INT = NULL
  21. ,@city VARCHAR(50) = NULL
  22. ,@state INT = NULL
  23. ,@zip VARCHAR(20) = NULL
  24. ,@phone VARCHAR(20) = NULL
  25. ,@fax VARCHAR(20) = NULL
  26. ,@mobile1 VARCHAR(20) = NULL
  27. ,@mobile2 VARCHAR(20) = NULL
  28. ,@email VARCHAR(50) = NULL
  29. ,@position VARCHAR(50) = NULL
  30. ,@shareHolding INT = NULL
  31. ,@sortBy VARCHAR(50) = NULL
  32. ,@sortOrder VARCHAR(5) = NULL
  33. ,@pageSize INT = NULL
  34. ,@pageNumber INT = NULL
  35. AS
  36. SET NOCOUNT ON
  37. SET XACT_ABORT ON
  38. BEGIN TRY
  39. CREATE TABLE #msg(errorCode INT, msg VARCHAR(100), id INT)
  40. DECLARE
  41. @sql VARCHAR(MAX)
  42. ,@oldValue VARCHAR(MAX)
  43. ,@newValue VARCHAR(MAX)
  44. ,@module VARCHAR(10)
  45. ,@tableAlias VARCHAR(100)
  46. ,@logIdentifier VARCHAR(50)
  47. ,@logParamMod VARCHAR(100)
  48. ,@logParamMain VARCHAR(100)
  49. ,@table VARCHAR(MAX)
  50. ,@select_field_list VARCHAR(MAX)
  51. ,@extra_field_list VARCHAR(MAX)
  52. ,@sql_filter VARCHAR(MAX)
  53. ,@modType VARCHAR(6)
  54. SELECT
  55. @logIdentifier = 'aoiId'
  56. ,@logParamMain = 'agentOwnershipInf'
  57. ,@logParamMod = 'agentOwnershipInfMod'
  58. ,@module = '20'
  59. ,@tableAlias = ''
  60. IF @flag = 'i'
  61. BEGIN
  62. BEGIN TRANSACTION
  63. INSERT INTO agentOwnershipInf (
  64. agentId
  65. ,ownerName
  66. ,ssn
  67. ,idType
  68. ,idNumber
  69. ,issuingCountry
  70. ,expiryDate
  71. ,permanentAddress
  72. ,country
  73. ,city
  74. ,[state]
  75. ,zip
  76. ,phone
  77. ,fax
  78. ,mobile1
  79. ,mobile2
  80. ,email
  81. ,position
  82. ,shareHolding
  83. ,createdBy
  84. ,createdDate
  85. )
  86. SELECT
  87. @agentId
  88. ,@ownerName
  89. ,@ssn
  90. ,@idType
  91. ,@idNumber
  92. ,@issuingCountry
  93. ,@expiryDate
  94. ,@permanentAddress
  95. ,@country
  96. ,@city
  97. ,@state
  98. ,@zip
  99. ,@phone
  100. ,@fax
  101. ,@mobile1
  102. ,@mobile2
  103. ,@email
  104. ,@position
  105. ,@shareHolding
  106. ,@user
  107. ,GETDATE()
  108. SET @modType = 'Insert'
  109. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @aoiId , @newValue OUTPUT
  110. INSERT INTO #msg(errorCode, msg, id)
  111. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @aoiId, @user, @oldValue, @newValue
  112. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  113. BEGIN
  114. IF @@TRANCOUNT > 0
  115. ROLLBACK TRANSACTION
  116. EXEC proc_errorHandler 1, 'Failed to add new record.', @aoiId
  117. RETURN
  118. END
  119. IF @@TRANCOUNT > 0
  120. COMMIT TRANSACTION
  121. EXEC proc_errorHandler 0, 'Record has been added successfully.', @aoiId
  122. END
  123. ELSE IF @flag = 'a'
  124. BEGIN
  125. SELECT * FROM agentOwnershipInf WITH(NOLOCK) WHERE aoiId = @aoiId AND agentId = @agentId
  126. END
  127. ELSE IF @flag = 'pullDefault'
  128. BEGIN
  129. SELECT top 1 * FROM agentOwnershipInf WITH(NOLOCK) WHERE agentId = @agentId
  130. END
  131. ELSE IF @flag = 'u'
  132. BEGIN
  133. BEGIN TRANSACTION
  134. UPDATE agentOwnershipInf SET
  135. agentId = @agentId
  136. ,ownerName = @ownerName
  137. ,ssn = @ssn
  138. ,idType = @idType
  139. ,idNumber = @idNumber
  140. ,issuingCountry = @issuingCountry
  141. ,expiryDate = @expiryDate
  142. ,permanentAddress = @permanentAddress
  143. ,country = @country
  144. ,city = @city
  145. ,[state] = @state
  146. ,zip = @zip
  147. ,phone = @phone
  148. ,fax = @fax
  149. ,mobile1 = @mobile1
  150. ,mobile2 = @mobile2
  151. ,email = @email
  152. ,position = @position
  153. ,shareHolding = @shareHolding
  154. ,modifiedBy = @user
  155. ,modifiedDate = GETDATE()
  156. WHERE aoiId = @aoiId
  157. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @aoiId, @newValue OUTPUT
  158. INSERT INTO #msg(errorCode, msg, id) EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @aoiId, @user, @oldValue, @newValue
  159. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  160. BEGIN
  161. IF @@TRANCOUNT > 0
  162. ROLLBACK TRANSACTION
  163. EXEC proc_errorHandler 1, 'Failed to update record.', @aoiId
  164. RETURN
  165. END
  166. IF @@TRANCOUNT > 0
  167. COMMIT TRANSACTION
  168. EXEC proc_errorHandler 0, 'Record updated successfully.', @aoiId
  169. END
  170. ELSE IF @flag = 'd'
  171. BEGIN
  172. BEGIN TRANSACTION
  173. UPDATE agentOwnershipInf SET
  174. isDeleted = 'Y'
  175. ,modifiedDate = GETDATE()
  176. ,modifiedBy = @user
  177. WHERE aoiId = @aoiId
  178. SET @modType = 'Delete'
  179. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @aoiId, @oldValue OUTPUT
  180. INSERT INTO #msg(errorCode, msg, id)
  181. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @aoiId, @user, @oldValue, @newValue
  182. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  183. BEGIN
  184. IF @@TRANCOUNT > 0
  185. ROLLBACK TRANSACTION
  186. EXEC proc_errorHandler 1, 'Failed to delete record.', @aoiId
  187. RETURN
  188. END
  189. IF @@TRANCOUNT > 0
  190. COMMIT TRANSACTION
  191. EXEC proc_errorHandler 0, 'Record deleted successfully.', @aoiId
  192. END
  193. ELSE IF @flag IN ('s')
  194. BEGIN
  195. IF @sortBy IS NULL
  196. SET @sortBy = 'aoiId'
  197. IF @sortOrder IS NULL
  198. SET @sortOrder = 'ASC'
  199. SET @table = '(
  200. SELECT
  201. main.aoiId
  202. ,main.agentId
  203. ,main.ownerName
  204. ,main.ssn
  205. ,main.idType
  206. ,main.idNumber
  207. ,main.issuingCountry
  208. ,main.expiryDate
  209. ,main.permanentAddress
  210. ,main.country
  211. ,main.city
  212. ,main.state
  213. ,main.zip
  214. ,main.phone
  215. ,main.fax
  216. ,main.mobile1
  217. ,main.mobile2
  218. ,main.email
  219. ,main.position
  220. ,main.shareHolding
  221. ,main.createdBy
  222. ,main.createdDate
  223. ,main.isDeleted
  224. FROM agentOwnershipInf main WITH(NOLOCK)
  225. WHERE agentId = ' + CAST(@agentId AS VARCHAR) + ' AND 1 = 1
  226. ) x'
  227. SET @sql_filter = ''
  228. SET @sql_filter = @sql_filter + ' AND ISNULL(isDeleted, '''') <> ''Y'''
  229. SET @select_field_list ='
  230. aoiId
  231. ,agentId
  232. ,ownerName
  233. ,ssn
  234. ,idType
  235. ,idNumber
  236. ,issuingCountry
  237. ,expiryDate
  238. ,permanentAddress
  239. ,country
  240. ,city
  241. ,state
  242. ,zip
  243. ,phone
  244. ,fax
  245. ,mobile1
  246. ,mobile2
  247. ,email
  248. ,position
  249. ,shareHolding
  250. ,createdBy
  251. ,createdDate
  252. ,isDeleted '
  253. EXEC dbo.proc_paging
  254. @table
  255. ,@sql_filter
  256. ,@select_field_list
  257. ,@extra_field_list
  258. ,@sortBy
  259. ,@sortOrder
  260. ,@pageSize
  261. ,@pageNumber
  262. END
  263. END TRY
  264. BEGIN CATCH
  265. IF @@TRANCOUNT > 0
  266. ROLLBACK TRANSACTION
  267. DECLARE @errorMessage VARCHAR(MAX)
  268. SET @errorMessage = ERROR_MESSAGE()
  269. EXEC proc_errorHandler 1, @errorMessage, @aoiId
  270. END CATCH
  271. GO