From 809c06a3cb6e03fbda0ab9ac262960ff39a46feb Mon Sep 17 00:00:00 2001 From: shecs <408299694@qq.com> Date: Mon, 11 Nov 2024 16:10:08 +0800 Subject: [PATCH] 11 --- .../BLL/APIService/SyncUserInfoService.cs | 5 +- EProject/BLL/BaseInfo/ConstService.cs | 30 ++ EProject/BLL/EditorManage/EProjectService.cs | 12 +- .../BaseInfo/ProjectPlannerJobStatus.aspx | 15 +- .../BaseInfo/ProjectPlannerJobStatus.aspx.cs | 17 +- .../ProjectPlannerJobStatus.aspx.designer.cs | 57 ++-- .../FineUIPro.Web/Design/DesignInput.aspx | 2 +- .../FineUIPro.Web/Design/DesignInput.aspx.cs | 15 +- .../EditorManage/AreaConcernEditor.aspx | 2 +- .../EditorManage/AreaConcernEditor.aspx.cs | 14 +- .../FineUIPro.Web/EditorManage/CMEditor.aspx | 2 +- .../EditorManage/CMEditor.aspx.cs | 16 +- .../EditorManage/CMEditorEdit.aspx.cs | 17 +- .../EditorManage/FCRLogEditor.aspx | 2 +- .../EditorManage/FCRLogEditor.aspx.cs | 14 +- .../EditorManage/LessonsLearnedEditor.aspx | 2 +- .../EditorManage/LessonsLearnedEditor.aspx.cs | 15 +- .../FineUIPro.Web/EditorManage/PMEditor.aspx | 2 +- .../EditorManage/PMEditor.aspx.cs | 14 +- .../EditorManage/PMEditorEdit.aspx.cs | 34 ++- .../EditorManage/PermitEditor.aspx | 2 +- .../EditorManage/PermitEditor.aspx.cs | 14 +- .../EditorManage/ProjectControlEditor.aspx | 2 +- .../EditorManage/ProjectControlEditor.aspx.cs | 15 +- .../ProjectControlEditorEdit.aspx | 17 +- .../ProjectControlEditorEdit.aspx.cs | 54 +++- .../ProjectControlEditorEdit.aspx.designer.cs | 13 +- .../EditorManage/PunchEditor.aspx | 2 +- .../EditorManage/PunchEditor.aspx.cs | 15 +- .../EditorManage/SQIBEditor.aspx | 2 +- .../EditorManage/SQIBEditor.aspx.cs | 14 +- .../FineUIPro.Web/EditorManage/TDCEditor.aspx | 2 +- .../EditorManage/TDCEditor.aspx.cs | 15 +- .../EditorManage/TDCEditorEdit.aspx.cs | 16 +- .../File/Excel/Project_List_Report.xlsx | Bin 1011685 -> 1011686 bytes EProject/FineUIPro.Web/FineUIPro.Web.csproj | 7 +- .../FineUIPro.Web/FineUIPro.Web.csproj.user | 2 +- EProject/FineUIPro.Web/Global.asax.cs | 2 +- .../FineUIPro.Web/ManHours/ManHours.aspx.cs | 12 +- .../FineUIPro.Web/ManHours/SelectPlan.aspx.cs | 2 +- .../FineUIPro.Web/Report/ConcernReport.aspx | 2 +- .../Report/ConcernReport.aspx.cs | 15 +- .../FineUIPro.Web/Report/MonthReport.aspx | 2 +- .../FineUIPro.Web/Report/MonthReport.aspx.cs | 15 +- .../Report/ProjectListReport.aspx | 11 + .../Report/ProjectListReport.aspx.cs | 19 ++ .../Report/ProjectListReport.aspx.designer.cs | 163 ++++++----- .../Report/TimeSheetReport.aspx.cs | 27 ++ .../ResourcePlan/ResourcePlan.aspx | 2 +- .../ResourcePlan/ResourcePlan.aspx.cs | 15 +- .../ResourcePlan/ResourcePlanAdd.aspx.cs | 20 +- EProject/FineUIPro.Web/common/Main.aspx | 17 +- EProject/FineUIPro.Web/common/Main.aspx.cs | 19 +- .../common/Main.aspx.designer.cs | 263 +++++++++--------- EProject/FineUIPro.Web/common/PageBase.cs | 24 +- 55 files changed, 769 insertions(+), 340 deletions(-) diff --git a/EProject/BLL/APIService/SyncUserInfoService.cs b/EProject/BLL/APIService/SyncUserInfoService.cs index 7ba849b..8cf0525 100644 --- a/EProject/BLL/APIService/SyncUserInfoService.cs +++ b/EProject/BLL/APIService/SyncUserInfoService.cs @@ -33,8 +33,9 @@ namespace BLL.APIService // var token = GetUserToken(); //获取接口token var dic = GetDepartList(); //把本地数据库中的部门全部取出作为字典 var dicUser = GetUserInfoByAccount(); //同上把所有用户取出来 - - string result = BLL.Funs.DB.OriginDatas.Select(t => t.JsonData).FirstOrDefault(); + string file = System.Web.HttpContext.Current.Server.MapPath("~/data.txt"); + string result = System.IO.File.ReadAllText(file); + //string result = BLL.Common.HttpHelper.HttpPostRequest(GETHRINfOAPI, "", token); var data = JsonHelper.DeserializeJsonToObject>>(result); List logList = new List(); diff --git a/EProject/BLL/BaseInfo/ConstService.cs b/EProject/BLL/BaseInfo/ConstService.cs index b0dc0c2..849c30a 100644 --- a/EProject/BLL/BaseInfo/ConstService.cs +++ b/EProject/BLL/BaseInfo/ConstService.cs @@ -50,6 +50,7 @@ namespace BLL newConst.ConstId = consts.ConstId; newConst.ConstValue = consts.ConstValue; newConst.ConstText = consts.ConstText; + newConst.GroupType = consts.GroupType; newConst.GroupId = consts.GroupId; Funs.DB.Base_Const.InsertOnSubmit(newConst); Funs.DB.SubmitChanges(); @@ -66,6 +67,7 @@ namespace BLL { newConst.ConstValue = consts.ConstValue; newConst.ConstText = consts.ConstText; + newConst.GroupType = consts.GroupType; Funs.DB.SubmitChanges(); } } @@ -161,5 +163,33 @@ namespace BLL Funs.FineUIPleaseSelect(dropName); } } + + /// + /// 只对项目状态的查询 + /// + /// + /// + /// + /// + public static void InitConstValueProjectStatus(FineUIPro.DropDownList dropName, string groupId, string projectStatus, bool isShowPlease) + { + + dropName.DataValueField = "ConstValue"; + dropName.DataTextField = "ConstText"; + if (projectStatus == "2") // 非Other类型 + { + dropName.DataSource = (from x in Funs.DB.Base_Const where x.GroupId == groupId && (x.GroupType=="1" ||x.GroupType == "2") orderby x.ConstValue select x).ToList(); + } + else if (projectStatus == "3") //Other类型 + { + dropName.DataSource = (from x in Funs.DB.Base_Const where x.GroupId == groupId && (x.GroupType == "1" || x.GroupType == "3") orderby x.ConstValue select x).ToList(); + } + + dropName.DataBind(); + if (isShowPlease) + { + Funs.FineUIPleaseSelect(dropName); + } + } } } diff --git a/EProject/BLL/EditorManage/EProjectService.cs b/EProject/BLL/EditorManage/EProjectService.cs index 4ad5f09..20a4c96 100644 --- a/EProject/BLL/EditorManage/EProjectService.cs +++ b/EProject/BLL/EditorManage/EProjectService.cs @@ -41,6 +41,7 @@ namespace BLL newEProject.EProjectId = eProject.EProjectId; newEProject.ProjectControl_JobNo = eProject.ProjectControl_JobNo; newEProject.ProjectControl_JobType = eProject.ProjectControl_JobType; + newEProject.ProjectControl_ProjectType = eProject.ProjectControl_ProjectType; newEProject.ProjectControl_JobStatus = eProject.ProjectControl_JobStatus; newEProject.ProjectControl_JobTitle = eProject.ProjectControl_JobTitle; newEProject.ProjectControl_BUCode = eProject.ProjectControl_BUCode; @@ -137,7 +138,8 @@ namespace BLL if (newEProject != null) { newEProject.ProjectControl_JobNo = eProject.ProjectControl_JobNo; - newEProject.ProjectControl_JobType = eProject.ProjectControl_JobType; + newEProject.ProjectControl_JobType = eProject.ProjectControl_JobType; + newEProject.ProjectControl_ProjectType = eProject.ProjectControl_ProjectType; newEProject.ProjectControl_JobStatus = eProject.ProjectControl_JobStatus; newEProject.ProjectControl_JobTitle = eProject.ProjectControl_JobTitle; newEProject.ProjectControl_BUCode = eProject.ProjectControl_BUCode; @@ -209,10 +211,10 @@ namespace BLL newEProject.StudyWo = eProject.StudyWo; newEProject.CreateDate = eProject.CreateDate; newEProject.CreatePerson = eProject.CreatePerson; - if (eProject.ProjectControl_JobStatus != "Hold") - { - newEProject.Job_Hold =null; - } + //if (eProject.ProjectControl_JobStatus != "Hold") + //{ + // newEProject.Job_Hold =null; + //} try { diff --git a/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx b/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx index 4d53bca..a0a6f7e 100644 --- a/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx +++ b/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx @@ -21,9 +21,12 @@ - + + @@ -48,11 +51,17 @@ + runat="server" LabelAlign="right" LabelWidth="100px"> + runat="server" LabelAlign="right" LabelWidth="100px"> + + + + + diff --git a/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.cs b/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.cs index a700016..81921cf 100644 --- a/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.cs +++ b/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.cs @@ -1,6 +1,8 @@ using BLL; using System; +using System.Collections.Generic; using System.Data; +using System.Data.SqlClient; using System.Linq; namespace FineUIPro.Web.BaseInfo @@ -29,10 +31,14 @@ namespace FineUIPro.Web.BaseInfo /// private void BindGrid() { - string strSql = @"SELECT const.ConstId,const.ConstValue,const.ConstText,const.GroupId" - + @" FROM dbo.Base_Const AS const" - + @" WHERE const.GroupId = '" + BLL.Const.ProjectPlanner_JobStatus + "'"; - DataTable tb = SQLHelper.GetDataTableRunText(strSql, null); + string strSql = @"SELECT ConstId,ConstValue,ConstText,GroupId, + (CASE WHEN GroupType='1' THEN '通用' WHEN GroupType='2' THEN '非Other类' WHEN GroupType='3' THEN 'Other类' ELSE '' END) AS GroupType + FROM dbo.Base_Const + WHERE GroupId = @GroupId"; + List listStr = new List(); + listStr.Add(new SqlParameter("@GroupId", Const.ProjectPlanner_JobStatus)); + SqlParameter[] parameter = listStr.ToArray(); + DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; @@ -157,7 +163,8 @@ namespace FineUIPro.Web.BaseInfo Model.Base_Const cons = new Model.Base_Const { ConstValue = this.txtConstValue.Text.Trim(), - ConstText = this.txtConstText.Text.Trim() + ConstText = this.txtConstText.Text.Trim(), + GroupType=drpGroupType.SelectedValue }; if (string.IsNullOrEmpty(strRowID)) { diff --git a/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.designer.cs b/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.designer.cs index 6194df8..401760d 100644 --- a/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.designer.cs +++ b/EProject/FineUIPro.Web/BaseInfo/ProjectPlannerJobStatus.aspx.designer.cs @@ -7,11 +7,13 @@ // //------------------------------------------------------------------------------ -namespace FineUIPro.Web.BaseInfo { - - - public partial class ProjectPlannerJobStatus { - +namespace FineUIPro.Web.BaseInfo +{ + + + public partial class ProjectPlannerJobStatus + { + /// /// form1 控件。 /// @@ -20,7 +22,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlForm form1; - + /// /// PageManager1 控件。 /// @@ -29,7 +31,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.PageManager PageManager1; - + /// /// Panel1 控件。 /// @@ -38,7 +40,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel1; - + /// /// Grid1 控件。 /// @@ -47,7 +49,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid1; - + /// /// ToolbarSeparator1 控件。 /// @@ -56,7 +58,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; - + /// /// ToolbarText1 控件。 /// @@ -65,7 +67,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarText ToolbarText1; - + /// /// ddlPageSize 控件。 /// @@ -74,7 +76,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList ddlPageSize; - + /// /// SimpleForm1 控件。 /// @@ -83,7 +85,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.SimpleForm SimpleForm1; - + /// /// hfFormID 控件。 /// @@ -92,7 +94,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hfFormID; - + /// /// txtConstValue 控件。 /// @@ -101,7 +103,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtConstValue; - + /// /// txtConstText 控件。 /// @@ -110,7 +112,16 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtConstText; - + + /// + /// drpGroupType 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList drpGroupType; + /// /// Toolbar1 控件。 /// @@ -119,7 +130,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Toolbar Toolbar1; - + /// /// btnNew 控件。 /// @@ -128,7 +139,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnNew; - + /// /// btnDelete 控件。 /// @@ -137,7 +148,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnDelete; - + /// /// ToolbarFill1 控件。 /// @@ -146,7 +157,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarFill ToolbarFill1; - + /// /// btnSave 控件。 /// @@ -155,7 +166,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnSave; - + /// /// Menu1 控件。 /// @@ -164,7 +175,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Menu Menu1; - + /// /// btnMenuEdit 控件。 /// @@ -173,7 +184,7 @@ namespace FineUIPro.Web.BaseInfo { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.MenuButton btnMenuEdit; - + /// /// btnMenuDelete 控件。 /// diff --git a/EProject/FineUIPro.Web/Design/DesignInput.aspx b/EProject/FineUIPro.Web/Design/DesignInput.aspx index f1913bc..2b91070 100644 --- a/EProject/FineUIPro.Web/Design/DesignInput.aspx +++ b/EProject/FineUIPro.Web/Design/DesignInput.aspx @@ -47,7 +47,7 @@ - + diff --git a/EProject/FineUIPro.Web/Design/DesignInput.aspx.cs b/EProject/FineUIPro.Web/Design/DesignInput.aspx.cs index 2ffcfd0..ca958a5 100644 --- a/EProject/FineUIPro.Web/Design/DesignInput.aspx.cs +++ b/EProject/FineUIPro.Web/Design/DesignInput.aspx.cs @@ -62,7 +62,7 @@ namespace FineUIPro.Web.Design strSql += " AND e.ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + if (this.drpJobStatus.SelectedValue != BLL.Const._Null && this.drpJobStatus.SelectedValue != null) { strSql += " AND e.ProjectControl_JobStatus=@Status "; listStr.Add(new SqlParameter("@Status", this.drpJobStatus.SelectedItem.Text)); @@ -326,6 +326,19 @@ namespace FineUIPro.Web.Design #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx b/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx index 6493f4f..f320f57 100644 --- a/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx @@ -22,7 +22,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx.cs index 6cc0338..9c6ede1 100644 --- a/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/AreaConcernEditor.aspx.cs @@ -63,7 +63,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -319,6 +319,18 @@ namespace FineUIPro.Web.EditorManage #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); + } + } /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx b/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx index 8a2b2b0..da8fcac 100644 --- a/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx @@ -24,7 +24,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx.cs index 273fb47..08ddc88 100644 --- a/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/CMEditor.aspx.cs @@ -62,7 +62,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -314,6 +314,20 @@ namespace FineUIPro.Web.EditorManage #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); + } + } + ///查询 protected void btnSearch_Click(object sender, EventArgs e) { diff --git a/EProject/FineUIPro.Web/EditorManage/CMEditorEdit.aspx.cs b/EProject/FineUIPro.Web/EditorManage/CMEditorEdit.aspx.cs index b94f3dc..0e81571 100644 --- a/EProject/FineUIPro.Web/EditorManage/CMEditorEdit.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/CMEditorEdit.aspx.cs @@ -365,15 +365,11 @@ namespace FineUIPro.Web.EditorManage var epro = BLL.EProjectService.GeteProjectById(eproject.EProjectId); if (epro != null) { - //当PM中Milestone(Actual)的Project Approval不为空,同时CM中Const.-Civil的Revised Start和Const.-Mech,E&I的Revised Start小于当前时间,状态为In Construction - //if (epro.PM_MA_ProjectApproval.HasValue && Funs.GetNewDateTime(DateTime.Now.ToShortDateString()) > Funs.GetNewDateTime(epro.CM_CC_RevisedStart.ToString()) && Funs.GetNewDateTime(DateTime.Now.ToShortDateString()) > Funs.GetNewDateTime(epro.CM_CM_RevisedStart.ToString())) - //{ - // epro.ProjectControl_JobStatus = "In Construction"; - //} - if (epro.CM_KickOffMetting.HasValue) + // CM中Kick-off meeting不为空 ,CM中Actual MC Date为空,PM中Final Approval Date不为空 修改于2024.07.03 + if (epro.ProjectControl_JobType != "Other" && epro.CM_KickOffMetting.HasValue && !epro.CM_MA_MC.HasValue && epro.PM_MA_ProjectApproval.HasValue) { if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "In Procurement" - || eproject.ProjectControl_JobStatus == "Detail Design" || eproject.ProjectControl_JobStatus == "On Going" + || eproject.ProjectControl_JobStatus == "Detailed Design" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") { eproject.ProjectControl_JobStatus = "In Construction"; @@ -384,12 +380,17 @@ namespace FineUIPro.Web.EditorManage { if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "In Procurement" || eproject.ProjectControl_JobStatus == "In Construction" - || eproject.ProjectControl_JobStatus == "Detail Design" || eproject.ProjectControl_JobStatus == "On Going" + || eproject.ProjectControl_JobStatus == "Detailed Design" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") { eproject.ProjectControl_JobStatus = "MC"; } } + // 增加于2024.07.03 + if (epro.ProjectControl_JobType == "Other" && epro.PM_MA_ProjectApproval.HasValue && !epro.CM_MA_MC.HasValue) + { + eproject.ProjectControl_JobStatus = "On Going"; + } //当Project_Control Manager中Business Closure-Close Date、CM中、Milestones(Actual)-MC、FC、Punch-C Killed Date都不为空时,状态为Closed //if (epro.ProjectControl_BC_CloseDate.HasValue && epro.CM_MA_MC.HasValue && epro.CM_FC.HasValue && epro.CM_Punch_CKilledDate.HasValue) diff --git a/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx b/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx index 7ad49d1..428f49d 100644 --- a/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx @@ -22,7 +22,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx.cs index 2272600..02f173f 100644 --- a/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/FCRLogEditor.aspx.cs @@ -63,7 +63,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -318,6 +318,18 @@ namespace FineUIPro.Web.EditorManage #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); + } + } /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx b/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx index 47d25df..4ae5243 100644 --- a/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx @@ -23,7 +23,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx.cs index 7eca75d..be0270f 100644 --- a/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/LessonsLearnedEditor.aspx.cs @@ -181,7 +181,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -320,6 +320,19 @@ namespace FineUIPro.Web.EditorManage #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx b/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx index 59c6bca..2d48d15 100644 --- a/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx @@ -23,7 +23,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx.cs index fd7c6f5..980595a 100644 --- a/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/PMEditor.aspx.cs @@ -264,6 +264,18 @@ namespace FineUIPro.Web.EditorManage #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); + } + } ///查询 protected void btnSearch_Click(object sender, EventArgs e) { @@ -294,7 +306,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); diff --git a/EProject/FineUIPro.Web/EditorManage/PMEditorEdit.aspx.cs b/EProject/FineUIPro.Web/EditorManage/PMEditorEdit.aspx.cs index 0d4d686..2220fd9 100644 --- a/EProject/FineUIPro.Web/EditorManage/PMEditorEdit.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/PMEditorEdit.aspx.cs @@ -603,7 +603,7 @@ namespace FineUIPro.Web.EditorManage //} - //当PM中Milestone(Actual)的Project Approval不为空,并且Resource_Plan有记录时,状态为Not Approved + //当项目类型为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) { @@ -612,33 +612,41 @@ namespace FineUIPro.Web.EditorManage epro.ProjectControl_JobStatus = "Study"; } } - if (epro.PM_MA_ProjectApproval.HasValue && resourcePlans.Count()>1) + + // 增加于2024.07.03 + if (epro.ProjectControl_JobType == "Other" && epro.PM_MA_ProjectApproval.HasValue && !epro.CM_MA_MC.HasValue) { - if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") - { - epro.ProjectControl_JobStatus = "On Going"; - } + eproject.ProjectControl_JobStatus = "On Going"; } + // 去除于2024.07.03 + //if (epro.PM_MA_ProjectApproval.HasValue && resourcePlans.Count()>1) + //{ + // if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") + // { + // epro.ProjectControl_JobStatus = "On Going"; + // } + //} + //去掉 同时满足Today小于Design Civil_Revised End Date和Design Mech.E&I_Revised End Date的最大值时, //var civilRevisedEnd = BLL.PMService.GetCivil(eproject.EProjectId); //var mechEIRevisedEnd = BLL.PMService.GetMechEI(eproject.EProjectId); - // 后加条件 //当PM中Milestone(Actual)的Project Approval不为空并且IFC ALL的ReceiveHC为空,状态为Detail Design - var 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.PM_MA_ProjectApproval.HasValue && all.Count() > 0) + // 后加条件 //当PM中Milestone(Actual)的Project Approval不为空并且IFC ALL的ReceiveHC为空,状态为Detailed Design + var 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 && all.Count() == 0) { if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") { - epro.ProjectControl_JobStatus = "Detail Design"; + epro.ProjectControl_JobStatus = "Detailed Design"; } } // 后加:当PM中Milestone(Actual)的Project Approval不为空并且IFC ALL的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.PM_MA_ProjectApproval.HasValue && con_all.Count() > 0) + if (epro.ProjectControl_JobType != "Other" && epro.PM_MA_ProjectApproval.HasValue && con_all.Count() > 0) { - if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Detail Design" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") + 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") { epro.ProjectControl_JobStatus = "In Procurement"; } @@ -648,7 +656,7 @@ namespace FineUIPro.Web.EditorManage { if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "In Procurement" || eproject.ProjectControl_JobStatus == "In Construction" - || eproject.ProjectControl_JobStatus == "Detail Design" || eproject.ProjectControl_JobStatus == "On Going" + || eproject.ProjectControl_JobStatus == "Detailed Design" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") { epro.ProjectControl_JobStatus = "MC"; diff --git a/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx b/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx index 884a5f5..68898a7 100644 --- a/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx @@ -24,7 +24,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx.cs index 6a655c9..3f7a4b7 100644 --- a/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/PermitEditor.aspx.cs @@ -245,6 +245,18 @@ namespace FineUIPro.Web.EditorManage #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); + } + } ///查询 protected void btnSearch_Click(object sender, EventArgs e) { @@ -272,7 +284,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); diff --git a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx index 8173902..e67aa13 100644 --- a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx @@ -36,7 +36,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx.cs index 2b6e5c9..e5a689a 100644 --- a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditor.aspx.cs @@ -89,7 +89,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -453,6 +453,19 @@ namespace FineUIPro.Web.EditorManage #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx index c1be537..f019ebf 100644 --- a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx +++ b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx @@ -28,14 +28,19 @@ - + + + + + + - + @@ -67,7 +72,13 @@ - + + + + + + + diff --git a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.cs b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.cs index 2d3cf77..11d1839 100644 --- a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.cs @@ -1,4 +1,6 @@ using BLL; +using FineUIPro.Web.Report; +using Microsoft.IdentityModel.Tokens; using Model; using System; using System.Collections.Generic; @@ -28,7 +30,7 @@ namespace FineUIPro.Web.EditorManage #region 加载下拉框 BLL.ConstService.InitConstValueDropDownList(this.drpJobType, BLL.Const.ProjectPlanner_JobType, true);//项目类型 - BLL.ConstService.InitConstValueDropDownList(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, false); //项目状态 + //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 @@ -75,7 +77,14 @@ namespace FineUIPro.Web.EditorManage this.drpOpre.SelectedIndex = 0; //this.drpLeadBy.SelectedIndex = 0; this.drpEMManager.SelectedIndex = 0; + BLL.ConstService.InitConstValueProjectStatus(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, "3", false); + } + else + { + BLL.ConstService.InitConstValueProjectStatus(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, "2", false); + } + this.txtJobNo.Text = eproject.ProjectControl_JobNo; if (!string.IsNullOrEmpty(eproject.ProjectControl_BUCode)) { @@ -91,6 +100,10 @@ namespace FineUIPro.Web.EditorManage { this.drpJobType.SelectedValue = BLL.ConstService.GetConstListByTextAndGroupId(eproject.ProjectControl_JobType.Trim(), BLL.Const.ProjectPlanner_JobType).ConstValue; } + if (!string.IsNullOrEmpty(eproject.ProjectControl_ProjectType)) + { + this.drpProjType.SelectedValue = eproject.ProjectControl_ProjectType; + } this.txtOrginalBudget.Text = eproject.ProjectControl_OrginalBudget == null ? "" : Convert.ToInt32(eproject.ProjectControl_OrginalBudget).ToString(); if (!string.IsNullOrEmpty(eproject.ProjectControl_EMManagerId) && eproject.ProjectControl_EMManagerId != null) @@ -240,6 +253,10 @@ namespace FineUIPro.Web.EditorManage eProject.ProjectControl_ConstManager = this.drpConstManager.SelectedItem.Text; } eProject.ProjectControl_JobType = this.drpJobType.SelectedItem.Text; + if (this.drpProjType.SelectedValue != "0") + { + eProject.ProjectControl_ProjectType = this.drpProjType.SelectedValue; + } eProject.ProjectControl_OrginalBudget = Funs.GetNewIntOrZero(this.txtOrginalBudget.Text.Trim()); if (this.drpEMManager.SelectedValue != BLL.Const._Null) { @@ -579,6 +596,10 @@ namespace FineUIPro.Web.EditorManage { operationLog += "Job Type 由" + pro.ProjectControl_JobType + "修改为" + drpJobType.SelectedItem.Text + ","; } + if ((pro.ProjectControl_ProjectType != null || drpProjType.SelectedValue != "0") && pro.ProjectControl_ProjectType != drpProjType.SelectedValue) + { + operationLog += "Proj.Type 由" + pro.ProjectControl_ProjectType + "修改为" + drpProjType.SelectedValue + ","; + } if ((pro.ProjectControl_JobStatus != null || drpJobStatus.SelectedValue != Const._Null) && pro.ProjectControl_JobStatus != drpJobStatus.SelectedItem.Text) { operationLog += "Job Status 由" + pro.ProjectControl_JobStatus + "修改为" + drpJobStatus.SelectedItem.Text + ","; @@ -1032,12 +1053,13 @@ namespace FineUIPro.Web.EditorManage #endregion } - if (!string.IsNullOrEmpty(this.txtCancelDate.Text))//当Cancel Date有输入时,状态为Cancelled + if (eproject.ProjectControl_PC_CancelDate.HasValue)//当Cancel Date有输入时,状态为Cancelled { eproject.ProjectControl_JobStatus = "Cancelled"; } - if (!string.IsNullOrEmpty(this.txtHold.Text))//Hold Date有输入时,状态为Hold + // 修改于2024.07.04 非other类型的项目hold不为空并且cancelDate为空 + if (eproject.Job_Hold.HasValue && !eproject.ProjectControl_PC_CancelDate.HasValue)//Hold Date有输入时,状态为Hold { eproject.ProjectControl_JobStatus = "Hold"; } @@ -1285,6 +1307,16 @@ namespace FineUIPro.Web.EditorManage /// protected void drpJobType_SelectedIndexChanged(object sender, EventArgs e) { + this.drpJobStatus.Items.Clear(); + if (this.drpJobType.SelectedItem.Text == "Other") + { + BLL.ConstService.InitConstValueProjectStatus(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, "3", false); + } + else + { + BLL.ConstService.InitConstValueProjectStatus(this.drpJobStatus, BLL.Const.ProjectPlanner_JobStatus, "2", false); + } + if (string.IsNullOrEmpty(Request.Params["eProjectId"])) { if (this.drpJobType.SelectedItem.Text == "Projects" && Funs.GetNewDecimal(this.txtOrginalBudget.Text) > 1000000) @@ -1342,6 +1374,22 @@ namespace FineUIPro.Web.EditorManage } } } + + protected void drpJobStatus_SelectedIndexChanged(object sender, EventArgs e) + { + if (drpJobStatus.SelectedValue != "Hold") + { + this.txtHold.Text = string.Empty; + } + else + { + var eproject = BLL.EProjectService.GeteProjectById(Request.Params["eProjectId"]); + if (eproject != null) + { + this.txtHold.Text = eproject.Job_Hold == null ? "" : string.Format("{0:yyyy-MM-dd}", eproject.Job_Hold); + } + } + } protected void txtOrginalBudget_TextChanged(object sender, EventArgs e) { if (string.IsNullOrEmpty(Request.Params["eProjectId"])) diff --git a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.designer.cs b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.designer.cs index c1acdb4..bb42cc2 100644 --- a/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.designer.cs +++ b/EProject/FineUIPro.Web/EditorManage/ProjectControlEditorEdit.aspx.designer.cs @@ -105,13 +105,13 @@ namespace FineUIPro.Web.EditorManage protected global::FineUIPro.DropDownList drpJobType; /// - /// txtFilesLink 控件。 + /// drpProjType 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextBox txtFilesLink; + protected global::FineUIPro.DropDownList drpProjType; /// /// drpEMManager 控件。 @@ -266,6 +266,15 @@ namespace FineUIPro.Web.EditorManage /// protected global::FineUIPro.DropDownList drpPM_General_Priority; + /// + /// txtFilesLink 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtFilesLink; + /// /// txtRemark 控件。 /// diff --git a/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx b/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx index 82be8a1..f640a44 100644 --- a/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx @@ -35,7 +35,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx.cs index 1e993d0..ee1162e 100644 --- a/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/PunchEditor.aspx.cs @@ -80,7 +80,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -431,6 +431,19 @@ namespace FineUIPro.Web.EditorManage #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx b/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx index 6fcb9da..60f11d8 100644 --- a/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx @@ -24,7 +24,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx.cs index eac29de..56294d6 100644 --- a/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/SQIBEditor.aspx.cs @@ -245,6 +245,18 @@ namespace FineUIPro.Web.EditorManage #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); + } + } ///查询 protected void btnSearch_Click(object sender, EventArgs e) { @@ -272,7 +284,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); diff --git a/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx b/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx index 64d3ab1..bb31c76 100644 --- a/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx +++ b/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx @@ -23,7 +23,7 @@ - + diff --git a/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx.cs b/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx.cs index c25f8b0..f869eaa 100644 --- a/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/TDCEditor.aspx.cs @@ -181,7 +181,7 @@ namespace FineUIPro.Web.EditorManage strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -338,6 +338,19 @@ namespace FineUIPro.Web.EditorManage #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/EditorManage/TDCEditorEdit.aspx.cs b/EProject/FineUIPro.Web/EditorManage/TDCEditorEdit.aspx.cs index 5c9d053..8bce810 100644 --- a/EProject/FineUIPro.Web/EditorManage/TDCEditorEdit.aspx.cs +++ b/EProject/FineUIPro.Web/EditorManage/TDCEditorEdit.aspx.cs @@ -203,29 +203,29 @@ namespace FineUIPro.Web.EditorManage var eproject = BLL.EProjectService.GeteProjectById(Request.Params["eProjectId"]); if (eproject != null) { - #region 更新项目关闭或Detail Design 状态 + #region 更新项目关闭或Detailed Design 状态 - #region Detail Design 和 In Procurement + #region Detailed Design 和 In Procurement //去掉 同时满足Today小于Design Civil_Revised End Date和Design Mech.E&I_Revised End Date的最大值时, //var civilRevisedEnd = BLL.PMService.GetCivil(eproject.EProjectId); //var mechEIRevisedEnd = BLL.PMService.GetMechEI(eproject.EProjectId); - // 后加条件 //当PM中Milestone(Actual)的Project Approval不为空并且IFC ALL的ReceiveHC为空,状态为Detail Design - var all = from x in Funs.DB.Editor_TDC where x.EProjectId == eproject.EProjectId && x.Type == "D01_IFC" && x.Disc == "00_ALL" && x.ReceiveHC == null select x; - if (eproject.PM_MA_ProjectApproval.HasValue && all.Count() > 0) + // 后加条件 //当PM中Milestone(Actual)的Project Approval不为空并且IFC ALL的ReceiveHC为空,状态为Detailed Design + var 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 && all.Count() == 0) { if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") { - eproject.ProjectControl_JobStatus = "Detail Design"; + eproject.ProjectControl_JobStatus = "Detailed Design"; } } // 后加:当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.PM_MA_ProjectApproval.HasValue && con_all.Count() > 0) + if (eproject.ProjectControl_JobType != "Other" && eproject.PM_MA_ProjectApproval.HasValue && con_all.Count() > 0) { - if (eproject.ProjectControl_JobStatus == null || eproject.ProjectControl_JobStatus == "" || eproject.ProjectControl_JobStatus == "Detail Design" || eproject.ProjectControl_JobStatus == "On Going" || eproject.ProjectControl_JobStatus == "Study" || eproject.ProjectControl_JobStatus == "Not Start") + 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"; } diff --git a/EProject/FineUIPro.Web/File/Excel/Project_List_Report.xlsx b/EProject/FineUIPro.Web/File/Excel/Project_List_Report.xlsx index c95b31b591dedab058bb7da26fc2dfc01ff26054..03677e3d331bd2599d078093006f63eb6edd2b17 100644 GIT binary patch delta 20071 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 delta 20756 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 diff --git a/EProject/FineUIPro.Web/FineUIPro.Web.csproj b/EProject/FineUIPro.Web/FineUIPro.Web.csproj index 4c345a2..d972edd 100644 --- a/EProject/FineUIPro.Web/FineUIPro.Web.csproj +++ b/EProject/FineUIPro.Web/FineUIPro.Web.csproj @@ -37,7 +37,7 @@ bin\ DEBUG;TRACE prompt - 4 + 5 7.3 false @@ -55,9 +55,8 @@ ..\packages\Portable.BouncyCastle.1.8.9\lib\net40\BouncyCastle.Crypto.dll - - False - bin\FineUIPro.dll + + ..\FineUIPro\FineUIPro.dll ..\packages\SharpZipLib.1.3.2\lib\net45\ICSharpCode.SharpZipLib.dll diff --git a/EProject/FineUIPro.Web/FineUIPro.Web.csproj.user b/EProject/FineUIPro.Web/FineUIPro.Web.csproj.user index 4a14eae..3f55043 100644 --- a/EProject/FineUIPro.Web/FineUIPro.Web.csproj.user +++ b/EProject/FineUIPro.Web/FineUIPro.Web.csproj.user @@ -36,7 +36,7 @@ True 2396 / - http://localhost:9099/ + http://localhost:9009/ False False diff --git a/EProject/FineUIPro.Web/Global.asax.cs b/EProject/FineUIPro.Web/Global.asax.cs index 833ef1a..0fbb5d0 100644 --- a/EProject/FineUIPro.Web/Global.asax.cs +++ b/EProject/FineUIPro.Web/Global.asax.cs @@ -343,7 +343,7 @@ var planLists = (from x in Funs.DB.Resource_Plan where x.EProjectId == epr.Key orderby x.CreateDate descending select x).ToList(); if (planLists.Count() == 2) { - if (planLists[0].CreateDate.Value.AddMonths(1).ToShortDateString() == DateTime.Now.ToShortDateString()) + if (planLists[0].CreateDate.Value.AddMonths(1).Date <= DateTime.Now.Date && planLists[0].CreateDate.Value.AddMonths(2).Date >= DateTime.Now.Date) { var manHours_Plan = Funs.DB.ManHours_Plan.FirstOrDefault(x => x.ResourcePlanId == planLists[1].ResourcePlanId); if (manHours_Plan != null) diff --git a/EProject/FineUIPro.Web/ManHours/ManHours.aspx.cs b/EProject/FineUIPro.Web/ManHours/ManHours.aspx.cs index 11a1263..2b66848 100644 --- a/EProject/FineUIPro.Web/ManHours/ManHours.aspx.cs +++ b/EProject/FineUIPro.Web/ManHours/ManHours.aspx.cs @@ -87,7 +87,7 @@ namespace FineUIPro.Web.ManHours { JobType = this.drpJobType.SelectedValue; } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + if (this.drpJobStatus.SelectedValue != BLL.Const._Null && this.drpJobStatus.SelectedValue != null) { JobStatus = this.drpJobStatus.SelectedValue; } @@ -155,6 +155,16 @@ namespace FineUIPro.Web.ManHours /// 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); + } + if (hidpersonnel.Text == "D@" + BLL.Const.CTE_DepartId) { BindGrid(""); diff --git a/EProject/FineUIPro.Web/ManHours/SelectPlan.aspx.cs b/EProject/FineUIPro.Web/ManHours/SelectPlan.aspx.cs index b7520b1..4b664bf 100644 --- a/EProject/FineUIPro.Web/ManHours/SelectPlan.aspx.cs +++ b/EProject/FineUIPro.Web/ManHours/SelectPlan.aspx.cs @@ -54,7 +54,7 @@ namespace FineUIPro.Web.ManHours { string strSql = @"SELECT * from View_NewManHours_Plan WHERE AccountDisabled=0 and IsCalculated=1 - AND (ProjectControl_JobStatus='Detail Design' OR ProjectControl_JobStatus='In Construction' OR ProjectControl_JobStatus='In Procurement' + AND (ProjectControl_JobStatus='Detailed Design' OR ProjectControl_JobStatus='In Construction' OR ProjectControl_JobStatus='In Procurement' OR ProjectControl_JobStatus='Not Start' OR ProjectControl_JobStatus='On Going' OR (ProjectControl_JobStatus='Cancelled' AND DATEDIFF(DAY,ProjectControl_PC_CancelDate,GETDATE())<=31) OR (ProjectControl_JobStatus='MC' and DATEDIFF(MONTH,CM_MA_MC,GETDATE())<=4) diff --git a/EProject/FineUIPro.Web/Report/ConcernReport.aspx b/EProject/FineUIPro.Web/Report/ConcernReport.aspx index c6e8d4f..32894ef 100644 --- a/EProject/FineUIPro.Web/Report/ConcernReport.aspx +++ b/EProject/FineUIPro.Web/Report/ConcernReport.aspx @@ -22,7 +22,7 @@ - + diff --git a/EProject/FineUIPro.Web/Report/ConcernReport.aspx.cs b/EProject/FineUIPro.Web/Report/ConcernReport.aspx.cs index f172307..28cba32 100644 --- a/EProject/FineUIPro.Web/Report/ConcernReport.aspx.cs +++ b/EProject/FineUIPro.Web/Report/ConcernReport.aspx.cs @@ -61,7 +61,7 @@ namespace FineUIPro.Web.Report strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -78,6 +78,19 @@ namespace FineUIPro.Web.Report #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/Report/MonthReport.aspx b/EProject/FineUIPro.Web/Report/MonthReport.aspx index 7d80aec..fcbe643 100644 --- a/EProject/FineUIPro.Web/Report/MonthReport.aspx +++ b/EProject/FineUIPro.Web/Report/MonthReport.aspx @@ -23,7 +23,7 @@ - + diff --git a/EProject/FineUIPro.Web/Report/MonthReport.aspx.cs b/EProject/FineUIPro.Web/Report/MonthReport.aspx.cs index a7d962c..d342f74 100644 --- a/EProject/FineUIPro.Web/Report/MonthReport.aspx.cs +++ b/EProject/FineUIPro.Web/Report/MonthReport.aspx.cs @@ -67,7 +67,7 @@ namespace FineUIPro.Web.Report strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -149,6 +149,19 @@ namespace FineUIPro.Web.Report #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/Report/ProjectListReport.aspx b/EProject/FineUIPro.Web/Report/ProjectListReport.aspx index 38c14f9..bbd44f8 100644 --- a/EProject/FineUIPro.Web/Report/ProjectListReport.aspx +++ b/EProject/FineUIPro.Web/Report/ProjectListReport.aspx @@ -64,6 +64,17 @@ + + + + + + + + + + diff --git a/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.cs b/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.cs index 7fad80e..11a2de2 100644 --- a/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.cs +++ b/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.cs @@ -129,6 +129,19 @@ namespace FineUIPro.Web.Report valid = true; } } + if (column == "ProjectControl_ProjectType") + { + 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_LeadByName") { string sourceValue = sourceObj.ToString(); @@ -823,6 +836,7 @@ namespace FineUIPro.Web.Report if (projectList.GetRow(rowIndex).GetCell(2) == null) projectList.GetRow(rowIndex).CreateCell(2); projectList.GetRow(rowIndex).GetCell(2).SetCellValue(itemOver.ProjectControl_JobType); projectList.GetRow(rowIndex).GetCell(2).CellStyle.SetFont(cs_content_Font); + //Lead By if (projectList.GetRow(rowIndex).GetCell(3) == null) projectList.GetRow(rowIndex).CreateCell(3); projectList.GetRow(rowIndex).GetCell(3).SetCellValue(itemOver.ProjectControl_LeadByName); @@ -1384,6 +1398,11 @@ namespace FineUIPro.Web.Report projectList.GetRow(rowIndex).GetCell(73).SetCellValue(itemOver.Job_Hold); projectList.GetRow(rowIndex).GetCell(73).CellStyle = styleQfw; + //Proj.Type + if (projectList.GetRow(rowIndex).GetCell(74) == null) projectList.GetRow(rowIndex).CreateCell(74); + projectList.GetRow(rowIndex).GetCell(74).SetCellValue(itemOver.ProjectControl_ProjectType); + projectList.GetRow(rowIndex).GetCell(74).CellStyle.SetFont(cs_content_Font); + #endregion rowIndex++; diff --git a/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.designer.cs b/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.designer.cs index 826cb58..6142514 100644 --- a/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.designer.cs +++ b/EProject/FineUIPro.Web/Report/ProjectListReport.aspx.designer.cs @@ -7,11 +7,13 @@ // //------------------------------------------------------------------------------ -namespace FineUIPro.Web.Report { - - - public partial class ProjectListReport { - +namespace FineUIPro.Web.Report +{ + + + public partial class ProjectListReport + { + /// /// form1 控件。 /// @@ -20,7 +22,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlForm form1; - + /// /// PageManager1 控件。 /// @@ -29,7 +31,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.PageManager PageManager1; - + /// /// Panel1 控件。 /// @@ -38,7 +40,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel1; - + /// /// Grid1 控件。 /// @@ -47,7 +49,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid1; - + /// /// Toolbar1 控件。 /// @@ -56,7 +58,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Toolbar Toolbar1; - + /// /// txtJobNo 控件。 /// @@ -65,7 +67,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtJobNo; - + /// /// drpProjectManager 控件。 /// @@ -74,7 +76,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList drpProjectManager; - + /// /// btnSearch 控件。 /// @@ -83,7 +85,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnSearch; - + /// /// ToolbarFill1 控件。 /// @@ -92,7 +94,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarFill ToolbarFill1; - + /// /// btnExport 控件。 /// @@ -101,7 +103,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnExport; - + /// /// DropDowsnList1 控件。 /// @@ -110,7 +112,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDowsnList1; - + /// /// DropDownList1 控件。 /// @@ -119,7 +121,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList1; - + /// /// DropDownList2 控件。 /// @@ -128,7 +130,16 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList2; - + + /// + /// DropDownList58 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList DropDownList58; + /// /// DropDownList3 控件。 /// @@ -137,7 +148,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList3; - + /// /// DropDownList4 控件。 /// @@ -146,7 +157,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList4; - + /// /// DropDownList5 控件。 /// @@ -155,7 +166,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList5; - + /// /// DropDownList6 控件。 /// @@ -164,7 +175,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList6; - + /// /// DropDownList7 控件。 /// @@ -173,7 +184,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList7; - + /// /// DropDownList8 控件。 /// @@ -182,7 +193,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList8; - + /// /// DropDownList9 控件。 /// @@ -191,7 +202,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList9; - + /// /// DropDownList10 控件。 /// @@ -200,7 +211,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList10; - + /// /// DropDownList11 控件。 /// @@ -209,7 +220,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList11; - + /// /// DropDownList12 控件。 /// @@ -218,7 +229,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList12; - + /// /// DropDownList13 控件。 /// @@ -227,7 +238,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList13; - + /// /// DropDownList14 控件。 /// @@ -236,7 +247,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList14; - + /// /// DropDownList15 控件。 /// @@ -245,7 +256,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList15; - + /// /// DropDownList16 控件。 /// @@ -254,7 +265,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList16; - + /// /// DropDownList17 控件。 /// @@ -263,7 +274,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList17; - + /// /// DropDownList18 控件。 /// @@ -272,7 +283,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList18; - + /// /// DropDownList19 控件。 /// @@ -281,7 +292,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList19; - + /// /// DropDownList20 控件。 /// @@ -290,7 +301,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList20; - + /// /// DropDownList21 控件。 /// @@ -299,7 +310,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList21; - + /// /// DropDownList22 控件。 /// @@ -308,7 +319,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList22; - + /// /// DropDownList23 控件。 /// @@ -317,7 +328,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList23; - + /// /// DropDownList24 控件。 /// @@ -326,7 +337,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList24; - + /// /// DropDownList25 控件。 /// @@ -335,7 +346,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList25; - + /// /// DropDownList26 控件。 /// @@ -344,7 +355,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList26; - + /// /// DropDownList27 控件。 /// @@ -353,7 +364,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList27; - + /// /// DropDownList28 控件。 /// @@ -362,7 +373,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList28; - + /// /// DropDownList29 控件。 /// @@ -371,7 +382,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList29; - + /// /// DropDownList30 控件。 /// @@ -380,7 +391,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList30; - + /// /// DropDownList31 控件。 /// @@ -389,7 +400,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList31; - + /// /// DropDownList32 控件。 /// @@ -398,7 +409,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList32; - + /// /// DropDownList33 控件。 /// @@ -407,7 +418,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList33; - + /// /// DropDownList34 控件。 /// @@ -416,7 +427,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList34; - + /// /// DropDownList35 控件。 /// @@ -425,7 +436,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList35; - + /// /// DropDownList36 控件。 /// @@ -434,7 +445,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList36; - + /// /// DropDownList37 控件。 /// @@ -443,7 +454,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList37; - + /// /// DropDownList38 控件。 /// @@ -452,7 +463,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList38; - + /// /// DropDownList39 控件。 /// @@ -461,7 +472,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList39; - + /// /// DropDownList40 控件。 /// @@ -470,7 +481,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList40; - + /// /// DropDownList41 控件。 /// @@ -479,7 +490,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList41; - + /// /// DropDownList42 控件。 /// @@ -488,7 +499,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList42; - + /// /// DropDownList43 控件。 /// @@ -497,7 +508,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList43; - + /// /// DropDownList44 控件。 /// @@ -506,7 +517,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList44; - + /// /// DropDownList45 控件。 /// @@ -515,7 +526,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList45; - + /// /// DropDownList46 控件。 /// @@ -524,7 +535,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList46; - + /// /// DropDownList47 控件。 /// @@ -533,7 +544,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList47; - + /// /// DropDownList48 控件。 /// @@ -542,7 +553,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList48; - + /// /// DropDownList49 控件。 /// @@ -551,7 +562,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList49; - + /// /// DropDownList50 控件。 /// @@ -560,7 +571,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList50; - + /// /// DropDownList51 控件。 /// @@ -569,7 +580,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList51; - + /// /// DropDownList52 控件。 /// @@ -578,7 +589,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList52; - + /// /// DropDownList53 控件。 /// @@ -587,7 +598,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList53; - + /// /// DropDownList54 控件。 /// @@ -596,7 +607,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList54; - + /// /// DropDownList55 控件。 /// @@ -605,7 +616,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList55; - + /// /// DropDownList56 控件。 /// @@ -614,7 +625,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList56; - + /// /// DropDownList57 控件。 /// @@ -623,7 +634,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList57; - + /// /// DropDownList59 控件。 /// @@ -632,7 +643,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList DropDownList59; - + /// /// ToolbarSeparator1 控件。 /// @@ -641,7 +652,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; - + /// /// ToolbarText1 控件。 /// @@ -650,7 +661,7 @@ namespace FineUIPro.Web.Report { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarText ToolbarText1; - + /// /// ddlPageSize 控件。 /// diff --git a/EProject/FineUIPro.Web/Report/TimeSheetReport.aspx.cs b/EProject/FineUIPro.Web/Report/TimeSheetReport.aspx.cs index 73903c7..ac5914a 100644 --- a/EProject/FineUIPro.Web/Report/TimeSheetReport.aspx.cs +++ b/EProject/FineUIPro.Web/Report/TimeSheetReport.aspx.cs @@ -291,6 +291,15 @@ namespace FineUIPro.Web.Report string actStr = actType + "1"; reportModel.GetRow(rowIndex).GetCell(6).SetCellValue(actStr); } + if (actType.Contains("1")) + { + string thirdParty = table.Rows[i]["IsThirdParty"].ToString(); + if (thirdParty != "" && thirdParty == "是") + { + string actStr = actType + "1"; + reportModel.GetRow(rowIndex).GetCell(6).SetCellValue(actStr); + } + } } else if (table.Rows[i]["Type"].ToString().Contains("T02_OverTime")) { @@ -300,6 +309,15 @@ namespace FineUIPro.Web.Report string actStr = actType + "2"; reportModel.GetRow(rowIndex).GetCell(6).SetCellValue(actStr); } + if (actType.Contains("1")) + { + string thirdParty = table.Rows[i]["IsThirdParty"].ToString(); + if (thirdParty != "" && thirdParty == "是") + { + string actStr = actType + "2"; + reportModel.GetRow(rowIndex).GetCell(6).SetCellValue(actStr); + } + } } else if (table.Rows[i]["Type"].ToString().Contains("T03_OverTime")) @@ -310,6 +328,15 @@ namespace FineUIPro.Web.Report string actStr = actType + "3"; reportModel.GetRow(rowIndex).GetCell(6).SetCellValue(actStr); } + if (actType.Contains("1")) + { + string thirdParty = table.Rows[i]["IsThirdParty"].ToString(); + if (thirdParty != "" && thirdParty == "是") + { + string actStr = actType + "3"; + reportModel.GetRow(rowIndex).GetCell(6).SetCellValue(actStr); + } + } } else diff --git a/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx b/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx index bbbfa6a..a4cda93 100644 --- a/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx +++ b/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx @@ -21,7 +21,7 @@ - + diff --git a/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx.cs b/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx.cs index 39ecb71..779d2ea 100644 --- a/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx.cs +++ b/EProject/FineUIPro.Web/ResourcePlan/ResourcePlan.aspx.cs @@ -75,7 +75,7 @@ namespace FineUIPro.Web.ResourcePlan strSql += " AND ProjectControl_JobType=@JobType "; listStr.Add(new SqlParameter("@JobType", this.drpJobType.SelectedItem.Text)); } - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + 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)); @@ -578,6 +578,19 @@ namespace FineUIPro.Web.ResourcePlan #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); + } + } + /// /// 下拉框选择事件 /// diff --git a/EProject/FineUIPro.Web/ResourcePlan/ResourcePlanAdd.aspx.cs b/EProject/FineUIPro.Web/ResourcePlan/ResourcePlanAdd.aspx.cs index 644402f..b79216f 100644 --- a/EProject/FineUIPro.Web/ResourcePlan/ResourcePlanAdd.aspx.cs +++ b/EProject/FineUIPro.Web/ResourcePlan/ResourcePlanAdd.aspx.cs @@ -617,15 +617,17 @@ namespace FineUIPro.Web.ResourcePlan ProjectControlAccount = string.Empty; } - // 后加条件,当创建第二个资源时,项目批准日期不为空时项目状态为On Going - if (eProject.PM_MA_ProjectApproval.HasValue && (eProject.ProjectControl_JobStatus == "Not Start" || eProject.ProjectControl_JobStatus == "Study")) - { - EProjects.ProjectControl_JobStatus = "On Going"; - } - else - { - EProjects.ProjectControl_JobStatus = eProject.ProjectControl_JobStatus; - } + // 后加条件,当创建第二个资源时,项目批准日期不为空时项目状态为On Going 不要了 修改于2024.07.03 + //if (eProject.ProjectControl_JobType == "Other" && eProject.PM_MA_ProjectApproval.HasValue && !eProject.CM_MA_MC.HasValue + // && (eProject.ProjectControl_JobStatus == "Not Start" || eProject.ProjectControl_JobStatus == "Study")) + //{ + // EProjects.ProjectControl_JobStatus = "On Going"; + //} + + //else + //{ + // EProjects.ProjectControl_JobStatus = eProject.ProjectControl_JobStatus; + //} //(现增加第二张资源一个月后关闭) //if(eProject.ProjectControl_JobType == "MOC") //{ diff --git a/EProject/FineUIPro.Web/common/Main.aspx b/EProject/FineUIPro.Web/common/Main.aspx index 33af6bb..b7aee42 100644 --- a/EProject/FineUIPro.Web/common/Main.aspx +++ b/EProject/FineUIPro.Web/common/Main.aspx @@ -38,7 +38,7 @@ - + @@ -186,7 +186,7 @@ - + @@ -194,7 +194,7 @@ - + @@ -202,7 +202,7 @@ - + @@ -210,7 +210,7 @@ - + @@ -218,15 +218,16 @@ - + - + - + + diff --git a/EProject/FineUIPro.Web/common/Main.aspx.cs b/EProject/FineUIPro.Web/common/Main.aspx.cs index 7bd0647..43f4f0c 100644 --- a/EProject/FineUIPro.Web/common/Main.aspx.cs +++ b/EProject/FineUIPro.Web/common/Main.aspx.cs @@ -75,7 +75,7 @@ namespace FineUIPro.Web.common strSql += " AND eProject.ProjectControl_JobType=@jobType"; listStr.Add(new SqlParameter("@jobType", this.drpJobType.SelectedItem.Text)); } // AND CHARINDEX(Trust.ProjectId,@ProjectId)>0 - if (this.drpJobStatus.SelectedValue != BLL.Const._Null) + if (this.drpJobStatus.SelectedValue != BLL.Const._Null && this.drpJobStatus.SelectedValue != null) { //strSql += " AND eProject.ProjectControl_JobStatus=@jobStatus"; strSql += " AND CHARINDEX(eProject.ProjectControl_JobStatus,@jobStatus)>0"; @@ -231,7 +231,8 @@ namespace FineUIPro.Web.common #region General this.txtBuCode.Text = eProject.ProjectControl_BUCode; //部门代码 this.txtJobNo.Text = eProject.ProjectControl_JobNo;//项目号 - this.txtJobType.Text = eProject.ProjectControl_JobType;//项目类型 + this.txtJobType.Text = eProject.ProjectControl_JobType;//项目类型 + this.txtProjType.Text = eProject.ProjectControl_ProjectType; // this.txtJobTitle.Text = eProject.ProjectControl_JobTitle;//项目标题 if (!string.IsNullOrEmpty(eProject.ProjectControl_LeadBy)) { @@ -1183,6 +1184,20 @@ namespace FineUIPro.Web.common BindGrid(); } + 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); + } + BindGrid(); + } + protected void dropDownList_Click(object sender, EventArgs e) { BindGrid(); diff --git a/EProject/FineUIPro.Web/common/Main.aspx.designer.cs b/EProject/FineUIPro.Web/common/Main.aspx.designer.cs index 427a647..be5a41f 100644 --- a/EProject/FineUIPro.Web/common/Main.aspx.designer.cs +++ b/EProject/FineUIPro.Web/common/Main.aspx.designer.cs @@ -7,11 +7,13 @@ // //------------------------------------------------------------------------------ -namespace FineUIPro.Web.common { - - - public partial class main { - +namespace FineUIPro.Web.common +{ + + + public partial class main + { + /// /// Head1 控件。 /// @@ -20,7 +22,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlHead Head1; - + /// /// form1 控件。 /// @@ -29,7 +31,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.HtmlControls.HtmlForm form1; - + /// /// PageManager1 控件。 /// @@ -38,7 +40,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.PageManager PageManager1; - + /// /// Panel1 控件。 /// @@ -47,7 +49,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel1; - + /// /// panelCenterRegion 控件。 /// @@ -56,7 +58,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel panelCenterRegion; - + /// /// Grid1 控件。 /// @@ -65,7 +67,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid1; - + /// /// Toolbar1 控件。 /// @@ -74,7 +76,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Toolbar Toolbar1; - + /// /// drpJobType 控件。 /// @@ -83,7 +85,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList drpJobType; - + /// /// drpJobStatus 控件。 /// @@ -92,7 +94,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList drpJobStatus; - + /// /// drpDivision 控件。 /// @@ -101,7 +103,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.DropDownList drpDivision; - + /// /// txtJobNoS 控件。 /// @@ -110,7 +112,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtJobNoS; - + /// /// btnFind 控件。 /// @@ -119,7 +121,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnFind; - + /// /// ToolbarFill1 控件。 /// @@ -128,7 +130,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ToolbarFill ToolbarFill1; - + /// /// btnSearch 控件。 /// @@ -137,7 +139,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnSearch; - + /// /// btnViewDetail 控件。 /// @@ -146,7 +148,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Button btnViewDetail; - + /// /// hdItemsString 控件。 /// @@ -155,7 +157,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdItemsString; - + /// /// hdJobNo 控件。 /// @@ -164,7 +166,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdJobNo; - + /// /// hdJobTitle 控件。 /// @@ -173,7 +175,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdJobTitle; - + /// /// hdType 控件。 /// @@ -182,7 +184,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdType; - + /// /// hdStatus 控件。 /// @@ -191,7 +193,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdStatus; - + /// /// hdDivision 控件。 /// @@ -200,7 +202,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdDivision; - + /// /// hdProjectManager 控件。 /// @@ -209,7 +211,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdProjectManager; - + /// /// hdConstManager 控件。 /// @@ -218,7 +220,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdConstManager; - + /// /// hdOperationRep 控件。 /// @@ -227,7 +229,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdOperationRep; - + /// /// hdAccount 控件。 /// @@ -236,7 +238,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdAccount; - + /// /// hdMOCFormNo 控件。 /// @@ -245,7 +247,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdMOCFormNo; - + /// /// hdLeadBy 控件。 /// @@ -254,7 +256,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdLeadBy; - + /// /// hdEngineer 控件。 /// @@ -263,7 +265,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdEngineer; - + /// /// hdCritical 控件。 /// @@ -272,7 +274,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.HiddenField hdCritical; - + /// /// Label1 控件。 /// @@ -281,7 +283,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label Label1; - + /// /// imgSchedule 控件。 /// @@ -290,7 +292,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Image imgSchedule; - + /// /// imgCost 控件。 /// @@ -299,7 +301,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Image imgCost; - + /// /// imgScope 控件。 /// @@ -308,7 +310,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Image imgScope; - + /// /// FilesLinks 控件。 /// @@ -317,7 +319,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.HyperLink FilesLinks; - + /// /// NotesLinks 控件。 /// @@ -326,7 +328,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.HyperLink NotesLinks; - + /// /// EProjectId 控件。 /// @@ -335,7 +337,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label EProjectId; - + /// /// panelBottomRegion 控件。 /// @@ -344,7 +346,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel panelBottomRegion; - + /// /// TabStrip1 控件。 /// @@ -353,7 +355,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TabStrip TabStrip1; - + /// /// SimpleForm1 控件。 /// @@ -362,7 +364,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Form SimpleForm1; - + /// /// txtBuCode 控件。 /// @@ -371,7 +373,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtBuCode; - + /// /// txtApprovedBudget 控件。 /// @@ -380,7 +382,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtApprovedBudget; - + /// /// txtJobStatus 控件。 /// @@ -389,7 +391,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtJobStatus; - + /// /// txtScopeChange 控件。 /// @@ -398,7 +400,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Label txtScopeChange; - + /// /// txtJobNo 控件。 /// @@ -407,7 +409,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtJobNo; - + /// /// txtAccountNo 控件。 /// @@ -416,7 +418,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtAccountNo; - + /// /// txtProcePipEng 控件。 /// @@ -425,7 +427,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtProcePipEng; - + /// /// txtApprovedQty 控件。 /// @@ -434,7 +436,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtApprovedQty; - + /// /// txtJobType 控件。 /// @@ -443,7 +445,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtJobType; - + /// /// txtNetworkNo 控件。 /// @@ -452,7 +454,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtNetworkNo; - + /// /// txtEquipEng 控件。 /// @@ -461,7 +463,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtEquipEng; - + /// /// txtApprovedCost 控件。 /// @@ -470,16 +472,16 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtApprovedCost; - + /// - /// txtJobTitle 控件。 + /// txtProjType 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextBox txtJobTitle; - + protected global::FineUIPro.TextBox txtProjType; + /// /// txtCostEffectivity 控件。 /// @@ -488,7 +490,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtCostEffectivity; - + /// /// txtInstrumentEng 控件。 /// @@ -497,7 +499,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtInstrumentEng; - + /// /// txtPendingQty 控件。 /// @@ -506,16 +508,16 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtPendingQty; - + /// - /// txtLeadBy 控件。 + /// txtJobTitle 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextBox txtLeadBy; - + protected global::FineUIPro.TextBox txtJobTitle; + /// /// txtPVIPredition 控件。 /// @@ -524,7 +526,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtPVIPredition; - + /// /// txtElectrialEng 控件。 /// @@ -533,7 +535,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtElectrialEng; - + /// /// txtPendingCost 控件。 /// @@ -542,16 +544,16 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtPendingCost; - + /// - /// txtPriority 控件。 + /// txtLeadBy 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextBox txtPriority; - + protected global::FineUIPro.TextBox txtLeadBy; + /// /// txtProjManager 控件。 /// @@ -560,7 +562,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtProjManager; - + /// /// txtCivilEng 控件。 /// @@ -569,7 +571,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtCivilEng; - + /// /// txtDocStatus 控件。 /// @@ -578,16 +580,16 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtDocStatus; - + /// - /// txtCategory 控件。 + /// txtPriority 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextBox txtCategory; - + protected global::FineUIPro.TextBox txtPriority; + /// /// txtConstManager 控件。 /// @@ -596,7 +598,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtConstManager; - + /// /// txtCDI 控件。 /// @@ -605,7 +607,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtCDI; - + /// /// txtMOCFormNo 控件。 /// @@ -614,16 +616,16 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtMOCFormNo; - + /// - /// txtOperationRep 控件。 + /// txtCategory 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.TextBox txtOperationRep; - + protected global::FineUIPro.TextBox txtCategory; + /// /// txtEngManager 控件。 /// @@ -632,7 +634,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtEngManager; - + /// /// txtOutSourceType 控件。 /// @@ -641,7 +643,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtOutSourceType; - + /// /// txtCAPEXPlanNo 控件。 /// @@ -650,7 +652,16 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtCAPEXPlanNo; - + + /// + /// txtOperationRep 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtOperationRep; + /// /// txtRemarks 控件。 /// @@ -659,7 +670,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtRemarks; - + /// /// Panel5 控件。 /// @@ -668,7 +679,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel5; - + /// /// Panel6 控件。 /// @@ -677,7 +688,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel6; - + /// /// grdSchedule 控件。 /// @@ -686,7 +697,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid grdSchedule; - + /// /// Panel7 控件。 /// @@ -695,7 +706,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel7; - + /// /// grdScheduleDetail 控件。 /// @@ -704,7 +715,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid grdScheduleDetail; - + /// /// lblSchProgress 控件。 /// @@ -713,7 +724,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label lblSchProgress; - + /// /// lblActualProgress 控件。 /// @@ -722,7 +733,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label lblActualProgress; - + /// /// Panel8 控件。 /// @@ -731,7 +742,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel8; - + /// /// grdClosuerDetail 控件。 /// @@ -740,7 +751,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid grdClosuerDetail; - + /// /// Panel4 控件。 /// @@ -749,7 +760,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel4; - + /// /// Panel9 控件。 /// @@ -758,7 +769,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel9; - + /// /// txtOrginalBudget 控件。 /// @@ -767,7 +778,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtOrginalBudget; - + /// /// txtChangedBudget 控件。 /// @@ -776,7 +787,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtChangedBudget; - + /// /// txtActualCost 控件。 /// @@ -785,7 +796,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtActualCost; - + /// /// txtCommitted_PRPO 控件。 /// @@ -794,7 +805,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtCommitted_PRPO; - + /// /// txtCommitted_SSRs 控件。 /// @@ -803,7 +814,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtCommitted_SSRs; - + /// /// txtCostToComplete 控件。 /// @@ -812,7 +823,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtCostToComplete; - + /// /// txtEstimatedFinalCost 控件。 /// @@ -821,7 +832,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.NumberBox txtEstimatedFinalCost; - + /// /// txtVariance 控件。 /// @@ -830,7 +841,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextBox txtVariance; - + /// /// Panel10 控件。 /// @@ -839,7 +850,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel10; - + /// /// ContentPanel1 控件。 /// @@ -848,7 +859,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ContentPanel ContentPanel1; - + /// /// Grid5 控件。 /// @@ -857,7 +868,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid5; - + /// /// Panel11 控件。 /// @@ -866,7 +877,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel11; - + /// /// Panel12 控件。 /// @@ -875,7 +886,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel12; - + /// /// Grid6 控件。 /// @@ -884,7 +895,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid6; - + /// /// Panel13 控件。 /// @@ -893,7 +904,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Panel Panel13; - + /// /// ContentPanel2 控件。 /// @@ -902,7 +913,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.ContentPanel ContentPanel2; - + /// /// Form2 控件。 /// @@ -911,7 +922,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Form Form2; - + /// /// txtEnginering 控件。 /// @@ -920,7 +931,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextArea txtEnginering; - + /// /// txtProcurement 控件。 /// @@ -929,7 +940,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextArea txtProcurement; - + /// /// txtConstruction 控件。 /// @@ -938,7 +949,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextArea txtConstruction; - + /// /// txtQuilaityHSE 控件。 /// @@ -947,7 +958,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.TextArea txtQuilaityHSE; - + /// /// Grid7 控件。 /// @@ -956,7 +967,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid7; - + /// /// GridTDC 控件。 /// @@ -965,7 +976,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid GridTDC; - + /// /// Label2 控件。 /// @@ -974,7 +985,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label Label2; - + /// /// Grid8 控件。 /// @@ -983,7 +994,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid8; - + /// /// GridLessonLearned 控件。 /// @@ -992,7 +1003,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid GridLessonLearned; - + /// /// Grid9 控件。 /// @@ -1001,7 +1012,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Grid Grid9; - + /// /// Window1 控件。 /// @@ -1010,7 +1021,7 @@ namespace FineUIPro.Web.common { /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::FineUIPro.Window Window1; - + /// /// Window2 控件。 /// diff --git a/EProject/FineUIPro.Web/common/PageBase.cs b/EProject/FineUIPro.Web/common/PageBase.cs index af8793c..85985e6 100644 --- a/EProject/FineUIPro.Web/common/PageBase.cs +++ b/EProject/FineUIPro.Web/common/PageBase.cs @@ -1510,7 +1510,7 @@ namespace FineUIPro.Web // MC Auto if (sends.EmailUserYN == 0) { - // 收件人:CTE所有直线经理(CTE_Manager)、会计(当项目状态为Projects,Small Invest) and 项目组所有人员,抄送:CTE总监、PMs(CTE/M的所有人) + // 收件人:CTE所有直线经理(CTE_Manager)、会计(当项目状态为Projects,Small Invest) and 项目组所有人员,抄送:CTE总监、PMs(CTE/M的所有人:改为项目的PM) // 项目组所有人员 var Sendes2 = (from a in Funs.DB.ManHours_Plan join b in Funs.DB.Sys_User @@ -1552,10 +1552,14 @@ namespace FineUIPro.Web select new { EmuaerEmailAddress = x.Email, senduserid = x.UserId } ).Distinct().ToList(); var conCC2 = (from x in Funs.DB.Sys_User - join y in Funs.DB.Base_Depart on x.DepartId equals y.DepartId - where y.DepartId == Const.CTEM_DepartId && (x.IsThirdParty == false || x.IsThirdParty == null) + where x.UserId==ep.ProjectControl_ProjectManagerId && (x.IsThirdParty == false || x.IsThirdParty == null) select new { EmuaerEmailAddress = x.Email, senduserid = x.UserId } - ).Distinct().ToList(); + ).Distinct().ToList(); + //var conCC2 = (from x in Funs.DB.Sys_User + // join y in Funs.DB.Base_Depart on x.DepartId equals y.DepartId + // where y.DepartId == Const.CTEM_DepartId && (x.IsThirdParty == false || x.IsThirdParty == null) + // select new { EmuaerEmailAddress = x.Email, senduserid = x.UserId } + // ).Distinct().ToList(); var conCC = conCC1.Union(conCC2); if (conCC.Count() > 0) @@ -1614,7 +1618,7 @@ namespace FineUIPro.Web string[] mailCC = null; string resultMessage = ""; - // 收件人:CTE所有直线经理(CTE_Manager)、会计(当项目状态为Projects,Small Invest) and 项目组所有人员,抄送:CTE总监、PMs(CTE/M的所有人) + // 收件人:CTE所有直线经理(CTE_Manager)、会计(当项目状态为Projects,Small Invest) and 项目组所有人员,抄送:CTE总监、PMs(CTE/M的所有人:改为项目的PM) // 项目组所有人员 var Sendes2 = (from a in Funs.DB.ManHours_Plan join b in Funs.DB.Sys_User @@ -1656,10 +1660,14 @@ namespace FineUIPro.Web select new { EmuaerEmailAddress = x.Email, senduserid = x.UserId } ).Distinct().ToList(); var conCC2 = (from x in Funs.DB.Sys_User - join y in Funs.DB.Base_Depart on x.DepartId equals y.DepartId - where y.DepartId == Const.CTEM_DepartId && (x.IsThirdParty == false || x.IsThirdParty == null) + where x.UserId == ep.ProjectControl_ProjectManagerId && (x.IsThirdParty == false || x.IsThirdParty == null) select new { EmuaerEmailAddress = x.Email, senduserid = x.UserId } - ).Distinct().ToList(); + ).Distinct().ToList(); + //var conCC2 = (from x in Funs.DB.Sys_User + // join y in Funs.DB.Base_Depart on x.DepartId equals y.DepartId + // where y.DepartId == Const.CTEM_DepartId && (x.IsThirdParty == false || x.IsThirdParty == null) + // select new { EmuaerEmailAddress = x.Email, senduserid = x.UserId } + // ).Distinct().ToList(); var conCC = conCC1.Union(conCC2); if (conCC.Count() > 0)