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.
112 lines
4.1 KiB
112 lines
4.1 KiB
USE [FastMoneyPro_Remit]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[proc_KJDepositReport] Script Date: 7/4/2019 11:35:48 AM ******/
|
|
DROP PROCEDURE [dbo].[proc_KJDepositReport]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[proc_KJDepositReport] Script Date: 7/4/2019 11:35:48 AM ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
CREATE proc [dbo].[proc_KJDepositReport]
|
|
@flag varchar(10),
|
|
@startDate varchar(10),
|
|
@endDate varchar(20),
|
|
@user varchar(40),
|
|
@searchType varchar(30) = null,
|
|
@searchValue varchar(150) = null
|
|
|
|
as
|
|
set nocount on
|
|
if @flag = 's'
|
|
begin
|
|
select [Bank Name] = k.BankName,[Sum Amount] = sum(d.amount),[No of Txn] = count(1)
|
|
from TblVirtualBankDepositDetail d(nolock)
|
|
LEFT join KoreanBankList k on k.bankCode = d.institution
|
|
where d.logDate between @startDate and @endDate+' 23:59:59'
|
|
group by k.BankName
|
|
end
|
|
if @flag = 'd'
|
|
begin
|
|
select [Bank Name] =k.BankName,[Received On] = d.receivedOn
|
|
,[Customer Name] = CASE WHEN d.customerName ='Nnull' THEN D.depositor ELSE d.customerName END
|
|
,[Primary Ac No] = d.no,[Virtual Ac No] = d.virtualAccountNo,[Amount] = d.amount
|
|
from TblVirtualBankDepositDetail d(nolock)
|
|
LEFT join KoreanBankList k on k.bankCode = d.institution
|
|
where d.logDate between @startDate and @endDate+' 23:59:59'
|
|
end
|
|
if @flag = 'statement'
|
|
begin
|
|
DECLARE @customerId BIGINT
|
|
DECLARE @table TABLE (customerId BIGINT, email VARCHAR(150))
|
|
if @searchValue is not null
|
|
begin
|
|
DECLARE @sql VARCHAR(150) = 'SELECT customerId, email FROM customerMaster CM (NOLOCK) WHERE 1 = 1 '
|
|
DECLARE @sqlFilter VARCHAR(200) = ''
|
|
IF ISNULL(@searchValue,'')<>'' AND ISNULL(@searchType,'')<>''
|
|
BEGIN
|
|
IF @searchType='idNumber'
|
|
BEGIN
|
|
--IF ISNUMERIC(@searchValue)<>1
|
|
-- SET @searchValue='-1' --to ignore string value for datatype integer/customerID
|
|
--SET @sql_Filter=@sql_Filter + ' AND customerId = ''' +@searchValue+''''
|
|
SET @sqlFilter=@sqlFilter + ' AND REPLACE(idNumber, ''-'', '''') = ''' +REPLACE(@searchValue, '-', '')+''''
|
|
END
|
|
ELSE IF @searchType='emailId'
|
|
SET @sqlFilter=@sqlFilter + ' AND email like ''' +@searchValue+'%'''
|
|
ELSE IF @searchType='customerName'
|
|
SET @sqlFilter=@sqlFilter + ' AND fullName like ''' +@searchValue+'%'''
|
|
ELSE IF @searchType='mobile'
|
|
SET @sqlFilter=@sqlFilter + ' AND mobile = ''' +@searchValue+''''
|
|
ELSE IF @searchType='walletAccountNo'
|
|
SET @sqlFilter=@sqlFilter + ' AND walletAccountNo = ''' +@searchValue+''''
|
|
ELSE IF @searchType='bankAccountNo'
|
|
SET @sqlFilter=@sqlFilter + ' AND bankAccountNo = ''' +@searchValue+''''
|
|
END
|
|
|
|
INSERT INTO @table(customerId, email)
|
|
EXEC(@sql+@sqlFilter)
|
|
end
|
|
|
|
|
|
|
|
select sum(amount) amount,virtualAccountNo,c.email,(c.availableBalance) availableBalance ,c.FullName
|
|
into #temp
|
|
from TblVirtualBankDepositDetail t(nolock)
|
|
inner join customermaster c(nolock) on c.walletAccountNo = t.virtualAccountNo
|
|
WHERE T.logDate between @startDate and @endDate+' 23:59:59'
|
|
group by virtualAccountNo,c.email,c.availableBalance,c.FullName
|
|
|
|
select createdBy,sum(camt) camt into #txn
|
|
from remittran(nolock) where tranStatus <> 'cancel'
|
|
AND createdDate between @startDate and @endDate+' 23:59:59'
|
|
group by createdBy
|
|
|
|
if @searchValue is not null
|
|
begin
|
|
select FullName,t.email,T.virtualAccountNo,sum(t.amount)'Deposited Amount', sum(camt) 'Send Amount',sum(t.amount-camt) 'Available Balance'
|
|
,(t.availableBalance) 'Balance Seen In System'
|
|
from #temp t
|
|
left join #txn x on x.createdBy = t.email
|
|
inner join @table tmp on tmp.email = t.email
|
|
group by t.email,T.virtualAccountNo,t.availableBalance,FullName
|
|
end
|
|
else
|
|
begin
|
|
select FullName,t.email,T.virtualAccountNo,sum(t.amount)'Deposited Amount', sum(camt) 'Send Amount',sum(t.amount-camt) 'Available Balance'
|
|
,(t.availableBalance) 'Balance Seen In System'
|
|
from #temp t
|
|
left join #txn x on t.email = x.createdBy
|
|
group by t.email,T.virtualAccountNo,t.availableBalance,FullName
|
|
--having sum(t.amount-x.camt-T.availableBalance) >0
|
|
--having sum(t.amount-camt) <> (t.availableBalance)
|
|
end
|
|
end
|
|
EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
|
|
|
|
SELECT 'From Date ' head,@startDate value union all
|
|
SELECT 'To Date ' head,@endDate value
|
|
|
|
SELECT 'Bank Deposit Report' title
|
|
GO
|