This commit is contained in:
佘春生 2025-09-25 08:32:04 +08:00
commit c0136863c6
62 changed files with 5296 additions and 567 deletions

View File

@ -27,7 +27,7 @@ REM --------------
@echo.
@call "%VS100COMNTOOLS%"vsvars32.bat
SqlMetal /views /server:.\SQL2016 /database:EProjectDB /code:%Model_ROOT%\Model.cs /namespace:Model
SqlMetal /views /server:.\SQL2022 /database:EProjectDB /code:%Model_ROOT%\Model.cs /namespace:Model
@ECHO 完成
pause

View File

@ -158,6 +158,7 @@
<Compile Include="BaseInfo\DepartService.cs" />
<Compile Include="BaseInfo\DisciplinesWBSService.cs" />
<Compile Include="BaseInfo\HyperLinkSetService.cs" />
<Compile Include="BaseInfo\QuantityDesctiptionService.cs" />
<Compile Include="Common\AttachFileService.cs" />
<Compile Include="Common\ChartControlService.cs" />
<Compile Include="Common\ConstValue.cs" />
@ -165,6 +166,7 @@
<Compile Include="Common\HttpHelper.cs" />
<Compile Include="Design\DesignInputService.cs" />
<Compile Include="EditorManage\CMHTDService.cs" />
<Compile Include="EditorManage\KeyQuantityService.cs" />
<Compile Include="SyncFilePathHelper.cs" />
<Compile Include="Common\HashtableHelper.cs" />
<Compile Include="Common\JsonHelper.cs" />

View File

@ -0,0 +1,178 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public class QuantityDesctiptionService
{
public static Model.Base_QuantityDesctiption GetQuantityDesctiptionById(string keyId)
{
return Funs.DB.Base_QuantityDesctiption.FirstOrDefault(e => e.KeyId == keyId);
}
/// <summary>
/// 增加
/// </summary>
/// <param name="des"></param>
public static void AddQuantityDesctiption(Model.Base_QuantityDesctiption des)
{
Model.Base_QuantityDesctiption newDes = new Model.Base_QuantityDesctiption();
newDes.KeyId = des.KeyId;
newDes.DepartId = des.DepartId;
newDes.DisciplinesWBSId = des.DisciplinesWBSId;
newDes.QuantityDesctiption = des.QuantityDesctiption;
newDes.PlanMHRsUnit = des.PlanMHRsUnit;
Funs.DB.Base_QuantityDesctiption.InsertOnSubmit(newDes);
Funs.DB.SubmitChanges();
}
/// <summary>
/// 修改
/// </summary>
/// <param name="des"></param>
public static void UpdateQuantityDesctiption(Model.Base_QuantityDesctiption des)
{
Model.Base_QuantityDesctiption newDes = Funs.DB.Base_QuantityDesctiption.FirstOrDefault(e => e.KeyId == des.KeyId);
if (newDes != null)
{
newDes.DepartId = des.DepartId;
newDes.DisciplinesWBSId = des.DisciplinesWBSId;
newDes.QuantityDesctiption = des.QuantityDesctiption;
newDes.PlanMHRsUnit = des.PlanMHRsUnit;
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 删除
/// </summary>
/// <param name="keyId"></param>
public static void DeleteQuantityDesctiptionById(string keyId)
{
Model.Base_QuantityDesctiption newDes = Funs.DB.Base_QuantityDesctiption.FirstOrDefault(e => e.KeyId == keyId);
if (newDes != null)
{
Funs.DB.Base_QuantityDesctiption.DeleteOnSubmit(newDes);
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 验证是否存在
/// </summary>
/// <param name="departId"></param>
/// <param name="DisciplinesWBSId"></param>
/// <param name="quantityDesctiption"></param>
/// <param name="id"></param>
/// <returns></returns>
public static bool IsExitQuantityDesctiption(string departId, string DisciplinesWBSId, string quantityDesctiption, string id)
{
var q = Funs.DB.Base_QuantityDesctiption.FirstOrDefault(x => x.DepartId == departId && x.DisciplinesWBSId == DisciplinesWBSId && x.QuantityDesctiption == quantityDesctiption && x.KeyId != id);
if (q != null)
{
return true;
}
else
{
return false;
}
}
#region Identifier下拉值加载
public static void InitIdentifierDropDownList(FineUIPro.DropDownList dropName,string type, bool isShowPlease)
{
dropName.DataValueField = "DisciplinesWBSCode";
dropName.DataTextField = "DisciplinesWBSCode";
dropName.DataSource = GetDisciplinesWBSCodeList(type);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName,"-请选择-");
}
}
public static List<string> GetDisciplinesWBSCodeList(string type)
{
return (from x in Funs.DB.Base_QuantityDesctiption
join y in Funs.DB.Base_DisciplinesWBS on x.DisciplinesWBSId equals y.DisciplinesWBSId
where x.DepartId == type
orderby y.DisciplinesWBSCode
select y.DisciplinesWBSCode).Distinct().ToList();
}
#endregion
#region Descipline下拉值加载
public static void InitDesciplineDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease,string type, string disciplinesWBSCode)
{
dropName.DataValueField = "DisciplinesWBSName";
dropName.DataTextField = "DisciplinesWBSName";
dropName.DataSource = GetDesciplineList(type,disciplinesWBSCode);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName, "-请选择-");
}
}
public static List<string> GetDesciplineList(string type,string disciplinesWBSCode)
{
return (from x in Funs.DB.Base_QuantityDesctiption
join y in Funs.DB.Base_DisciplinesWBS on x.DisciplinesWBSId equals y.DisciplinesWBSId
where y.DisciplinesWBSCode == disciplinesWBSCode && x.DepartId == type
orderby y.DisciplinesWBSName
select y.DisciplinesWBSName).Distinct().ToList();
}
#endregion
#region Quantity Desctiption
public static void InitQuantityDesctiptionDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease,string type, string disciplinesWBSCode, string disciplinesWBSName)
{
dropName.DataValueField = "QuantityDesctiption";
dropName.DataTextField = "QuantityDesctiption";
dropName.DataSource = GetQuantityDesctiptionList(type,disciplinesWBSCode, disciplinesWBSName);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName, "-请选择-");
}
}
public static List<string> GetQuantityDesctiptionList(string type, string disciplinesWBSCode, string disciplinesWBSName)
{
return (from x in Funs.DB.Base_QuantityDesctiption
join y in Funs.DB.Base_DisciplinesWBS on x.DisciplinesWBSId equals y.DisciplinesWBSId
where x.DepartId == type && y.DisciplinesWBSCode == disciplinesWBSCode && y.DisciplinesWBSName == disciplinesWBSName
orderby x.QuantityDesctiption
select x.QuantityDesctiption).Distinct().ToList();
}
#endregion
#region PlanMHRsUnit
public static void InitPlanMHRsUnitDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease,string type, string disciplinesWBSCode, string disciplinesWBSName, string quantityDesctiption)
{
dropName.DataValueField = "PlanMHRsUnit";
dropName.DataTextField = "PlanMHRsUnit";
dropName.DataSource = GetPlanMHRsUnitList(type,disciplinesWBSCode, disciplinesWBSName, quantityDesctiption);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName, "-请选择-");
}
}
public static List<string> GetPlanMHRsUnitList(string type, string disciplinesWBSCode, string disciplinesWBSName, string quantityDesctiption)
{
return (from x in Funs.DB.Base_QuantityDesctiption
join y in Funs.DB.Base_DisciplinesWBS on x.DisciplinesWBSId equals y.DisciplinesWBSId
where x.DepartId == type && y.DisciplinesWBSCode == disciplinesWBSCode && y.DisciplinesWBSName == disciplinesWBSName
&& x.QuantityDesctiption == quantityDesctiption
orderby x.PlanMHRsUnit
select x.PlanMHRsUnit.ToString()).Distinct().ToList();
}
#endregion
}
}

View File

@ -293,7 +293,10 @@ namespace BLL
if (user.UserId == Const.GlyId) //// 如果是管理员或者本部人员返回所有菜单
{
var sysMenu = from x in Funs.DB.Sys_Menu orderby x.SortIndex select x;
reMenuList = sysMenu.ToList();
if (sysMenu.Count() > 0)
{
reMenuList = sysMenu.ToList();
}
}
else
{
@ -302,7 +305,10 @@ namespace BLL
where y.RoleId == user.RoleId
orderby x.SortIndex
select x;
reMenuList = sysMenuRole.ToList();
if (sysMenuRole.Count() > 0)
{
reMenuList = sysMenuRole.ToList();
}
// PM,EM,CM权限特殊处理
List<string> pm = (from x in Funs.DB.Editor_EProject select x.ProjectControl_ProjectManagerId).ToList();
@ -312,13 +318,19 @@ namespace BLL
{
Model.Sys_Menu addSupMenu = (from x in Funs.DB.Sys_Menu where x.MenuId == "1FA19FE4-D8B9-4D1B-8EB0-CAC05B71AFBB" select x).First();
Model.Sys_Menu addMenu = (from x in Funs.DB.Sys_Menu where x.MenuId == Const.PMEditorMenuId select x).First();
reMenuList.Add(addMenu);
if (addMenu != null)
{
reMenuList.Add(addMenu);
}
}
if (cm.Contains(user.UserId))
{
Model.Sys_Menu addSupMenu = (from x in Funs.DB.Sys_Menu where x.MenuId == "1FA19FE4-D8B9-4D1B-8EB0-CAC05B71AFBB" select x).First();
Model.Sys_Menu addMenu = (from x in Funs.DB.Sys_Menu where x.MenuId == Const.CMEditorMenuId select x).First();
reMenuList.Add(addMenu);
if (addMenu != null)
{
reMenuList.Add(addMenu);
}
}
// 对资源模块的特殊处理:CTE/M具有RP权限
@ -326,8 +338,14 @@ namespace BLL
{
Model.Sys_Menu addSupMenu = (from x in Funs.DB.Sys_Menu where x.MenuId == "72CDB9E2-F44B-4F96-A578-3271211FDC15" select x).First();
Model.Sys_Menu addMenu = (from x in Funs.DB.Sys_Menu where x.MenuId == Const.ResourcePlanMenuId select x).First();
reMenuList.Add(addSupMenu);
reMenuList.Add(addMenu);
if (addSupMenu != null)
{
reMenuList.Add(addSupMenu);
}
if (addMenu != null)
{
reMenuList.Add(addMenu);
}
}
}

View File

@ -299,6 +299,12 @@ namespace BLL
/// 超链接设置
/// </summary>
public const string HyperLinkSetMenuId = "CE289C0B-7E32-4DD3-B02E-60368EE47CCB";
/// <summary>
/// Key Quantity-QuantityDesctiption
/// </summary>
public const string QuantityDesctiptionMenuId = "17E4B346-13C4-4751-8C8A-8F8A3C7CF9DD";
#endregion
#region
@ -356,6 +362,11 @@ namespace BLL
/// 成本报告
/// </summary>
public const string CostReportMenuId = "02069175-4901-4325-8019-3442D409233E";
/// <summary>
/// Key Quantity Editor
/// </summary>
public const string KeyQuantityMenuId = "070C3436-1408-430B-B8BD-C6D2CCB80103";
#endregion
#region
@ -736,6 +747,11 @@ namespace BLL
/// </summary>
public const string CMTDCString = "CMTDC";
/// <summary>
/// 设计输入策划
/// </summary>
public const string DesignPlanString = "DesignPlan";
/// <summary>
/// 设计输入提醒
/// </summary>

View File

@ -122,6 +122,7 @@ namespace BLL
newEProject.StudyWo = eProject.StudyWo;
newEProject.CreateDate = eProject.CreateDate;
newEProject.CreatePerson = eProject.CreatePerson;
newEProject.ProjectControl_RFSU_CloseDate = eProject.ProjectControl_RFSU_CloseDate;
db.Editor_EProject.InsertOnSubmit(newEProject);
db.SubmitChanges();
@ -211,6 +212,7 @@ namespace BLL
newEProject.StudyWo = eProject.StudyWo;
newEProject.CreateDate = eProject.CreateDate;
newEProject.CreatePerson = eProject.CreatePerson;
newEProject.ProjectControl_RFSU_CloseDate = eProject.ProjectControl_RFSU_CloseDate;
//if (eProject.ProjectControl_JobStatus != "Hold")
//{
// newEProject.Job_Hold =null;

View File

@ -0,0 +1,89 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.UI.WebControls;
using System.Windows.Forms;
namespace BLL
{
/// <summary>
/// Key Quantity
/// </summary>
public class KeyQuantityService
{
/// <summary>
/// 根据主键获取Key Quantity
/// </summary>
/// <param name="keyQuantityId"></param>
/// <returns></returns>
public static Model.Editor_KeyQuantity GetKeyQuantityById(string keyQuantityId)
{
return Funs.DB.Editor_KeyQuantity.FirstOrDefault(e => e.KeyQuantityId == keyQuantityId);
}
public static decimal? GetSumPlanMHRsByKeyId(string eprojectId, string identifier, string descipline)
{
decimal? sum = 0;
sum = (from x in Funs.DB.Editor_KeyQuantity where x.EProjectId == eprojectId && x.Identifier == identifier && x.Descipline == descipline select x.PlanMHRs).Sum();
return sum;
}
/// <summary>
/// 添加Key Quantity
/// </summary>
/// <param name="keyQuantity"></param>
public static void AddKeyQuantity(Model.Editor_KeyQuantity keyQuantity)
{
Model.Editor_KeyQuantity newKeyQuantity = new Model.Editor_KeyQuantity();
newKeyQuantity.KeyQuantityId = keyQuantity.KeyQuantityId;
newKeyQuantity.EProjectId = keyQuantity.EProjectId;
newKeyQuantity.KeyId = keyQuantity.KeyId;
newKeyQuantity.InputQuantity = keyQuantity.InputQuantity;
newKeyQuantity.PlanMHRs = keyQuantity.PlanMHRs;
newKeyQuantity.Identifier = keyQuantity.Identifier;
newKeyQuantity.Descipline = keyQuantity.Descipline;
newKeyQuantity.QuantityDesctiption = keyQuantity.QuantityDesctiption;
newKeyQuantity.PlanMHRsUnit = keyQuantity.PlanMHRsUnit;
newKeyQuantity.Type = keyQuantity.Type;
Funs.DB.Editor_KeyQuantity.InsertOnSubmit(newKeyQuantity);
Funs.DB.SubmitChanges();
}
/// <summary>
/// 修改key Quantity
/// </summary>
/// <param name="keyQuantity"></param>
public static void UpdateKeyQuantity(Model.Editor_KeyQuantity keyQuantity)
{
Model.Editor_KeyQuantity newKeyQuantity = Funs.DB.Editor_KeyQuantity.FirstOrDefault(e => e.KeyQuantityId == keyQuantity.KeyQuantityId);
if (newKeyQuantity != null)
{
newKeyQuantity.KeyId = keyQuantity.KeyId;
newKeyQuantity.InputQuantity = keyQuantity.InputQuantity;
newKeyQuantity.PlanMHRs = keyQuantity.PlanMHRs;
newKeyQuantity.Identifier = keyQuantity.Identifier;
newKeyQuantity.Descipline = keyQuantity.Descipline;
newKeyQuantity.QuantityDesctiption = keyQuantity.QuantityDesctiption;
newKeyQuantity.PlanMHRsUnit = keyQuantity.PlanMHRsUnit;
newKeyQuantity.Type = keyQuantity.Type;
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除Key Quantity
/// </summary>
/// <param name="keyQuantityId"></param>
public static void DeleteKeyQuantityById(string keyQuantityId)
{
Model.Editor_KeyQuantity keyQuantity = Funs.DB.Editor_KeyQuantity.FirstOrDefault(e => e.KeyQuantityId == keyQuantityId);
if (keyQuantity != null)
{
Funs.DB.Editor_KeyQuantity.DeleteOnSubmit(keyQuantity);
Funs.DB.SubmitChanges();
}
}
}
}

View File

@ -72,6 +72,7 @@ namespace BLL
newPlan.ManHours = plan.ManHours;
newPlan.AccountDisabled = plan.AccountDisabled;
newPlan.IsClose = plan.IsClose;
newPlan.Phase = plan.Phase;
Funs.DB.ManHours_Plan.InsertOnSubmit(newPlan);
Funs.DB.SubmitChanges();
}

View File

@ -413,6 +413,15 @@ namespace BLL
return (from x in Funs.DB.View_Sys_Users where x.IsPost == true orderby x.DepartName, x.UserName select x).ToList();
}
/// <summary>
/// 获取所有用户列表信息
/// </summary>
/// <returns></returns>
public static List<Model.View_Sys_Users> GetAllUserViewList()
{
return (from x in Funs.DB.View_Sys_Users orderby x.DepartName, x.UserName select x).ToList();
}
/// <summary>
/// »ñÈ¡CTEÓû§
/// </summary>
@ -448,7 +457,7 @@ namespace BLL
dropName.DataGroupField = "DepartName";
dropName.DataValueField = "UserId";
dropName.DataTextField = "UserName";
dropName.DataSource = BLL.Sys_UserService.GetUserViewList();
dropName.DataSource = BLL.Sys_UserService.GetAllUserViewList();
dropName.DataBind();
if (isShowPlease)
{

View File

@ -1,7 +1,7 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.28307.572
# Visual Studio Version 17
VisualStudioVersion = 17.11.35312.102
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FineUIPro.Web", "FineUIPro.Web\FineUIPro.Web.csproj", "{C88D3156-2D56-4DB0-922E-1995FB61C9BD}"
EndProject

View File

@ -0,0 +1,124 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="QuantityDesctiption.aspx.cs" Inherits="FineUIPro.Web.BaseInfo.QuantityDesctiption" %>
<!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>Key Quantity-QuantityDesctiption</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" Title="DisciplinesWBS" Layout="HBox" ShowHeader="false" AutoScroll="true">
<Items>
<f:Grid ID="Grid1" Title="Quantity Desctiption" ShowHeader="false" EnableCollapse="true" PageSize="15" EnableColumnLines="true"
ShowBorder="true" AllowPaging="true" IsDatabasePaging="true" runat="server" Width="900px"
DataKeyNames="KeyId" DataIDField="KeyId" OnPageIndexChange="Grid1_PageIndexChange"
EnableTextSelection="True" SortField="DepartId,DisciplinesWBSId" EnableRowSelectEvent="true" OnRowSelect="Grid1_RowSelect">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:DropDownList ID="drpTypes" runat="server" Label="Type" LabelAlign="Right" AutoPostBack="true" OnSelectedIndexChanged="Text_TextChanged"></f:DropDownList>
<f:DropDownList ID="drpDescipline" runat="server" Label="discipline" LabelAlign="Right" AutoPostBack="true" OnSelectedIndexChanged="Text_TextChanged"></f:DropDownList>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" Width="40px" HeaderTextAlign="Center"
TextAlign="Center" />
<f:RenderField Width="110px" ColumnID="DepartId" DataField="DepartId"
FieldType="String" HeaderText="Type" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="DisciplinesWBSCode" DataField="DisciplinesWBSCode"
FieldType="String" HeaderText="Identifier" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="DisciplinesWBSName" DataField="DisciplinesWBSName"
FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="QuantityDesctiption" DataField="QuantityDesctiption"
FieldType="String" HeaderText="Quantity Description" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="PlanMHRsUnit" DataField="PlanMHRsUnit"
FieldType="String" HeaderText="Plan MHRs/Unit" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
<%--<f:Listener Event="dataload" Handler="onGridDataLoad" />--%>
</Listeners>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
<f:SimpleForm ID="SimpleForm1" runat="server" ShowBorder="true" ShowHeader="false"
LabelWidth="80px" BodyPadding="5px" Width="300px">
<Items>
<f:HiddenField ID="hfFormID" runat="server">
</f:HiddenField>
<f:DropDownList ID="drpType" runat="server" Label="Type" LabelAlign="Right" LabelWidth="120px" EnableEdit="true" Required="true" ShowRedStar="true"></f:DropDownList>
<f:DropDownList ID="drpDisciplinesWBSId" runat="server" Label="Discipline" LabelAlign="Right" LabelWidth="120px" EnableEdit="true" Required="true" ShowRedStar="true" AutoPostBack="true" OnSelectedIndexChanged="drpDisciplinesWBSId_SelectedIndexChanged"></f:DropDownList>
<f:TextBox ID="txtDisciplinesWBSCode" Label="Identifier" ShowRedStar="true" Required="true"
runat="server" LabelAlign="right" LabelWidth="120px">
</f:TextBox>
<f:TextArea ID="txtQuantityDesctiption" Label="Quantity Description" ShowRedStar="true" Required="true"
runat="server" LabelAlign="right" LabelWidth="120px" MaxLength="200">
</f:TextArea>
<f:NumberBox ID="txtPlanMHRsUnit" runat="server" Label="Plan MHRs/Unit" LabelAlign="Right" LabelWidth="120px"></f:NumberBox>
</Items>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" runat="server">
<Items>
<f:Button ID="btnAdd" Icon="Add" Text="Add" ToolTip="Add" runat="server" OnClick="btnAdd_Click">
</f:Button>
<f:Button ID="btnDelete" Enabled="false" Text="Delete" ToolTip="Delete" Icon="Delete" ConfirmText="Make sure to delete the current data?"
OnClick="btnDelete_Click" runat="server">
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" Text="Save" ToolTip="Save" runat="server" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:SimpleForm>
</Items>
</f:Panel>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete selected row?" ConfirmTarget="Top" runat="server" Text="Delete">
</f:MenuButton>
</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;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
//function onGridDataLoad(event) {
// this.mergeColumns(['DepartName']);
//}
</script>
</body>
</html>

View File

@ -0,0 +1,374 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Model;
using static NPOI.HSSF.Util.HSSFColor;
namespace FineUIPro.Web.BaseInfo
{
public partial class QuantityDesctiption : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GetButtonPower();//按钮权限
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
//部门(查询)
//this.drpDepartmentIdS.DataTextField = "DepartName";
//this.drpDepartmentIdS.DataValueField = "DepartId";
//this.drpDepartmentIdS.DataSource = BLL.DepartService.GetDepartList();
//this.drpDepartmentIdS.DataBind();
//Funs.FineUIPleaseSelect(this.drpDepartmentIdS);
BLL.ConstValue.InitSysConstDropDownList(this.drpTypes, "KeyQuantityType", true);
//部门
//this.drpDepartId.DataTextField = "DepartName";
//this.drpDepartId.DataValueField = "DepartId";
//this.drpDepartId.DataSource = BLL.DepartService.GetDepartList();
//this.drpDepartId.DataBind();
//Funs.FineUIPleaseSelect(this.drpDepartId);
BLL.ConstValue.InitSysConstDropDownList(this.drpType, "KeyQuantityType", false);
//专业(查询)
this.drpDescipline.DataTextField = "DisciplinesWBSName";
this.drpDescipline.DataValueField = "DisciplinesWBSId";
this.drpDescipline.DataSource = from x in Funs.DB.Base_DisciplinesWBS select x;
this.drpDescipline.DataBind();
Funs.FineUIPleaseSelect(this.drpDescipline);
//专业
this.drpDisciplinesWBSId.DataTextField = "DisciplinesWBSName";
this.drpDisciplinesWBSId.DataValueField = "DisciplinesWBSId";
this.drpDisciplinesWBSId.DataSource = from x in Funs.DB.Base_DisciplinesWBS select x;
this.drpDisciplinesWBSId.DataBind();
Funs.FineUIPleaseSelect(this.drpDisciplinesWBSId);
// 绑定表格
BindGrid();
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT qua.KeyId,
qua.DepartId,
qua.DisciplinesWBSId,
qua.QuantityDesctiption,
qua.PlanMHRsUnit,
wbs.DisciplinesWBSCode,
wbs.DisciplinesWBSName
FROM Base_QuantityDesctiption as qua
left join Base_DisciplinesWBS as wbs on wbs.DisciplinesWBSId = qua.DisciplinesWBSId where 1=1";
List<SqlParameter> listStr = new List<SqlParameter>();
if (this.drpTypes.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpTypes.SelectedValue))
{
strSql += " AND qua.DepartId=@DepartId ";
listStr.Add(new SqlParameter("@DepartId", this.drpTypes.SelectedValue));
}
if (this.drpDescipline.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpDescipline.SelectedValue))
{
strSql += " AND qua.DisciplinesWBSId=@disciplinesWBSId ";
listStr.Add(new SqlParameter("@disciplinesWBSId", this.drpDescipline.SelectedValue));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
/// <summary>
/// 改变索引事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
#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();
}
#endregion
#region
/// <summary>
/// 增加按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAdd_Click(object sender, EventArgs e)
{
EmptyText();
}
#endregion
#region
/// <summary>
/// 清空文本框
/// </summary>
private void EmptyText()
{
this.hfFormID.Text = string.Empty;
this.drpType.SelectedValue = Const._Null;
this.drpDisciplinesWBSId.SelectedValue = Const._Null;
this.txtDisciplinesWBSCode.Text = string.Empty;
this.txtQuantityDesctiption.Text = string.Empty;
this.txtPlanMHRsUnit.Text = string.Empty;
this.btnDelete.Enabled = false;
}
#endregion
#region
/// <summary>
/// 选择行事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowSelect(object sender, GridRowSelectEventArgs e)
{
EditData();
}
#endregion
#region
/// <summary>
/// 删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDelete_Click(object sender, EventArgs e)
{
BLL.QuantityDesctiptionService.DeleteQuantityDesctiptionById(hfFormID.Text);
BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Delete the Key Quantity-QuantityDesctiption");
// 重新绑定表格,并模拟点击[新增按钮]
BindGrid();
//PageContext.RegisterStartupScript("onNewButtonClick();");
}
/// <summary>
/// 右键删除事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
this.DeleteData();
}
/// <summary>
/// 删除方法
/// </summary>
private void DeleteData()
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
BLL.QuantityDesctiptionService.DeleteQuantityDesctiptionById(rowID);
BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Delete the Key Quantity-QuantityDesctiption");
}
BindGrid();
EmptyText();
//PageContext.RegisterStartupScript("onNewButtonClick();");
}
}
#endregion
#region
/// <summary>
/// 右键编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
this.EditData();
}
/// <summary>
/// 编辑数据方法
/// </summary>
private void EditData()
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("Please select at least one record", MessageBoxIcon.Warning);
return;
}
string Id = Grid1.SelectedRowID;
var cons = BLL.QuantityDesctiptionService.GetQuantityDesctiptionById(Id);
if (cons != null)
{
if (!string.IsNullOrEmpty(cons.DepartId))
{
this.drpType.SelectedValue = cons.DepartId;
}
if (!string.IsNullOrEmpty(cons.DisciplinesWBSId))
{
this.drpDisciplinesWBSId.SelectedValue = cons.DisciplinesWBSId;
var wbs = BLL.DisciplinesWBSService.GetDisciplinesWBSById(cons.DisciplinesWBSId);
if (wbs != null)
{
this.txtDisciplinesWBSCode.Text = wbs.DisciplinesWBSCode;
}
this.txtQuantityDesctiption.Text = cons.QuantityDesctiption;
this.txtPlanMHRsUnit.Text = cons.PlanMHRsUnit.HasValue ? cons.PlanMHRsUnit.ToString() : "";
}
hfFormID.Text = Id;
this.btnDelete.Enabled = true;
}
}
#endregion
#region
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
string strRowID = hfFormID.Text;
//if (this.drpDepartId.SelectedValue == BLL.Const._Null)
//{
// ShowNotify("Please select Department", MessageBoxIcon.Warning);
// return;
//}
if (this.drpDisciplinesWBSId.SelectedValue == BLL.Const._Null)
{
ShowNotify("Please select Descipline", MessageBoxIcon.Warning);
return;
}
if (!BLL.QuantityDesctiptionService.IsExitQuantityDesctiption(this.drpType.SelectedValue, this.drpDisciplinesWBSId.SelectedValue, this.txtQuantityDesctiption.Text.Trim(), strRowID))
{
Model.Base_QuantityDesctiption cons = new Model.Base_QuantityDesctiption
{
QuantityDesctiption = this.txtQuantityDesctiption.Text.Trim(),
PlanMHRsUnit = Funs.GetNewDecimal(this.txtPlanMHRsUnit.Text)
};
if (this.drpType.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpType.SelectedValue))
{
cons.DepartId = this.drpType.SelectedValue;
}
if (this.drpDisciplinesWBSId.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpDisciplinesWBSId.SelectedValue))
{
cons.DisciplinesWBSId = this.drpDisciplinesWBSId.SelectedValue;
}
if (string.IsNullOrEmpty(strRowID))
{
cons.KeyId = SQLHelper.GetNewID(typeof(Model.Base_QuantityDesctiption));
BLL.QuantityDesctiptionService.AddQuantityDesctiption(cons);
BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Add the Key Quantity-QuantityDesctiption");
ShowNotify("Save Successfully!", MessageBoxIcon.Success);
}
else
{
cons.KeyId = strRowID;
BLL.QuantityDesctiptionService.UpdateQuantityDesctiption(cons);
BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Modify the Key Quantity-QuantityDesctiption");
ShowNotify("Save Successfully!", MessageBoxIcon.Success);
}
this.SimpleForm1.Reset();
// 重新绑定表格,并点击当前编辑或者新增的行
BindGrid();
//PageContext.RegisterStartupScript(String.Format("F('{0}').selectRow('{1}');", Grid1.ClientID, cons.DisciplinesWBSId));
PageContext.RegisterStartupScript("onNewButtonClick();");
}
else
{
Alert.ShowInTop("The Quantity Desctiption already exists", MessageBoxIcon.Warning);
}
}
#endregion
#region
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Text_TextChanged(object sender, EventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 菜单按钮权限
/// </summary>
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.UserId, BLL.Const.QuantityDesctiptionMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
this.btnAdd.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
this.btnMenuEdit.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnSave))
{
this.btnSave.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnDelete))
{
this.btnDelete.Hidden = false;
}
}
}
#endregion
protected void drpDisciplinesWBSId_SelectedIndexChanged(object sender, EventArgs e)
{
this.txtDisciplinesWBSCode.Text = string.Empty;
if (this.drpDisciplinesWBSId.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpDisciplinesWBSId.SelectedValue))
{
var dis = BLL.DisciplinesWBSService.GetDisciplinesWBSById(this.drpDisciplinesWBSId.SelectedValue);
if (dis != null)
{
this.txtDisciplinesWBSCode.Text = dis.DisciplinesWBSCode;
}
}
}
}
}

View File

@ -0,0 +1,242 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.BaseInfo
{
public partial class QuantityDesctiption
{
/// <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>
/// drpTypes 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpTypes;
/// <summary>
/// drpDescipline 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpDescipline;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.SimpleForm SimpleForm1;
/// <summary>
/// hfFormID 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hfFormID;
/// <summary>
/// drpType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpType;
/// <summary>
/// drpDisciplinesWBSId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpDisciplinesWBSId;
/// <summary>
/// txtDisciplinesWBSCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtDisciplinesWBSCode;
/// <summary>
/// txtQuantityDesctiption 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtQuantityDesctiption;
/// <summary>
/// txtPlanMHRsUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtPlanMHRsUnit;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnAdd 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAdd;
/// <summary>
/// btnDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDelete;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuEdit;
/// <summary>
/// btnMenuDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDelete;
}
}

View File

@ -21,7 +21,7 @@ namespace FineUIPro.Web.Design
string designInputId = Request.Params["designInputId"];
if (!string.IsNullOrEmpty(designInputId))
{
var input = BLL.DesignInputService.GetDesignInputById(designInputId);
var project = BLL.EProjectService.GeteProjectById(input.EProjectId);
@ -159,7 +159,7 @@ namespace FineUIPro.Web.Design
Alert.ShowInTop("请选择提出人!", MessageBoxIcon.Warning);
return;
}
if (drpReceivedMan.SelectedValue != BLL.Const._Null)
{
receivedMan = drpReceivedMan.SelectedValue;
@ -196,21 +196,23 @@ namespace FineUIPro.Web.Design
var input = BLL.DesignInputService.GetDesignInputById(designInputId);
var project = BLL.EProjectService.GeteProjectById(input.EProjectId);
NameValueCollection nameValue = new NameValueCollection();
nameValue.Add("projectNo", project.ProjectControl_JobNo);
nameValue.Add("IssuedDiscOrNo", project.ProjectControl_JobNo + "-" + project.ProjectControl_JobTitle + "," + input.DesignInputChName + " " + input.DesignInputEnName + " " + input.DesignInputNo);
nameValue.Add("Person_Ch", CurrUser.ChineseName);
nameValue.Add("Person_En", CurrUser.UserName);
if (!string.IsNullOrEmpty(issuedMan))
if (input != null)
{
Model.Sys_User sys_User = new Model.Sys_User();
sys_User = BLL.Sys_UserService.GetUsersByUserId(issuedMan);
nameValue.Add("UserName", sys_User.UserName);
List<Model.Sys_User> list = new List<Model.Sys_User>();
NameValueCollection nameValue = new NameValueCollection();
nameValue.Add("projectNo", project.ProjectControl_JobNo);
nameValue.Add("IssuedDiscOrNo", project.ProjectControl_JobNo + "-" + project.ProjectControl_JobTitle + "," + input.DesignInputChName + " " + input.DesignInputEnName + " " + input.DesignInputNo);
nameValue.Add("Person_Ch", CurrUser.ChineseName);
nameValue.Add("Person_En", CurrUser.UserName);
if (!string.IsNullOrEmpty(issuedMan))
{
Model.Sys_User sys_User = new Model.Sys_User();
sys_User = BLL.Sys_UserService.GetUsersByUserId(issuedMan);
nameValue.Add("UserName", sys_User.UserName);
List<Model.Sys_User> list = new List<Model.Sys_User>();
list.Add(sys_User);
EmailSendMessage(BLL.Const.DesignInputString, nameValue, BLL.Const.CustomString, list, "");
list.Add(sys_User);
EmailSendMessage(BLL.Const.DesignInputString, nameValue, BLL.Const.CustomString, list, "");
}
}
#endregion
ShowNotify("Save Successfully!", MessageBoxIcon.Success);

View File

@ -22,7 +22,7 @@
<f:FormRow ColumnWidths="25% 24% 27% 24%">
<Items>
<f:TextBox ID="txtJobNo" runat="server" Label="Job No." LabelWidth="120px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtNotesLink" runat="server" Label="Notes Link" LabelWidth="120px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtNotesLink" runat="server" Label="SharePoint Link" LabelWidth="120px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtProjectManager" runat="server" Label="Project Manager" LabelWidth="160px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtAccount" runat="server" Label="Account No." LabelWidth="130px" Readonly="true"></f:TextBox>
</Items>
@ -966,6 +966,60 @@
</f:Grid>
</Items>
</f:GroupPanel>
<f:GroupPanel ID="GroupPanelKeyQuantity" runat="server" Title="Key Quantity Editor" EnableCollapse="true">
<Items>
<f:Grid ID="GridKeyQuantity" ShowBorder="true" ShowHeader="false" Title="Key Quantity Editor" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="KeyQuantityId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="KeyQuantityId" AllowSorting="true" SortField="DepartName,DisciplinesWBSName"
SortDirection="ASC" OnSort="GridKeyQuantity_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="GridKeyQuantity_PageIndexChange">
<Columns>
<f:RenderField Width="120px" ColumnID="ProjectControl_JobNo" DataField="ProjectControl_JobNo" SortField="ProjectControl_JobNo"
FieldType="String" HeaderText="Job No" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="DepartName" DataField="DepartName" SortField="DepartName"
FieldType="String" HeaderText="Type" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="DisciplinesWBSCode" DataField="DisciplinesWBSCode"
SortField="DisciplinesWBSCode" FieldType="String" HeaderText="Identifier" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="DisciplinesWBSName" DataField="DisciplinesWBSName"
FieldType="String" HeaderText="Descipline" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="QuantityDesctiption" DataField="QuantityDesctiption"
FieldType="String" HeaderText="Quantity Desctiption" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="InputQuantity" DataField="InputQuantity"
FieldType="String" HeaderText="Input Quantity" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsUnit" DataField="PlanMHRsUnit"
FieldType="String" HeaderText="Plan MHRs/Unit" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="PlanMHRs" DataField="PlanMHRs"
FieldType="String" HeaderText="Plan MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsSummary" DataField="PlanMHRsSummary"
FieldType="String" HeaderText="Plan MHRs Summary" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ActualMHRs" DataField="ActualMHRs"
FieldType="String" HeaderText="Actual MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator6" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText6" runat="server" Text="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlKeyQuantity" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlKeyQuantity_SelectedIndexChanged">
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:GroupPanel>
</Items>
</f:Panel>
</form>

View File

@ -406,6 +406,10 @@ namespace FineUIPro.Web.EditorManage
#region FCR Log
BindGridFCRLog();
#endregion
#region Key Quantity
BindGridKeyQuantity();
#endregion
}
}
}
@ -698,6 +702,58 @@ namespace FineUIPro.Web.EditorManage
}
#endregion
#endregion
#region Key Quantity
private void BindGridKeyQuantity()
{
List<SqlParameter> listStr = new List<SqlParameter>
{
new SqlParameter("@eprojectId", Request.Params["eProjectId"])
};
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunProc("Proc_KeyQuantityLists", parameter);
this.GridKeyQuantity.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(GridKeyQuantity, tb);
GridKeyQuantity.DataSource = table;
GridKeyQuantity.DataBind();
}
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GridKeyQuantity_PageIndexChange(object sender, GridPageEventArgs e)
{
GridKeyQuantity.PageIndex = e.NewPageIndex;
BindGridKeyQuantity();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlKeyQuantity_SelectedIndexChanged(object sender, EventArgs e)
{
GridKeyQuantity.PageSize = Convert.ToInt32(ddlKeyQuantity.SelectedValue);
BindGridKeyQuantity();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GridKeyQuantity_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
GridKeyQuantity.SortDirection = e.SortDirection;
GridKeyQuantity.SortField = e.SortField;
BindGridKeyQuantity();
}
#endregion
#endregion
#endregion
#endregion
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,214 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="KeyQuantityEditor.aspx.cs" Inherits="FineUIPro.Web.EditorManage.KeyQuantityEditor" %>
<!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>Key Quantity Editor</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" ShowHeader="false" Title="Key Quantity Editor" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="EProjectId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="EProjectId" AllowSorting="true" SortField="ProjectControl_JobNo"
SortDirection="DESC" OnSort="Grid1_Sort" EnableRowSelectEvent="true" OnRowSelect="Grid1_RowSelect"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="true" AllowFilters="true" OnFilterChange="Grid1_FilterChange">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server">
<Items>
<f:DropDownList ID="drpJobType" runat="server" AutoPostBack="true" OnSelectedIndexChanged="drpJobType_SelectedIndexChanged" NextFocusControl="btnSearch"></f:DropDownList>
<f:DropDownList ID="drpJobStatus" runat="server" NextFocusControl="btnSearch"></f:DropDownList>
<f:TextBox ID="txtJobNO" runat="server" EmptyText="Enter the Job No." AutoPostBack="true" NextFocusControl="btnSearch"></f:TextBox>
<f:Button ID="btnSearch" runat="server" Icon="SystemSearch" Text="Search" OnClick="btnSearch_Click"></f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnEdit" ToolTip="Modify" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Text="Edit" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="120px" ColumnID="ProjectControl_JobNo" DataField="ProjectControl_JobNo" EnableFilter="true"
SortField="ProjectControl_JobNo" FieldType="String" HeaderText="Job No." HeaderTextAlign="Center" TextAlign="Left">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList1" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ProjectControl_JobType" DataField="ProjectControl_JobType" SortField="ProjectControl_JobType"
FieldType="String" HeaderText="Job Type" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList2" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="250px" ColumnID="ProjectControl_JobTitle" DataField="ProjectControl_JobTitle" SortField="ProjectControl_JobTitle"
FieldType="String" HeaderText="Job Title" HeaderTextAlign="Center" ExpandUnusedSpace="true" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList3" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ProjectControl_JobStatus" DataField="ProjectControl_JobStatus" SortField="ProjectControl_JobStatus"
FieldType="String" HeaderText="Job Status" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList4" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ProjectControl_BUCode" DataField="ProjectControl_BUCode"
FieldType="String" HeaderText="Bu.Code" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList5" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="PM_General_Priority" DataField="PM_General_Priority"
FieldType="String" HeaderText="Priority" HeaderTextAlign="Center" EnableFilter="true" >
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList6" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="PM_General_Category" DataField="PM_General_Category"
FieldType="String" HeaderText="Category" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList7" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
<Items>
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="Key Quantity" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="KeyQuantityId" AllowCellEditing="true" EnableColumnLines="true" DataIDField="KeyQuantityId" AllowSorting="true" SortField="Type,Identifier,Discipline"
SortDirection="ASC" OnSort="Grid2_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid2_PageIndexChange" EnableTextSelection="true">
<Columns>
<f:RenderField Width="140px" ColumnID="ProjectControl_JobNo" DataField="ProjectControl_JobNo" SortField="ProjectControl_JobNo"
FieldType="String" HeaderText="Job No" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Type" DataField="Type" SortField="Type"
FieldType="String" HeaderText="Type" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="Identifier" DataField="Identifier"
SortField="Identifier" FieldType="String" HeaderText="Identifier" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Discipline" DataField="Descipline"
FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="QuantityDesctiption" DataField="QuantityDesctiption"
FieldType="String" HeaderText="Quantity Description" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="InputQuantity" DataField="InputQuantity"
FieldType="String" HeaderText="Input Quantity" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsUnit" DataField="PlanMHRsUnit"
FieldType="String" HeaderText="Plan MHRs/Unit" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="PlanMHRs" DataField="PlanMHRs"
FieldType="String" HeaderText="Plan MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsSummary" DataField="PlanMHRsSummary"
FieldType="String" HeaderText="Plan MHRs Summary" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ActualMHRs" DataField="ActualMHRs"
FieldType="String" HeaderText="Actual MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator2" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText2" runat="server" Text="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize2" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize2_SelectedIndexChanged">
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="Key Quantity Editor" Hidden="true" EnableIFrame="true" EnableMaximize="false"
Target="Parent" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
Width="1200px" Height="650px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuView" OnClick="btnMenuView_Click" EnablePostBack="true"
Icon="Find" runat="server" Text="View">
</f:MenuButton>
</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;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>

View File

@ -0,0 +1,460 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.EditorManage
{
public partial class KeyQuantityEditor : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
// 表头过滤
FilterDataRowItem = FilterDataRowItemImplement;
if (!IsPostBack)
{
GetButtonPower();//权限设置
//项目类型
this.drpJobType.DataTextField = "ConstText";
this.drpJobType.DataValueField = "ConstValue";
this.drpJobType.DataSource = BLL.ConstService.GetConstListByGroupId(BLL.Const.ProjectPlanner_JobType);
this.drpJobType.DataBind();
Funs.FineUIPleaseSelectJobType(this.drpJobType);
//项目状态
this.drpJobStatus.DataTextField = "ConstText";
this.drpJobStatus.DataValueField = "ConstValue";
this.drpJobStatus.DataSource = BLL.ConstService.GetConstListByGroupId(BLL.Const.ProjectPlanner_JobStatus);
this.drpJobStatus.DataBind();
Funs.FineUIPleaseSelectJobStatus(this.drpJobStatus);
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = "SELECT EProjectId," +
"ProjectControl_JobNo," +
"ProjectControl_JobType," +
"ProjectControl_JobStatus," +
"ProjectControl_JobTitle," +
"ProjectControl_BUCode," +
"PM_General_Priority," +
"PM_General_Category " +
"FROM dbo.Editor_EProject WHERE 1=1 ";
List<SqlParameter> listStr = new List<SqlParameter>();
if (this.drpJobType.SelectedValue != BLL.Const._Null)
{
strSql += " AND ProjectControl_JobType=@JobType ";
listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text));
}
if (this.drpJobStatus.SelectedValue != BLL.Const._Null && this.drpJobStatus.SelectedValue != null)
{
strSql += " AND ProjectControl_JobStatus=@Status ";
listStr.Add(new SqlParameter("@Status", this.drpJobStatus.SelectedItem.Text));
}
if (!string.IsNullOrEmpty(this.txtJobNO.Text.Trim()))
{
strSql += " AND ProjectControl_JobNo LIKE @jobNO ";
listStr.Add(new SqlParameter("@jobNO", this.txtJobNO.Text.Trim() + "%"));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
//var table = this.GetPagedDataTable(Grid1, tb1);
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 Grid1_FilterChange(object sender, EventArgs e)
{
BindGrid();
}
/// <summary>
/// 根据表头信息过滤列表数据
/// </summary>
/// <param name="sourceObj"></param>
/// <param name="fillteredOperator"></param>
/// <param name="fillteredObj"></param>
/// <param name="column"></param>
/// <returns></returns>
private bool FilterDataRowItemImplement(object sourceObj, string fillteredOperator, object fillteredObj, string column)
{
bool valid = false;
if (column == "ProjectControl_JobNo")
{
string sourceValue = sourceObj.ToString();
string fillteredValue = fillteredObj.ToString();
if (fillteredOperator == "equal" && sourceValue == fillteredValue)
{
valid = true;
}
else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
{
valid = true;
}
}
if (column == "ProjectControl_JobType")
{
string sourceValue = sourceObj.ToString();
string fillteredValue = fillteredObj.ToString();
if (fillteredOperator == "equal" && sourceValue == fillteredValue)
{
valid = true;
}
else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
{
valid = true;
}
}
if (column == "ProjectControl_JobTitle")
{
string sourceValue = sourceObj.ToString();
string fillteredValue = fillteredObj.ToString();
if (fillteredOperator == "equal" && sourceValue == fillteredValue)
{
valid = true;
}
else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
{
valid = true;
}
}
if (column == "ProjectControl_JobStatus")
{
string sourceValue = sourceObj.ToString();
string fillteredValue = fillteredObj.ToString();
if (fillteredOperator == "equal" && sourceValue == fillteredValue)
{
valid = true;
}
else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
{
valid = true;
}
}
if (column == "ProjectControl_BUCode")
{
string sourceValue = sourceObj.ToString();
string fillteredValue = fillteredObj.ToString();
if (fillteredOperator == "equal" && sourceValue == fillteredValue)
{
valid = true;
}
else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
{
valid = true;
}
}
if (column == "PM_General_Priority")
{
string sourceValue = sourceObj.ToString();
string fillteredValue = fillteredObj.ToString();
if (fillteredOperator == "equal" && sourceValue == fillteredValue)
{
valid = true;
}
else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
{
valid = true;
}
}
if (column == "PM_General_Category")
{
string sourceValue = sourceObj.ToString();
string fillteredValue = fillteredObj.ToString();
if (fillteredOperator == "equal" && sourceValue == fillteredValue)
{
valid = true;
}
else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
{
valid = true;
}
}
return valid;
}
#endregion
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <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_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 Window1_Close(object sender, EventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 编辑
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnEdit_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("Please select at least one record!");
return;
}
string Id = Grid1.SelectedRowID;
var eproject = BLL.EProjectService.GeteProjectById(Id);
if (eproject != null)
{
Window1.Title = "Key Quantity Editor(Job No. " + eproject.ProjectControl_JobNo + ")";
}
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("KeyQuantityEditorList.aspx?eProjectId={0}", Id, "编辑 - ")));
}
/// <summary>
/// 右键编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
btnEdit_Click(null, null);
}
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
btnEdit_Click(null, null);
}
#endregion
#region
/// <summary>
/// 判断是否可以删除
/// </summary>
/// <returns></returns>
private bool judgementDelete(string id, bool isShow)
{
string content = string.Empty;
if (string.IsNullOrEmpty(content))
{
return true;
}
else
{
if (isShow)
{
Alert.ShowInTop(content);
}
return false;
}
}
#endregion
#region
protected void drpJobType_SelectedIndexChanged(object sender, EventArgs e)
{
this.drpJobStatus.Items.Clear();
if (drpJobType.SelectedText == "Other")
{
BLL.ConstService.InitConstValueProjectStatus(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, "3", true);
}
if (drpJobType.SelectedText != "Other")
{
BLL.ConstService.InitConstValueProjectStatus(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, "2", true);
}
}
/// <summary>
/// 下拉框选择事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSearch_Click(object sender, EventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 菜单按钮权限
/// </summary>
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.UserId, BLL.Const.KeyQuantityMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnModify))
{
this.btnEdit.Hidden = false;
this.btnMenuEdit.Hidden = false;
this.Grid1.EnableRowDoubleClickEvent = true;
}
else
{
this.Grid1.EnableRowDoubleClickEvent = false;
}
}
}
#endregion
#region Grid1加载Grid2
/// <summary>
/// Grid1行选择事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowSelect(object sender, GridRowSelectEventArgs e)
{
string eProjectId = this.Grid1.SelectedRowID;
BindGrid2(eProjectId);
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid2(string eProjectId)
{
List<SqlParameter> listStr = new List<SqlParameter>
{
new SqlParameter("@eprojectId", eProjectId)
};
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunProc("Proc_KeyQuantityLists", parameter);
this.Grid2.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid2, tb);
Grid2.DataSource = table;
Grid2.DataBind();
}
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid2_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid2.PageIndex = e.NewPageIndex;
BindGrid2(this.Grid1.SelectedRowID);
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize2_SelectedIndexChanged(object sender, EventArgs e)
{
Grid2.PageSize = Convert.ToInt32(ddlPageSize2.SelectedValue);
BindGrid2(this.Grid1.SelectedRowID);
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid2_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
Grid2.SortDirection = e.SortDirection;
Grid2.SortField = e.SortField;
BindGrid2(this.Grid1.SelectedRowID);
}
#endregion
#endregion
#region
/// <summary>
/// 查看
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuView_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("Please select at least one record!");
return;
}
string Id = Grid1.SelectedRowID;
var eproject = BLL.EProjectService.GeteProjectById(Id);
if (eproject != null)
{
Window1.Title = "Key Quantity Editor(Job No. " + eproject.ProjectControl_JobNo + ")";
}
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("KeyQuantityEditorList.aspx?eProjectId={0}&view=1", Id, "编辑 - ")));
}
#endregion
}
}

View File

@ -0,0 +1,287 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.EditorManage
{
public partial class KeyQuantityEditor
{
/// <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>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// drpJobType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpJobType;
/// <summary>
/// drpJobStatus 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpJobStatus;
/// <summary>
/// txtJobNO 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtJobNO;
/// <summary>
/// btnSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEdit;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// DropDownList1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList1;
/// <summary>
/// DropDownList2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList2;
/// <summary>
/// DropDownList3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList3;
/// <summary>
/// DropDownList4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList4;
/// <summary>
/// DropDownList5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList5;
/// <summary>
/// DropDownList6 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList6;
/// <summary>
/// DropDownList7 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList7;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Grid2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid2;
/// <summary>
/// ToolbarSeparator2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator2;
/// <summary>
/// ToolbarText2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText2;
/// <summary>
/// ddlPageSize2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize2;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuEdit;
/// <summary>
/// btnMenuView 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuView;
}
}

View File

@ -0,0 +1,106 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="KeyQuantityEditorEdit.aspx.cs" Inherits="FineUIPro.Web.EditorManage.KeyQuantityEditorEdit" %>
<!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>Key Quantity Editor Edit</title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" BodyPadding="10px" Margin="5px 5px 5px 5px" AutoScroll="true" runat="server" EnableCollapse="true" Title="FCR Log" ShowHeader="false">
<Items>
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right" BodyPadding="10px">
<Rows>
<f:FormRow>
<Items>
<%--<f:DropDownBox runat="server" ID="drpKeyId" LabelWidth="120px" EmptyText="请从下拉表格中选择" Label="Type" MatchFieldWidth="false" AutoPostBack="true" OnTextChanged="drpKeyId_TextChanged">
<PopPanel>
<f:Grid ID="Grid1" Width="650px" Height="300px" Hidden="true"
DataIDField="KeyId" DataTextField="DepartName"
PageSize="10" ShowBorder="true" ShowHeader="false"
AllowPaging="true" IsDatabasePaging="true" runat="server"
DataKeyNames="KeyId"
AllowSorting="true" SortField="DepartName,DisciplinesWBSName" SortDirection="ASC"
OnSort="Grid1_Sort">
<Columns>
<f:RowNumberField />
<f:BoundField Width="90px" DataField="DepartName" SortField="DepartName" HeaderText="Type" />
<f:BoundField Width="80px" SortField="DisciplinesWBSCode" DataField="DisciplinesWBSCode" HeaderText="Identifier" />
<f:BoundField Width="100px" SortField="DisciplinesWBSName" DataField="DisciplinesWBSName" HeaderText="Discipline" />
<f:BoundField Width="100px" SortField="QuantityDesctiption" DataField="QuantityDesctiption" HeaderText="Quantity Description" ExpandUnusedSpace="true" />
<f:BoundField Width="100px" SortField="PlanMHRsUnit" DataField="PlanMHRsUnit" HeaderText="Plan MHRs/Unit" />
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="5" Value="5" />
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
</f:DropDownList>
</PageItems>
<Toolbars>
<f:Toolbar runat="server" Position="Top">
<Items>
<f:TextBox ID="txtSearch" runat="server" ShowLabel="false" EmptyText="Type" Width="300px" AutoPostBack="true" OnTextChanged="txtSearch_TextChanged"></f:TextBox>
</Items>
</f:Toolbar>
</Toolbars>
</f:Grid>
</PopPanel>
</f:DropDownBox>--%>
<f:DropDownList ID="drpType" runat="server" Label="Type" LabelWidth="200px" AutoPostBack="true" OnSelectedIndexChanged="drpType_SelectedIndexChanged" EnableEdit="true"></f:DropDownList>
<f:DropDownList ID="drpIdentifier" runat="server" Label="Identifier" LabelWidth="200px" AutoPostBack="true" OnSelectedIndexChanged="drpIdentifier_SelectedIndexChanged" EnableEdit="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpDescipline" runat="server" Label="Discipline" LabelWidth="200px" AutoPostBack="true" OnSelectedIndexChanged="drpDescipline_SelectedIndexChanged" EnableEdit="true"></f:DropDownList>
<f:DropDownList ID="drpQuantityDesctiption" runat="server" Label="Quantity Description" LabelWidth="200px" AutoPostBack="true" OnSelectedIndexChanged="drpQuantityDesctiption_SelectedIndexChanged" EnableEdit="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpPlanMHRsUnit" runat="server" Label="Plan MHRs/Unit" LabelWidth="200px" EnableEdit="true"></f:DropDownList>
<f:NumberBox ID="txtInputQuantity" runat="server" Label="Input Quantity" LabelWidth="200px" NoNegative="true" AutoPostBack="true" OnTextChanged="txtInputQuantity_TextChanged"></f:NumberBox>
<%--<f:NumberBox ID="txtPlanMHRsUnit" runat="server" Label="Plan MHRs/Unit" LabelWidth="200px" Readonly="true"></f:NumberBox>--%>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox ID="txtPlanMHRs" runat="server" Label="Plan MHRs" LabelWidth="200px" Readonly="true"></f:NumberBox>
<f:NumberBox ID="txtPlanMHRsSummary" runat="server" Label="Plan MHRs Summary" LabelWidth="200px" Readonly="true"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox ID="txtActualMHRs" runat="server" Label="Actual MHRs" LabelWidth="200px" Readonly="true"></f:NumberBox>
<f:Label ID="Label1" runat="server"></f:Label>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="Save" ToolTip="Save" ValidateForms="Panel1"
OnClick="btnSave_Click" Hidden="true">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" ToolTip="Close" Text="Close" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Panel>
</form>
</body>
</html>

View File

@ -0,0 +1,601 @@
using BLL;
using NPOI.SS.Formula.Functions;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
namespace FineUIPro.Web.EditorManage
{
public partial class KeyQuantityEditorEdit : PageBase
{
#region
/// <summary>
/// 主键
/// </summary>
public string KeyQuantityId
{
get
{
return (string)ViewState["KeyQuantityId"];
}
set
{
ViewState["KeyQuantityId"] = value;
}
}
/// <summary>
/// 项目Id
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#endregion
#region
/// <summary>
/// 加载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
//BindGrid();
string view = Request.Params["view"];
if (view == "1")
{
this.btnSave.Hidden = true;
}
else
{
GetButtonPower();
}
BLL.ConstValue.InitSysConstDropDownList(this.drpType, "KeyQuantityType", false);
if (!string.IsNullOrEmpty(this.drpType.SelectedValue) && this.drpType.SelectedValue != BLL.Const._Null)
{
BLL.QuantityDesctiptionService.InitIdentifierDropDownList(this.drpIdentifier, this.drpType.SelectedValue, true);
}
else
{
Funs.FineUIPleaseSelect(this.drpIdentifier,"-请选择-");
}
Funs.FineUIPleaseSelect(this.drpDescipline, "-请选择-");
Funs.FineUIPleaseSelect(this.drpQuantityDesctiption, "-请选择-");
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.ProjectId = Request.Params["eProjectId"];
this.KeyQuantityId = Request.Params["keyQuantityId"];
if (!string.IsNullOrEmpty(this.KeyQuantityId))
{
Model.Editor_KeyQuantity keyQuantity = BLL.KeyQuantityService.GetKeyQuantityById(this.KeyQuantityId);
if (keyQuantity != null)
{
this.ProjectId = keyQuantity.EProjectId;
//this.drpKeyId.Value = keyQuantity.KeyId;
//var key = BLL.QuantityDesctiptionService.GetQuantityDesctiptionById(this.drpKeyId.Value);
//if (key != null)
//{
// if (!string.IsNullOrEmpty(key.DisciplinesWBSId))
// {
// var wbs = BLL.DisciplinesWBSService.GetDisciplinesWBSById(key.DisciplinesWBSId);
// if (wbs != null)
// {
// this.txtIdentifier.Text = wbs.DisciplinesWBSCode;
// this.txtDescipline.Text = wbs.DisciplinesWBSName;
// }
// this.txtPlanMHRsSummary.Text = BLL.KeyQuantityService.GetSumPlanMHRsByKeyId(this.drpKeyId.Value).ToString();
// double? actualHoursSum = (from x in Funs.DB.ManHours_Actual
// where x.EProjectId == this.ProjectId
// && x.Discipline == wbs.DisciplinesWBSName
// select x.Hours).Sum();
// this.txtActualMHRs.Text = actualHoursSum.ToString();
// }
// txtQuantityDesctiption.Text = key.QuantityDesctiption;
// txtPlanMHRsUnit.Text = key.PlanMHRsUnit.HasValue ? key.PlanMHRsUnit.ToString() : "";
//}
if (!string.IsNullOrEmpty(keyQuantity.Type))
{
this.drpType.SelectedValue = keyQuantity.Type;
if (!string.IsNullOrEmpty(keyQuantity.Identifier))
{
this.drpIdentifier.Items.Clear();
BLL.QuantityDesctiptionService.InitIdentifierDropDownList(this.drpIdentifier, keyQuantity.Type, true);
this.drpIdentifier.SelectedValue = keyQuantity.Identifier;
if (!string.IsNullOrEmpty(keyQuantity.Descipline))
{
this.drpDescipline.Items.Clear();
BLL.QuantityDesctiptionService.InitDesciplineDropDownList(this.drpDescipline, true, keyQuantity.Type, keyQuantity.Identifier);
this.drpDescipline.SelectedValue = keyQuantity.Descipline;
if (!string.IsNullOrEmpty(keyQuantity.QuantityDesctiption))
{
this.drpQuantityDesctiption.Items.Clear();
BLL.QuantityDesctiptionService.InitQuantityDesctiptionDropDownList(this.drpQuantityDesctiption, true, keyQuantity.Type, keyQuantity.Identifier, keyQuantity.Descipline);
this.drpQuantityDesctiption.SelectedValue = keyQuantity.QuantityDesctiption;
if (keyQuantity.PlanMHRsUnit.HasValue)
{
this.drpPlanMHRsUnit.Items.Clear();
BLL.QuantityDesctiptionService.InitPlanMHRsUnitDropDownList(this.drpPlanMHRsUnit, true, keyQuantity.Type, keyQuantity.Identifier, keyQuantity.Descipline, keyQuantity.QuantityDesctiption);
this.drpPlanMHRsUnit.SelectedValue = keyQuantity.PlanMHRsUnit.ToString();
}
}
}
}
}
this.txtPlanMHRsSummary.Text = BLL.KeyQuantityService.GetSumPlanMHRsByKeyId(keyQuantity.EProjectId, keyQuantity.Identifier, keyQuantity.Descipline).ToString();
this.txtInputQuantity.Text = keyQuantity.InputQuantity.HasValue ? keyQuantity.InputQuantity.ToString() : "";
this.txtPlanMHRs.Text = keyQuantity.PlanMHRs.HasValue ? keyQuantity.PlanMHRs.ToString() : "";
double? actualHoursSum = (from x in Funs.DB.ManHours_Actual
where x.EProjectId == this.ProjectId
&& x.Discipline == keyQuantity.Descipline
select x.Hours).Sum();
this.txtActualMHRs.Text = actualHoursSum.ToString();
}
}
}
}
#endregion
#region
/// <summary>
/// 数据绑定
/// </summary>
//private void BindGrid()
//{
// string strSql = @"SELECT qd.KeyId,
// qd.DepartId,
// qd.DisciplinesWBSId,
// qd.QuantityDesctiption,
// qd.PlanMHRsUnit,
// d.DepartName,
// wbs.DisciplinesWBSCode,
// wbs.DisciplinesWBSName
// FROM Base_QuantityDesctiption qd
// left join Base_Depart as d on qd.DepartId = d.DepartId
// left join Base_DisciplinesWBS as wbs on wbs.DisciplinesWBSId = qd.DisciplinesWBSId WHERE 1=1";
// List<SqlParameter> listStr = new List<SqlParameter>();
// if (!string.IsNullOrEmpty(this.txtSearch.Text.Trim()))
// {
// strSql += " AND d.DepartName like @DepartName ";
// listStr.Add(new SqlParameter("@DepartName", "%" + this.txtSearch.Text.Trim() + "%"));
// }
// SqlParameter[] parameter = listStr.ToArray();
// DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// // 2.获取当前分页数据
// //var table = this.GetPagedDataTable(Grid1, tb1);
// Grid1.RecordCount = tb.Rows.Count;
// 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 Grid1_PageIndexChange(object sender, GridPageEventArgs e)
//{
// Grid1.PageIndex = e.NewPageIndex;
// BindGrid();
//}
/// <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_Sort(object sender, FineUIPro.GridSortEventArgs e)
//{
// Grid1.SortDirection = e.SortDirection;
// Grid1.SortField = e.SortField;
// BindGrid();
//}
/// <summary>
/// 筛选
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
//protected void txtSearch_TextChanged(object sender, EventArgs e)
//{
// BindGrid();
//}
#endregion
#region
protected void btnSave_Click(object sender, EventArgs e)
{
if (this.drpType.SelectedValue == BLL.Const._Null || string.IsNullOrEmpty(this.drpType.SelectedValue))
{
ShowAlert("Please select Type!", MessageBoxIcon.Warning);
return;
}
if (this.drpIdentifier.SelectedValue == BLL.Const._Null || string.IsNullOrEmpty(this.drpIdentifier.SelectedValue))
{
ShowAlert("Please select Identifier!", MessageBoxIcon.Warning);
return;
}
if (this.drpDescipline.SelectedValue == BLL.Const._Null || string.IsNullOrEmpty(this.drpDescipline.SelectedValue))
{
ShowAlert("Please select Descipline!", MessageBoxIcon.Warning);
return;
}
if (this.drpQuantityDesctiption.SelectedValue == BLL.Const._Null || string.IsNullOrEmpty(this.drpQuantityDesctiption.SelectedValue))
{
ShowAlert("Please select Quantity Desctiption!", MessageBoxIcon.Warning);
return;
}
Model.Editor_KeyQuantity newKeyQuantity = new Model.Editor_KeyQuantity();
newKeyQuantity.Type = this.drpType.SelectedValue;
newKeyQuantity.InputQuantity = Funs.GetNewDecimal(this.txtInputQuantity.Text);
newKeyQuantity.PlanMHRs = Funs.GetNewDecimal(this.txtPlanMHRs.Text);
newKeyQuantity.Identifier = this.drpIdentifier.SelectedText;
newKeyQuantity.Descipline = this.drpDescipline.SelectedText;
newKeyQuantity.QuantityDesctiption = this.drpQuantityDesctiption.SelectedText;
newKeyQuantity.PlanMHRsUnit = Funs.GetNewDecimal(this.drpPlanMHRsUnit.SelectedText);
if (!string.IsNullOrEmpty(this.KeyQuantityId))
{
newKeyQuantity.KeyQuantityId = this.KeyQuantityId;
BLL.KeyQuantityService.UpdateKeyQuantity(newKeyQuantity);
BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Modify Key Quantity Editor information!");
ShowNotify("Save Successfully!", MessageBoxIcon.Success);
}
else
{
newKeyQuantity.EProjectId = ProjectId;
this.KeyQuantityId = SQLHelper.GetNewID(typeof(Model.Editor_KeyQuantity));
newKeyQuantity.KeyQuantityId = this.KeyQuantityId;
BLL.KeyQuantityService.AddKeyQuantity(newKeyQuantity);
BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Add Key Quantity Editor information!");
ShowNotify("Save Successfully!", MessageBoxIcon.Success);
}
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
#endregion
#region DropDownList下拉选择事件
/// <summary>
/// 部门下拉选择事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
//protected void drpKeyId_TextChanged(object sender, EventArgs e)
//{
// this.txtIdentifier.Text = string.Empty;
// this.txtDescipline.Text = string.Empty;
// this.txtQuantityDesctiption.Text = string.Empty;
// this.txtPlanMHRsUnit.Text = string.Empty;
// this.txtPlanMHRsSummary.Text = string.Empty;
// if (!string.IsNullOrEmpty(this.drpKeyId.Value))
// {
// var key = BLL.QuantityDesctiptionService.GetQuantityDesctiptionById(this.drpKeyId.Value);
// if (key != null)
// {
// if (!string.IsNullOrEmpty(key.DisciplinesWBSId))
// {
// var wbs = BLL.DisciplinesWBSService.GetDisciplinesWBSById(key.DisciplinesWBSId);
// if (wbs != null)
// {
// this.txtIdentifier.Text = wbs.DisciplinesWBSCode;
// this.txtDescipline.Text = wbs.DisciplinesWBSName;
// }
// decimal? s = BLL.KeyQuantityService.GetSumPlanMHRsByKeyId(this.drpKeyId.Value);
// this.txtPlanMHRsSummary.Text = (s + Funs.GetNewDecimal(this.txtPlanMHRs.Text)).ToString();
// double? actualHoursSum = (from x in Funs.DB.ManHours_Actual
// where x.EProjectId == this.ProjectId
// && x.Discipline == wbs.DisciplinesWBSName
// select x.Hours).Sum();
// this.txtActualMHRs.Text = actualHoursSum.ToString();
// }
// txtQuantityDesctiption.Text = key.QuantityDesctiption;
// txtPlanMHRsUnit.Text = key.PlanMHRsUnit.HasValue ? key.PlanMHRsUnit.ToString() : "";
// }
// }
//}
/// <summary>
/// Input Quantity输入事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtInputQuantity_TextChanged(object sender, EventArgs e)
{
this.txtPlanMHRs.Text = string.Empty;
this.txtPlanMHRsSummary.Text = string.Empty;
if (!string.IsNullOrEmpty(this.txtInputQuantity.Text.Trim()))
{
this.txtPlanMHRs.Text = (Funs.GetNewDecimal(this.txtInputQuantity.Text) * Funs.GetNewDecimal(this.drpPlanMHRsUnit.SelectedText)).ToString();
decimal? s = BLL.KeyQuantityService.GetSumPlanMHRsByKeyId(this.ProjectId ,this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue);
if (s > 0)
{
this.txtPlanMHRsSummary.Text = (s + Funs.GetNewDecimal(this.txtPlanMHRs.Text)).ToString();
}
else
{
this.txtPlanMHRsSummary.Text = this.txtPlanMHRs.Text;
}
}
}
/// <summary>
/// Type 下拉选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void drpType_SelectedIndexChanged(object sender, EventArgs e)
{
this.drpIdentifier.Items.Clear();
this.drpDescipline.Items.Clear();
this.drpQuantityDesctiption.Items.Clear();
this.drpPlanMHRsUnit.Items.Clear();
if (this.drpType.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpType.SelectedValue))
{
BLL.QuantityDesctiptionService.InitIdentifierDropDownList(this.drpIdentifier, this.drpType.SelectedValue, true);
if (this.drpIdentifier.Items.Count == 2)
{
this.drpIdentifier.SelectedIndex = 1;
BLL.QuantityDesctiptionService.InitDesciplineDropDownList(this.drpDescipline, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue);
if (this.drpDescipline.Items.Count == 2)
{
this.drpDescipline.SelectedIndex = 1;
BLL.QuantityDesctiptionService.InitQuantityDesctiptionDropDownList(this.drpQuantityDesctiption, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue);
if (this.drpQuantityDesctiption.Items.Count == 2)
{
this.drpQuantityDesctiption.SelectedIndex = 1;
BLL.QuantityDesctiptionService.InitPlanMHRsUnitDropDownList(this.drpPlanMHRsUnit, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue, this.drpQuantityDesctiption.SelectedValue);
if (this.drpPlanMHRsUnit.Items.Count == 2)
{
this.drpPlanMHRsUnit.SelectedIndex = 1;
double? actualHoursSum = (from x in Funs.DB.ManHours_Actual
where x.EProjectId == this.ProjectId
&& x.Discipline == this.drpDescipline.SelectedValue
select x.Hours).Sum();
this.txtActualMHRs.Text = actualHoursSum.ToString();
}
else
{
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
this.drpDescipline.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpQuantityDesctiption, "-请选择-");
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
this.drpIdentifier.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpDescipline, "-请选择-");
this.drpDescipline.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpQuantityDesctiption, "-请选择-");
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
Funs.FineUIPleaseSelect(this.drpIdentifier, "-请选择-");
this.drpIdentifier.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpDescipline, "-请选择-");
this.drpDescipline.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpQuantityDesctiption, "-请选择-");
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
/// <summary>
/// Identifier 下拉选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void drpIdentifier_SelectedIndexChanged(object sender, EventArgs e)
{
this.drpDescipline.Items.Clear();
this.drpQuantityDesctiption.Items.Clear();
this.drpPlanMHRsUnit.Items.Clear();
if (this.drpIdentifier.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpIdentifier.SelectedValue) && this.drpType.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpType.SelectedValue))
{
BLL.QuantityDesctiptionService.InitDesciplineDropDownList(this.drpDescipline, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue);
if (this.drpDescipline.Items.Count == 2)
{
this.drpDescipline.SelectedIndex = 1;
double? actualHoursSum = (from x in Funs.DB.ManHours_Actual
where x.EProjectId == this.ProjectId
&& x.Discipline == this.drpDescipline.SelectedValue
select x.Hours).Sum();
this.txtActualMHRs.Text = actualHoursSum.ToString();
BLL.QuantityDesctiptionService.InitQuantityDesctiptionDropDownList(this.drpQuantityDesctiption, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue);
if (this.drpQuantityDesctiption.Items.Count == 2)
{
this.drpQuantityDesctiption.SelectedIndex = 1;
BLL.QuantityDesctiptionService.InitPlanMHRsUnitDropDownList(this.drpPlanMHRsUnit, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue, this.drpQuantityDesctiption.SelectedValue);
if (this.drpPlanMHRsUnit.Items.Count == 2)
{
this.drpPlanMHRsUnit.SelectedIndex = 1;
double? actualHoursSum2 = (from x in Funs.DB.ManHours_Actual
where x.EProjectId == this.ProjectId
&& x.Discipline == this.drpDescipline.SelectedValue
select x.Hours).Sum();
this.txtActualMHRs.Text = actualHoursSum2.ToString();
}
else
{
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
this.drpDescipline.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpQuantityDesctiption, "-请选择-");
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
Funs.FineUIPleaseSelect(this.drpDescipline, "-请选择-");
this.drpDescipline.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpQuantityDesctiption, "-请选择-");
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
/// <summary>
/// Descipline下拉选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void drpDescipline_SelectedIndexChanged(object sender, EventArgs e)
{
this.txtActualMHRs.Text = string.Empty;
this.drpQuantityDesctiption.Items.Clear();
this.drpPlanMHRsUnit.Items.Clear();
if (this.drpType.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpType.SelectedValue) && this.drpIdentifier.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpIdentifier.SelectedValue) && this.drpDescipline.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpDescipline.SelectedValue))
{
BLL.QuantityDesctiptionService.InitQuantityDesctiptionDropDownList(this.drpQuantityDesctiption, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue);
if (this.drpQuantityDesctiption.Items.Count == 2)
{
this.drpQuantityDesctiption.SelectedIndex = 1;
BLL.QuantityDesctiptionService.InitPlanMHRsUnitDropDownList(this.drpPlanMHRsUnit, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue, this.drpQuantityDesctiption.SelectedValue);
if (this.drpPlanMHRsUnit.Items.Count == 2)
{
this.drpPlanMHRsUnit.SelectedIndex = 1;
}
else
{
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
double? actualHoursSum = (from x in Funs.DB.ManHours_Actual
where x.EProjectId == this.ProjectId
&& x.Discipline == this.drpDescipline.SelectedValue
select x.Hours).Sum();
this.txtActualMHRs.Text = actualHoursSum.ToString();
}
else
{
Funs.FineUIPleaseSelect(this.drpQuantityDesctiption, "-请选择-");
this.drpQuantityDesctiption.SelectedIndex = 0;
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
/// <summary>
/// Quantity Desctiption下拉选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void drpQuantityDesctiption_SelectedIndexChanged(object sender, EventArgs e)
{
this.drpPlanMHRsUnit.Items.Clear();
if (this.drpType.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpType.SelectedValue) && this.drpIdentifier.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpIdentifier.SelectedValue) && this.drpDescipline.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpDescipline.SelectedValue) && this.drpQuantityDesctiption.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpQuantityDesctiption.SelectedValue))
{
BLL.QuantityDesctiptionService.InitPlanMHRsUnitDropDownList(this.drpPlanMHRsUnit, true, this.drpType.SelectedValue, this.drpIdentifier.SelectedValue, this.drpDescipline.SelectedValue, this.drpQuantityDesctiption.SelectedValue);
if (this.drpPlanMHRsUnit.Items.Count == 2)
{
this.drpPlanMHRsUnit.SelectedIndex = 1;
}
else
{
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
else
{
Funs.FineUIPleaseSelect(this.drpPlanMHRsUnit, "-请选择-");
this.drpPlanMHRsUnit.SelectedIndex = 0;
}
}
#endregion
#region
/// <summary>
/// 菜单按钮权限
/// </summary>
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.UserId, BLL.Const.KeyQuantityMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnSave))
{
this.btnSave.Hidden = false;
}
}
}
#endregion
}
}

View File

@ -0,0 +1,170 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.EditorManage
{
public partial class KeyQuantityEditorEdit
{
/// <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>
/// Form2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form2;
/// <summary>
/// drpType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpType;
/// <summary>
/// drpIdentifier 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpIdentifier;
/// <summary>
/// drpDescipline 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpDescipline;
/// <summary>
/// drpQuantityDesctiption 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpQuantityDesctiption;
/// <summary>
/// drpPlanMHRsUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpPlanMHRsUnit;
/// <summary>
/// txtInputQuantity 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtInputQuantity;
/// <summary>
/// txtPlanMHRs 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtPlanMHRs;
/// <summary>
/// txtPlanMHRsSummary 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtPlanMHRsSummary;
/// <summary>
/// txtActualMHRs 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtActualMHRs;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
}
}

View File

@ -0,0 +1,114 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="KeyQuantityEditorList.aspx.cs" Inherits="FineUIPro.Web.EditorManage.KeyQuantityEditorList" %>
<!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>Key Quantity Editor List</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" ShowHeader="false" Title="Key Quantity" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="KeyQuantityId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="KeyQuantityId" AllowSorting="true" SortField="Type,Identifier,Discipline"
SortDirection="ASC" OnSort="Grid1_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="true">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:Button ID="btnNew" ToolTip="Add" Text="Add" Icon="Add" EnablePostBack="false" runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnEdit" ToolTip="Modify" Text="Modify" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Hidden="true">
</f:Button>
<f:Button ID="btnDelete" ToolTip="Delete" Text="Delete" Icon="Delete" ConfirmText="Make sure to delete the current data?" OnClick="btnDelete_Click"
runat="server" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RenderField Width="120px" ColumnID="ProjectControl_JobNo" DataField="ProjectControl_JobNo" SortField="ProjectControl_JobNo"
FieldType="String" HeaderText="Job No" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Type" DataField="Type" SortField="Type"
FieldType="String" HeaderText="Type" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="Identifier" DataField="Identifier"
SortField="Identifier" FieldType="String" HeaderText="Identifier" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Discipline" DataField="Discipline"
FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="QuantityDesctiption" DataField="QuantityDesctiption"
FieldType="String" HeaderText="Quantity Description" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="InputQuantity" DataField="InputQuantity"
FieldType="String" HeaderText="Input Quantity" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsUnit" DataField="PlanMHRsUnit"
FieldType="String" HeaderText="Plan MHRs/Unit" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="PlanMHRs" DataField="PlanMHRs"
FieldType="String" HeaderText="Plan MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsSummary" DataField="PlanMHRsSummary"
FieldType="String" HeaderText="Plan MHRs Summary" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ActualMHRs" DataField="ActualMHRs"
FieldType="String" HeaderText="Actual MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="Key Quantity Editor" Hidden="true" EnableIFrame="true" EnableMaximize="false"
Target="Parent" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
Width="1000px" Height="400px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete selected row?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuView" OnClick="btnMenuView_Click" EnablePostBack="true"
Icon="Find" runat="server" Text="View">
</f:MenuButton>
</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;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>

View File

@ -0,0 +1,277 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.EditorManage
{
public partial class KeyQuantityEditorList : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string view = Request.Params["view"];
if (view == "1")
{
this.btnNew.Hidden = true;
this.btnEdit.Hidden = true;
this.btnMenuEdit.Hidden = true;
this.btnDelete.Hidden = true;
this.btnMenuDelete.Hidden = true;
}
else
{
GetButtonPower();//权限设置
}
btnNew.OnClientClick = Window1.GetShowReference("KeyQuantityEditorEdit.aspx?eProjectId=" + Request.Params["eProjectId"]) + "return false;";
btnDelete.OnClientClick = Grid1.GetNoSelectionAlertReference("Please select at least one item!");
btnDelete.ConfirmText = String.Format("Are you sure you want to delete the selected &nbsp;<b><script>{0}</script></b>&nbsp;rows?", Grid1.GetSelectedCountReference());
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
List<SqlParameter> listStr = new List<SqlParameter>
{
new SqlParameter("@eprojectId", Request.Params["eProjectId"])
};
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunProc("Proc_KeyQuantityLists", parameter);
this.Grid1.RecordCount = tb.Rows.Count;
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 btnDelete_Click(object sender, EventArgs e)
{
this.DeleteData();
}
/// <summary>
/// 右键删除事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
this.DeleteData();
}
/// <summary>
/// 删除方法
/// </summary>
private void DeleteData()
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var role = BLL.KeyQuantityService.GetKeyQuantityById(rowID);
if (role != null)
{
if (judgementDelete(rowID, false))
{
BLL.KeyQuantityService.DeleteKeyQuantityById(rowID);
BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Delete Key Quantity Editor information");
ShowNotify("Deleted successfully!");
BindGrid();
}
}
}
}
}
#endregion
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <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_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 Window1_Close(object sender, EventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 编辑
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnEdit_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("Please select at least one record!");
return;
}
string Id = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("KeyQuantityEditorEdit.aspx?keyQuantityId={0}", Id, "编辑 - ")));
}
/// <summary>
/// 右键编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
btnEdit_Click(null, null);
}
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
btnEdit_Click(null, null);
}
#endregion
#region
/// <summary>
/// 判断是否可以删除
/// </summary>
/// <returns></returns>
private bool judgementDelete(string id, bool isShow)
{
string content = string.Empty;
if (string.IsNullOrEmpty(content))
{
return true;
}
else
{
if (isShow)
{
Alert.ShowInTop(content);
}
return false;
}
}
#endregion
#region
/// <summary>
/// 菜单按钮权限
/// </summary>
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.UserId, BLL.Const.KeyQuantityMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
this.btnNew.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
this.btnEdit.Hidden = false;
this.btnMenuEdit.Hidden = false;
this.Grid1.EnableRowDoubleClickEvent = true;
}
else
{
this.Grid1.EnableRowDoubleClickEvent = false;
}
if (buttonList.Contains(BLL.Const.BtnDelete))
{
this.btnDelete.Hidden = false;
this.btnMenuDelete.Hidden = false;
}
}
}
#endregion
#region
/// <summary>
/// 查看
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuView_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("Please select at least one record!");
return;
}
string Id = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("KeyQuantityEditorEdit.aspx?keyQuantityId={0}&view=1", Id, "编辑 - ")));
}
#endregion
}
}

View File

@ -0,0 +1,161 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.EditorManage
{
public partial class KeyQuantityEditorList
{
/// <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>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEdit;
/// <summary>
/// btnDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDelete;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuEdit;
/// <summary>
/// btnMenuDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDelete;
/// <summary>
/// btnMenuView 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuView;
}
}

View File

@ -19,15 +19,15 @@
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow >
<f:FormRow>
<Items>
<f:DropDownList ID="drpPM_General_CDI" runat="server" Label="CDI" LabelWidth="80px" EnableEdit="true">
</f:DropDownList>
<f:DropDownList ID="drpOutSourceType" runat="server" Label="OutSource Type" LabelWidth="140px" >
<f:ListItem Text="" Value="0"/>
<f:ListItem Text="A" Value="A"/>
<f:ListItem Text="B" Value="B"/>
<f:ListItem Text="C" Value="C"/>
<f:DropDownList ID="drpOutSourceType" runat="server" Label="OutSource Type" LabelWidth="140px">
<f:ListItem Text="" Value="0" />
<f:ListItem Text="A" Value="A" />
<f:ListItem Text="B" Value="B" />
<f:ListItem Text="C" Value="C" />
</f:DropDownList>
<f:NumberBox ID="txtPM_General_CostToComplete" runat="server" Label="Cost to Complete" NoNegative="true" EnableCommas="true"
LabelWidth="140px">
@ -69,13 +69,13 @@
</f:Label>
<f:CheckBox ID="cbPM_PressurePiping" runat="server" Text="Pressure Piping" AutoPostBack="true" OnCheckedChanged="PressurePiping_OnCheckedChanged">
</f:CheckBox>
<f:DatePicker ID="txtPM_PressurePiping" runat="server" Hidden="true">
<f:DatePicker ID="txtPM_PressurePiping" runat="server" Hidden="true">
</f:DatePicker>
<f:Label ID="Label4" runat="server">
</f:Label>
<f:CheckBox ID="cbPM_SQIB" runat="server" Text="QIB" AutoPostBack="true" OnCheckedChanged="SQIB_OnCheckedChanged">
</f:CheckBox>
<f:DatePicker ID="txtPM_SQIB" runat="server" Hidden="true">
<f:DatePicker ID="txtPM_SQIB" runat="server" Hidden="true">
</f:DatePicker>
<f:Label ID="Label26" runat="server">
</f:Label>
@ -162,7 +162,7 @@
</Items>
</f:GroupPanel>
<f:GroupPanel ID="GroupPanel6" Layout="Anchor" Title="Job" runat="server">
<f:GroupPanel ID="GroupPanel6" Layout="Anchor" Title="Job" runat="server">
<Items>
<f:Form ID="Form6" ShowBorder="false" ShowHeader="false" AutoScroll="true" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
@ -183,7 +183,7 @@
<Items>
<f:DatePicker ID="txtEstimate_Worksheet" Label="Estimate Worksheet" runat="server"
LabelWidth="170px">
</f:DatePicker>
</f:DatePicker>
<f:DatePicker ID="txtBudget" Label="Budget" runat="server" LabelWidth="170px">
</f:DatePicker>
<f:DatePicker ID="txtTecoAlarm_Study" Label="Teco Study" runat="server"
@ -204,7 +204,7 @@
</Rows>
<Rows>
<f:FormRow>
<Items>
<Items>
<f:DropDownList ID="drpDelaybyteam1" runat="server" Label="Delay by team1" LabelWidth="170px" EnableEdit="true">
</f:DropDownList>
<f:DropDownList ID="drpDelaybypersonel1" runat="server" Label="Delay by personel1" EnableGroup="true" LabelWidth="170px" EnableEdit="true">
@ -224,7 +224,7 @@
</Items>
</f:FormRow>
</Rows>
<Rows>
<Rows>
<f:FormRow>
<Items>
<f:DropDownList ID="drpDelaybyteam3" runat="server" Label="Delay by team3" LabelWidth="170px" EnableEdit="true">
@ -239,30 +239,31 @@
</Items>
</f:GroupPanel>
<f:GroupPanel ID="GroupPanel5" Layout="Anchor" Title="Remarks" runat="server">
</Items>
</f:GroupPanel>
<f:GroupPanel ID="GroupPanel5" Layout="Anchor" Title="Remarks" runat="server">
<Items>
<f:Panel ID="Panel5" Layout="HBox" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:Panel ID="Panel5" Layout="HBox" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextArea ID="txtPM_Remarks_Engineering" Label="Engineering" runat="server" LabelAlign="Right"
LabelWidth="140px">
</f:TextArea>
</Items>
</f:Panel>
<f:Panel ID="Panel2" Layout="HBox" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:Label ID="Label5" runat="server" Width="20px"></f:Label>
<f:Label ID="lblCMProcurement" runat="server"></f:Label>
</Items>
</f:Panel>
<f:Panel ID="Panel6" Layout="HBox" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextArea ID="txtPM_Remarks_Procurement" Label="Procurement" runat="server" LabelAlign="Right"
LabelWidth="140px">
</f:TextArea>
</Items>
</f:Panel>
<f:TextArea ID="txtPM_Remarks_Engineering" Label="Engineering" runat="server" LabelAlign="Right"
LabelWidth="140px">
</f:TextArea>
</Items>
</f:GroupPanel>
</f:Panel>
<f:Panel ID="Panel2" Layout="HBox" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:Label ID="Label5" runat="server" Width="20px"></f:Label>
<f:Label ID="lblCMProcurement" runat="server"></f:Label>
</Items>
</f:Panel>
<f:Panel ID="Panel6" Layout="HBox" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextArea ID="txtPM_Remarks_Procurement" Label="Procurement" runat="server" LabelAlign="Right"
LabelWidth="140px">
</f:TextArea>
</Items>
</f:Panel>
</Items>
</f:GroupPanel>
<f:GroupPanel ID="gpEM" Layout="Anchor" Title="EM Detail Eng单击行Forecast Start、Forecast End编辑" runat="server">
@ -275,7 +276,7 @@
<Columns>
<f:RowNumberField TextAlign="Center" />
<f:RenderField Width="100px" ColumnID="DisciplinesWBSCode" DataField="DisciplinesWBSCode"
HeaderText="Identifier" HeaderTextAlign="Center" >
HeaderText="Identifier" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="DisciplinesWBSName" DataField="DisciplinesWBSName"
HeaderText="Disciplines" HeaderTextAlign="Center">
@ -284,7 +285,7 @@
ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="SchStart" DataField="SchStart" HeaderText="SchStart" HeaderTextAlign="Center" Renderer="Date" FieldType="Date" RendererArgument="yyyy-MM-dd">
<Editor>
<Editor>
<f:DatePicker ID="SchStart" runat="server">
</f:DatePicker>
</Editor>
@ -301,8 +302,8 @@
</f:DatePicker>
</Editor>
</f:RenderField>
<f:RenderCheckField Width="90px" ColumnID="RevisedStartIsAct" DataField="RevisedStartIsAct" HeaderText="Actual" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderCheckField Width="90px" ColumnID="RevisedStartIsAct" DataField="RevisedStartIsAct" HeaderText="Actual" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField Width="140px" ColumnID="RevisedEnd" DataField="RevisedEnd" FieldType="Date"
HeaderText="Forecast End" HeaderTextAlign="Center" Renderer="Date" RendererArgument="yyyy-MM-dd">
<Editor>
@ -314,7 +315,7 @@
<f:TemplateField HeaderText="Actual IFC" Width="150px" HeaderTextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblActual_IFC" runat="server" Text='<%# ConvertActualIFC(Eval("DisciplinesWBSName")) %>'></asp:Label>
<asp:Label ID="lblActual_IFC" runat="server" Text='<%# ConvertActualIFC(Eval("DisciplinesWBSName")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</Columns>
@ -328,10 +329,10 @@
<f:Toolbar ID="Toolbar1" runat="server" ToolbarAlign="Right" Position="Bottom">
<Items>
<f:Button ID="btnCalculated" Icon="CalculatorEdit" runat="server" ToolTip="Calculated Progress"
OnClick="btnCalculated_Click" Text="Calculated Progress" >
OnClick="btnCalculated_Click" Text="Calculated Progress">
</f:Button>
<f:Button ID="btnSave" Icon="SystemSave" Text="Save" runat="server" ToolTip="Save" ValidateForms="SimpleForm1"
OnClick="btnSave_Click" >
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" Text="Close" ToolTip="Close" runat="server" Icon="SystemClose">
</f:Button>

View File

@ -602,10 +602,18 @@ namespace FineUIPro.Web.EditorManage
// epro.ProjectControl_JobStatus = "In Construction";
//}
//当项目类型为projects或moc时PM中Milestone(Actual)的Project Approval不为空并且Resource_Plan有记录时状态为Not Approved 修改于2024.07.04
var resourcePlans = BLL.ResourcePlanService.GetResourcePlanByEProjectId(epro.EProjectId);
if ((epro.PM_MA_ProjectApproval == null || epro.PM_MA_ProjectApproval.ToString() == "") && resourcePlans.Count() > 0)
////当项目类型为projects或moc时PM中Milestone(Actual)的Project Approval不为空并且Resource_Plan有记录时状态为Not Approved 修改于2024.07.04
//var resourcePlans = BLL.ResourcePlanService.GetResourcePlanByEProjectId(epro.EProjectId);
//if ((epro.PM_MA_ProjectApproval == null || epro.PM_MA_ProjectApproval.ToString() == "") && resourcePlans.Count() > 0)
//{
// if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Not Start")
// {
// epro.ProjectControl_JobStatus = "Study";
// }
//}
//由原先Project Approval为空且有第一个rp修改状态为Study 改为 Project Approval为空并且Planning Cost Approval不为空状态改为Study 修改于2025.8.22
if ((epro.PM_MA_ProjectApproval == null || epro.PM_MA_ProjectApproval.ToString() == "") && epro.PM_Planning_Approval.HasValue)
{
if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Not Start")
{
@ -643,8 +651,10 @@ namespace FineUIPro.Web.EditorManage
}
// 后加当PM中Milestone(Actual)的Project Approval不为空并且IFC ALL的ReceiveHC不为空状态为In Procurement
//或者当PM中Milestone(Actual)的Project Approval不为空并且IFC NA的ReceiveHC不为空状态为In Procurement
var con_all = from x in Funs.DB.Editor_TDC where x.EProjectId == epro.EProjectId && x.Type == "D01_IFC" && x.Disc == "00_ALL" && x.ReceiveHC.HasValue select x;
if (epro.ProjectControl_JobType != "Other" && epro.PM_MA_ProjectApproval.HasValue && con_all.Count() > 0)
var con_na = from x in Funs.DB.Editor_TDC where x.EProjectId == epro.EProjectId && x.Type == "D01_IFC" && x.Disc == "90_NA" select x;
if (epro.ProjectControl_JobType != "Other" && epro.PM_MA_ProjectApproval.HasValue && (con_all.Count() > 0 || con_na.Count() > 0))
{
if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Detailed Design" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start")
{

View File

@ -20,7 +20,7 @@
<f:FormRow ColumnWidths="25% 24% 27% 24%">
<Items>
<f:TextBox ID="txtJobNo" runat="server" Label="Job No." LabelWidth="110px" ShowRedStar="true" Required="true"></f:TextBox>
<f:TextBox ID="txtNotesLink" runat="server" Label="Notes Link" LabelWidth="120px"></f:TextBox>
<f:TextBox ID="txtNotesLink" runat="server" Label="SharePoint Link" LabelWidth="120px"></f:TextBox>
<f:DropDownList ID="drpProjectManager" runat="server" Label="Project Manager" LabelWidth="160px" EnableGroup="true" EnableEdit="true"></f:DropDownList>
<f:TextBox ID="txtAccount" runat="server" Label="Account No." LabelWidth="130px"></f:TextBox>
</Items>
@ -33,7 +33,7 @@
<f:ListItem Value="Temp" Text="Temp" />
<f:ListItem Value="Perm" Text="Perm" />
</f:DropDownList>
<f:DropDownList ID="drpEMManager" runat="server" Label="Engineering Manager" LabelWidth="160px" EnableGroup="true" EnableEdit="true"></f:DropDownList>
<f:TextBox ID="txtNetworkNo" runat="server" Label="Network No." LabelWidth="130px"></f:TextBox>
</Items>
@ -41,7 +41,7 @@
<f:FormRow ColumnWidths="25% 24% 27% 24%">
<Items>
<f:DropDownList ID="drpJobStatus" runat="server" Label="Job Status" LabelWidth="110px" ShowRedStar="true" Required="true" EnableEdit="true" AutoPostBack="true" OnSelectedIndexChanged="drpJobStatus_SelectedIndexChanged"></f:DropDownList>
<f:NumberBox ID="txtOrginalBudget" runat="server" Label="Orginal Budget" NoDecimal="true" NoNegative="true" LabelWidth="120px" AutoPostBack="true" OnTextChanged="txtOrginalBudget_TextChanged" EnableCommas="true"></f:NumberBox>
<f:NumberBox ID="txtOrginalBudget" runat="server" Label="Original Budget" NoDecimal="true" NoNegative="true" LabelWidth="120px" AutoPostBack="true" OnTextChanged="txtOrginalBudget_TextChanged" EnableCommas="true"></f:NumberBox>
<f:DropDownList ID="drpConstManager" runat="server" Label="Const Manager" LabelWidth="160px" EnableGroup="true" EnableEdit="true"></f:DropDownList>
<f:TextBox ID="txtMOCFormNO" runat="server" Label="MOC Form No." LabelWidth="130px"></f:TextBox>
</Items>
@ -49,9 +49,9 @@
<f:FormRow ColumnWidths="25% 24% 27% 24%">
<Items>
<f:TextBox ID="txtJobTitle" runat="server" Label="Job Title" LabelWidth="110px" ShowRedStar="true" Required="true"></f:TextBox>
<f:TextBox ID="txtCostEffectvitity" runat="server" Label="Cost Effectvitity" LabelWidth="120px"></f:TextBox>
<f:DropDownList ID="drpLeadBy" runat="server" Label="Lead By" LabelWidth="160px" EnableEdit="true" EnableGroup="true" ShowRedStar="true"
></f:DropDownList>
<f:TextBox ID="txtCostEffectvitity" runat="server" Label="Cost Effectivity" LabelWidth="120px"></f:TextBox>
<f:DropDownList ID="drpLeadBy" runat="server" Label="Lead By" LabelWidth="160px" EnableEdit="true" EnableGroup="true" ShowRedStar="true">
</f:DropDownList>
<f:TextBox ID="txtCAPEXPlanNo" runat="server" Label="CAPEX Plan No." LabelWidth="130px"></f:TextBox>
</Items>
</f:FormRow>
@ -59,21 +59,21 @@
<Items>
<f:DropDownList ID="drpBuCode" runat="server" Label="Bu.Code" LabelWidth="110px" ShowRedStar="true" Required="true" EnableEdit="true"></f:DropDownList>
<f:NumberBox ID="txtPVIPrediction" runat="server" Label="PVI Prediction" LabelWidth="120px" EnableCommas="true"></f:NumberBox>
<f:DropDownList ID="drpOpre" runat="server" Label="Operation Rep" LabelWidth="160px" EnableGroup="true" EnableEdit="true"></f:DropDownList>
<f:TextBox ID="txtStudyWo" runat="server" Label="Study WO" LabelWidth="130px" ></f:TextBox>
<f:DropDownList ID="drpOpre" runat="server" Label="Operation Rep" LabelWidth="160px" EnableGroup="true" EnableEdit="true"></f:DropDownList>
<f:TextBox ID="txtStudyWo" runat="server" Label="Study WO" LabelWidth="130px"></f:TextBox>
</Items>
</f:FormRow>
<f:FormRow ColumnWidths="25% 24% 27% 24%">
<Items>
<f:DropDownList ID="drpCTEInvolved" runat="server" Label="CTE Involved" LabelWidth="110px" Enabled="false">
<f:ListItem Value="N" Text="N" Selected="true"/>
<f:DropDownList ID="drpCTEInvolved" runat="server" Label="CTE Involved" LabelWidth="110px" Enabled="false">
<f:ListItem Value="N" Text="N" Selected="true" />
<f:ListItem Value="Y" Text="Y" />
</f:DropDownList>
<f:DatePicker ID="txtRevisedMCDate" runat="server" Label="Revised MC Date" LabelWidth="120px" EnableEdit="true" AutoPostBack="true" OnTextChanged="txtRevisedMCDate_OnTextChanged"></f:DatePicker>
<f:DropDownList ID="drpPM_General_Priority" runat="server" Label="Priority" LabelWidth="140px" EnableEdit="true">
</f:DropDownList>
<f:TextBox ID="txtFilesLink" runat="server" Label="Files Link" LabelWidth="130px"></f:TextBox>
</Items>
</f:FormRow>
<f:FormRow ColumnWidths="49% 51%">
@ -146,7 +146,7 @@
<f:DropDownList ID="drpCIProcess" runat="server" Label="Proce.&Pip.Eng." LabelWidth="140px" EnableEdit="true"></f:DropDownList>
<f:DropDownList ID="drpEquipment" runat="server" Label="Equip.Eng." LabelWidth="140px" EnableEdit="true"></f:DropDownList>
<f:DropDownList ID="drpInstrument" runat="server" Label="Instrument Eng." LabelWidth="140px" EnableEdit="true"></f:DropDownList>
<f:DropDownList ID="drpElectrical" runat="server" Label="Electrial Eng." LabelWidth="140px" EnableEdit="true"></f:DropDownList>
<f:DropDownList ID="drpElectrical" runat="server" Label="Electrical Eng." LabelWidth="140px" EnableEdit="true"></f:DropDownList>
<f:DropDownList ID="drpCivil" runat="server" Label="Civil Eng." LabelWidth="140px" EnableEdit="true"></f:DropDownList>
</Items>
</f:FormRow>
@ -212,7 +212,23 @@
</f:GroupPanel>
<f:Panel runat="server" Layout="HBox" ShowHeader="false" ShowBorder="false">
<Items>
<f:GroupPanel ID="GroupPanel8" Title="Business Closure" runat="server" EnableCollapse="true" Width="300px">
<f:GroupPanel ID="GroupPanel12" Title="Technical Closure(RFSU)" runat="server" EnableCollapse="true" Width="260px">
<Items>
<f:Form ID="Form14" ShowBorder="false" ShowHeader="false" AutoScroll="true"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:DatePicker ID="txtRFSUCloseDate" runat="server" Label="Close Date" LabelWidth="120px"></f:DatePicker>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>
<f:Label runat="server" Width="10px"></f:Label>
<f:GroupPanel ID="GroupPanel8" Title="Business Closure" runat="server" EnableCollapse="true" Width="260px">
<Items>
<f:Form ID="Form9" ShowBorder="false" ShowHeader="false" AutoScroll="true"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
@ -228,14 +244,14 @@
</Items>
</f:GroupPanel>
<f:Label runat="server" Width="10px"></f:Label>
<f:GroupPanel ID="GroupPanel10" Title="Project Cancel" runat="server" EnableCollapse="true" Width="300px">
<f:GroupPanel ID="GroupPanel10" Title="Project Cancel" runat="server" EnableCollapse="true" Width="260px">
<Items>
<f:Form ID="Form10" ShowBorder="false" ShowHeader="false" AutoScroll="true"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:DatePicker ID="txtCancelDate" runat="server" Label="Cancel Date" LabelWidth="120px" ></f:DatePicker>
<f:DatePicker ID="txtCancelDate" runat="server" Label="Cancel Date" LabelWidth="120px"></f:DatePicker>
</Items>
</f:FormRow>
</Rows>
@ -243,7 +259,7 @@
</Items>
</f:GroupPanel>
<f:Label runat="server" Width="10px"></f:Label>
<f:GroupPanel ID="GroupPanel11" Title="Project Hold" runat="server" EnableCollapse="true" Width="300px">
<f:GroupPanel ID="GroupPanel11" Title="Project Hold" runat="server" EnableCollapse="true" Width="260px">
<Items>
<f:Form ID="Form13" ShowBorder="false" ShowHeader="false" AutoScroll="true"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
@ -258,7 +274,7 @@
</Items>
</f:GroupPanel>
<f:Label runat="server" Width="10px"></f:Label>
<f:GroupPanel ID="GroupPanel9" runat="server" EnableCollapse="true" Width="300px">
<f:GroupPanel ID="GroupPanel9" runat="server" EnableCollapse="true" Width="260px">
<Items>
<f:Form ID="Form11" ShowBorder="false" ShowHeader="false" AutoScroll="true"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right">

View File

@ -32,9 +32,9 @@ namespace FineUIPro.Web.EditorManage
BLL.ConstService.InitConstValueDropDownList(this.drpJobType, BLL.Const.ProjectPlanner_JobType, true);//项目类型
//BLL.ConstService.InitConstValueDropDownList(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, false); //项目状态
BLL.DepartService.InitDepartDropDownList(this.drpBuCode, true);//部门
BLL.Sys_UserService.InitUserDrpNA(this.drpProjectManager, true); //项目经理
BLL.Sys_UserService.InitUserDrpNA(this.drpEMManager, true); //EM
BLL.Sys_UserService.InitUserDrpNA(this.drpConstManager, true);//施工经理
BLL.Sys_UserService.InitUserDropDownList(this.drpProjectManager, true); //项目经理
BLL.Sys_UserService.InitUserDropDownList(this.drpEMManager, true); //EM
BLL.Sys_UserService.InitUserDropDownList(this.drpConstManager, true);//施工经理
BLL.Sys_UserService.InitUserDropDownList(this.drpOpre, true);//操作代表
BLL.Sys_UserService.InitDropDownList(this.drpLeadBy, true);
BLL.Sys_UserService.InitUserDropDownList(this.drpCIProcess, true);
@ -184,6 +184,7 @@ namespace FineUIPro.Web.EditorManage
txtPM_SC_PendingQty.Text = Convert.ToString(eproject.PM_SC_PendingQty);
txtPM_SC_PendingCost.Text = Convert.ToString(eproject.PM_SC_PendingCost);
this.txtRFSUCloseDate.Text = eproject.ProjectControl_RFSU_CloseDate == null ? "" : string.Format("{0:yyyy-MM-dd}", eproject.ProjectControl_RFSU_CloseDate);
this.txtBC_CloseDate.Text = eproject.ProjectControl_BC_CloseDate == null ? "" : string.Format("{0:yyyy-MM-dd}", eproject.ProjectControl_BC_CloseDate);
this.txtCancelDate.Text = eproject.ProjectControl_PC_CancelDate == null ? "" : string.Format("{0:yyyy-MM-dd}", eproject.ProjectControl_PC_CancelDate);
this.txtHold.Text = eproject.Job_Hold == null ? "" : string.Format("{0:yyyy-MM-dd}", eproject.Job_Hold);
@ -566,6 +567,8 @@ namespace FineUIPro.Web.EditorManage
eProject.PM_SC_PendingQty = Funs.GetNewInt(txtPM_SC_PendingQty.Text.Trim());
eProject.PM_SC_PendingCost = Funs.GetNewDecimal(txtPM_SC_PendingCost.Text.Trim());
eProject.ProjectControl_RFSU_CloseDate = Funs.GetNewDateTime(this.txtRFSUCloseDate.Text.Trim());
if (!string.IsNullOrEmpty(this.txtBC_CloseDate.Text.Trim()))
{
eProject.ProjectControl_BC_CloseDate = Funs.GetNewDateTime(this.txtBC_CloseDate.Text.Trim());

View File

@ -671,6 +671,33 @@ namespace FineUIPro.Web.EditorManage
/// </remarks>
protected global::FineUIPro.NumberBox txtPM_SC_PendingCost;
/// <summary>
/// GroupPanel12 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.GroupPanel GroupPanel12;
/// <summary>
/// Form14 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form14;
/// <summary>
/// txtRFSUCloseDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtRFSUCloseDate;
/// <summary>
/// GroupPanel8 控件。
/// </summary>

View File

@ -223,14 +223,14 @@ namespace FineUIPro.Web.EditorManage
// 后加当PM中Milestone(Actual)的Project Approval不为空并且IFC ALL的ReceiveHC不为空状态为In Procurement
var con_all = from x in Funs.DB.Editor_TDC where x.EProjectId == eproject.EProjectId && x.Type == "D01_IFC" && x.Disc == "00_ALL" && x.ReceiveHC.HasValue select x;
if (eproject.ProjectControl_JobType != "Other" && eproject.PM_MA_ProjectApproval.HasValue && con_all.Count() > 0)
var con_na = from x in Funs.DB.Editor_TDC where x.EProjectId == eproject.EProjectId && x.Type == "D01_IFC" && x.Disc == "90_NA" select x;
if (eproject.ProjectControl_JobType != "Other" && eproject.PM_MA_ProjectApproval.HasValue && (con_all.Count() > 0 || con_na.Count() > 0))
{
if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Detailed Design" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start")
{
eproject.ProjectControl_JobStatus = "In Procurement";
}
}
#endregion
if ((eproject.Permit_PS_SafetyFinalAcc.HasValue && eproject.Permit_PA_SafetyFinalACC.HasValue

View File

@ -40,7 +40,7 @@
<OutputPath>bin\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>5</WarningLevel>
<WarningLevel>4</WarningLevel>
<LangVersion>7.3</LangVersion>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
@ -50,7 +50,7 @@
<OutputPath>bin\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<WarningLevel>1</WarningLevel>
<LangVersion>7.2</LangVersion>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
@ -138,6 +138,7 @@
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.Composition" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data.Linq" />
@ -231,6 +232,7 @@
<Content Include="BaseInfo\ProjectPlannerJobStatus.aspx" />
<Content Include="BaseInfo\ProjectPlannerJobType.aspx" />
<Content Include="BaseInfo\PunchDetailsDiscipline.aspx" />
<Content Include="BaseInfo\QuantityDesctiption.aspx" />
<Content Include="BaseInfo\ResoursesClass.aspx" />
<Content Include="BaseInfo\ResoursesDiscipline.aspx" />
<Content Include="BaseInfo\Stage.aspx" />
@ -259,6 +261,9 @@
<Content Include="EditorManage\FCRLogEditor.aspx" />
<Content Include="EditorManage\FCRLogEditorEdit.aspx" />
<Content Include="EditorManage\FCRLogEditorList.aspx" />
<Content Include="EditorManage\KeyQuantityEditor.aspx" />
<Content Include="EditorManage\KeyQuantityEditorEdit.aspx" />
<Content Include="EditorManage\KeyQuantityEditorList.aspx" />
<Content Include="EditorManage\LessonsLearnedEditor.aspx" />
<Content Include="EditorManage\LessonsLearnedEditorEdit.aspx" />
<Content Include="EditorManage\LessonsLearnedEditorIn.aspx" />
@ -980,6 +985,13 @@
<Compile Include="BaseInfo\PunchDetailsDiscipline.aspx.designer.cs">
<DependentUpon>PunchDetailsDiscipline.aspx</DependentUpon>
</Compile>
<Compile Include="BaseInfo\QuantityDesctiption.aspx.cs">
<DependentUpon>QuantityDesctiption.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="BaseInfo\QuantityDesctiption.aspx.designer.cs">
<DependentUpon>QuantityDesctiption.aspx</DependentUpon>
</Compile>
<Compile Include="BaseInfo\ResoursesClass.aspx.cs">
<DependentUpon>ResoursesClass.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
@ -1171,6 +1183,27 @@
<Compile Include="EditorManage\FCRLogEditorList.aspx.designer.cs">
<DependentUpon>FCRLogEditorList.aspx</DependentUpon>
</Compile>
<Compile Include="EditorManage\KeyQuantityEditor.aspx.cs">
<DependentUpon>KeyQuantityEditor.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="EditorManage\KeyQuantityEditor.aspx.designer.cs">
<DependentUpon>KeyQuantityEditor.aspx</DependentUpon>
</Compile>
<Compile Include="EditorManage\KeyQuantityEditorEdit.aspx.cs">
<DependentUpon>KeyQuantityEditorEdit.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="EditorManage\KeyQuantityEditorEdit.aspx.designer.cs">
<DependentUpon>KeyQuantityEditorEdit.aspx</DependentUpon>
</Compile>
<Compile Include="EditorManage\KeyQuantityEditorList.aspx.cs">
<DependentUpon>KeyQuantityEditorList.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="EditorManage\KeyQuantityEditorList.aspx.designer.cs">
<DependentUpon>KeyQuantityEditorList.aspx</DependentUpon>
</Compile>
<Compile Include="EditorManage\LessonsLearnedEditor.aspx.cs">
<DependentUpon>LessonsLearnedEditor.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>

View File

@ -2,7 +2,7 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectView>ProjectFiles</ProjectView>
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<UseIISExpress>true</UseIISExpress>
<Use64BitIISExpress>true</Use64BitIISExpress>
<IISExpressSSLPort />

View File

@ -46,9 +46,9 @@
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<f:FormRow ColumnWidths="20% 80%">
<Items>
<f:Label ID="Label1" runat="server"></f:Label>
<f:CheckBox ID="cbNotApplicable1" runat="server" AutoPostBack="true" Text="Account Disabled?"></f:CheckBox>
</Items>
</f:FormRow>

View File

@ -7,11 +7,13 @@
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ManHours {
public partial class AccountDisabled {
namespace FineUIPro.Web.ManHours
{
public partial class AccountDisabled
{
/// <summary>
/// form1 控件。
/// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// txtJobNo 控件。
/// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtJobNo;
/// <summary>
/// drpDiscipline 控件。
/// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpDiscipline;
/// <summary>
/// txtAccount 控件。
/// </summary>
@ -65,7 +67,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAccount;
/// <summary>
/// txtEngineerName 控件。
/// </summary>
@ -74,7 +76,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtEngineerName;
/// <summary>
/// txtManHours 控件。
/// </summary>
@ -83,7 +85,16 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtManHours;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label1;
/// <summary>
/// cbNotApplicable1 控件。
/// </summary>
@ -92,7 +103,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox cbNotApplicable1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@ -101,7 +112,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
@ -110,7 +121,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>

View File

@ -46,9 +46,22 @@
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:CheckBoxList ID="checkPhase" Label="Phase" runat="server" LabelWidth="120px">
<Items>
<f:CheckItem Text="Study/Concept Planning" Value="Study/Concept Planning" Selected="true" />
<f:CheckItem Text="Execution" Value="Execution" />
</Items>
<Listeners>
<f:Listener Event="change" Handler="onCheckBoxListChange" />
</Listeners>
</f:CheckBoxList>
</Items>
</f:FormRow>
<f:FormRow ColumnWidths="20% 80%">
<Items>
<f:Label ID="Label1" runat="server"></f:Label>
<f:CheckBox ID="cbNotApplicable1" runat="server" AutoPostBack="true" Text="Account Disabled?"></f:CheckBox>
</Items>
</f:FormRow>
@ -67,5 +80,15 @@
</Toolbars>
</f:Form>
</form>
<script type="text/javascript">
// 同时只能选中一项
function onCheckBoxListChange(event, checkbox, isChecked) {
var me = this;
if (isChecked) {
me.setValue(checkbox.getInputValue());
}
__doPostBack('', 'CheckBoxList1Change');
}
</script>
</body>
</html>

View File

@ -146,6 +146,11 @@ namespace FineUIPro.Web.ManHours
pm.AccountDisabled =0;
pm.IsClose = 0;
}
if (checkPhase.SelectedValueArray != null)
{
pm.Phase = checkPhase.SelectedValueArray[0];
}
BLL.PlanService.AddPlan(pm);
// 把设计专业回写到PM_Editor

View File

@ -7,11 +7,13 @@
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ManHours {
public partial class AddManHours {
namespace FineUIPro.Web.ManHours
{
public partial class AddManHours
{
/// <summary>
/// form1 控件。
/// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// txtJobNo 控件。
/// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtJobNo;
/// <summary>
/// drpJobNo 控件。
/// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpJobNo;
/// <summary>
/// drpDiscipline 控件。
/// </summary>
@ -65,7 +67,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpDiscipline;
/// <summary>
/// txtAccount 控件。
/// </summary>
@ -74,7 +76,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAccount;
/// <summary>
/// drpEngineer 控件。
/// </summary>
@ -83,7 +85,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpEngineer;
/// <summary>
/// txtManHours 控件。
/// </summary>
@ -92,7 +94,25 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtManHours;
/// <summary>
/// checkPhase 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBoxList checkPhase;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label1;
/// <summary>
/// cbNotApplicable1 控件。
/// </summary>
@ -101,7 +121,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox cbNotApplicable1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@ -110,7 +130,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
@ -119,7 +139,7 @@ namespace FineUIPro.Web.ManHours {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>

View File

@ -129,7 +129,7 @@
</f:Window>
<f:Window ID="Window4" Title="AddManHours(Plan)" Hidden="true" EnableIFrame="true" EnableMaximize="false"
Target="Parent" EnableResize="false" runat="server" OnClose="Window3_Close" IsModal="true"
Width="500px" Height="350px">
Width="600px" Height="400px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"

View File

@ -380,7 +380,7 @@ namespace FineUIPro.Web.ManHours
Alert.ShowInParent("Please fill in the Hours!");
return;
}
Actual.Hours = int.Parse(objects["values"]["Hours"].ToString());
Actual.Hours = Funs.GetNewDouble(objects["values"]["Hours"].ToString());
Actual.Description = objects["values"]["Description"].ToString();
actualLists.Add(Actual);

View File

@ -751,9 +751,9 @@ namespace FineUIPro.Web.Report
using (FileStream filess = File.OpenWrite(ReportFileName))
{
hssfworkbook.Write(filess);
hssfworkbook.Close();
filess.Flush();
filess.Close();
//hssfworkbook.Close();
//filess.Flush();
//filess.Close();
}
percent = 100;
url = ReportFileName.Replace(Server.MapPath("~/"), "");

View File

@ -1009,9 +1009,9 @@ namespace FineUIPro.Web.Report
using (FileStream filess = File.OpenWrite(ReportFileName))
{
hssfworkbook.Write(filess);
hssfworkbook.Close();
filess.Flush();
filess.Close();
//hssfworkbook.Close();
//filess.Flush();
//filess.Close();
}
percent = 100;
url = ReportFileName.Replace(Server.MapPath("~/"), "");
@ -2887,7 +2887,7 @@ namespace FineUIPro.Web.Report
{
if (Funs.GetNewDateTime(itemOver.MCActual).Value.AddDays(90) < Funs.GetNewDateTime(DateTime.Now.ToShortDateString()) && string.IsNullOrEmpty(itemOver.FC_Signed))
{
overview.GetRow(rowIndex).GetCell(22).CellStyle = redbackgroundstyle;
overview.GetRow(rowIndex).GetCell(24).CellStyle = redbackgroundstyle;
}
}
@ -2901,7 +2901,7 @@ namespace FineUIPro.Web.Report
{
if (Funs.GetNewDateTime(itemOver.FC_Signed).Value.AddDays(180) < Funs.GetNewDateTime(DateTime.Now.ToShortDateString()) && string.IsNullOrEmpty(itemOver.ProjectControl_BC_CloseDate))
{
overview.GetRow(rowIndex).GetCell(23).CellStyle = redbackgroundstyle;
overview.GetRow(rowIndex).GetCell(25).CellStyle = redbackgroundstyle;
}
}
//超出实际MC90天仍未收到AB的As-built Received
@ -2909,7 +2909,7 @@ namespace FineUIPro.Web.Report
{
if (Funs.GetNewDateTime(itemOver.MCActual).Value.AddDays(90) < Funs.GetNewDateTime(DateTime.Now.ToShortDateString()) && string.IsNullOrEmpty(itemOver.As_built_Received))
{
overview.GetRow(rowIndex).GetCell(25).CellStyle = redDatestyle;
overview.GetRow(rowIndex).GetCell(27).CellStyle = redDatestyle;
}
}
#endregion
@ -3846,9 +3846,9 @@ namespace FineUIPro.Web.Report
using (FileStream filess = File.OpenWrite(ReportFileName))
{
hssfworkbook.Write(filess);
hssfworkbook.Close();
filess.Flush();
filess.Close();
//hssfworkbook.Close();
//filess.Flush();
//filess.Close();
}
percent = 100;
url = ReportFileName.Replace(Server.MapPath("~/"), "");

View File

@ -49,7 +49,7 @@ namespace FineUIPro.Web.Report
string strSql = @"SELECT costReport.CostReportId,
costReport.EProjectId,
costReport.Monthly,
costReport.OrginalBudget,
(costReport.OrginalBudget+costReport.ChangedBudget) as OrginalBudget,
costReport.ChangedBudget,
costReport.ActualCost,
(costReport.CommittedPRPO + costReport.CommittedSSRs) AS Commitment,

View File

@ -64,17 +64,6 @@
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_ProjectType" DataField="ProjectControl_ProjectType"
FieldType="String" HeaderText="Proj.Type" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList58" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_LeadByName" DataField="ProjectControl_LeadByName"
FieldType="String" HeaderText="Lead By" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
@ -458,12 +447,6 @@
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="80px" ColumnID="PM_Critical" DataField="PM_Critical"
FieldType="String" HeaderText="Critical" HeaderTextAlign="Center" TextAlign="Center" >
</f:RenderField>
<f:RenderField Width="120px" ColumnID="PM_ReasonForCritical" DataField="PM_ReasonForCritical"
FieldType="String" HeaderText="Reason Of Critical" HeaderTextAlign="Center" TextAlign="Center" >
</f:RenderField>
<f:RenderField Width="100px" ColumnID="IFC_Received" DataField="IFC_Received"
FieldType="String" HeaderText="IFC Received" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
@ -698,9 +681,6 @@
<f:RenderField Width="220px" ColumnID="ProjectControl_Revised_MC_Date" DataField="ProjectControl_Revised_MC_Date"
FieldType="Date" Renderer="Date" HeaderText="Revised MC Date" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
</f:RenderField>
<f:RenderField Width="220px" ColumnID="CM_KickOffMetting" DataField="CM_KickOffMetting"
FieldType="Date" Renderer="Date" HeaderText="Const.Kick-off Meeting" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
</f:RenderField>
<%--<f:RenderField Width="150px" ColumnID="RevisedMCDate" DataField="RevisedMCDate"
FieldType="Date" Renderer="Date" HeaderText="Revised MC Date" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
@ -728,9 +708,25 @@
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="80px" ColumnID="PM_Critical" DataField="PM_Critical"
FieldType="String" HeaderText="Critical" HeaderTextAlign="Center" TextAlign="Center" >
</f:RenderField>
<f:RenderField Width="120px" ColumnID="PM_ReasonForCritical" DataField="PM_ReasonForCritical"
FieldType="String" HeaderText="Reason Of Critical" HeaderTextAlign="Center" TextAlign="Center" >
</f:RenderField>
<f:BoundField Width="100px" TextAlign="Center" DataField="StudyWo" HeaderTextAlign="Center" HeaderText="Study Wo" />
<f:BoundField Width="100px" TextAlign="Center" DataField="CTEInvolved" HeaderTextAlign="Center" HeaderText="CTE Involved" />
<f:BoundField Width="100px" TextAlign="Center" DataField="CAPEXPlanNo" HeaderTextAlign="Center" HeaderText="CAPEX Plan No" />
<f:BoundField Width="100px" TextAlign="Center" DataField="OutSourceType" HeaderTextAlign="Center" HeaderText="OutSource Type" />
<f:RenderField Width="100px" ColumnID="MC_ReceivedDate" DataField="MC_ReceivedDate"
FieldType="Date" Renderer="Date" HeaderText="MC Received Date" HeaderTextAlign="Center" TextAlign="Left" >
</f:RenderField>
<f:RenderField Width="220px" ColumnID="CM_KickOffMetting" DataField="CM_KickOffMetting"
FieldType="Date" Renderer="Date" HeaderText="Const.Kick-off Meeting" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
</f:RenderField>
<f:BoundField Width="100px" TextAlign="Center" DataField="ProjectControl_EMManager" HeaderTextAlign="Center" HeaderText="Engineering Manager" />
<f:BoundField Width="100px" TextAlign="Center" DataField="PM_SC_ApprovedQty" HeaderTextAlign="Center" HeaderText="Approved Qty" />
<f:BoundField Width="100px" TextAlign="Center" DataField="PM_SC_ApprovedCost" HeaderTextAlign="Center" HeaderText="Approved Cost" />
@ -740,6 +736,30 @@
<f:RenderField Width="120px" ColumnID="PM_Pre_Approval" DataField="PM_Pre_Approval"
FieldType="Date" Renderer="Date" HeaderText="Pre-Approval" HeaderTextAlign="Center" TextAlign="Left" >
</f:RenderField>
<f:BoundField Width="100px" TextAlign="Center" DataField="Job_Hold" HeaderTextAlign="Center" HeaderText="Hold" />
<f:RenderField Width="100px" ColumnID="ProjectControl_ProjectType" DataField="ProjectControl_ProjectType"
FieldType="String" HeaderText="Proj.Type" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList58" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="PM_Remarks_Engineering" DataField="PM_Remarks_Engineering"
FieldType="String" HeaderText="Engineering Remark" HeaderTextAlign="Center" TextAlign="Left" >
</f:RenderField>
<f:RenderField Width="120px" ColumnID="PM_Remarks_Procurement" DataField="PM_Remarks_Procurement"
FieldType="String" HeaderText="Procurement Remark" HeaderTextAlign="Center" TextAlign="Left" >
</f:RenderField>
<f:RenderField Width="120px" ColumnID="CM_Remarks_Construction" DataField="CM_Remarks_Construction"
FieldType="String" HeaderText="Construction Remark" HeaderTextAlign="Center" TextAlign="Left" >
</f:RenderField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">

View File

@ -1403,6 +1403,20 @@ namespace FineUIPro.Web.Report
projectList.GetRow(rowIndex).GetCell(74).SetCellValue(itemOver.ProjectControl_ProjectType);
projectList.GetRow(rowIndex).GetCell(74).CellStyle.SetFont(cs_content_Font);
//Engineering Remark
if (projectList.GetRow(rowIndex).GetCell(75) == null) projectList.GetRow(rowIndex).CreateCell(75);
projectList.GetRow(rowIndex).GetCell(75).SetCellValue(itemOver.PM_Remarks_Engineering);
projectList.GetRow(rowIndex).GetCell(75).CellStyle.SetFont(cs_content_Font);
//Procurement Remark
if (projectList.GetRow(rowIndex).GetCell(76) == null) projectList.GetRow(rowIndex).CreateCell(76);
projectList.GetRow(rowIndex).GetCell(76).SetCellValue(itemOver.PM_Remarks_Procurement);
projectList.GetRow(rowIndex).GetCell(76).CellStyle.SetFont(cs_content_Font);
//Construction Remark
if (projectList.GetRow(rowIndex).GetCell(77) == null) projectList.GetRow(rowIndex).CreateCell(77);
projectList.GetRow(rowIndex).GetCell(77).SetCellValue(itemOver.CM_Remarks_Construction);
projectList.GetRow(rowIndex).GetCell(77).CellStyle.SetFont(cs_content_Font);
#endregion
rowIndex++;

View File

@ -131,15 +131,6 @@ namespace FineUIPro.Web.Report
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList2;
/// <summary>
/// DropDownList58 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList58;
/// <summary>
/// DropDownList3 控件。
/// </summary>
@ -644,6 +635,15 @@ namespace FineUIPro.Web.Report
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList59;
/// <summary>
/// DropDownList58 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList58;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>

View File

@ -20,13 +20,15 @@
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server">
<Items>
<f:DropDownList ID="drpJobStatus" runat="server" Label="Job Status" EnableEdit="true" EnableCheckBoxSelect="true" EnableMultiSelect="true" LabelAlign="Right" NextFocusControl="btnSearch">
<f:DropDownList ID="drpJobStatus" runat="server" Label="Job Status" EnableEdit="true" EnableCheckBoxSelect="true" EnableMultiSelect="true" LabelAlign="Right" NextFocusControl="btnSearch" Width="270px">
</f:DropDownList>
<f:TextBox ID="txtJobNo" runat="server" Label="Job NO." LabelAlign="Right" NextFocusControl="btnSearch" Width="270px"></f:TextBox>
<f:TextBox ID="txtAccount" runat="server" Label="Account" LabelAlign="Right" NextFocusControl="btnSearch" Width="270px"></f:TextBox>
<f:DropDownList ID="drpName" runat="server" Label="Name" LabelAlign="Right" EnableEdit="true" EnableCheckBoxSelect="true" EnableMultiSelect="true" NextFocusControl="btnSearch" Width="270px"></f:DropDownList>
<f:Button ID="btnSearch" runat="server" Icon="SystemSearch" Text="Search" OnClick="btnSearch_Click"></f:Button>
<%--<f:TextBox ID="txtJobNo" runat="server" Label="Job No." LabelAlign="Right" EmptyText="query conditions" AutoPostBack="true" OnTextChanged="DropDownList_SelectedIndexChanged"></f:TextBox>--%>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnExport" OnClick="btnExport_Click" runat="server" Text="Export" ToolTip="Export"
Icon="DoorOut" EnableAjax="false" DisableControlBeforePostBack="true" EnablePress="true" Pressed="false" Hidden="true" >
<f:Button ID="btnExport" OnClick="btnExport_Click" runat="server" Text="Export" ToolTip="Export"
Icon="DoorOut" EnableAjax="false" DisableControlBeforePostBack="true" EnablePress="true" Pressed="false" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
@ -87,7 +89,7 @@
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="110px" ColumnID="Phase" DataField="Phase"
<f:RenderField Width="110px" ColumnID="Phase" DataField="Phase"
FieldType="String" HeaderText="Phase" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="PM_MA_JobReveive" DataField="PM_MA_JobReveive"
@ -157,7 +159,7 @@
</Filter>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Account" DataField="Account"
FieldType="String" HeaderText="Account" HeaderTextAlign="Center" TextAlign="Left" >
FieldType="String" HeaderText="Account" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="EngineerName" DataField="EngineerName"
FieldType="String" HeaderText="Name" HeaderTextAlign="Center" TextAlign="Left" EnableFilter="true">
@ -236,7 +238,7 @@
<f:BoundField Width="110px" DataField="IFC_All" HeaderText="IFC_All">
</f:BoundField>
<f:RenderField Width="110px" ColumnID="Detail_Eng_Civil_Sch_Start" DataField="Detail_Eng_Civil_Sch_Start"
<f:RenderField Width="110px" ColumnID="Detail_Eng_Civil_Sch_Start" DataField="Detail_Eng_Civil_Sch_Start"
FieldType="Date" Renderer="Date" HeaderText="PROJ_DE_CIVIL_SCH_START_DATE" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="Detail_Eng_Civil_Sch_End" DataField="Detail_Eng_Civil_Sch_End"
@ -260,7 +262,7 @@
<f:RenderField Width="110px" ColumnID="PROJ_DE_ME_ACU_END_DATE" DataField="PROJ_DE_ME_ACU_END_DATE"
FieldType="Date" Renderer="Date" HeaderText="PROJ_DE_ME_ACU_END_DATE" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="ProjectControl_LeadByName" DataField="ProjectControl_LeadByName"
<f:RenderField Width="110px" ColumnID="ProjectControl_LeadByName" DataField="ProjectControl_LeadByName"
FieldType="String" HeaderText="Lead By" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</Columns>

View File

@ -7,6 +7,8 @@ using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Xml.Linq;
using Org.BouncyCastle.Bcpg.OpenPgp;
namespace FineUIPro.Web.Report
{
public partial class ProjectManhourReport : PageBase
@ -27,6 +29,7 @@ namespace FineUIPro.Web.Report
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
BLL.ConstService.InitConstValueDropDownList(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, true);
BLL.Sys_UserService.InitCTEUserDropDownList(this.drpName, true);
// 绑定表格
BindGrid();
@ -49,6 +52,19 @@ namespace FineUIPro.Web.Report
string status = String.Join(",", drpJobStatus.SelectedItemArray.Select(e => e.Text));
listStr.Add(new SqlParameter("@JobStatus", status));
}
if (!string.IsNullOrEmpty(this.txtJobNo.Text.Trim()))
{
listStr.Add(new SqlParameter("@JobNo", "%" + this.txtJobNo.Text.Trim() + "%"));
}
if (!string.IsNullOrEmpty(this.txtAccount.Text.Trim()))
{
listStr.Add(new SqlParameter("@Account", "%" + this.txtAccount.Text.Trim() + "%"));
}
if (this.drpName.SelectedValue != BLL.Const._Null && this.drpName.SelectedValue != null)
{
string name = String.Join(",", drpName.SelectedItemArray.Select(e => e.Text));
listStr.Add(new SqlParameter("@Name", name));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunProc("Proc_ProjectManhourReport", parameter);
Grid1.RecordCount = tb.Rows.Count;
@ -289,8 +305,7 @@ namespace FineUIPro.Web.Report
{
BindGrid();
}
#endregion
#endregion
#region
/// <summary>
@ -375,6 +390,31 @@ namespace FineUIPro.Web.Report
{
listStr.Add(new SqlParameter("@JobStatus", null));
}
if (!string.IsNullOrEmpty(this.txtJobNo.Text.Trim()))
{
listStr.Add(new SqlParameter("@JobNo", "%" + this.txtJobNo.Text.Trim() + "%"));
}
else
{
listStr.Add(new SqlParameter("@JobNo", null));
}
if (!string.IsNullOrEmpty(this.txtAccount.Text.Trim()))
{
listStr.Add(new SqlParameter("@Account", "%" + this.txtAccount.Text.Trim() + "%"));
}
else
{
listStr.Add(new SqlParameter("@Account", null));
}
if (drpName.SelectedValue != BLL.Const._Null && drpName.SelectedValue != null)
{
string status = String.Join(",", drpName.SelectedItemArray.Select(x => x.Text));
listStr.Add(new SqlParameter("@Name", status));
}
else
{
listStr.Add(new SqlParameter("@Name", null));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable table = SQLHelper.GetDataTableRunProc("Proc_ProjectManhourReport", parameter);
if (table.Rows.Count > 0)

View File

@ -7,11 +7,13 @@
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.Report {
public partial class ProjectManhourReport {
namespace FineUIPro.Web.Report
{
public partial class ProjectManhourReport
{
/// <summary>
/// form1 控件。
/// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// drpJobStatus 控件。
/// </summary>
@ -65,7 +67,34 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpJobStatus;
/// <summary>
/// txtJobNo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtJobNo;
/// <summary>
/// txtAccount 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAccount;
/// <summary>
/// drpName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpName;
/// <summary>
/// btnSearch 控件。
/// </summary>
@ -74,7 +103,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
@ -83,7 +112,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnExport 控件。
/// </summary>
@ -92,7 +121,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnExport;
/// <summary>
/// DropDowsnList1 控件。
/// </summary>
@ -101,7 +130,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDowsnList1;
/// <summary>
/// DropDownList1 控件。
/// </summary>
@ -110,7 +139,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList1;
/// <summary>
/// DropDownList2 控件。
/// </summary>
@ -119,7 +148,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList2;
/// <summary>
/// DropDownList3 控件。
/// </summary>
@ -128,7 +157,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList3;
/// <summary>
/// DropDownList4 控件。
/// </summary>
@ -137,7 +166,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList4;
/// <summary>
/// DropDownList5 控件。
/// </summary>
@ -146,7 +175,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList5;
/// <summary>
/// DropDownList6 控件。
/// </summary>
@ -155,7 +184,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList6;
/// <summary>
/// DropDownList7 控件。
/// </summary>
@ -164,7 +193,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList7;
/// <summary>
/// DropDownList8 控件。
/// </summary>
@ -173,7 +202,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList8;
/// <summary>
/// DropDownList9 控件。
/// </summary>
@ -182,7 +211,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList9;
/// <summary>
/// DropDownList10 控件。
/// </summary>
@ -191,7 +220,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList10;
/// <summary>
/// DropDownList11 控件。
/// </summary>
@ -200,7 +229,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList11;
/// <summary>
/// DropDownList12 控件。
/// </summary>
@ -209,7 +238,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList12;
/// <summary>
/// DropDownList13 控件。
/// </summary>
@ -218,7 +247,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList13;
/// <summary>
/// DropDownList14 控件。
/// </summary>
@ -227,7 +256,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList14;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
@ -236,7 +265,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
@ -245,7 +274,7 @@ namespace FineUIPro.Web.Report {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>

View File

@ -3147,9 +3147,9 @@ namespace FineUIPro.Web.Report
using (FileStream filess = File.OpenWrite(ReportFileName))
{
hssfworkbook.Write(filess);
hssfworkbook.Close();
filess.Flush();
filess.Close();
//hssfworkbook.Close();
//filess.Flush();
//filess.Close();
}
percent = 100;
url = ReportFileName.Replace(Server.MapPath("~/"), "");

View File

@ -611,11 +611,11 @@ namespace FineUIPro.Web.ResourcePlan
// 把account 加日期写入StudyWo中
EProjects.StudyWo = eProject.ProjectControl_Account;
if (eProject.ProjectControl_JobType == "Projects" || eProject.ProjectControl_JobType == "Small Invest")
{
EProjects.ProjectControl_Account = null;
ProjectControlAccount = string.Empty;
}
//if (eProject.ProjectControl_JobType == "Projects" || eProject.ProjectControl_JobType == "Small Invest")
//{
// EProjects.ProjectControl_Account = null;
// ProjectControlAccount = string.Empty;
//}
// 后加条件当创建第二个资源时项目批准日期不为空时项目状态为On Going 不要了 修改于2024.07.03
//if (eProject.ProjectControl_JobType == "Other" && eProject.PM_MA_ProjectApproval.HasValue && !eProject.CM_MA_MC.HasValue
@ -638,14 +638,14 @@ namespace FineUIPro.Web.ResourcePlan
if (eProject != null)
{
if (eProject.ProjectControl_JobStatus == "Not Start" && !eProject.PM_MA_ProjectApproval.HasValue)
{
EProjects.ProjectControl_JobStatus = "Study";
}
else
{
//if (eProject.ProjectControl_JobStatus == "Not Start" && !eProject.PM_MA_ProjectApproval.HasValue)
//{
// EProjects.ProjectControl_JobStatus = "Study";
//}
//else
//{
EProjects.ProjectControl_JobStatus = eProject.ProjectControl_JobStatus;
}
//}

View File

@ -1048,14 +1048,14 @@ namespace FineUIPro.Web.ResourcePlan
}
if (eProject != null)
{
if (eProject.ProjectControl_JobStatus == "Not Start" && !eProject.PM_MA_ProjectApproval.HasValue)
{
EProject.ProjectControl_JobStatus = "Study";
}
else
{
//if (eProject.ProjectControl_JobStatus == "Not Start" && !eProject.PM_MA_ProjectApproval.HasValue)
//{
// EProject.ProjectControl_JobStatus = "Study";
//}
//else
//{
EProject.ProjectControl_JobStatus = eProject.ProjectControl_JobStatus;
}
//}
if (cbCDI.Checked)
{

View File

@ -9,7 +9,7 @@
<section name="FineUIPro" type="FineUIPro.ConfigSection, FineUIPro" requirePermission="false"/>
</configSections>
<connectionStrings>
<add name="EProjectDBConnectionString" connectionString="Data Source=.\sql2016;Initial Catalog=EProjectDB;uid=sa;pwd=1111;"/>
<add name="EProjectDBConnectionString" connectionString="Data Source=.\sql2022;Initial Catalog=EProjectDB;uid=sa;pwd=1111;"/>
<!--<add name="HJGLDBConnectionString" connectionString="Data Source=.;Initial Catalog=EProjectDB;Integrated Security=True"
providerName="System.Data.SqlClient" />-->
</connectionStrings>
@ -53,7 +53,7 @@
<add path="ChartImg.axd" verb="GET,POST,HEAD" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
<add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" validate="false"/>
</httpHandlers>
<compilation debug="true" targetFramework="4.8">
<compilation debug="false" targetFramework="4.8">
<assemblies>
<!--<add assembly="Microsoft.Build.Framework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="System.Management, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />-->

View File

@ -19,7 +19,7 @@
.f-grid-row.color1,
.f-grid-row.color1 .f-icon,
.f-grid-row.color1 a {
color:lightgray;
color: lightgray;
}
</style>
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
@ -41,11 +41,11 @@
<f:DropDownList ID="drpJobType" runat="server" AutoPostBack="true" OnSelectedIndexChanged="drpJobType_SelectedIndexChanged" NextFocusControl="btnFind"></f:DropDownList>
<f:DropDownList ID="drpJobStatus" runat="server" EnableCheckBoxSelect="true" EnableMultiSelect="true" NextFocusControl="btnFind" AutoPostBack="true" OnSelectedIndexChanged="drpJobStatus_Click"></f:DropDownList>
<f:DropDownList ID="drpDivision" runat="server" AutoPostBack="true" OnSelectedIndexChanged="dropDownList_Click" NextFocusControl="btnFind"></f:DropDownList>
<f:TextBox ID="txtJobNoS" runat="server" EmptyText="Enter the Job No." EnableBlurEvent="true" OnBlur="dropDownList_Click" NextFocusControl="btnFind"></f:TextBox>
<f:Button ID="btnFind" runat="server" OnClick="btnFind_Click" Hidden="true"></f:Button>
<f:TextBox ID="txtJobNoS" runat="server" EmptyText="Enter the Job No." EnableBlurEvent="true" OnBlur="dropDownList_Click" NextFocusControl="btnFind"></f:TextBox>
<f:Button ID="btnFind" runat="server" OnClick="btnFind_Click" Hidden="true"></f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:HyperLink runat="server" Text="Projects Transmittals" NavigateUrl="\\wcnnji008219389\Projects_Transmittals" Width="160px" Target="_blank"></f:HyperLink>
<f:HyperLink runat="server" Text="Projects Transmittals" NavigateUrl="\\wcnnji008219389\Projects_Transmittals" Width="160px" Target="_blank"></f:HyperLink>
<f:Button ID="btnSearch" runat="server" Icon="SystemSearch" Text="Search" OnClick="btnSearch_Click"></f:Button>
<f:Button ID="btnViewDetail" Icon="User" runat="server" ToolTip="View details" Text="View details" OnClick="btnViewDetail_Click">
</f:Button>
@ -73,40 +73,40 @@
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="90px" ColumnID="ProjectControl_JobNo" DataField="ProjectControl_JobNo" SortField="ProjectControl_JobNo"
FieldType="String" HeaderText="Job No." HeaderTextAlign="Center" >
FieldType="String" HeaderText="Job No." HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_JobType" DataField="ProjectControl_JobType" SortField="ProjectControl_JobType"
FieldType="String" HeaderText="Job Type" HeaderTextAlign="Center" >
FieldType="String" HeaderText="Job Type" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="350px" ColumnID="ProjectControl_JobTitle" DataField="ProjectControl_JobTitle" SortField="ProjectControl_JobTitle"
FieldType="String" HeaderText="Job Title" HeaderTextAlign="Center">
FieldType="String" HeaderText="Job Title" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_OrginalBudget" DataField="ProjectControl_OrginalBudget"
FieldType="Int" HeaderText="Approved<br/>Budget(RMB)" HeaderTextAlign="Center" RendererFunction="renderSalary">
<Editor>
<f:NumberBox runat="server" EnableCommas="true" Readonly="true" />
</Editor>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_ProjectManager" DataField="ProjectControl_ProjectManager"
FieldType="String" HeaderText="Project<br/>Manager" HeaderTextAlign="Center" >
FieldType="String" HeaderText="Project<br/>Manager" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_ConstManager" DataField="ProjectControl_ConstManager"
FieldType="String" HeaderText="Const.<br/>Manager" HeaderTextAlign="Center" >
FieldType="String" HeaderText="Const.<br/>Manager" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_OperationRep" DataField="ProjectControl_OperationRep"
FieldType="String" HeaderText="Operation<br/>Rep." HeaderTextAlign="Center" >
FieldType="String" HeaderText="Operation<br/>Rep." HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_JobStatus" DataField="ProjectControl_JobStatus"
FieldType="String" HeaderText="Job Status" HeaderTextAlign="Center">
FieldType="String" HeaderText="Job Status" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="ProjectControl_BUCode" DataField="ProjectControl_BUCode"
FieldType="String" HeaderText="Bu.Code" HeaderTextAlign="Center" >
FieldType="String" HeaderText="Bu.Code" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PM_MA_ProjectApproval" DataField="PM_MA_ProjectApproval"
FieldType="String" Renderer="Date" HeaderText="Approval<br/>Date" HeaderTextAlign="Center" >
FieldType="String" Renderer="Date" HeaderText="Approval<br/>Date" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="ProjectControl_MS_MC" DataField="ProjectControl_MS_MC"
FieldType="String" Renderer="Date" HeaderText="MC Plan<br/>Date" HeaderTextAlign="Center" >
FieldType="String" Renderer="Date" HeaderText="MC Plan<br/>Date" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField HeaderText="Schedule" runat="server" HeaderTextAlign="Center" ColumnID="tfSchedule" TextAlign="Center" Width="60px">
<ItemTemplate>
@ -293,7 +293,7 @@
<asp:Label ID="lblActualProgress" runat="server" Text='<%# ConvertPro(Eval("ActualProgress")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<%-- <f:RenderField Width="90px" ColumnID="SchProgress" DataField="SchProgress"
<%-- <f:RenderField Width="90px" ColumnID="SchProgress" DataField="SchProgress"
FieldType="String" HeaderText="Sch.Progress" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="ActualProgress" DataField="ActualProgress"
@ -333,7 +333,7 @@
<f:Panel ID="Panel9" Width="350px"
runat="server" BodyPadding="1px" ShowBorder="false" ShowHeader="false">
<Items>
<f:NumberBox ID="txtOrginalBudget" runat="server" Label="Orginal Budget(RMB)" LabelWidth="190px" EnableCommas="true" Readonly="true"></f:NumberBox>
<f:NumberBox ID="txtOrginalBudget" runat="server" Label="Original Budget(RMB)" LabelWidth="190px" EnableCommas="true" Readonly="true"></f:NumberBox>
<f:NumberBox ID="txtChangedBudget" runat="server" Label="Changed Budget(RMB)" LabelWidth="190px" EnableCommas="true" Readonly="true"></f:NumberBox>
<f:NumberBox ID="txtActualCost" runat="server" Label="Actual Cost(RMB)" LabelWidth="190px" EnableCommas="true" Readonly="true"></f:NumberBox>
<f:NumberBox ID="txtCommitted_PRPO" runat="server" Label="Committed_PR/PO(RMB)" LabelWidth="190px" EnableCommas="true" Readonly="true"></f:NumberBox>
@ -387,7 +387,7 @@
runat="server" BodyPadding="1px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Grid ID="Grid6" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
BoxFlex="1" DataKeyNames="" DataIDField="" OnRowDataBound="Grid6_RowDataBound"
BoxFlex="1" DataKeyNames="" DataIDField="" OnRowDataBound="Grid6_RowDataBound"
Height="300px" EnableSummary="true" SummaryPosition="Flow">
<Columns>
<f:RowNumberField EnablePagingNumber="true" Width="40px" HeaderTextAlign="Center"
@ -431,7 +431,7 @@
<Items>
<f:FormRow>
<Items>
<f:TextArea ID="txtEnginering" runat="server" Label="Enginering" Height="60px"></f:TextArea>
<f:TextArea ID="txtEnginering" runat="server" Label="Engineering" Height="60px"></f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
@ -446,7 +446,7 @@
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtQuilaityHSE" runat="server" Label="Quilaity&HSE" Height="60px"></f:TextArea>
<f:TextArea ID="txtQuilaityHSE" runat="server" Label="Quality&HSE" Height="60px"></f:TextArea>
</Items>
</f:FormRow>
</Items>
@ -485,7 +485,7 @@
<f:Tab Title="TDC" BodyPadding="1px" runat="server" AutoScroll="true">
<Items>
<f:Grid ID="GridTDC" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
BoxFlex="1" DataKeyNames="TDCId" DataIDField="TDCId" Height="300px" >
BoxFlex="1" DataKeyNames="TDCId" DataIDField="TDCId" Height="300px">
<Columns>
<f:TemplateField Width="50px" TextAlign="Center">
<ItemTemplate>
@ -643,6 +643,45 @@
</f:Grid>
</Items>
</f:Tab>
<f:Tab Title="Key Quantity" BodyPadding="1px" runat="server">
<Items>
<f:Grid ID="GridKeyQuantity" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
BoxFlex="1" DataKeyNames="KeyQuantityId" DataIDField="KeyQuantityId" Height="300px">
<Columns>
<f:RenderField Width="120px" ColumnID="ProjectControl_JobNo" DataField="ProjectControl_JobNo" SortField="ProjectControl_JobNo"
FieldType="String" HeaderText="Job No" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="DepartName" DataField="DepartName" SortField="DepartName"
FieldType="String" HeaderText="Type" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="DisciplinesWBSCode" DataField="DisciplinesWBSCode"
SortField="DisciplinesWBSCode" FieldType="String" HeaderText="Identifier" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="DisciplinesWBSName" DataField="DisciplinesWBSName"
FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="QuantityDesctiption" DataField="QuantityDesctiption"
FieldType="String" HeaderText="Quantity Description" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="InputQuantity" DataField="InputQuantity"
FieldType="String" HeaderText="Input Quantity" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsUnit" DataField="PlanMHRsUnit"
FieldType="String" HeaderText="Plan MHRs/Unit" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="PlanMHRs" DataField="PlanMHRs"
FieldType="String" HeaderText="Plan MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PlanMHRsSummary" DataField="PlanMHRsSummary"
FieldType="String" HeaderText="Plan MHRs Summary" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ActualMHRs" DataField="ActualMHRs"
FieldType="String" HeaderText="Actual MHRs" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Tab>
</Tabs>
</f:TabStrip>
</Items>
@ -689,10 +728,11 @@
for (var i = 0; i < CostArr.length; i++) {
if (CostArr[i].Monthly != "") {
Legendata += "'" + CostArr[i].Monthly + "',";
var sd = parseFloat(CostArr[i].ActualCost) + parseFloat(CostArr[i].CommittedPRPO) + parseFloat(CostArr[i].CommittedSSRs);
var sd = parseFloat(CostArr[i].ActualCost) + parseFloat(CostArr[i].CommittedPRPO) + parseFloat(CostArr[i].CommittedSSRs + parseFloat(CostArr[i].CostToComplete));
ActCom += "" + sd + ",";
ActComs += "" + CostArr[i].ActualCost + ",";
Budget += "" + CostArr[i].OrginalBudget + ",";
var bg = parseFloat(CostArr[i].OrginalBudget) + parseFloat(CostArr[i].ChangedBudget);
Budget += "" + bg + ",";
}
}
Legendata = '[' + Legendata.substring(0, Legendata.length - 1) + ']';
@ -780,17 +820,17 @@
var ManHours = '';
var Hours = '';
var spanValue1 = 0;
var spanValue2= 0;
var spanValue2 = 0;
for (var i = 0; i < ResourcesArr.length; i++) {
if (ResourcesArr[i].DateMonth != "") {
Legendata += "'" + ResourcesArr[i].DateMonth + "',";
spanValue1 += ResourcesArr[i].ManHours;
ManHours += "" + spanValue1 + ",";
spanValue2 += ResourcesArr[i].Hours;
Hours += "" + spanValue2 + ",";
Hours += "" + spanValue2 + ",";
}
}
console.log("ManHours:"+ManHours);
console.log("ManHours:" + ManHours);
Legendata = '[' + Legendata.substring(0, Legendata.length - 1) + ']';
Legendata = eval(Legendata);
@ -823,7 +863,7 @@
{
type: 'category',
data: Legendata,
axisLabel: {
axisLabel: {
interval: 0, //控制坐标轴刻度标签的显示间隔.设置成 0 强制显示所有标签。设置为 1隔一个标签显示一个标签。设置为2间隔2个标签。以此类推
rotate: -20,//倾斜度 -90 至 90 默认为0
textStyle: {

View File

@ -226,6 +226,10 @@ namespace FineUIPro.Web.common
{
BindGrid9(eProjectId);//FCR Log
}
else if (this.TabStrip1.ActiveTabIndex == 11)
{
BindGridKeyQuantity(eProjectId);//Key Quantity
}
else
{
#region General
@ -335,7 +339,7 @@ namespace FineUIPro.Web.common
}
else
{
this.txtCivilEng.Text = string.Empty;
this.txtCivilEng.Text = string.Empty;
}
//变更范围
if (eProject.PM_SC_ApprovedQty.HasValue)//批准的质量
@ -995,6 +999,22 @@ namespace FineUIPro.Web.common
#endregion
#endregion
#region Key Quantity
private void BindGridKeyQuantity(string eProjectId)
{
List<SqlParameter> listStr = new List<SqlParameter>
{
new SqlParameter("@eprojectId", eProjectId)
};
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunProc("Proc_KeyQuantityLists", parameter);
this.GridKeyQuantity.RecordCount = tb.Rows.Count;
//var table = this.GetPagedDataTable(GridKeyQuantity, tb);
GridKeyQuantity.DataSource = tb;
GridKeyQuantity.DataBind();
}
#endregion
#region
/// <summary>
/// 查看编辑器详细信息
@ -1087,37 +1107,30 @@ namespace FineUIPro.Web.common
//Cost 成本
System.Web.UI.WebControls.Image imgCost = (System.Web.UI.WebControls.Image)this.Grid1.Rows[i].FindControl("imgCost");
double s = 0;
//获取项目的最新成本
var costManage = BLL.CostReportService.GetMaxMonthCostReportByEprojectId(eprojectId);
if (costManage != null)
decimal? orginalBudget = eproject.ProjectControl_OrginalBudget.HasValue ? eproject.ProjectControl_OrginalBudget : 0;//原始的预算
decimal? changedBudget = eproject.ProjectControl_ChangedBudget.HasValue ? eproject.ProjectControl_ChangedBudget : 0;//变更的预算
decimal? actualCost = eproject.ProjectControl_Actual.HasValue ? eproject.ProjectControl_Actual : 0;//实际的成本
decimal? committedPRPO = eproject.ProjectControl_CommittedPRPO.HasValue ? eproject.ProjectControl_CommittedPRPO : 0;//承诺的PR或PO成本
decimal? committedSSRs = eproject.ProjectControl_CommittedSSRs.HasValue ? eproject.ProjectControl_CommittedSSRs : 0; //承诺的SSR成本
decimal? costToComplete = eproject.PM_General_CostToComplete.HasValue ? eproject.PM_General_CostToComplete : 0; //预估的完工任需成本
decimal? rmb = actualCost + committedPRPO + committedSSRs + costToComplete;//预估的最终成本=实际的成本+承诺的PR或PO成本+承诺的SSR成本+预估的完工任需成本
//成本差异=(预估的最终成本-原始的预算-变更的预算)/(原始的预算+变更的预算)*100%
if (orginalBudget + changedBudget > 0)
{
decimal? orginalBudget = costManage.OrginalBudget.HasValue ? costManage.OrginalBudget : 0;//原始的预算
decimal? changedBudget = costManage.ChangedBudget.HasValue ? costManage.ChangedBudget : 0;//变更的预算
decimal? actualCost = costManage.ActualCost.HasValue ? costManage.ActualCost : 0;//实际的成本
decimal? committedPRPO = costManage.CommittedPRPO.HasValue ? costManage.CommittedPRPO : 0;//承诺的PR或PO成本
decimal? committedSSRs = costManage.CommittedSSRs.HasValue ? costManage.CommittedSSRs : 0; //承诺的SSR成本
decimal? costToComplete = costManage.CostToComplete.HasValue ? costManage.CostToComplete : 0; //预估的完工任需成本
decimal? rmb = actualCost + committedPRPO + committedSSRs + costToComplete;//预估的最终成本=实际的成本+承诺的PR或PO成本+承诺的SSR成本+预估的完工任需成本
//成本差异=(预估的最终成本-原始的预算-变更的预算)/(原始的预算+变更的预算)*100%
if (orginalBudget + changedBudget > 0)
s = Convert.ToDouble((rmb - orginalBudget - changedBudget) / (orginalBudget + changedBudget));
if (s > 0.1)
{
s = Convert.ToDouble((rmb - orginalBudget - changedBudget) / (orginalBudget + changedBudget));
if (s > 0.1)
{
imgCost.ImageUrl = "../Images/RedLight.jpg";
}
else if (0.1 >= s && s > 0.05)
{
imgCost.ImageUrl = "../Images/YellowLight.jpg";
}
else if (s <= 0.05)
{
imgCost.ImageUrl = "../Images/GreenLight.jpg";
}
imgCost.ImageUrl = "../Images/RedLight.jpg";
}
else
else if (0.1 >= s && s > 0.05)
{
imgCost.ImageUrl = "../Images/NoLight.jpg";
imgCost.ImageUrl = "../Images/YellowLight.jpg";
}
else if (s <= 0.05)
{
imgCost.ImageUrl = "../Images/GreenLight.jpg";
}
}
else
@ -1125,6 +1138,45 @@ namespace FineUIPro.Web.common
imgCost.ImageUrl = "../Images/NoLight.jpg";
}
#region
//获取项目的最新成本
//var costManage = BLL.CostReportService.GetMaxMonthCostReportByEprojectId(eprojectId);
//if (costManage != null)
//{
// decimal? orginalBudget = costManage.OrginalBudget.HasValue ? costManage.OrginalBudget : 0;//原始的预算
// decimal? changedBudget = costManage.ChangedBudget.HasValue ? costManage.ChangedBudget : 0;//变更的预算
// decimal? actualCost = costManage.ActualCost.HasValue ? costManage.ActualCost : 0;//实际的成本
// decimal? committedPRPO = costManage.CommittedPRPO.HasValue ? costManage.CommittedPRPO : 0;//承诺的PR或PO成本
// decimal? committedSSRs = costManage.CommittedSSRs.HasValue ? costManage.CommittedSSRs : 0; //承诺的SSR成本
// decimal? costToComplete = costManage.CostToComplete.HasValue ? costManage.CostToComplete : 0; //预估的完工任需成本
// decimal? rmb = actualCost + committedPRPO + committedSSRs + costToComplete;//预估的最终成本=实际的成本+承诺的PR或PO成本+承诺的SSR成本+预估的完工任需成本
// //成本差异=(预估的最终成本-原始的预算-变更的预算)/(原始的预算+变更的预算)*100%
// if (orginalBudget + changedBudget > 0)
// {
// s = Convert.ToDouble((rmb - orginalBudget - changedBudget) / (orginalBudget + changedBudget));
// if (s > 0.1)
// {
// imgCost.ImageUrl = "../Images/RedLight.jpg";
// }
// else if (0.1 >= s && s > 0.05)
// {
// imgCost.ImageUrl = "../Images/YellowLight.jpg";
// }
// else if (s <= 0.05)
// {
// imgCost.ImageUrl = "../Images/GreenLight.jpg";
// }
// }
// else
// {
// imgCost.ImageUrl = "../Images/NoLight.jpg";
// }
//}
//else
//{
// imgCost.ImageUrl = "../Images/NoLight.jpg";
//}
#endregion
#endregion
#region
// Scope 范围指标

View File

@ -1013,6 +1013,15 @@ namespace FineUIPro.Web.common
/// </remarks>
protected global::FineUIPro.Grid Grid9;
/// <summary>
/// GridKeyQuantity 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid GridKeyQuantity;
/// <summary>
/// Window1 控件。
/// </summary>

View File

@ -1527,7 +1527,7 @@ namespace FineUIPro.Web
{
var Sendes1 = (from u in Sys_UserService.GetUserList()
join r in Funs.DB.Sys_Role on u.RoleId equals r.RoleId
where r.RoleName == "CTE_Manager" || r.RoleName == "Accounting"
where r.RoleName == "CTE_Manager" //|| r.RoleName == "Accounting"
select new { EmuaerEmailAddress = u.Email, senduserid = u.UserId }
).Distinct().ToList();
var Senders = Sendes1.Union(Sendes2);

View File

@ -129,24 +129,27 @@ namespace FineUIPro.Web
leftPanel.Items.Add(accordionMenu);
var dt = GetNewMenu("0");
foreach (var dr in dt)
if (dt.Count() > 0)
{
AccordionPane accordionPane = new AccordionPane();
accordionPane.Title = dr.MenuName;
//accordionPane.Layout = Layout.Fit;
accordionPane.ShowBorder = false;
accordionPane.BodyPadding = "2px 0 0 0";
accordionMenu.Items.Add(accordionPane);
foreach (var dr in dt)
{
AccordionPane accordionPane = new AccordionPane();
accordionPane.Title = dr.MenuName;
//accordionPane.Layout = Layout.Fit;
accordionPane.ShowBorder = false;
accordionPane.BodyPadding = "2px 0 0 0";
accordionMenu.Items.Add(accordionPane);
Tree innerTree = new Tree();
innerTree.ShowBorder = false;
innerTree.ShowHeader = false;
innerTree.EnableIcons = true;
innerTree.AutoScroll = true;
innerTree.EnableSingleClickExpand = true;
accordionPane.Items.Add(innerTree);
Tree innerTree = new Tree();
innerTree.ShowBorder = false;
innerTree.ShowHeader = false;
innerTree.EnableIcons = true;
innerTree.AutoScroll = true;
innerTree.EnableSingleClickExpand = true;
accordionPane.Items.Add(innerTree);
BoundTree(innerTree.Nodes, dr.MenuId);
BoundTree(innerTree.Nodes, dr.MenuId);
}
}
return accordionMenu;
}

View File

@ -53,6 +53,9 @@ namespace Model
partial void InsertBase_HyperLinkSet(Base_HyperLinkSet instance);
partial void UpdateBase_HyperLinkSet(Base_HyperLinkSet instance);
partial void DeleteBase_HyperLinkSet(Base_HyperLinkSet instance);
partial void InsertBase_QuantityDesctiption(Base_QuantityDesctiption instance);
partial void UpdateBase_QuantityDesctiption(Base_QuantityDesctiption instance);
partial void DeleteBase_QuantityDesctiption(Base_QuantityDesctiption instance);
partial void InsertDesign_Input(Design_Input instance);
partial void UpdateDesign_Input(Design_Input instance);
partial void DeleteDesign_Input(Design_Input instance);
@ -80,6 +83,9 @@ namespace Model
partial void InsertEditor_FCRLog(Editor_FCRLog instance);
partial void UpdateEditor_FCRLog(Editor_FCRLog instance);
partial void DeleteEditor_FCRLog(Editor_FCRLog instance);
partial void InsertEditor_KeyQuantity(Editor_KeyQuantity instance);
partial void UpdateEditor_KeyQuantity(Editor_KeyQuantity instance);
partial void DeleteEditor_KeyQuantity(Editor_KeyQuantity instance);
partial void InsertEditor_LessonsLearned(Editor_LessonsLearned instance);
partial void UpdateEditor_LessonsLearned(Editor_LessonsLearned instance);
partial void DeleteEditor_LessonsLearned(Editor_LessonsLearned instance);
@ -260,6 +266,14 @@ namespace Model
}
}
public System.Data.Linq.Table<Base_QuantityDesctiption> Base_QuantityDesctiption
{
get
{
return this.GetTable<Base_QuantityDesctiption>();
}
}
public System.Data.Linq.Table<Design_Input> Design_Input
{
get
@ -332,6 +346,14 @@ namespace Model
}
}
public System.Data.Linq.Table<Editor_KeyQuantity> Editor_KeyQuantity
{
get
{
return this.GetTable<Editor_KeyQuantity>();
}
}
public System.Data.Linq.Table<Editor_LessonsLearned> Editor_LessonsLearned
{
get
@ -1871,7 +1893,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartCode", DbType="NVarChar(10)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartCode", DbType="NVarChar(20)")]
public string DepartCode
{
get
@ -2055,6 +2077,8 @@ namespace Model
private string _NetworkOper1;
private EntitySet<Base_QuantityDesctiption> _Base_QuantityDesctiption;
#region
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@ -2095,6 +2119,7 @@ namespace Model
public Base_DisciplinesWBS()
{
this._Base_QuantityDesctiption = new EntitySet<Base_QuantityDesctiption>(new Action<Base_QuantityDesctiption>(this.attach_Base_QuantityDesctiption), new Action<Base_QuantityDesctiption>(this.detach_Base_QuantityDesctiption));
OnCreated();
}
@ -2418,6 +2443,19 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Base_QuantityDesctiption_Base_DisciplinesWBS", Storage="_Base_QuantityDesctiption", ThisKey="DisciplinesWBSId", OtherKey="DisciplinesWBSId", DeleteRule="NO ACTION")]
public EntitySet<Base_QuantityDesctiption> Base_QuantityDesctiption
{
get
{
return this._Base_QuantityDesctiption;
}
set
{
this._Base_QuantityDesctiption.Assign(value);
}
}
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@ -2437,6 +2475,18 @@ namespace Model
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
private void attach_Base_QuantityDesctiption(Base_QuantityDesctiption entity)
{
this.SendPropertyChanging();
entity.Base_DisciplinesWBS = this;
}
private void detach_Base_QuantityDesctiption(Base_QuantityDesctiption entity)
{
this.SendPropertyChanging();
entity.Base_DisciplinesWBS = null;
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Base_HyperLinkSet")]
@ -2573,6 +2623,233 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Base_QuantityDesctiption")]
public partial class Base_QuantityDesctiption : INotifyPropertyChanging, INotifyPropertyChanged
{
private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
private string _KeyId;
private string _DepartId;
private string _DisciplinesWBSId;
private string _QuantityDesctiption;
private System.Nullable<decimal> _PlanMHRsUnit;
private EntityRef<Base_DisciplinesWBS> _Base_DisciplinesWBS;
private EntitySet<Editor_KeyQuantity> _Editor_KeyQuantity;
#region
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
partial void OnCreated();
partial void OnKeyIdChanging(string value);
partial void OnKeyIdChanged();
partial void OnDepartIdChanging(string value);
partial void OnDepartIdChanged();
partial void OnDisciplinesWBSIdChanging(string value);
partial void OnDisciplinesWBSIdChanged();
partial void OnQuantityDesctiptionChanging(string value);
partial void OnQuantityDesctiptionChanged();
partial void OnPlanMHRsUnitChanging(System.Nullable<decimal> value);
partial void OnPlanMHRsUnitChanged();
#endregion
public Base_QuantityDesctiption()
{
this._Base_DisciplinesWBS = default(EntityRef<Base_DisciplinesWBS>);
this._Editor_KeyQuantity = new EntitySet<Editor_KeyQuantity>(new Action<Editor_KeyQuantity>(this.attach_Editor_KeyQuantity), new Action<Editor_KeyQuantity>(this.detach_Editor_KeyQuantity));
OnCreated();
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_KeyId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
public string KeyId
{
get
{
return this._KeyId;
}
set
{
if ((this._KeyId != value))
{
this.OnKeyIdChanging(value);
this.SendPropertyChanging();
this._KeyId = value;
this.SendPropertyChanged("KeyId");
this.OnKeyIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartId", DbType="NVarChar(50)")]
public string DepartId
{
get
{
return this._DepartId;
}
set
{
if ((this._DepartId != value))
{
this.OnDepartIdChanging(value);
this.SendPropertyChanging();
this._DepartId = value;
this.SendPropertyChanged("DepartId");
this.OnDepartIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DisciplinesWBSId", DbType="NVarChar(50)")]
public string DisciplinesWBSId
{
get
{
return this._DisciplinesWBSId;
}
set
{
if ((this._DisciplinesWBSId != value))
{
if (this._Base_DisciplinesWBS.HasLoadedOrAssignedValue)
{
throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
}
this.OnDisciplinesWBSIdChanging(value);
this.SendPropertyChanging();
this._DisciplinesWBSId = value;
this.SendPropertyChanged("DisciplinesWBSId");
this.OnDisciplinesWBSIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_QuantityDesctiption", DbType="NVarChar(200)")]
public string QuantityDesctiption
{
get
{
return this._QuantityDesctiption;
}
set
{
if ((this._QuantityDesctiption != value))
{
this.OnQuantityDesctiptionChanging(value);
this.SendPropertyChanging();
this._QuantityDesctiption = value;
this.SendPropertyChanged("QuantityDesctiption");
this.OnQuantityDesctiptionChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlanMHRsUnit", DbType="Decimal(18,2)")]
public System.Nullable<decimal> PlanMHRsUnit
{
get
{
return this._PlanMHRsUnit;
}
set
{
if ((this._PlanMHRsUnit != value))
{
this.OnPlanMHRsUnitChanging(value);
this.SendPropertyChanging();
this._PlanMHRsUnit = value;
this.SendPropertyChanged("PlanMHRsUnit");
this.OnPlanMHRsUnitChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Base_QuantityDesctiption_Base_DisciplinesWBS", Storage="_Base_DisciplinesWBS", ThisKey="DisciplinesWBSId", OtherKey="DisciplinesWBSId", IsForeignKey=true)]
public Base_DisciplinesWBS Base_DisciplinesWBS
{
get
{
return this._Base_DisciplinesWBS.Entity;
}
set
{
Base_DisciplinesWBS previousValue = this._Base_DisciplinesWBS.Entity;
if (((previousValue != value)
|| (this._Base_DisciplinesWBS.HasLoadedOrAssignedValue == false)))
{
this.SendPropertyChanging();
if ((previousValue != null))
{
this._Base_DisciplinesWBS.Entity = null;
previousValue.Base_QuantityDesctiption.Remove(this);
}
this._Base_DisciplinesWBS.Entity = value;
if ((value != null))
{
value.Base_QuantityDesctiption.Add(this);
this._DisciplinesWBSId = value.DisciplinesWBSId;
}
else
{
this._DisciplinesWBSId = default(string);
}
this.SendPropertyChanged("Base_DisciplinesWBS");
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Editor_KeyQuantity_Base_QuantityDesctiption", Storage="_Editor_KeyQuantity", ThisKey="KeyId", OtherKey="KeyId", DeleteRule="NO ACTION")]
public EntitySet<Editor_KeyQuantity> Editor_KeyQuantity
{
get
{
return this._Editor_KeyQuantity;
}
set
{
this._Editor_KeyQuantity.Assign(value);
}
}
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void SendPropertyChanging()
{
if ((this.PropertyChanging != null))
{
this.PropertyChanging(this, emptyChangingEventArgs);
}
}
protected virtual void SendPropertyChanged(String propertyName)
{
if ((this.PropertyChanged != null))
{
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
private void attach_Editor_KeyQuantity(Editor_KeyQuantity entity)
{
this.SendPropertyChanging();
entity.Base_QuantityDesctiption = this;
}
private void detach_Editor_KeyQuantity(Editor_KeyQuantity entity)
{
this.SendPropertyChanging();
entity.Base_QuantityDesctiption = null;
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Design_Input")]
public partial class Design_Input : INotifyPropertyChanging, INotifyPropertyChanged
{
@ -5678,6 +5955,8 @@ namespace Model
private string _ProjectControl_ProjectType;
private System.Nullable<System.DateTime> _ProjectControl_RFSU_CloseDate;
private EntitySet<Design_Input> _Design_Input;
private EntitySet<Editor_AreaConcern> _Editor_AreaConcern;
@ -5690,6 +5969,8 @@ namespace Model
private EntitySet<Editor_FCRLog> _Editor_FCRLog;
private EntitySet<Editor_KeyQuantity> _Editor_KeyQuantity;
private EntitySet<Editor_LessonsLearned> _Editor_LessonsLearned;
private EntitySet<Editor_Punch> _Editor_Punch;
@ -6112,6 +6393,8 @@ namespace Model
partial void OnPM_Pre_ApprovalChanged();
partial void OnProjectControl_ProjectTypeChanging(string value);
partial void OnProjectControl_ProjectTypeChanged();
partial void OnProjectControl_RFSU_CloseDateChanging(System.Nullable<System.DateTime> value);
partial void OnProjectControl_RFSU_CloseDateChanged();
#endregion
public Editor_EProject()
@ -6122,6 +6405,7 @@ namespace Model
this._Editor_CostReport = new EntitySet<Editor_CostReport>(new Action<Editor_CostReport>(this.attach_Editor_CostReport), new Action<Editor_CostReport>(this.detach_Editor_CostReport));
this._Editor_PM = new EntitySet<Editor_PM>(new Action<Editor_PM>(this.attach_Editor_PM), new Action<Editor_PM>(this.detach_Editor_PM));
this._Editor_FCRLog = new EntitySet<Editor_FCRLog>(new Action<Editor_FCRLog>(this.attach_Editor_FCRLog), new Action<Editor_FCRLog>(this.detach_Editor_FCRLog));
this._Editor_KeyQuantity = new EntitySet<Editor_KeyQuantity>(new Action<Editor_KeyQuantity>(this.attach_Editor_KeyQuantity), new Action<Editor_KeyQuantity>(this.detach_Editor_KeyQuantity));
this._Editor_LessonsLearned = new EntitySet<Editor_LessonsLearned>(new Action<Editor_LessonsLearned>(this.attach_Editor_LessonsLearned), new Action<Editor_LessonsLearned>(this.detach_Editor_LessonsLearned));
this._Editor_Punch = new EntitySet<Editor_Punch>(new Action<Editor_Punch>(this.attach_Editor_Punch), new Action<Editor_Punch>(this.detach_Editor_Punch));
this._ManHours_Plan = new EntitySet<ManHours_Plan>(new Action<ManHours_Plan>(this.attach_ManHours_Plan), new Action<ManHours_Plan>(this.detach_ManHours_Plan));
@ -6811,7 +7095,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_Remarks_Construction", DbType="NVarChar(2000)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_Remarks_Construction", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
public string CM_Remarks_Construction
{
get
@ -6831,7 +7115,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_Remarks_Procurement", DbType="NVarChar(2000)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_Remarks_Procurement", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
public string CM_Remarks_Procurement
{
get
@ -6851,7 +7135,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_Remarks_QualityHSE", DbType="NVarChar(2000)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_Remarks_QualityHSE", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
public string CM_Remarks_QualityHSE
{
get
@ -10191,6 +10475,26 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectControl_RFSU_CloseDate", DbType="DateTime")]
public System.Nullable<System.DateTime> ProjectControl_RFSU_CloseDate
{
get
{
return this._ProjectControl_RFSU_CloseDate;
}
set
{
if ((this._ProjectControl_RFSU_CloseDate != value))
{
this.OnProjectControl_RFSU_CloseDateChanging(value);
this.SendPropertyChanging();
this._ProjectControl_RFSU_CloseDate = value;
this.SendPropertyChanged("ProjectControl_RFSU_CloseDate");
this.OnProjectControl_RFSU_CloseDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Design_Input_Editor_EProject", Storage="_Design_Input", ThisKey="EProjectId", OtherKey="EProjectId", DeleteRule="NO ACTION")]
public EntitySet<Design_Input> Design_Input
{
@ -10269,6 +10573,19 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Editor_KeyQuantity_Editor_EProject", Storage="_Editor_KeyQuantity", ThisKey="EProjectId", OtherKey="EProjectId", DeleteRule="NO ACTION")]
public EntitySet<Editor_KeyQuantity> Editor_KeyQuantity
{
get
{
return this._Editor_KeyQuantity;
}
set
{
this._Editor_KeyQuantity.Assign(value);
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Editor_LessonsLearned_Editor_EProject", Storage="_Editor_LessonsLearned", ThisKey="EProjectId", OtherKey="EProjectId", DeleteRule="NO ACTION")]
public EntitySet<Editor_LessonsLearned> Editor_LessonsLearned
{
@ -10439,6 +10756,18 @@ namespace Model
entity.Editor_EProject = null;
}
private void attach_Editor_KeyQuantity(Editor_KeyQuantity entity)
{
this.SendPropertyChanging();
entity.Editor_EProject = this;
}
private void detach_Editor_KeyQuantity(Editor_KeyQuantity entity)
{
this.SendPropertyChanging();
entity.Editor_EProject = null;
}
private void attach_Editor_LessonsLearned(Editor_LessonsLearned entity)
{
this.SendPropertyChanging();
@ -11194,6 +11523,366 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Editor_KeyQuantity")]
public partial class Editor_KeyQuantity : INotifyPropertyChanging, INotifyPropertyChanged
{
private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
private string _KeyQuantityId;
private string _EProjectId;
private string _KeyId;
private System.Nullable<decimal> _InputQuantity;
private System.Nullable<decimal> _PlanMHRs;
private string _Identifier;
private string _Descipline;
private string _QuantityDesctiption;
private System.Nullable<decimal> _PlanMHRsUnit;
private string _Type;
private EntityRef<Base_QuantityDesctiption> _Base_QuantityDesctiption;
private EntityRef<Editor_EProject> _Editor_EProject;
#region
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
partial void OnCreated();
partial void OnKeyQuantityIdChanging(string value);
partial void OnKeyQuantityIdChanged();
partial void OnEProjectIdChanging(string value);
partial void OnEProjectIdChanged();
partial void OnKeyIdChanging(string value);
partial void OnKeyIdChanged();
partial void OnInputQuantityChanging(System.Nullable<decimal> value);
partial void OnInputQuantityChanged();
partial void OnPlanMHRsChanging(System.Nullable<decimal> value);
partial void OnPlanMHRsChanged();
partial void OnIdentifierChanging(string value);
partial void OnIdentifierChanged();
partial void OnDesciplineChanging(string value);
partial void OnDesciplineChanged();
partial void OnQuantityDesctiptionChanging(string value);
partial void OnQuantityDesctiptionChanged();
partial void OnPlanMHRsUnitChanging(System.Nullable<decimal> value);
partial void OnPlanMHRsUnitChanged();
partial void OnTypeChanging(string value);
partial void OnTypeChanged();
#endregion
public Editor_KeyQuantity()
{
this._Base_QuantityDesctiption = default(EntityRef<Base_QuantityDesctiption>);
this._Editor_EProject = default(EntityRef<Editor_EProject>);
OnCreated();
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_KeyQuantityId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
public string KeyQuantityId
{
get
{
return this._KeyQuantityId;
}
set
{
if ((this._KeyQuantityId != value))
{
this.OnKeyQuantityIdChanging(value);
this.SendPropertyChanging();
this._KeyQuantityId = value;
this.SendPropertyChanged("KeyQuantityId");
this.OnKeyQuantityIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EProjectId", DbType="NVarChar(50)")]
public string EProjectId
{
get
{
return this._EProjectId;
}
set
{
if ((this._EProjectId != value))
{
if (this._Editor_EProject.HasLoadedOrAssignedValue)
{
throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
}
this.OnEProjectIdChanging(value);
this.SendPropertyChanging();
this._EProjectId = value;
this.SendPropertyChanged("EProjectId");
this.OnEProjectIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_KeyId", DbType="NVarChar(50)")]
public string KeyId
{
get
{
return this._KeyId;
}
set
{
if ((this._KeyId != value))
{
if (this._Base_QuantityDesctiption.HasLoadedOrAssignedValue)
{
throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
}
this.OnKeyIdChanging(value);
this.SendPropertyChanging();
this._KeyId = value;
this.SendPropertyChanged("KeyId");
this.OnKeyIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InputQuantity", DbType="Decimal(18,2)")]
public System.Nullable<decimal> InputQuantity
{
get
{
return this._InputQuantity;
}
set
{
if ((this._InputQuantity != value))
{
this.OnInputQuantityChanging(value);
this.SendPropertyChanging();
this._InputQuantity = value;
this.SendPropertyChanged("InputQuantity");
this.OnInputQuantityChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlanMHRs", DbType="Decimal(18,2)")]
public System.Nullable<decimal> PlanMHRs
{
get
{
return this._PlanMHRs;
}
set
{
if ((this._PlanMHRs != value))
{
this.OnPlanMHRsChanging(value);
this.SendPropertyChanging();
this._PlanMHRs = value;
this.SendPropertyChanged("PlanMHRs");
this.OnPlanMHRsChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Identifier", DbType="NVarChar(50)")]
public string Identifier
{
get
{
return this._Identifier;
}
set
{
if ((this._Identifier != value))
{
this.OnIdentifierChanging(value);
this.SendPropertyChanging();
this._Identifier = value;
this.SendPropertyChanged("Identifier");
this.OnIdentifierChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Descipline", DbType="NVarChar(50)")]
public string Descipline
{
get
{
return this._Descipline;
}
set
{
if ((this._Descipline != value))
{
this.OnDesciplineChanging(value);
this.SendPropertyChanging();
this._Descipline = value;
this.SendPropertyChanged("Descipline");
this.OnDesciplineChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_QuantityDesctiption", DbType="NVarChar(200)")]
public string QuantityDesctiption
{
get
{
return this._QuantityDesctiption;
}
set
{
if ((this._QuantityDesctiption != value))
{
this.OnQuantityDesctiptionChanging(value);
this.SendPropertyChanging();
this._QuantityDesctiption = value;
this.SendPropertyChanged("QuantityDesctiption");
this.OnQuantityDesctiptionChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlanMHRsUnit", DbType="Decimal(18,2)")]
public System.Nullable<decimal> PlanMHRsUnit
{
get
{
return this._PlanMHRsUnit;
}
set
{
if ((this._PlanMHRsUnit != value))
{
this.OnPlanMHRsUnitChanging(value);
this.SendPropertyChanging();
this._PlanMHRsUnit = value;
this.SendPropertyChanged("PlanMHRsUnit");
this.OnPlanMHRsUnitChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Type", DbType="NVarChar(50)")]
public string Type
{
get
{
return this._Type;
}
set
{
if ((this._Type != value))
{
this.OnTypeChanging(value);
this.SendPropertyChanging();
this._Type = value;
this.SendPropertyChanged("Type");
this.OnTypeChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Editor_KeyQuantity_Base_QuantityDesctiption", Storage="_Base_QuantityDesctiption", ThisKey="KeyId", OtherKey="KeyId", IsForeignKey=true)]
public Base_QuantityDesctiption Base_QuantityDesctiption
{
get
{
return this._Base_QuantityDesctiption.Entity;
}
set
{
Base_QuantityDesctiption previousValue = this._Base_QuantityDesctiption.Entity;
if (((previousValue != value)
|| (this._Base_QuantityDesctiption.HasLoadedOrAssignedValue == false)))
{
this.SendPropertyChanging();
if ((previousValue != null))
{
this._Base_QuantityDesctiption.Entity = null;
previousValue.Editor_KeyQuantity.Remove(this);
}
this._Base_QuantityDesctiption.Entity = value;
if ((value != null))
{
value.Editor_KeyQuantity.Add(this);
this._KeyId = value.KeyId;
}
else
{
this._KeyId = default(string);
}
this.SendPropertyChanged("Base_QuantityDesctiption");
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Editor_KeyQuantity_Editor_EProject", Storage="_Editor_EProject", ThisKey="EProjectId", OtherKey="EProjectId", IsForeignKey=true)]
public Editor_EProject Editor_EProject
{
get
{
return this._Editor_EProject.Entity;
}
set
{
Editor_EProject previousValue = this._Editor_EProject.Entity;
if (((previousValue != value)
|| (this._Editor_EProject.HasLoadedOrAssignedValue == false)))
{
this.SendPropertyChanging();
if ((previousValue != null))
{
this._Editor_EProject.Entity = null;
previousValue.Editor_KeyQuantity.Remove(this);
}
this._Editor_EProject.Entity = value;
if ((value != null))
{
value.Editor_KeyQuantity.Add(this);
this._EProjectId = value.EProjectId;
}
else
{
this._EProjectId = default(string);
}
this.SendPropertyChanged("Editor_EProject");
}
}
}
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void SendPropertyChanging()
{
if ((this.PropertyChanging != null))
{
this.PropertyChanging(this, emptyChangingEventArgs);
}
}
protected virtual void SendPropertyChanged(String propertyName)
{
if ((this.PropertyChanged != null))
{
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Editor_LessonsLearned")]
public partial class Editor_LessonsLearned : INotifyPropertyChanging, INotifyPropertyChanged
{
@ -15282,6 +15971,8 @@ namespace Model
private System.Nullable<int> _IsClose;
private string _Phase;
private EntityRef<Editor_EProject> _Editor_EProject;
private EntityRef<Resource_Plan> _Resource_Plan;
@ -15318,6 +16009,8 @@ namespace Model
partial void OnAccountDisabledChanged();
partial void OnIsCloseChanging(System.Nullable<int> value);
partial void OnIsCloseChanged();
partial void OnPhaseChanging(string value);
partial void OnPhaseChanged();
#endregion
public ManHours_Plan()
@ -15581,6 +16274,26 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Phase", DbType="NVarChar(50)")]
public string Phase
{
get
{
return this._Phase;
}
set
{
if ((this._Phase != value))
{
this.OnPhaseChanging(value);
this.SendPropertyChanging();
this._Phase = value;
this.SendPropertyChanged("Phase");
this.OnPhaseChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_ManHours_Plan_Editor_EProject", Storage="_Editor_EProject", ThisKey="EProjectId", OtherKey="EProjectId", IsForeignKey=true)]
public Editor_EProject Editor_EProject
{
@ -27888,8 +28601,6 @@ namespace Model
private string _CM_CM_RevisedEnd;
private string _CM_KickOffMetting;
private System.Nullable<System.DateTime> _ProjectControl_Revised_MC_Date;
private string _ProjectControl_Remarks;
@ -27916,6 +28627,14 @@ namespace Model
private string _Job_Hold;
private string _CM_KickOffMetting;
private string _PM_Remarks_Engineering;
private string _PM_Remarks_Procurement;
private string _CM_Remarks_Construction;
public View_ProjectListReport()
{
}
@ -28944,22 +29663,6 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_KickOffMetting", DbType="VarChar(10)")]
public string CM_KickOffMetting
{
get
{
return this._CM_KickOffMetting;
}
set
{
if ((this._CM_KickOffMetting != value))
{
this._CM_KickOffMetting = value;
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectControl_Revised_MC_Date", DbType="DateTime")]
public System.Nullable<System.DateTime> ProjectControl_Revised_MC_Date
{
@ -29167,6 +29870,70 @@ namespace Model
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_KickOffMetting", DbType="VarChar(10)")]
public string CM_KickOffMetting
{
get
{
return this._CM_KickOffMetting;
}
set
{
if ((this._CM_KickOffMetting != value))
{
this._CM_KickOffMetting = value;
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PM_Remarks_Engineering", DbType="NVarChar(2000)")]
public string PM_Remarks_Engineering
{
get
{
return this._PM_Remarks_Engineering;
}
set
{
if ((this._PM_Remarks_Engineering != value))
{
this._PM_Remarks_Engineering = value;
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PM_Remarks_Procurement", DbType="NVarChar(2000)")]
public string PM_Remarks_Procurement
{
get
{
return this._PM_Remarks_Procurement;
}
set
{
if ((this._PM_Remarks_Procurement != value))
{
this._PM_Remarks_Procurement = value;
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CM_Remarks_Construction", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
public string CM_Remarks_Construction
{
get
{
return this._CM_Remarks_Construction;
}
set
{
if ((this._CM_Remarks_Construction != value))
{
this._CM_Remarks_Construction = value;
}
}
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.View_Punch")]
@ -35938,7 +36705,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartCode", DbType="NVarChar(10)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartCode", DbType="NVarChar(20)")]
public string DepartCode
{
get

View File

@ -8,7 +8,7 @@
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
<UseGlobalApplicationHostFile />
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
</PropertyGroup>
<ProjectExtensions>
<VisualStudio>