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.

248 lines
8.0 KiB

1 year ago
  1. ALTER PROCEDURE PROC_GET_TRANSACTION(
  2. @controlNo VARCHAR(100) = NULL
  3. ,@agentId VARCHAR(20) = NULL
  4. ,@flag VARCHAR(20)
  5. )
  6. AS
  7. SET NOCOUNT ON;
  8. BEGIN
  9. --http://localhost:59420/remit/sendTransaction/QIPLQRLILNR
  10. IF @flag='tran'
  11. BEGIN
  12. DECLARE @decryptedControlNo VARCHAR(100),@tranId BIGINT = NULL,@partnerId BIGINT = NULL
  13. SET @decryptedControlNo=dbo.FNADecryptString(@controlNo)
  14. --IF EXISTS(SELECT 'x' FROM dbo.vwTpApilogs(NOLOCK) WHERE controlNo=@decryptedControlNo)
  15. --BEGIN
  16. -- SELECT '2' ErrorCode, 'Cannot proceed, transaction already in process' Msg, @decryptedControlNo Id
  17. -- RETURN
  18. --END
  19. DECLARE @PartnerRemitPurposeMapping TABLE(DefaultValue VARCHAR(100) NOT NULL,PartnerValue VARCHAR(100) NULL)
  20. DECLARE @PartnerFundSourceMapping TABLE(DefaultValue VARCHAR(100) NOT NULL,PartnerValue VARCHAR(100) NULL)
  21. DECLARE @PartnerIdTypeMapping TABLE(DefaultValue VARCHAR(100) NOT NULL,PartnerValue VARCHAR(100) NULL)
  22. DECLARE @PartnerRelationShipMapping TABLE(DefaultValue VARCHAR(100) NOT NULL,PartnerValue VARCHAR(100) NULL)
  23. INSERT INTO @PartnerRemitPurposeMapping(DefaultValue,PartnerValue)
  24. SELECT 'Family maintenance','MAINTENANCE_EXPENSES' UNION ALL
  25. SELECT 'Savings','OTHER' UNION ALL
  26. SELECT 'Salary / Commission','OTHER'
  27. INSERT INTO @PartnerFundSourceMapping(DefaultValue,PartnerValue)
  28. SELECT 'Salary / Wages','CASH' UNION ALL
  29. SELECT 'Business','BUSINESS' UNION ALL
  30. SELECT 'Savings','SAVINGS'
  31. INSERT INTO @PartnerIdTypeMapping(DefaultValue,PartnerValue)
  32. SELECT 'Business Registation','OTHER' UNION ALL
  33. SELECT 'Alien Registration Card','ALIEN_REGISTRATION' UNION ALL
  34. SELECT 'National ID','NATIONAL_ID' UNION ALL
  35. SELECT 'Passport','PASSPORT' UNION ALL
  36. SELECT 'Driving License','DRIVING_LICENSE'
  37. INSERT INTO @PartnerRelationShipMapping(DefaultValue,PartnerValue)
  38. SELECT 'Father','FATHER' UNION ALL
  39. SELECT 'Mother','MOTHER' UNION ALL
  40. SELECT 'Wife','WIFE' UNION ALL
  41. SELECT 'Brother','BROTHER' UNION ALL
  42. SELECT 'Sister','SISTER' UNION ALL
  43. SELECT 'Uncle','UNCLE' UNION ALL
  44. SELECT 'Aunt','AUNT' UNION ALL
  45. SELECT 'Friend','FRIEND' UNION ALL
  46. SELECT 'Self','SELF'
  47. DECLARE @pBankId VARCHAR(20) = NULL,@pBankBranchId VARCHAR(20)
  48. SELECT @tranId=id,@partnerId=pSuperAgent,@pBankId=pBank, @pBankBranchId = pBankBranch FROM dbo.remitTranTemp(NOLOCK) WHERE controlNo=@controlNo
  49. IF @tranId IS NULL
  50. BEGIN
  51. SELECT '1' ErrorCode,'Cannot process the transaction' Msg, @decryptedControlNo Id
  52. END
  53. ELSE
  54. BEGIN
  55. SELECT '0' ErrorCode, 'Can process the transaction' Msg, @decryptedControlNo Id
  56. END
  57. DECLARE @pBankCode VARCHAR(50) = NULL , @pBankBranchCode VARCHAR(50) = NULL
  58. IF EXISTS(SELECT 'A' FROM dbo.remitTrantemp(NOLOCK) WHERE id=@tranId AND purposeOfRemit IS NULL)
  59. UPDATE dbo.remitTrantemp SET purposeOfRemit = 'Family maintenance' WHERE id=@tranId
  60. IF EXISTS(SELECT 'A' FROM dbo.remitTrantemp(NOLOCK) WHERE id=@tranId AND relWithSender IS NULL)
  61. UPDATE dbo.remitTrantemp SET relWithSender = 'Friend' WHERE id=@tranId
  62. IF EXISTS(SELECT 'A' FROM tranSendersTemp(NOLOCK) WHERE tranId = @tranId AND city IS NULL)
  63. BEGIN
  64. UPDATE dbo.tranSendersTemp SET city = 'Seoul' WHERE tranId=@tranId
  65. UPDATE customerMaster SET city = 'Seoul' WHERE city IS NULL AND approvedDate IS NOT NULL
  66. END
  67. SELECT @pBankCode = agentCode FROM dbo.agentMaster(nolock)
  68. WHERE agentId = @pBankId AND agentType = '2903' AND isActive = 'Y'
  69. SELECT @pBankBranchCode = agentCode FROM dbo.agentMaster(nolock)
  70. WHERE agentId = @pBankBranchId AND agentType = '2904' AND isActive = 'Y'
  71. SELECT
  72. rt.id
  73. ,controlNo=dbo.FNADecryptString(rt.controlNo)
  74. ,rt.sCurrCostRate
  75. ,rt.sCurrHoMargin
  76. ,rt.serviceCharge
  77. ,rt.sCountry
  78. ,sCountryIso2=cms.countryCode
  79. ,sCountryIso3=cms.isoAlpha3
  80. ,rt.sSuperAgent
  81. ,rt.sSuperAgentName
  82. ,rt.sAgent
  83. ,rt.sAgentName
  84. ,rt.sBranch
  85. ,rt.sBranchName
  86. ,rt.pCountry
  87. ,pCountryIso2=cmp.countryCode
  88. ,pCountryIso3=cmp.isoAlpha3
  89. ,rt.pSuperAgent
  90. ,rt.pSuperAgentName
  91. ,rt.pAgent
  92. ,rt.pAgentName
  93. ,rt.pBranch
  94. ,rt.pBranchName
  95. ,rt.paymentMethod
  96. --,rt.pBank
  97. ,pBank=@pBankCode
  98. ,rt.pBankName
  99. ,pBankBranch = @pBankBranchCode
  100. ,rt.pBankBranchName
  101. ,rt.accountNo
  102. ,rt.externalBankCode
  103. ,rt.collMode
  104. ,rt.collCurr
  105. ,rt.tAmt
  106. ,rt.cAmt
  107. ,rt.pAmt
  108. ,rt.payoutCurr
  109. ,relWithSender=rws.PartnerValue
  110. ,purposeOfRemit=por.PartnerValue
  111. ,sourceOfFund = fs.PartnerValue
  112. ,rt.tranStatus
  113. ,rt.payStatus
  114. ,ContNo=dbo.FNADecryptString(rt.ContNo)
  115. ,controlNo2=dbo.FNADecryptString(rt.controlNo2)
  116. ,rt.senderName
  117. ,rt.receiverName
  118. ,rt.isOnlineTxn
  119. ,rt.sRouteId
  120. ,deliveryMethodId=CASE WHEN rt.paymentMethod ='Cash Payment' THEN '1'
  121. WHEN rt.paymentMethod = 'Bank Deposit' THEN '2'
  122. WHEN rt.paymentMethod='Mobile Wallet' THEN '13'
  123. WHEN rt.paymentMethod = 'Home Delivery' THEN '12'
  124. ELSE '0' END
  125. FROM dbo.remitTrantemp(NOLOCK) rt
  126. INNER JOIN dbo.countryMaster(NOLOCK) cms ON rt.sCountry=cms.countryName
  127. INNER JOIN dbo.countryMaster(NOLOCK) cmp ON rt.pCountry=cmp.countryName
  128. LEFT JOIN @PartnerRemitPurposeMapping por ON por.DefaultValue=rt.purposeOfRemit
  129. LEFT JOIN @PartnerFundSourceMapping fs ON fs.DefaultValue=rt.sourceOfFund
  130. LEFT JOIN @PartnerRelationShipMapping rws ON rws.DefaultValue=rt.relWithSender
  131. WHERE rt.id=@tranId
  132. SELECT
  133. ts.tranId
  134. ,ts.customerId
  135. ,ts.membershipId
  136. ,firstName=(SELECT firstName FROM dbo.FNASplitName(ts.firstName) )
  137. ,middleName=(SELECT middleName FROM dbo.FNASplitName(ts.firstName) )
  138. ,lastName1=(SELECT lastName1 FROM dbo.FNASplitName(ts.firstName) )
  139. ,lastName2=(SELECT lastName2 FROM dbo.FNASplitName(ts.firstName) )
  140. ,ts.fullName
  141. ,ts.country
  142. ,countryIso2=c.countryCode
  143. ,countryIso3=c.isoAlpha3
  144. ,ts.address
  145. ,ts.STATE
  146. ,ts.district
  147. ,ts.zipCode
  148. ,ts.city
  149. ,'' AS email
  150. ,ts.homePhone
  151. ,ts.workPhone
  152. ,mobile=ts.mobile
  153. ,ts.nativeCountry
  154. ,nativeCountryIso2=cmn.countryCode
  155. ,nativeCountryIso3=cmn.isoAlpha3
  156. ,dob=FORMAT(ts.dob, 'yyyy-MM-dd', 'en-US' )
  157. ,ts.placeOfIssue
  158. ,ts.customerType
  159. ,ts.occupation
  160. ,idType=itp.PartnerValue
  161. ,ts.idNumber
  162. ,ts.idPlaceOfIssue
  163. ,issuedDate=FORMAT(ts.issuedDate, 'yyyy-MM-dd', 'en-US' )
  164. ,validDate =FORMAT(ts.validDate, 'yyyy-MM-dd', 'en-US' )
  165. ,gender= ''
  166. ,ts.salary
  167. ,ts.companyName
  168. ,ts.address2
  169. FROM dbo.tranSendersTemp (NOLOCK)ts
  170. INNER JOIN dbo.customerMaster(NOLOCK) cms ON ts.customerId=cms.customerId
  171. INNER JOIN dbo.countryMaster(NOLOCK) cmn ON ts.nativeCountry=cmn.countryName
  172. INNER JOIN dbo.countryMaster(NOLOCK) c ON ts.country=c.countryName
  173. LEFT JOIN @PartnerIdTypeMapping itp ON itp.DefaultValue=ts.idType
  174. WHERE ts.tranid=@tranId
  175. SELECT
  176. tr.tranId
  177. ,tr.customerId
  178. ,tr.membershipId
  179. ,tr.firstName
  180. ,tr.middleName
  181. ,tr.lastName1
  182. ,tr.lastName2
  183. ,tr.fullName
  184. ,tr.country
  185. ,countryIso2=c.countryCode
  186. ,countryIso3=c.isoAlpha3
  187. ,tr.address
  188. ,tr.STATE
  189. ,tr.district
  190. ,tr.zipCode
  191. ,tr.city
  192. ,'' AS email
  193. ,tr.homePhone
  194. ,tr.workPhone
  195. ,tr.mobile
  196. ,tr.nativeCountry
  197. ,nativeCountryIso2=cmn.countryCode
  198. ,nativeCountryIso3=cmn.isoAlpha3
  199. ,dob=FORMAT(tr.dob, 'yyyy-MM-dd', 'en-US' )
  200. ,tr.placeOfIssue
  201. ,tr.customerType
  202. ,tr.occupation
  203. ,idType = itp.PartnerValue
  204. ,idNumber = tr.idNumber
  205. ,tr.idPlaceOfIssue
  206. ,issuedDate=FORMAT(tr.issuedDate, 'yyyy-MM-dd', 'en-US' )
  207. ,validDate=FORMAT(tr.validDate, 'yyyy-MM-dd', 'en-US' )
  208. ,gender=''
  209. ,tr.address2
  210. ,ISNULL(ri.localFirstName,N'')+ISNULL(N' '+ri.localMiddleName,N'')+ISNULL(N' '+ri.localLastName1,N'')+ISNULL(N' '+ri.localLastName2,N'') AS nativename
  211. FROM dbo.tranReceiversTemp (NOLOCK)tr
  212. INNER JOIN dbo.countryMaster(NOLOCK) cmn ON tr.nativeCountry=cmn.countryName
  213. INNER JOIN dbo.countryMaster(NOLOCK) c ON tr.country=c.countryName
  214. INNER JOIN dbo.receiverInformation(NOLOCK) ri ON ri.receiverId=tr.customerId
  215. LEFT JOIN @PartnerIdTypeMapping itp ON itp.DefaultValue=tr.idType
  216. WHERE tr.tranid=@tranId
  217. END
  218. IF @flag='getBankCode'
  219. BEGIN
  220. SELECT agentCode AS BANKCODE FROM dbo.agentMaster(nolock) WHERE agentId = @agentId AND isActive = 'Y'
  221. END
  222. END