Commit 3f6c2eb7 by guanzhenshan

更新分录信息,更新退款没有增加公司过滤的问题

parent f7b11fe5
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.Models.Ebay
{
/// <summary>
/// ebay订单发货状态
/// </summary>
public class mPaypalIncomingShipStatus
{
/// <summary>
/// 交易号
/// </summary>
public string transaction_id { get; set; }
/// <summary>
/// sku销售额
/// </summary>
public decimal sales_amount_sku { get; set; }
/// <summary>
/// 销售数量
/// </summary>
public int count_sales { get; set; }
/// <summary>
/// 发货数量
/// </summary>
public int count_shipping { get; set; }
/// <summary>
/// 退款金额
/// </summary>
public decimal amount_return { get; set; }
/// <summary>
/// 订单币种
/// </summary>
public string currency { get; set; }
}
}
...@@ -2258,7 +2258,7 @@ group by currency"; ...@@ -2258,7 +2258,7 @@ group by currency";
var objAdvanceReceive_n = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60); var objAdvanceReceive_n = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
//--2、临时冻结 '冻结余额以调查争议' //--2、临时冻结 '冻结余额以调查争议'
sql = $@"select currency, sum(gross) gross from dc_base_income_ebay_paypal where company_id = 1 and `status`= '已完成' and account_name = '{account}' and type in ('冻结余额以调查争议') and record_time>= '{start.ToString("yyyy-MM-dd HH:mm:ss")}' and record_time<'{end.ToString("yyyy-MM-dd HH:mm:ss")}' sql = $@"select currency, sum(gross) gross from dc_base_income_ebay_paypal where company_id = 1 and account_name = '{account}' and type in ('冻结余额以调查争议') and record_time>= '{start.ToString("yyyy-MM-dd HH:mm:ss")}' and record_time<'{end.ToString("yyyy-MM-dd HH:mm:ss")}'
group by currency"; group by currency";
var objFreeze = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60); var objFreeze = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
...@@ -2285,7 +2285,7 @@ group by currency"; ...@@ -2285,7 +2285,7 @@ group by currency";
var objCharebackCancel = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60); var objCharebackCancel = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
//--3、争议补偿 //--3、争议补偿
sql = $@"select currency,sum(gross) gross from dc_base_income_ebay_paypal where company_id = 1 and `status`= '已完成' and account_name = '{account}' and type in ('取消冻结以解决争议') and record_time>= '{start.ToString("yyyy-MM-dd HH:mm:ss")}' and record_time<'{end.ToString("yyyy-MM-dd HH:mm:ss")}' sql = $@"select currency,sum(gross) gross from dc_base_income_ebay_paypal where company_id = 1 and account_name = '{account}' and type in ('取消冻结以解决争议') and record_time>= '{start.ToString("yyyy-MM-dd HH:mm:ss")}' and record_time<'{end.ToString("yyyy-MM-dd HH:mm:ss")}'
group by currency"; group by currency";
var objCompensationDispute = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60); var objCompensationDispute = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
...@@ -2408,7 +2408,7 @@ group by currency"; ...@@ -2408,7 +2408,7 @@ group by currency";
var m1 = new dc_mid_incoming_paypal var m1 = new dc_mid_incoming_paypal
{ {
account_subject = "临时冻结", account_subject = "临时冻结",
amount = item.gross, amount = Math.Abs(item.gross),
balance_impact = "借", balance_impact = "借",
createtime = DateTime.Now, createtime = DateTime.Now,
currency = item.currency, currency = item.currency,
...@@ -2423,7 +2423,7 @@ group by currency"; ...@@ -2423,7 +2423,7 @@ group by currency";
var m2 = new dc_mid_incoming_paypal var m2 = new dc_mid_incoming_paypal
{ {
account_subject = "临时冻结", account_subject = "临时冻结",
amount = item.gross, amount = Math.Abs(item.gross),
balance_impact = "贷", balance_impact = "贷",
createtime = DateTime.Now, createtime = DateTime.Now,
currency = item.currency, currency = item.currency,
...@@ -2524,44 +2524,44 @@ group by currency"; ...@@ -2524,44 +2524,44 @@ group by currency";
} }
//退单撤销 //退单撤销
if (objCharebackCancel.Count() > 0) //if (objCharebackCancel.Count() > 0)
{ //{
foreach (var item in objCharebackCancel) // foreach (var item in objCharebackCancel)
{ // {
var m1 = new dc_mid_incoming_paypal // var m1 = new dc_mid_incoming_paypal
{ // {
account_subject = "退单撤销", // account_subject = "退单撤销",
amount = item.gross, // amount = item.gross,
balance_impact = "借", // balance_impact = "借",
createtime = DateTime.Now, // createtime = DateTime.Now,
currency = item.currency, // currency = item.currency,
note = "其他货币资金", // note = "其他货币资金",
paypal_account = account, // paypal_account = account,
platform_bank = "paypal", // platform_bank = "paypal",
receive_account = account, // receive_account = account,
recordtime = start.ToString("yyyy-MM") // recordtime = start.ToString("yyyy-MM")
}; // };
var m2 = new dc_mid_incoming_paypal // var m2 = new dc_mid_incoming_paypal
{ // {
account_subject = "退单撤销", // account_subject = "退单撤销",
amount = item.gross, // amount = item.gross,
balance_impact = "贷", // balance_impact = "贷",
createtime = DateTime.Now, // createtime = DateTime.Now,
currency = item.currency, // currency = item.currency,
note = "营业外收入", // note = "营业外收入",
paypal_account = account, // paypal_account = account,
platform_bank = "", // platform_bank = "",
receive_account = account, // receive_account = account,
recordtime = start.ToString("yyyy-MM") // recordtime = start.ToString("yyyy-MM")
}; // };
cn.Insert<dc_mid_incoming_paypal>(m1); // cn.Insert<dc_mid_incoming_paypal>(m1);
cn.Insert<dc_mid_incoming_paypal>(m2); // cn.Insert<dc_mid_incoming_paypal>(m2);
} // }
} //}
//争议补偿 //争议补偿
if (objCompensationDispute.Count() > 0) if (objCompensationDispute.Count() > 0)
...@@ -2606,6 +2606,23 @@ group by currency"; ...@@ -2606,6 +2606,23 @@ group by currency";
//已发放退款 --负数 //已发放退款 --负数
if (objRefundIssued_n.Count() > 0) if (objRefundIssued_n.Count() > 0)
{ {
//获取退款明细
var listreturn = cn.Query<dc_base_income_ebay_paypal>($"select * from dc_base_income_ebay_paypal where company_id = 1 and `status`= '已完成' and account_name = '{account}' and type in ('付款退款') and record_time>= '{start.ToString("yyyy-MM-dd HH:mm:ss")}' and record_time<'{end.ToString("yyyy-MM-dd HH:mm:ss")}' and gross<0");
var listShippingStatus = new OrdersServices().CheckShipStatusByTranId(listreturn.Select(a => a.reference_txn_id).ToList());
foreach (var item in listShippingStatus)
{
//匹配退款金额
var temp = listreturn.Where(a => a.reference_txn_id == item.transaction_id).FirstOrDefault();
if (temp != null)
{
item.amount_return = temp.gross;
}
}
//匹配币种
foreach (var item in objRefundIssued_n) foreach (var item in objRefundIssued_n)
{ {
//主营业务收入 - 销售折扣与折让 //主营业务收入 - 销售折扣与折让
......
...@@ -3283,6 +3283,40 @@ namespace Bailun.DC.Services ...@@ -3283,6 +3283,40 @@ namespace Bailun.DC.Services
} }
} }
/// <summary>
/// 检查ebay交易号是否已发货
/// </summary>
/// <param name="transactions">交易号集合</param>
/// <returns></returns>
public List<Models.Ebay.mPaypalIncomingShipStatus> CheckShipStatusByTranId(List<string> transactions)
{
//区分合并订单和不合并订单
var sql = $@"select t2.order_currency as currency,t1.transaction_id,sum(t1.amount_sales*t1.bailun_sku_quantity_ordered) sales_amount_sku,sum(bailun_sku_quantity_ordered) count_sales,sum(t1.bailun_sku_quantity_shipped) count_shipping from dc_base_oms_sku t1
join dc_base_oms_order t2 on t1.origin_order_id=t2.origin_order_id and t2.bailun_merge_status!='Merged'
where t1.transaction_id in ('{string.Join("','",transactions)}') and t1.has_delete=0
group by t1.transaction_id
union all
select t2.order_currency as currency,t2.transaction_id,sum(t1.amount_sales*t1.bailun_sku_quantity_ordered) sales_amount_sku,sum(bailun_sku_quantity_ordered) count_sales,sum(t1.bailun_sku_quantity_shipped) count_shipping from dc_base_oms_sku t1
join dc_base_oms_order t2 on t1.bailun_order_id=t2.aftermerged_bailun_order_no and t2.bailun_merge_status='Merged' and t2.transaction_id in ('{string.Join("','", transactions)}')
where t1.has_delete=0
group by t2.transaction_id";
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Query<Models.Ebay.mPaypalIncomingShipStatus>(sql, null, null, true, 2 * 60).Distinct().ToList();
return obj;
}
}
#endregion #endregion
#region Platform Common #region Platform Common
...@@ -4227,7 +4261,7 @@ namespace Bailun.DC.Services ...@@ -4227,7 +4261,7 @@ namespace Bailun.DC.Services
sql += ") t2 on t1.origin_order_id=t2.origin_order_id"; sql += ") t2 on t1.origin_order_id=t2.origin_order_id";
} }
sql += " where t1.is_deleted=0 and t1.is_freeze=0 "; sql += " where t1.is_deleted=0 and t1.is_freeze=0 and t1.company_id=" + companyid.Value;
if (start.HasValue) if (start.HasValue)
{ {
......
...@@ -4590,20 +4590,20 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -4590,20 +4590,20 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{ {
var file = item; var file = item;
var index = file.FileName.IndexOf("=="); //var index = file.FileName.IndexOf("==");
var accountname = file.FileName.Substring(index + 2, file.FileName.Length - (index + 2)); //var accountname = file.FileName.Substring(index + 2, file.FileName.Length - (index + 2));
var indexdot = accountname.ToLower().IndexOf(".csv"); //var indexdot = accountname.ToLower().IndexOf(".csv");
accountname = accountname.Substring(0, indexdot); //accountname = accountname.Substring(0, indexdot);
if (accountname.Length == 0) //if (accountname.Length == 0)
{ //{
return Json(new // return Json(new
{ // {
success = false, // success = false,
msg = "请填写正确的帐号信息" // msg = "请填写正确的帐号信息"
}); // });
} //}
try try
{ {
...@@ -4702,7 +4702,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -4702,7 +4702,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{ {
company_id = companyid, company_id = companyid,
record_time = time, record_time = time,
account_name = accountname, //account_name = accountname,
time_zone = arr[2], time_zone = arr[2],
name = arr[3], name = arr[3],
...@@ -4773,6 +4773,16 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -4773,6 +4773,16 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
var msg = ""; var msg = "";
if (list.Count > 0) if (list.Count > 0)
{ {
//匹配当前帐号
var first = list.GroupBy(a=>a.to_email).OrderByDescending(a=>a.Count()).FirstOrDefault();
if (first != null)
{
foreach (var temp in list)
{
temp.account_name = first.Key;
}
}
msg = new Services.FinanceReportServices().SaveEbayPayPalInfo(list); msg = new Services.FinanceReportServices().SaveEbayPayPalInfo(list);
} }
...@@ -4783,7 +4793,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -4783,7 +4793,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{ {
var firstDay = DateTime.Parse(objPaypal.record_time.ToString("yyyy-MM") + "-01"); var firstDay = DateTime.Parse(objPaypal.record_time.ToString("yyyy-MM") + "-01");
var r = new Services.FinanceReportServices().Analyze_PaypalIncoming(accountname, firstDay,firstDay.AddMonths(1)); var r = new Services.FinanceReportServices().Analyze_PaypalIncoming(list.FirstOrDefault().account_name, firstDay,firstDay.AddMonths(1));
if (!string.IsNullOrEmpty(r)) if (!string.IsNullOrEmpty(r))
{ {
......
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