Merge branch 'master' of https://gitee.com/frane-yang/SGGL_CWCEC
This commit is contained in:
		
						commit
						63e6627037
					
				|  | @ -1016,7 +1016,7 @@ | |||
|       <Version>2.1.1</Version> | ||||
|     </PackageReference> | ||||
|     <PackageReference Include="Newtonsoft.Json"> | ||||
|       <Version>12.0.3</Version> | ||||
|       <Version>13.0.3</Version> | ||||
|     </PackageReference> | ||||
|     <PackageReference Include="NPOI"> | ||||
|       <Version>2.5.5</Version> | ||||
|  |  | |||
|  | @ -421,5 +421,10 @@ namespace BLL | |||
|                 return false; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         public static Model.WBS_BreakdownProject GetBreakdownProjectByName(string divisionProjectId, string breakdownName) | ||||
|         { | ||||
|             return Funs.DB.WBS_BreakdownProject.FirstOrDefault(x => x.DivisionProjectId == divisionProjectId && x.BreakdownName == breakdownName); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -189,5 +189,26 @@ namespace BLL | |||
|                 return false; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 根据分部id获取下级项 | ||||
|         /// </summary> | ||||
|         /// <param name="divisionProjectId"></param> | ||||
|         /// <returns></returns> | ||||
|         public static List<Model.WBS_DivisionProject> GetDivisionProjectBySupId(string divisionProjectId) | ||||
|         { | ||||
|             return (from x in Funs.DB.WBS_DivisionProject where x.SuperDivisionId == divisionProjectId select x).ToList(); | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 根据分部名称获取信息 | ||||
|         /// </summary> | ||||
|         /// <param name="divisionName"></param> | ||||
|         /// <returns></returns> | ||||
|         public static Model.WBS_DivisionProject GetDivisionProjectByName(string CNProfessionalId, string unitWorkId,string superDivisionId, string divisionName) | ||||
|         { | ||||
|             var q = Funs.DB.WBS_DivisionProject.FirstOrDefault(x => x.CNProfessionalId == CNProfessionalId && x.UnitWorkId == unitWorkId && x.SuperDivisionId==superDivisionId && x.DivisionName == divisionName); | ||||
|             return q; | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -384,9 +384,9 @@ namespace BLL | |||
|         /// </summary> | ||||
|         /// <param name="unitId">单位Id</param> | ||||
|         /// <returns>人员的数量</returns> | ||||
|         public static int GetPersonCountByUnitId(string unitId, string projectId, bool isOutside) | ||||
|         public static int GetPersonCountByUnitId(string unitId, string projectId, DateTime inTime, bool isOutside) | ||||
|         { | ||||
|             var q = (from x in Funs.DB.SitePerson_Person where x.UnitId == unitId && x.ProjectId == projectId && x.IsUsed == true && x.IsOutside == isOutside select x).ToList(); | ||||
|             var q = (from x in Funs.DB.SitePerson_Person where x.UnitId == unitId && x.ProjectId == projectId && x.InTime <= inTime && x.IsUsed == true && x.IsOutside == isOutside select x).ToList(); | ||||
|             return q.Count(); | ||||
|         } | ||||
| 
 | ||||
|  | @ -395,11 +395,12 @@ namespace BLL | |||
|         /// </summary> | ||||
|         /// <param name="unitId">单位Id</param> | ||||
|         /// <returns>HSE人员的数量</returns> | ||||
|         public static int GetHSEPersonCountByUnitId(string unitId, string projectId) | ||||
|         public static int GetHSEPersonCountByUnitId(string unitId, string projectId, DateTime inTime) | ||||
|         { | ||||
|             var q = (from x in Funs.DB.SitePerson_Person | ||||
|                      join y in Funs.DB.Base_WorkPost on x.WorkPostId equals y.WorkPostId | ||||
|                      where x.UnitId == unitId && x.ProjectId == projectId && y.IsHsse==true && x.IsUsed == true select x).ToList(); | ||||
|                      where x.UnitId == unitId && x.ProjectId == projectId && x.InTime <= inTime && y.IsHsse == true && x.IsUsed == true | ||||
|                      select x).ToList(); | ||||
|             //var q = (from x in Funs.DB.SitePerson_Person where x.UnitId == unitId && x.ProjectId == projectId && (x.WorkPostId == BLL.Const.WorkPost_HSSEEngineer || x.WorkPostId == BLL.Const.WorkPost_SafetyManager) && x.IsUsed == true select x).ToList(); | ||||
|             return q.Count(); | ||||
|         } | ||||
|  |  | |||
|  | @ -151,8 +151,11 @@ | |||
|             <f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true" Hidden="true" Icon="Pencil" | ||||
|                 runat="server" Text="修改"> | ||||
|             </f:MenuButton>           | ||||
|             <f:MenuButton ID="btnMenuCopy" OnClick="btnMenuCopy_Click" EnablePostBack="true" Icon="DatabaseCopy" | ||||
|                 runat="server" Text="拷贝"> | ||||
|             <f:MenuButton ID="btnMenuCopy" OnClick="btnMenuCopy_Click" EnablePostBack="true" Icon="PageCopy" | ||||
|                 runat="server" Text="复制"> | ||||
|             </f:MenuButton>        | ||||
|             <f:MenuButton ID="btnMenuPaste" OnClick="btnMenuPaste_Click" EnablePostBack="true" Icon="PagePaste" | ||||
|                 runat="server" Text="粘贴"> | ||||
|             </f:MenuButton> | ||||
|             <f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true" Hidden="true" Icon="Delete" | ||||
|                 ConfirmText="确认删除选中项?" ConfirmTarget="Top" runat="server" Text="删除"> | ||||
|  |  | |||
|  | @ -15,6 +15,7 @@ namespace FineUIPro.Web.CQMS.WBS | |||
| { | ||||
|     public partial class ProjectControlPoint : PageBase | ||||
|     { | ||||
|         #region 定义变量 | ||||
|         /// <summary> | ||||
|         /// 被选择项列表 | ||||
|         /// </summary> | ||||
|  | @ -44,6 +45,7 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|                 ViewState["NoSelectedList"] = value; | ||||
|             } | ||||
|         } | ||||
|         #endregion | ||||
| 
 | ||||
|         #region  页面加载 | ||||
|         /// <summary> | ||||
|  | @ -84,6 +86,7 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|             this.trWBS.EnableIcons = true; | ||||
|             this.trWBS.AutoScroll = true; | ||||
|             this.trWBS.EnableSingleClickExpand = true; | ||||
| 
 | ||||
|             var unitWorks = from x in Funs.DB.WBS_UnitWork where x.ProjectId == this.CurrUser.LoginProjectId orderby x.UnitWorkCode select x; | ||||
|             foreach (var q in unitWorks) | ||||
|             { | ||||
|  | @ -367,7 +370,7 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|                     //{ | ||||
|                     if (b == false) | ||||
|                     { | ||||
|                         var selectedDivisionProject = Funs.DB.WBS_DivisionProject.FirstOrDefault(x=> x.SuperDivisionId == superDivisionProject.DivisionProjectId && x.IsSelected==true); | ||||
|                         var selectedDivisionProject = Funs.DB.WBS_DivisionProject.FirstOrDefault(x => x.SuperDivisionId == superDivisionProject.DivisionProjectId && x.IsSelected == true); | ||||
|                         if (selectedDivisionProject != null) | ||||
|                         { | ||||
| 
 | ||||
|  | @ -417,8 +420,28 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|             var temp = BLL.DivisionProjectService.GetDivisionProjectById(divisionProjectId); | ||||
|             if (temp == null) | ||||
|             { | ||||
|                 this.btnMenuCopy.Hidden = true; | ||||
|                 string cNProfessionalId = this.trWBS.SelectedNodeID; | ||||
|                 if (cNProfessionalId.Contains("|")) | ||||
|                 { | ||||
|                     cNProfessionalId = e.NodeID.Split('|')[1]; | ||||
|                 } | ||||
|                 var cnp = CNProfessionalService.GetCNProfessional(cNProfessionalId); | ||||
|                 if (cnp != null) | ||||
|                 { | ||||
|                     this.btnMenuPaste.Hidden = false; | ||||
|                 } | ||||
|                 else | ||||
|                 { | ||||
|                     this.btnMenuPaste.Hidden = true; | ||||
|                 } | ||||
|                 return; | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 this.btnMenuCopy.Hidden = false; | ||||
|                 this.btnMenuPaste.Hidden = false; | ||||
|             } | ||||
|             if (temp.CNProfessionalId != null && temp.CNProfessionalId == Const.CNProfessionalConstructId) | ||||
|             { | ||||
|                 this.Grid1.Columns[2].Hidden = false; | ||||
|  | @ -688,6 +711,7 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|         } | ||||
|         #endregion | ||||
| 
 | ||||
|         #region 增加按钮 | ||||
|         /// <summary> | ||||
|         /// 增加 | ||||
|         /// </summary> | ||||
|  | @ -712,6 +736,7 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|                 Alert.ShowInTop("请选择树节点!", MessageBoxIcon.Warning); | ||||
|             } | ||||
|         } | ||||
|         #endregion | ||||
| 
 | ||||
|         #region Grid双击事件 | ||||
|         /// <summary> | ||||
|  | @ -724,6 +749,7 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|             btnMenuModify_Click(null, null); | ||||
|         } | ||||
|         #endregion | ||||
| 
 | ||||
|         #region 编辑 | ||||
|         /// <summary> | ||||
|         /// 编辑按钮 | ||||
|  | @ -1375,9 +1401,56 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|         } | ||||
|         #endregion | ||||
| 
 | ||||
|         #region 拷贝单位工程下勾选状态 | ||||
|         #region 拷贝单位工程下勾选状态及明细 | ||||
|         #region 定义变量 | ||||
|         /// <summary> | ||||
|         /// 拷贝单位工程下勾选状态 | ||||
|         /// 选中节点ID | ||||
|         /// </summary> | ||||
|         public string treeSelectId | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 return (string)ViewState["treeSelectId"]; | ||||
|             } | ||||
|             set | ||||
|             { | ||||
|                 ViewState["treeSelectId"] = value; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 单位工程id  | ||||
|         /// </summary> | ||||
|         public string unitWorkId | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 return (string)ViewState["unitWorkId"]; | ||||
|             } | ||||
|             set | ||||
|             { | ||||
|                 ViewState["unitWorkId"] = value; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 专业Id | ||||
|         /// </summary> | ||||
|         public string CNProfessionalId | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 return (string)ViewState["CNProfessionalId"]; | ||||
|             } | ||||
|             set | ||||
|             { | ||||
|                 ViewState["CNProfessionalId"] = value; | ||||
|             } | ||||
|         } | ||||
|         #endregion | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 复制 | ||||
|         /// </summary> | ||||
|         /// <param name="sender"></param> | ||||
|         /// <param name="e"></param> | ||||
|  | @ -1385,73 +1458,310 @@ namespace FineUIPro.Web.CQMS.WBS | |||
|         { | ||||
|             if (this.trWBS.SelectedNode != null) | ||||
|             { | ||||
|                 string unitWorkId = string.Empty; | ||||
|                 var newUnitWork = BLL.UnitWorkService.GetUnitWorkByUnitWorkId(this.trWBS.SelectedNode.NodeID); | ||||
|                 if (newUnitWork != null) | ||||
|                 treeSelectId = this.trWBS.SelectedNodeID; | ||||
|                 var divisionProject = BLL.DivisionProjectService.GetDivisionProjectById(treeSelectId); | ||||
|                 if (divisionProject != null) | ||||
|                 { | ||||
|                     unitWorkId = newUnitWork.UnitWorkId; | ||||
|                     unitWorkId = divisionProject.UnitWorkId; | ||||
|                     CNProfessionalId = divisionProject.CNProfessionalId; | ||||
|                 } | ||||
|                 else | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 粘贴 | ||||
|         /// </summary> | ||||
|         /// <param name="sender"></param> | ||||
|         /// <param name="e"></param> | ||||
|         protected void btnMenuPaste_Click(object sender, EventArgs e) | ||||
|         { | ||||
|             if (!string.IsNullOrEmpty(treeSelectId)) | ||||
|             { | ||||
|                 if (!string.IsNullOrEmpty(this.trWBS.SelectedNodeID)) | ||||
|                 { | ||||
|                     var div = BLL.DivisionProjectService.GetDivisionProjectById(this.trWBS.SelectedNode.NodeID); | ||||
|                     if (div != null) | ||||
|                     string cNProfessionalId = this.trWBS.SelectedNodeID; | ||||
|                     if (cNProfessionalId.Contains("|")) | ||||
|                     { | ||||
|                         if (!string.IsNullOrEmpty(div.UnitWorkId)) | ||||
|                         { | ||||
|                             unitWorkId = div.UnitWorkId; | ||||
|                         } | ||||
|                         cNProfessionalId = cNProfessionalId.Split('|')[1]; | ||||
|                     } | ||||
|                     else | ||||
|                     var divisionProject = BLL.DivisionProjectService.GetDivisionProjectById(cNProfessionalId); | ||||
|                     if (divisionProject != null) | ||||
|                     { | ||||
|                         var div2 = (from x in Funs.DB.WBS_DivisionProject where x.CNProfessionalId != null && x.CNProfessionalId == this.trWBS.SelectedNodeID select x).FirstOrDefault(); | ||||
|                         if (div2 != null) | ||||
|                         var division = (from x in Funs.DB.WBS_DivisionProject where x.ProjectId == this.CurrUser.LoginProjectId && x.SuperDivisionId == null && x.UnitWorkId == unitWorkId && x.CNProfessionalId == CNProfessionalId && x.DivisionProjectId == treeSelectId select x).FirstOrDefault(); | ||||
|                         if (division != null) | ||||
|                         { | ||||
|                             if (!string.IsNullOrEmpty(div2.UnitWorkId)) | ||||
|                             var oldDivisionProject = (from x in Funs.DB.WBS_DivisionProject | ||||
|                                                       where x.CNProfessionalId == divisionProject.CNProfessionalId | ||||
|                                                       && x.UnitWorkId == divisionProject.UnitWorkId | ||||
|                                                       && x.SuperDivisionId != null | ||||
|                                                       && x.DivisionName == division.DivisionName | ||||
|                                                       select x); | ||||
|                             if (oldDivisionProject.Count() == 0) | ||||
|                             { | ||||
|                                 unitWorkId = div2.UnitWorkId; | ||||
|                                 Model.WBS_DivisionProject newDiv = new Model.WBS_DivisionProject(); | ||||
|                                 newDiv.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject)); | ||||
|                                 newDiv.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                                 newDiv.DivisionCode = division.DivisionCode; | ||||
|                                 newDiv.DivisionName = division.DivisionName; | ||||
|                                 newDiv.SortIndex = division.SortIndex; | ||||
|                                 newDiv.SuperDivisionId = this.trWBS.SelectedNodeID; | ||||
|                                 newDiv.CNProfessionalId = divisionProject.CNProfessionalId; | ||||
|                                 newDiv.UnitWorkId = divisionProject.UnitWorkId; | ||||
|                                 newDiv.OldDivisionId = division.OldDivisionId; | ||||
|                                 newDiv.SubItemType = division.SubItemType; | ||||
|                                 BLL.DivisionProjectService.AddDivisionProject(newDiv); | ||||
| 
 | ||||
|                                 var divisions = BLL.DivisionProjectService.GetDivisionProjectBySupId(division.DivisionProjectId); | ||||
|                                 if (divisions.Count > 0) | ||||
|                                 { | ||||
|                                     List<Model.WBS_DivisionProject> divisions2 = (from x in Funs.DB.WBS_DivisionProject where x.SuperDivisionId == division.DivisionProjectId select x).ToList(); | ||||
|                                     if (divisions2.Count() > 0) | ||||
|                                     { | ||||
|                                         this.InsertDivisionDetail(divisions2, newDiv.DivisionProjectId, newDiv.UnitWorkId); | ||||
|                                     } | ||||
|                                 } | ||||
|                                 else | ||||
|                                 { | ||||
|                                     var breakLists = BLL.BreakdownProjectService.GetBreakdownProjectsByDivisionProjectId(division.DivisionProjectId); | ||||
|                                     if (breakLists.Count > 0) | ||||
|                                     { | ||||
|                                         foreach (var item in breakLists) | ||||
|                                         { | ||||
|                                             Model.WBS_BreakdownProject bp = new Model.WBS_BreakdownProject(); | ||||
|                                             bp.BreakdownProjectId = SQLHelper.GetNewID(typeof(Model.WBS_BreakdownProject)); | ||||
|                                             bp.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                                             bp.BreakdownCode = item.BreakdownCode; | ||||
|                                             bp.BreakdownName = item.BreakdownName; | ||||
|                                             bp.DivisionProjectId = newDiv.DivisionProjectId; | ||||
|                                             bp.Basis = item.Basis; | ||||
|                                             bp.CheckPoints = item.CheckPoints; | ||||
|                                             bp.RecordAndCode = item.RecordAndCode; | ||||
|                                             bp.Class = item.Class; | ||||
|                                             bp.SortIndex = item.SortIndex; | ||||
|                                             bp.Remark = item.Remark; | ||||
|                                             bp.IsSelected = item.IsSelected; | ||||
|                                             bp.ModelURL = item.ModelURL; | ||||
|                                             bp.UnitWorkId = newDiv.UnitWorkId; | ||||
|                                             bp.IsAcceptance = item.IsAcceptance; | ||||
|                                             bp.IsYellow = item.IsYellow; | ||||
|                                             bp.WuHuan = item.WuHuan; | ||||
|                                             bp.JianLi = item.JianLi; | ||||
|                                             bp.FenBao = item.FenBao; | ||||
|                                             bp.YeZhu = item.YeZhu; | ||||
|                                             BLL.BreakdownProjectService.AddBreakdownProject(bp); | ||||
|                                         } | ||||
|                                     } | ||||
|                                 } | ||||
|                             } | ||||
|                         } | ||||
|                         else | ||||
|                         { | ||||
|                             var nodeId = this.trWBS.SelectedNodeID.Split('|')[0]; | ||||
|                             var uw = BLL.UnitWorkService.GetUnitWorkByUnitWorkId(nodeId); | ||||
|                             if (uw != null) | ||||
|                             #region 复制末级节点 | ||||
|                             var d1 = BLL.DivisionProjectService.GetDivisionProjectById(treeSelectId); | ||||
|                             if (d1 != null) | ||||
|                             { | ||||
|                                 unitWorkId = uw.UnitWorkId; | ||||
|                                 if (divisionProject.DivisionName != d1.DivisionName) | ||||
|                                 { | ||||
|                                     //粘贴分部 | ||||
|                                     Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject(); | ||||
|                                     newDivisionProject.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject)); | ||||
|                                     newDivisionProject.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                                     newDivisionProject.DivisionCode = d1.DivisionCode; | ||||
|                                     newDivisionProject.DivisionName = d1.DivisionName; | ||||
|                                     newDivisionProject.SortIndex = d1.SortIndex; | ||||
|                                     newDivisionProject.SuperDivisionId = divisionProject.DivisionProjectId; | ||||
|                                     newDivisionProject.CNProfessionalId = d1.CNProfessionalId; | ||||
|                                     newDivisionProject.UnitWorkId = divisionProject.UnitWorkId; | ||||
|                                     newDivisionProject.OldDivisionId = d1.OldDivisionId; | ||||
|                                     newDivisionProject.SubItemType = d1.SubItemType; | ||||
|                                     BLL.DivisionProjectService.AddDivisionProject(newDivisionProject); | ||||
| 
 | ||||
|                                     //粘贴分项 | ||||
|                                     var breakLists = BLL.BreakdownProjectService.GetBreakdownProjectsByDivisionProjectId(d1.DivisionProjectId); | ||||
|                                     if (breakLists.Count > 0) | ||||
|                                     { | ||||
|                                         foreach (var item in breakLists) | ||||
|                                         { | ||||
|                                             Model.WBS_BreakdownProject bp = new Model.WBS_BreakdownProject(); | ||||
|                                             bp.BreakdownProjectId = SQLHelper.GetNewID(typeof(Model.WBS_BreakdownProject)); | ||||
|                                             bp.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                                             bp.BreakdownCode = item.BreakdownCode; | ||||
|                                             bp.BreakdownName = item.BreakdownName; | ||||
|                                             bp.DivisionProjectId = newDivisionProject.DivisionProjectId; | ||||
|                                             bp.Basis = item.Basis; | ||||
|                                             bp.CheckPoints = item.CheckPoints; | ||||
|                                             bp.RecordAndCode = item.RecordAndCode; | ||||
|                                             bp.Class = item.Class; | ||||
|                                             bp.SortIndex = item.SortIndex; | ||||
|                                             bp.Remark = item.Remark; | ||||
|                                             bp.IsSelected = item.IsSelected; | ||||
|                                             bp.ModelURL = item.ModelURL; | ||||
|                                             bp.UnitWorkId = newDivisionProject.UnitWorkId; | ||||
|                                             bp.IsAcceptance = item.IsAcceptance; | ||||
|                                             bp.IsYellow = item.IsYellow; | ||||
|                                             bp.WuHuan = item.WuHuan; | ||||
|                                             bp.JianLi = item.JianLi; | ||||
|                                             bp.FenBao = item.FenBao; | ||||
|                                             bp.YeZhu = item.YeZhu; | ||||
|                                             BLL.BreakdownProjectService.AddBreakdownProject(bp); | ||||
|                                         } | ||||
|                                     } | ||||
|                                 } | ||||
|                             } | ||||
|                             #endregion | ||||
|                         } | ||||
|                     } | ||||
|                     else //粘贴到专业下 | ||||
|                     { | ||||
|                         string professionId = this.trWBS.SelectedNodeID; | ||||
|                         if (professionId.Contains("|")) | ||||
|                         { | ||||
|                             professionId = professionId.Split('|')[1]; | ||||
|                         } | ||||
|                         var cnPro = BLL.CNProfessionalService.GetCNProfessional(professionId); | ||||
|                         if (cnPro != null) | ||||
|                         { | ||||
|                             var division = (from x in Funs.DB.WBS_DivisionProject where x.ProjectId == this.CurrUser.LoginProjectId && x.SuperDivisionId == null && x.UnitWorkId == unitWorkId && x.CNProfessionalId == CNProfessionalId && x.DivisionProjectId == treeSelectId select x).FirstOrDefault(); | ||||
|                             if (division != null) | ||||
|                             { | ||||
|                                 var oldDivisionProject = (from x in Funs.DB.WBS_DivisionProject | ||||
|                                                           where x.CNProfessionalId == professionId | ||||
|                                                           && x.UnitWorkId == this.trWBS.SelectedNode.ParentNode.ParentNode.NodeID | ||||
|                                                           && x.SuperDivisionId == null | ||||
|                                                           && x.DivisionName == division.DivisionName | ||||
|                                                           select x); | ||||
|                                 if (oldDivisionProject.Count() == 0) | ||||
|                                 { | ||||
|                                     Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject(); | ||||
|                                     newDivisionProject.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject)); | ||||
|                                     newDivisionProject.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                                     newDivisionProject.DivisionCode = division.DivisionCode; | ||||
|                                     newDivisionProject.DivisionName = division.DivisionName; | ||||
|                                     newDivisionProject.SortIndex = division.SortIndex; | ||||
|                                     newDivisionProject.SuperDivisionId = null; | ||||
|                                     newDivisionProject.CNProfessionalId = cnPro.CNProfessionalId; | ||||
|                                     newDivisionProject.UnitWorkId = this.trWBS.SelectedNode.ParentNode.ParentNode.NodeID; | ||||
|                                     newDivisionProject.OldDivisionId = division.OldDivisionId; | ||||
|                                     newDivisionProject.SubItemType = division.SubItemType; | ||||
|                                     BLL.DivisionProjectService.AddDivisionProject(newDivisionProject); | ||||
| 
 | ||||
|                                     var divisions = BLL.DivisionProjectService.GetDivisionProjectBySupId(division.DivisionProjectId); | ||||
|                                     if (divisions.Count > 0) | ||||
|                                     { | ||||
|                                         List<Model.WBS_DivisionProject> divisions2 = (from x in Funs.DB.WBS_DivisionProject where x.SuperDivisionId == division.DivisionProjectId select x).ToList(); | ||||
|                                         if (divisions2.Count() > 0) | ||||
|                                         { | ||||
|                                             this.InsertDivisionDetail(divisions2, newDivisionProject.DivisionProjectId, newDivisionProject.UnitWorkId); | ||||
|                                         } | ||||
|                                     } | ||||
|                                     else | ||||
|                                     { | ||||
|                                         var breakLists = BLL.BreakdownProjectService.GetBreakdownProjectsByDivisionProjectId(division.DivisionProjectId); | ||||
|                                         if (breakLists.Count > 0) | ||||
|                                         { | ||||
|                                             foreach (var item in breakLists) | ||||
|                                             { | ||||
|                                                 Model.WBS_BreakdownProject bp = new Model.WBS_BreakdownProject(); | ||||
|                                                 bp.BreakdownProjectId = SQLHelper.GetNewID(typeof(Model.WBS_BreakdownProject)); | ||||
|                                                 bp.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                                                 bp.BreakdownCode = item.BreakdownCode; | ||||
|                                                 bp.BreakdownName = item.BreakdownName; | ||||
|                                                 bp.DivisionProjectId = newDivisionProject.DivisionProjectId; | ||||
|                                                 bp.Basis = item.Basis; | ||||
|                                                 bp.CheckPoints = item.CheckPoints; | ||||
|                                                 bp.RecordAndCode = item.RecordAndCode; | ||||
|                                                 bp.Class = item.Class; | ||||
|                                                 bp.SortIndex = item.SortIndex; | ||||
|                                                 bp.Remark = item.Remark; | ||||
|                                                 bp.IsSelected = item.IsSelected; | ||||
|                                                 bp.ModelURL = item.ModelURL; | ||||
|                                                 bp.UnitWorkId = newDivisionProject.UnitWorkId; | ||||
|                                                 bp.IsAcceptance = item.IsAcceptance; | ||||
|                                                 bp.IsYellow = item.IsYellow; | ||||
|                                                 bp.WuHuan = item.WuHuan; | ||||
|                                                 bp.JianLi = item.JianLi; | ||||
|                                                 bp.FenBao = item.FenBao; | ||||
|                                                 bp.YeZhu = item.YeZhu; | ||||
|                                                 BLL.BreakdownProjectService.AddBreakdownProject(bp); | ||||
|                                             } | ||||
|                                         } | ||||
|                                     } | ||||
|                                 } | ||||
|                             } | ||||
|                         } | ||||
|                     } | ||||
|                 } | ||||
|                 var unitWork = (from x in Funs.DB.WBS_UnitWork | ||||
|                                 where x.ProjectId == this.CurrUser.LoginProjectId | ||||
|                                     && x.UnitWorkId != unitWorkId | ||||
|                                 select x).FirstOrDefault(); | ||||
|                 ShowNotify("粘贴成功!", MessageBoxIcon.Success); | ||||
|                 InitTreeMenu(); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 Alert.ShowInParent("请先复制节点!", MessageBoxIcon.Warning); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|                 var oldDivsionProject = (from x in Funs.DB.WBS_DivisionProject | ||||
|                                          where x.ProjectId == this.CurrUser.LoginProjectId && x.IsSelected == true | ||||
|                                          && x.UnitWorkId == unitWork.UnitWorkId | ||||
|                                          select x).ToList(); | ||||
|                 foreach (var item in oldDivsionProject) | ||||
|         //循环拷贝子级 | ||||
|             private void InsertDivisionDetail(List<Model.WBS_DivisionProject> divisions, string superDivisionId, string unitWorkId) | ||||
|         { | ||||
|             foreach (var d in divisions) | ||||
|             { | ||||
|                 var oldDivisionProject = BLL.DivisionProjectService.GetDivisionProjectByName(d.CNProfessionalId, unitWorkId,superDivisionId, d.DivisionName); | ||||
|                 if (oldDivisionProject == null) | ||||
|                 { | ||||
|                     var div = Funs.DB.WBS_DivisionProject.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.UnitWorkId == unitWorkId && x.DivisionCode == item.DivisionCode); | ||||
|                     if (div != null) | ||||
|                     Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject(); | ||||
|                     newDivisionProject.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject)); | ||||
|                     newDivisionProject.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                     newDivisionProject.DivisionCode = d.DivisionCode; | ||||
|                     newDivisionProject.DivisionName = d.DivisionName; | ||||
|                     newDivisionProject.SortIndex = d.SortIndex; | ||||
|                     newDivisionProject.SuperDivisionId = superDivisionId; | ||||
|                     newDivisionProject.CNProfessionalId = d.CNProfessionalId; | ||||
|                     newDivisionProject.UnitWorkId = unitWorkId; | ||||
|                     newDivisionProject.OldDivisionId = d.OldDivisionId; | ||||
|                     newDivisionProject.SubItemType = d.SubItemType; | ||||
|                     BLL.DivisionProjectService.AddDivisionProject(newDivisionProject);        //子级分部 | ||||
|                     List<Model.WBS_DivisionProject> divisions2 = (from x in Funs.DB.WBS_DivisionProject where x.SuperDivisionId == d.DivisionProjectId select x).ToList(); | ||||
|                     if (divisions2.Count() > 0) | ||||
|                     { | ||||
|                         div.IsSelected = true; | ||||
|                         Funs.DB.SubmitChanges(); | ||||
|                         this.InsertDivisionDetail(divisions2, newDivisionProject.DivisionProjectId, unitWorkId); | ||||
|                     } | ||||
| 
 | ||||
|                         var breakdownProjects = (from x in Funs.DB.WBS_BreakdownProject | ||||
|                                                  where x.ProjectId == this.CurrUser.LoginProjectId | ||||
|                                                  && x.UnitWorkId == unitWorkId | ||||
|                                                  && x.DivisionProjectId == div.DivisionProjectId | ||||
|                                                  select x).ToList(); | ||||
|                         foreach (var b in breakdownProjects) | ||||
|                     //拷贝分项 | ||||
|                     var breakdowns = from x in Funs.DB.WBS_BreakdownProject | ||||
|                                      join y in Funs.DB.WBS_DivisionProject on x.DivisionProjectId equals y.DivisionProjectId | ||||
|                                      where y.DivisionProjectId == d.DivisionProjectId | ||||
|                                      select x; | ||||
|                     foreach (var b in breakdowns) | ||||
|                     { | ||||
|                         var oldBreakdownProject = BLL.BreakdownProjectService.GetBreakdownProjectByName(newDivisionProject.DivisionProjectId,b.BreakdownName); | ||||
|                         if (oldBreakdownProject == null) | ||||
|                         { | ||||
|                             b.IsSelected = true; | ||||
|                             Funs.DB.SubmitChanges(); | ||||
|                             Model.WBS_BreakdownProject bp = new Model.WBS_BreakdownProject(); | ||||
|                             bp.BreakdownProjectId = SQLHelper.GetNewID(typeof(Model.WBS_BreakdownProject)); | ||||
|                             bp.ProjectId = this.CurrUser.LoginProjectId; | ||||
|                             bp.BreakdownCode = b.BreakdownCode; | ||||
|                             bp.BreakdownName = b.BreakdownName; | ||||
|                             bp.DivisionProjectId = newDivisionProject.DivisionProjectId; | ||||
|                             bp.Basis = b.Basis; | ||||
|                             bp.CheckPoints = b.CheckPoints; | ||||
|                             bp.RecordAndCode = b.RecordAndCode; | ||||
|                             bp.Class = b.Class; | ||||
|                             bp.SortIndex = b.SortIndex; | ||||
|                             bp.Remark = b.Remark; | ||||
|                             bp.ModelURL = b.ModelURL; | ||||
|                             bp.UnitWorkId = newDivisionProject.UnitWorkId; | ||||
|                             bp.IsAcceptance = b.IsAcceptance; | ||||
|                             bp.IsYellow = b.IsYellow; | ||||
|                             bp.WuHuan = b.WuHuan; | ||||
|                             bp.JianLi = b.JianLi; | ||||
|                             bp.FenBao = b.FenBao; | ||||
|                             bp.YeZhu = b.YeZhu; | ||||
|                             bp.SourceBreakdownId = b.SourceBreakdownId; | ||||
| 
 | ||||
|                             BLL.BreakdownProjectService.AddBreakdownProject(bp); | ||||
|                         } | ||||
|                     } | ||||
|                 } | ||||
|                 ShowNotify("拷贝成功", MessageBoxIcon.Success); | ||||
|             } | ||||
|         } | ||||
|         #endregion | ||||
|  |  | |||
|  | @ -228,6 +228,15 @@ namespace FineUIPro.Web.CQMS.WBS { | |||
|         /// </remarks> | ||||
|         protected global::FineUIPro.MenuButton btnMenuCopy; | ||||
|          | ||||
|         /// <summary> | ||||
|         /// btnMenuPaste 控件。 | ||||
|         /// </summary> | ||||
|         /// <remarks> | ||||
|         /// 自动生成的字段。 | ||||
|         /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 | ||||
|         /// </remarks> | ||||
|         protected global::FineUIPro.MenuButton btnMenuPaste; | ||||
|          | ||||
|         /// <summary> | ||||
|         /// btnMenuDelete 控件。 | ||||
|         /// </summary> | ||||
|  |  | |||
|  | @ -3380,3 +3380,81 @@ IP地址:::1 | |||
| 
 | ||||
| 出错时间:10/22/2023 17:53:02 | ||||
| 
 | ||||
| 
 | ||||
| 错误信息开始=====> | ||||
| 错误类型:HttpCompileException | ||||
| 错误信息:e:\五环\SGGL_CWCEC\SGGL\FineUIPro.Web\CQMS\WBS\ProjectControlPoint.aspx(157): error CS1061: “ASP.cqms_wbs_projectcontrolpoint_aspx”不包含“btnMenuPaste_Click”的定义,并且找不到可接受类型为“ASP.cqms_wbs_projectcontrolpoint_aspx”的第一个参数的扩展方法“btnMenuPaste_Click”(是否缺少 using 指令或程序集引用?) | ||||
| 错误堆栈: | ||||
|    在 System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) | ||||
|    在 System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) | ||||
|    在 System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) | ||||
|    在 System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound) | ||||
|    在 System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, Type requiredBaseType, HttpContext context, Boolean allowCrossApp) | ||||
|    在 System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath) | ||||
|    在 System.Web.UI.PageHandlerFactory.GetHandler(HttpContext context, String requestType, String virtualPath, String path) | ||||
|    在 System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() | ||||
|    在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) | ||||
|    在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) | ||||
| 出错时间:10/25/2023 21:29:28 | ||||
| 出错文件:http://localhost:8579/CQMS/WBS/ProjectControlPoint.aspx | ||||
| IP地址:::1 | ||||
| 
 | ||||
| 出错时间:10/25/2023 21:29:28 | ||||
| 
 | ||||
| 
 | ||||
| 错误信息开始=====> | ||||
| 错误类型:IndexOutOfRangeException | ||||
| 错误信息:索引超出了数组界限。 | ||||
| 错误堆栈: | ||||
|    在 FineUIPro.Web.CQMS.WBS.ProjectControlPoint.trWBS_NodeExpand(Object sender, TreeNodeEventArgs e) 位置 E:\五环\SGGL_CWCEC\SGGL\FineUIPro.Web\CQMS\WBS\ProjectControlPoint.aspx.cs:行号 0 | ||||
|    在 FineUIPro.Tree.OnNodeExpand(TreeNodeEventArgs e) | ||||
|    在 (Tree , TreeNodeEventArgs ) | ||||
|    在 FineUIPro.Tree.RaisePostBackEvent(String eventArgument) | ||||
|    在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) | ||||
|    在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) | ||||
|    在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) | ||||
| 出错时间:10/26/2023 14:57:53 | ||||
| 出错文件:http://localhost:8579/CQMS/WBS/ProjectControlPoint.aspx | ||||
| IP地址:::1 | ||||
| 操作人员:JT | ||||
| 
 | ||||
| 出错时间:10/26/2023 14:57:53 | ||||
| 
 | ||||
| 
 | ||||
| 错误信息开始=====> | ||||
| 错误类型:IndexOutOfRangeException | ||||
| 错误信息:索引超出了数组界限。 | ||||
| 错误堆栈: | ||||
|    在 FineUIPro.Web.CQMS.WBS.ProjectControlPoint.btnMenuPaste_Click(Object sender, EventArgs e) 位置 E:\五环\SGGL_CWCEC\SGGL\FineUIPro.Web\CQMS\WBS\ProjectControlPoint.aspx.cs:行号 1522 | ||||
|    在 FineUIPro.MenuButton.OnClick(EventArgs e) | ||||
|    在 (MenuButton , EventArgs ) | ||||
|    在 FineUIPro.MenuButton.RaisePostBackEvent(String eventArgument) | ||||
|    在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) | ||||
|    在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) | ||||
|    在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) | ||||
| 出错时间:10/27/2023 16:57:15 | ||||
| 出错文件:http://localhost:8579/CQMS/WBS/ProjectControlPoint.aspx | ||||
| IP地址:::1 | ||||
| 操作人员:JT | ||||
| 
 | ||||
| 出错时间:10/27/2023 16:57:15 | ||||
| 
 | ||||
| 
 | ||||
| 错误信息开始=====> | ||||
| 错误类型:NullReferenceException | ||||
| 错误信息:未将对象引用设置到对象的实例。 | ||||
| 错误堆栈: | ||||
|    在 (TreeNode ) | ||||
|    在 FineUIPro.TreeCommandEventArgs..ctor(TreeNode node, String commandName, String commandArgument) | ||||
|    在 (TreeNode , String , String ) | ||||
|    在 FineUIPro.Tree.RaisePostBackEvent(String eventArgument) | ||||
|    在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) | ||||
|    在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) | ||||
|    在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) | ||||
| 出错时间:10/31/2023 09:48:02 | ||||
| 出错文件:http://localhost:8579/CQMS/WBS/ProjectControlPoint.aspx | ||||
| IP地址:::1 | ||||
| 操作人员:JT | ||||
| 
 | ||||
| 出错时间:10/31/2023 09:48:02 | ||||
| 
 | ||||
|  |  | |||
|  | @ -17095,35 +17095,6 @@ | |||
|   <ItemGroup> | ||||
|     <WCFMetadata Include="Service References\" /> | ||||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <COMReference Include="Microsoft.Office.Core"> | ||||
|       <Guid>{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}</Guid> | ||||
|       <VersionMajor>2</VersionMajor> | ||||
|       <VersionMinor>4</VersionMinor> | ||||
|       <Lcid>0</Lcid> | ||||
|       <WrapperTool>primary</WrapperTool> | ||||
|       <Isolated>False</Isolated> | ||||
|       <EmbedInteropTypes>True</EmbedInteropTypes> | ||||
|     </COMReference> | ||||
|     <COMReference Include="Microsoft.Office.Interop.Excel"> | ||||
|       <Guid>{00020813-0000-0000-C000-000000000046}</Guid> | ||||
|       <VersionMajor>1</VersionMajor> | ||||
|       <VersionMinor>6</VersionMinor> | ||||
|       <Lcid>0</Lcid> | ||||
|       <WrapperTool>primary</WrapperTool> | ||||
|       <Isolated>False</Isolated> | ||||
|       <EmbedInteropTypes>True</EmbedInteropTypes> | ||||
|     </COMReference> | ||||
|     <COMReference Include="VBIDE"> | ||||
|       <Guid>{0002E157-0000-0000-C000-000000000046}</Guid> | ||||
|       <VersionMajor>5</VersionMajor> | ||||
|       <VersionMinor>3</VersionMinor> | ||||
|       <Lcid>0</Lcid> | ||||
|       <WrapperTool>primary</WrapperTool> | ||||
|       <Isolated>False</Isolated> | ||||
|       <EmbedInteropTypes>True</EmbedInteropTypes> | ||||
|     </COMReference> | ||||
|   </ItemGroup> | ||||
|   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> | ||||
|   <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" /> | ||||
|   <ProjectExtensions> | ||||
|  |  | |||
|  | @ -130,9 +130,9 @@ namespace FineUIPro.Web.HSSE.Manager | |||
|                     { | ||||
|                         PersonSortId = SQLHelper.GetNewID(typeof(Model.Manager_PersonSortC)), | ||||
|                         UnitId = u.UnitId, | ||||
|                         SumPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, false),//本部 | ||||
|                         SumOutPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, true),//外聘 | ||||
|                         HSEPersonNum = BLL.PersonService.GetHSEPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId), | ||||
|                         SumPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, Convert.ToDateTime(Request.Params["months"]), false),//本部 | ||||
|                         SumOutPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, Convert.ToDateTime(Request.Params["months"]), true),//外聘 | ||||
|                         HSEPersonNum = BLL.PersonService.GetHSEPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, Convert.ToDateTime(Request.Params["months"])), | ||||
|                         ContractRange = u.ContractRange | ||||
|                     }; | ||||
|                     personSorts.Add(personSort); | ||||
|  |  | |||
|  | @ -130,9 +130,9 @@ namespace FineUIPro.Web.HSSE.Manager | |||
|                     { | ||||
|                         PersonSortId = SQLHelper.GetNewID(typeof(Model.Manager_PersonSortC)), | ||||
|                         UnitId = u.UnitId, | ||||
|                         SumPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId,false),//本部 | ||||
|                         SumOutPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, true),//外聘 | ||||
|                         HSEPersonNum = BLL.PersonService.GetHSEPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId) | ||||
|                         SumPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, Convert.ToDateTime(Request.Params["months"]), false),//本部 | ||||
|                         SumOutPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, Convert.ToDateTime(Request.Params["months"]), true),//外聘 | ||||
|                         HSEPersonNum = BLL.PersonService.GetHSEPersonCountByUnitId(u.UnitId, this.CurrUser.LoginProjectId, Convert.ToDateTime(Request.Params["months"])) | ||||
|                     }; | ||||
|                     personSorts.Add(personSort); | ||||
|                     totalSumPersonNum += Convert.ToInt32(personSort.SumPersonNum); | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue