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.

387 lines
21 KiB

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