0915-gaofei
This commit is contained in:
@@ -37,7 +37,7 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
{
|
||||
this.txtCostControlName.Text = costControl.CostControlName;
|
||||
}
|
||||
var list = BLL.CostControlDetailService.GetCostControlDetailsByCostControlId(this.Id);
|
||||
var list = BLL.CostControlDetailService.GetMonthCostControlDetailsByCostControlId(this.Id);
|
||||
this.Grid1.DataSource = list;
|
||||
this.Grid1.DataBind();
|
||||
}
|
||||
@@ -138,7 +138,7 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
protected void btnUpdate_Click(object sender, EventArgs e)
|
||||
{
|
||||
var list = GetDetails();
|
||||
int versionNum = BLL.CostControlDetailHistoryService.GetMaxVersionNumByCostControlId(this.Id);
|
||||
int versionNum = BLL.CostControlDetailHistoryService.GetMonthMaxVersionNumByCostControlId(this.Id);
|
||||
foreach (var item in list)
|
||||
{
|
||||
Model.WBS_CostControlDetailHistory detailHistory = new Model.WBS_CostControlDetailHistory();
|
||||
|
||||
@@ -29,8 +29,7 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
/// </summary>
|
||||
private void BindGrid()
|
||||
{
|
||||
string column1 = string.Empty;
|
||||
List<Model.WBS_CostControlDetailHistory> detailHistorys = BLL.CostControlDetailHistoryService.GetCostControlDetailHistorysByCostControlId(Request.Params["Id"]);
|
||||
List<Model.WBS_CostControlDetailHistory> detailHistorys = BLL.CostControlDetailHistoryService.GetMonthCostControlDetailHistorysByCostControlId(Request.Params["Id"]);
|
||||
Grid1.DataSource = detailHistorys;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtUnit" runat="server" Label="单位" LabelWidth="130px" Required="true" ShowRedStar="true"></f:TextBox>
|
||||
<f:TextBox ID="txtUnit" runat="server" Label="单位" LabelWidth="130px" ></f:TextBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtUnit" runat="server" Label="单位" LabelWidth="130px" Required="true" ShowRedStar="true"></f:TextBox>
|
||||
<f:TextBox ID="txtUnit" runat="server" Label="单位" LabelWidth="130px" ></f:TextBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CostControlWeekDetailEdit.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.CostControlWeekDetailEdit" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="费控项计划" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="CostControlDetailId" AllowCellEditing="true"
|
||||
ClicksToEdit="1" DataIDField="CostControlDetailId" AllowSorting="true" SortField="Months"
|
||||
SortDirection="ASC" EnableColumnLines="true" ForceFit="true"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="100" OnRowCommand="Grid1_RowCommand"
|
||||
EnableRowDoubleClickEvent="true" AllowFilters="true" EnableTextSelection="True">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:Label ID="txtCostControlName" runat="server" Width="220px" LabelWidth="50px"
|
||||
LabelAlign="Right">
|
||||
</f:Label>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
|
||||
EnableLock="true" Locked="False">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:RenderField Width="100px" ColumnID="Months" DataField="Months"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM" HeaderText="月份" TextAlign="Center"
|
||||
HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="200px" ColumnID="PlanNum" DataField="PlanNum" FieldType="Double"
|
||||
HeaderText="本月计划完成量" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:LinkButtonField Width="100px" TextAlign="Center" HeaderText="设置周计划" ToolTip="设置周计划" CommandName="SetWeek" Text="设置周计划"
|
||||
/>
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="设置周计划" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Top" EnableResize="true" runat="server" IsModal="true" Width="800px"
|
||||
Height="550px">
|
||||
</f:Window>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using BLL;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS
|
||||
{
|
||||
public partial class CostControlWeekDetailEdit : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 控制项主键
|
||||
/// </summary>
|
||||
public string Id
|
||||
{
|
||||
get
|
||||
{
|
||||
return (string)ViewState["Id"];
|
||||
}
|
||||
set
|
||||
{
|
||||
ViewState["Id"] = value;
|
||||
}
|
||||
}
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.Id = Request.Params["Id"];
|
||||
Model.WBS_CostControl costControl = BLL.CostControlService.GetCostControlByCostControlId(this.Id);
|
||||
if (costControl != null)
|
||||
{
|
||||
this.txtCostControlName.Text = costControl.CostControlName;
|
||||
}
|
||||
var list = BLL.CostControlDetailService.GetMonthCostControlDetailsByCostControlId(this.Id);
|
||||
this.Grid1.DataSource = list;
|
||||
this.Grid1.DataBind();
|
||||
}
|
||||
}
|
||||
#region 增加按钮事件
|
||||
/// <summary>
|
||||
/// 增加按钮事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnNew_Click(object sender, EventArgs e)
|
||||
{
|
||||
var list = GetDetails();
|
||||
Model.WBS_CostControlDetail detail = new Model.WBS_CostControlDetail();
|
||||
detail.CostControlDetailId = SQLHelper.GetNewID();
|
||||
list.Add(detail);
|
||||
Grid1.DataSource = list;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
#endregion
|
||||
private List<Model.WBS_CostControlDetail> GetDetails()
|
||||
{
|
||||
List<Model.WBS_CostControlDetail> details = new List<Model.WBS_CostControlDetail>();
|
||||
foreach (JObject mergedRow in Grid1.GetMergedData())
|
||||
{
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
Model.WBS_CostControlDetail detail = new Model.WBS_CostControlDetail();
|
||||
detail.CostControlDetailId = Grid1.Rows[i].RowID;
|
||||
detail.CostControlId = this.Id;
|
||||
detail.Months = Funs.GetNewDateTime(values.Value<string>("Months") + "-01");
|
||||
detail.PlanNum = Funs.GetNewDecimal(values.Value<string>("PlanNum"));
|
||||
details.Add(detail);
|
||||
}
|
||||
return details;
|
||||
}
|
||||
#region 行点击事件
|
||||
/// <summary>
|
||||
/// Grid行点击事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
||||
{
|
||||
string detailId = Grid1.DataKeys[e.RowIndex][0].ToString();
|
||||
var list = GetDetails();
|
||||
if (e.CommandName == "SetWeek")//设置周计划
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CostControlWeekItemDetailEdit.aspx?Id={0}", detailId, "修改 - ")));
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS {
|
||||
|
||||
|
||||
public partial class CostControlWeekDetailEdit {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar2;
|
||||
|
||||
/// <summary>
|
||||
/// txtCostControlName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label txtCostControlName;
|
||||
|
||||
/// <summary>
|
||||
/// lblPageIndex 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblPageIndex;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CostControlWeekDetailHistoryShow.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.CostControlWeekDetailHistoryShow" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" Width="870px" ShowBorder="false" ShowHeader="false" EnableCollapse="false" ForceFit="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="CostControlDetailHistoryId" AllowSorting="true" EnableColumnLines="true"
|
||||
SortField="VersionNum" SortDirection="ASC" AllowCellEditing="true" ClicksToEdit="1" PageSize="1000"
|
||||
ShowSelectedCell="true" DataIDField="CostControlDetailHistoryId" IsDatabasePaging="true">
|
||||
<Columns>
|
||||
<f:RenderField Width="100px" ColumnID="VersionNum" DataField="VersionNum" FieldType="String" RendererFunction="renderGender"
|
||||
HeaderText="版本" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="150px" ColumnID="StartDate" DataField="StartDate"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="开始日期" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="150px" ColumnID="EndDate" DataField="EndDate"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="结束日期" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="200px" ColumnID="PlanNum" DataField="PlanNum" FieldType="Double"
|
||||
HeaderText="本月计划完成量" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="dataload" Handler="onGridDataLoad" />
|
||||
</Listeners>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</form>
|
||||
<script>
|
||||
function renderGender(value) {
|
||||
return 'V' + value + '.0';
|
||||
}
|
||||
|
||||
function onGridDataLoad(event) {
|
||||
this.mergeColumns(['VersionNum']);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,39 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS
|
||||
{
|
||||
public partial class CostControlWeekDetailHistoryShow : PageBase
|
||||
{
|
||||
#region 加载页面
|
||||
/// <summary>
|
||||
/// 加载页面
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
// 绑定表格
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 绑定数据
|
||||
/// </summary>
|
||||
private void BindGrid()
|
||||
{
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(Request.Params["Id"]);
|
||||
List<Model.WBS_CostControlDetailHistory> detailHistorys = BLL.CostControlDetailHistoryService.GetWeekCostControlDetailHistorysByCostControlId(costControlDetail.CostControlId, costControlDetail.Months.Value);
|
||||
Grid1.DataSource = detailHistorys;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
+51
@@ -0,0 +1,51 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS {
|
||||
|
||||
|
||||
public partial class CostControlWeekDetailHistoryShow {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CostControlWeekItemDetailEdit.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.CostControlWeekItemDetailEdit" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="费控项计划" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="CostControlDetailId" AllowCellEditing="true"
|
||||
ClicksToEdit="1" DataIDField="CostControlDetailId" AllowSorting="true" SortField="Months"
|
||||
SortDirection="ASC" EnableColumnLines="true" ForceFit="true"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="100" OnRowCommand="Grid1_RowCommand"
|
||||
EnableRowDoubleClickEvent="true" AllowFilters="true" EnableTextSelection="True">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:Label ID="txtCostControlName" runat="server" Width="220px" LabelWidth="50px"
|
||||
LabelAlign="Right">
|
||||
</f:Label>
|
||||
<f:Label ID="txtMonths" runat="server" Width="140px"
|
||||
LabelAlign="Right">
|
||||
</f:Label>
|
||||
<f:Label ID="txtTotalPlanNum" runat="server" Width="140px"
|
||||
LabelAlign="Right">
|
||||
</f:Label>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true"
|
||||
runat="server" OnClick="btnNew_Click">
|
||||
</f:Button>
|
||||
<f:Button ID="btnUpdate" Icon="Pencil" runat="server" ToolTip="调整计划"
|
||||
OnClick="btnUpdate_Click">
|
||||
</f:Button>
|
||||
<f:Button ID="btnSee" ToolTip="查看历史版本" Icon="Find" runat="server" OnClick="btnSee_Click">
|
||||
</f:Button>
|
||||
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存"
|
||||
OnClick="btnSave_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
|
||||
EnableLock="true" Locked="False">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:RenderField Width="100px" ColumnID="StartDate" DataField="StartDate"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="开始日期" TextAlign="Center"
|
||||
HeaderTextAlign="Center">
|
||||
<Editor>
|
||||
<f:DatePicker ID="txtStartDate" runat="server" DateFormatString="yyyy-MM-dd"
|
||||
EnableEdit="true">
|
||||
</f:DatePicker>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="100px" ColumnID="EndDate" DataField="EndDate"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="结束日期" TextAlign="Center"
|
||||
HeaderTextAlign="Center">
|
||||
<Editor>
|
||||
<f:DatePicker ID="txtEndDate" runat="server" DateFormatString="yyyy-MM-dd"
|
||||
EnableEdit="true">
|
||||
</f:DatePicker>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="200px" ColumnID="PlanNum" DataField="PlanNum" FieldType="Double"
|
||||
HeaderText="本周计划完成量" HeaderTextAlign="Center" TextAlign="Center">
|
||||
<Editor>
|
||||
<f:NumberBox ID="nbTotalNum" NoDecimal="false" NoNegative="true" MinValue="0"
|
||||
runat="server">
|
||||
</f:NumberBox>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:LinkButtonField Width="30px" TextAlign="Center" HeaderText="删除" ToolTip="删除" CommandName="del"
|
||||
Icon="Delete" />
|
||||
<f:RenderField Width="100px" ColumnID="Months" DataField="Months" FieldType="String" Hidden="true"
|
||||
HeaderText="月份" HeaderTextAlign="Center" TextAlign="Center">
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="查看历史版本" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Self" EnableResize="true" runat="server" IsModal="true"
|
||||
Width="800px" Height="500px">
|
||||
</f:Window>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,214 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using BLL;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS
|
||||
{
|
||||
public partial class CostControlWeekItemDetailEdit : PageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 控制项主键
|
||||
/// </summary>
|
||||
public string Id
|
||||
{
|
||||
get
|
||||
{
|
||||
return (string)ViewState["Id"];
|
||||
}
|
||||
set
|
||||
{
|
||||
ViewState["Id"] = value;
|
||||
}
|
||||
}
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.Id = Request.Params["Id"];
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(this.Id);
|
||||
string name = string.Empty;
|
||||
if (costControlDetail != null)
|
||||
{
|
||||
Model.WBS_CostControl costControl = BLL.CostControlService.GetCostControlByCostControlId(costControlDetail.CostControlId);
|
||||
if (costControl != null)
|
||||
{
|
||||
this.txtCostControlName.Text = costControl.CostControlName;
|
||||
}
|
||||
if (costControlDetail.Months != null)
|
||||
{
|
||||
this.txtMonths.Text = " 月份:" + string.Format("{0:yyyy-MM}", costControlDetail.Months);
|
||||
}
|
||||
if (costControlDetail.PlanNum != null)
|
||||
{
|
||||
this.txtTotalPlanNum.Text = " 本月计划完成量:" + costControlDetail.PlanNum.Value.ToString("F0");
|
||||
}
|
||||
var list = BLL.CostControlDetailService.GetWeekCostControlDetailsByCostControlId(costControlDetail.CostControlId, costControlDetail.Months.Value);
|
||||
this.Grid1.DataSource = list;
|
||||
this.Grid1.DataBind();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
#region 增加按钮事件
|
||||
/// <summary>
|
||||
/// 增加按钮事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnNew_Click(object sender, EventArgs e)
|
||||
{
|
||||
var list = GetDetails();
|
||||
Model.WBS_CostControlDetail detail = new Model.WBS_CostControlDetail();
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(this.Id);
|
||||
detail.CostControlDetailId = SQLHelper.GetNewID();
|
||||
detail.Months = costControlDetail.Months;
|
||||
list.Add(detail);
|
||||
Grid1.DataSource = list;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
#endregion
|
||||
private List<Model.WBS_CostControlDetail> GetDetails()
|
||||
{
|
||||
List<Model.WBS_CostControlDetail> details = new List<Model.WBS_CostControlDetail>();
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(this.Id);
|
||||
foreach (JObject mergedRow in Grid1.GetMergedData())
|
||||
{
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
Model.WBS_CostControlDetail detail = new Model.WBS_CostControlDetail();
|
||||
detail.CostControlDetailId = Grid1.Rows[i].RowID;
|
||||
detail.CostControlId = costControlDetail.CostControlId;
|
||||
detail.Months = Funs.GetNewDateTime(values.Value<string>("Months"));
|
||||
detail.StartDate = Funs.GetNewDateTime(values.Value<string>("StartDate"));
|
||||
detail.EndDate = Funs.GetNewDateTime(values.Value<string>("EndDate"));
|
||||
detail.PlanNum = Funs.GetNewDecimal(values.Value<string>("PlanNum"));
|
||||
details.Add(detail);
|
||||
}
|
||||
return details;
|
||||
}
|
||||
#region 行点击事件
|
||||
/// <summary>
|
||||
/// Grid行点击事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
||||
{
|
||||
string detailId = Grid1.DataKeys[e.RowIndex][0].ToString();
|
||||
var list = GetDetails();
|
||||
if (e.CommandName == "del")//删除
|
||||
{
|
||||
var detail = list.FirstOrDefault(x => x.CostControlDetailId == detailId);
|
||||
Model.WBS_CostControlDetail oldDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(detailId);
|
||||
if (detail != null)
|
||||
{
|
||||
list.Remove(detail);
|
||||
}
|
||||
if (oldDetail != null)
|
||||
{
|
||||
BLL.CostControlDetailService.DeleteCostControlDetail(detailId);
|
||||
}
|
||||
this.Grid1.DataSource = list;
|
||||
this.Grid1.DataBind();
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 保存
|
||||
/// <summary>
|
||||
/// 保存按钮
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
bool hasDate = true;
|
||||
decimal totalNum = 0;
|
||||
foreach (JObject mergedRow in Grid1.GetMergedData())
|
||||
{
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
Model.WBS_CostControlDetail detail = new Model.WBS_CostControlDetail();
|
||||
if (string.IsNullOrEmpty(values.Value<string>("StartDate")) || string.IsNullOrEmpty(values.Value<string>("EndDate")))
|
||||
{
|
||||
hasDate = false;
|
||||
}
|
||||
totalNum += Funs.GetNewDecimalOrZero(values.Value<string>("PlanNum"));
|
||||
}
|
||||
if (!hasDate)
|
||||
{
|
||||
ShowNotify("开始、结束日期不能为空!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(this.Id);
|
||||
if (costControlDetail.PlanNum != totalNum)
|
||||
{
|
||||
ShowNotify("周计划累计值必须等于"+ costControlDetail.PlanNum.Value.ToString("F0") + "!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var list = GetDetails();
|
||||
foreach (var item in list)
|
||||
{
|
||||
Model.WBS_CostControlDetail oldDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(item.CostControlDetailId);
|
||||
if (oldDetail == null)
|
||||
{
|
||||
BLL.CostControlDetailService.AddCostControlDetail(item);
|
||||
}
|
||||
else
|
||||
{
|
||||
item.ThisNum = oldDetail.ThisNum;
|
||||
BLL.CostControlDetailService.UpdateCostControlDetail(item);
|
||||
}
|
||||
}
|
||||
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHideReference());
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 调整计划
|
||||
/// <summary>
|
||||
/// 调整计划按钮
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnUpdate_Click(object sender, EventArgs e)
|
||||
{
|
||||
var list = GetDetails();
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(this.Id);
|
||||
int versionNum = BLL.CostControlDetailHistoryService.GetWeekMaxVersionNumByCostControlId(costControlDetail.CostControlId, costControlDetail.Months.Value);
|
||||
foreach (var item in list)
|
||||
{
|
||||
Model.WBS_CostControlDetailHistory detailHistory = new Model.WBS_CostControlDetailHistory();
|
||||
detailHistory.CostControlDetailHistoryId = SQLHelper.GetNewID();
|
||||
detailHistory.CostControlId = item.CostControlId;
|
||||
detailHistory.Months = item.Months;
|
||||
detailHistory.StartDate = item.StartDate;
|
||||
detailHistory.EndDate = item.EndDate;
|
||||
detailHistory.PlanNum = item.PlanNum;
|
||||
detailHistory.VersionNum = versionNum + 1;
|
||||
BLL.CostControlDetailHistoryService.AddCostControlDetailHistory(detailHistory);
|
||||
}
|
||||
ShowNotify("历史版本保存成功!", MessageBoxIcon.Success);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 查看历史版本
|
||||
/// <summary>
|
||||
/// 查看历史版本
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnSee_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CostControlWeekDetailHistoryShow.aspx?Id={0}", this.Id, "编辑 - ")));
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,168 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS {
|
||||
|
||||
|
||||
public partial class CostControlWeekItemDetailEdit {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar2;
|
||||
|
||||
/// <summary>
|
||||
/// txtCostControlName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label txtCostControlName;
|
||||
|
||||
/// <summary>
|
||||
/// txtMonths 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label txtMonths;
|
||||
|
||||
/// <summary>
|
||||
/// txtTotalPlanNum 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label txtTotalPlanNum;
|
||||
|
||||
/// <summary>
|
||||
/// btnNew 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnNew;
|
||||
|
||||
/// <summary>
|
||||
/// btnUpdate 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnUpdate;
|
||||
|
||||
/// <summary>
|
||||
/// btnSee 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSee;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// lblPageIndex 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblPageIndex;
|
||||
|
||||
/// <summary>
|
||||
/// txtStartDate 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtStartDate;
|
||||
|
||||
/// <summary>
|
||||
/// txtEndDate 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtEndDate;
|
||||
|
||||
/// <summary>
|
||||
/// nbTotalNum 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.NumberBox nbTotalNum;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MilePost.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.MilePost" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>里程碑</title>
|
||||
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="Panel1" />
|
||||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="里程碑" EnableCollapse="true" ForceFit="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="MilePostId" AllowCellEditing="true" EnableColumnLines="true" ClicksToEdit="2" DataIDField="MilePostId" AllowSorting="true"
|
||||
SortField="PlanDate" SortDirection="DESC" OnSort="Grid1_Sort" AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="ToolSearch" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:DropDownList ID="drpCNProfessionalId" runat="server" Label="专业" LabelAlign="Right"></f:DropDownList>
|
||||
<f:Button ID="btnSearch" Icon="SystemSearch" OnClick="btnSearch_Click"
|
||||
EnablePostBack="true" runat="server" ToolTip="查询">
|
||||
</f:Button>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnNew" Icon="Add" EnablePostBack="true" runat="server" OnClick="btnNew_Click" ToolTip="新增" Hidden="true">
|
||||
</f:Button>
|
||||
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp"
|
||||
EnableAjax="false" DisableControlBeforePostBack="false">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:RenderField ColumnID="CnProfessionName" DataField="CnProfessionName" FieldType="String" HeaderText="专业" TextAlign="Center"
|
||||
HeaderTextAlign="Center" Width="120px">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="MilePostName" DataField="MilePostName" FieldType="String" HeaderText="里程碑名称" TextAlign="Center"
|
||||
HeaderTextAlign="Center" Width="160px">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="PlanDate" DataField="PlanDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="计划完成日期" TextAlign="Center"
|
||||
HeaderTextAlign="Center" Width="120px">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="RealDate" DataField="RealDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成日期" TextAlign="Center"
|
||||
HeaderTextAlign="Center" Width="120px">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="Remark" DataField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center"
|
||||
HeaderTextAlign="Center" Width="200px">
|
||||
</f:RenderField>
|
||||
<f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left" >
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="lbtnFileUrl" runat="server" CssClass="ItemLink"
|
||||
Text='<%# BLL.AttachFileService.GetBtnFileUrl(Eval("MilePostId")) %>' ToolTip="附件查看"></asp:LinkButton>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true">
|
||||
<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>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="里程碑" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
|
||||
Width="900px" Height="360px">
|
||||
</f:Window>
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<Items>
|
||||
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Text="修改" Icon="Pencil" OnClick="btnMenuModify_Click" Hidden="true">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?" OnClick="btnMenuDel_Click" Hidden="true">
|
||||
</f:MenuButton>
|
||||
</Items>
|
||||
</f:Menu>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,237 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using BLL;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS
|
||||
{
|
||||
public partial class MilePost : PageBase
|
||||
{
|
||||
#region 加载
|
||||
/// <summary>
|
||||
/// 加载页面
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
GetButtonPower();
|
||||
this.drpCNProfessionalId.DataValueField = "CnProfessionId";
|
||||
this.drpCNProfessionalId.DataTextField = "CnProfessionName";
|
||||
this.drpCNProfessionalId.DataSource = BLL.CnProfessionInitService.GetCnProfessionInitDropDownList();
|
||||
this.drpCNProfessionalId.DataBind();
|
||||
Funs.FineUIPleaseSelect(drpCNProfessionalId);
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
public void BindGrid()
|
||||
{
|
||||
string strSql = @"select MilePostId,MilePostName, PlanDate, RealDate, Remark,CN.CnProfessionName
|
||||
from WBS_MilePost C
|
||||
left join WBS_CnProfessionInit CN on C.CnProfessionId=CN.CnProfessionId
|
||||
where C.ProjectId = @ProjectId";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
|
||||
if (drpCNProfessionalId.SelectedValue != BLL.Const._Null)
|
||||
{
|
||||
strSql += " AND C.CnProfessionId=@CNProfessionalId";
|
||||
listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessionalId.SelectedValue));
|
||||
}
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
//tb = GetFilteredTable(Grid1.FilteredData, tb);
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 分页、排序
|
||||
/// <summary>
|
||||
/// 分页下拉
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分页索引事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
BindGrid();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 查询
|
||||
/// <summary>
|
||||
/// 查询
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnSearch_Click(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 关闭弹出窗口
|
||||
/// <summary>
|
||||
/// 关闭弹出窗口
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 增加
|
||||
/// <summary>
|
||||
/// 新增按钮事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnNew_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MilePostEdit.aspx", "编辑 - ")));
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 编辑
|
||||
/// <summary>
|
||||
/// 右键编辑
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnMenuModify_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MilePostEdit.aspx?MilePostId={0}", Grid1.SelectedRowID, "编辑 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Grid行双击事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuModify_Click(sender, e);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 删除
|
||||
/// <summary>
|
||||
/// 右键删除
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnMenuDel_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length > 0)
|
||||
{
|
||||
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
|
||||
{
|
||||
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
|
||||
var InspectionPerson = BLL.MilePostService.GetMilePostById(rowID);
|
||||
if (InspectionPerson != null)
|
||||
{
|
||||
BLL.MilePostService.DeleteMilePostById(rowID);
|
||||
}
|
||||
}
|
||||
BindGrid();
|
||||
ShowNotify("删除数据成功!", MessageBoxIcon.Success);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 获取按钮权限
|
||||
/// <summary>
|
||||
/// 获取按钮权限
|
||||
/// </summary>
|
||||
/// <param name="button"></param>
|
||||
/// <returns></returns>
|
||||
private void GetButtonPower()
|
||||
{
|
||||
if (Request.Params["value"] == BLL.Const._Null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.MilePostMenuId);
|
||||
if (buttonList.Count() > 0)
|
||||
{
|
||||
if (buttonList.Contains(BLL.Const.BtnAdd))
|
||||
{
|
||||
this.btnNew.Hidden = false;
|
||||
}
|
||||
if (buttonList.Contains(BLL.Const.BtnModify))
|
||||
{
|
||||
this.btnMenuModify.Hidden = false;
|
||||
this.Grid1.EnableRowDoubleClickEvent = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Grid1.EnableRowDoubleClickEvent = false;
|
||||
}
|
||||
if (buttonList.Contains(BLL.Const.BtnDelete))
|
||||
{
|
||||
this.btnMenuDel.Hidden = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
#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("里程碑" + filename, System.Text.Encoding.UTF8) + ".xls");
|
||||
Response.ContentType = "application/excel";
|
||||
Response.ContentEncoding = Encoding.UTF8;
|
||||
this.Grid1.PageSize = Grid1.RecordCount;
|
||||
this.BindGrid();
|
||||
Response.Write(GetGridTableHtml2(Grid1));
|
||||
Response.End();
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
+168
@@ -0,0 +1,168 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS {
|
||||
|
||||
|
||||
public partial class MilePost {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolSearch 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar ToolSearch;
|
||||
|
||||
/// <summary>
|
||||
/// drpCNProfessionalId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList drpCNProfessionalId;
|
||||
|
||||
/// <summary>
|
||||
/// btnSearch 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSearch;
|
||||
|
||||
/// <summary>
|
||||
/// btnNew 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnNew;
|
||||
|
||||
/// <summary>
|
||||
/// btnOut 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnOut;
|
||||
|
||||
/// <summary>
|
||||
/// lblPageIndex 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblPageIndex;
|
||||
|
||||
/// <summary>
|
||||
/// lbtnFileUrl 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtnFileUrl;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuModify 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuModify;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuDel 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuDel;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MilePostEdit.aspx.cs" Inherits="FineUIPro.Web.JDGL.WBS.MilePostEdit" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="SimpleForm1" />
|
||||
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true" BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownList ID="drpCNProfessionalId" runat="server" Label="专业" LabelAlign="Right" LabelWidth="140px"></f:DropDownList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtMilePostName" runat="server" Label="里程碑名称" MaxLength="100" Required="true" ShowRedStar="true" LabelWidth="140px"></f:TextBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" Label="计划完成日期" ID="txtPlanDate" ShowRedStar="true" Required="true" LabelWidth="140px"
|
||||
LabelAlign="right">
|
||||
</f:DatePicker>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" Label="实际完成日期" ID="txtRealDate" LabelWidth="140px"
|
||||
LabelAlign="right">
|
||||
</f:DatePicker>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtRemark" runat="server" Label="备注" MaxLength="200" LabelWidth="140px"></f:TextBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Panel ID="Panel2" ShowHeader="false" ShowBorder="false" Layout="Column" CssClass="" runat="server">
|
||||
<Items>
|
||||
<f:Label ID="Label1" runat="server" Label="上传附件"
|
||||
LabelAlign="Right" LabelWidth="140px">
|
||||
</f:Label>
|
||||
<f:Button ID="btnAttach" Icon="TableCell" EnablePostBack="true" Text="附件" runat="server" OnClick="btnAttach_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
<Items>
|
||||
<f:HiddenField ID="hdAttachUrl" runat="server">
|
||||
</f:HiddenField>
|
||||
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ValidateForms="SimpleForm1" OnClick="btnSave_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Form>
|
||||
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
|
||||
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
|
||||
Height="500px">
|
||||
</f:Window>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,140 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using BLL;
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS
|
||||
{
|
||||
public partial class MilePostEdit : PageBase
|
||||
{
|
||||
#region 定义变量
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string MilePostId
|
||||
{
|
||||
get
|
||||
{
|
||||
return (string)ViewState["MilePostId"];
|
||||
}
|
||||
set
|
||||
{
|
||||
ViewState["MilePostId"] = value;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 加载
|
||||
/// <summary>
|
||||
/// 加载页面
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.drpCNProfessionalId.DataValueField = "CnProfessionId";
|
||||
this.drpCNProfessionalId.DataTextField = "CnProfessionName";
|
||||
this.drpCNProfessionalId.DataSource = BLL.CnProfessionInitService.GetCnProfessionInitDropDownList();
|
||||
this.drpCNProfessionalId.DataBind();
|
||||
Funs.FineUIPleaseSelect(drpCNProfessionalId);
|
||||
this.MilePostId = Request.Params["MilePostId"];
|
||||
Model.WBS_MilePost milePost = BLL.MilePostService.GetMilePostById(this.MilePostId);
|
||||
if (milePost != null)
|
||||
{
|
||||
this.MilePostId = milePost.MilePostId;
|
||||
this.hdAttachUrl.Text = this.MilePostId;
|
||||
if (milePost.CnProfessionId != null)
|
||||
{
|
||||
this.drpCNProfessionalId.SelectedValue = milePost.CnProfessionId.ToString();
|
||||
}
|
||||
this.txtMilePostName.Text = milePost.MilePostName;
|
||||
if (milePost.PlanDate != null)
|
||||
{
|
||||
this.txtPlanDate.Text = string.Format("{0:yyyy-MM-dd}", milePost.PlanDate);
|
||||
}
|
||||
if (milePost.RealDate != null)
|
||||
{
|
||||
this.txtRealDate.Text = string.Format("{0:yyyy-MM-dd}", milePost.RealDate);
|
||||
}
|
||||
this.txtRemark.Text = milePost.Remark;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 保存
|
||||
/// <summary>
|
||||
/// 保存按钮
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (drpCNProfessionalId.SelectedValue == BLL.Const._Null)
|
||||
{
|
||||
Alert.ShowInTop("请选择专业!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
Model.WBS_MilePost milePost = new Model.WBS_MilePost();
|
||||
milePost.ProjectId = this.CurrUser.LoginProjectId;
|
||||
if (this.drpCNProfessionalId.SelectedValue != BLL.Const._Null)
|
||||
{
|
||||
milePost.CnProfessionId = Funs.GetNewInt(this.drpCNProfessionalId.SelectedValue);
|
||||
}
|
||||
milePost.MilePostName = this.txtMilePostName.Text.Trim();
|
||||
if (!string.IsNullOrEmpty(this.txtPlanDate.Text))
|
||||
{
|
||||
milePost.PlanDate = Convert.ToDateTime(this.txtPlanDate.Text);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(this.txtRealDate.Text))
|
||||
{
|
||||
milePost.RealDate = Convert.ToDateTime(this.txtRealDate.Text);
|
||||
}
|
||||
milePost.Remark = this.txtRemark.Text.Trim();
|
||||
if (string.IsNullOrEmpty(this.MilePostId))
|
||||
{
|
||||
if (!string.IsNullOrEmpty(this.hdAttachUrl.Text))
|
||||
{
|
||||
milePost.MilePostId = this.hdAttachUrl.Text;
|
||||
}
|
||||
else
|
||||
{
|
||||
milePost.MilePostId = SQLHelper.GetNewID(typeof(Model.WBS_MilePost));
|
||||
this.hdAttachUrl.Text = milePost.MilePostId;
|
||||
}
|
||||
milePost.CompileMan = this.CurrUser.UserId;
|
||||
milePost.CompileDate = DateTime.Now;
|
||||
BLL.MilePostService.AddMilePost(milePost);
|
||||
}
|
||||
else
|
||||
{
|
||||
milePost.MilePostId = this.MilePostId;
|
||||
BLL.MilePostService.UpdateMilePost(milePost);
|
||||
}
|
||||
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 附件上传
|
||||
/// <summary>
|
||||
/// 附件上传
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnAttach_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (string.IsNullOrEmpty(this.hdAttachUrl.Text)) //新增记录
|
||||
{
|
||||
this.hdAttachUrl.Text = SQLHelper.GetNewID(typeof(Model.WBS_MilePost));
|
||||
}
|
||||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/JDGL/MilePost&menuId={1}", this.hdAttachUrl.Text, BLL.Const.MilePostMenuId)));
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,150 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS {
|
||||
|
||||
|
||||
public partial class MilePostEdit {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// drpCNProfessionalId 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList drpCNProfessionalId;
|
||||
|
||||
/// <summary>
|
||||
/// txtMilePostName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtMilePostName;
|
||||
|
||||
/// <summary>
|
||||
/// txtPlanDate 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtPlanDate;
|
||||
|
||||
/// <summary>
|
||||
/// txtRealDate 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtRealDate;
|
||||
|
||||
/// <summary>
|
||||
/// txtRemark 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtRemark;
|
||||
|
||||
/// <summary>
|
||||
/// Panel2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel2;
|
||||
|
||||
/// <summary>
|
||||
/// Label1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label Label1;
|
||||
|
||||
/// <summary>
|
||||
/// btnAttach 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAttach;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// hdAttachUrl 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hdAttachUrl;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window WindowAtt;
|
||||
}
|
||||
}
|
||||
@@ -624,6 +624,11 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
else
|
||||
{
|
||||
Grid1.DataSource = null;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -975,6 +980,7 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
if (costControl != null)
|
||||
{
|
||||
BLL.WbsSetMatchCostControlInitService.DeleteWbsSetMatchCostControlInitByWbsSetCodeAndCostControlInitCode(this.trWBS.SelectedNodeID,costControl.CostControlInitCode);
|
||||
BLL.CostControlInitService.DeleteCostControlInit(Grid1.SelectedRowID);
|
||||
BLL.LogService.AddSys_Log(this.CurrUser, Grid1.SelectedRowID, Grid1.SelectedRowID, BLL.Const.ProjectControlPointMenuId, "删除费用对应关系");
|
||||
Grid1.DataBind();
|
||||
BindGrid();
|
||||
|
||||
@@ -198,9 +198,12 @@
|
||||
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Hidden="true" Text="修改" Icon="Pencil"
|
||||
OnClick="btnMenuModify_Click">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDetail" EnablePostBack="true" runat="server" Hidden="true" Text="设置计划" Icon="ApplicationViewDetail"
|
||||
<f:MenuButton ID="btnMenuDetail" EnablePostBack="true" runat="server" Hidden="true" Text="设置月计划" Icon="ApplicationViewDetail"
|
||||
OnClick="btnMenuDetail_Click">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuWeekDetail" EnablePostBack="true" runat="server" Hidden="true" Text="设置周计划" Icon="ApplicationEdit"
|
||||
OnClick="btnMenuWeekDetail_Click">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Hidden="true" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?"
|
||||
OnClick="btnMenuDel_Click">
|
||||
</f:MenuButton>
|
||||
|
||||
@@ -862,6 +862,21 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
PageContext.RegisterStartupScript(Window4.GetShowReference(String.Format("CostControlDetailEdit.aspx?Id={0}", this.Grid1.SelectedRowID, "修改 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 设置周计划按钮
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnMenuWeekDetail_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
PageContext.RegisterStartupScript(Window4.GetShowReference(String.Format("CostControlWeekDetailEdit.aspx?Id={0}", this.Grid1.SelectedRowID, "修改 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 拷贝
|
||||
/// </summary>
|
||||
@@ -1398,6 +1413,11 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
else
|
||||
{
|
||||
Grid1.DataSource = null;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -2282,6 +2302,7 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
this.btnAdd.Hidden = false;
|
||||
this.btnMenuCopy.Hidden = false;
|
||||
this.btnMenuDetail.Hidden = false;
|
||||
this.btnMenuWeekDetail.Hidden = false;
|
||||
//this.btnMenuCopy2.Hidden = false;
|
||||
}
|
||||
if (buttonList.Contains(BLL.Const.BtnModify))
|
||||
|
||||
@@ -282,6 +282,15 @@ namespace FineUIPro.Web.JDGL.WBS {
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuDetail;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuWeekDetail 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuWeekDetail;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuDel 控件。
|
||||
/// </summary>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
ShowHeader="true" BodyPadding="5px" IconFont="ArrowCircleLeft" Layout="Region">
|
||||
<Items>
|
||||
<f:Tree ID="trWBS" Width="290" EnableCollapse="true" ShowHeader="true" OnNodeCommand="trWBS_NodeCommand"
|
||||
OnNodeExpand="trWBS_NodeExpand" OnNodeCheck="trWBS_NodeCheck"
|
||||
OnNodeExpand="trWBS_NodeExpand"
|
||||
AutoLeafIdentification="true" runat="server">
|
||||
</f:Tree>
|
||||
<f:HiddenField runat="server" ID="hdSelectId">
|
||||
@@ -76,6 +76,7 @@
|
||||
<f:DatePicker runat="server" ID="txtMonths" DateFormatString="yyyy-MM" AutoPostBack="true"
|
||||
Label="月份" LabelWidth="50px" Width="150px" OnTextChanged="txtMonths_TextChanged">
|
||||
</f:DatePicker>
|
||||
<f:DropDownList ID="drpWeek" runat="server" Label="周" LabelAlign="right" AutoPostBack="true" OnSelectedIndexChanged="drpWeek_SelectedIndexChanged"></f:DropDownList>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存" Hidden="true" OnClick="btnSave_Click">
|
||||
</f:Button>
|
||||
|
||||
@@ -24,6 +24,7 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
GetButtonPower();
|
||||
InitTreeMenu();
|
||||
this.txtMonths.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
|
||||
Funs.FineUIPleaseSelect(this.drpWeek);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -283,74 +284,6 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
}
|
||||
#endregion
|
||||
|
||||
protected void trWBS_NodeCheck(object sender, FineUIPro.TreeCheckEventArgs e)
|
||||
{
|
||||
Model.Wbs_WbsSet wbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(e.NodeID);
|
||||
if (wbsSet != null)
|
||||
{
|
||||
wbsSet.IsSelected = e.Checked;
|
||||
wbsSet.IsApprove = e.Checked;
|
||||
BLL.WbsSetService.UpdateWbsSet(wbsSet);
|
||||
Model.Wbs_WbsSet pWbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(wbsSet.SuperWbsSetId);
|
||||
if (pWbsSet != null)
|
||||
{
|
||||
pWbsSet.IsSelected = e.Checked;
|
||||
pWbsSet.IsApprove = e.Checked;
|
||||
BLL.WbsSetService.UpdateWbsSet(pWbsSet);
|
||||
Model.Wbs_WbsSet ppWbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(pWbsSet.SuperWbsSetId);
|
||||
if (ppWbsSet != null)
|
||||
{
|
||||
ppWbsSet.IsSelected = e.Checked;
|
||||
ppWbsSet.IsApprove = e.Checked;
|
||||
BLL.WbsSetService.UpdateWbsSet(ppWbsSet);
|
||||
Model.Wbs_WbsSet pppWbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(ppWbsSet.SuperWbsSetId);
|
||||
if (pppWbsSet != null)
|
||||
{
|
||||
pppWbsSet.IsSelected = e.Checked;
|
||||
pppWbsSet.IsApprove = e.Checked;
|
||||
BLL.WbsSetService.UpdateWbsSet(pppWbsSet);
|
||||
}
|
||||
}
|
||||
}
|
||||
Model.Wbs_UnitProject unitProject = BLL.UnitProjectService.GetUnitProjectByUnitProjectId(wbsSet.UnitProjectId);
|
||||
if (unitProject != null)
|
||||
{
|
||||
unitProject.IsSelected = e.Checked;
|
||||
unitProject.IsApprove = e.Checked;
|
||||
BLL.UnitProjectService.UpdateUnitProject(unitProject);
|
||||
}
|
||||
Model.WBS_CnProfession cnProfession = BLL.CnProfessionService.GetCnProfessionByCnProfessionId(wbsSet.CnProfessionId);
|
||||
if (cnProfession != null)
|
||||
{
|
||||
cnProfession.IsSelected = e.Checked;
|
||||
cnProfession.IsApprove = e.Checked;
|
||||
BLL.CnProfessionService.UpdateCnProfession(cnProfession);
|
||||
}
|
||||
}
|
||||
|
||||
//if (e.Checked)
|
||||
//{
|
||||
// CheckAllParentNodes(e.Node);
|
||||
// CheckAllChildNodes(e.Node);
|
||||
// this.UpdateSelect(e.Node, true);
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// if (auditText == string.Empty)
|
||||
// {
|
||||
// trWBS.UncheckAllNodes(e.Node.Nodes);
|
||||
// this.UpdateSelect(e.Node, false);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// auditText = auditText.Substring(0, auditText.Length - 1);
|
||||
// e.Node.Checked = true;
|
||||
// ShowNotify("权重已有设置审核项:'" + auditText + "',不能取消设置!", MessageBoxIcon.Success);
|
||||
// }
|
||||
//}
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
#region Tree点击事件
|
||||
/// <summary>
|
||||
/// Tree点击事件
|
||||
@@ -359,6 +292,9 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
/// <param name="e"></param>
|
||||
protected void trWBS_NodeCommand(object sender, TreeCommandEventArgs e)
|
||||
{
|
||||
InitWeek();
|
||||
this.Grid1.Columns[4].HeaderText = "本月计划完成量";
|
||||
this.Grid1.Columns[7].HeaderText = "本月完成量";
|
||||
BindGrid();
|
||||
}
|
||||
#endregion
|
||||
@@ -380,116 +316,235 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
if (Grid1.Rows.Count > 0)
|
||||
{
|
||||
decimal changeThisPlanValue = 0, changeThisRealCost = 0, changeThisPlanCost = 0, //当月总变化完成成本、完成预算
|
||||
oldThisPlanValue = 0, oldThisRealCost = 0, oldThisPlanCost = 0,
|
||||
thisPlanValue = 0, thisRealCost = 0, thisPlanCost = 0;
|
||||
oldThisPlanValue = 0, oldThisRealCost = 0, oldThisPlanCost = 0,
|
||||
thisPlanValue = 0, thisRealCost = 0, thisPlanCost = 0;
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
if (this.drpWeek.SelectedValue == BLL.Const._Null) //保存月记录
|
||||
{
|
||||
oldThisPlanValue = 0;
|
||||
oldThisRealCost = 0;
|
||||
oldThisPlanCost = 0;
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
string costControlDetailId = values.Value<string>("CostControlDetailId");
|
||||
string costControlId = values.Value<string>("CostControlId");
|
||||
string thisNum = values.Value<string>("ThisNum");
|
||||
string planPrice = values.Value<string>("PlanPrice");
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(costControlDetailId);
|
||||
Model.WBS_CostControl costControl = BLL.CostControlService.GetCostControlByCostControlId(costControlId);
|
||||
if (costControlDetail != null)
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
oldThisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
oldThisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
if (!string.IsNullOrEmpty(thisNum))
|
||||
oldThisPlanValue = 0;
|
||||
oldThisRealCost = 0;
|
||||
oldThisPlanCost = 0;
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
string costControlDetailId = values.Value<string>("CostControlDetailId");
|
||||
string costControlId = values.Value<string>("CostControlId");
|
||||
string thisNum = values.Value<string>("ThisNum");
|
||||
string planPrice = values.Value<string>("PlanPrice");
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(costControlDetailId);
|
||||
Model.WBS_CostControl costControl = BLL.CostControlService.GetCostControlByCostControlId(costControlId);
|
||||
if (costControlDetail != null)
|
||||
{
|
||||
costControlDetail.ThisNum = Convert.ToDecimal(thisNum);
|
||||
oldThisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
oldThisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
if (!string.IsNullOrEmpty(thisNum))
|
||||
{
|
||||
costControlDetail.ThisNum = Convert.ToDecimal(thisNum);
|
||||
}
|
||||
thisPlanValue = (costControlDetail.PlanNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
thisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
thisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
BLL.CostControlDetailService.UpdateCostControlDetail(costControlDetail);
|
||||
}
|
||||
thisPlanValue = (costControlDetail.PlanNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
thisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
thisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
BLL.CostControlDetailService.UpdateCostControlDetail(costControlDetail);
|
||||
else
|
||||
{
|
||||
costControlDetail = new Model.WBS_CostControlDetail();
|
||||
costControlDetail.CostControlDetailId = costControlDetailId;
|
||||
costControlDetail.CostControlId = costControlId;
|
||||
costControlDetail.Months = months;
|
||||
if (!string.IsNullOrEmpty(thisNum))
|
||||
{
|
||||
costControlDetail.ThisNum = Convert.ToDecimal(thisNum);
|
||||
}
|
||||
thisPlanValue = 0;
|
||||
thisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
thisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
BLL.CostControlDetailService.AddCostControlDetail(costControlDetail);
|
||||
}
|
||||
//累加变化值,计算总的变化值
|
||||
changeThisRealCost += thisRealCost - oldThisRealCost;
|
||||
changeThisPlanCost += thisPlanCost - oldThisPlanCost;
|
||||
}
|
||||
//累计所有子节点的计划值
|
||||
var costControls = BLL.CostControlService.GetCostControlsByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
foreach (var item in costControls)
|
||||
{
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlIdAndMonths(item.CostControlId, months);
|
||||
if (costControlDetail != null)
|
||||
{
|
||||
changeThisPlanValue += (costControlDetail.PlanNum ?? 0) * (item.PlanPrice ?? 0);
|
||||
}
|
||||
}
|
||||
Model.WBS_CostControlParentDetail parentDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonths(this.trWBS.SelectedNodeID, months);
|
||||
if (parentDetail != null) //如果工作项节点存在,则计算计划值差异值
|
||||
{
|
||||
changeThisPlanValue = changeThisPlanValue - (parentDetail.ThisPlanValue ?? 0);
|
||||
}
|
||||
//更新树节点
|
||||
Model.Wbs_WbsSet wbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
//更新工作包、工作项
|
||||
UpdateWbsSetDetail(this.trWBS.SelectedNodeID, months, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
//更新分部
|
||||
Model.WBS_CostControlParentDetail unitProjectDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonths(wbsSet.UnitProjectId, months);
|
||||
if (unitProjectDetail != null)
|
||||
{
|
||||
unitProjectDetail.ThisPlanValue += changeThisPlanValue;
|
||||
unitProjectDetail.ThisRealCost += changeThisRealCost;
|
||||
unitProjectDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(unitProjectDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
costControlDetail = new Model.WBS_CostControlDetail();
|
||||
costControlDetail.CostControlDetailId = costControlDetailId;
|
||||
costControlDetail.CostControlId = costControlId;
|
||||
costControlDetail.Months = months;
|
||||
if (!string.IsNullOrEmpty(thisNum))
|
||||
{
|
||||
costControlDetail.ThisNum = Convert.ToDecimal(thisNum);
|
||||
}
|
||||
thisPlanValue = 0;
|
||||
thisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
thisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
BLL.CostControlDetailService.AddCostControlDetail(costControlDetail);
|
||||
unitProjectDetail = new Model.WBS_CostControlParentDetail();
|
||||
unitProjectDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
unitProjectDetail.ParentId = wbsSet.UnitProjectId;
|
||||
unitProjectDetail.Months = months;
|
||||
unitProjectDetail.ThisPlanValue = changeThisPlanValue;
|
||||
unitProjectDetail.ThisRealCost = changeThisRealCost;
|
||||
unitProjectDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(unitProjectDetail);
|
||||
}
|
||||
//累加变化值,计算总的变化值
|
||||
changeThisRealCost += thisRealCost - oldThisRealCost;
|
||||
changeThisPlanCost += thisPlanCost - oldThisPlanCost;
|
||||
}
|
||||
//累计所有子节点的计划值
|
||||
var costControls = BLL.CostControlService.GetCostControlsByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
foreach (var item in costControls)
|
||||
{
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlIdAndMonths(item.CostControlId, months);
|
||||
if (costControlDetail != null)
|
||||
//更新专业
|
||||
Model.WBS_CostControlParentDetail cnProfessionDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonths(wbsSet.CnProfessionId, months);
|
||||
if (cnProfessionDetail != null)
|
||||
{
|
||||
changeThisPlanValue += (costControlDetail.PlanNum ?? 0) * (item.PlanPrice ?? 0);
|
||||
cnProfessionDetail.ThisPlanValue += changeThisPlanValue;
|
||||
cnProfessionDetail.ThisRealCost += changeThisRealCost;
|
||||
cnProfessionDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(cnProfessionDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
cnProfessionDetail = new Model.WBS_CostControlParentDetail();
|
||||
cnProfessionDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
cnProfessionDetail.ParentId = wbsSet.CnProfessionId;
|
||||
cnProfessionDetail.Months = months;
|
||||
cnProfessionDetail.ThisPlanValue = changeThisPlanValue;
|
||||
cnProfessionDetail.ThisRealCost = changeThisRealCost;
|
||||
cnProfessionDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(cnProfessionDetail);
|
||||
}
|
||||
//更新装置
|
||||
UpdateInstallationDetail(wbsSet.InstallationId, months, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
}
|
||||
Model.WBS_CostControlParentDetail parentDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonths(this.trWBS.SelectedNodeID, months);
|
||||
if (parentDetail != null) //如果工作项节点存在,则计算计划值差异值
|
||||
else //保存周记录
|
||||
{
|
||||
changeThisPlanValue = changeThisPlanValue - (parentDetail.ThisPlanValue ?? 0);
|
||||
string[] strs = this.drpWeek.SelectedValue.Split(',');
|
||||
DateTime startDate = Convert.ToDateTime(strs[0]);
|
||||
DateTime endDate = Convert.ToDateTime(strs[1]);
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
oldThisPlanValue = 0;
|
||||
oldThisRealCost = 0;
|
||||
oldThisPlanCost = 0;
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
string costControlDetailId = values.Value<string>("CostControlDetailId");
|
||||
string costControlId = values.Value<string>("CostControlId");
|
||||
string thisNum = values.Value<string>("ThisNum");
|
||||
string planPrice = values.Value<string>("PlanPrice");
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(costControlDetailId);
|
||||
Model.WBS_CostControl costControl = BLL.CostControlService.GetCostControlByCostControlId(costControlId);
|
||||
if (costControlDetail != null)
|
||||
{
|
||||
oldThisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
oldThisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
if (!string.IsNullOrEmpty(thisNum))
|
||||
{
|
||||
costControlDetail.ThisNum = Convert.ToDecimal(thisNum);
|
||||
}
|
||||
thisPlanValue = (costControlDetail.PlanNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
thisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
thisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
BLL.CostControlDetailService.UpdateCostControlDetail(costControlDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
costControlDetail = new Model.WBS_CostControlDetail();
|
||||
costControlDetail.CostControlDetailId = costControlDetailId;
|
||||
costControlDetail.CostControlId = costControlId;
|
||||
costControlDetail.Months = months;
|
||||
costControlDetail.StartDate = startDate;
|
||||
costControlDetail.EndDate = endDate;
|
||||
if (!string.IsNullOrEmpty(thisNum))
|
||||
{
|
||||
costControlDetail.ThisNum = Convert.ToDecimal(thisNum);
|
||||
}
|
||||
thisPlanValue = 0;
|
||||
thisRealCost = (costControlDetail.ThisNum ?? 0) * (costControl.RealPrice ?? 0);
|
||||
thisPlanCost = (costControlDetail.ThisNum ?? 0) * (costControl.PlanPrice ?? 0);
|
||||
BLL.CostControlDetailService.AddCostControlDetail(costControlDetail);
|
||||
}
|
||||
//累加变化值,计算总的变化值
|
||||
changeThisRealCost += thisRealCost - oldThisRealCost;
|
||||
changeThisPlanCost += thisPlanCost - oldThisPlanCost;
|
||||
}
|
||||
//累计所有子节点的计划值
|
||||
var costControls = BLL.CostControlService.GetCostControlsByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
foreach (var item in costControls)
|
||||
{
|
||||
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlIdAndMonthsWeek(item.CostControlId, months, startDate);
|
||||
if (costControlDetail != null)
|
||||
{
|
||||
changeThisPlanValue += (costControlDetail.PlanNum ?? 0) * (item.PlanPrice ?? 0);
|
||||
}
|
||||
}
|
||||
Model.WBS_CostControlParentDetail parentDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonthsWeek(this.trWBS.SelectedNodeID, months, startDate);
|
||||
if (parentDetail != null) //如果工作项节点存在,则计算计划值差异值
|
||||
{
|
||||
changeThisPlanValue = changeThisPlanValue - (parentDetail.ThisPlanValue ?? 0);
|
||||
}
|
||||
//更新树节点
|
||||
Model.Wbs_WbsSet wbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
//更新工作包、工作项
|
||||
UpdateWeekWbsSetDetail(this.trWBS.SelectedNodeID, months, startDate, endDate, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
//更新分部
|
||||
Model.WBS_CostControlParentDetail unitProjectDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonthsWeek(wbsSet.UnitProjectId, months, startDate);
|
||||
if (unitProjectDetail != null)
|
||||
{
|
||||
unitProjectDetail.ThisPlanValue += changeThisPlanValue;
|
||||
unitProjectDetail.ThisRealCost += changeThisRealCost;
|
||||
unitProjectDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(unitProjectDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
unitProjectDetail = new Model.WBS_CostControlParentDetail();
|
||||
unitProjectDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
unitProjectDetail.ParentId = wbsSet.UnitProjectId;
|
||||
unitProjectDetail.Months = months;
|
||||
unitProjectDetail.StartDate = startDate;
|
||||
unitProjectDetail.EndDate = endDate;
|
||||
unitProjectDetail.ThisPlanValue = changeThisPlanValue;
|
||||
unitProjectDetail.ThisRealCost = changeThisRealCost;
|
||||
unitProjectDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(unitProjectDetail);
|
||||
}
|
||||
//更新专业
|
||||
Model.WBS_CostControlParentDetail cnProfessionDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonthsWeek(wbsSet.CnProfessionId, months, startDate);
|
||||
if (cnProfessionDetail != null)
|
||||
{
|
||||
cnProfessionDetail.ThisPlanValue += changeThisPlanValue;
|
||||
cnProfessionDetail.ThisRealCost += changeThisRealCost;
|
||||
cnProfessionDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(cnProfessionDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
cnProfessionDetail = new Model.WBS_CostControlParentDetail();
|
||||
cnProfessionDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
cnProfessionDetail.ParentId = wbsSet.CnProfessionId;
|
||||
cnProfessionDetail.Months = months;
|
||||
cnProfessionDetail.StartDate = startDate;
|
||||
cnProfessionDetail.EndDate = endDate;
|
||||
cnProfessionDetail.ThisPlanValue = changeThisPlanValue;
|
||||
cnProfessionDetail.ThisRealCost = changeThisRealCost;
|
||||
cnProfessionDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(cnProfessionDetail);
|
||||
}
|
||||
//更新装置
|
||||
UpdateWeekInstallationDetail(wbsSet.InstallationId, months, startDate, endDate, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
}
|
||||
//更新树节点
|
||||
Model.Wbs_WbsSet wbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
//更新工作包、工作项
|
||||
UpdateWbsSetDetail(this.trWBS.SelectedNodeID, months, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
//更新分部
|
||||
Model.WBS_CostControlParentDetail unitProjectDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonths(wbsSet.UnitProjectId, months);
|
||||
if (unitProjectDetail != null)
|
||||
{
|
||||
unitProjectDetail.ThisPlanValue += changeThisPlanValue;
|
||||
unitProjectDetail.ThisRealCost += changeThisRealCost;
|
||||
unitProjectDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(unitProjectDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
unitProjectDetail = new Model.WBS_CostControlParentDetail();
|
||||
unitProjectDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
unitProjectDetail.ParentId = wbsSet.UnitProjectId;
|
||||
unitProjectDetail.Months = months;
|
||||
unitProjectDetail.ThisPlanValue = changeThisPlanValue;
|
||||
unitProjectDetail.ThisRealCost = changeThisRealCost;
|
||||
unitProjectDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(unitProjectDetail);
|
||||
}
|
||||
//更新专业
|
||||
Model.WBS_CostControlParentDetail cnProfessionDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonths(wbsSet.CnProfessionId, months);
|
||||
if (cnProfessionDetail != null)
|
||||
{
|
||||
cnProfessionDetail.ThisPlanValue += changeThisPlanValue;
|
||||
cnProfessionDetail.ThisRealCost += changeThisRealCost;
|
||||
cnProfessionDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(cnProfessionDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
cnProfessionDetail = new Model.WBS_CostControlParentDetail();
|
||||
cnProfessionDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
cnProfessionDetail.ParentId = wbsSet.CnProfessionId;
|
||||
cnProfessionDetail.Months = months;
|
||||
cnProfessionDetail.ThisPlanValue = changeThisPlanValue;
|
||||
cnProfessionDetail.ThisRealCost = changeThisRealCost;
|
||||
cnProfessionDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(cnProfessionDetail);
|
||||
}
|
||||
//更新装置
|
||||
UpdateInstallationDetail(wbsSet.InstallationId, months, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
|
||||
BindGrid();
|
||||
//BindGrid();
|
||||
Alert.ShowInTop("保存成功!", MessageBoxIcon.Success);
|
||||
}
|
||||
else
|
||||
@@ -501,7 +556,7 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
|
||||
#region 更新工作包、工作项
|
||||
/// <summary>
|
||||
/// 更新工作包、工作项
|
||||
/// 更新月工作包、工作项
|
||||
/// </summary>
|
||||
/// <param name="years"></param>
|
||||
/// <param name="months"></param>
|
||||
@@ -537,11 +592,51 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新周工作包、工作项
|
||||
/// </summary>
|
||||
/// <param name="years"></param>
|
||||
/// <param name="months"></param>
|
||||
/// <param name="planValue"></param>
|
||||
/// <param name="parentId"></param>
|
||||
private void UpdateWeekWbsSetDetail(string wbsSetId, DateTime months, DateTime startDate, DateTime endDate, decimal changeThisPlanValue, decimal changeThisRealCost, decimal changeThisPlanCost)
|
||||
{
|
||||
Model.Wbs_WbsSet wbsSet = BLL.WbsSetService.GetWbsSetByWbsSetId(wbsSetId);
|
||||
if (wbsSet != null)
|
||||
{
|
||||
Model.WBS_CostControlParentDetail parentDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonthsWeek(wbsSetId, months, startDate);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
parentDetail.ThisPlanValue += changeThisPlanValue;
|
||||
parentDetail.ThisRealCost += changeThisRealCost;
|
||||
parentDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(parentDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
parentDetail = new Model.WBS_CostControlParentDetail();
|
||||
parentDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
parentDetail.ParentId = wbsSetId;
|
||||
parentDetail.Months = months;
|
||||
parentDetail.StartDate = startDate;
|
||||
parentDetail.EndDate = endDate;
|
||||
parentDetail.ThisPlanValue = changeThisPlanValue;
|
||||
parentDetail.ThisRealCost = changeThisRealCost;
|
||||
parentDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(parentDetail);
|
||||
}
|
||||
if (wbsSet.SuperWbsSetId != null) //还存在上级节点,需要继续循环
|
||||
{
|
||||
UpdateWeekWbsSetDetail(wbsSet.SuperWbsSetId, months, startDate, endDate, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 更新装置
|
||||
/// <summary>
|
||||
/// 更新装置
|
||||
/// 更新月装置
|
||||
/// </summary>
|
||||
/// <param name="years"></param>
|
||||
/// <param name="months"></param>
|
||||
@@ -577,6 +672,46 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新周装置
|
||||
/// </summary>
|
||||
/// <param name="years"></param>
|
||||
/// <param name="months"></param>
|
||||
/// <param name="planValue"></param>
|
||||
/// <param name="parentId"></param>
|
||||
private void UpdateWeekInstallationDetail(string installationId, DateTime months, DateTime startDate, DateTime endDate, decimal changeThisPlanValue, decimal changeThisRealCost, decimal changeThisPlanCost)
|
||||
{
|
||||
Model.Project_Installation installation = BLL.Project_InstallationService.GetInstallationByInstallationId(installationId);
|
||||
if (installation != null)
|
||||
{
|
||||
Model.WBS_CostControlParentDetail parentDetail = BLL.CostControlParentDetailService.GetCostControlParentDetailByParentIdAndMonths(installationId, months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
parentDetail.ThisPlanValue += changeThisPlanValue;
|
||||
parentDetail.ThisRealCost += changeThisRealCost;
|
||||
parentDetail.ThisPlanCost += changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.UpdateCostControlParentDetail(parentDetail);
|
||||
}
|
||||
else
|
||||
{
|
||||
parentDetail = new Model.WBS_CostControlParentDetail();
|
||||
parentDetail.CostControlParentDetailId = SQLHelper.GetNewID();
|
||||
parentDetail.ParentId = installationId;
|
||||
parentDetail.Months = months;
|
||||
parentDetail.StartDate = startDate;
|
||||
parentDetail.EndDate = endDate;
|
||||
parentDetail.ThisPlanValue = changeThisPlanValue;
|
||||
parentDetail.ThisRealCost = changeThisRealCost;
|
||||
parentDetail.ThisPlanCost = changeThisPlanCost;
|
||||
BLL.CostControlParentDetailService.AddCostControlParentDetail(parentDetail);
|
||||
}
|
||||
if (installation.SuperInstallationId != null) //还存在上级节点,需要继续循环
|
||||
{
|
||||
UpdateWeekInstallationDetail(installation.SuperInstallationId, months, startDate, endDate, changeThisPlanValue, changeThisRealCost, changeThisPlanCost);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 绑定数据
|
||||
@@ -636,24 +771,29 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
if (!string.IsNullOrEmpty(this.txtMonths.Text.Trim()))
|
||||
{
|
||||
DateTime months = Convert.ToDateTime(this.txtMonths.Text.Trim() + "-01");
|
||||
var codeList = BLL.WbsSetMatchCostControlService.GetWbsSetMatchCostControls(this.trWBS.SelectedNodeID);
|
||||
Model.Wbs_WbsSet wbeSet = BLL.WbsSetService.GetWbsSetByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
if (codeList.Count > 0) //存在费控对应关系项
|
||||
//var codeList = BLL.WbsSetMatchCostControlService.GetWbsSetMatchCostControls(this.trWBS.SelectedNodeID);
|
||||
//Model.Wbs_WbsSet wbeSet = BLL.WbsSetService.GetWbsSetByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
//if (codeList.Count > 0) //存在费控对应关系项
|
||||
//{
|
||||
//List<string> codes = new List<string>();
|
||||
//foreach (var item in codeList)
|
||||
//{
|
||||
// codes.Add(item.CostControlCode);
|
||||
//}
|
||||
//var list = BLL.CostControlService.GetCostControlsByCostControlCodes(codes, this.trWBS.SelectedNodeID);
|
||||
var list = BLL.CostControlService.GetCostControlsByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
if (list.Count > 0)
|
||||
{
|
||||
List<string> codes = new List<string>();
|
||||
foreach (var item in codeList)
|
||||
List<Model.View_WBS_CostControlDetail> details = new List<Model.View_WBS_CostControlDetail>();
|
||||
if (this.drpWeek.SelectedValue == BLL.Const._Null) //月份记录
|
||||
{
|
||||
codes.Add(item.CostControlCode);
|
||||
}
|
||||
var list = BLL.CostControlService.GetCostControlsByCostControlCodes(codes, this.trWBS.SelectedNodeID);
|
||||
if (list.Count > 0)
|
||||
{
|
||||
List<Model.View_WBS_CostControlDetail> details = new List<Model.View_WBS_CostControlDetail>();
|
||||
this.Grid1.Columns[4].HeaderText = "本月计划完成量";
|
||||
this.Grid1.Columns[7].HeaderText = "本月完成量";
|
||||
foreach (var item in list)
|
||||
{
|
||||
if (item.TotalNum != null)
|
||||
{
|
||||
Model.View_WBS_CostControlDetail detail = BLL.CostControlDetailService.GetViewCostControlDetailByCostControlIdYearMonth(item.CostControlId, months);
|
||||
Model.View_WBS_CostControlDetail detail = BLL.CostControlDetailService.GetViewCostControlDetailByCostControlIdAndMonth(item.CostControlId, months);
|
||||
if (detail == null)
|
||||
{
|
||||
detail = new Model.View_WBS_CostControlDetail();
|
||||
@@ -667,12 +807,68 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
detail.RealPrice = item.RealPrice;
|
||||
detail.PlanPrice = item.PlanPrice;
|
||||
}
|
||||
if (detail.ThisNum == 0)
|
||||
{
|
||||
detail.ThisNum = null;
|
||||
}
|
||||
details.Add(detail);
|
||||
}
|
||||
}
|
||||
Grid1.DataSource = details;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
else //周记录
|
||||
{
|
||||
this.Grid1.Columns[4].HeaderText = "本周计划完成量";
|
||||
this.Grid1.Columns[7].HeaderText = "本周完成量";
|
||||
foreach (var item in list)
|
||||
{
|
||||
if (item.TotalNum != null)
|
||||
{
|
||||
DateTime startDate = Convert.ToDateTime(this.drpWeek.SelectedValue.Split(',')[0]);
|
||||
Model.View_WBS_CostControlDetail detail = BLL.CostControlDetailService.GetViewCostControlDetailByCostControlIdAndMonthWeek(item.CostControlId, months, startDate);
|
||||
if (detail == null)
|
||||
{
|
||||
detail = new Model.View_WBS_CostControlDetail();
|
||||
detail.CostControlDetailId = SQLHelper.GetNewID();
|
||||
detail.CostControlId = item.CostControlId;
|
||||
detail.CostControlCode = item.CostControlCode;
|
||||
detail.CostControlName = item.CostControlName;
|
||||
detail.TotalNum = item.TotalNum;
|
||||
detail.Unit = item.Unit;
|
||||
detail.PlanNum = null;
|
||||
detail.RealPrice = item.RealPrice;
|
||||
detail.PlanPrice = item.PlanPrice;
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.WBS_CostControlDetail oldDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlDetailId(detail.CostControlDetailId);
|
||||
if (oldDetail.PlanNum != null)
|
||||
{
|
||||
detail.PlanNum = Convert.ToDouble(oldDetail.PlanNum);
|
||||
}
|
||||
else
|
||||
{
|
||||
detail.PlanNum = null;
|
||||
}
|
||||
if (oldDetail.ThisNum != null)
|
||||
{
|
||||
detail.ThisNum = Convert.ToDouble(oldDetail.ThisNum);
|
||||
}
|
||||
else
|
||||
{
|
||||
detail.ThisNum = null;
|
||||
}
|
||||
}
|
||||
details.Add(detail);
|
||||
}
|
||||
}
|
||||
}
|
||||
Grid1.DataSource = details;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
else
|
||||
{
|
||||
Grid1.DataSource = null;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -701,6 +897,33 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 加载周计划下拉框
|
||||
protected void InitWeek()
|
||||
{
|
||||
if (!string.IsNullOrEmpty(this.txtMonths.Text.Trim()))
|
||||
{
|
||||
DateTime months = Convert.ToDateTime(this.txtMonths.Text.Trim() + "-01");
|
||||
string costControlId = string.Empty;
|
||||
var list = BLL.CostControlService.GetCostControlsByWbsSetId(this.trWBS.SelectedNodeID);
|
||||
if (list.Count > 0)
|
||||
{
|
||||
foreach (var item in list)
|
||||
{
|
||||
if (item.TotalNum != null)
|
||||
{
|
||||
if (BLL.CostControlDetailService.IsExitWeekCostControlDetailByCostControlIdAndMonth(item.CostControlId, months))
|
||||
{
|
||||
BLL.CostControlDetailService.InitWeekPlanList(this.drpWeek, item.CostControlId, months, true);
|
||||
this.drpWeek.SelectedValue = BLL.Const._Null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 月份选择事件
|
||||
/// <summary>
|
||||
/// 月份选择事件
|
||||
@@ -709,9 +932,14 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
/// <param name="e"></param>
|
||||
protected void txtMonths_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
//InitTreeMenu();
|
||||
BindGrid();
|
||||
InitWeek();
|
||||
}
|
||||
#endregion
|
||||
|
||||
protected void drpWeek_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -111,6 +111,15 @@ namespace FineUIPro.Web.JDGL.WBS {
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtMonths;
|
||||
|
||||
/// <summary>
|
||||
/// drpWeek 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList drpWeek;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
|
||||
@@ -45,6 +45,9 @@
|
||||
<f:Button ID="btnSearch" Text="查询" MarginLeft="40px" EnablePostBack="true" runat="server"
|
||||
OnClick="btnSearch_Click">
|
||||
</f:Button>
|
||||
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp"
|
||||
EnableAjax="false" DisableControlBeforePostBack="false">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.JDGL.WBS
|
||||
@@ -132,5 +133,27 @@ namespace FineUIPro.Web.JDGL.WBS
|
||||
this.drpWbsSet.SelectedValue = BLL.Const._Null;
|
||||
}
|
||||
}
|
||||
|
||||
#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("工作量统计" + filename, System.Text.Encoding.UTF8) + ".xls");
|
||||
Response.ContentType = "application/excel";
|
||||
Response.ContentEncoding = Encoding.UTF8;
|
||||
this.Grid1.PageSize = Grid1.RecordCount;
|
||||
Response.Write(GetGridTableHtml2(Grid1));
|
||||
Response.End();
|
||||
DateTime months = Convert.ToDateTime(this.txtMonths.Text.Trim());
|
||||
DataTable table = BLL.WorkloadStatisticsService.GetTreeDataTable(this.CurrUser.LoginProjectId, months, this.drpCnProfession.SelectedValue, this.drpUnitProject.SelectedValue, this.drpWbsSet.SelectedValue);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -92,5 +92,14 @@ namespace FineUIPro.Web.JDGL.WBS {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSearch;
|
||||
|
||||
/// <summary>
|
||||
/// btnOut 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnOut;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user