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";
var objAdvanceReceive_n = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
//--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";
var objFreeze = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
......@@ -2285,7 +2285,7 @@ group by currency";
var objCharebackCancel = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
//--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";
var objCompensationDispute = cn.Query<mPaypalIncome>(sql, null, null, true, 2 * 60);
......@@ -2408,7 +2408,7 @@ group by currency";
var m1 = new dc_mid_incoming_paypal
{
account_subject = "临时冻结",
amount = item.gross,
amount = Math.Abs(item.gross),
balance_impact = "借",
createtime = DateTime.Now,
currency = item.currency,
......@@ -2423,7 +2423,7 @@ group by currency";
var m2 = new dc_mid_incoming_paypal
{
account_subject = "临时冻结",
amount = item.gross,
amount = Math.Abs(item.gross),
balance_impact = "贷",
createtime = DateTime.Now,
currency = item.currency,
......@@ -2524,44 +2524,44 @@ group by currency";
}
//退单撤销
if (objCharebackCancel.Count() > 0)
{
foreach (var item in objCharebackCancel)
{
var m1 = new dc_mid_incoming_paypal
{
account_subject = "退单撤销",
amount = item.gross,
balance_impact = "借",
createtime = DateTime.Now,
currency = item.currency,
note = "其他货币资金",
paypal_account = account,
platform_bank = "paypal",
receive_account = account,
recordtime = start.ToString("yyyy-MM")
};
var m2 = new dc_mid_incoming_paypal
{
account_subject = "退单撤销",
amount = item.gross,
balance_impact = "贷",
createtime = DateTime.Now,
currency = item.currency,
note = "营业外收入",
paypal_account = account,
platform_bank = "",
receive_account = account,
recordtime = start.ToString("yyyy-MM")
};
cn.Insert<dc_mid_incoming_paypal>(m1);
cn.Insert<dc_mid_incoming_paypal>(m2);
}
}
//if (objCharebackCancel.Count() > 0)
//{
// foreach (var item in objCharebackCancel)
// {
// var m1 = new dc_mid_incoming_paypal
// {
// account_subject = "退单撤销",
// amount = item.gross,
// balance_impact = "借",
// createtime = DateTime.Now,
// currency = item.currency,
// note = "其他货币资金",
// paypal_account = account,
// platform_bank = "paypal",
// receive_account = account,
// recordtime = start.ToString("yyyy-MM")
// };
// var m2 = new dc_mid_incoming_paypal
// {
// account_subject = "退单撤销",
// amount = item.gross,
// balance_impact = "贷",
// createtime = DateTime.Now,
// currency = item.currency,
// note = "营业外收入",
// paypal_account = account,
// platform_bank = "",
// receive_account = account,
// recordtime = start.ToString("yyyy-MM")
// };
// cn.Insert<dc_mid_incoming_paypal>(m1);
// cn.Insert<dc_mid_incoming_paypal>(m2);
// }
//}
//争议补偿
if (objCompensationDispute.Count() > 0)
......@@ -2606,6 +2606,23 @@ group by currency";
//已发放退款 --负数
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)
{
//主营业务收入 - 销售折扣与折让
......
......@@ -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
#region Platform Common
......@@ -4227,7 +4261,7 @@ namespace Bailun.DC.Services
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)
{
......
......@@ -4590,20 +4590,20 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{
var file = item;
var index = file.FileName.IndexOf("==");
var accountname = file.FileName.Substring(index + 2, file.FileName.Length - (index + 2));
var indexdot = accountname.ToLower().IndexOf(".csv");
//var index = file.FileName.IndexOf("==");
//var accountname = file.FileName.Substring(index + 2, file.FileName.Length - (index + 2));
//var indexdot = accountname.ToLower().IndexOf(".csv");
accountname = accountname.Substring(0, indexdot);
//accountname = accountname.Substring(0, indexdot);
if (accountname.Length == 0)
{
return Json(new
{
success = false,
msg = "请填写正确的帐号信息"
});
}
//if (accountname.Length == 0)
//{
// return Json(new
// {
// success = false,
// msg = "请填写正确的帐号信息"
// });
//}
try
{
......@@ -4702,7 +4702,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{
company_id = companyid,
record_time = time,
account_name = accountname,
//account_name = accountname,
time_zone = arr[2],
name = arr[3],
......@@ -4773,6 +4773,16 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
var msg = "";
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);
}
......@@ -4783,7 +4793,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{
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))
{
......
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