Commit 38ecf6ee by guanzhenshan

增加导入paypal流水明细功能,增加paypal流水列表

parent bcb8ee53
......@@ -15,6 +15,11 @@ namespace Bailun.DC.Models
public int id { get; set; }
/// <summary>
/// 公司id
/// </summary>
public int company_id { get; set; }
/// <summary>
/// 帐号id
/// </summary>
public int account_id { get; set; }
......
......@@ -2024,7 +2024,182 @@ namespace Bailun.DC.Services
#endregion
#region Paypal收入分析
/// <summary>
/// 保存Paypal明细
/// </summary>
/// <param name="list"></param>
/// <returns></returns>
public string SaveEbayPayPalInfo(List<dc_base_income_ebay_paypal> list)
{
if (list.Count > 0)
{
var sql = "insert dc_base_income_ebay_paypal (account_id,account_name,record_time,time_zone,name,type,status,currency,gross,fee,net,from_email,to_email,transaction_id,shipping_address,address_status,item_title,item_id,shipping_handling_amount,insurance_amount,sales_tax,option_name1,option_value1,option_name2,option_value2,reference_txn_id,invoice_number,custom_number,quantity,receipt_id,balance,address_line1,address_line2,town,province,postal_code,country,contact_phone_number,subject,note,country_code,balance_impact,createtime,createuserid,createusername,company_id) values ";
var str = " ";
var index = 1;
var count = list.Count;
var pagesize = 3000;
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == ConnectionState.Closed)
{
cn.Open();
}
var trans = cn.BeginTransaction();
try
{
foreach (var item in list)
{
str += $"({item.account_id},'{item.account_name}','{item.record_time}','{item.time_zone}','{item.name.Replace("'","")}','{item.type}','{item.status}','{item.currency}','{item.gross}','{item.fee}','{item.net}','{item.from_email}','{item.to_email}','{item.transaction_id}','{item.shipping_address.Replace("'","")}','{item.address_status}','{item.item_title.Replace("'", "")}','{item.item_id}','{item.shipping_handling_amount}','{item.insurance_amount}','{item.sales_tax}','{item.option_name1}','{item.option_value1}','{item.option_name2}','{item.option_value2}','{item.reference_txn_id}','{item.invoice_number}','{item.custom_number}','{item.quantity}','{item.receipt_id}','{item.balance}','{item.address_line1.Replace("'", "")}','{item.address_line2.Replace("'", "")}','{item.town.Replace("'", "")}','{item.province.Replace("'", "")}','{item.postal_code}','{item.country}','{item.contact_phone_number.Replace("'", "")}','{item.subject.Replace("'", "")}','{item.note.Replace("'", "")}','{item.country_code}','{item.balance_impact}','{item.createtime}','{item.createuserid}','{item.createusername}',{item.company_id}),";
}
str = str.Substring(0, str.Length-1);
cn.Execute(sql + str);
trans.Commit();
return "";
}
catch (Exception ex)
{
trans.Rollback();
return ex.Message;
}
}
}
return "";
}
/// <summary>
/// 删除Paypal明细
/// </summary>
/// <param name="account">帐号</param>
/// <param name="start">报告开始时间</param>
/// <param name="end">报告结束时间</param>
/// <returns></returns>
public string DelEbayPayPalInfo(string account, DateTime start, DateTime end)
{
try
{
var sql = "delete dc_base_income_ebay_paypal where account_name=@account and record_time>=@start and record_time<@end";
var sqlparam = new DynamicParameters();
sqlparam.Add("account", account);
sqlparam.Add("start", start);
sqlparam.Add("end", end.AddDays(1));
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == ConnectionState.Closed)
{
cn.Open();
}
cn.Execute(sql, sqlparam);
}
return "";
}
catch (Exception ex)
{
return ex.Message;
}
}
/// <summary>
/// Paypal明细列表
/// </summary>
/// <param name="parameter">分页信息</param>
/// <param name="start">开始时间</param>
/// <param name="end">结束时间</param>
/// <param name="account">帐号</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<dc_base_income_ebay_paypal> ListPaypalIncome(BtTableParameter parameter, DateTime start, DateTime end, string account, ref int total)
{
var sql = "select record_time,account_name,time_zone,type,status,currency,gross,fee,net,from_email,to_email,transaction_id,shipping_handling_amount,insurance_amount,sales_tax,custom_number,quantity,balance,country_code,balance_impact,createtime from dc_base_income_ebay_paypal ";
var sqlwhere = " where 1=1 ";
var sqlparam = new DynamicParameters();
if (!string.IsNullOrEmpty(account))
{
sqlwhere += " and account_name=@account";
sqlparam.Add("account", account);
}
sqlwhere += " and record_time>=@start";
sqlparam.Add("start", start);
sqlwhere += " and record_time<@end";
sqlparam.Add("end", end.AddDays(1));
var strSort = " ";
if (!string.IsNullOrEmpty(parameter.sort))
{
strSort += " order by @sorts @orders";
sqlparam.Add("sorts", parameter.sort);
sqlparam.Add("orders", parameter.order);
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Page<dc_base_income_ebay_paypal>(parameter.pageIndex, parameter.limit, sql+ sqlwhere+strSort, ref total, sqlparam, "select count(id) from dc_base_income_ebay_paypal " + sqlwhere, 2 * 60);
return obj.AsList();
}
}
/// <summary>
/// Paypal明细列表汇总
/// </summary>
/// <param name="start">开始时间</param>
/// <param name="end">结束时间</param>
/// <param name="account">帐号</param>
/// <returns></returns>
public dc_base_income_ebay_paypal ListPaypalIncomeCount(DateTime start, DateTime end, string account)
{
var sqlparam = new DynamicParameters();
var sql = "select sum(gross) gross,sum(fee) fee,sum(net) net,sum(shipping_handling_amount) shipping_handling_amount,sum(insurance_amount) insurance_amount,sum(sales_tax) sales_tax,sum(quantity) quantity,sum(balance) balance from dc_base_income_ebay_paypal where 1=1 ";
if (!string.IsNullOrEmpty(account))
{
sql += " and account_name=@account";
sqlparam.Add("account", account);
}
sql += " and record_time>=@start";
sqlparam.Add("start", start);
sql += " and record_time<@end";
sqlparam.Add("end", end.AddDays(1));
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if(cn.State== ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.QueryFirstOrDefault<dc_base_income_ebay_paypal>(sql, sqlparam, null, 2 * 60);
return obj;
}
}
#endregion
}
......
......@@ -369,6 +369,9 @@
<li>
<a class="J_menuItem" href="@Url.Content("~/Reports/Finance/HappenAmountCount")" data-index="0">每日发生额汇总</a>
</li>
<li>
<a class="J_menuItem" href="@Url.Content("~/Reports/Finance/ListEbayIncome")" data-index="0">Paypal收入流水</a>
</li>
</ul>
</li>
<li>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment