Commit 62a799f3 by guanzhenshan

1、增加paypal明细页面和导出功能

2、修复平台利润统计报表按美元显示时,广告费和上架费没有转换币种的问题
parent d8a288c7
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.Models
{
/// <summary>
/// Paypal费
/// </summary>
public class dc_base_finance_paypal
{
/// <summary>
/// auto_increment
/// </summary>
public int id { get; set; }
/// <summary>
///
/// </summary>
public string transaction_id { get; set; }
/// <summary>
///
/// </summary>
public string parent_transaction_id { get; set; }
/// <summary>
///
/// </summary>
public string receipt_id { get; set; }
/// <summary>
///
/// </summary>
public string transaction_type { get; set; }
/// <summary>
///
/// </summary>
public string payment_type { get; set; }
/// <summary>
///
/// </summary>
public DateTime payment_date { get; set; }
/// <summary>
///
/// </summary>
public decimal gross_amount { get; set; }
/// <summary>
///
/// </summary>
public decimal fee_amount { get; set; }
/// <summary>
///
/// </summary>
public decimal settle_amount { get; set; }
/// <summary>
///
/// </summary>
public decimal tax_amount { get; set; }
/// <summary>
///
/// </summary>
public string exchange_rate { get; set; }
/// <summary>
///
/// </summary>
public string payment_status { get; set; }
/// <summary>
///
/// </summary>
public string pending_reason { get; set; }
/// <summary>
///
/// </summary>
public string reason_code { get; set; }
/// <summary>
///
/// </summary>
public DateTime create_time { get; set; }
/// <summary>
///
/// </summary>
public int saas_company_id { get; set; }
/// <summary>
///
/// </summary>
public DateTime gmt_create_time { get; set; }
/// <summary>
///
/// </summary>
public DateTime gmt_modify_time { get; set; }
/// <summary>
///
/// </summary>
public string business { get; set; }
/// <summary>
///
/// </summary>
public string receiver { get; set; }
/// <summary>
///
/// </summary>
public string receiver_id { get; set; }
/// <summary>
///
/// </summary>
public string payer { get; set; }
/// <summary>
///
/// </summary>
public string payer_id { get; set; }
/// <summary>
///
/// </summary>
public string currency { get; set; }
/// <summary>
///
/// </summary>
public int currency_id { get; set; }
/// <summary>
///
/// </summary>
public decimal other_to_cny_exchange_rate { get; set; }
/// <summary>
///
/// </summary>
public decimal gross_amount_rmb { get; set; }
}
}
......@@ -23,7 +23,7 @@ namespace Bailun.DC.Services
/// <param name="end"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<dc_base_oms_order> ListPlatformCost(BtTableParameter parameter,string platform,DateTime? start,DateTime? end,string website,string account,string warehousetype,string warehousecode,int? companyid,ref int total,string skucategoryids)
public List<dc_base_oms_order> ListPlatformCost(BtTableParameter parameter, string platform, DateTime? start, DateTime? end, string website, string account, string warehousetype, string warehousecode, int? companyid, ref int total, string skucategoryids)
{
var sql = "select t1.* from dc_base_oms_order t1";
var sqlparam = new DynamicParameters();
......@@ -107,7 +107,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrEmpty(parameter.sort))
{
sql += " order by t1." + parameter.sort+" "+parameter.order;
sql += " order by t1." + parameter.sort + " " + parameter.order;
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
......@@ -124,7 +124,7 @@ namespace Bailun.DC.Services
}
public dc_base_oms_order ListPlatformCostCount(string platform, DateTime? start, DateTime? end, string website, string account,string warehousetype,string warehousecode,int? companyid,string skucategoryids)
public dc_base_oms_order ListPlatformCostCount(string platform, DateTime? start, DateTime? end, string website, string account, string warehousetype, string warehousecode, int? companyid, string skucategoryids)
{
var sql = "select sum(t1.amount_sales*t1.seller_order_exchange_rate) amount_sales,sum((if(t1.platform_type='Ebay',t1.seller_other_exchange_rate,t1.seller_order_exchange_rate))*t1.cost_platform_fee) as cost_platform_fee,sum(t1.cost_fba_fee*t1.seller_order_exchange_rate) cost_fba_fee,sum(t1.cost_promotion*t1.seller_order_exchange_rate) cost_promotion,sum(t1.cost_paypal_fee*t1.seller_order_exchange_rate) cost_paypal_fee,sum(t1.cost_logistics) cost_logistics,sum(t1.cost_handle_bailun) cost_handle_bailun,sum(t1.amount_shipping*t1.seller_order_exchange_rate) amount_shipping,sum(cost_product) cost_product,sum(t1.cost_first) cost_first,sum(t1.amount_prepaid) amount_prepaid,sum(t1.profit_total) profit_total,(sum(t1.profit_total)/sum(t1.amount_sales*t1.seller_order_exchange_rate)), profit_rate,sum(t1.amount_refund*t1.seller_order_exchange_rate) amount_refund from dc_base_oms_order t1 ";
var sqlparam = new DynamicParameters();
......@@ -174,7 +174,7 @@ namespace Bailun.DC.Services
sql += " where t1.bailun_order_status!='Canceled' and ((t1.platform_type!='FBA' and t1.bailun_order_status!='CantHandle') or t1.platform_type='FBA') and t1.has_scalp=0 and t1.has_innersale=0 and t1.bailun_interception_status in ('None','Failed') ";
if(companyid.HasValue && companyid.Value>0)
if (companyid.HasValue && companyid.Value > 0)
{
sql += " and t1.company_id = " + companyid.Value; //增加公司id判断
}
......@@ -317,7 +317,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Query<dc_base_oms_order>(sql,sqlparam);
var obj = cn.Query<dc_base_oms_order>(sql, sqlparam);
return obj.AsList();
}
......@@ -337,7 +337,7 @@ namespace Bailun.DC.Services
/// <param name="end">付款结束时间</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<dc_base_oms_order> ListAmazonStatistics(BtTableParameter parameter, string account, string website, DateTime start, DateTime end,string warehoursetype,string warehousecode,int? companyid, ref int total,string skucategoryids)
public List<dc_base_oms_order> ListAmazonStatistics(BtTableParameter parameter, string account, string website, DateTime start, DateTime end, string warehoursetype, string warehousecode, int? companyid, ref int total, string skucategoryids)
{
var sqlparam = new DynamicParameters();
......@@ -417,7 +417,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrWhiteSpace(parameter.sort))
{
fromsql += " order by "+parameter.sort +" "+parameter.order;
fromsql += " order by " + parameter.sort + " " + parameter.order;
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
......@@ -427,7 +427,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Page<dc_base_oms_order>(parameter.pageIndex, parameter.limit, sql+fromsql, ref total, sqlparam);
var obj = cn.Page<dc_base_oms_order>(parameter.pageIndex, parameter.limit, sql + fromsql, ref total, sqlparam);
return obj.ToList();
}
......@@ -444,7 +444,7 @@ namespace Bailun.DC.Services
/// <param name="end">付款结束时间</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public dc_base_oms_order ListAmazonStatisticsCount(string account, string website, DateTime start, DateTime end,string warehoursetype,string warehousecode,int? companyid,string skucategoryids)
public dc_base_oms_order ListAmazonStatisticsCount(string account, string website, DateTime start, DateTime end, string warehoursetype, string warehousecode, int? companyid, string skucategoryids)
{
var sqlparam = new DynamicParameters();
......@@ -503,7 +503,7 @@ namespace Bailun.DC.Services
if (companyid.HasValue && companyid.Value > 0)
{
fromsql += " and t1.company_id="+companyid.Value; //增加公司id过滤
fromsql += " and t1.company_id=" + companyid.Value; //增加公司id过滤
}
if (!string.IsNullOrWhiteSpace(account))
......@@ -530,7 +530,7 @@ namespace Bailun.DC.Services
try
{
var obj = cn.QueryFirst<dc_base_oms_order>(sql+fromsql, sqlparam);
var obj = cn.QueryFirst<dc_base_oms_order>(sql + fromsql, sqlparam);
return obj;
}
......@@ -552,7 +552,7 @@ namespace Bailun.DC.Services
/// <param name="end">付款结束时间</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<Models.Orders.mAmazonStatistics> ListFBAStatistics(BtTableParameter parameter, string account, string website, DateTime start, DateTime end,int? companyid, ref int total,string skucategoryids)
public List<Models.Orders.mAmazonStatistics> ListFBAStatistics(BtTableParameter parameter, string account, string website, DateTime start, DateTime end, int? companyid, ref int total, string skucategoryids)
{
var sqlparam = new DynamicParameters();
......@@ -610,7 +610,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrWhiteSpace(parameter.sort))
{
sql += " order by " + parameter.sort+" "+parameter.order;
sql += " order by " + parameter.sort + " " + parameter.order;
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
......@@ -635,7 +635,7 @@ namespace Bailun.DC.Services
/// <param name="website">站点</param>
/// <param name="start">付款开始时间</param>
/// <param name="end">付款结束时间</param>
public Models.Orders.mAmazonStatistics ListFBAStatisticsCount(string account, string website, DateTime start, DateTime end,int? companyid,string skucategoryids)
public Models.Orders.mAmazonStatistics ListFBAStatisticsCount(string account, string website, DateTime start, DateTime end, int? companyid, string skucategoryids)
{
var sqlparam = new DynamicParameters();
......@@ -715,7 +715,7 @@ namespace Bailun.DC.Services
/// <param name="sku">sku编码</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<Models.Orders.dc_base_oms_order> ListOrders(BtTableParameter parameter, string platform, string website, string account, DateTime? start, DateTime? end, string orderno, string sku,int? companyid, ref int total, string skucategoryids, decimal? rate_start, decimal? rate_end, string itemid=null)
public List<Models.Orders.dc_base_oms_order> ListOrders(BtTableParameter parameter, string platform, string website, string account, DateTime? start, DateTime? end, string orderno, string sku, int? companyid, ref int total, string skucategoryids, decimal? rate_start, decimal? rate_end, string itemid = null)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.origin_order_id,t1.bailun_order_id,t1.platform_type,t1.website,t1.seller_account,t1.platform_order_type,t1.bailun_order_status,t1.bailun_payment_status,t1.bailun_shipping_status,t1.order_currency,(t1.amount_total*t1.seller_order_exchange_rate) amount_total,(t1.amount_shipping*t1.seller_order_exchange_rate) amount_shipping,(t1.amount_product*t1.seller_order_exchange_rate) amount_product,(t1.amount_adjustment*t1.seller_order_exchange_rate) amount_adjustment,(t1.cost_promotion*t1.seller_order_exchange_rate) cost_promotion,((if(t1.platform_type='Ebay',t1.seller_other_exchange_rate,t1.seller_order_exchange_rate))*t1.cost_platform_fee) cost_platform_fee,t1.cost_product,t1.cost_first,t1.cost_package,(t1.cost_fba_fee*t1.seller_order_exchange_rate) cost_fba_fee,t1.cost_total,(t1.profit_total) profit_total,t1.profit_rate,t1.create_time,t1.order_update_time,t1.profit_oms,t1.cost_handle_bailun,t1.cost_handle_platform,t1.cost_logistics,(t1.cost_paypal_fee*t1.seller_order_exchange_rate) cost_paypal_fee from dc_base_oms_order t1";
......@@ -749,7 +749,7 @@ namespace Bailun.DC.Services
var strwhere = " where t1.bailun_order_status!='Canceled' and ((t1.platform_type!='FBA' and t1.bailun_order_status!='CantHandle') or t1.platform_type='FBA') and t1.has_scalp=0 and t1.has_innersale=0 and t1.bailun_interception_status in ('None','Failed') ";
if (companyid.HasValue && companyid.Value>0)
if (companyid.HasValue && companyid.Value > 0)
{
strwhere += " and t1.company_id=" + companyid.Value; //增加公司id过滤
}
......@@ -795,7 +795,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrWhiteSpace(itemid))
{
//sql += " join dc_base_oms_platform_sku t3 on t1.bailun_order_id=t3.bailun_order_id and t3.item_id=@itemid";
sql += $" join (select bailun_order_id,item_id from dc_base_oms_platform_sku where has_delete=0 and has_cancle=0 and item_id=@itemid {(start.HasValue ? " and paid_time>=@ppaid_time_start " : "")+(end.HasValue ? " and paid_time<@ppaid_time_end " : "")} GROUP BY bailun_order_id,item_id) t3 on t1.bailun_order_id=t3.bailun_order_id ";
sql += $" join (select bailun_order_id,item_id from dc_base_oms_platform_sku where has_delete=0 and has_cancle=0 and item_id=@itemid {(start.HasValue ? " and paid_time>=@ppaid_time_start " : "") + (end.HasValue ? " and paid_time<@ppaid_time_end " : "")} GROUP BY bailun_order_id,item_id) t3 on t1.bailun_order_id=t3.bailun_order_id ";
if (start.HasValue)
{
......@@ -827,18 +827,18 @@ namespace Bailun.DC.Services
if (rate_start.HasValue && rate_start.Value != 0)
{
strwhere += " and t1.profit_rate>="+(rate_start.Value/100);
strwhere += " and t1.profit_rate>=" + (rate_start.Value / 100);
}
if (rate_end.HasValue && rate_end.Value != 0)
{
strwhere += " and t1.profit_rate<"+(rate_end.Value/100);
strwhere += " and t1.profit_rate<" + (rate_end.Value / 100);
}
if (!string.IsNullOrWhiteSpace(parameter.sort))
{
strwhere += " order by t1." + parameter.sort+" "+parameter.order;
strwhere += " order by t1." + parameter.sort + " " + parameter.order;
}
......@@ -878,7 +878,7 @@ namespace Bailun.DC.Services
/// <param name="orderno">平台单号</param>
/// <param name="sku">sku编码</param>
/// <returns></returns>
public Models.Orders.dc_base_oms_order ListOrdersCount(string platform, string website, string account, DateTime? start, DateTime? end, string orderno, string sku,int? companyid, string skucategoryids, decimal? rate_start, decimal? rate_end, string itemid = null)
public Models.Orders.dc_base_oms_order ListOrdersCount(string platform, string website, string account, DateTime? start, DateTime? end, string orderno, string sku, int? companyid, string skucategoryids, decimal? rate_start, decimal? rate_end, string itemid = null)
{
var sqlparam = new DynamicParameters();
var sql = "select sum(t1.amount_total*t1.seller_order_exchange_rate) amount_total,sum(t1.amount_shipping*t1.seller_order_exchange_rate) amount_shipping,sum(t1.amount_product*t1.seller_order_exchange_rate) amount_product,sum(t1.amount_adjustment*t1.seller_order_exchange_rate) amount_adjustment,sum(t1.cost_promotion*t1.seller_order_exchange_rate) cost_promotion,sum((if(t1.platform_type='FBA',t1.seller_other_exchange_rate,t1.seller_order_exchange_rate))*t1.cost_platform_fee) cost_platform_fee,sum(t1.cost_product) cost_product,sum(t1.cost_first) cost_first,sum(t1.cost_package) cost_package,sum(t1.cost_fba_fee*t1.seller_order_exchange_rate) cost_fba_fee,sum(t1.cost_total) cost_total,sum(t1.profit_total) profit_total,sum(t1.profit_oms) profit_oms,sum(t1.cost_handle_bailun) cost_handle_bailun,sum(t1.cost_handle_platform) cost_handle_platform,sum(t1.cost_logistics) cost_logistics,(t1.cost_paypal_fee*t1.seller_order_exchange_rate) cost_paypal_fee from dc_base_oms_order t1";
......@@ -958,7 +958,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrWhiteSpace(itemid))
{
//sql += " join dc_base_oms_platform_sku t3 on t1.bailun_order_id=t3.bailun_order_id and t3.item_id=@itemid";
sql += $" join (select bailun_order_id,item_id from dc_base_oms_platform_sku where has_delete=0 and has_cancle=0 and item_id=@itemid {(start.HasValue ? " and paid_time>=@ppaid_time_start " : "")+(end.HasValue ? " and paid_time<@ppaid_time_end " : "")} GROUP BY bailun_order_id,item_id) t3 on t1.bailun_order_id=t3.bailun_order_id ";
sql += $" join (select bailun_order_id,item_id from dc_base_oms_platform_sku where has_delete=0 and has_cancle=0 and item_id=@itemid {(start.HasValue ? " and paid_time>=@ppaid_time_start " : "") + (end.HasValue ? " and paid_time<@ppaid_time_end " : "")} GROUP BY bailun_order_id,item_id) t3 on t1.bailun_order_id=t3.bailun_order_id ";
sqlparam.Add("itemid", itemid);
......@@ -987,12 +987,12 @@ namespace Bailun.DC.Services
if (rate_start.HasValue && rate_start.Value != 0)
{
strwhere += " and t1.profit_rate>=" + (rate_start.Value/100);
strwhere += " and t1.profit_rate>=" + (rate_start.Value / 100);
}
if (rate_end.HasValue && rate_end.Value != 0)
{
strwhere += " and t1.profit_rate<" + (rate_end.Value/100);
strwhere += " and t1.profit_rate<" + (rate_end.Value / 100);
}
......@@ -1031,7 +1031,7 @@ namespace Bailun.DC.Services
/// <param name="orderno">订单号</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<Models.Orders.dc_base_oms_sku> ListFinanceFee(BtTableParameter parameter,string platform, int feetype, int feecharacter, string account, DateTime? start, DateTime? end, string orderno,int? companyid, ref int total)
public List<Models.Orders.dc_base_oms_sku> ListFinanceFee(BtTableParameter parameter, string platform, int feetype, int feecharacter, string account, DateTime? start, DateTime? end, string orderno, int? companyid, ref int total)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.origin_order_id,t1.platform_type,t1.website,t1.seller_account,t1.platform_order_type,t1.bailun_sku,t1.amount_product,t1.cost_first,t1.amount_shipping,t1.cost_promotion,t1.cost_shipping,t1.cost_fba_fee,t1.cost_platform_fee,t1.cost_package,t1.amount_total,t1.cost_total+t1.cost_shipping as cost_total,t1.paid_time,t1.seller_order_exchange_rate,t1.finance_order_exchange_rate from dc_base_oms_sku t1";
......@@ -1118,7 +1118,7 @@ namespace Bailun.DC.Services
/// <param name="end">付款结束时间</param>
/// <param name="orderno">订单号</param>
/// <returns></returns>
public Models.Orders.dc_base_oms_sku ListFinanceFeeCount(string platform, int feetype, int feecharacter, string account, DateTime? start, DateTime? end, string orderno,int? companyid)
public Models.Orders.dc_base_oms_sku ListFinanceFeeCount(string platform, int feetype, int feecharacter, string account, DateTime? start, DateTime? end, string orderno, int? companyid)
{
var sqlparam = new DynamicParameters();
var sql = "select sum(t1.amount_product) amount_product,sum(t1.cost_first) cost_first,sum(t1.amount_shipping) amount_shipping,sum(t1.cost_promotion) cost_promotion,sum(t1.cost_shipping) cost_shipping,sum(t1.cost_fba_fee) cost_fba_fee,sum(t1.cost_platform_fee) cost_platform_fee,sum(t1.cost_package) cost_package,sum(t1.amount_total) amount_total,sum(t1.cost_total+t1.cost_shipping) as cost_total from dc_base_oms_sku t1 ";
......@@ -1200,7 +1200,7 @@ namespace Bailun.DC.Services
/// <param name="orderno"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<Models.Orders.mFBAAbnormalOrder> ListFbaAbnormalOrder(BtTableParameter parameter, string account, string website, DateTime? start, DateTime? end, string orderno,int? companyid, ref int total,string skucategoryids)
public List<Models.Orders.mFBAAbnormalOrder> ListFbaAbnormalOrder(BtTableParameter parameter, string account, string website, DateTime? start, DateTime? end, string orderno, int? companyid, ref int total, string skucategoryids)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.origin_order_id,t1.platform_type,t1.website,t1.seller_account,t1.bailun_sku,t1.order_currency,t1.cost_fba_fee,(t1.cost_fba_fee*t1.seller_order_exchange_rate) fba_fee_rmb,t2.average_fba_fee,t2.min_fba_fee,t2.max_fba_fee,t1.create_time,t1.seller_order_exchange_rate";
......@@ -1289,7 +1289,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Page<Models.Orders.mFBAAbnormalOrder>(parameter.pageIndex, parameter.limit, sql+strwhere, ref total, sqlparam,"select count(t1.id) "+strwhere,2*60);
var obj = cn.Page<Models.Orders.mFBAAbnormalOrder>(parameter.pageIndex, parameter.limit, sql + strwhere, ref total, sqlparam, "select count(t1.id) " + strwhere, 2 * 60);
return obj.AsList();
}
......@@ -1297,7 +1297,7 @@ namespace Bailun.DC.Services
public List<Models.Orders.dc_base_oms_order> ListPlatformFeeAbnormal(BtTableParameter parameter, string platform, string account, string website, string orderno, DateTime? start, DateTime? end,int? companyid, ref int total,string skucategoryids)
public List<Models.Orders.dc_base_oms_order> ListPlatformFeeAbnormal(BtTableParameter parameter, string platform, string account, string website, string orderno, DateTime? start, DateTime? end, int? companyid, ref int total, string skucategoryids)
{
var sqlparam = new DynamicParameters();
var strwhere = "select t1.origin_order_id,t1.bailun_order_id,t1.seller_account,t1.amount_product,t1.cost_platform_fee,(t1.cost_platform_fee/t1.amount_product) platform_fee_rate,t1.platform_type,t1.website,t1.create_time from dc_base_oms_order t1 ";
......@@ -1415,7 +1415,7 @@ namespace Bailun.DC.Services
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
public Models.Orders.dc_base_oms_order ListPlatformFeeAbnormalCount(string platform, string account, string website, string orderno, DateTime? start, DateTime? end,int? companyid,string skucategoryids)
public Models.Orders.dc_base_oms_order ListPlatformFeeAbnormalCount(string platform, string account, string website, string orderno, DateTime? start, DateTime? end, int? companyid, string skucategoryids)
{
var sqlparam = new DynamicParameters();
var strwhere = "select sum(t1.amount_product) amount_product,sum(t1.cost_platform_fee) cost_platform_fee from dc_base_oms_order t1 ";
......@@ -1525,7 +1525,7 @@ namespace Bailun.DC.Services
/// <param name="start">付款开始时间</param>
/// <param name="end">付款结束时间</param>
/// <returns></returns>
public List<Models.Orders.dc_base_oms_sku> ListPlatformProfit(string platform,string website, DateTime? start, DateTime? end, DateTime? shipstart, DateTime? shipend, bool isUSD, int? companyid, string skucategoryids)
public List<Models.Orders.dc_base_oms_sku> ListPlatformProfit(string platform, string website, DateTime? start, DateTime? end, DateTime? shipstart, DateTime? shipend, bool isUSD, int? companyid, string skucategoryids)
{
var sqlparam = new DynamicParameters();
var sql = "select tb.platform_type,count(tb.bailun_order_id) order_count,sum(tb.amount_sales*" + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + ") as amount_sales,sum(tb.cost_platform_fee*(if(tb.platform_type='Ebay'," + (isUSD ? "tb.other_to_usd_exchange_rate" : "tb.seller_other_exchange_rate") + "," + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + "))) as cost_platform_fee,sum(tb.cost_first*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ") as cost_first,sum(tb.cost_tail*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ") cost_tail,sum(tb.cost_handle_bailun*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ") cost_handle_bailun,sum(tb.cost_handle_platform*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ") cost_handle_platform,sum(tb.amount_refund*" + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + ") amount_refund,sum(tb.cost_fba_fee*" + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + ") cost_fba_fee,sum(tb.cost_paypal_fee*" + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + ") cost_paypal_fee,sum(tb.amount_shipping*" + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + ") amount_shipping,sum(tb.cost_promotion*" + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + ") cost_promotion,sum(tb.cost_product*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ") cost_product,sum(tb.profit_total*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ") profit_total,(sum(tb.profit_total*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ")/sum(tb.amount_sales*" + (isUSD ? "tb.order_to_usd_exchange_rate" : "tb.seller_order_exchange_rate") + ")) profit_rate,count(tb.amount_prepaid>0 or null) as noshippingcount,sum(tb.amount_prepaid*" + (isUSD ? "tb.cny_to_usd_exchange_rate" : "1") + ") amount_prepaid from dc_base_oms_order tb ";
......@@ -1557,7 +1557,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrEmpty(s))
{
//sql += " and t3.bailun_category_id in (" + s + ") ";
sql += " and t4.category_simple_id in ("+s+")";
sql += " and t4.category_simple_id in (" + s + ")";
}
}
}
......@@ -1628,7 +1628,7 @@ namespace Bailun.DC.Services
/// <param name="shipstart">发货开始时间</param>
/// <param name="shipend">发货结束时间</param>
/// <returns></returns>
public List<Models.Orders.dc_base_oms_sku> ListPlatformProfitByShipTime(string platform,string website, DateTime? start, DateTime? end, DateTime? shipstart, DateTime? shipend, bool isUSD, int? companyid, string skucategoryids)
public List<Models.Orders.dc_base_oms_sku> ListPlatformProfitByShipTime(string platform, string website, DateTime? start, DateTime? end, DateTime? shipstart, DateTime? shipend, bool isUSD, int? companyid, string skucategoryids)
{
var sqlparam = new DynamicParameters();
var sql = @"select t2.platform_type,count(DISTINCT t2.bailun_order_id) order_count,sum(t2.amount_sales*" + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "*t1.quantity_shipped) as amount_sales,sum(t2.cost_platform_fee*(if(t2.platform_type='Ebay'," + (isUSD ? "t2.other_to_usd_exchange_rate" : "t2.seller_other_exchange_rate") + "," + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "))*t1.quantity_shipped) as cost_platform_fee,sum(t2.cost_first*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped) as cost_first,sum(t2.cost_tail*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped) cost_tail,sum(t2.cost_handle_bailun*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped) cost_handle_bailun,sum(t2.cost_handle_platform*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped) cost_handle_platform,sum(t2.amount_refund*" + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "*t1.quantity_shipped) amount_refund,sum(t2.cost_product*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped) cost_product,sum(t2.profit_total*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped) profit_total,(sum(t2.profit_total*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped)/sum(t2.amount_sales*" + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "*t1.quantity_shipped)) profit_rate,count(t2.amount_prepaid>0 or null) as noshippingcount,sum(t2.amount_prepaid*" + (isUSD ? "t2.cny_to_usd_exchange_rate" : "1") + "*t1.quantity_shipped) amount_prepaid,sum(t2.cost_fba_fee*" + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "*t1.quantity_shipped) cost_fba_fee,sum(t2.cost_paypal_fee*" + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "*t1.quantity_shipped) cost_paypal_fee,sum(t2.amount_shipping*" + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "*t1.quantity_shipped) amount_shipping,sum(t2.cost_promotion*" + (isUSD ? "t2.order_to_usd_exchange_rate" : "t2.seller_order_exchange_rate") + "*t1.quantity_shipped) cost_promotion from (select id,bailun_order_id,quantity_shipped,bailun_sku from dc_base_oms_pick where has_delete=0 and shipping_status = 'TotalShipping' ";
......@@ -1663,7 +1663,7 @@ namespace Bailun.DC.Services
sqlparam.Add("platform_type", platform);
}
if(!string.IsNullOrWhiteSpace(website))
if (!string.IsNullOrWhiteSpace(website))
{
sql += " and t2.website=@website";
sqlparam.Add("website", website);
......@@ -1700,7 +1700,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrEmpty(s))
{
//sql += " and t4.bailun_category_id in (" + s + ") ";
sql += " and t4.category_simple_id in ("+s+") ";
sql += " and t4.category_simple_id in (" + s + ") ";
}
}
}
......@@ -1913,12 +1913,12 @@ namespace Bailun.DC.Services
//利润率
if (rate_start.HasValue && rate_start.Value != 0)
{
sql += " and t1.profit_rate>="+(rate_start.Value/100);
sql += " and t1.profit_rate>=" + (rate_start.Value / 100);
}
if (rate_end.HasValue && rate_end.Value != 0)
{
sql += " and t1.profit_rate<"+(rate_end.Value/100);
sql += " and t1.profit_rate<" + (rate_end.Value / 100);
}
if (!string.IsNullOrEmpty(parameter.sort))
......@@ -2435,7 +2435,7 @@ namespace Bailun.DC.Services
/// <param name="end">结束日期</param>
/// <param name="colname">需要统计的字段</param>
/// <returns></returns>
public List<mSkuCategoryProfit> ListSkuCategoryProfit(string platform,DateTime start, DateTime end, string colname,string skucategoryids)
public List<mSkuCategoryProfit> ListSkuCategoryProfit(string platform, DateTime start, DateTime end, string colname, string skucategoryids)
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
......@@ -2502,7 +2502,7 @@ namespace Bailun.DC.Services
/// <param name="warehousecode">发货仓库编码</param>
/// <param name="total"></param>
/// <returns></returns>
public List<Models.Orders.dc_base_oms_order> ListEbayStatistics(BtTableParameter parameter, string website, string account, DateTime? start, DateTime? end, string warehousetype, string warehousecode,int? companyid, ref int total,string skucategoryids)
public List<Models.Orders.dc_base_oms_order> ListEbayStatistics(BtTableParameter parameter, string website, string account, DateTime? start, DateTime? end, string warehousetype, string warehousecode, int? companyid, ref int total, string skucategoryids)
{
var sqlparam = new DynamicParameters();
......@@ -2615,7 +2615,7 @@ namespace Bailun.DC.Services
/// <param name="warehousetype"></param>
/// <param name="warehousecode"></param>
/// <returns></returns>
public Models.Orders.dc_base_oms_order ListEbayStatisticsCount(string platform, string website, string account, DateTime? start, DateTime? end, string warehousetype, string warehousecode,int? companyid,string skucategoryids)
public Models.Orders.dc_base_oms_order ListEbayStatisticsCount(string platform, string website, string account, DateTime? start, DateTime? end, string warehousetype, string warehousecode, int? companyid, string skucategoryids)
{
var sqlparam = new DynamicParameters();
......@@ -2733,7 +2733,7 @@ namespace Bailun.DC.Services
/// <param name="warehousecode"></param>
/// <param name=""></param>
/// <returns></returns>
public List<dc_base_oms_order> ListEbayStatisticsByWebsite(BtTableParameter request,string platform, string website, string account, DateTime? start, DateTime? end, string warehousetype, string warehousecode,int? companyid,ref int total,string skucategoryids)
public List<dc_base_oms_order> ListEbayStatisticsByWebsite(BtTableParameter request, string platform, string website, string account, DateTime? start, DateTime? end, string warehousetype, string warehousecode, int? companyid, ref int total, string skucategoryids)
{
var sqlparam = new DynamicParameters();
......@@ -2877,7 +2877,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var list = cn.Query<Models.Ebay.ebayUKLogistics>(sql,null,null,true,2*60).AsList();
var list = cn.Query<Models.Ebay.ebayUKLogistics>(sql, null, null, true, 2 * 60).AsList();
return list;
}
......@@ -2892,7 +2892,7 @@ namespace Bailun.DC.Services
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -2908,7 +2908,7 @@ namespace Bailun.DC.Services
/// <returns></returns>
public List<dc_base_oms_platform_sku> GetOrderItemId(List<string> orderid)
{
var sql = "select bailun_order_id,GROUP_CONCAT(item_id) as item_id from dc_base_oms_platform_sku where bailun_order_id in ('" + string.Join("','",orderid)+ "') group by bailun_order_id;";
var sql = "select bailun_order_id,GROUP_CONCAT(item_id) as item_id from dc_base_oms_platform_sku where bailun_order_id in ('" + string.Join("','", orderid) + "') group by bailun_order_id;";
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
......@@ -2936,7 +2936,7 @@ namespace Bailun.DC.Services
public List<dc_base_finance_ebay> ListEbayFee(int page, int pagesize, DateTime start, DateTime end, string[] feetype)
{
var sqlparam = new DynamicParameters();
var sql = $"select id,account_entry_type,description,bj_date,gross_amount,item_id,account_id,currency,exchange_rate,company_id from dc_base_finance_ebay where bj_date>='{start.ToString("yyyy-MM-dd HH:mm:ss")}' and bj_date<'{end.ToString("yyyy-MM-dd HH:mm:ss")}' and account_entry_type in ('{string.Join("','",feetype)}') ";
var sql = $"select id,account_entry_type,description,bj_date,gross_amount,item_id,account_id,currency,exchange_rate,company_id from dc_base_finance_ebay where bj_date>='{start.ToString("yyyy-MM-dd HH:mm:ss")}' and bj_date<'{end.ToString("yyyy-MM-dd HH:mm:ss")}' and account_entry_type in ('{string.Join("','", feetype)}') ";
var sqllimit = " limit " + (page - 1) * pagesize + "," + pagesize;
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
......@@ -2946,7 +2946,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var list = cn.Query<dc_base_finance_ebay>(sql+ sqllimit, null, null, true, 2 * 60);
var list = cn.Query<dc_base_finance_ebay>(sql + sqllimit, null, null, true, 2 * 60);
return list.AsList();
}
......@@ -2963,7 +2963,7 @@ namespace Bailun.DC.Services
/// <param name="total"></param>
/// <param name="feetype">费用类型</param>
/// <returns></returns>
public List<dc_base_finance_ebay> ListEbayFee(BtTableParameter parameter, int? companyid, DateTime? start, DateTime? end, ref int total, string[] feetype, string orderno,string account)
public List<dc_base_finance_ebay> ListEbayFee(BtTableParameter parameter, int? companyid, DateTime? start, DateTime? end, ref int total, string[] feetype, string orderno, string account)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.id,t1.account_entry_type,t1.description,t1.bj_date as gmt_date,t1.gross_amount,t1.item_id,t1.net_amount,t1.vat_percent,t1.order_line_id,t1.currency,t1.exchange_rate,(t1.exchange_rate*t1.gross_amount) gross_amount_rmb,t2.account_name from dc_base_finance_ebay t1 ";
......@@ -2993,9 +2993,9 @@ namespace Bailun.DC.Services
sqlparam.Add("orderno", orderno);
}
if (feetype!=null && feetype.Length > 0)
if (feetype != null && feetype.Length > 0)
{
sql += " and t1.account_entry_type in ('"+ string.Join("','", feetype) + "')";
sql += " and t1.account_entry_type in ('" + string.Join("','", feetype) + "')";
}
if (!string.IsNullOrWhiteSpace(account))
......@@ -3044,10 +3044,10 @@ namespace Bailun.DC.Services
/// <param name="total"></param>
/// <param name="feetype"></param>
/// <returns></returns>
public dc_base_finance_ebay EbayFeeCount(int? companyid, DateTime? start, DateTime? end, string[] feetype, string orderno, string account)
public dc_base_finance_ebay EbayFeeCount(int? companyid, DateTime? start, DateTime? end, string[] feetype, string orderno, string account,bool isUSD)
{
var sqlparam = new DynamicParameters();
var sql = "select sum(t1.gross_amount) gross_amount,sum(t1.net_amount) net_amount,sum(t1.exchange_rate*t1.gross_amount) gross_amount_rmb from dc_base_finance_ebay t1 ";
var sql = $"select sum(t1.gross_amount) gross_amount,sum(t1.net_amount) net_amount,sum(t1.{(isUSD? "exchange_rate_usd" : "exchange_rate")}*t1.gross_amount) gross_amount_rmb from dc_base_finance_ebay t1 ";
if (!string.IsNullOrWhiteSpace(account))
{
......@@ -3084,7 +3084,7 @@ namespace Bailun.DC.Services
if (feetype != null && feetype.Length > 0)
{
sql += " and t1.account_entry_type in ('"+ string.Join("','", feetype) + "')";
sql += " and t1.account_entry_type in ('" + string.Join("','", feetype) + "')";
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
......@@ -3094,7 +3094,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.QueryFirstOrDefault<dc_base_finance_ebay>(sql,sqlparam);
var obj = cn.QueryFirstOrDefault<dc_base_finance_ebay>(sql, sqlparam);
return obj;
}
......@@ -3109,7 +3109,7 @@ namespace Bailun.DC.Services
/// <param name="end"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<mExchangeLoss> ListExchangeLoss(BtTableParameter parameter,string account, DateTime? start, DateTime? end,ref int total,int? companyid)
public List<mExchangeLoss> ListExchangeLoss(BtTableParameter parameter, string account, DateTime? start, DateTime? end, ref int total, int? companyid)
{
var sqlparam = new DynamicParameters();
......@@ -3147,7 +3147,7 @@ namespace Bailun.DC.Services
if (companyid.HasValue && companyid.Value > 0)
{
s1 += " and t1.company_id="+companyid.Value+" ";
s1 += " and t1.company_id=" + companyid.Value + " ";
s2 += " and t1.company_id=" + companyid.Value + " ";
}
......@@ -3165,18 +3165,18 @@ namespace Bailun.DC.Services
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Page<mExchangeLoss>(parameter.pageIndex,parameter.limit,sql,ref total,sqlparam);
var obj = cn.Page<mExchangeLoss>(parameter.pageIndex, parameter.limit, sql, ref total, sqlparam);
return obj.ToList();
}
}
public mExchangeLoss ListExchangeLossCount(string account, DateTime? start, DateTime? end,int? companyid)
public mExchangeLoss ListExchangeLossCount(string account, DateTime? start, DateTime? end, int? companyid)
{
var sqlparam = new DynamicParameters();
......@@ -3236,7 +3236,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.QueryFirstOrDefault<mExchangeLoss>(sql,sqlparam);
var obj = cn.QueryFirstOrDefault<mExchangeLoss>(sql, sqlparam);
return obj;
}
......@@ -3257,7 +3257,7 @@ namespace Bailun.DC.Services
/// <param name="end"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<dc_base_crm_refund> ListOrderRefund(BtTableParameter request,string platform,string website,string account,DateTime? start,DateTime? end,string searchkey, ref int total)
public List<dc_base_crm_refund> ListOrderRefund(BtTableParameter request, string platform, string website, string account, DateTime? start, DateTime? end, string searchkey, ref int total)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.*,if(t2.bailun_shipping_status is null,t3.bailun_shipping_status,t2.bailun_shipping_status) as bailun_shipping_status from dc_base_crm_refund t1 left join dc_base_oms_order t2 on t1.origin_order_id=t2.origin_order_id left join dc_base_oms_order t3 on t1.origin_order_id=t3.transaction_id where 1=1 ";
......@@ -3272,7 +3272,7 @@ namespace Bailun.DC.Services
sql += " and t1.website=@website";
sqlparam.Add("website", website);
}
if(!string.IsNullOrEmpty(account))
if (!string.IsNullOrEmpty(account))
{
sql += " and t1.bailun_account=@bailun_account";
sqlparam.Add("bailun_account", account);
......@@ -3325,7 +3325,7 @@ namespace Bailun.DC.Services
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
public dc_base_crm_refund ListOrderRefundCount(string platform, string website, string account, DateTime? start, DateTime? end,string searchkey)
public dc_base_crm_refund ListOrderRefundCount(string platform, string website, string account, DateTime? start, DateTime? end, string searchkey)
{
var sqlparam = new DynamicParameters();
var sql = "select sum(amount_refund) amount_refund,sum(bailun_sku_quantity_refund) bailun_sku_quantity_refund,sum(amount_refund_rmb) amount_refund_rmb from dc_base_crm_refund where 1=1 ";
......@@ -3388,7 +3388,7 @@ namespace Bailun.DC.Services
/// <param name="end"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<dc_base_oms_order> ListDepositReceived(BtTableParameter request, string platform, string website, string account, DateTime? start, DateTime? end,int? companyid, ref int total,ref dc_base_oms_order m)
public List<dc_base_oms_order> ListDepositReceived(BtTableParameter request, string platform, string website, string account, DateTime? start, DateTime? end, int? companyid, ref int total, ref dc_base_oms_order m)
{
var sqlparam = new DynamicParameters();
var sql = "select origin_order_id,bailun_order_id,platform_type,website,seller_account,paid_time,(amount_sales*seller_order_exchange_rate) amount_sales,(amount_shipping*seller_order_exchange_rate) amount_shipping,(amount_product*seller_order_exchange_rate) amount_product,(amount_tax*seller_order_exchange_rate) amount_tax,(amount_adjustment*seller_order_exchange_rate) amount_adjustment,(amount_gift_wrap*seller_order_exchange_rate) amount_gift_wrap,(amount_refund*seller_order_exchange_rate) amount_refund,amount_prepaid,(cost_promotion*seller_order_exchange_rate) cost_promotion,(cost_platform_fee*seller_order_exchange_rate) cost_platform_fee,cost_product,cost_shipping,cost_package,(cost_fba_fee*seller_order_exchange_rate) cost_fba_fee,(cost_paypal_fee*seller_order_exchange_rate) cost_paypal_fee,(cost_refund_commisson*seller_order_exchange_rate) cost_refund_commisson,cost_handle_bailun,cost_handle_platform,cost_tail,cost_first,profit_total,profit_rate,(cost_total) cost_total from dc_base_oms_order where bailun_order_status='Handling' and bailun_shipping_status!='TotalShipping' and amount_prepaid>0 and has_scalp=0 and has_innersale=0 and bailun_interception_status in ('None','Failed') ";
......@@ -3406,7 +3406,7 @@ namespace Bailun.DC.Services
sqlcount += " and website=@website";
sqlparam.Add("website", website);
}
if(!string.IsNullOrEmpty(account))
if (!string.IsNullOrEmpty(account))
{
sql += " and seller_account=@seller_account";
sqlcount += " and seller_account=@seller_account";
......@@ -3433,12 +3433,12 @@ namespace Bailun.DC.Services
if (!string.IsNullOrEmpty(request.sort))
{
sql += " order by "+request.sort+" "+request.order;
sql += " order by " + request.sort + " " + request.order;
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if(cn.State == System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -3467,7 +3467,7 @@ namespace Bailun.DC.Services
/// <param name="sku">sku编码</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<dc_mid_skudeliver_weighdiff> ListWeighDiff(BtTableParameter request, DateTime? start, DateTime? end, int? min, int? max,string sku,ref int total)
public List<dc_mid_skudeliver_weighdiff> ListWeighDiff(BtTableParameter request, DateTime? start, DateTime? end, int? min, int? max, string sku, ref int total)
{
var sqlparam = new DynamicParameters();
var sql = @"select * from dc_mid_skudeliver_weighdiff where 1=1 ";
......@@ -3500,7 +3500,7 @@ namespace Bailun.DC.Services
if (!string.IsNullOrEmpty(request.sort))
{
sql += (" order by "+request.sort+" "+request.order);
sql += (" order by " + request.sort + " " + request.order);
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
......@@ -3564,7 +3564,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Query<dc_mid_skudeliver_weighdiff>( sql, sqlparam,null,true,2*60);
var obj = cn.Query<dc_mid_skudeliver_weighdiff>(sql, sqlparam, null, true, 2 * 60);
return obj.AsList();
}
......@@ -3643,7 +3643,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Query<dc_base_oms_sku>(sql+" limit "+(page-1)*pagesize+","+pagesize, 2 * 60);
var obj = cn.Query<dc_base_oms_sku>(sql + " limit " + (page - 1) * pagesize + "," + pagesize, 2 * 60);
return obj.ToList();
}
......@@ -3662,7 +3662,7 @@ namespace Bailun.DC.Services
/// <param name="end">付款结束时间</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<dc_base_oms_platform_sku> ListOrderPlatformSku(int page, int pagesize, DateTime? start, DateTime? end, string platform,int? companyid, ref int total)
public List<dc_base_oms_platform_sku> ListOrderPlatformSku(int page, int pagesize, DateTime? start, DateTime? end, string platform, int? companyid, ref int total)
{
var sqlparam = new DynamicParameters();
var sql = "select origin_order_id,platform_type,website,order_currency,seller_order_exchange_rate,platform_sku_quantity_ordered,platform_sku_unit_price,item_id,platform_sku from dc_base_oms_platform_sku where has_delete=0 and has_scalp=0 and bailun_order_status!='Canceled' ";
......@@ -3693,7 +3693,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Page<dc_base_oms_platform_sku>(page, pagesize, sql, ref total,sqlparam);
var obj = cn.Page<dc_base_oms_platform_sku>(page, pagesize, sql, ref total, sqlparam);
return obj.AsList();
}
......@@ -3717,12 +3717,12 @@ namespace Bailun.DC.Services
var commonCondition = $" ##.bailun_order_status!='Canceled' and ((##.platform_type!='FBA' and ##.bailun_order_status!='CantHandle') or ##.platform_type='FBA') and ##.has_scalp=0 and ##.paid_time>='{start.ToString("yyyy-MM-dd HH:mm:ss")}' and ##.paid_time<'{end.ToString("yyyy-MM-dd HH:mm:ss")}' and ##.platform_type=@platform ";
var sql = $@"select Count(t1.bailun_order_id) as count,platform_sku as itemid from dc_base_oms_platform_sku t1
join dc_base_oms_order t2 on t1.bailun_order_id=t2.bailun_order_id and t2.has_innersale=0 and {commonCondition.Replace("##","t2")}
where {commonCondition.Replace("##","t1")} and platform_sku in ('{string.Join("','",itemid)}')
join dc_base_oms_order t2 on t1.bailun_order_id=t2.bailun_order_id and t2.has_innersale=0 and {commonCondition.Replace("##", "t2")}
where {commonCondition.Replace("##", "t1")} and platform_sku in ('{string.Join("','", itemid)}')
";
var sqlparam = new DynamicParameters();
sqlparam.Add("platform",platform);
sqlparam.Add("platform", platform);
sql += " group by platform_sku";
......@@ -3749,7 +3749,7 @@ namespace Bailun.DC.Services
/// <param name="start">付款开始时间</param>
/// <param name="end">付款结束时间</param>
/// <returns></returns>
public List<mSalerProfit> ListSalerProfit(DateTime? start, DateTime? end,int? companyid)
public List<mSalerProfit> ListSalerProfit(DateTime? start, DateTime? end, int? companyid)
{
var sql = "select seller_id,seller_account,sum(profit_total) profit_total from dc_base_oms_order where has_scalp=0 and has_innersale=0 and bailun_order_status!='Canceled'";
var sqlparam = new DynamicParameters();
......@@ -3803,7 +3803,7 @@ namespace Bailun.DC.Services
/// <param name="orderno">平台订单号</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<dc_base_oms_order> ListOrderReturn(BtTableParameter parameter, DateTime? start, DateTime? end,DateTime? paytimestart,DateTime? paytimeend, int? companyid, string platform, string website, string orderno,ref int total)
public List<dc_base_oms_order> ListOrderReturn(BtTableParameter parameter, DateTime? start, DateTime? end, DateTime? paytimestart, DateTime? paytimeend, int? companyid, string platform, string website, string orderno, ref int total)
{
var sqlparam = new DynamicParameters();
var sqlselect = "select t1.platform_type,t1.website,t1.origin_order_id,t1.seller_account,t1.amount_refund,(t1.seller_order_exchange_rate*t1.amount_refund) as refundrmb,t1.refund_time,t1.refund_reference_id from dc_base_oms_order t1 ";
......@@ -3862,7 +3862,7 @@ namespace Bailun.DC.Services
{
sql += " order by t1." + parameter.sort + " " + parameter.order;
}
else{
else {
sql += " order by t1.refund_time desc ";
}
......@@ -3873,7 +3873,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Page<dc_base_oms_order>(parameter.pageIndex, parameter.limit, sqlselect+sql, ref total, sqlparam, sqlcount, 2*60);
var obj = cn.Page<dc_base_oms_order>(parameter.pageIndex, parameter.limit, sqlselect + sql, ref total, sqlparam, sqlcount, 2 * 60);
return obj.AsList();
}
......@@ -3897,7 +3897,7 @@ namespace Bailun.DC.Services
var sqlparam = new DynamicParameters();
var sql = "select t1.platform_type,t1.website,t1.origin_order_id,t1.seller_account,t1.amount_refund,(t1.seller_order_exchange_rate*t1.amount_refund) as refundrmb,t1.refund_time,t1.refund_reference_id from dc_base_oms_order t1 ";
//sql += " where ((t1.platform_type!='FBA' and t1.bailun_order_status!='CantHandle') or t1.platform_type='FBA') and t1.amount_refund>0 ";
sql = " where t1.amount_refund>0 ";
sql += " where t1.amount_refund>0 ";
//if (paytimestart.HasValue || paytimeend.HasValue)
//{
......@@ -3953,7 +3953,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.Query<dc_base_oms_order>(sql,sqlparam,null,true,3*60);
var obj = cn.Query<dc_base_oms_order>(sql, sqlparam, null, true, 3 * 60);
return obj.AsList();
}
......@@ -4030,7 +4030,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.QueryFirstOrDefault<dc_base_oms_order>(sql,sqlparam);
var obj = cn.QueryFirstOrDefault<dc_base_oms_order>(sql, sqlparam);
return obj;
}
......@@ -4052,7 +4052,7 @@ namespace Bailun.DC.Services
/// <param name="companyid"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<dc_base_finance_amazon_ad_product> ListAmazonADSku(BtTableParameter parameter, string account, DateTime? start, DateTime? end,int? companyid,ref int total)
public List<dc_base_finance_amazon_ad_product> ListAmazonADSku(BtTableParameter parameter, string account, DateTime? start, DateTime? end, int? companyid, ref int total)
{
var sqlparam = new DynamicParameters();
var sql = "select t2.account_name,t1.sku,t1.currency,cost,(cost*exchange_rate) cost_rmb,report_date from dc_base_finance_amazon_ad_product t1 join dc_base_company_account t2 on t1.account_id=t2.account_id ";
......@@ -4085,12 +4085,12 @@ namespace Bailun.DC.Services
if (!string.IsNullOrEmpty(parameter.sort))
{
sql += " order by t1."+parameter.sort+" "+parameter.order;
sql += " order by t1." + parameter.sort + " " + parameter.order;
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if(cn.State == System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -4164,10 +4164,10 @@ namespace Bailun.DC.Services
/// <param name="end"></param>
/// <param name="companyid"></param>
/// <returns></returns>
public dc_base_finance_amazon_ad_product ListAmazonADSkuCount(string account, DateTime? start, DateTime? end, int? companyid)
public dc_base_finance_amazon_ad_product ListAmazonADSkuCount(string account, DateTime? start, DateTime? end, int? companyid,bool isUSD)
{
var sqlparam = new DynamicParameters();
var sql = "select sum(cost) cost,sum(cost*exchange_rate) cost_rmb from dc_base_finance_amazon_ad_product t1 join dc_base_company_account t2 on t1.account_id=t2.account_id ";
var sql = $"select sum(cost) cost,sum(cost*{(isUSD?"exchange_rate_usd":"exchange_rate")}) cost_rmb from dc_base_finance_amazon_ad_product t1 join dc_base_company_account t2 on t1.account_id=t2.account_id ";
if (!string.IsNullOrEmpty(account))
{
......@@ -4202,7 +4202,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.QueryFirstOrDefault<dc_base_finance_amazon_ad_product>(sql,sqlparam);
var obj = cn.QueryFirstOrDefault<dc_base_finance_amazon_ad_product>(sql, sqlparam);
return obj;
}
......@@ -4211,6 +4211,148 @@ namespace Bailun.DC.Services
#endregion
#endregion
#region Paypal
/// <summary>
/// paypal费流水
/// </summary>
/// <param name="parameter"></param>
/// <param name="start"></param>
/// <param name="end"></param>
/// <param name="companyid"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<dc_base_finance_paypal> ListPaypal(BtTableParameter parameter,DateTime? start,DateTime? end,int? companyid,ref int total)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.transaction_id,t1.receipt_id,t1.transaction_type,t1.payment_type,t1.payment_date,t1.gross_amount,t1.payment_status,t1.business,t1.receiver,t1.currency,(t1.gross_amount*t1.other_to_cny_exchange_rate) gross_amount_rmb from dc_base_finance_paypal t1 where 1=1 ";
if (start.HasValue)
{
sql += " and t1.payment_date>=@start";
sqlparam.Add("start", start.Value);
}
if (end.HasValue)
{
sql += " and t1.payment_date<@end";
sqlparam.Add("end", end.Value.AddDays(1));
}
if (companyid.HasValue && companyid.Value != 0)
{
sql += " and t1.saas_company_id=@companyid";
sqlparam.Add("companyid", companyid.Value);
}
if (!string.IsNullOrWhiteSpace(parameter.sort))
{
sql += " and t1." + parameter.sort + " " + parameter.order;
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Page<dc_base_finance_paypal>(parameter.pageIndex, parameter.limit, sql, ref total, sqlparam, "", 2 * 60);
return obj.AsList();
}
}
/// <summary>
/// Paypal费用汇总
/// </summary>
/// <param name="start"></param>
/// <param name="end"></param>
/// <param name="companyid"></param>
/// <returns></returns>
public dc_base_finance_paypal ListPaypalCount(DateTime? start, DateTime? end, int? companyid)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.gross_amount,(t1.gross_amount*t1.other_to_cny_exchange_rate) gross_amount_rmb from dc_base_finance_paypal t1 where 1=1 ";
if (start.HasValue)
{
sql += " and t1.payment_date>=@start";
sqlparam.Add("start", start.Value);
}
if (end.HasValue)
{
sql += " and t1.payment_date<@end";
sqlparam.Add("end", end.Value.AddDays(1));
}
if (companyid.HasValue && companyid.Value != 0)
{
sql += " and t1.saas_company_id=@companyid";
sqlparam.Add("companyid", companyid.Value);
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.QueryFirstOrDefault<dc_base_finance_paypal>(sql, sqlparam);
return obj;
}
}
/// <summary>
/// paypal费流水
/// </summary>
/// <param name="start"></param>
/// <param name="end"></param>
/// <param name="companyid"></param>
/// <returns></returns>
public List<dc_base_finance_paypal> ListPaypal(DateTime? start, DateTime? end, int? companyid)
{
var sqlparam = new DynamicParameters();
var sql = "select t1.transaction_id,t1.receipt_id,t1.transaction_type,t1.payment_type,t1.payment_date,t1.gross_amount,t1.payment_status,t1.business,t1.receiver,t1.currency,(t1.gross_amount*t1.other_to_cny_exchange_rate) gross_amount_rmb from dc_base_finance_paypal t1 where 1=1 ";
if (start.HasValue)
{
sql += " and t1.payment_date>=@start";
sqlparam.Add("start", start.Value);
}
if (end.HasValue)
{
sql += " and t1.payment_date<@end";
sqlparam.Add("end", end.Value.AddDays(1));
}
if (companyid.HasValue && companyid.Value != 0)
{
sql += " and t1.saas_company_id=@companyid";
sqlparam.Add("companyid", companyid.Value);
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Query<dc_base_finance_paypal>(sql,sqlparam, null,true,2*60);
return obj.AsList();
}
}
#endregion
#region 图表
......
......@@ -695,7 +695,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
msg = list.Count>0?"":"成本接口返回了空记录。",
col = listCol,
list = listValue,
amount = Math.Round(list.Sum(a=>a.amountRmb),2)
amount = Math.Round(list.Sum(a=>a.amountRmb)+ listInterest.Sum(a=>a.RepayInterestRMB), 2)
});
}
......
......@@ -1127,7 +1127,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
var obj = _service.ListEbayFee(parameter, companyid, start, end, ref total, feeType,orderno,account);
var countObj = _service.EbayFeeCount(companyid, start, end, feeType, orderno,account);
var countObj = _service.EbayFeeCount(companyid, start, end, feeType, orderno,account,false);
var list = obj.Select(a => new {
a.id,
......@@ -1191,7 +1191,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
var obj = _service.ListEbayFee(parameter, companyid, start, end, ref total, feeType, orderno, account);
var countObj = _service.EbayFeeCount(companyid, start, end, feeType, orderno, account);
var countObj = _service.EbayFeeCount(companyid, start, end, feeType, orderno, account,false);
var list = obj.Select(a => new {
a.id,
......@@ -1347,9 +1347,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
result = _service.ListPlatformProfit(platform,website,start, end, shipstart, shipend, currency.ToUpper() == "USD", companyid, skucategoryids);
}
ebayADFee = _service.EbayFeeCount(companyid, dtstart, dtend, ADfeeType, "", "");
ebayPutAway = _service.EbayFeeCount(companyid, dtstart, dtend, PutAwayFeeType, "", "");
var amazonAD = _service.ListAmazonADSkuCount("", dtstart, dtend, companyid);
ebayADFee = _service.EbayFeeCount(companyid, dtstart, dtend, ADfeeType, "", "", currency.ToUpper() == "USD");
ebayPutAway = _service.EbayFeeCount(companyid, dtstart, dtend, PutAwayFeeType, "", "", currency.ToUpper() == "USD");
var amazonAD = _service.ListAmazonADSkuCount("", dtstart, dtend, companyid, currency.ToUpper() == "USD");
foreach (var item in result)
{
......@@ -2090,7 +2090,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
var total = 0;
var obj = _service.ListAmazonADSku(parameter, account, start, end, companyid, ref total);
var countObj = _service.ListAmazonADSkuCount(account, start, end, companyid);
var countObj = _service.ListAmazonADSkuCount(account, start, end, companyid,false);
var list = obj.Select(a => new {
a.account_name,
......@@ -2159,6 +2159,104 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
#endregion
#region Paypal
/// <summary>
/// Paypal费流水
/// </summary>
/// <returns></returns>
public ActionResult ListPaypal()
{
return View();
}
/// <summary>
/// Paypal费流水数据
/// </summary>
/// <param name="parameter"></param>
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
public string ListPaypalJson(BtTableParameter parameter,DateTime? start,DateTime? end)
{
var total = 0;
var companyid = HttpContextHelper.Current?.User?.GetCompanyId().ToInt32();
var _service = new Services.OrdersServices();
var obj = _service.ListPaypal(parameter, start, end, companyid, ref total);
var countObj = _service.ListPaypalCount(start, end, companyid);
var list = obj.Select(a => new {
a.transaction_id,
a.receipt_id,
a.transaction_type,
a.payment_type,
payment_date = a.payment_date.ToString("yyyy-MM-dd HH:mm:ss"),
gross_amount = a.gross_amount.ToString("N2"),
a.payment_status,
a.business,
a.receiver,
a.currency,
gross_amount_rmb = a.gross_amount_rmb.ToString("N2")
});
return JsonConvert.SerializeObject(new { total = total, rows = list, count_row = new {
currency = "合计",
gross_amount_rmb = countObj.gross_amount_rmb.ToString("N2"),
gross_amount = countObj.gross_amount.ToString("N2")
},
companyid
});
}
/// <summary>
/// 导出paypal明细
/// </summary>
/// <param name="start"></param>
/// <param name="end"></param>
/// <param name="companyid"></param>
/// <returns></returns>
public ActionResult ExportPaypal(DateTime? start,DateTime? end,int companyid)
{
var obj = new Services.OrdersServices().ListPaypal(start, end, companyid);
var list = obj.Select(a => new {
a.transaction_id,
a.receipt_id,
a.transaction_type,
a.payment_type,
payment_date = a.payment_date.ToString("yyyy-MM-dd HH:mm:ss"),
gross_amount = a.gross_amount.ToString("N2"),
a.payment_status,
a.business,
a.receiver,
a.currency,
gross_amount_rmb = a.gross_amount_rmb.ToString("N2")
});
var colNames = new List<string> {"交易号","receipt_id","交易类型", "支付类型", "币种",
"总费用","总费用RMB","交易状态","接收帐号","时间"
};
var listVal = new List<string>();
foreach (var item in list)
{
listVal.Add(
item.transaction_id + "|" + item.receipt_id + "|" + item.transaction_type + "|" + item.payment_type + "|" + item.currency + "|" +
item.gross_amount+"|"+item.gross_amount_rmb+"|"+item.payment_status + "|"+item.receiver+"|"+item.payment_date
);
}
var filename = "Ebay Paypal明细导出" + DateTime.Now.ToString("yyyyMMddHHmmss");
var filepath = _hostingEnvironment.WebRootPath + "\\Files\\Report\\" + DateTime.Now.ToString("yyyy-MM-dd") + "\\";
ToCSV(listVal, colNames, filename, filepath);
return File("~/Files/Report/" + DateTime.Now.ToString("yyyy-MM-dd") + "/" + filename + ".csv", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", filename + ".csv");
}
#endregion
#region 共用统计
/// <summary>
......

@{
ViewData["Title"] = "Ebay Paypal费";
Layout = "~/Pages/Shared/_MainLayout.cshtml";
ViewBag.Nav = new string[] { "统计", "Ebay", "Paypal费" };
}
<div class="row">
<div class="col-sm-12">
<div id="rightcontain">
<div class="ibox-content m-b-sm border-bottom">
<form id="toolbar">
<div class="form-inline" style="line-height:40px;">
<div class="form-group" style="display:none;">
<label>&nbsp;</label>
<select id="account" name="account" class="form-control">
<option value="">请选择帐号</option>
</select>
</div>
<div class="form-group">
<label>费用时间</label>
<input id="start" name="start" type="text" class="form-control" style="width:130px;" value="@(DateTime.Now.AddDays(-7).ToString("yyyy-MM-dd"))" />
<span>至</span>
<input id="end" name="end" type="text" class="form-control" style="width:130px;" value="@(DateTime.Now.ToString("yyyy-MM-dd"))" />
</div>
<div class="form-group">
<label>&nbsp;</label>
<input id="orderno" name="orderno" class="form-control" style="width:130px;" placeholder="平台订单号" />
</div>
<div class="form-group">
<label>&nbsp;</label>
<button type="button" class="btn btn-primary" onclick="list();"><i class="fa fa-search"></i>&nbsp;查询</button>
<button type="button" class="btn btn-success" onclick="exportxls();">导出</button>
</div>
</div>
</form>
</div>
<div class="ibox-content m-b-sm border-bottom">
<table id="roletable" style="table-layout:fixed;"></table>
</div>
</div>
</div>
</div>
@section css{
<link href="~/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" />
<link href="~/css/bootstrap-table-fixed-columns.css" rel="stylesheet" />
<style>
.mules {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
</style>
}
@section scripts{
<script src="~/js/jquery.ztree.core.min.js"></script>
<script src="~/js/jquery.ztree.excheck.min.js"></script>
<script src="~/js/bootstrap-table-fixed-columns.js" type="text/javascript"></script>
<script type="text/javascript">
var tb;
var companyid = 0;
$(document).ready(function () {
laydate.render({ elem: '#start' });
laydate.render({ elem: '#end' });
var height = document.body.clientHeight;
$("#roletable").attr("data-height", (height - 170));
list();
listAccount();
//listWebsite();
//listcategory12();
})
function list() {
var columns = [
{
field: 'transaction_id', title: '交易号', width: '160', formatter: function (idx, data) {
return '<div class="mules" title="' + data.transaction_id + '">' + data.transaction_id + '</div>';
}
},
{ field: 'receipt_id', title: 'receipt_id', width: '120' },
{ field: 'transaction_type', title: '交易类型', width: '120' },
{ field: 'payment_type', title: '支付类型', width: '130', iscount: true },
{ field: 'currency', title: '币种', width: '130' },
{ field: 'gross_amount', title: '总费用', width: '100', sortable: true, iscount: true },
{ field: 'gross_amount_rmb', title: '总费用RMB', width: '130', iscount: true },
{ field: 'payment_status', title: '交易状态', width: '110' },
{ field: 'receiver', title: '接收帐号', width: '110' },
{ field: 'payment_date', title: '时间', width: '130', sortable: true }
];
var url = '@Url.Content("~/Reports/Orders/ListPaypalJson")' + '?' + $("#toolbar").serialize();
if (tb == undefined) {
tb = OnlyTable("roletable", columns, url, "", {
showfooter: true, loadsuccess: function (d) {
//替换汇总行的相关列值
var tr = $('.fixed-table-footer').find('tr');
for (var c in columns) {
var key = columns[c].field;
if (columns[c].iscount) {
for (var v in d.count_row) {
if (key == v) {
tr.find('td').eq(c).children('div').first().html(d.count_row[v]);
break;
}
}
}
}
companyid = d.companyid;
}
}, {
fixedcol: true,
fixedcolnum: 1
});
}
else {
tb.bootstrapTable('refresh', { url: url });
}
}
function listAccount() {
$.submit({
url: '@Url.Content("~/Reports/Orders/ListAccount")',
type:'POST',
paramData: 'platform=Ebay',
func: function (result) {
if (result != null && result != undefined) {
$('#account').html('<option value="">选择帐号</option>');
for (var i = 0; i < result.length; i++) {
$('#account').append('<option value="' + result[i] + '">' + result[i]+'</option>');
}
}
}
})
}
function listWebsite() {
$.submit({
url: '@Url.Content("~/Reports/Orders/ListWebSite")',
type:'POST',
paramData: 'platform=@(ViewBag.platform)',
func: function (result) {
if (result != null && result != undefined) {
$('#website').html('<option value="">选择站点</option>');
for (var i = 0; i < result.length; i++) {
$('#website').append('<option value="' + result[i] + '">' + result[i]+'</option>');
}
}
}
})
}
function exportxls() {
window.open('@Url.Content("~/Reports/Orders/ExportPaypal")' + '?' + $("#toolbar").serialize() + '&companyid=' + companyid, '_blank');
}
</script>
}
......@@ -296,6 +296,11 @@
<span>EBay退款流水</span>
</a>
</li>
<li>
<a class="J_menuItem" href="@Url.Content("~/Reports/Orders/ListPaypal")" data-index="0" style="padding-left:74px;">
<span>EBay Paypal流水</span>
</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