0614-进度增加计划和实际开始/完成时间

This commit is contained in:
gaofei 2022-06-14 18:21:58 +08:00
parent 4b19955e26
commit 0d681e07ac
9 changed files with 289 additions and 41 deletions

View File

@ -0,0 +1,5 @@
alter table [dbo].[WBS_CostControl] add PlanStartDate datetime null
alter table [dbo].[WBS_CostControl] add PlanEndDate datetime null
alter table [dbo].[WBS_CostControl] add RealStartDate datetime null
alter table [dbo].[WBS_CostControl] add RealEndDate datetime null
GO

View File

@ -86,6 +86,10 @@ namespace BLL
newUP.IsSelected = costControl.IsSelected; newUP.IsSelected = costControl.IsSelected;
newUP.RealPrice = costControl.RealPrice; newUP.RealPrice = costControl.RealPrice;
newUP.PlanPrice = costControl.PlanPrice; newUP.PlanPrice = costControl.PlanPrice;
newUP.PlanStartDate = costControl.PlanStartDate;
newUP.PlanEndDate = costControl.PlanEndDate;
newUP.RealStartDate = costControl.RealStartDate;
newUP.RealEndDate = costControl.RealEndDate;
db.SubmitChanges(); db.SubmitChanges();
} }

View File

@ -2588,6 +2588,10 @@ namespace BLL
table.Columns.Add(new DataColumn("TotalNum", typeof(String))); table.Columns.Add(new DataColumn("TotalNum", typeof(String)));
table.Columns.Add(new DataColumn("RealPrice", typeof(String))); table.Columns.Add(new DataColumn("RealPrice", typeof(String)));
table.Columns.Add(new DataColumn("PlanPrice", typeof(String))); table.Columns.Add(new DataColumn("PlanPrice", typeof(String)));
table.Columns.Add(new DataColumn("PlanStartDate", typeof(DateTime)));
table.Columns.Add(new DataColumn("PlanEndDate", typeof(DateTime)));
table.Columns.Add(new DataColumn("RealStartDate", typeof(DateTime)));
table.Columns.Add(new DataColumn("RealEndDate", typeof(DateTime)));
for (int i = 0; i < months.Count; i++) for (int i = 0; i < months.Count; i++)
{ {
table.Columns.Add(new DataColumn("PlanNum" + (i + 1).ToString(), typeof(String))); table.Columns.Add(new DataColumn("PlanNum" + (i + 1).ToString(), typeof(String)));
@ -2644,6 +2648,22 @@ namespace BLL
{ {
row[7] = decimal.Round(Convert.ToDecimal(costControl.PlanPrice), 2);//控制预算单价 row[7] = decimal.Round(Convert.ToDecimal(costControl.PlanPrice), 2);//控制预算单价
} }
if (costControl.PlanStartDate != null)
{
row[8] = costControl.PlanStartDate;//计划开始时间
}
if (costControl.PlanEndDate != null)
{
row[9] = costControl.PlanEndDate;//计划完成时间
}
if (costControl.RealStartDate != null)
{
row[10] = costControl.RealStartDate;//实际开始时间
}
if (costControl.RealEndDate != null)
{
row[11] = costControl.RealEndDate;//实际完成时间
}
for (int i = 0; i < months.Count; i++) for (int i = 0; i < months.Count; i++)
{ {
Model.View_WBS_CostControlDetail detail = details.FirstOrDefault(x => x.CostControlId == item.Id && x.Months == months[i]); Model.View_WBS_CostControlDetail detail = details.FirstOrDefault(x => x.CostControlId == item.Id && x.Months == months[i]);
@ -2651,15 +2671,15 @@ namespace BLL
{ {
if (detail.PlanNum != 0) if (detail.PlanNum != 0)
{ {
row[8 + i * 2] = decimal.Round(Convert.ToDecimal(detail.PlanNum), 2); row[12 + i * 2] = decimal.Round(Convert.ToDecimal(detail.PlanNum), 2);
} }
if (detail.ThisNum != 0) if (detail.ThisNum != 0)
{ {
row[9 + i * 2] = decimal.Round(Convert.ToDecimal(detail.ThisNum), 2); row[13 + i * 2] = decimal.Round(Convert.ToDecimal(detail.ThisNum), 2);
} }
} }
} }
row[10 + (months.Count-1) * 2] = item.Id; row[14 + (months.Count-1) * 2] = item.Id;
//row[10] = decimal.Round(Convert.ToDecimal(detail.ThisRealCost), 2);//本月实际成本 //row[10] = decimal.Round(Convert.ToDecimal(detail.ThisRealCost), 2);//本月实际成本
//row[11] = decimal.Round(Convert.ToDecimal(detail.ThisPlanValue), 2);//本月计划完成预算 //row[11] = decimal.Round(Convert.ToDecimal(detail.ThisPlanValue), 2);//本月计划完成预算
//row[12] = decimal.Round(Convert.ToDecimal(detail.ThisPlanCost), 2);//本月完成预算 //row[12] = decimal.Round(Convert.ToDecimal(detail.ThisPlanCost), 2);//本月完成预算

View File

@ -5,12 +5,12 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"> <head runat="server">
<title>全项目录入</title> <title>全项目录入</title>
<style type="text/css"> <style type="text/css">
.f-grid-row.noEdit{ .f-grid-row.noEdit {
pointer-events:none; pointer-events: none;
} }
.f-grid-colheader-text { .f-grid-colheader-text {
white-space: normal; white-space: normal;
word-break: break-all; word-break: break-all;
} }
@ -24,22 +24,22 @@
<Items> <Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="项目情况" BoxFlex="1" AllowColumnLocking="true" <f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="项目情况" BoxFlex="1" AllowColumnLocking="true"
runat="server" EnableCollapse="true" DataKeyNames="Id,Name,ShowId" EnableTree="true" EnableColumnLines="true" ClicksToEdit="1" AllowCellEditing="true" runat="server" EnableCollapse="true" DataKeyNames="Id,Name,ShowId" EnableTree="true" EnableColumnLines="true" ClicksToEdit="1" AllowCellEditing="true"
TreeColumn="Name" DataIDField="Id" DataParentIDField="SupId" ExpandAllTreeNodes="true" > TreeColumn="Name" DataIDField="Id" DataParentIDField="SupId" ExpandAllTreeNodes="true">
<Toolbars> <Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server"> <f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items> <Items>
<f:ToolbarFill runat="server"></f:ToolbarFill> <f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存" <f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存"
OnClick="btnSave_Click"> OnClick="btnSave_Click">
</f:Button> </f:Button>
</Items> </Items>
</f:Toolbar> </f:Toolbar>
</Toolbars> </Toolbars>
<Columns> <Columns>
<%--<f:RowNumberField HeaderText="序号"/>--%> <%--<f:RowNumberField HeaderText="序号"/>--%>
<f:BoundField Width="350px" ColumnID="Name" DataField="Name" HeaderTextAlign="Center" EnableLock="true" Locked="true" <f:BoundField Width="350px" ColumnID="Name" DataField="Name" HeaderTextAlign="Center" EnableLock="true" Locked="true"
HeaderText="工作内容" /> HeaderText="工作内容" />
<f:BoundField Width="100px" DataField="Unit" HeaderText="单位" TextAlign="Center" EnableLock="true" Locked="true"/> <f:BoundField Width="100px" DataField="Unit" HeaderText="单位" TextAlign="Center" EnableLock="true" Locked="true" />
<f:RenderField Width="100px" ColumnID="TotalNum" DataField="TotalNum" FieldType="Double" EnableLock="true" Locked="true" <f:RenderField Width="100px" ColumnID="TotalNum" DataField="TotalNum" FieldType="Double" EnableLock="true" Locked="true"
HeaderText="合同工作量" HeaderTextAlign="Center" TextAlign="Left"> HeaderText="合同工作量" HeaderTextAlign="Center" TextAlign="Left">
<Editor> <Editor>
@ -64,6 +64,34 @@
</f:NumberBox> </f:NumberBox>
</Editor> </Editor>
</f:RenderField> </f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanStartDate" DataField="PlanStartDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="计划开始时间" HeaderTextAlign="Center">
<Editor>
<f:DatePicker ID="txtPlanStartDate" Required="true" runat="server">
</f:DatePicker>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanEndDate" DataField="PlanEndDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="计划完成时间" HeaderTextAlign="Center">
<Editor>
<f:DatePicker ID="txtPlanEndDate" Required="true" runat="server">
</f:DatePicker>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="RealStartDate" DataField="RealStartDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际开始时间" HeaderTextAlign="Center">
<Editor>
<f:DatePicker ID="txtRealStartDate" Required="true" runat="server">
</f:DatePicker>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="RealEndDate" DataField="RealEndDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" HeaderTextAlign="Center">
<Editor>
<f:DatePicker ID="txtRealEndDate" Required="true" runat="server">
</f:DatePicker>
</Editor>
</f:RenderField>
</Columns> </Columns>
</f:Grid> </f:Grid>
</Items> </Items>

View File

@ -116,7 +116,7 @@ namespace FineUIPro.Web.JDGL.WBS
rdId.HeaderTextAlign = TextAlign.Center; rdId.HeaderTextAlign = TextAlign.Center;
Grid1.Columns.Add(rdId); Grid1.Columns.Add(rdId);
rdId.Hidden = true; rdId.Hidden = true;
ColumnNum = 5 + months.Count * 2 + 1; ColumnNum = 9 + months.Count * 2 + 1;
} }
} }
#endregion #endregion
@ -139,7 +139,13 @@ namespace FineUIPro.Web.JDGL.WBS
{ {
if (string.IsNullOrEmpty(this.Grid1.Rows[i].DataKeys[2].ToString())) if (string.IsNullOrEmpty(this.Grid1.Rows[i].DataKeys[2].ToString()))
{ {
this.Grid1.Rows[i].RowCssClass = "noEdit"; foreach (GridColumn column in Grid1.Columns)
{
if (column.ColumnIndex != 0)
{
this.Grid1.Rows[i].CellCssClasses[column.ColumnIndex] = "f-grid-cell-uneditable";
}
}
} }
} }
} }
@ -180,9 +186,17 @@ namespace FineUIPro.Web.JDGL.WBS
string totalNum = values.Value<string>("TotalNum"); string totalNum = values.Value<string>("TotalNum");
string planPrice = values.Value<string>("PlanPrice"); string planPrice = values.Value<string>("PlanPrice");
string realPrice = values.Value<string>("RealPrice"); string realPrice = values.Value<string>("RealPrice");
string planStartDate = values.Value<string>("PlanStartDate");
string planEndDate = values.Value<string>("PlanEndDate");
string realStartDate = values.Value<string>("RealStartDate");
string realEndDate = values.Value<string>("RealEndDate");
costControl.TotalNum = Funs.GetNewDecimal(totalNum); costControl.TotalNum = Funs.GetNewDecimal(totalNum);
costControl.PlanPrice = Funs.GetNewDecimal(planPrice); costControl.PlanPrice = Funs.GetNewDecimal(planPrice);
costControl.RealPrice = Funs.GetNewDecimal(realPrice); costControl.RealPrice = Funs.GetNewDecimal(realPrice);
costControl.PlanStartDate = Funs.GetNewDateTime(planStartDate);
costControl.PlanEndDate = Funs.GetNewDateTime(planEndDate);
costControl.RealStartDate = Funs.GetNewDateTime(realStartDate);
costControl.RealEndDate = Funs.GetNewDateTime(realEndDate);
BLL.CostControlService.UpdateCostControl(costControl); BLL.CostControlService.UpdateCostControl(costControl);
for (int j = 0; j < months.Count; j++) for (int j = 0; j < months.Count; j++)
{ {

View File

@ -92,5 +92,41 @@ namespace FineUIPro.Web.JDGL.WBS {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.NumberBox nbRealPrice; protected global::FineUIPro.NumberBox nbRealPrice;
/// <summary>
/// txtPlanStartDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtPlanStartDate;
/// <summary>
/// txtPlanEndDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtPlanEndDate;
/// <summary>
/// txtRealStartDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtRealStartDate;
/// <summary>
/// txtRealEndDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtRealEndDate;
} }
} }

View File

@ -52,6 +52,18 @@
<f:RenderField Width="100px" ColumnID="RealPrice" DataField="RealPrice" FieldType="Double" EnableLock="true" Locked="true" <f:RenderField Width="100px" ColumnID="RealPrice" DataField="RealPrice" FieldType="Double" EnableLock="true" Locked="true"
HeaderText="实际单价" HeaderTextAlign="Center" TextAlign="Left"> HeaderText="实际单价" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField> </f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanStartDate" DataField="PlanStartDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="计划开始时间" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanEndDate" DataField="PlanEndDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="计划完成时间" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="RealStartDate" DataField="RealStartDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际开始时间" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="RealEndDate" DataField="RealEndDate" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" HeaderTextAlign="Center">
</f:RenderField>
</Columns> </Columns>
</f:Grid> </f:Grid>
</Items> </Items>

View File

@ -115,7 +115,7 @@ namespace FineUIPro.Web.JDGL.WBS
rdId.HeaderTextAlign = TextAlign.Center; rdId.HeaderTextAlign = TextAlign.Center;
Grid1.Columns.Add(rdId); Grid1.Columns.Add(rdId);
rdId.Hidden = true; rdId.Hidden = true;
ColumnNum = 5 + months.Count * 2 + 1; ColumnNum = 9 + months.Count * 2 + 1;
} }
} }
#endregion #endregion
@ -287,31 +287,60 @@ namespace FineUIPro.Web.JDGL.WBS
string row = pds.Rows[i][j].ToString(); string row = pds.Rows[i][j].ToString();
if (!string.IsNullOrEmpty(row)) if (!string.IsNullOrEmpty(row))
{ {
try if (j != 5 && j != 6 && j != 7 && j != 8)
{ {
decimal d = Convert.ToDecimal(row.Trim()); try
{
decimal d = Convert.ToDecimal(row.Trim());
}
catch (Exception)
{
if (j == 2)
{
result += "第" + (i + 2).ToString() + "行," + "合同工作量" + "," + "[" + row + "]格式错误!" + "|";
}
else if (j == 3)
{
result += "第" + (i + 2).ToString() + "行," + "预算单价" + "," + "[" + row + "]格式错误!" + "|";
}
else if (j == 4)
{
result += "第" + (i + 2).ToString() + "行," + "实际单价" + "," + "[" + row + "]格式错误!" + "|";
}
else if (j % 2 == 1) //奇数列
{
result += "第" + (i + 2).ToString() + "行," + string.Format("{0:yyyy-MM}", months[j - 9]) + "计划量" + "," + "[" + row + "]格式错误!" + "|";
}
else
{
result += "第" + (i + 2).ToString() + "行," + string.Format("{0:yyyy-MM}", months[j - 9]) + "完成量" + "," + "[" + row + "]格式错误!" + "|";
}
}
} }
catch (Exception) else
{ {
if (j == 2) try
{ {
result += "第" + (i + 2).ToString() + "行," + "合同工作量" + "," + "[" + row + "]格式错误!" + "|"; DateTime d = Convert.ToDateTime(row.Trim());
} }
else if (j == 3) catch (Exception)
{ {
result += "第" + (i + 2).ToString() + "行," + "预算单价" + "," + "[" + row + "]格式错误!" + "|"; if (j == 5)
} {
else if (j == 4) result += "第" + (i + 2).ToString() + "行," + "计划开始时间" + "," + "[" + row + "]格式错误!" + "|";
{ }
result += "第" + (i + 2).ToString() + "行," + "实际单价" + "," + "[" + row + "]格式错误!" + "|"; else if (j == 6)
} {
else if (j % 2 == 1) //奇数列 result += "第" + (i + 2).ToString() + "行," + "计划完成时间" + "," + "[" + row + "]格式错误!" + "|";
{ }
result += "第" + (i + 2).ToString() + "行," + string.Format("{0:yyyy-MM}", months[j - 5]) + "计划量" + "," + "[" + row + "]格式错误!" + "|"; else if (j == 7)
} {
else result += "第" + (i + 2).ToString() + "行," + "实际开始时间" + "," + "[" + row + "]格式错误!" + "|";
{ }
result += "第" + (i + 2).ToString() + "行," + string.Format("{0:yyyy-MM}", months[j - 5]) + "完成量" + "," + "[" + row + "]格式错误!" + "|"; else if (j == 8)
{
result += "第" + (i + 2).ToString() + "行," + "实际完成时间" + "," + "[" + row + "]格式错误!" + "|";
}
} }
} }
} }
@ -454,6 +483,10 @@ namespace FineUIPro.Web.JDGL.WBS
costControl.TotalNum = Funs.GetNewDecimal(pds.Rows[i][2].ToString().Trim()); costControl.TotalNum = Funs.GetNewDecimal(pds.Rows[i][2].ToString().Trim());
costControl.PlanPrice = Funs.GetNewDecimal(pds.Rows[i][3].ToString().Trim()); costControl.PlanPrice = Funs.GetNewDecimal(pds.Rows[i][3].ToString().Trim());
costControl.RealPrice = Funs.GetNewDecimal(pds.Rows[i][4].ToString().Trim()); costControl.RealPrice = Funs.GetNewDecimal(pds.Rows[i][4].ToString().Trim());
costControl.PlanStartDate = Funs.GetNewDateTime(pds.Rows[i][5].ToString().Trim());
costControl.PlanEndDate = Funs.GetNewDateTime(pds.Rows[i][6].ToString().Trim());
costControl.RealStartDate = Funs.GetNewDateTime(pds.Rows[i][7].ToString().Trim());
costControl.RealEndDate = Funs.GetNewDateTime(pds.Rows[i][8].ToString().Trim());
BLL.CostControlService.UpdateCostControl(costControl); BLL.CostControlService.UpdateCostControl(costControl);
for (int j = 0; j < months.Count; j++) for (int j = 0; j < months.Count; j++)
{ {
@ -463,8 +496,8 @@ namespace FineUIPro.Web.JDGL.WBS
changeThisPlanValue = 0; changeThisPlanValue = 0;
changeThisRealCost = 0; changeThisRealCost = 0;
changeThisPlanCost = 0; changeThisPlanCost = 0;
string planNum = pds.Rows[i][5 + j * 2].ToString().Trim(); string planNum = pds.Rows[i][9 + j * 2].ToString().Trim();
string thisNum = pds.Rows[i][6 + j * 2].ToString().Trim(); string thisNum = pds.Rows[i][10 + j * 2].ToString().Trim();
Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlIdAndMonths(costControl.CostControlId, months[j]); Model.WBS_CostControlDetail costControlDetail = BLL.CostControlDetailService.GetCostControlDetailByCostControlIdAndMonths(costControl.CostControlId, months[j]);
if (costControlDetail != null) if (costControlDetail != null)
{ {

View File

@ -349813,6 +349813,14 @@ namespace Model
private System.Nullable<bool> _IsSelected; private System.Nullable<bool> _IsSelected;
private System.Nullable<System.DateTime> _PlanStartDate;
private System.Nullable<System.DateTime> _PlanEndDate;
private System.Nullable<System.DateTime> _RealStartDate;
private System.Nullable<System.DateTime> _RealEndDate;
private EntityRef<Base_Project> _Base_Project; private EntityRef<Base_Project> _Base_Project;
private EntityRef<Wbs_WbsSet> _Wbs_WbsSet; private EntityRef<Wbs_WbsSet> _Wbs_WbsSet;
@ -349845,6 +349853,14 @@ namespace Model
partial void OnPlanPriceChanged(); partial void OnPlanPriceChanged();
partial void OnIsSelectedChanging(System.Nullable<bool> value); partial void OnIsSelectedChanging(System.Nullable<bool> value);
partial void OnIsSelectedChanged(); partial void OnIsSelectedChanged();
partial void OnPlanStartDateChanging(System.Nullable<System.DateTime> value);
partial void OnPlanStartDateChanged();
partial void OnPlanEndDateChanging(System.Nullable<System.DateTime> value);
partial void OnPlanEndDateChanged();
partial void OnRealStartDateChanging(System.Nullable<System.DateTime> value);
partial void OnRealStartDateChanged();
partial void OnRealEndDateChanging(System.Nullable<System.DateTime> value);
partial void OnRealEndDateChanged();
#endregion #endregion
public WBS_CostControl() public WBS_CostControl()
@ -350064,6 +350080,86 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlanStartDate", DbType="DateTime")]
public System.Nullable<System.DateTime> PlanStartDate
{
get
{
return this._PlanStartDate;
}
set
{
if ((this._PlanStartDate != value))
{
this.OnPlanStartDateChanging(value);
this.SendPropertyChanging();
this._PlanStartDate = value;
this.SendPropertyChanged("PlanStartDate");
this.OnPlanStartDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlanEndDate", DbType="DateTime")]
public System.Nullable<System.DateTime> PlanEndDate
{
get
{
return this._PlanEndDate;
}
set
{
if ((this._PlanEndDate != value))
{
this.OnPlanEndDateChanging(value);
this.SendPropertyChanging();
this._PlanEndDate = value;
this.SendPropertyChanged("PlanEndDate");
this.OnPlanEndDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RealStartDate", DbType="DateTime")]
public System.Nullable<System.DateTime> RealStartDate
{
get
{
return this._RealStartDate;
}
set
{
if ((this._RealStartDate != value))
{
this.OnRealStartDateChanging(value);
this.SendPropertyChanging();
this._RealStartDate = value;
this.SendPropertyChanged("RealStartDate");
this.OnRealStartDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RealEndDate", DbType="DateTime")]
public System.Nullable<System.DateTime> RealEndDate
{
get
{
return this._RealEndDate;
}
set
{
if ((this._RealEndDate != value))
{
this.OnRealEndDateChanging(value);
this.SendPropertyChanging();
this._RealEndDate = value;
this.SendPropertyChanged("RealEndDate");
this.OnRealEndDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_WBS_CostControl_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)] [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_WBS_CostControl_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)]
public Base_Project Base_Project public Base_Project Base_Project
{ {