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.

117 lines
10 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_thirdPartyTxnImport] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. /*
  9. IF EXISTS (SELECT 'x' FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[proc_thirdPartyTxnImport]') AND TYPE IN (N'P', N'PC'))
  10. DROP PROCEDURE [dbo].[proc_thirdPartyTxnImport]
  11. GO
  12. */
  13. /*
  14. SELECT COUNT(*) FROM remitTran
  15. SELECT COUNT(*) FROM [ThirdPaymentRemitTran]
  16. SELECT * FROM [ThirdPaymentRemitTran]
  17. DELETE FROM remitTran WHERE controlNo IN (SELECT dbo.FNAEncryptString(TRN_REF_NO) FROM [ThirdPaymentRemitTran])
  18. SELECT * FROM remitTran WHERE controlNo IN (SELECT dbo.FNAEncryptString(TRN_REF_NO) FROM [ThirdPaymentRemitTran])
  19. SELECT * FROM #tempTran
  20. EXEC proc_thirdPartyTxnImport
  21. */
  22. CREATE procEDURE [dbo].[proc_thirdPartyTxnImport]
  23. AS
  24. SET NOCOUNT ON;
  25. --return;
  26. IF OBJECT_ID('tempdb..#tempTran') IS NOT NULL
  27. DROP TABLE #tempTran
  28. DELETE FROM [ThirdPaymentRemitTran]
  29. FROM [ThirdPaymentRemitTran] T
  30. INNER JOIN
  31. remitTran rt ON rt.controlNo = dbo.FNAEncryptString(T.TRN_REF_NO)
  32. /*
  33. DELETE T
  34. from [ThirdPaymentRemitTran] T, remitTran M
  35. Where dbo.FNAEncryptString(T.TRN_REF_NO) = M.controlNo
  36. */
  37. SELECT dbo.FNAEncryptString(TRN_REF_NO) as controlNoEncrypted,* INTO #tempTran FROM [FastMoneyPro_remit].[dbo].[ThirdPaymentRemitTran] WITH(NOLOCK) WHERE TRN_TYPE IN ('Cash Pay', 'Cash Payment')
  38. --1. Main Table Insert------------------------------------------------------------------------------------------------------
  39. INSERT INTO remitTran(
  40. controlNo,customerRate,serviceCharge,handlingFee
  41. ,sAgentComm,sAgentCommCurrency,sSuperAgentComm,sSuperAgentCommCurrency
  42. ,pAgentComm,pAgentCommCurrency,pSuperAgentComm,pSuperAgentCommCurrency
  43. ,sSuperAgent,sSuperAgentName,sAgent,sAgentName,sBranch,sBranchName,sCountry
  44. ,pSuperAgent,pSuperAgentName
  45. ,pAgent,pAgentName
  46. ,pBranch,pBranchName,pCountry
  47. ,pState,pDistrict,pLocation,paymentMethod
  48. ,collCurr,tAmt,cAmt,pAmt,payoutCurr
  49. ,relWithSender,tranStatus,payStatus
  50. ,createdDate,createdDateLocal,createdBy,approvedBy,approvedDate,approvedDateLocal
  51. ,paidDate,paidDateLocal,paidBy
  52. ,tranType,oldSysTranNo
  53. )
  54. SELECT
  55. trn.controlNoEncrypted,NULL,0,0
  56. ,SC_S_AGENT,S_CURR,0,S_CURR
  57. ,pAgentComm = CASE WHEN SC_P_AGENT = 0 AND LEFT(TRN_REF_NO,2) <> 'MG' THEN (SELECT amount FROM dbo.FNAGetPayComm(NULL, NULL, NULL, 1002, 151, pb.agentLocation, pb.agentId, 'NPR', 1, S_AMT, P_AMT, NULL, NULL, NULL))
  58. ELSE SC_P_AGENT END
  59. ,'NPR',0,'NPR'
  60. ,4641,'International Agents',sa.agentId,sa.agentName,sb.agentId,sb.agentName,S_COUNTRY
  61. ,1002,'International Money Express (IME) Pvt. Ltd'
  62. ,ISNULL(pa.agentId, pb.agentId),ISNULL(pa.agentName, pb.agentName)
  63. ,pb.agentId,pb.agentName,'Nepal'
  64. ,pb.agentState,pb.agentDistrict,pb.agentLocation,'Cash Payment'
  65. ,S_CURR,FLOOR(S_AMT),FLOOR(S_AMT),FLOOR(P_AMT),'NPR'
  66. ,REL_WITH_SEN,'Paid','Paid'
  67. ,TRN_DATE,TRN_DATE,'I:' + APPROVE_BY,'I:' + APPROVE_BY,TRN_DATE,TRN_DATE
  68. ,PAID_DATE,PAID_DATE,PAIDBY
  69. ,'I',ROWID
  70. FROM #tempTran trn
  71. LEFT JOIN agentMaster sb WITH(NOLOCK) ON trn.S_BRANCH = sb.mapCodeInt
  72. LEFT JOIN agentMaster sa WITH(NOLOCK) ON trn.S_AGENT = sa.mapCodeInt
  73. --INNER JOIN agentMaster sa WITH(NOLOCK) ON sa.agentId = sb.parentId
  74. LEFT JOIN agentMaster pb WITH(NOLOCK) ON trn.P_BRANCH = pb.mapCodeInt AND (pb.agentType = 2904 OR pb.actAsBranch = 'Y')
  75. LEFT JOIN agentMaster pa WITH(NOLOCK) ON pa.agentId = pb.parentId AND pa.agentType = 2903
  76. --LEFT JOIN agentMaster pa WITH(NOLOCK) ON trn.P_AGENT = pa.mapCodeInt
  77. --2. Sender Information---------------------------------------------------------------------------------------------------------
  78. INSERT INTO tranSenders(
  79. tranId,firstName,[address],mobile,idType,idNumber
  80. )
  81. SELECT
  82. rt.id,SENDER_NAME,SENDER_ADDRESS,SENDER_PHONE,SENDER_ID_TYPE,SENDER_ID_NO
  83. FROM #tempTran trn
  84. INNER JOIN remitTran rt WITH(NOLOCK) ON trn.controlNoEncrypted = rt.controlNo
  85. --End-------------------------------------------------------------------------------------------------------------------------------
  86. --3. Receiver Information------------------------------------------------------------------------------------------------------------------
  87. INSERT INTO tranReceivers(
  88. tranId,firstName,address,mobile,idType,idNumber,idType2,idNumber2
  89. )
  90. SELECT
  91. rt.id,RECEIVER_NAME,RECEIVER_ADDRESS,RECEIVER_PHONE,RECEIVER_ID_TYPE,RECEIVER_ID_NO,RECEIVER_ID_TYPE,RECEIVER_ID_NO
  92. FROM #tempTran trn
  93. INNER JOIN remitTran rt WITH(NOLOCK) ON trn.controlNoEncrypted = rt.controlNo
  94. --End--------------------------------------------------------------------------------------------------------------------------------------
  95. --Delete migrated records------------------------------------------------------------------------------------------------------------------
  96. DELETE FROM [ThirdPaymentRemitTran]
  97. FROM [ThirdPaymentRemitTran] ttrn
  98. INNER JOIN #tempTran tt ON ttrn.ROWID = tt.ROWID
  99. GO