Commit c56f651c by guanzhenshan

增加头程费变化的监控页面

parent 7afd1f0e
...@@ -134,8 +134,11 @@ namespace Bailun.DC.Models ...@@ -134,8 +134,11 @@ namespace Bailun.DC.Models
/// </summary> /// </summary>
public DateTime bj_create_time { get; set; } public DateTime bj_create_time { get; set; }
public decimal change_rate { get; set; }
public int exception_type { get; set; }
public string warehouse_name { get; set; }
} }
} }
...@@ -7422,9 +7422,55 @@ namespace Bailun.DC.Services ...@@ -7422,9 +7422,55 @@ namespace Bailun.DC.Services
/// <param name="warehousecode"></param> /// <param name="warehousecode"></param>
/// <param name="type"></param> /// <param name="type"></param>
/// <returns></returns> /// <returns></returns>
public List<dc_base_cost_first_finish> ListCostFirstJson(BtTableParameter request, string bailun_sku, string warehousecode, int type) public List<dc_base_cost_first_finish> ListCostFirstJson(BtTableParameter request, string bailun_sku,string warehousetype, string warehousecode, int? type,ref int total)
{ {
var sql = "select t1.*,t2.warehouse_name from dc_base_cost_first_finish t1 join dc_base_warehouse t2 on t1.warehouse_code=t2.warehouse_code where 1=1 ";
var sqlparam = new DynamicParameters();
if(!string.IsNullOrEmpty(warehousetype))
{
sql += " and t2.hq_type=@warehousetype";
sqlparam.Add("warehousetype",warehousetype);
}
if(!string.IsNullOrEmpty(bailun_sku))
{
sql += " and t1.bailun_sku=@bailun_sku";
sqlparam.Add("bailun_sku", bailun_sku);
}
if(!string.IsNullOrEmpty(warehousecode))
{
sql += " and t1.warehouse_code = @warehousecode";
sqlparam.Add("warehousecode", warehousecode);
}
if(type.HasValue)
{
sql += " and t1.exception_type=@type";
sqlparam.Add("type",type);
}
if(!string.IsNullOrEmpty(request.sort))
{
sql += " order by "+request.sort+" "+request.order;
}
else
{
sql += " order by change_rate desc";
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_read))
{
if(cn.State== System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Page<dc_base_cost_first_finish>(request.pageIndex, request.limit, sql, ref total, sqlparam);
return obj.ToList();
}
} }
......
...@@ -3831,9 +3831,46 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -3831,9 +3831,46 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
return View(); return View();
} }
public string ListCostFirstFinishJson(BtTableParameter request, string bailun_sku, string warehousecode, int type) /// <summary>
/// 头程费用更改记录
/// </summary>
/// <param name="request">分页信息</param>
/// <param name="bailun_sku">百伦SKU</param>
/// <param name="warehousecode">仓库编码</param>
/// <param name="type">异常类型,0:正常,1:上升,2:下降</param>
/// <returns></returns>
public string ListCostFirstFinishJson(BtTableParameter request, string bailun_sku,string warehousetype, string warehousecode, int? type)
{ {
var _service = var total = 0;
var _service = new Services.OrdersServices();
var obj = _service.ListCostFirstJson(request, bailun_sku, warehousetype,warehousecode, type,ref total);
var list = obj.Select(a => new {
a.channel_order_id,
a.transfer_order_id,
a.box_id,
a.cost_first,
a.warehouse_code,
a.warehouse_name,
a.bailun_sku,
a.quantity,
a.sku_weight,
a.sku_weight_ratio,
a.sku_stock_quantity,
a.pre_avl_sku_cost_first,
a.after_avl_sku_cost_first,
change_rate = a.change_rate.ToString("N2")+"%",
a.exception_type,
operation_time = a.operation_time.ToString("yyyy-MM-dd HH:mm:ss"),
bj_create_time = a.bj_create_time.ToString("yyyy-MM-dd HH:mm:ss")
});
return JsonConvert.SerializeObject(new
{
total = total,
rows = list
});
} }
......

@{
ViewData["Title"] = "头程费更改记录";
Layout = "~/Pages/Shared/_MainLayout.cshtml";
ViewBag.Nav = new string[] { "数据分析", "头程费更改记录" };
}
<div class="row">
<div class="col-sm-12">
<div class="ibox-content m-b-sm border-bottom">
<form id="toolbar">
<input id="isfba" name="isfba" type="hidden" value="0" />
<div class="form-inline" style="line-height:40px;">
<div class="form-group">
<label>仓库类型:</label>
<select id="warehousetype" name="warehousetype" class="form-control">
<option value="">选择仓库类型</option>
<option value="国内仓">国内仓</option>
<option value="海外仓">海外仓</option>
<option value="FBA仓">FBA仓</option>
<option value="第三方仓库">第三方仓库</option>
</select>
</div>
<div class="form-group">
<label>仓库:</label>
<select id="warehousecode" name="warehousecode" class="form-control" style="width:160px;">
<option value="">选择仓库</option>
</select>
</div>
<div class="form-group">
<label>变化情况:</label>
<select id="type" name="type" class="form-control" style="width:160px;">
<option value="">请选择</option>
<option value="1">上升</option>
<option value="2">下降</option>
<option value="0">不变</option>
</select>
</div>
<div class="form-group">
<label>&nbsp;</label>
<input id="bailunsku" name="bailunsku" class="form-control" style="width:130px" placeholder="请输入百伦sku编码" />
</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 id="btnexport" style="display:none" 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>
@section css{
<style>
.mules {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
</style>
}
@section scripts{
<script type="text/javascript">
var tb;
$(document).ready(function () {
var height = document.body.clientHeight;
$("#roletable").attr("data-height", (height - 160));
list();
listwarehouse();
$('#warehousetype').change(function () {
listwarehouse();
})
})
function list() {
var columns = [
{ field: 'channel_order_id', title: '物流单号', width: '150' },
{ field: 'transfer_order_id', title: '调拨单号', width: '150'},
{ field: 'box_id', title: '箱号', width: '80'},
{ field: 'cost_first', title: '箱子总头程费', width: '130' },
{ field: 'warehouse_name', title: '仓库', width: '150'},
{ field: 'bailun_sku', title: 'SKU', width: '130' },
{ field: 'quantity', title: 'SKU数量', width: '100' },
{ field: 'sku_weight', title: '单个SKU重量', width: '130' },
{ field: 'sku_weight_ratio', title: 'SKU重量占比', width: '130' },
{ field: 'sku_stock_quantity', title: 'SKU当时库存', width: '130' },
{ field: 'pre_avl_sku_cost_first', title: '原头程费', width: '100', sortable: true },
{ field: 'after_avl_sku_cost_first', title: '新头程费', width: '100', sortable: true },
{
field: 'change_rate', title: '变化%', width: '130', sortable: true, formatter: function (idx, data) {
return data.change_rate + " <span style=\"color:" + (data.exception_type == 1 ? "red" : (data.exception_type == 2 ? "green" : "#333333"))+"\">" + (data.exception_type == 1 ? "上升" : (data.exception_type==2?"下降":"不变"))+"</span>"
}
},
{ field: 'operation_time', title: '调拨单完成时间', width: '150', sortable: true },
{ field: 'bj_create_time', title: '创建时间', width: '150', sortable: true },
];
var url = '@Url.Content("~/Reports/Orders/ListCostFirstFinishJson")' + '?' + $("#toolbar").serialize();
if (tb == undefined) {
tb = OnlyTable("roletable", columns, url, "", {
showfooter: false, loadsuccess: function (d) {
//if (d.isexport == 1) {
// $('#btnexport').show();
//}
}
});
}
else {
tb.bootstrapTable('refresh', { url: url });
}
}
function listwarehouse() {
var type = $('#warehousetype').val();
$.submit({
url: '@Url.Content("~/Home/ListWarehouseFromStockAndSales")',
paramData: 'warehousetype=' + type,
type:'POST',
func: function (result) {
if (result != null && result != undefined) {
$('#warehousecode').html('<option value="">仓库不限</option>');
for (var i = 0; i < result.length; i++) {
$('#warehousecode').append('<option value="' + result[i].warehouse_code + '">' + result[i].warehouse_name + '</option>');
}
}
}
})
}
//导出
function exportxls() {
window.open('@Url.Content("~/Reports/Warehouse/ExportLogicWarehouse?")' + $("#toolbar").serialize(), '_blank');
}
function SkuDetail(code) {
layer_show('Sku仓库', '@Url.Content("~/Reports/Warehouse/ListWareHouseSku?code=")' + code,'90%','90%');
}
</script>
}
\ No newline at end of file
var baseUrl = 'http://localhost:59628/';//'http://data.bailuntec.com'; // var baseUrl = 'http://data.bailuntec.com'; //'http://localhost:59628/';//
var globalOrderSort=''; var globalOrderSort='';
var globalOrderType = ''; var globalOrderType = '';
......
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