Commit 599412ad by guanzhenshan

增加库存汇总分析报表

parent 5c115f06
...@@ -34,4 +34,13 @@ namespace Bailun.DC.Models.Common ...@@ -34,4 +34,13 @@ namespace Bailun.DC.Models.Common
public int C_LEVEL { get; set; } public int C_LEVEL { get; set; }
} }
public class CategoryResult
{
public List<CategoryDto> result { get; set; }
public int statusCode { get; set; }
public string message { get; set; }
}
} }
...@@ -234,23 +234,36 @@ namespace Bailun.DC.Services ...@@ -234,23 +234,36 @@ namespace Bailun.DC.Services
tempLevel++; tempLevel++;
} }
} }
string appId = "SystemDCUI"; //string appId = "SystemDCUI";
string appKey = "YmFpbHVuRENVSQ=="; //string appKey = "YmFpbHVuRENVSQ==";
string url = Common.GlobalConfig.SkumsCategory; //string url = Common.GlobalConfig.SkumsCategory;
List<Models.Common.CategoryDto> result = new List<Models.Common.CategoryDto>(); //List<Models.Common.CategoryDto> result = new List<Models.Common.CategoryDto>();
Models.Common.ApiEntrance model = new Models.Common.ApiEntrance(); //Models.Common.ApiEntrance model = new Models.Common.ApiEntrance();
model.code = appId; //model.code = appId;
model.data = level.ToString(); //model.data = level.ToString();
string sign = Common.CommonHelper.md5Encrypt(appKey + model.code + CommonHelper.md5Encrypt(model.key + model.data)); //string sign = Common.CommonHelper.md5Encrypt(appKey + model.code + CommonHelper.md5Encrypt(model.key + model.data));
string resultStr = HttpHelper.NetHelper.Request(url + $"?sign={sign}&appId={appId}&level={level}"); //string resultStr = HttpHelper.NetHelper.Request(url + $"?sign={sign}&appId={appId}&level={level}");
Models.Common.ApiResult apiResult = Newtonsoft.Json.JsonConvert.DeserializeObject<Models.Common.ApiResult>(resultStr); //Models.Common.ApiResult apiResult = Newtonsoft.Json.JsonConvert.DeserializeObject<Models.Common.ApiResult>(resultStr);
if (apiResult.result_code == 1) //if (apiResult.result_code == 1)
//{
// result = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.Common.CategoryDto>>(WebUtility.UrlDecode(apiResult.data)).Where(s => s.C_LEVEL == level).ToList();
//}
var result = new List<Models.Common.CategoryDto>();
var resultStr = HttpHelper.NetHelper.HttpPostJson("http://doc.bailuntec.com:6001/category/getallcategorylist", Newtonsoft.Json.JsonConvert.SerializeObject(new { level=level }));
if(!string.IsNullOrEmpty(resultStr))
{ {
result = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.Common.CategoryDto>>(WebUtility.UrlDecode(apiResult.data)).Where(s => s.C_LEVEL == level).ToList(); var json = Newtonsoft.Json.JsonConvert.DeserializeObject<CategoryResult>(resultStr);
if (json.statusCode == 200)
{
result = json.result;
}
} }
return result; return result;
} }
......
...@@ -213,8 +213,9 @@ namespace Bailun.DC.Services ...@@ -213,8 +213,9 @@ namespace Bailun.DC.Services
/// <param name="stockamountmin">库存金额 min值</param> /// <param name="stockamountmin">库存金额 min值</param>
/// <param name="stockamountmax">库存金额 max值</param> /// <param name="stockamountmax">库存金额 max值</param>
/// <param name="total">符合条件的总记录数</param> /// <param name="total">符合条件的总记录数</param>
/// <param name="onedaysalescount">昨日销量,0:0销量,1:0-1销量,2:1-5销量,5:5-10销量,10:大于10的销量</param>
/// <returns></returns> /// <returns></returns>
public List<Models.Stock.mSkuWarehouse> ListWareHouseSku(BtTableParameter parameter, string warehousecode, int? categoryid, int? minordercount, int? maxordercount, int? stockmin, int? stockmax, decimal? stockamountmin, decimal? stockamountmax, string skucategoryids,int? push_status,int? available_days_start,int? available_days_end, ref int total) public List<Models.Stock.mSkuWarehouse> ListWareHouseSku(BtTableParameter parameter, string warehousecode, int? categoryid, int? minordercount, int? maxordercount, int? stockmin, int? stockmax, decimal? stockamountmin, decimal? stockamountmax, string skucategoryids,int? push_status,int? available_days_start,int? available_days_end, ref int total,int? onedaysalescount=null)
{ {
var sqlparam = new DynamicParameters(); var sqlparam = new DynamicParameters();
//available_days //available_days
...@@ -309,6 +310,32 @@ namespace Bailun.DC.Services ...@@ -309,6 +310,32 @@ namespace Bailun.DC.Services
sqlwhere += " and t1.available_days<"+available_days_end.Value; sqlwhere += " and t1.available_days<"+available_days_end.Value;
} }
if(onedaysalescount.HasValue && onedaysalescount.Value>=0)
{
//sqlwhere += " and t1.oneday_total_sales";
switch(onedaysalescount.Value)
{
case 0:
sqlwhere += " and t1.oneday_total_sales=0";
break;
case 1:
sqlwhere += " and t1.oneday_total_sales>0 && t1.oneday_total_sales<=1";
break;
case 2:
sqlwhere += " and t1.oneday_total_sales>1 && t1.oneday_total_sales<=5";
break;
case 5:
sqlwhere += " and t1.oneday_total_sales>5 && t1.oneday_total_sales<=10";
break;
case 10:
sqlwhere += " and t1.oneday_total_sales>10";
break;
default:
sqlwhere += " and t1.oneday_total_sales="+onedaysalescount.Value;
break;
}
}
var sqlsort = ""; var sqlsort = "";
...@@ -1374,7 +1401,7 @@ namespace Bailun.DC.Services ...@@ -1374,7 +1401,7 @@ namespace Bailun.DC.Services
/// <returns></returns> /// <returns></returns>
public dc_daily_inventory_summary ListInventorySummaryCount(string warehousetype, string warehousecode, DateTime day) public dc_daily_inventory_summary ListInventorySummaryCount(string warehousetype, string warehousecode, DateTime day)
{ {
var sql = $"select sum(usable_stock) as usable_stock,sum(amount_stock) as amount_stock,sum(quantity_purchase) as quantity_purchase,sum(purchase_amount) as purchase_amount,sum(quantity_purchase_product) as quantity_purchase_product,sum(quantity_transfer) as quantity_transfer,sum(transfer_amount) as transfer_amount,sum(quantity_transfer_product) as quantity_transfer_product,sum(sale10_count) as sale10_count,(sum(sale10_count)/sum(usable_stock)) as sale10_rate,sum(sale10_amount) as sale10_amount,(sum(sale10_amount)/sum(amount_stock)) as sale10_amount_rate,sum(sale5_10_count) as sale5_10_count,(sum(sale5_10_count)/sum(usable_stock)) as sale5_10_rate,sum(sale5_10_amount) as sale5_10_amount,(sum(sale5_10_amount)/sum(amount_stock)) as sale5_10_amount_rate,sum(sale1_5_amount) as sale1_5_amount,(sum(sale1_5_amount)/sum(amount_stock)) as sale1_5_amount_rate,sum(sale1_amount) as sale1_amount,(sum(sale1_amount)/sum(amount_stock)) as sale1_amount_rate,sum(sale0_amount) as sale0_amount,(sum(sale0_amount)/sum(amount_stock)) as sale0_amount_rate from dc_daily_inventory_summary where day='{day.ToString("yyyy-MM-dd")}' "; var sql = $"select sum(usable_stock) as usable_stock,sum(amount_stock) as amount_stock,sum(quantity_purchase) as quantity_purchase,sum(purchase_amount) as purchase_amount,sum(quantity_purchase_product) as quantity_purchase_product,sum(quantity_transfer) as quantity_transfer,sum(transfer_amount) as transfer_amount,sum(quantity_transfer_product) as quantity_transfer_product,sum(sale10_count) as sale10_count,(sum(sale10_count)/sum(usable_stock)) as sale10_rate,sum(sale10_amount) as sale10_amount,(sum(sale10_amount)/sum(amount_stock)) as sale10_amount_rate,sum(sale5_10_count) as sale5_10_count,(sum(sale5_10_count)/sum(usable_stock)) as sale5_10_rate,sum(sale5_10_amount) as sale5_10_amount,(sum(sale5_10_amount)/sum(amount_stock)) as sale5_10_amount_rate,sum(sale1_5_amount) as sale1_5_amount,(sum(sale1_5_amount)/sum(amount_stock)) as sale1_5_amount_rate,sum(sale1_amount) as sale1_amount,(sum(sale1_amount)/sum(amount_stock)) as sale1_amount_rate,sum(sale0_amount) as sale0_amount,(sum(sale0_count)/sum(usable_stock)) as sale0_count_rate from dc_daily_inventory_summary where day='{day.ToString("yyyy-MM-dd")}' ";
var sqlparam = new DynamicParameters(); var sqlparam = new DynamicParameters();
if (!string.IsNullOrEmpty(warehousetype)) if (!string.IsNullOrEmpty(warehousetype))
...@@ -1402,6 +1429,39 @@ namespace Bailun.DC.Services ...@@ -1402,6 +1429,39 @@ namespace Bailun.DC.Services
} }
} }
/// <summary>
/// 获取库存汇总分析字段的趋势图数据
/// </summary>
/// <param name="warehousecode"></param>
/// <param name="start"></param>
/// <param name="end"></param>
/// <param name="colname"></param>
/// <returns></returns>
public List<string> InventorySummaryChart(string warehousecode,DateTime start,DateTime end,string colname)
{
var sql = "select CONCAT(name,',',DATE_FORMAT(day,'%Y-%m-%d')) as name from (";
sql += "select " + colname + " as name,day from dc_daily_inventory_summary where ";
sql += " warehousecode='"+warehousecode+"' and ";
sql += $" day>='{start.ToString("yyyy-MM-dd")}' and day<='{end.ToString("yyyy-MM-dd")}'";
sql += " ) t1 ";
sql += " order by day";
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_read))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
return cn.Query<string>(sql).ToList();
}
}
#endregion #endregion
......
...@@ -214,7 +214,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -214,7 +214,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
/// </summary> /// </summary>
/// <param name="code">仓库编码</param> /// <param name="code">仓库编码</param>
/// <returns></returns> /// <returns></returns>
public ActionResult ListWareHouseSku(string code,string available_days) public ActionResult ListWareHouseSku(string code,string available_days,int? onedaysalescount)
{ {
ViewBag.warehousecode = code; ViewBag.warehousecode = code;
ViewBag.available_days = available_days; ViewBag.available_days = available_days;
...@@ -227,6 +227,8 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -227,6 +227,8 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
ViewBag.StartFourteenDate = DateTime.Now.AddDays(-14).ToString("yyyy-MM-dd") + " 00:00:00"; ViewBag.StartFourteenDate = DateTime.Now.AddDays(-14).ToString("yyyy-MM-dd") + " 00:00:00";
ViewBag.StartThirtyDate = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd") + " 00:00:00"; ViewBag.StartThirtyDate = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd") + " 00:00:00";
ViewBag.onedaysalescount = onedaysalescount;
return View(); return View();
} }
...@@ -242,8 +244,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -242,8 +244,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
/// <param name="stockmax">库存 最大值</param> /// <param name="stockmax">库存 最大值</param>
/// <param name="stockamountmin">库存金额 最小值</param> /// <param name="stockamountmin">库存金额 最小值</param>
/// <param name="stockamountmax">库存金额 最大值</param> /// <param name="stockamountmax">库存金额 最大值</param>
/// <param name="onedaysalescount">昨日销量,0:0销量,1:0-1销量,2:1-5销量,5:5-10销量,10:大于10的销量</param>
/// <returns></returns> /// <returns></returns>
public string ListWareHouseSkuJson(BtTableParameter parameter, string warehousecode, int? push_status, int? minordercount, int? maxordercount, int? stockmin, int? stockmax, decimal? stockamountmin, decimal? stockamountmax,string skucategoryids,string available_days) public string ListWareHouseSkuJson(BtTableParameter parameter, string warehousecode, int? push_status, int? minordercount, int? maxordercount, int? stockmin, int? stockmax, decimal? stockamountmin, decimal? stockamountmax,string skucategoryids,string available_days,int? onedaysalescount)
{ {
var total = 0; var total = 0;
...@@ -269,7 +272,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -269,7 +272,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
} }
} }
var obj = new Services.WareHouseServices().ListWareHouseSku(parameter, warehousecode, null, minordercount, maxordercount, stockmin, stockmax, stockamountmin, stockamountmax, skucategoryids, push_status,available_days_start,available_days_end,ref total); var obj = new Services.WareHouseServices().ListWareHouseSku(parameter, warehousecode, null, minordercount, maxordercount, stockmin, stockmax, stockamountmin, stockamountmax, skucategoryids, push_status,available_days_start,available_days_end,ref total,onedaysalescount);
var list = obj.Select(p => new { var list = obj.Select(p => new {
amount_onedaysale = p.amount_onedaysale??0, amount_onedaysale = p.amount_onedaysale??0,
...@@ -1771,7 +1774,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -1771,7 +1774,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
quantity_transfer_product = a.quantity_transfer_product.ToString("N0"), quantity_transfer_product = a.quantity_transfer_product.ToString("N0"),
sale0_amount = a.sale0_amount.ToString("N2"), sale0_amount = a.sale0_amount.ToString("N2"),
sale0_amount_rate = (a.sale0_amount_rate*100).ToString("N2"), sale0_count_rate = (a.sale0_count_rate*100).ToString("N2"),
sale10_amount = a.sale10_amount.ToString("N2"), sale10_amount = a.sale10_amount.ToString("N2"),
sale10_amount_rate = (a.sale10_amount_rate*100).ToString("N2"), sale10_amount_rate = (a.sale10_amount_rate*100).ToString("N2"),
sale10_count = a.sale10_count.ToString("N0"), sale10_count = a.sale10_count.ToString("N0"),
...@@ -1804,7 +1807,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -1804,7 +1807,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
quantity_transfer_product = objCount.quantity_transfer_product.ToString("N0"), quantity_transfer_product = objCount.quantity_transfer_product.ToString("N0"),
sale0_amount = objCount.sale0_amount.ToString("N2"), sale0_amount = objCount.sale0_amount.ToString("N2"),
sale0_amount_rate = (objCount.sale0_amount_rate * 100).ToString("N2"), sale0_count_rate = (objCount.sale0_count_rate * 100).ToString("N2"),
sale10_amount = objCount.sale10_amount.ToString("N2"), sale10_amount = objCount.sale10_amount.ToString("N2"),
sale10_amount_rate = (objCount.sale10_amount_rate * 100).ToString("N2"), sale10_amount_rate = (objCount.sale10_amount_rate * 100).ToString("N2"),
sale10_count = objCount.sale10_count.ToString("N0"), sale10_count = objCount.sale10_count.ToString("N0"),
...@@ -1823,6 +1826,62 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers ...@@ -1823,6 +1826,62 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
}); });
} }
/// <summary>
/// 库存汇总分析趋势图
/// </summary>
/// <param name="warehousecode">仓库编码</param>
/// <param name="warehousename">仓库名称</param>
/// <param name="key">显示的字段</param>
/// <returns></returns>
public ActionResult InventorySummaryChart(string warehousecode,string warehousename,string key,string title)
{
ViewBag.warehousecode = warehousecode;
ViewBag.warehousename = warehousename;
ViewBag.key = key;
ViewBag.title = title;
return View();
}
/// <summary>
/// 库存汇总分析趋势图
/// </summary>
/// <returns></returns>
[ServiceFabric.Authorize.BailunAuthentication(LoginMode.Enforce)]
[HttpPost]
public JsonResult InventorySummaryChartJson(string warehousecode,string key)
{
var _services = new Services.WareHouseServices();
var obj = _services.InventorySummaryChart(warehousecode, DateTime.Now.AddDays(-30), DateTime.Now.AddDays(-1), key);
var listval = new List<string>();
var listdate = new List<string>();
obj = obj.Where(a => !string.IsNullOrEmpty(a)).ToList();
if (obj.Count > 0)
{
foreach (var item in obj)
{
var arr = item.Split(',');
if (arr.Length > 1)
{
listval.Add(arr[0]);
listdate.Add(DateTime.Parse(arr[1]).ToString("yyyy-MM-dd"));
}
}
}
return Json(new
{
success = true,
msg = "",
val = listval,
dates = listdate,
});
}
#endregion #endregion
} }
......

@{
//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">
<div class="form-inline" style="line-height:40px;">
<div class="form-group">
<label>日期:</label>
<input id="start" name="start" class="form-control" value="@(ViewBag.start)" placeholder="请选择开始日期" />至
<input id="end" name="end" class="form-control" value="@(ViewBag.end)" 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>
</div>
</div>
</form>
</div>*@
<div class="ibox-content m-b-sm border-bottom">
<div id="echart-contain" style="width:100%;height:480px;">
</div>
</div>
</div>
</div>
@section scripts{
<script src="~/js/echarts.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
getData();
})
function getData() {
$.submit({
type:'POST',
url: '@Url.Content("~/Reports/Warehouse/InventorySummaryChartJson")',
paramData: 'warehousecode=@(ViewBag.warehousecode)&key=@(ViewBag.key)',
func: function (result) {
if (result) {
showChart('@Html.Raw(ViewBag.warehousename)', result.dates, result.val);
}
}
})
}
function showChart(title, category, vals) {
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('echart-contain'));
option = {
title: {
text: title
},
tooltip: {
trigger: 'axis'
},
legend: {
data: ['@Html.Raw(ViewBag.title)']
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
toolbox: {
feature: {
saveAsImage: {}
}
},
xAxis: {
type: 'category',
boundaryGap: false,
data: category
},
yAxis: {
type: 'value'
},
series: [
{
name: '@Html.Raw(ViewBag.title)',
type: 'line',
stack: '总量',
data: vals
}
]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
}
</script>
}
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
{ {
foreach (var item in ViewBag.listWarehouse) foreach (var item in ViewBag.listWarehouse)
{ {
<option value="@item.warehouse_code" @(ViewBag.warehousecode == item.warehouse_code?"selected":"")>@item.warehouse_name</option> <option value="@item.warehouse_code" @(ViewBag.warehousecode == item.warehouse_code ? "selected" : "")>@item.warehouse_name</option>
} }
} }
</select> </select>
...@@ -82,7 +82,7 @@ ...@@ -82,7 +82,7 @@
</div> </div>
</form> </form>
</div> </div>
<div class="ibox-content m-b-sm border-bottom"> <div class="ibox-content m-b-sm border-bottom">
<table id="roletable" style="table-layout:fixed;"></table> <table id="roletable" style="table-layout:fixed;"></table>
</div> </div>
...@@ -93,6 +93,7 @@ ...@@ -93,6 +93,7 @@
@section css{ @section css{
<link href="~/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" /> <link href="~/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/css/select2.min.css" rel="stylesheet" /> <link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/css/select2.min.css" rel="stylesheet" />
<link href="~/css/bootstrap-table-fixed-columns.css" rel="stylesheet" />
<style> <style>
.mules { .mules {
white-space: nowrap; white-space: nowrap;
...@@ -105,6 +106,7 @@ ...@@ -105,6 +106,7 @@
<script src="~/js/jquery.ztree.core.min.js"></script> <script src="~/js/jquery.ztree.core.min.js"></script>
<script src="~/js/jquery.ztree.excheck.min.js"></script> <script src="~/js/jquery.ztree.excheck.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script>
<script src="~/js/bootstrap-table-fixed-columns.js" type="text/javascript"></script>
<script type="text/javascript"> <script type="text/javascript">
var tb; var tb;
var zTreeObj; var zTreeObj;
...@@ -137,13 +139,13 @@ ...@@ -137,13 +139,13 @@
} }
}, },
{ field: 'warehouse_name', title: '所在仓库', width: '130', sortable: true }, { field: 'warehouse_name', title: '所在仓库', width: '130', sortable: true },
{ {
field: 'push_status', title: '推送产品库', width: '120', sortable: true, formatter: function (idx, data) { field: 'push_status', title: '推送产品库', width: '120', sortable: true, formatter: function (idx, data) {
var s = '<span style="color:' + (data.push_status=='是'?"#01B468":"red") + ';">' + data.push_status + '</span>'; var s = '<span style="color:' + (data.push_status=='是'?"#01B468":"red") + ';">' + data.push_status + '</span>';
return s; return s;
} }
}, },
{ {
field: 'sku_image', title: '主图', width: '80', sortable: false, formatter: function (idx, data) { field: 'sku_image', title: '主图', width: '80', sortable: false, formatter: function (idx, data) {
var s = '<img src="' + data.sku_image + '" style="width:60px" />'; var s = '<img src="' + data.sku_image + '" style="width:60px" />';
...@@ -263,10 +265,13 @@ ...@@ -263,10 +265,13 @@
s = ''; s = '';
} }
var url = '@Url.Content("~/Reports/Warehouse/ListWareHouseSkuJson")' + '?' + $("#toolbar").serialize() + '&skucategoryids=' + s; var url = '@Url.Content("~/Reports/Warehouse/ListWareHouseSkuJson")' + '?' + $("#toolbar").serialize() + '&skucategoryids=' + s+'&onedaysalescount=@(ViewBag.onedaysalescount)';
if (tb == undefined) { if (tb == undefined) {
tb = OnlyTable("roletable", columns, url, "",); tb = OnlyTable("roletable", columns, url, "", {},{
fixedcol: true,
fixedcolnum: 1
});
} }
else { else {
tb.bootstrapTable('refresh', { url: url }); tb.bootstrapTable('refresh', { url: url });
......
var baseUrl = 'http://data.bailuntec.com'; //'http://localhost:59628/';// var baseUrl = 'http://localhost:59628/';//'http://data.bailuntec.com'; //
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