Commit 7cefa2c6 by guanzhenshan

增加导出退款明细功能 for 晓婷

parent 905e663a
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.Models.Orders
{
public class mRefundForFinance
{
/// <summary>
/// 平台
/// </summary>
public string platform_type { get; set; }
/// <summary>
/// 单号(交易号)
/// </summary>
public string origin_order_id { get; set; }
/// <summary>
/// 退款时间
/// </summary>
public DateTime refund_time { get; set; }
/// <summary>
/// 退款金额(原币)
/// </summary>
public decimal amount_refund { get; set; }
/// <summary>
/// 币种
/// </summary>
public string currency { get; set; }
/// <summary>
/// 发货状态
/// </summary>
public string shipping_status { get; set; }
/// <summary>
/// Sku
/// </summary>
public string bailun_sku { get; set; }
/// <summary>
/// 财务分类
/// </summary>
public string financecategoryname { get; set; }
/// <summary>
/// 发货时间
/// </summary>
public DateTime? shipping_time { get; set; }
/// <summary>
/// 订单金额
/// </summary>
public decimal order_total_amount { get; set; }
/// <summary>
/// 订单币种
/// </summary>
public string order_currency { get; set; }
}
}
...@@ -5736,6 +5736,50 @@ namespace Bailun.DC.Services ...@@ -5736,6 +5736,50 @@ namespace Bailun.DC.Services
} }
} }
/// <summary>
/// 获取退款列表(财务 晓婷)
/// </summary>
/// <param name="start">退款开始时间</param>
/// <param name="end">退款结束时间</param>
/// <returns></returns>
public List<mRefundForFinance> ListRefundForFinance(DateTime start,DateTime end)
{
var sql = $@"select * from (
select distinct t1.platform_type,CONCAT('`',t1.origin_order_id) as origin_order_id,t1.refund_time,t1.amount_refund,t1.order_currency as currency,t1.shipping_status,t1.bailun_sku,t4.financecategoryname,t2.shipping_time,t1.order_total_amount,t6.order_currency
from dc_base_crm_refund t1
left join dc_base_oms_order t6 on t1.origin_order_id=t6.origin_order_id
left join dc_base_oms_pick t2 on t1.origin_order_id=t2.origin_order_id and t1.bailun_sku=t2.bailun_sku and t2.has_delete=0 and t2.shipping_status='TotalShipping'
left join dc_base_sku t3 on t1.bailun_sku=t3.bailun_sku
left join dc_base_sku_finance_category t4 on t3.bailun_category_id=t4.bailuncategoryid
where t1.refund_time>='{start.ToString("yyyy-MM-dd")}' and t1.refund_time<'{end.AddDays(1).ToString("yyyy-MM-dd")}' and t1.platform_type!='Ebay' and t1.is_deleted=0
union all
select t1.platform_type,CONCAT('`',t1.origin_order_id) as origin_order_id,t1.refund_time,t1.amount_refund,t1.order_currency as currency,t1.shipping_status,t1.bailun_sku,t4.financecategoryname,t2.shipping_time,t1.order_total_amount,t6.order_currency
from dc_base_crm_refund t1
left join dc_base_oms_order t6 on t1.origin_order_id=t6.transaction_id
left join dc_base_oms_pick t2 on t6.origin_order_id=t2.origin_order_id and t1.bailun_sku=t2.bailun_sku and t2.has_delete=0 and t2.shipping_status='TotalShipping'
left join dc_base_sku t3 on t1.bailun_sku=t3.bailun_sku
left join dc_base_sku_finance_category t4 on t3.bailun_category_id=t4.bailuncategoryid
where t1.refund_time>='{start.ToString("yyyy-MM-dd")}' and t1.refund_time<'{end.AddDays(1).ToString("yyyy-MM-dd")}' and t1.platform_type='Ebay' and t1.is_deleted=0
) t1
order by t1.refund_time;
";
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_read))
{
if(cn.State== System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Query<mRefundForFinance>(sql).ToList();
return obj;
}
}
#endregion #endregion
#region 广告费 #region 广告费
......
...@@ -2909,6 +2909,43 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -2909,6 +2909,43 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
return File(ms, "text/csv", filename + ".csv"); return File(ms, "text/csv", filename + ".csv");
} }
public ActionResult ExportRefundOrder(DateTime start,DateTime end)
{
var _service = new Services.OrdersServices();
var obj = _service.ListRefundForFinance(start, end);
var colNames = new List<string> {"平台","单号(交易号)","退款时间", "退款金额(原币)", "币种",
"发货状态", "Sku","财务分类","发货时间","订单金额",
"订单币种"
};
var listVal = new List<string>();
foreach (var item in obj)
{
listVal.Add(
item.platform_type + "|" + item.origin_order_id + "|" + item.refund_time.ToString("yyyy-MM-dd HH:mm:ss") + "|" + item.amount_refund + "|" + item.currency + "|" +
item.shipping_status + "|" + item.bailun_sku+"|"+item.financecategoryname+"|"+(item.shipping_time?.ToString("yyyy-MM-dd HH:mm:ss")??"")+"|"+item.order_total_amount+
"|"+item.order_currency
);
}
var guid = Guid.NewGuid().ToString();
var filename = "退款流水(财务)导出" + DateTime.Now.ToString("yyyyMMddHHmmss");
var filepath = _hostingEnvironment.WebRootPath + "\\Files\\Report\\" + DateTime.Now.ToString("yyyy-MM-dd") + "\\";
ToCSV(listVal, colNames, guid, filepath);
var ms = new System.IO.MemoryStream();
using (var f = new System.IO.FileStream(filepath + guid + ".csv", System.IO.FileMode.Open))
{
f.CopyTo(ms);
}
ms.Position = 0;
return File(ms, "text/csv", filename + ".csv");
}
#endregion #endregion
#region 广告费 #region 广告费
......
...@@ -55,6 +55,7 @@ ...@@ -55,6 +55,7 @@
<label>&nbsp;</label> <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-primary" onclick="list();"><i class="fa fa-search"></i>&nbsp;查询</button>
<button id="btnexport" style="display:none" type="button" class="btn btn-success" onclick="exportlist()">导出</button> <button id="btnexport" style="display:none" type="button" class="btn btn-success" onclick="exportlist()">导出</button>
<button type="button" class="btn btn-warning" onclick="exportForFinance()">导出(财务格式)</button>
</div> </div>
</div> </div>
</form> </form>
...@@ -219,6 +220,20 @@ ...@@ -219,6 +220,20 @@
window.open('@Url.Content("~/Reports/Orders/ExportListReturn?")' + $("#toolbar").serialize() + '&companyid=' + companyid, '_blank'); window.open('@Url.Content("~/Reports/Orders/ExportListReturn?")' + $("#toolbar").serialize() + '&companyid=' + companyid, '_blank');
} }
function exportForFinance()
{
var start = $('#start').val();
var end = $('#end').val();
if (start == '' || end == '') {
alert('退款时间不能为空');
return;
}
window.open('@Url.Content("~/Reports/Orders/ExportRefundOrder?start=")' + start+'&end='+end, '_blank');
}
</script> </script>
} }
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