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.

232 lines
7.7 KiB

1 year ago
  1. CREATE PROC [dbo].[PROC_WSB_PAYMENT_STOP]
  2. (
  3. @Flag VARCHAR(30) = NULL
  4. ,@rowId BIGINT = NULL
  5. ,@stopType VARCHAR(6) = NULL
  6. ,@requestData NVARCHAR(MAX) = NULL
  7. ,@requestDate DATETIME = NULL
  8. ,@responseData NVARCHAR(MAX) = NULL
  9. ,@responseDate DATETIME = NULL
  10. ,@dataLen NUMERIC(4) = NULL
  11. ,@orgtId VARCHAR(10) = NULL
  12. ,@srvcDs VARCHAR(6) = NULL
  13. ,@trxTypeCd VARCHAR(4) = NULL
  14. ,@rspsCd VARCHAR(4) = NULL
  15. ,@tlgSeqNo NUMERIC(10) = NULL
  16. ,@TlgSendHur VARCHAR(14) = NULL
  17. ,@filler NVARCHAR(MAX) = NULL
  18. ,@prcsSeqNo VARCHAR(18) = NULL
  19. ,@vtulAccNo VARCHAR(20) = NULL
  20. ,@maccNo VARCHAR(20) = NULL
  21. ,@vctmAmt NUMERIC(15) = NULL
  22. ,@rqmtSendOc VARCHAR(14) = NULL
  23. ,@depoSendOc VARCHAR(14) = NULL
  24. ,@vctmNm NVARCHAR(20) = NULL
  25. ,@vctmBrthDt VARCHAR(8) = NULL
  26. ,@vctmTelNo VARCHAR(12) = NULL
  27. ,@vctmAddr NVARCHAR(MAX) = NULL
  28. ,@vctmRqstResn NVARCHAR(MAX) = NULL
  29. ,@ripsNm NVARCHAR(MAX) = NULL
  30. ,@paymStopAmt NUMERIC(15) = NULL
  31. ,@paymStopOc VARCHAR(14) = NULL
  32. ,@filler1 NVARCHAR(MAX) = NULL
  33. ,@sortBy VARCHAR(50) = NULL
  34. ,@sortOrder VARCHAR(5) = NULL
  35. ,@pageSize INT = NULL
  36. ,@pageNumber INT = NULL
  37. ,@user VARCHAR(50) = NULL
  38. )
  39. AS
  40. SET NOCOUNT ON;
  41. SET XACT_ABORT ON;
  42. BEGIN TRY
  43. DECLARE @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. ,@errorMsg VARCHAR(MAX)
  49. ,@bankName VARCHAR(100)
  50. ,@userType VARCHAR(5)
  51. ,@custIdNumber VARCHAR(50)
  52. ,@customerGuid VARCHAR(50)
  53. IF @flag='ilog'
  54. BEGIN
  55. BEGIN TRANSACTION
  56. /*new tlgSeqNo generator*/
  57. -- IF @trxTypeCd='0210'
  58. -- BEGIN
  59. -- DECLARE @NewValue VARCHAR(10)
  60. -- SET @NewValue= NEXT VALUE FOR dbo.WSB_SEQUENCE
  61. -- SET @tlgSeqNo=(SELECT CONVERT(VARCHAR(6), GETDATE(), 12)) +@NewValue
  62. -- SET @TlgSendHur=(SELECT FORMAT(GETDATE(),'yyyyMMddHHmmss'))
  63. --END
  64. INSERT INTO dbo.WSB_PAYMENT_STOP
  65. (
  66. stopType, requestData, requestDate, responseData, responseDate, dataLen, orgtId,
  67. srvcDs, trxTypeCd, rspsCd, tlgSeqNo, TlgSendHur, filler, prcsSeqNo,
  68. vtulAccNo, maccNo, vctmAmt, rqmtSendOc, depoSendOc, vctmNm, vctmBrthDt,
  69. vctmTelNo, vctmAddr, vctmRqstResn, ripsNm, paymStopAmt, paymStopOc, filler1
  70. )
  71. VALUES
  72. (
  73. /*stopType : Notification: VT0301, Response: VT0302 */
  74. @srvcDs, @requestData, GETDATE(), @responseData, CASE WHEN @responseData=N'' THEN NULL ELSE GETDATE() END , @dataLen, @orgtId,
  75. @srvcDs, @trxTypeCd, @rspsCd, @tlgSeqNo, @TlgSendHur, @filler, @prcsSeqNo,
  76. @vtulAccNo, @maccNo, @vctmAmt, @rqmtSendOc, @depoSendOc, @vctmNm, @vctmBrthDt,
  77. @vctmTelNo, @vctmAddr, @vctmRqstResn, @ripsNm, @paymStopAmt, @paymStopOc, @filler1
  78. )
  79. SET @rowId = @@IDENTITY
  80. IF @trxTypeCd='0200'
  81. BEGIN
  82. UPDATE dbo.customerMaster SET isActive='N' WHERE walletAccountNo=@vtulAccNo
  83. /*sms send to our team */
  84. INSERT INTO KT_SMS.dbo.SDK_SMS_SEND
  85. (
  86. USER_ID, SCHEDULE_TYPE, SUBJECT, SMS_MSG, NOW_DATE, SEND_DATE, CALLBACK, DEST_INFO
  87. )
  88. SELECT 'globalmoney',0,'Notice','WSB Bank Payment stop notification. Customer Wallent No '+CAST(@vtulAccNo AS VARCHAR)
  89. ,FORMAT(GETDATE(),'yyyyMMddHHmmss'),FORMAT(GETDATE(),'yyyyMMddHHmmss'),'1588-6864','GME^'+'01039333964'
  90. UNION ALL
  91. SELECT 'globalmoney',0,'Notice','WSB Bank Payment stop notification. Customer Wallent No '+CAST(@vtulAccNo AS VARCHAR)
  92. ,FORMAT(GETDATE(),'yyyyMMddHHmmss'),FORMAT(GETDATE(),'yyyyMMddHHmmss'),'1588-6864','GME^'+'01039333964'
  93. END
  94. IF @@TRANCOUNT > 0
  95. COMMIT TRANSACTION
  96. SELECT 0 as code , 'Record saved successfully' message ,@rowId id
  97. END
  98. IF @flag='ulog'
  99. BEGIN
  100. BEGIN TRANSACTION
  101. UPDATE WSB_PAYMENT_STOP
  102. SET responseData = @ResponseData
  103. ,responseDate = GETDATE()
  104. --,prcsSeqNo = @prcsSeqNo
  105. --,vtulAccNo = @vtulAccNo
  106. --,maccNo = @maccNo
  107. --,vctmAmt = @vctmAmt
  108. --,rqmtSendOc = @rqmtSendOc
  109. --,depoSendOc = @depoSendOc
  110. --,vctmNm = @vctmNm
  111. --,vctmBrthDt = @vctmBrthDt
  112. --,vctmTelNo = @vctmTelNo
  113. --,vctmAddr = @vctmAddr
  114. --,vctmRqstResn = @vctmRqstResn
  115. --,ripsNm = @ripsNm
  116. --,paymStopAmt = @paymStopAmt
  117. --,paymStopOc = @paymStopOc
  118. --,filler1 = @filler1
  119. WHERE rowId=@rowId
  120. COMMIT TRANSACTION
  121. SELECT 0 as code , 'Record saved successfully' message ,@rowId id
  122. END
  123. IF @Flag='details'
  124. BEGIN
  125. SELECT dataLen, orgtId, srvcDs, '0210' AS trxTypeCd, ISNULL(rspsCd,'0000') AS rspsCd,
  126. tlgSeqNo, TlgSendHur, filler, prcsSeqNo, vtulAccNo,
  127. maccNo, vctmAmt, rqmtSendOc, depoSendOc, vctmNm,
  128. vctmBrthDt, vctmTelNo, vctmAddr, vctmRqstResn, cm.firstName AS ripsNm,
  129. CAST(cm.availableBalance AS INT ) AS paymStopAmt,
  130. FORMAT(GETDATE(),'yyyyMMddHHmmss') as paymStopOc,
  131. filler1
  132. FROM WSB_PAYMENT_STOP (NOLOCK) ps
  133. INNER JOIN dbo.customerMaster (NOLOCK) cm ON cm.walletAccountNo=ps.vtulAccNo
  134. WHERE rowId=@rowId
  135. RETURN
  136. END
  137. IF @flag = 'customer-list'
  138. BEGIN
  139. IF @sortBy IS NULL
  140. SET @sortBy = 'prcsSeqNo'
  141. IF @sortOrder IS NULL
  142. SET @sortOrder = 'DESC'
  143. SET @table = '(
  144. SELECT rowid,prcsSeqNo
  145. ,vtulAccNo
  146. ,maccNo
  147. ,vctmAmt
  148. ,rqmtSendOc,depoSendOc,vctmNm,vctmBrthDt
  149. ,vctmTelNo,vctmAddr
  150. ,vctmRqstResn
  151. ,cm.firstName ripsNm
  152. ,ISNULL(paymStopAmt,''0'') paymStopAmt
  153. ,FORMAT(GETDATE(),''yyyyMMddHHmmss'') as paymStopOc
  154. ,filler1
  155. FROM WSB_PAYMENT_STOP (NOLOCK) wps
  156. INNEr JOIN dbo.customerMaster (NOLOCK) cm ON cm.walletAccountNo=wps.vtulAccNo
  157. WHERE cm.isActive =''N'' AND wps.trxTypeCd=''0200'' AND wps.srvcDs=''VT0301'' '
  158. SET @table=@table+')x'
  159. SET @sql_filter = ''
  160. IF @prcsSeqNo IS NOT NULL
  161. SET @sql_filter += ' AND prcsSeqNo like ''' + @prcsSeqNo+ '%''';
  162. SET @select_field_list ='rowid,prcsSeqNo
  163. ,vtulAccNo
  164. ,maccNo
  165. ,vctmAmt
  166. ,rqmtSendOc,depoSendOc,vctmNm,vctmBrthDt
  167. ,vctmTelNo,vctmAddr
  168. ,vctmRqstResn, ripsNm
  169. ,paymStopAmt
  170. , paymStopOc
  171. ,filler1'
  172. EXEC dbo.proc_paging
  173. @table
  174. ,@sql_filter
  175. ,@select_field_list
  176. ,@extra_field_list
  177. ,@sortBy
  178. ,@sortOrder
  179. ,@pageSize
  180. ,@pageNumber
  181. RETURN
  182. END
  183. IF @Flag='senddetails'
  184. BEGIN
  185. SELECT dataLen, orgtId, 'VT0302' AS srvcDs, '0200' AS trxTypeCd, ISNULL(rspsCd,'0000') AS rspsCd,
  186. tlgSeqNo, TlgSendHur, filler, prcsSeqNo, vtulAccNo,
  187. maccNo, vctmAmt, rqmtSendOc, cm.firstName AS ripsNm, paymStopAmt,
  188. paymStopOc
  189. FROM WSB_PAYMENT_STOP (NOLOCK)ps
  190. INNER JOIN dbo.customerMaster (NOLOCK) cm ON cm.walletAccountNo=ps.vtulAccNo
  191. WHERE rowId=@rowId
  192. RETURN
  193. END
  194. IF @flag='paymentStop'
  195. BEGIN
  196. UPDATE dbo.customerMaster SET isActive='N',modifiedBy=@user
  197. WHERE walletAccountNo=@vtulAccNo
  198. SELECT 0 as code , 'Customer block successfully' message ,@vtulAccNo id
  199. END
  200. END TRY
  201. BEGIN CATCH
  202. IF @@TRANCOUNT > 0
  203. ROLLBACK TRANSACTION
  204. DECLARE @errorMessage VARCHAR(MAX)
  205. SET @errorMessage = ERROR_MESSAGE()
  206. EXEC proc_errorHandler 1, @errorMessage, NULL
  207. END CATCH