Browse Source

addExcelExport

master
yibo 7 years ago
parent
commit
39d8f41c87
1 changed files with 45 additions and 8 deletions
  1. +45
    -8
      B3ButcherManageToSale.Web/Pages/B3ButcherManageToSale/Overlays/SaleOutStoreBalance.cs

+ 45
- 8
B3ButcherManageToSale.Web/Pages/B3ButcherManageToSale/Overlays/SaleOutStoreBalance.cs View File

@ -28,6 +28,9 @@ using System.Web;
using Newtonsoft.Json;
using Forks.EnterpriseServices.BusinessInterfaces;
using BWP.B3Sale.BL;
using TSingSoft.WebControls2.DFGrids;
using TSingSoft.WebPluginFramework.Controls;
using TSingSoft.WebPluginFramework.Exports;
namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
{
@ -108,7 +111,9 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
var config = manager.CreateDefaultConfig(6);
config.Expand = false;
panel.Add(manager.CreateLayout(), new VLayoutOption(HorizontalAlign.Left));
panel.Add(new TSButton("查询缺货", delegate { StartQuery(); }), new VLayoutOption(HorizontalAlign.Left));
var hPanel = panel.Add(new HLayoutPanel(), new VLayoutOption(HorizontalAlign.Left));
hPanel.Add(new TSButton("查询缺货", delegate { StartQuery(false); }));
hPanel.Add(new TSButton("查询余货", delegate { StartQuery(true); }));
}
string dateStr
@ -149,6 +154,34 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
panel2.Visible = !byLine;
avgAdjust.Visible = byLine;
};
var hPanel=titlePanel.EAdd(new HLayoutPanel());
AddExcelExportPanel(hPanel, _browseGrid, string.Format("均衡计划导出{0:yyyyMMdd}", DateTime.Today));
}
static void AddExcelExportPanel(HLayoutPanel toolbar, DFBrowseGrid mBrowseGrid, string title)
{
var exporter = new Exporter();
toolbar.Add(new TSButton("导出到Excel", delegate
{
var lastQuery = mBrowseGrid.LastQuery;
if (lastQuery == null)
throw new Exception("请先进行查询");
var dom = new LoadArguments((DQueryDom)lastQuery.DQuery.Clone());
foreach (var colIndex in lastQuery.SumColumns)
dom.SumColumns.Add(colIndex);
foreach (var colIndex in lastQuery.GroupSumColumns)
dom.GroupSumColumns.Add(colIndex);
dom.DQuery.Range = SelectRange.All;
string fileName = title + ".xlsx";
exporter.Export(new QueryResultExcelExporter(fileName, GetQueryResult(dom)));
}));
toolbar.Add(exporter);
}
private static QueryResult GetQueryResult(LoadArguments arg)
{
var data = new DFDataTableEditor().Load(arg);
return new QueryResult(data.TotalCount, data.Data.Rows, data.Data.Columns, arg.SumColumns.Any() ? data.Data.SumRow : null);
}
private List<SendOutStoreDetail> CreateDetails(long goodsID, long? storeID)
@ -243,9 +276,9 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
return list;
}
private void StartQuery()
private void StartQuery(bool moreThan)
{
_browseGrid.Query = GetQueryDom();
_browseGrid.Query = GetQueryDom(moreThan);
_browseGrid.DataBind();
_browseGrid.CurrentPageIndex = 0;
if (details.Any())
@ -262,7 +295,7 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
}
}
private DQueryDom GetQueryDom()
private DQueryDom GetQueryDom(bool moreThan)
{
var temp = new JoinAlias(typeof(SaleOutStoreTemp));
var forecast = new JoinAlias(typeof(ForecastTemp));
@ -287,7 +320,11 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
query.Columns.Add(DQSelectColumn.Field("Number"));
query.Columns.Add(DQSelectColumn.Field("ProductNumber", forecast, "预估产量"));
query.Columns.Add(DQSelectColumn.Create(DQExpression.Subtract(DQExpression.Field("Number"), DQExpression.Field(forecast, "ProductNumber")).ECastType<decimal>(), "差异数量"));
query.Where.Conditions.Add(DQCondition.GreaterThan(DQExpression.Field("Number"), DQExpression.Field(forecast, "ProductNumber")));
if (moreThan)
query.Where.Conditions.Add(DQCondition.GreaterThan(DQExpression.Field(forecast, "ProductNumber"), DQExpression.Field("Number")));
else
query.Where.Conditions.Add(DQCondition.GreaterThan(DQExpression.Field("Number"), DQExpression.Field(forecast, "ProductNumber")));
return query;
}
@ -455,7 +492,7 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
Adjust(details.Where(x => x.Number != (x.SendNumber ?? 0)));
}
AspUtil.Alert(this, "更新完毕");
StartQuery();
StartQuery(false);
}
void AvgAdjust()
@ -546,7 +583,7 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
</script>", unitNum);
Page.ClientScript.RegisterClientScriptBlock(GetType(), "OtherPageNumber", s, false);
string script = @"var defaultGrid=document.all._gird2;"+ @";
string script = @"var defaultGrid=document.all._gird2;" + @";
function _SumNumber()
{
var grid = defaultGrid.behind;
@ -603,7 +640,7 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
</script>", unitNum11);
Page.ClientScript.RegisterClientScriptBlock(GetType(), "OtherPageNumber11", s11, false);
string script11 = @"var defaultGrid11=document.all._gridUp;" + @";
string script11 = @"var defaultGrid11=document.all._gridUp;" + @";
function _SumNumberUp()
{
var grid = defaultGrid11.behind;


Loading…
Cancel
Save