This commit is contained in:
2024-09-27 18:17:21 +08:00
parent be070f85e2
commit 064a849b97
73 changed files with 3248 additions and 589 deletions
@@ -30,7 +30,7 @@
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="到货统计分析表" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="MaterialCode" AllowCellEditing="true"
runat="server" BoxFlex="1" DataKeyNames="MaterialCode" AllowCellEditing="true" ForceFit="true"
ClicksToEdit="2" DataIDField="MaterialCode" AllowSorting="true" SortField="MaterialCode"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange">
@@ -38,6 +38,7 @@
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
<f:TextBox runat="server" ID="txtMaterialCode" Label="材料编码" EmptyText="输入查询条件" Width="230px" LabelWidth="70px"></f:TextBox>
<f:Label runat="server" ID="lbRate"></f:Label>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSearch" ToolTip="查询" Icon="SystemSearch" runat="server" Text="查询" OnClick="btnSearch_Click">
@@ -61,6 +62,9 @@
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="类型" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialSpec" DataField="MaterialSpec" SortField="MaterialSpec"
FieldType="String" HeaderText="规格" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
@@ -73,7 +77,9 @@
<f:RenderField Width="150px" ColumnID="RealNum" DataField="RealNum" SortField="RealNum"
FieldType="String" HeaderText="到货量" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MatchRateString" DataField="MatchRateString" SortField="MatchRateString"
FieldType="String" HeaderText="匹配率" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
</Columns>
<%-- <Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@@ -28,7 +28,9 @@ namespace FineUIPro.Web.CLGL
/// </summary>
private void BindGrid()
{
var tb = BLL.TwArrivalStatisticsService.GetStatistics(this.CurrUser.LoginProjectId, txtMaterialCode.Text.Trim());
var tb = BLL.TwArrivalStatisticsService.GetStatistics(this.CurrUser.LoginProjectId, txtMaterialCode.Text.Trim());
lbRate.Text="匹配率:"+ Math.Round( tb.Sum(x=>x.MatchRate)*100/tb.Count() ,4) + "%";
//tb = GetFilteredTable(Grid1.FilteredData, tb);
Grid1.DataSource = tb;
Grid1.DataBind();
+10 -1
View File
@@ -60,7 +60,7 @@ namespace FineUIPro.Web.CLGL
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// txtMaterialCode 控件。
/// txtMaterialCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
@@ -68,6 +68,15 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.TextBox txtMaterialCode;
/// <summary>
/// lbRate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lbRate;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
+16 -7
View File
@@ -22,6 +22,7 @@
.f-grid-row.red {
background-color: Yellow;
}
</style>
</head>
<body>
@@ -40,7 +41,7 @@
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowClickEvent="true" OnRowClick="Grid1_RowClick">
EnableRowClickEvent="true" OnRowClick="Grid1_RowClick" OnRowCommand="Grid1_RowCommand">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
@@ -107,6 +108,7 @@
<f:RenderField Width="150px" ColumnID="Remark" DataField="Remark" SortField="Remark"
FieldType="String" HeaderText="备注" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:LinkButtonField Width="150px" ColumnID="btnInPlanMasterPrint" TextAlign="Center" CommandName="btnInPlanMasterPrint" Text="申请单打印" />
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@@ -131,16 +133,16 @@
</Items>
</f:Panel>
<f:Panel runat="server" ID="panelBottomRegion" RegionPosition="Bottom" RegionSplit="true" RegionSplitWidth="20px" EnableCollapse="true"
<f:Panel runat="server" ID="panelBottomRegion" RegionPosition="Bottom" RegionSplit="true" RegionSplitWidth="20px" EnableCollapse="true"
Title="底部面板" ShowBorder="false" RegionPercent="40%" ShowHeader="false" BodyPadding="1px" Layout="Fit">
<Items>
<f:Panel ID="Panel3" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false" AutoScroll="true"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="true" Title="入库申请明细表" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="true" Title="入库申请明细表" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="MaterialCode"
SortDirection="DESC" EnableColumnLines="true" EnableBigData="true"
SortDirection="DESC" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10000" >
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" HeaderText="序号" HeaderTextAlign="Center"
@@ -152,9 +154,12 @@
<f:RenderField Width="150px" ColumnID="MaterialCode" DataField="MaterialCode" SortField="MaterialCode"
FieldType="String" HeaderText="材料编码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
<f:RenderField Width="100px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PlanNum" DataField="PlanNum" SortField="PlanNum"
FieldType="String" HeaderText="数量" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
@@ -169,9 +174,13 @@
<f:Window ID="Window1" runat="server" Hidden="true" ShowHeader="true"
IsModal="true" Target="Parent" EnableMaximize="true" EnableResize="true" OnClose="Window1_Close"
Title="编辑Tw_InOutPlanMaster" EnableIFrame="true" Height="650px"
Title="入库申请" EnableIFrame="true" Height="650px"
Width="1200px">
</f:Window>
<f:Window ID="Window2" Title="打印" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Top" EnableResize="false" runat="server"
IsModal="true" Width="1010px" Height="660px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnEdit_Click" EnablePostBack="true"
Hidden="true" runat="server" Text="编辑" Icon="TableEdit">
@@ -1,7 +1,10 @@
using BLL;
using FineUIPro.Web.HSSE.EduTrain;
using Model;
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
@@ -395,8 +398,118 @@ namespace FineUIPro.Web.CLGL
return sb.ToString();
}
#endregion
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "btnInPlanMasterPrint")
{
Print(e.RowID);
}
}
private void Print(string Id)
{
BLL.FastReportService.ResetData();
if (string.IsNullOrEmpty(Id))
{
ShowNotify("请选择要打印的项", MessageBoxIcon.Warning);
return;
}
Tw_InOutMasterOutput queryModel = new Tw_InOutMasterOutput()
{
Id = Id
};
var result =TwInOutplanmasterService.GetListData(queryModel).FirstOrDefault();
List<Model.Tw_PrintMaster> tw_PrintMasters = new List<Model.Tw_PrintMaster>();
List<Model.Tw_PrintDetail> tw_PrintDetails = new List<Model.Tw_PrintDetail>();
Model.Tw_PrintMaster printMaster = new Model.Tw_PrintMaster
{
ReqUnitName = result.ReqUnitName,
CusBillCode = result.CusBillCode,
CreateDate = result.CreateDate.Value.ToString("yyyy-MM-dd"),
ProjectName = ProjectService.GetProjectNameByProjectId(result.ProjectId),
CategoryString = result.CategoryString,
BillName = TwConst.PlanPrintMap.Where(x => x.Value == result.TypeInt).Select(x => x.Key).FirstOrDefault(),
};
tw_PrintMasters.Add(printMaster);
DataTable Table1 = LINQToDataTable(tw_PrintMasters);
if (Table1 != null)
{
Table1.TableName = "Table1";
}
Tw_InOutPlanDetail_Relation queryModel2 = new Tw_InOutPlanDetail_Relation()
{
InOutPlanMasterId = Id
};
var ListDetailRelation =TwInoutplandetailRelationService.GetTw_InOutPlanDetail_RelationByModle(queryModel2).ToList();
int SortIndex = 1;
int SortIndex2 = 1;
var tw_PrintDetailRelation=(from x in ListDetailRelation
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
join z in Funs.DB.HJGL_Pipeline on x.PipelineId equals z.PipelineId
join m in Funs.DB.WBS_UnitWork on z.UnitWorkId equals m.UnitWorkId
select new Model.Tw_PrintDetail
{
SortIndex=SortIndex++,
PipelineCode=z.PipelineCode,
PipelineComponentCode=x.PrefabricatedComponents,
MaterialCode=y.MaterialCode,
MaterialDef=y.MaterialDef,
MaterialSpec=y.MaterialSpec,
MaterialUnit=y.MaterialUnit,
PlanNum = (x.Number ?? 0).ToString(),
UnitWorkName = m.UnitWorkName,
}).ToList();
var UnitWorkName= tw_PrintDetailRelation.FirstOrDefault()?.UnitWorkName;
Tw_PrintDetail tw_PrintDetailRelation2 = new Tw_PrintDetail
{
MaterialDef = "材料编码合计"
};
var tw_PrintDetail = ( from x in Funs.DB.Tw_InOutPlanDetail
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
where x.InOutPlanMasterId==Id
select new Model.Tw_PrintDetail
{
SortIndex =0,
PipelineCode = "-",
PipelineComponentCode = "-",
MaterialCode = y.MaterialCode,
MaterialDef = y.MaterialDef,
MaterialSpec = y.MaterialSpec,
MaterialUnit = y.MaterialUnit,
PlanNum = (x.PlanNum ?? 0).ToString(),
ActNum = (x.ActNum ?? 0).ToString(),
UnitWorkName = UnitWorkName,
}).ToList();
foreach (var item in tw_PrintDetail)
{
item.SortIndex = SortIndex2++;
}
tw_PrintDetails.AddRange(tw_PrintDetailRelation);
tw_PrintDetails.Add(tw_PrintDetailRelation2);
tw_PrintDetails.AddRange(tw_PrintDetail);
DataTable Data = LINQToDataTable(tw_PrintDetails);
if (Data != null)
{
Data.TableName = "Data";
}
BLL.FastReportService.ResetData();
BLL.FastReportService.AddFastreportTable(Table1);
BLL.FastReportService.AddFastreportTable(Data);
string initTemplatePath = "";
string rootPath = Server.MapPath("~/");
initTemplatePath = "File\\Fastreport\\材料入库计划单.frx";
if (File.Exists(rootPath + initTemplatePath))
{
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("~/Controls/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath)));
}
}
}
}
+9
View File
@@ -239,6 +239,15 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Window2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// Menu1 控件。
/// </summary>
@@ -49,6 +49,8 @@
<f:TextBox ID="txtCreateDate" Label="发起时间" Readonly="true" ColumnWidth="30%" runat="server"></f:TextBox>
<f:TextBox ID="txtReqUnitName" Label="领料单位" ColumnWidth="30%" runat="server" Hidden="true">
</f:TextBox>
<f:TextBox ID="txtRemark" Label="备注" runat="server" ColumnWidth="30%">
</f:TextBox>
</Items>
</f:Panel>
@@ -57,9 +59,7 @@
DataIDField="Id" EnableColumnLines="true" Height="400" EnableBigData="true"
EnableTextSelection="True">
<Columns>
<f:RenderField Width="150px" ColumnID="PipelineComponent" DataField="PipelineComponent" SortField="PipelineComponent"
FieldType="String" HeaderText="预制组件号" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialCode" DataField="MaterialCode" SortField="MaterialCode"
FieldType="String" HeaderText="材料编码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
@@ -88,7 +88,7 @@ namespace FineUIPro.Web.CLGL
protected void btnSave_Click(object sender, EventArgs e)
{
TwInputmasterService.GenInMasterByPlanId(Id, SaveDetail(Id));
TwInputmasterService.GenInMasterByPlanId(Id, SaveDetail(Id),txtRemark.Text);
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
}
@@ -122,6 +122,15 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.TextBox txtReqUnitName;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRemark;
/// <summary>
/// Grid1 控件。
/// </summary>
+12 -4
View File
@@ -20,7 +20,7 @@
}
.f-grid-row.red {
background-color: Yellow;
background-color: darkgoldenrod;
}
</style>
</head>
@@ -40,7 +40,7 @@
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowClickEvent="true" OnRowClick="Grid1_RowClick">
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowClickEvent="true" OnRowClick="Grid1_RowClick" OnRowCommand="Grid1_RowCommand">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
@@ -93,6 +93,7 @@
<f:RenderField Width="150px" ColumnID="Remark" DataField="Remark" SortField="Remark"
FieldType="String" HeaderText="备注" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:LinkButtonField Width="150px" ColumnID="btnInPlanMasterPrint" TextAlign="Center" CommandName="btnInPlanMasterPrint" Text="入库单打印" />
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@@ -126,7 +127,7 @@
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="true" Title="入库申请明细表" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" EnableColumnLines="true" EnableBigData="true"
SortDirection="DESC" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10000">
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" HeaderText="序号" HeaderTextAlign="Center"
@@ -138,9 +139,12 @@
<f:RenderField Width="150px" ColumnID="MaterialCode" DataField="MaterialCode" SortField="MaterialCode"
FieldType="String" HeaderText="材料编码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
<f:RenderField Width="100px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PlanNum" DataField="PlanNum" SortField="PlanNum"
FieldType="String" HeaderText="计划数量" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
@@ -161,6 +165,10 @@
Title="编辑Tw_InOutPlanMaster" EnableIFrame="true" Height="650px"
Width="1200px">
</f:Window>
<f:Window ID="Window2" Title="打印" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Top" EnableResize="false" runat="server"
IsModal="true" Width="1010px" Height="660px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnEdit_Click" EnablePostBack="true"
Hidden="true" runat="server" Text="编辑" Icon="TableEdit">
+121
View File
@@ -1,6 +1,9 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
@@ -69,6 +72,15 @@ namespace FineUIPro.Web.CLGL
var tb = BLL.TwInputdetailService.GetListData(table, Grid2);
Grid2.DataSource = tb;
Grid2.DataBind();
for (int i = 0; i < Grid2.Rows.Count; i++)
{
var model = Grid2.Rows[i].DataItem as Model.Tw_InOutDetailOutput;
if (model.ActNum != model.PlanNum)
{
Grid2.Rows[i].RowCssClass = "red";
}
}
}
#endregion
@@ -278,8 +290,117 @@ namespace FineUIPro.Web.CLGL
return sb.ToString();
}
#endregion
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "btnInPlanMasterPrint")
{
Print(e.RowID);
}
}
private void Print(string Id)
{
BLL.FastReportService.ResetData();
if (string.IsNullOrEmpty(Id))
{
ShowNotify("请选择要打印的项", MessageBoxIcon.Warning);
return;
}
Tw_InOutMasterOutput queryModel = new Tw_InOutMasterOutput()
{
Id = Id
};
var result = TwInputmasterService.GetListData(queryModel).FirstOrDefault();
List<Model.Tw_PrintMaster> tw_PrintMasters = new List<Model.Tw_PrintMaster>();
List<Model.Tw_PrintDetail> tw_PrintDetails = new List<Model.Tw_PrintDetail>();
Model.Tw_PrintMaster printMaster = new Model.Tw_PrintMaster
{
ReqUnitName = result.ReqUnitName,
CusBillCode = result.CusBillCode,
CreateDate = result.CreateDate.Value.ToString("yyyy-MM-dd"),
ProjectName = ProjectService.GetProjectNameByProjectId(result.ProjectId),
CategoryString = result.CategoryString,
BillName = TwConst.PrintMap.Where(x => x.Value == result.TypeInt).Select(x => x.Key).FirstOrDefault(),
};
tw_PrintMasters.Add(printMaster);
DataTable Table1 = LINQToDataTable(tw_PrintMasters);
if (Table1 != null)
{
Table1.TableName = "Table1";
}
Tw_InOutPlanDetail_Relation queryModel2 = new Tw_InOutPlanDetail_Relation()
{
InOutPlanMasterId = Id
};
var ListDetailRelation = TwInoutplandetailRelationService.GetTw_InOutPlanDetail_RelationByModle(queryModel2).ToList();
int SortIndex = 1;
int SortIndex2 = 1;
var tw_PrintDetailRelation = (from x in ListDetailRelation
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
join z in Funs.DB.HJGL_Pipeline on x.PipelineId equals z.PipelineId
join m in Funs.DB.WBS_UnitWork on z.UnitWorkId equals m.UnitWorkId
select new Model.Tw_PrintDetail
{
SortIndex = SortIndex++,
PipelineCode = z.PipelineCode,
PipelineComponentCode = x.PrefabricatedComponents,
MaterialCode = y.MaterialCode,
MaterialDef = y.MaterialDef,
MaterialSpec = y.MaterialSpec,
MaterialUnit = y.MaterialUnit,
PlanNum = (x.Number ?? 0).ToString(),
UnitWorkName = m.UnitWorkName,
}).ToList();
var UnitWorkName = tw_PrintDetailRelation.FirstOrDefault()?.UnitWorkName;
Tw_PrintDetail tw_PrintDetailRelation2 = new Tw_PrintDetail
{
MaterialDef = "材料编码合计"
};
var tw_PrintDetail = (from x in Funs.DB.Tw_InputDetail
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
where x.InputMasterId == Id
select new Model.Tw_PrintDetail
{
SortIndex = 0,
PipelineCode = "-",
PipelineComponentCode = "-",
MaterialCode = y.MaterialCode,
MaterialDef = y.MaterialDef,
MaterialSpec = y.MaterialSpec,
MaterialUnit = y.MaterialUnit,
PlanNum = (x.PlanNum ?? 0).ToString(),
ActNum = (x.ActNum ?? 0).ToString(),
UnitWorkName = UnitWorkName,
}).ToList();
foreach (var item in tw_PrintDetail)
{
item.SortIndex = SortIndex2++;
}
tw_PrintDetails.AddRange(tw_PrintDetailRelation);
tw_PrintDetails.Add(tw_PrintDetailRelation2);
tw_PrintDetails.AddRange(tw_PrintDetail);
DataTable Data = LINQToDataTable(tw_PrintDetails);
if (Data != null)
{
Data.TableName = "Data";
}
BLL.FastReportService.ResetData();
BLL.FastReportService.AddFastreportTable(Table1);
BLL.FastReportService.AddFastreportTable(Data);
string initTemplatePath = "";
string rootPath = Server.MapPath("~/");
initTemplatePath = "File\\Fastreport\\材料入库单.frx";
if (File.Exists(rootPath + initTemplatePath))
{
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("~/Controls/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath)));
}
}
}
}
+9
View File
@@ -194,6 +194,15 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Window2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// Menu1 控件。
/// </summary>
+17 -6
View File
@@ -31,17 +31,25 @@
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false" AutoScroll="true"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="材料库存表" EnableCollapse="true"
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="材料库存表" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" EnableTextSelection="True"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" >
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DropDownList ID="drpWarehouse" runat="server" Label="仓库"
LabelWidth="70px" LabelAlign="Right" Width="170px">
</f:DropDownList>
<f:TextBox runat="server" ID="txtMatCode" Label="材料编码" LabelWidth="70px" LabelAlign="Right" Width="170px"></f:TextBox>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSearch" ToolTip="查询" Icon="SystemSearch" runat="server" Text="查询" OnClick="btnSearch_Click">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="导出" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
@@ -53,7 +61,7 @@
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="150px" ColumnID="WarehouseCode" DataField="WarehouseCode" SortField="WarehouseCode"
<f:RenderField Width="150px" ColumnID="WarehouseCode" DataField="WarehouseCode" SortField="WarehouseCode"
FieldType="String" HeaderText="仓库编码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PipeLineMatCode" DataField="PipeLineMatCode" SortField="PipeLineMatCode"
@@ -62,6 +70,9 @@
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="类型" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialSpec" DataField="MaterialSpec" SortField="MaterialSpec"
FieldType="String" HeaderText="规格" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
+16 -1
View File
@@ -17,6 +17,11 @@ namespace FineUIPro.Web.CLGL
if (!IsPostBack)
{
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
drpWarehouse.DataTextField = "Text";
drpWarehouse.DataValueField = "Value";
drpWarehouse.DataSource = BLL.DropListService.HJGL_WarehouseCode();
drpWarehouse.DataBind();
Funs.FineUIPleaseSelect(this.drpWarehouse);
// 绑定表格
this.BindGrid();
}
@@ -29,6 +34,11 @@ namespace FineUIPro.Web.CLGL
private void BindGrid()
{
Model.Tw_MaterialStockOutput table = new Model.Tw_MaterialStockOutput();
table.PipeLineMatCode = txtMatCode.Text.Trim();
if (drpWarehouse.SelectedValue!= Const._Null)
{
table.WarehouseCode = drpWarehouse.SelectedValue;
}
table.ProjectId = this.CurrUser.LoginProjectId;
var tb = BLL.TwMaterialstockService.GetListData(table, Grid1);
Grid1.RecordCount = TwMaterialstockService.Count;
@@ -218,6 +228,11 @@ namespace FineUIPro.Web.CLGL
return sb.ToString();
}
#endregion
#endregion
protected void btnSearch_Click(object sender, EventArgs e)
{
BindGrid();
}
}
}
+36
View File
@@ -59,6 +59,42 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// drpWarehouse 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpWarehouse;
/// <summary>
/// txtMatCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMatCode;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnOut 控件。
/// </summary>
+58 -25
View File
@@ -16,6 +16,10 @@
color: blue;
font-weight: bold;
}
.f-grid-row-summary .f-grid-cell-inner {
font-weight: bold;
color: red;
}
</style>
</head>
<body>
@@ -81,19 +85,16 @@
<f:Button ID="btnGenInOutMaster" Text="出库" Icon="ArrowRefresh" runat="server" OnClick="btnGenInOutMaster_Click" Hidden="true">
</f:Button>
<f:Button ID="btnRevokeGenInOutMaster" Text="撤销出库" Icon="ArrowRefresh" runat="server" OnClick="btnRevokeGenInOutMaster_Click" Hidden="true">
</f:Button>
<f:Button ID="btnPrint" Text="打印申请单" Icon="Printer" runat="server"
OnClick="btnPrint_Click">
</f:Button>
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="申请单" IsFluid="true"
EnableCollapse="true" runat="server" BoxFlex="1" DataKeyNames="Id"
EnableCollapse="true" runat="server" BoxFlex="1" DataKeyNames="Id"
EnableColumnLines="true" ClicksToEdit="2" DataIDField="Id"
AllowSorting="true" SortField="CusBillCode" SortDirection="ASC" OnSort="Grid1_Sort"
EnableTextSelection="True" EnableRowClickEvent="true" OnRowClick="Grid1_RowClick" EnableRowGroup="true" DataRowGroupField="WeldTaskCode">
AllowSorting="true" SortField="CusBillCode" SortDirection="ASC" OnSort="Grid1_Sort" OnRowCommand="Grid1_RowCommand"
EnableTextSelection="True" EnableRowClickEvent="true" OnRowClick="Grid1_RowClick" EnableRowGroup="true" DataRowGroupField="WeldTaskCode">
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
@@ -143,7 +144,8 @@
<f:RenderField Width="150px" ColumnID="AuditDate2" DataField="AuditDate2" SortField="AuditDate2" Renderer="Date"
RendererArgument="yyyy-MM-dd" FieldType="Date" HeaderText="审核时间(材控)" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:LinkButtonField Width="150px" ColumnID="btnInPlanMasterPrint" TextAlign="Center" CommandName="btnInPlanMasterPrint" Text="申请单打印" />
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu1" />
@@ -163,19 +165,25 @@
<f:Grid ID="Grid2" ShowBorder="False" ShowHeader="False" Title="出库明细" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="MaterialCode"
SortDirection="DESC" EnableColumnLines="true" EnableBigData="true"
SortDirection="DESC" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10000">
<Columns>
<f:RenderField Width="150px" ColumnID="MaterialCode" DataField="MaterialCode" SortField="MaterialCode"
FieldType="String" HeaderText="材料编码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
<f:RenderField Width="100px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PlanNum" DataField="PlanNum" SortField="PlanNum"
FieldType="String" HeaderText="计划数量" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="StockNum" DataField="StockNum" SortField="StockNum"
FieldType="String" HeaderText="实时库存" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
@@ -183,24 +191,45 @@
<f:Tab ID="TabStrip2" Title="管线材料明细" BodyPadding="1px" Layout="VBox" runat="server" AutoScroll="true">
<Items>
<f:Grid ID="Grid3" ShowBorder="False" ShowHeader="False" Title="管线材料明细" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="MaterialCode"
SortDirection="DESC" EnableRowGroup="true" DataRowGroupField="PipelineCode" AllowPaging="true" IsDatabasePaging="true" PageSize="10000">
runat="server" BoxFlex="1" DataKeyNames="Id"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="MaterialCode" EnableSummary="true" SummaryPosition="Bottom"
SortDirection="DESC" EnableRowGroup="true" DataRowGroupField="PipelineCode" AllowPaging="true" IsDatabasePaging="true" PageSize="10000">
<Columns>
<f:RenderField Width="150px" ColumnID="PipelineCode" DataField="PipelineCode" SortField="PipelineCode"
FieldType="String" HeaderText="管线号" TextAlign="Left" HeaderTextAlign="Center">
<f:RenderField Width="100px" ColumnID="PipelineCode" DataField="PipelineCode" SortField="PipelineCode"
FieldType="String" HeaderText="管线号" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PrefabricatedComponents" DataField="PrefabricatedComponents" SortField="PrefabricatedComponents"
FieldType="String" HeaderText="预制组件号" TextAlign="Left" HeaderTextAlign="Center">
<f:RenderField Width="100px" ColumnID="PrefabricatedComponents" DataField="PrefabricatedComponents" SortField="PrefabricatedComponents"
FieldType="String" HeaderText="预制组件号" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialCode" DataField="MaterialCode" SortField="MaterialCode"
FieldType="String" HeaderText="材料编码" TextAlign="Left" HeaderTextAlign="Center">
<f:RenderField Width="100px" ColumnID="MaterialCode" DataField="MaterialCode" SortField="MaterialCode"
FieldType="String" HeaderText="材料编码" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center">
<f:RenderField Width="100px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="材料名称" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Number" DataField="Number" SortField="Number"
FieldType="String" HeaderText="数量" TextAlign="Left" HeaderTextAlign="Center">
<f:RenderField Width="150px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="MaterialUnit" DataField="MaterialUnit" SortField="MaterialUnit"
FieldType="String" HeaderText="单位" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="NeedNum" DataField="NeedNum" SortField="NeedNum"
FieldType="String" HeaderText="所需量" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="MatchNum" DataField="MatchNum" SortField="MatchNum"
FieldType="String" HeaderText="匹配量" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="MatchRateString" DataField="MatchRateString" SortField="MatchRateString"
FieldType="String" HeaderText="匹配率" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
</Columns>
</f:Grid>
@@ -222,8 +251,12 @@
EnableIFrame="true" EnableMaximize="false" Target="Top" EnableResize="false" runat="server"
IsModal="true" Width="700px" Height="470px" OnClose="Window2_Close">
</f:Window>
<f:Window ID="Window3" Title="打印" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Top" EnableResize="false" runat="server"
IsModal="true" Width="1010px" Height="660px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuInOutPlanMasterEdit" OnClick="btnMenuInOutPlanMasterEdit_Click" EnablePostBack="true"
<f:MenuButton ID="btnMenuInOutPlanMasterEdit" OnClick="btnMenuInOutPlanMasterEdit_Click" EnablePostBack="true"
runat="server" Text="编辑" Icon="TableEdit">
</f:MenuButton>
<f:MenuButton ID="btnMenuInOutPlanMasterDelete" OnClick="btnMenuInOutPlanMasterDelete_Click" EnablePostBack="true"
+132 -67
View File
@@ -2,11 +2,15 @@
using BLL;
using FineUIPro.Web.HSSE.EduTrain;
using FineUIPro.Web.ProjectData;
using Model;
using Newtonsoft.Json.Linq;
using NPOI.SS.Formula.Functions;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
@@ -98,11 +102,25 @@ namespace FineUIPro.Web.CLGL
}
private void BindDetailRelationGrid(string inOutPlanMasterId)
{
Model.Tw_InOutPlanDetail_Relation table = new Model.Tw_InOutPlanDetail_Relation();
/* Model.Tw_InOutPlanDetail_Relation table = new Model.Tw_InOutPlanDetail_Relation();
table.InOutPlanMasterId = inOutPlanMasterId;
var tb = BLL.TwInoutplandetailRelationService.GetListData(table, Grid3);
Grid3.DataSource = tb;
Grid3.DataBind();
*/
var tb = BLL.TwArrivalStatisticsService.GetMatMatchByOutPlanMasterId(inOutPlanMasterId);
Grid3.DataSource = tb;
Grid3.DataBind();
string Rate = Math.Round((decimal)tb.Average(item => item.MatchRate) * 100, 2).ToString() + "%";
JObject summary = new JObject();
//summary.Add("Major", "全部合计");
summary.Add("MatchRateString", Rate);
Grid3.SummaryData = summary;
}
#endregion
@@ -220,6 +238,119 @@ namespace FineUIPro.Web.CLGL
#endregion
#region
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "btnInPlanMasterPrint")
{
Print(e.RowID);
}
}
private void Print(string Id)
{
BLL.FastReportService.ResetData();
if (string.IsNullOrEmpty(Id))
{
ShowNotify("请选择要打印的项", MessageBoxIcon.Warning);
return;
}
Tw_InOutMasterOutput queryModel = new Tw_InOutMasterOutput()
{
Id = Id
};
var result = TwInOutplanmasterService.GetListData(queryModel).FirstOrDefault();
List<Model.Tw_PrintMaster> tw_PrintMasters = new List<Model.Tw_PrintMaster>();
List<Model.Tw_PrintDetail> tw_PrintDetails = new List<Model.Tw_PrintDetail>();
Model.Tw_PrintMaster printMaster = new Model.Tw_PrintMaster
{
ReqUnitName = result.ReqUnitName,
CusBillCode = result.CusBillCode,
CreateDate = result.CreateDate.Value.ToString("yyyy-MM-dd"),
ProjectName = ProjectService.GetProjectNameByProjectId(result.ProjectId),
CategoryString = result.CategoryString,
BillName = TwConst.PlanPrintMap.Where(x => x.Value == result.TypeInt).Select(x => x.Key).FirstOrDefault(),
};
tw_PrintMasters.Add(printMaster);
DataTable Table1 = LINQToDataTable(tw_PrintMasters);
if (Table1 != null)
{
Table1.TableName = "Table1";
}
Tw_InOutPlanDetail_Relation queryModel2 = new Tw_InOutPlanDetail_Relation()
{
InOutPlanMasterId = Id
};
var ListDetailRelation = TwInoutplandetailRelationService.GetTw_InOutPlanDetail_RelationByModle(queryModel2).ToList();
int SortIndex = 1;
int SortIndex2 = 1;
var tw_PrintDetailRelation = (from x in ListDetailRelation
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
join z in Funs.DB.HJGL_Pipeline on x.PipelineId equals z.PipelineId
join m in Funs.DB.WBS_UnitWork on z.UnitWorkId equals m.UnitWorkId
select new Model.Tw_PrintDetail
{
SortIndex = SortIndex++,
PipelineCode = z.PipelineCode,
PipelineComponentCode = x.PrefabricatedComponents,
MaterialCode = y.MaterialCode,
MaterialDef = y.MaterialDef,
MaterialSpec = y.MaterialSpec,
MaterialUnit = y.MaterialUnit,
PlanNum = (x.Number ??0).ToString(),
UnitWorkName = m.UnitWorkName,
}).ToList();
var UnitWorkName = tw_PrintDetailRelation.FirstOrDefault()?.UnitWorkName;
Tw_PrintDetail tw_PrintDetailRelation2 = new Tw_PrintDetail
{
MaterialDef = "材料编码合计"
};
var tw_PrintDetail = (from x in Funs.DB.Tw_InOutPlanDetail
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
where x.InOutPlanMasterId == Id
select new Model.Tw_PrintDetail
{
SortIndex = 0,
PipelineCode = "-",
PipelineComponentCode = "-",
MaterialCode = y.MaterialCode,
MaterialDef = y.MaterialDef,
MaterialSpec = y.MaterialSpec,
MaterialUnit = y.MaterialUnit,
PlanNum = (x.PlanNum ?? 0).ToString(),
ActNum = (x.ActNum ?? 0).ToString(),
UnitWorkName = UnitWorkName,
}).ToList();
foreach (var item in tw_PrintDetail)
{
item.SortIndex = SortIndex2++;
}
if (result.TypeInt == (int)TwConst.TypeInt.)
{
tw_PrintDetails.AddRange(tw_PrintDetailRelation);
}
tw_PrintDetails.Add(tw_PrintDetailRelation2);
tw_PrintDetails.AddRange(tw_PrintDetail);
DataTable Data = LINQToDataTable(tw_PrintDetails);
if (Data != null)
{
Data.TableName = "Data";
}
BLL.FastReportService.ResetData();
BLL.FastReportService.AddFastreportTable(Table1);
BLL.FastReportService.AddFastreportTable(Data);
string initTemplatePath = "";
string rootPath = Server.MapPath("~/");
initTemplatePath = "File\\Fastreport\\材料出库计划单.frx";
if (File.Exists(rootPath + initTemplatePath))
{
PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("~/Controls/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath)));
}
}
protected void Grid1_RowClick(object sender, GridRowClickEventArgs e)
{
if (e.RowIndex >= 0)
@@ -415,71 +546,6 @@ namespace FineUIPro.Web.CLGL
#endregion
#region
/// <summary>
/// 报表打印
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnPrint_Click(object sender, EventArgs e)
{
string pipelineId = this.tvControlItem.SelectedNodeID;
var q = BLL.PipelineService.GetPipelineByPipelineId(pipelineId);
if (q != null)
{
var jotCount = (from x in Funs.DB.HJGL_WeldJoint where x.PipelineId == pipelineId select x).Count();
var weldJotCount = (from x in Funs.DB.HJGL_WeldJoint where x.PipelineId == pipelineId && x.WeldingDailyId != null select x).Count();
if (jotCount == weldJotCount)
{
string varValue = string.Empty;
var project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
if (project != null)
{
varValue = project.ProjectName;
var unitWork = BLL.UnitWorkService.GetUnitWorkByUnitWorkId(q.UnitWorkId);
if (unitWork != null)
{
varValue = varValue + "|" + unitWork.UnitWorkName;
}
}
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@IsoId", pipelineId));
listStr.Add(new SqlParameter("@Flag", "0"));
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = BLL.SQLHelper.GetDataTableRunProc("HJGL_spJointWorkRecordNew", parameter);
string page = Funs.GetPagesCountByPageSize(11, 16, tb.Rows.Count).ToString();
varValue = varValue + "|" + page;
if (!string.IsNullOrEmpty(varValue))
{
varValue = HttpUtility.UrlEncodeUnicode(varValue);
}
if (tb.Rows.Count <= 11)
{
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../../ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId={3}", BLL.Const.HJGL_JointInfoReport1Id, pipelineId, varValue, this.CurrUser.LoginProjectId)));
}
else
{
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../../ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId={3}", BLL.Const.HJGL_JointInfoReport1Id, pipelineId, varValue, this.CurrUser.LoginProjectId)));
}
}
else
{
ShowNotify("请选择焊接完成管线!", MessageBoxIcon.Warning);
return;
}
}
else
{
ShowNotify("请选择管线!", MessageBoxIcon.Warning);
return;
}
}
#endregion
#region
/// <summary>
@@ -585,7 +651,6 @@ namespace FineUIPro.Web.CLGL
{
this.btnGenInOutMaster.Hidden = false;
this.btnRevokeGenInOutMaster.Hidden = false;
this.btnPrint.Hidden = false;
// this.btnMenuInOutPlanMasterEdit.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnDelete))
+9 -9
View File
@@ -212,15 +212,6 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.Button btnRevokeGenInOutMaster;
/// <summary>
/// btnPrint 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnPrint;
/// <summary>
/// Grid1 控件。
/// </summary>
@@ -311,6 +302,15 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// Window3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window3;
/// <summary>
/// Menu1 控件。
/// </summary>
@@ -38,7 +38,7 @@
<f:Panel ID="Panel4" Layout="Column" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextBox ID="txtWeldTaskCode" Label="任务单编号" Readonly="true" ColumnWidth="20%" runat="server">
<f:TextBox ID="txtWeldTaskCode" Label="任务单编号" Readonly="true" ColumnWidth="20%" runat="server" Hidden="true">
</f:TextBox>
<f:DropDownList ID="drpWarehouse" runat="server" Label="仓库" ColumnWidth="20%"
@@ -47,10 +47,10 @@
<f:DropDownList ID="drpTypeInt" runat="server" Label="类型" ColumnWidth="20%"
LabelWidth="70px" LabelAlign="Right" Width="170px">
</f:DropDownList>
<f:DropDownList ID="drpCategory" runat="server" Label="类别" ColumnWidth="20%"
<f:DropDownList ID="drpCategory" runat="server" Label="类别" ColumnWidth="30%"
LabelWidth="70px" LabelAlign="Right" Width="170px">
</f:DropDownList>
<f:TextBox ID="txtCusBillCode" Label="编号" ColumnWidth="20%" runat="server" ShowRedStar="true" Required="true">
<f:TextBox ID="txtCusBillCode" Label="编号" ColumnWidth="30%" runat="server" ShowRedStar="true" Required="true">
</f:TextBox>
</Items>
</f:Panel>
@@ -82,16 +82,16 @@
<Columns>
<f:RenderField Width="150px" ColumnID="PipelineCode" DataField="PipelineCode" SortField="PipelineCode"
FieldType="String" HeaderText="管线号" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PrefabricatedComponents" DataField="PrefabricatedComponents" SortField="PrefabricatedComponents"
FieldType="String" HeaderText="预制组件号" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialCode" DataField="MaterialCode" SortField="MaterialCode"
FieldType="String" HeaderText="材料编码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Number" DataField="Number" FieldType="Float"
HeaderText="计划数量">
<Editor>
@@ -84,7 +84,8 @@ namespace FineUIPro.Web.CLGL
{
txtCreateMan.Text = this.CurrUser.PersonName;
txtCreateDate.Text = DateTime.Now.ToString("yyyy-MM-dd");
drpReqUnit.SelectedValue = this.CurrUser.UnitId;
drpReqUnit.SelectedValue = this.CurrUser.UnitId;
txtCusBillCode.Text = TwInOutplanmasterService.GetDataInCusBillCode(this.CurrUser.LoginProjectId, this.CurrUser.UnitId);
}
@@ -124,14 +124,13 @@ namespace FineUIPro.Web.CLGL
foreach (var item in pipeline)
{
TreeNode newNode = new TreeNode();
int totalJointNum = joints.Count(x => x.PipelineId == item.PipelineId);
int weldJointNum = joints.Count(x => x.PipelineId == item.PipelineId && x.WeldingDailyId != null);
//bool istrue = BLL.HJGL_MaterialService.isInStockByPipeline(item.PipelineId, this.CurrUser.LoginProjectId);
//if (istrue)
//{
// newNode.CssClass = "tn-color-green";
//}
newNode.Text = item.PipelineCode + "(" + (totalJointNum - weldJointNum).ToString() + ")";
newNode.Text = item.PipelineCode;
newNode.NodeID = item.PipelineId;
newNode.ToolTip = item.PipelineCode;
newNode.EnableClickEvent = true;
+13 -8
View File
@@ -22,7 +22,7 @@
}
.f-grid-row.yellow {
background-color: yellow;
background-color:darkgoldenrod;
}
</style>
</head>
@@ -83,10 +83,7 @@
<f:Button ID="btnGenInPlanMaster" Text="生成退料通知单" Icon="ArrowRefresh" runat="server" OnClick="btnGenInPlanMaster_Click" Hidden="true">
</f:Button>
<f:Button ID="btnGenOutPlanMaster" Text="生成补料申请单" Icon="ArrowRefresh" runat="server" OnClick="btnGenOutPlanMaster_Click" Hidden="true">
</f:Button>
<f:Button ID="btnPrint" Text="打印申请单" Icon="Printer" runat="server"
OnClick="btnPrint_Click">
</f:Button>
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
@@ -94,7 +91,7 @@
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="申请单"
EnableCollapse="true" runat="server" BoxFlex="1" DataKeyNames="Id"
AllowColumnLocking="true" EnableColumnLines="true" ClicksToEdit="2" DataIDField="Id"
AllowSorting="true" SortField="CusBillCode" SortDirection="ASC" OnSort="Grid1_Sort"
AllowSorting="true" SortField="CusBillCode" SortDirection="ASC" OnSort="Grid1_Sort" OnRowCommand="Grid1_RowCommand"
EnableTextSelection="True" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowClickEvent="true" OnRowClick="Grid1_RowClick">
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" HeaderText="序号" HeaderTextAlign="Center"
@@ -139,7 +136,8 @@
</f:RenderField>
<f:RenderField Width="150px" ColumnID="AuditDate" DataField="AuditDate" SortField="AuditDate" Renderer="Date"
RendererArgument="yyyy-MM-dd" FieldType="Date" HeaderText="审核时间" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
</f:RenderField>
<f:LinkButtonField Width="150px" ColumnID="btnInPlanMasterPrint" TextAlign="Center" CommandName="btnInPlanMasterPrint" Text="出库单打印" />
</Columns>
<Listeners>
@@ -160,7 +158,7 @@
<f:Grid ID="Grid2" ShowBorder="False" ShowHeader="False" Title="入库申请明细表" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="MaterialCode"
SortDirection="DESC" EnableColumnLines="true" EnableBigData="true"
SortDirection="DESC" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10000">
<Columns>
<%--<f:RenderField Width="150px" ColumnID="PipelineComponent" DataField="PipelineComponent" SortField="PipelineComponent"
@@ -172,6 +170,9 @@
<f:RenderField Width="150px" ColumnID="MaterialName" DataField="MaterialName" SortField="MaterialName"
FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="MaterialDef" DataField="MaterialDef" SortField="MaterialDef"
FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PlanNum" DataField="PlanNum" SortField="PlanNum"
FieldType="String" HeaderText="计划数量" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
@@ -204,6 +205,10 @@
EnableIFrame="true" EnableMaximize="false" Target="Top" EnableResize="false" runat="server"
IsModal="true" Width="700px" Height="470px" OnClose="Window2_Close">
</f:Window>
<f:Window ID="Window3" Title="打印" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Top" EnableResize="false" runat="server"
IsModal="true" Width="1010px" Height="660px">
</f:Window>
<f:Menu ID="Menu1" runat="server" Hidden="true">
<f:MenuButton ID="btnMenuInOutPlanMasterEdit" OnClick="btnMenuInOutPlanMasterEdit_Click" EnablePostBack="true" Hidden="true"
runat="server" Text="编辑" Icon="TableEdit">
+112 -1
View File
@@ -1,8 +1,10 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
@@ -519,7 +521,7 @@ namespace FineUIPro.Web.CLGL
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
this.btnPrint.Hidden = false;
// this.btnPrint.Hidden = false;
//this.btnMenuInOutPlanMasterEdit.Hidden = false;
this.btnGenInPlanMaster.Hidden = false;
this.btnGenOutPlanMaster.Hidden = false;
@@ -530,6 +532,115 @@ namespace FineUIPro.Web.CLGL
}
}
}
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "btnInPlanMasterPrint")
{
Print(e.RowID);
}
}
private void Print(string Id)
{
BLL.FastReportService.ResetData();
if (string.IsNullOrEmpty(Id))
{
ShowNotify("请选择要打印的项", MessageBoxIcon.Warning);
return;
}
Tw_InOutMasterOutput queryModel = new Tw_InOutMasterOutput()
{
Id = Id
};
var result = TwOutputmasterService.GetListData(queryModel).FirstOrDefault();
List<Model.Tw_PrintMaster> tw_PrintMasters = new List<Model.Tw_PrintMaster>();
List<Model.Tw_PrintDetail> tw_PrintDetails = new List<Model.Tw_PrintDetail>();
Model.Tw_PrintMaster printMaster = new Model.Tw_PrintMaster
{
ReqUnitName = result.ReqUnitName,
CusBillCode = result.CusBillCode,
CreateDate = result.CreateDate.Value.ToString("yyyy-MM-dd"),
ProjectName = ProjectService.GetProjectNameByProjectId(result.ProjectId),
CategoryString = result.CategoryString,
BillName = TwConst.PrintMap.Where(x => x.Value == result.TypeInt).Select(x => x.Key).FirstOrDefault(),
};
tw_PrintMasters.Add(printMaster);
DataTable Table1 = LINQToDataTable(tw_PrintMasters);
if (Table1 != null)
{
Table1.TableName = "Table1";
}
Tw_InOutPlanDetail_Relation queryModel2 = new Tw_InOutPlanDetail_Relation()
{
InOutPlanMasterId = Id
};
var ListDetailRelation = TwInoutplandetailRelationService.GetTw_InOutPlanDetail_RelationByModle(queryModel2).ToList();
int SortIndex = 1;
int SortIndex2 = 1;
var tw_PrintDetailRelation = (from x in ListDetailRelation
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
join z in Funs.DB.HJGL_Pipeline on x.PipelineId equals z.PipelineId
join m in Funs.DB.WBS_UnitWork on z.UnitWorkId equals m.UnitWorkId
select new Model.Tw_PrintDetail
{
SortIndex = SortIndex++,
PipelineCode = z.PipelineCode,
PipelineComponentCode = x.PrefabricatedComponents,
MaterialCode = y.MaterialCode,
MaterialDef = y.MaterialDef,
MaterialSpec = y.MaterialSpec,
MaterialUnit = y.MaterialUnit,
PlanNum = (x.Number ?? 0).ToString(),
UnitWorkName = m.UnitWorkName,
}).ToList();
var UnitWorkName = tw_PrintDetailRelation.FirstOrDefault()?.UnitWorkName;
Tw_PrintDetail tw_PrintDetailRelation2 = new Tw_PrintDetail
{
MaterialDef = "材料编码合计"
};
var tw_PrintDetail = (from x in Funs.DB.Tw_OutputDetail
join y in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
where x.OutputMasterId == Id
select new Model.Tw_PrintDetail
{
SortIndex = 0,
PipelineCode = "-",
PipelineComponentCode = "-",
MaterialCode = y.MaterialCode,
MaterialDef = y.MaterialDef,
MaterialSpec = y.MaterialSpec,
MaterialUnit = y.MaterialUnit,
PlanNum = (x.PlanNum ?? 0).ToString(),
ActNum = (x.ActNum ?? 0).ToString(),
UnitWorkName = UnitWorkName,
}).ToList();
foreach (var item in tw_PrintDetail)
{
item.SortIndex = SortIndex2++;
}
tw_PrintDetails.AddRange(tw_PrintDetailRelation);
tw_PrintDetails.Add(tw_PrintDetailRelation2);
tw_PrintDetails.AddRange(tw_PrintDetail);
DataTable Data = LINQToDataTable(tw_PrintDetails);
if (Data != null)
{
Data.TableName = "Data";
}
BLL.FastReportService.ResetData();
BLL.FastReportService.AddFastreportTable(Table1);
BLL.FastReportService.AddFastreportTable(Data);
string initTemplatePath = "";
string rootPath = Server.MapPath("~/");
initTemplatePath = "File\\Fastreport\\材料出库单.frx";
if (File.Exists(rootPath + initTemplatePath))
{
PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("~/Controls/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath)));
}
}
#endregion
+9 -9
View File
@@ -185,15 +185,6 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.Button btnGenOutPlanMaster;
/// <summary>
/// btnPrint 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnPrint;
/// <summary>
/// Grid1 控件。
/// </summary>
@@ -266,6 +257,15 @@ namespace FineUIPro.Web.CLGL
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// Window3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window3;
/// <summary>
/// Menu1 控件。
/// </summary>