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.

227 lines
9.0 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[[proc_DomesticTransferVoucher]] Script Date: 9/27/2019 2:37:27 PM ******/
  4. /****** Created by Pralhad ******/
  5. SET ANSI_NULLS ON
  6. GO
  7. SET QUOTED_IDENTIFIER ON
  8. GO
  9. ----exec [proc_DomesticTransferVoucher] @flag = 'transfer',@User='',@walletAccountNo='9424010721203',@receiverAccountNo='ssss',@transferAmt=10240,@chargeAmt=0,@processId='20190927184373900'
  10. ALTER PROC [dbo].[proc_DomesticTransferVoucher]
  11. @flag VARCHAR(20) ,
  12. @User VARCHAR(50) ,
  13. @walletAccountNo VARCHAR(20) ,
  14. @receiverBankCode VARCHAR(10) ,
  15. @receiverAccountNo VARCHAR(100) ,
  16. @transferAmt MONEY ,
  17. @chargeAmt MONEY ,
  18. @processId VARCHAR(20)
  19. AS
  20. SET NOCOUNT ON;
  21. DECLARE @availableBalance MONEY
  22. DECLARE @Narration VARCHAR(MAX)
  23. DECLARE @vVoucherType CHAR(1) = 'Y'
  24. DECLARE @Date VARCHAR(10)
  25. DECLARE @BankCode varchar(100)
  26. IF @flag = 'transfer'
  27. BEGIN
  28. IF NOT EXISTS(SELECT 1 FROM customerMaster (NOLOCK) WHERE walletAccountNo = @walletAccountNo)
  29. BEGIN
  30. EXEC proc_errorHandler 1, 'Invalid customer requested for transfer', NULL
  31. RETURN
  32. END
  33. --SELECT @availableBalance = ISNULL(availableBalance, 0)
  34. --FROM customerMaster (NOLOCK) WHERE walletAccountNo = @walletAccountNo
  35. --if not exists(select 'a' from TblVirtualBankDepositDetail(nolock) where virtualAccountNo = @walletAccountNo)
  36. --BEGIN
  37. -- EXEC proc_errorHandler 1, 'Balance not found for refund', NULL
  38. -- RETURN
  39. --END
  40. --IF ISNULL(@transferAmt,0) <= 10000
  41. --BEGIN
  42. -- EXEC proc_errorHandler 1, 'Invalid amount requested for refund', NULL
  43. -- RETURN
  44. --END
  45. --IF ISNULL(@availableBalance - (@transferAmt),0)< 0
  46. --BEGIN
  47. -- EXEC proc_errorHandler 1, 'Invalid amount requested for refund', NULL
  48. -- RETURN
  49. --END
  50. DELETE FROM FastMoneyPro_Account.dbo.temp_tran WHERE SESSIONID = @processId
  51. begin transaction
  52. ----insert into TblVirtualBankDepositDetail(processId,obpId,customerName,virtualAccountNo,amount,receivedOn,partnerServiceKey
  53. ----,institution,depositor,no,logDate)
  54. ----select top 1 @processId,obpId,customerName,virtualAccountNo,- @transferAmt,getdate(),'000'
  55. ----,institution,'DT-WalletSuccess',no,getdate() from TblVirtualBankDepositDetail (nolock)
  56. ----where virtualAccountNo= @walletAccountNo
  57. ----update customerMaster set availableBalance = availableBalance- @transferAmt where walletAccountNo = @walletAccountNo
  58. --## 100241027580 Kwangju-(574382) CMS Customer Account-KRW
  59. INSERT INTO FastMoneyPro_Account.dbo.temp_tran(entry_user_id,acct_num,part_tran_type,tran_amt,field1,field2
  60. ,sessionID,refrence)
  61. SELECT @User,'100241027580','cr',(@transferAmt - ISNULL(@chargeAmt,0)),@walletAccountNo,'DT-Wallet Deposit',@processId,@processId UNION ALL
  62. SELECT @User,@walletAccountNo,'dr',@transferAmt,@walletAccountNo,'DT-Wallet Deposit',@processId,@processId
  63. IF ISNULL(@chargeAmt,0) >0
  64. BEGIN
  65. INSERT INTO FastMoneyPro_Account.dbo.temp_tran(entry_user_id,acct_num,part_tran_type,tran_amt,field1,field2
  66. ,sessionID,refrence)
  67. SELECT @User,'421793414','cr',ISNULL(@chargeAmt,0),@walletAccountNo,'DT-Wallet Deposit',@processId,@processId
  68. END
  69. COMMIT TRANSACTION
  70. --DECLARE @vVoucherType CHAR(1) = 'Y',@Date VARCHAR(10),@BankCode varchar(100)
  71. SELECT @Date = FORMAT(GETDATE(),'yyyy.MM.dd')
  72. SELECT @receiverAccountNo= reqAccountNum,@BankCode=reqBankCodeStd
  73. FROM KFTC_DOMESTIC_HISTORY(nolock) his
  74. WHERE transferType = 'deposit' AND
  75. his.processId = @processId
  76. SELECT TOP 1 @narration = firstName FROM customerMaster(NOLOCK) WHERE walletAccountNo = @walletAccountNo
  77. SELECT @BankCode = BankName FROM KoreanBankList(nolock) where bankCode = @BankCode
  78. SET @narration = 'Local Transfer wallet deposit to '+ ISNULL(@narration,'') +'/' +ISNULL(@BankCode,'')+'/'+ISNULL(@receiverAccountNo,'')
  79. exec FastMoneyPro_Account.dbo.[spa_saveTempTrn] @flag='i',@sessionID= @processId,@date=@Date,@narration=@Narration,@company_id=1,@v_type= @vVoucherType,@user=@user
  80. END
  81. ELSE IF @flag = 'KJAPI-DOMESTIC-TXN'
  82. BEGIN
  83. IF NOT EXISTS(SELECT 1 FROM customerMaster (NOLOCK) WHERE walletAccountNo = @walletAccountNo)
  84. BEGIN
  85. EXEC proc_errorHandler 1, 'Invalid customer requested for transfer', NULL
  86. RETURN
  87. END
  88. --DECLARE @availableBalance MONEY
  89. --DECLARE @Narration VARCHAR(MAX)
  90. DELETE FROM FastMoneyPro_Account.dbo.temp_tran WHERE SESSIONID = @processId
  91. BEGIN TRANSACTION
  92. INSERT INTO FastMoneyPro_Account.dbo.temp_tran(entry_user_id,acct_num,part_tran_type,tran_amt,field1,field2
  93. ,sessionID,refrence)
  94. SELECT @User,'100241011536','cr',(@transferAmt - ISNULL(@chargeAmt,0)),@walletAccountNo,'DT-Wallet Deposit',@processId,@processId
  95. UNION ALL
  96. SELECT @User,@walletAccountNo,'dr',@transferAmt,@walletAccountNo,'DT-Wallet Deposit',@processId,@processId
  97. IF ISNULL(@chargeAmt,0) >0
  98. BEGIN
  99. INSERT INTO FastMoneyPro_Account.dbo.temp_tran(entry_user_id,acct_num,part_tran_type,tran_amt,field1,field2
  100. ,sessionID,refrence)
  101. SELECT @User,'421793414','cr',ISNULL(@chargeAmt,0),@walletAccountNo,'DT-Wallet Deposit',@processId,@processId
  102. END
  103. COMMIT TRANSACTION
  104. --DECLARE @vVoucherType CHAR(1) = 'Y'
  105. DECLARE @today VARCHAR(10)
  106. DECLARE @vBankName VARCHAR(100)
  107. SELECT @today = FORMAT(GETDATE(),'yyyy.MM.dd')
  108. -- SELECT @receiverAccountNo= reqAccountNum,
  109. -- @BankCode=reqBankCodeStd
  110. -- FROM KFTC_DOMESTIC_HISTORY(nolock) his
  111. -- WHERE transferType = 'deposit'
  112. -- AND his.processId = @processId
  113. SELECT TOP 1 @narration = firstName
  114. FROM customerMaster(NOLOCK)
  115. WHERE walletAccountNo = @walletAccountNo
  116. SELECT @vBankName = BankName
  117. FROM KoreanBankList(nolock)
  118. WHERE bankCode = @receiverBankCode
  119. SET @narration = 'Local Transfer wallet deposit to '+ ISNULL(@narration,'') +'/' +ISNULL(@vBankName,'')+'/'+ISNULL(@receiverAccountNo,'')
  120. exec FastMoneyPro_Account.dbo.[spa_saveTempTrn]
  121. @flag='i',
  122. @sessionID= @processId,
  123. @date=@today,
  124. @narration=@Narration,
  125. @company_id=1,
  126. @v_type= @vVoucherType,
  127. @user=@user
  128. END
  129. ------------------------------------------------------------------------------------------
  130. -- 전표테스트
  131. ------------------------------------------------------------------------------------------
  132. ELSE IF @flag = 'voucher-test'
  133. BEGIN
  134. IF NOT EXISTS(SELECT 1 FROM customerMaster (NOLOCK) WHERE walletAccountNo = @walletAccountNo)
  135. BEGIN
  136. EXEC proc_errorHandler 1, 'Invalid customer requested for transfer', NULL
  137. RETURN
  138. END
  139. --SELECT @availableBalance = ISNULL(availableBalance, 0)
  140. --FROM customerMaster (NOLOCK) WHERE walletAccountNo = @walletAccountNo
  141. --if not exists(select 'a' from TblVirtualBankDepositDetail(nolock) where virtualAccountNo = @walletAccountNo)
  142. --BEGIN
  143. -- EXEC proc_errorHandler 1, 'Balance not found for refund', NULL
  144. -- RETURN
  145. --END
  146. --IF ISNULL(@transferAmt,0) <= 10000
  147. --BEGIN
  148. -- EXEC proc_errorHandler 1, 'Invalid amount requested for refund', NULL
  149. -- RETURN
  150. --END
  151. --IF ISNULL(@availableBalance - (@transferAmt),0)< 0
  152. --BEGIN
  153. -- EXEC proc_errorHandler 1, 'Invalid amount requested for refund', NULL
  154. -- RETURN
  155. --END
  156. DELETE FROM FastMoneyPro_Account.dbo.temp_tran WHERE SESSIONID = @processId
  157. begin transaction
  158. ----insert into TblVirtualBankDepositDetail(processId,obpId,customerName,virtualAccountNo,amount,receivedOn,partnerServiceKey
  159. ----,institution,depositor,no,logDate)
  160. ----select top 1 @processId,obpId,customerName,virtualAccountNo,- @transferAmt,getdate(),'000'
  161. ----,institution,'DT-WalletSuccess',no,getdate() from TblVirtualBankDepositDetail (nolock)
  162. ----where virtualAccountNo= @walletAccountNo
  163. ----update customerMaster set availableBalance = availableBalance- @transferAmt where walletAccountNo = @walletAccountNo
  164. --## 100241027580 Kwangju-(574382) CMS Customer Account-KRW
  165. INSERT INTO FastMoneyPro_Account.dbo.temp_tran(entry_user_id,acct_num,part_tran_type,tran_amt,field1,field2
  166. ,sessionID,refrence)
  167. SELECT @User,'100241027580','cr',(@transferAmt - ISNULL(@chargeAmt,0)),@walletAccountNo,'DT-Wallet Deposit',@processId,@processId UNION ALL
  168. SELECT @User,@walletAccountNo,'dr',@transferAmt,@walletAccountNo,'DT-Wallet Deposit',@processId,@processId
  169. IF ISNULL(@chargeAmt,0) >0
  170. BEGIN
  171. INSERT INTO FastMoneyPro_Account.dbo.temp_tran(entry_user_id,acct_num,part_tran_type,tran_amt,field1,field2
  172. ,sessionID,refrence)
  173. SELECT @User,'421793414','cr',ISNULL(@chargeAmt,0),@walletAccountNo,'DT-Wallet Deposit',@processId,@processId
  174. END
  175. COMMIT TRANSACTION
  176. --DECLARE @vVoucherType CHAR(1) = 'Y',@Date VARCHAR(10),@BankCode varchar(100)
  177. SELECT @Date = FORMAT(GETDATE(),'yyyy.MM.dd')
  178. SELECT @receiverAccountNo= reqAccountNum,@BankCode=reqBankCodeStd
  179. FROM KFTC_DOMESTIC_HISTORY(nolock) his
  180. WHERE transferType = 'deposit' AND
  181. his.processId = @processId
  182. SELECT TOP 1 @narration = firstName FROM customerMaster(NOLOCK) WHERE walletAccountNo = @walletAccountNo
  183. SELECT @BankCode = BankName FROM KoreanBankList(nolock) where bankCode = @BankCode
  184. SET @narration = 'Local Transfer wallet deposit to '+ ISNULL(@narration,'') +'/' +ISNULL(@BankCode,'')+'/'+ISNULL(@receiverAccountNo,'')
  185. --exec FastMoneyPro_Account.dbo.[spa_saveTempTrn] @flag='i',@sessionID= @processId,@date=@Date,@narration=@Narration,@company_id=1,@v_type= @vVoucherType,@user=@user
  186. END