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.

217 lines
6.5 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_RSPTXN_report] Script Date: 7/4/2019 11:35:48 AM ******/
  4. DROP PROCEDURE [dbo].[proc_RSPTXN_report]
  5. GO
  6. /****** Object: StoredProcedure [dbo].[proc_RSPTXN_report] 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_RSPTXN_report]
  12. @flag VARCHAR(10) = NULL
  13. ,@user VARCHAR(30) = NULL
  14. ,@pCountry VARCHAR(100)= NULL
  15. ,@pAgent VARCHAR(40) = NULL
  16. ,@pBranch VARCHAR(40) = NULL
  17. ,@sBranch VARCHAR(40) = NULL
  18. ,@depositType VARCHAR(40) = NULL
  19. ,@searchBy VARCHAR(40) = NULL
  20. ,@searchByValue VARCHAR(40) = NULL
  21. ,@orderBy VARCHAR(40) = NULL
  22. ,@status VARCHAR(40) = NULL
  23. ,@paymentType VARCHAR(40) = NULL
  24. ,@dateField VARCHAR(50) = NULL
  25. ,@dateFrom VARCHAR(20) = NULL
  26. ,@dateTo VARCHAR(20) = NULL
  27. ,@transType VARCHAR(40) = NULL
  28. ,@displayTranNo CHAR(1) = NULL
  29. ,@pageNumber INT = NULL
  30. ,@pageSize INT = NULL
  31. ,@rptType CHAR(1) = NULL
  32. AS
  33. SET NOCOUNT ON;
  34. IF OBJECT_ID('tempdb..#listBranch') IS NOT NULL
  35. DROP TABLE #listBranch
  36. DECLARE @SQL VARCHAR(MAX),@userType varchar(2),@regionalBranchId INT,@branchId INT,@parentId INT,@agetntType varchar(5)
  37. CREATE TABLE #listBranch (branchId INT,branchName VARCHAR(200))
  38. SELECT @userType = usertype,@regionalBranchId = agentId
  39. FROM applicationUsers WITH(NOLOCK) WHERE userName = @user
  40. IF @userType = 'RH'
  41. BEGIN
  42. SELECT @parentId = B.agentId, @agetntType = B.agentType FROM agentMaster B WITH (NOLOCK)
  43. INNER JOIN applicationUsers AU WITH (NOLOCK) ON B.agentId=AU.agentId WHERE AU.userName = @user
  44. IF @agetntType = 2903
  45. BEGIN
  46. INSERT INTO #listBranch
  47. SELECT agentId, agentName
  48. FROM agentMaster WITH(NOLOCK)
  49. WHERE parentId = @parentId
  50. AND ISNULL(isDeleted, 'N') = 'N'
  51. AND ISNULL(isActive, 'N') = 'Y'
  52. AND agentId = ISNULL(@sBranch, agentId)
  53. ORDER BY agentName
  54. END
  55. ELSE IF @agetntType = 2904
  56. BEGIN
  57. SELECT @parentId = parentId FROM agentMaster(NOLOCK) WHERE agentId = @parentId and agentType = 2904
  58. SELECT agentId, agentName FROM agentMaster WITH(NOLOCK)
  59. WHERE parentId = @parentId
  60. AND ISNULL(isDeleted, 'N') = 'N'
  61. AND ISNULL(isActive, 'N') = 'Y'
  62. AND agentId = ISNULL(1056, agentId)
  63. ORDER BY agentName
  64. END
  65. END
  66. ELSE IF @userType ='HO'
  67. BEGIN
  68. INSERT INTO #listBranch
  69. SELECT b.agentId branchId, b.agentName branchName
  70. FROM agentMaster a WITH(NOLOCK)
  71. INNER JOIN agentMaster b WITH(NOLOCK) ON b.parentId = a.agentId
  72. WHERE ISNULL(b.isDeleted, 'N') <> 'Y'
  73. AND b.agentType = '2904'
  74. AND ISNULL(a.isActive, 'N') = 'Y'
  75. AND a.isInternal ='Y'
  76. AND b.agentId=ISNULL(@sBranch,b.agentId)
  77. END
  78. ELSE IF @userType ='AH'
  79. BEGIN
  80. SELECT @parentId = B.agentId, @agetntType = B.agentType FROM agentMaster B WITH (NOLOCK)
  81. INNER JOIN applicationUsers AU WITH (NOLOCK) ON B.agentId=AU.agentId WHERE AU.userName = @user
  82. IF @agetntType = 2903
  83. BEGIN
  84. INSERT INTO #listBranch
  85. SELECT agentId, agentName
  86. FROM agentMaster WITH(NOLOCK)
  87. WHERE parentId = @parentId
  88. AND ISNULL(isDeleted, 'N') = 'N'
  89. AND ISNULL(isActive, 'N') = 'Y'
  90. AND agentId = ISNULL(@sBranch, agentId)
  91. ORDER BY agentName
  92. END
  93. ELSE IF @agetntType = 2904
  94. BEGIN
  95. SELECT @parentId = parentId FROM agentMaster(NOLOCK) WHERE agentId = @parentId and agentType = 2904
  96. SELECT agentId, agentName FROM agentMaster WITH(NOLOCK)
  97. WHERE parentId = @parentId
  98. AND ISNULL(isDeleted, 'N') = 'N'
  99. AND ISNULL(isActive, 'N') = 'Y'
  100. AND agentId = ISNULL(1056, agentId)
  101. ORDER BY agentName
  102. END
  103. END
  104. ELSE
  105. BEGIN
  106. INSERT INTO #listBranch
  107. SELECT agentId , agentName
  108. FROM agentMaster a WITH(NOLOCK) WHERE agentId=@regionalBranchId
  109. END
  110. IF @sBranch IS NOT NULL
  111. DELETE FROM #listBranch WHERE branchId <> @sBranch
  112. DECLARE @FilterList TABLE(head VARCHAR(50), value VARCHAR(5000))
  113. IF @sBranch IS NOT NULL
  114. INSERT INTO @FilterList
  115. SELECT
  116. 'Branch Name', agentName
  117. FROM agentMaster WITH(NOLOCK) WHERE agentId = @sBranch
  118. IF @searchByValue IS NOT NULL AND @searchBy IS NOT NULL
  119. BEGIN
  120. INSERT INTO @FilterList
  121. SELECT
  122. CASE @searchBy
  123. WHEN 'cid' THEN 'Customer ID'
  124. WHEN 'sName' THEN 'Sender Name'
  125. WHEN 'rName' THEN 'Receiver Name'
  126. WHEN 'icn' THEN 'Control No'
  127. END
  128. ,@searchByValue
  129. END
  130. IF @rptType = 'p'
  131. BEGIN
  132. INSERT INTO @FilterList
  133. SELECT 'Date Type', 'Paid Date'
  134. SELECT
  135. [BRN NO] = '<a href="../AgentPanel/SearchTxnReport/SearchTransaction.aspx?commentFlag=N&showBankDetail=N&tranId='+CAST(ID AS VARCHAR)+'">'+DBO.FNADECRYPTSTRING(CONTROLNO)+'</a>'
  136. ,[DATE_SEND] = approvedDate
  137. ,[DATE_PAID] = paidDate
  138. ,[SENDER NAME] = senderName
  139. ,[RECEIVER NAME]= receiverName
  140. ,[EX-RATE] = customerRate
  141. ,[PAYMENT TYPE] = paymentMethod
  142. ,[COLLECTED_AMT] = cAmt
  143. ,[COLLECTED_CURR] = collCurr
  144. ,[SEND_AMT] = tAmt
  145. ,[SEND_CURR] = collCurr
  146. ,[CHARGE_CURR] = serviceCharge
  147. ,[CHARGE_CURR] = collCurr
  148. ,[RECEIVED_AMT] = pAmt
  149. ,[RECEIVED_CURR] = collCurr
  150. ,[USER_SEND] = approvedBy
  151. ,[USER_RECEIVED]= paidBy
  152. ,TRANSTATUS = transtatus
  153. ,PAYSTATUS = PAYSTATUS
  154. FROM REMITTRAN RT(NOLOCK)
  155. INNER JOIN #listBranch T ON T.branchId = RT.pBranch
  156. WHERE paidDate BETWEEN @dateFrom AND @dateTo+' 23:59:59'
  157. AND payStatus = ISNULL(@status,payStatus)
  158. AND transtatus = ISNULL(@transType,transtatus)
  159. AND paymentMethod = ISNULL(@paymentType,paymentMethod)
  160. END
  161. ELSE IF @rptType = 's'
  162. BEGIN
  163. INSERT INTO @FilterList
  164. SELECT 'Date Type', 'Send Date'
  165. SELECT
  166. [BRN NO] = '<a href="../AgentPanel/SearchTxnReport/SearchTransaction.aspx?commentFlag=N&showBankDetail=N&tranId='+CAST(ID AS VARCHAR)+'">'+DBO.FNADECRYPTSTRING(CONTROLNO)+'</a>'
  167. ,[DATE_SEND] = approvedDate
  168. ,[DATE_PAID] = paidDate
  169. ,[SENDER NAME] = senderName
  170. ,[RECEIVER NAME]= receiverName
  171. ,[EX-RATE] = customerRate
  172. ,[PAYMENT TYPE] = paymentMethod
  173. ,[COLLECTED_AMT] = cAmt
  174. ,[COLLECTED_CURR] = collCurr
  175. ,[SEND_AMT] = tAmt
  176. ,[SEND_CURR] = collCurr
  177. ,[CHARGE_CURR] = serviceCharge
  178. ,[CHARGE_CURR] = collCurr
  179. ,[RECEIVED_AMT] = pAmt
  180. ,[RECEIVED_CURR]= collCurr
  181. ,[USER_SEND] = approvedBy
  182. ,[USER_RECEIVED]= paidBy
  183. ,TRANSTATUS = transtatus
  184. ,PAYSTATUS = PAYSTATUS
  185. FROM REMITTRAN RT(NOLOCK)
  186. INNER JOIN #listBranch T ON T.branchId = RT.sBranch
  187. WHERE approvedDate BETWEEN @dateFrom AND @dateTo+' 23:59:59'
  188. AND payStatus = ISNULL(@status,payStatus)
  189. AND transtatus = ISNULL(@transType,transtatus)
  190. AND paymentMethod = ISNULL(@paymentType,paymentMethod)
  191. END
  192. EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
  193. SELECT * FROM @FilterList
  194. SELECT 'TXN Report' title
  195. GO