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.

359 lines
20 KiB

12 months ago
9 months ago
12 months ago
11 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
9 months ago
12 months ago
12 months ago
11 months ago
10 months ago
12 months ago
9 months ago
9 months ago
12 months ago
9 months ago
9 months ago
12 months ago
9 months ago
12 months ago
9 months ago
12 months ago
9 months ago
12 months ago
9 months ago
12 months ago
9 months ago
12 months ago
9 months ago
12 months ago
9 months ago
12 months ago
9 months ago
9 months ago
9 months ago
12 months ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[PROC_TP_TXN_PUSH] Script Date: 1/8/2024 9:01:08 AM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. --EXEC PROC_TP_TXN_PUSH @FLAG = 'GET-LIST'
  9. ALTER PROC [dbo].[PROC_TP_TXN_PUSH] (
  10. @FLAG VARCHAR(30)
  11. ,@TRAN_ID BIGINT = NULL
  12. ,@PROVIDER VARCHAR(30) = NULL
  13. ,@doSyncAll CHAR(1) = NULL
  14. ,@statusDate DATETIME = NULL
  15. ,@message VARCHAR(500) = NULL
  16. ,@status VARCHAR(100) = NULL
  17. ,@user VARCHAR(20) = NULL
  18. ,@pCurrCostRate float =NULL
  19. )
  20. AS
  21. SET NOCOUNT ON;
  22. SET XACT_ABORT ON;
  23. -- =============================================
  24. --Modified on: 2021/08/03 -> status date for Dongav2
  25. -- remove NEW_PAID_TRACK
  26. --Change Request #394 ->Remove Instant Pay for during ProcessBank Deposit
  27. -- Add BOC
  28. -- Brac
  29. --EXEC PROC_TP_TXN_PUSH @flag='add-api-comment',@PROVIDER = 'bracBank',@TRANID = '100644605',@ControlNo = '211298008',@message = 'Cancellation Completed',@status = '407'
  30. --Added new @Flag = 'INSTANT-PAID_V2' for manual pay
  31. -- =============================================
  32. BEGIN
  33. IF ISDATE(@statusDate) = 0
  34. SET @statusDate = NULL
  35. DECLARE @CONTROLNO VARCHAR(30)
  36. ,@TRANDATE VARCHAR(30)
  37. ,@customerId VARCHAR(200)
  38. IF @FLAG = 'GET-LIST'
  39. BEGIN
  40. SELECT ID
  41. ,CONTROLNO = DBO.DECRYPTDB(rt.CONTROLNO) --+ DATEPART(SS,GETDATE())
  42. ,PAYMENTMETHOD
  43. ,PCOUNTRY
  44. ,rt.CREATEDDATE
  45. ,pbankname
  46. ,pbank
  47. ,pAmt
  48. FROM REMITTRAN(NOLOCK) rt
  49. LEFT JOIN tranModifyLog (NOLOCK) tml ON tml.tranId = rt.id
  50. WHERE 1 = 1
  51. AND payStatus = 'unpaid'
  52. AND tranStatus = 'Payment'
  53. AND rt.CREATEDDATE >= '2020-02-15'
  54. AND PSUPERAGENT IN (
  55. 394397 , 394449
  56. )
  57. AND (tml.status = 'Resolved' OR tml.status IS NULL)
  58. --AND rt.controlNo = dbo.FNAEncryptString('779196448242') -- 779115703741
  59. ORDER BY ID DESC
  60. -- update remitTran set tranStatus='Payment', payStatus='unpaid' where controlNo = dbo.FNAEncryptString('211744466')
  61. END
  62. ELSE IF @FLAG = 'UPDATE-POST'
  63. BEGIN
  64. UPDATE dbo.remitTran
  65. SET payStatus = 'POST'
  66. ,postedBy = 'Scheduler'
  67. ,postedDate = GETDATE()
  68. ,postedDateLocal = GETDATE()
  69. ,pDateCostRate=@pCurrCostRate
  70. WHERE id = @TRAN_ID
  71. END
  72. ELSE IF @FLAG = 'mark-paid'
  73. BEGIN
  74. DECLARE @statusDateOld DATETIME = CAST(@statusDate AS DATETIME)
  75. --IF @PROVIDER = 'jmenepal'
  76. -- AND @statusDate IS NOT NULL
  77. -- SET @statusDate = DATEADD(HOUR, - 5, DATEADD(MINUTE, - 45, @statusDate))
  78. IF @PROVIDER = 'gmenepal'
  79. AND @statusDate IS NOT NULL
  80. SET @statusDate = DATEADD(HOUR, - 5, DATEADD(MINUTE, - 45, @statusDate))
  81. ELSE IF @PROVIDER = 'gccremit'
  82. AND @statusDate IS NOT NULL
  83. SET @statusDate = DATEADD(HOUR, - 5, DATEADD(MINUTE, - 45, @statusDate))
  84. UPDATE dbo.remitTran
  85. SET tranStatus = 'Paid'
  86. ,payStatus = 'Paid'
  87. ,paidBy = 'Scheduler'
  88. ,paidDate = ISNULL(DATEADD(HOUR, + 9, @statusDate), GETDATE())
  89. ,paidDateLocal = ISNULL(@statusDate, DATEADD(HOUR, - 9, GETDATE())) -- GMT FORMAT
  90. WHERE id = @TRAN_ID
  91. SELECT @CONTROLNO = DBO.DECRYPTDB(CONTROLNO)
  92. ,@TRANDATE = PAIDDATE
  93. FROM dbo.remitTran(NOLOCK)
  94. WHERE id = @TRAN_ID
  95. UPDATE tranModifyLog set resolvedBy='Scheduler', resolvedDate=GETDATE(), status='Resolved' WHERE tranId=@TRAN_ID and fieldname='STATUS_SYNC'
  96. DECLARE @senderId INT;
  97. SELECT @senderId=customerId FROM dbo.transenders (NOLOCK)
  98. WHERE tranId = @TRAN_ID
  99. PRINT @senderId
  100. PRINT @TRAN_ID
  101. EXEC proc_InsertRewardPoints @Flag = 'TRANSACTION', @CustomerId = @senderId, @TranId = @TRAN_ID
  102. EXEC FASTMONEYPRO_ACCOUNT.DBO.PROC_TRANSACTION_PAID_VOUCHER_ENTRY @controlNo = @CONTROLNO
  103. ,@tranDate = @TRANDATE
  104. --IF EXISTS(SELECT 1 FROM FASTMONEYPRO_ACCOUNT.DBO.TRAN_MASTER (NOLOCK) WHERE FIELD1 = @controlNo AND tran_type = 'j' AND FIELD2 = 'Remittance Voucher'
  105. -- AND ISNULL(ACCT_TYPE_CODE, 'Send') = 'Paid')
  106. --BEGIN
  107. -- UPDATE FASTMONEYPRO_ACCOUNT.DBO.TRAN_MASTER SET TRAN_DATE = @TRANDATE
  108. -- WHERE FIELD1 = @controlNo
  109. -- AND tran_type = 'j'
  110. -- AND FIELD2 = 'Remittance Voucher'
  111. -- AND ISNULL(ACCT_TYPE_CODE, 'Send') = 'Paid'
  112. --END
  113. END
  114. ELSE IF @FLAG = 'sync-list'
  115. BEGIN
  116. IF ISNULL(@doSyncAll, 'N') = 'N'
  117. BEGIN
  118. IF @PROVIDER = 'gccremit'
  119. BEGIN
  120. SELECT TOP 75 id
  121. ,controlNo = DBO.DECRYPTDB(CONTROLNO)
  122. ,pSuperAgent
  123. ,PCOUNTRY
  124. ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
  125. ,createdDate
  126. ,paymentMethod
  127. FROM REMITTRAN(NOLOCK)
  128. WHERE 1 = 1
  129. AND CREATEDDATE >= '2020-02-15'
  130. AND payStatus = 'Post'
  131. AND TRANSTATUS = 'Payment'
  132. AND PSUPERAGENT = 394449
  133. ORDER BY ID DESC
  134. --AND id=dbo.fnaencryptstring('211517849')
  135. END
  136. ELSE IF @PROVIDER = 'transfast'
  137. BEGIN
  138. SELECT TOP 50 id
  139. ,controlNo = DBO.DECRYPTDB(CONTROLNO)
  140. ,pSuperAgent
  141. ,PCOUNTRY
  142. ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
  143. ,createdDate
  144. ,paymentMethod
  145. FROM REMITTRAN(NOLOCK)
  146. WHERE 1 = 1
  147. AND CREATEDDATE >= '2020-02-15'
  148. --AND PCOUNTRY NOT IN ('NEPAL','VIETNAM')
  149. AND payStatus = 'Post'
  150. AND TRANSTATUS = 'Payment'
  151. AND PSUPERAGENT = 394130
  152. --AND ID NOT IN (SELECT TRAN_ID FROM NEW_PAID_TRACK_NEW)
  153. --AND id = 100466789
  154. --AND CONTROLNO = DBO.FNAENCRYPTSTRING('33TF001950961')
  155. ORDER BY ID DESC
  156. END
  157. ELSE IF @PROVIDER = 'gmenepal'
  158. BEGIN
  159. SELECT TOP 75 id
  160. ,controlNo = DBO.DECRYPTDB(CONTROLNO)
  161. ,pSuperAgent
  162. ,PCOUNTRY
  163. ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
  164. ,createdDate
  165. ,paymentMethod
  166. FROM REMITTRAN(NOLOCK)
  167. WHERE 1 = 1
  168. AND CREATEDDATE >= '2020-02-15'
  169. AND payStatus = 'Post'
  170. AND TRANSTATUS = 'Payment'
  171. AND PSUPERAGENT = 394397
  172. ORDER BY ID DESC
  173. END
  174. END
  175. ELSE
  176. BEGIN
  177. IF @PROVIDER = 'transfast'
  178. BEGIN
  179. SELECT id
  180. ,controlNo = DBO.DECRYPTDB(CONTROLNO)
  181. ,pSuperAgent
  182. ,PCOUNTRY
  183. ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
  184. ,paymentMethod
  185. FROM REMITTRAN(NOLOCK)
  186. WHERE 1 = 1
  187. AND CREATEDDATE >= '2020-03-31'
  188. AND payStatus = 'Post'
  189. AND TRANSTATUS = 'Payment'
  190. AND PSUPERAGENT = 394130
  191. END
  192. ELSE IF @PROVIDER = 'gmenepal'
  193. BEGIN
  194. SELECT id
  195. ,controlNo = DBO.DECRYPTDB(CONTROLNO)
  196. ,pSuperAgent
  197. ,PCOUNTRY
  198. ,partnerPin = DBO.DECRYPTDB(CONTROLNO)
  199. ,createdDate
  200. ,paymentMethod
  201. FROM REMITTRAN(NOLOCK)
  202. WHERE 1 = 1
  203. AND CREATEDDATE >= '2020-02-15'
  204. AND payStatus = 'Post'
  205. AND TRANSTATUS = 'Payment'
  206. AND PSUPERAGENT = 394397
  207. ORDER BY ID DESC
  208. END
  209. END
  210. END
  211. ELSE IF @Flag = 'GET-RELEASE-LIST'
  212. BEGIN
  213. SELECT ID
  214. ,CONTROLNO = DBO.DECRYPTDB(CONTROLNO)
  215. ,PAYMENTMETHOD
  216. ,PCOUNTRY
  217. ,CREATEDDATE
  218. ,pbankname
  219. ,pbank
  220. ,sSuperAgent = pSuperAgent
  221. ,[partner] = 'transfast'
  222. ,pagentcomm
  223. FROM REMITTRAN(NOLOCK)
  224. WHERE 1 = 1
  225. AND CREATEDDATE >= '2020-03-31'
  226. AND payStatus = 'unpaid'
  227. AND tranStatus = 'Payment'
  228. AND PSUPERAGENT = 394130
  229. END
  230. ELSE IF @Flag = 'INSTANT-PAID'
  231. BEGIN
  232. --UPDATE dbo.remitTran SET tranStatus = 'Paid',
  233. -- payStatus = 'Paid',
  234. -- paidBy = 'Scheduler',
  235. -- paidDate = GETDATE(),
  236. -- paidDateLocal = DATEADD(HOUR, -9, GETDATE()) -- GMT FORMAT
  237. --WHERE id = @TRAN_ID
  238. --SELECT @CONTROLNO = DBO.DECRYPTDB(CONTROLNO),
  239. -- @TRANDATE = PAIDDATE
  240. --FROM dbo.remitTran (NOLOCK)
  241. --WHERE id = @TRAN_ID
  242. --EXEC FASTMONEYPRO_ACCOUNT.DBO.PROC_TRANSACTION_PAID_VOUCHER_ENTRY @controlNo = @CONTROLNO, @tranDate = @TRANDATE
  243. UPDATE dbo.remitTran
  244. SET payStatus = 'POST'
  245. ,postedBy = 'Scheduler'
  246. ,postedDate = GETDATE()
  247. ,postedDateLocal = GETDATE()
  248. WHERE id = @TRAN_ID
  249. END
  250. --ELSE IF @Flag = 'INSTANT-PAID'
  251. --BEGIN
  252. -- --UPDATE dbo.remitTran SET tranStatus = 'Paid',
  253. -- UPDATE dbo.remitTran
  254. -- SET payStatus = 'POST'
  255. -- ,postedBy = 'Scheduler'
  256. -- ,postedDate = GETDATE()
  257. -- ,postedDateLocal = GETDATE()
  258. -- WHERE id = @TRAN_ID
  259. --END
  260. ELSE IF @Flag = 'add-api-comment'
  261. BEGIN
  262. SELECT @CONTROLNO = (CONTROLNO)
  263. ----,@TRANDATE = PAIDDATE
  264. FROM dbo.remitTran(NOLOCK)
  265. WHERE id = @TRAN_ID
  266. IF NOT EXISTS (
  267. SELECT *
  268. FROM tranModifyLog
  269. WHERE tranId = @TRAN_ID
  270. AND fieldName = 'STATUS_SYNC'
  271. AND ISNULL(oldValue,'') = @status
  272. )
  273. BEGIN
  274. INSERT INTO tranModifyLog (
  275. tranId
  276. ,controlNo
  277. ,message
  278. ,createdBy
  279. ,createdDate
  280. ,MsgType
  281. ,STATUS
  282. ,needToSync
  283. ,fieldName
  284. ,oldValue
  285. )
  286. SELECT @TRAN_ID
  287. ,@CONTROLNO
  288. ,@message
  289. ,ISNULL(@user,'syncApi')
  290. ,GETDATE()
  291. ,'C'
  292. ,'Not Resolved'
  293. ,1
  294. ,'STATUS_SYNC'
  295. ,@status
  296. END
  297. ELSE
  298. BEGIN
  299. UPDATE tranModifyLog set message= @message, createdDate= GETDATE() WHERE tranId = @TRAN_ID AND fieldName = 'STATUS_SYNC'
  300. AND ISNULL(oldValue,'') = @status
  301. END
  302. SELECT '0' ErrorCode, 'Comment Added' Msg, 0 Id
  303. END
  304. ELSE IF @Flag = 'INSTANT-PAID_V2'
  305. BEGIN
  306. IF EXISTS ( SELECT 'X' FROM remitTran where id = @TRAN_ID and tranStatus in ('Cancel','Paid'))
  307. BEGIN
  308. SELECT '0' ErrorCode, 'Invalid Transaction Status!' Msg, 0 Id
  309. RETURN
  310. END
  311. SELECT @customerId = customerId FROM tranSenders WHERE tranId = @TRAN_ID
  312. UPDATE dbo.remitTran SET tranStatus = 'Paid',
  313. payStatus = 'Paid',
  314. paidBy = 'Manual',
  315. paidDate =DATEADD(MI,10,approvedDate),
  316. paidDateLocal = DATEADD(HOUR, 1, GETDATE()) -- GMT FORMAT
  317. WHERE id = @TRAN_ID and (tranStatus <> 'CANCEL' OR payStatus <> 'PAID')
  318. EXEC proc_InsertRewardPoints @Flag = 'TRANSACTION', @CustomerId = @customerId, @TranId = @TRAN_ID
  319. SELECT '0' ErrorCode, 'Transaction paid successfully' Msg, 0 Id
  320. END
  321. END
  322. --CREATE TABLE NEW_PAID_TRACK
  323. --(
  324. -- TRAN_ID BIGINT
  325. -- ,PARTNER_NAME VARCHAR(50)
  326. -- ,PAIDDATE DATETIME
  327. -- ,PAIDDATE_LOCAL DATETIME
  328. -- ,ORIGINAL_DATE DATETIME
  329. --)