2023-11-01

This commit is contained in:
2023-11-01 23:12:52 +08:00
parent 8d25d69061
commit 32c893fdc3
20 changed files with 496 additions and 203 deletions
@@ -21,7 +21,6 @@
.f-grid-row.red {
background-color: Yellow;
}
.color1 {
@@ -38,12 +37,12 @@
<f:Panel runat="server" ID="panelCenterRegion" RegionPosition="Center" Layout="Fit"
Title="中间面板" ShowBorder="true" ShowHeader="false" BodyPadding="10px" IconFont="_RoundPlus">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="合同执行跟踪表" EnableCollapse="true"
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="合同执行跟踪表" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="1" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" OnRowDataBound="Grid1_RowDataBound" IsFluid="True"
AllowPaging="False" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" >
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="True" IsDatabasePaging="true" PageSize="500" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" EnableRowClickEvent="True">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
@@ -53,7 +52,7 @@
<f:Label ID="txtContractName" runat="server" Label="合同名称" LabelAlign="Right" LabelWidth="140px"></f:Label>
<f:ToolbarFill runat="server" />
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="导出" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
@@ -66,6 +65,8 @@
<Items>
<f:TextBox runat="server" ID="txtProjectCode" Label="项目编码" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtProjectName" Label="项目名称" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtMainItemName" Label="主项名称" LabelWidth="90" Width="200px" />
<f:DropDownList runat="server" ID="drpMajorItems" Label="专业"></f:DropDownList>
<f:ToolbarFill runat="server" />
<f:Button ID="btnQuery" ToolTip="查询" Text="查询" Icon="SystemSearch" runat="server" EnablePostBack="true"
@@ -76,46 +77,45 @@
</Toolbars>
<Columns>
<f:RenderField Width="80px" ColumnID="SerialNumber" DataField="SerialNumber" SortField="SerialNumber"
FieldType="String" HeaderText="序号" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
FieldType="String" HeaderText="序号" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="MainItemCode" DataField="MainItemCode" SortField="MainItemCode"
FieldType="String" HeaderText="主项号" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox2" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MainItemName" DataField="MainItemName" SortField="MainItemName"
FieldType="String" HeaderText="主项名称" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox3" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MajorName" DataField="MajorName" SortField="MajorName"
FieldType="String" HeaderText="专业工程名称" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox4" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MajorCode" DataField="MajorCode" SortField="MajorCode"
FieldType="String" HeaderText="专业代码" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox5" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SubProject" DataField="SubProject" SortField="SubProject"
FieldType="String" HeaderText="分部工程" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox6" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SubItemProject" DataField="SubItemProject" SortField="SubItemProject"
FieldType="String" HeaderText="子分部工程" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox7" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="MainItemCode" DataField="MainItemCode" SortField="MainItemCode"
FieldType="String" HeaderText="主项号" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox2" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MainItemName" DataField="MainItemName" SortField="MainItemName"
FieldType="String" HeaderText="主项名称" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox3" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MajorName" DataField="MajorName" SortField="MajorName"
FieldType="String" HeaderText="专业工程名称" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox4" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="MajorCode" DataField="MajorCode" SortField="MajorCode"
FieldType="String" HeaderText="专业代码" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox5" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SubProject" DataField="SubProject" SortField="SubProject"
FieldType="String" HeaderText="分部工程" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox6" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SubItemProject" DataField="SubItemProject" SortField="SubItemProject"
FieldType="String" HeaderText="子分部工程" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox7" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="ProjectCode" DataField="ProjectCode" SortField="ProjectCode" EnableColumnEdit="False"
FieldType="String" HeaderText="项目编码" TextAlign="Center" HeaderTextAlign="Center">
@@ -168,7 +168,7 @@
<f:TextBox ID="TextBox15" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="WorkContent" DataField="WorkContent" SortField="WorkContent" EnableColumnEdit="False" Hidden="True"
<f:RenderField Width="150px" ColumnID="WorkContent" DataField="WorkContent" SortField="WorkContent" EnableColumnEdit="False" Hidden="True"
FieldType="String" HeaderText="工作内容" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox16" runat="server" Required="true"></f:TextBox>
@@ -186,7 +186,7 @@
<f:TextBox ID="TextBox18" runat="server" Required="true"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="80px" ColumnID="ContractWeight" DataField="ContractWeight" SortField="ContractWeight" EnableColumnEdit="False"
<f:RenderField Width="80px" ColumnID="ContractWeight" DataField="ContractWeight" SortField="ContractWeight" EnableColumnEdit="False"
FieldType="String" HeaderText="合同权重/% " TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="TextBox19" runat="server" Required="true"></f:TextBox>
@@ -230,14 +230,14 @@
<ItemTemplate>
<asp:Label ID="lbQuantityOffset" runat="server" Text='<%# BLL.PhtglContractTrackService.GetQuantityOffset(Eval("Id")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</f:TemplateField>
<f:TemplateField ColumnID="AmountOffset" Width="100px" HeaderText="费用偏差(元)" HeaderTextAlign="Center" TextAlign="Right">
<ItemTemplate>
<asp:Label ID="lbAmountOffset" runat="server" Text='<%# BLL.PhtglContractTrackService.GetAmountOffset(Eval("Id")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</f:TemplateField>
</Columns>
<%-- <Listeners>
<%-- <Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>--%>
<PageItems>
@@ -30,6 +30,8 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
this.DropContractCode.DataSource = BLL.PHTGL_ContractReviewService.GetContractReview_CompleteData(this.CurrUser.LoginProjectId);
this.DropContractCode.DataBind();
Funs.FineUIPleaseSelect(this.DropContractCode);
PHTGL_QuantityService.IniGetMajorItems3DownList(drpMajorItems, true);
DropMainContractCode_SelectedIndexChanged(null, null);
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
// 绑定表格
@@ -49,12 +51,15 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
table.ContractId = this.ContractId;
table.ProjectCode = this.txtProjectCode.Text.Trim();
table.ProjectName = this.txtProjectName.Text.Trim();
var tb = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackByModle(table);
Grid1.RecordCount = tb.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb);
Grid1.DataSource = tb;
table.MainItemName = this.txtMainItemName.Text.Trim();
if (drpMajorItems.SelectedValue != Const._Null)
{
table.MajorName = drpMajorItems.SelectedValue;
}
Grid1.DataSource = PhtglContractTrackService.GetListData(table, Grid1);
Grid1.RecordCount = PhtglContractTrackService.Count;
Grid1.DataBind();
}
@@ -99,7 +104,7 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
{
var model = (Model.PHTGL_ContractTrack)e.DataItem;
// 工程量偏差
decimal QuantityOffset = Funs.GetNewDecimalOrZero(model.EstimatedQuantity) -
decimal? QuantityOffset = Funs.GetNewDecimalOrZero(model.EstimatedQuantity) -
Funs.GetNewDecimalOrZero(model.SettledQuantity);
TemplateField bfQuantityOffset = Grid1.FindColumn("QuantityOffset") as TemplateField;
if (QuantityOffset < 0)
@@ -246,9 +251,9 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
model.ProjectDescription = ProjectDescription;
model.UnitOfMeasurement = UnitOfMeasurement;
model.Quantity = Quantity;
model.TotalCostFixedComprehensiveUnitPrice = TotalCostFixedComprehensiveUnitPrice;
model.MainMaterialCost = MainMaterialCost;
model.TotalPrice = TotalPrice;
model.TotalCostFixedComprehensiveUnitPrice = Funs.GetNewDecimalOrZero( TotalCostFixedComprehensiveUnitPrice);
model.MainMaterialCost = Funs.GetNewDecimalOrZero(MainMaterialCost);
model.TotalPrice = Funs.GetNewDecimalOrZero(TotalPrice);
model.CalculationRule = CalculationRule;
model.WorkContent = WorkContent;
model.Remarks = Remarks;
@@ -131,6 +131,24 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// </remarks>
protected global::FineUIPro.TextBox txtProjectName;
/// <summary>
/// txtMainItemName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMainItemName;
/// <summary>
/// drpMajorItems 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpMajorItems;
/// <summary>
/// btnQuery 控件。
/// </summary>
@@ -86,21 +86,24 @@
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtTotalCostFixedComprehensiveUnitPrice" runat="server" Label="全费用固定综合单价(元)" MaxLength="200">
</f:TextBox>
<f:NumberBox ID="txtTotalCostFixedComprehensiveUnitPrice" runat="server" Label="全费用固定综合单价(元)"
NoDecimal="false" DecimalPrecision="2" Increment="0.01">
</f:NumberBox>
<f:NumberBox ID="txtMainMaterialCost" runat="server" Label="其中:主材费(元)"
NoDecimal="false" DecimalPrecision="2" Increment="0.01">
</f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtMainMaterialCost" runat="server" Label="其中:主材费(元)" MaxLength="200">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtTotalPrice" runat="server" Label="合价(元)" MaxLength="200">
</f:TextBox>
<f:NumberBox ID="txtTotalPrice" runat="server" Label="合价(元)"
NoDecimal="false" DecimalPrecision="2" Increment="0.01">
</f:NumberBox>
<f:TextBox ID="txtCalculationRule" runat="server" Label="计算规则" MaxLength="200">
</f:TextBox>
@@ -58,9 +58,9 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
txtProjectDescription.Text = model.ProjectDescription;
txtUnitOfMeasurement.Text = model.UnitOfMeasurement;
txtQuantity.Text = model.Quantity;
txtTotalCostFixedComprehensiveUnitPrice.Text = model.TotalCostFixedComprehensiveUnitPrice;
txtMainMaterialCost.Text = model.MainMaterialCost;
txtTotalPrice.Text = model.TotalPrice;
txtTotalCostFixedComprehensiveUnitPrice.Text = model.TotalCostFixedComprehensiveUnitPrice.HasValue?model.TotalCostFixedComprehensiveUnitPrice.ToString():"";
txtMainMaterialCost.Text = model.MainMaterialCost.HasValue ? model.MainMaterialCost.ToString() : "";
txtTotalPrice.Text = model.TotalPrice.HasValue ? model.TotalPrice.ToString() : "";
txtCalculationRule.Text = model.CalculationRule;
txtWorkContent.Text = model.WorkContent;
txtRemarks.Text = model.Remarks;
@@ -167,9 +167,9 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
table.ProjectDescription = txtProjectDescription.Text;
table.UnitOfMeasurement = txtUnitOfMeasurement.Text;
table.Quantity = txtQuantity.Text;
table.TotalCostFixedComprehensiveUnitPrice = txtTotalCostFixedComprehensiveUnitPrice.Text;
table.MainMaterialCost = txtMainMaterialCost.Text;
table.TotalPrice = txtTotalPrice.Text;
table.TotalCostFixedComprehensiveUnitPrice = Funs.GetNewDecimalOrZero(txtTotalCostFixedComprehensiveUnitPrice.Text);
table.MainMaterialCost = Funs.GetNewDecimalOrZero(txtMainMaterialCost.Text);
table.TotalPrice = Funs.GetNewDecimalOrZero(txtTotalPrice.Text);
table.CalculationRule = txtCalculationRule.Text;
table.WorkContent = txtWorkContent.Text;
table.Remarks = txtRemarks.Text;
@@ -165,7 +165,7 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTotalCostFixedComprehensiveUnitPrice;
protected global::FineUIPro.NumberBox txtTotalCostFixedComprehensiveUnitPrice;
/// <summary>
/// txtMainMaterialCost 控件。
@@ -174,7 +174,7 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMainMaterialCost;
protected global::FineUIPro.NumberBox txtMainMaterialCost;
/// <summary>
/// txtTotalPrice 控件。
@@ -183,7 +183,7 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTotalPrice;
protected global::FineUIPro.NumberBox txtTotalPrice;
/// <summary>
/// txtCalculationRule 控件。
@@ -40,7 +40,7 @@
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="1" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="False" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
AllowPaging="True" IsDatabasePaging="true" PageSize="500" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowClickEvent="True">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
@@ -70,6 +70,8 @@
<Items>
<f:TextBox runat="server" ID="txtProjectCode" Label="项目编码" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtProjectName" Label="项目名称" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtMainItemName" Label="主项名称" LabelWidth="90" Width="200px" />
<f:DropDownList runat="server" ID="drpMajorItems" Label="专业"></f:DropDownList>
<f:ToolbarFill runat="server" />
<f:Button ID="btnQuery" ToolTip="查询" Text="查询" Icon="SystemSearch" runat="server" EnablePostBack="true"
@@ -29,6 +29,7 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
this.DropContractCode.DataSource = BLL.PHTGL_ContractReviewService.GetContractReview_CompleteData(this.CurrUser.LoginProjectId);
this.DropContractCode.DataBind();
Funs.FineUIPleaseSelect(this.DropContractCode);
PHTGL_QuantityService.IniGetMajorItems3DownList(drpMajorItems,true);
DropMainContractCode_SelectedIndexChanged(null, null);
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
// 绑定表格
@@ -48,12 +49,18 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
table.ContractId = this.ContractId;
table.ProjectCode = this.txtProjectCode.Text.Trim();
table.ProjectName = this.txtProjectName.Text.Trim();
table.MainItemName=this.txtMainItemName.Text.Trim();
if (drpMajorItems.SelectedValue!=Const._Null)
{
table.MajorName=drpMajorItems.SelectedValue;
}
var tb = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackByModle(table);
Grid1.RecordCount = PhtglContractTrackService.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb);
Grid1.DataSource = tb;
Grid1.DataSource = PhtglContractTrackService.GetListData(table,Grid1);
Grid1.RecordCount = PhtglContractTrackService.Count;
Grid1.DataBind();
var sumTotalPricea = tb.Select(x =>Funs.GetNewDecimalOrZero(x.TotalPrice) ).ToList().Sum();
var sumTotalPricea = tb.Select(x => x.TotalPrice).ToList().Sum();
lbTotalPrice.Text = sumTotalPricea.ToString();
}
@@ -468,9 +475,9 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
model.ProjectDescription = ProjectDescription;
model.UnitOfMeasurement = UnitOfMeasurement;
model.Quantity = Quantity;
model.TotalCostFixedComprehensiveUnitPrice = TotalCostFixedComprehensiveUnitPrice;
model.MainMaterialCost = MainMaterialCost;
model.TotalPrice = TotalPrice;
model.TotalCostFixedComprehensiveUnitPrice =Funs.GetNewDecimalOrZero( TotalCostFixedComprehensiveUnitPrice);
model.MainMaterialCost = Funs.GetNewDecimalOrZero(MainMaterialCost);
model.TotalPrice = Funs.GetNewDecimalOrZero(TotalPrice);
model.CalculationRule = CalculationRule;
model.WorkContent = WorkContent;
model.Remarks = Remarks;
@@ -158,6 +158,24 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// </remarks>
protected global::FineUIPro.TextBox txtProjectName;
/// <summary>
/// txtMainItemName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMainItemName;
/// <summary>
/// drpMajorItems 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpMajorItems;
/// <summary>
/// btnQuery 控件。
/// </summary>
@@ -37,17 +37,19 @@
Title="中间面板" ShowBorder="True" ShowHeader="false" BodyPadding="10px" IconFont="_RoundPlus">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="合同执行跟踪表" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="1" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="False" IsDatabasePaging="true" PageSize="10" OnRowDataBound="Grid1_OnRowDataBound"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowClickEvent="True">
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="1" DataIDField="Id" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="True" IsDatabasePaging="true" PageSize="300" OnPageIndexChange="Grid1_PageIndexChange" OnRowDataBound="Grid1_OnRowDataBound"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowClickEvent="True">
<Toolbars>
<f:Toolbar ID="Toolbar4" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
<f:TextBox runat="server" ID="txtProjectCode" Label="项目编码" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtProjectName" Label="项目名称" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtMainItemName" Label="主项名称" LabelWidth="90" Width="200px" />
<f:DropDownList runat="server" ID="drpMajorItems" Label="专业"></f:DropDownList>
<f:ToolbarFill runat="server" />
<f:Button ID="btnQuery" ToolTip="查询" Text="查询" Icon="SystemSearch" runat="server" EnablePostBack="true"
OnClick="btnQuery_OnClick">
@@ -65,6 +67,20 @@
</Items>
</f:Toolbar>
</Toolbars>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
<f:ListItem Text="所有行" Value="100000" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
@@ -266,10 +266,11 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
if (!IsPostBack)
{
this.GetButtonPower();
PHTGL_QuantityService.IniGetMajorItems3DownList(drpMajorItems, true);
// 绑定表格
this.BindGrid();
this.BindGrid();
}
}
@@ -286,7 +287,17 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
Model.PHTGL_ContractTrack queryContractTrack = new Model.PHTGL_ContractTrack();
queryContractTrack.ProjectId = this.CurrUser.LoginProjectId;
queryContractTrack.ContractId = this.ContractId;
var modelContractTracks = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackByModle(queryContractTrack);
queryContractTrack.MainItemName = this.txtMainItemName.Text.Trim();
if (drpMajorItems.SelectedValue != Const._Null)
{
queryContractTrack.MajorName = drpMajorItems.SelectedValue;
}
var modelContractTracks =
BLL.PhtglContractTrackService.GetPHTGL_ContractTrackByModle(queryContractTrack);
var count = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackByModle(queryContractTrack).Count();
modelContractTracks= modelContractTracks.Skip(Grid1.PageSize * Grid1.PageIndex).Take(Grid1.PageSize).ToList();
foreach (var item in modelContractTracks)
{
row= GridTable.NewRow();
@@ -326,6 +337,7 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
GridTable.Rows.Add(row);
}
Grid1.RecordCount = count;
Grid1.DataSource = GridTable;
Grid1.DataBind();
}
@@ -339,36 +351,38 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
Model.PHTGL_ContractTrack queryContractTrack = new Model.PHTGL_ContractTrack();
queryContractTrack.ProjectId = this.CurrUser.LoginProjectId;
queryContractTrack.ContractId = this.ContractId;
var modelContractTracks = BLL.PhtglContractTrackService.GetPHTGL_ContractTrackByModle(queryContractTrack);
foreach (var item in modelContractTracks)
var modelContractTracks = BLL.PhtglContractTrackService.GetFirstPHTGL_ContractTrackByModle(queryContractTrack);
if (modelContractTracks ==null) return;
Model.PHTGL_ContractTrackProgress qContractTrackProgress = new Model.PHTGL_ContractTrackProgress();
qContractTrackProgress.ContractTrackId = modelContractTracks.Id;
var modelContractTrackProgresses = BLL.PhtglContracttrackprogressService.GetPHTGL_ContractTrackProgressByModle(qContractTrackProgress);
foreach (var detail in modelContractTrackProgresses)
{
var date = detail.Date + "#";
RenderField rfRenderField1 = Grid1.FindColumn(date + "BCWS_Quantity") as RenderField;
BoundField bf1 = Grid1.FindColumn(date + "BCWS_OutputValue") as BoundField;
BoundField bf2 = Grid1.FindColumn(date + "BCWS_Percentage") as BoundField;
Model.PHTGL_ContractTrackProgress qContractTrackProgress = new Model.PHTGL_ContractTrackProgress();
qContractTrackProgress.ContractTrackId = item.Id;
var modelContractTrackProgresses = BLL.PhtglContracttrackprogressService.GetPHTGL_ContractTrackProgressByModle(qContractTrackProgress);
foreach (var detail in modelContractTrackProgresses)
{
e.CellAttributes[rfRenderField1.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf1.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf2.ColumnIndex]["data-color"] = "color1";
var date = detail.Date + "#";
RenderField rfRenderField1 = Grid1.FindColumn(date + "BCWS_Quantity") as RenderField;
BoundField bf1 = Grid1.FindColumn(date + "BCWS_OutputValue") as BoundField;
BoundField bf2 = Grid1.FindColumn(date + "BCWS_Percentage") as BoundField;
RenderField rfRenderField2 = Grid1.FindColumn(date + "SumBCWS_Quantity") as RenderField;
BoundField bf3 = Grid1.FindColumn(date + "SumBCWS_OutputValue") as BoundField;
BoundField bf4 = Grid1.FindColumn(date + "SumBCWS_Percentage") as BoundField;
e.CellAttributes[rfRenderField1.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf1.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf2.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[rfRenderField2.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf3.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf4.ColumnIndex]["data-color"] = "color1";
RenderField rfRenderField2 = Grid1.FindColumn(date + "SumBCWS_Quantity") as RenderField;
BoundField bf3 = Grid1.FindColumn(date + "SumBCWS_OutputValue") as BoundField;
BoundField bf4 = Grid1.FindColumn(date + "SumBCWS_Percentage") as BoundField;
e.CellAttributes[rfRenderField2.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf3.ColumnIndex]["data-color"] = "color1";
e.CellAttributes[bf4.ColumnIndex]["data-color"] = "color1";
}
}
//foreach (var item in modelContractTracks)
//{
//}
}
}
@@ -86,6 +86,24 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// </remarks>
protected global::FineUIPro.TextBox txtProjectName;
/// <summary>
/// txtMainItemName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMainItemName;
/// <summary>
/// drpMajorItems 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpMajorItems;
/// <summary>
/// btnQuery 控件。
/// </summary>
@@ -122,6 +140,33 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
@@ -36,7 +36,7 @@
runat="server" BoxFlex="1" DataKeyNames="Id,MatchWbsId" AllowCellEditing="true"
ClicksToEdit="1" AllowSorting="true" SortField="Id"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="False" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
AllowPaging="True" IsDatabasePaging="true" PageSize="500" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowClickEvent="True">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
@@ -50,7 +50,10 @@
<f:Button ID="btnNew" ToolTip="匹配WBS" Text="匹配WBS" Hidden="true" Icon="ApplicationEdit" runat="server"
OnClick="btnNew_Click">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="导出" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
@@ -58,6 +61,8 @@
<Items>
<f:TextBox runat="server" ID="txtProjectCode" Label="项目编码" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtProjectName" Label="项目名称" LabelWidth="90" Width="200px" />
<f:TextBox runat="server" ID="txtMainItemName" Label="主项名称" LabelWidth="90" Width="200px" />
<f:DropDownList runat="server" ID="drpMajorItems" Label="专业"></f:DropDownList>
<f:ToolbarFill runat="server" />
<f:Button ID="btnQuery" ToolTip="查询" Text="查询" Icon="SystemSearch" runat="server" EnablePostBack="true"
@@ -28,6 +28,8 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
this.DropContractCode.DataSource = BLL.PHTGL_ContractReviewService.GetContractReview_CompleteData(this.CurrUser.LoginProjectId);
this.DropContractCode.DataBind();
Funs.FineUIPleaseSelect(this.DropContractCode);
PHTGL_QuantityService.IniGetMajorItems3DownList(drpMajorItems, true);
DropMainContractCode_SelectedIndexChanged(null, null);
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
// 绑定表格
@@ -53,8 +55,8 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
where (string.IsNullOrEmpty(ContractId) || x.ContractId.Contains(ContractId)) &&
(string.IsNullOrEmpty(CurrUser.LoginProjectId) || x.ProjectId.Contains(CurrUser.LoginProjectId)) &&
(string.IsNullOrEmpty(this.txtProjectCode.Text.Trim()) || x.ProjectCode.Contains(this.txtProjectCode.Text.Trim())) &&
(string.IsNullOrEmpty(this.txtProjectName.Text.Trim()) || x.ProjectName.Contains(this.txtProjectName.Text.Trim()))
(string.IsNullOrEmpty(this.txtProjectName.Text.Trim()) || x.ProjectName.Contains(this.txtProjectName.Text.Trim())) &&
(string.IsNullOrEmpty(this.txtMainItemName.Text.Trim()) || x.MainItemName.Contains(this.txtMainItemName.Text.Trim()))
select new
{
MatchWbsId= y.Id ,
@@ -95,8 +97,14 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
x.SerialNumber
};
;
if (drpMajorItems.SelectedValue != Const._Null)
{
q= q.Where(x =>
x.MajorName.Contains(this.drpMajorItems.SelectedValue));
}
Grid1.RecordCount = q.Count();
Grid1.DataSource = q.ToList().OrderBy(x => x.SerialNumber, new CustomComparer()).ToList();
Grid1.DataSource = q.ToList().OrderBy(x => x.SerialNumber, new CustomComparer()).ToList().Skip(Grid1.PageSize * Grid1.PageIndex).Take(Grid1.PageSize);
Grid1.DataBind();
}
@@ -262,10 +270,65 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
}
}
}
#endregion
#endregion
#region
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("WBS工作包匹配表" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid1.PageSize = 500;
this.BindGrid();
Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
/// <summary>
/// 导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
private string GetGridTableHtml(Grid grid)
{
StringBuilder sb = new StringBuilder();
sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
sb.AppendFormat("<td>{0}</td>", column.HeaderText);
}
sb.Append("</tr>");
foreach (GridRow row in grid.Rows)
{
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
string html = row.Values[column.ColumnIndex].ToString();
if (column.ColumnID == "tfNumber")
{
html = (row.FindControl("lblNumber") as System.Web.UI.WebControls.Label).Text;
}
sb.AppendFormat("<td>{0}</td>", html);
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
#endregion
}
}
@@ -95,6 +95,15 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// Toolbar4 控件。
/// </summary>
@@ -122,6 +131,24 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
/// </remarks>
protected global::FineUIPro.TextBox txtProjectName;
/// <summary>
/// txtMainItemName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMainItemName;
/// <summary>
/// drpMajorItems 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpMajorItems;
/// <summary>
/// btnQuery 控件。
/// </summary>