private void ERP_PROJECTTREE_Load(object sender, EventArgs e) { tn.Tag = ProjectId; project p = project.Find(ProjectId); if (p != null) { tn.Text = project.Find(ProjectId).description; tn.ImageIndex = 3; tn.SelectedImageIndex = 3; } else { tn.Text = "项目"; } this.tvMType.Nodes.Add(tn); //AddFirstSubProject(tn); //AddSystem(tn); //this.tvMType.ExpandAll(); DataTable dt = new DataTable(); DataTable dtact = new DataTable(); //int projectid = ProjectSystem.FindProjectid(ProjectId); dt = SubProject.FindAllSubPro(ProjectId).Tables[0]; dtact = Activity.FindActivityDs(ProjectId).Tables[0]; //string virroot = ProjectSystem.GetProName(projectID); CreateTreeViewRecursiveNew(tn, dt, dtact, "0"); }
public void TryRun(string targetName, SubProject fixtureProject) { if (fixtureProject.Targets.Contains(targetName)) { fixtureProject.Targets[targetName].Execute(); } }
public async Task <SubProject> CreateAsync <TInputModel>(TInputModel inputModel) { var inputSubProject = AutoMapperConfig.MapperInstance.Map <SubProject>(inputModel); var project = await this.projectsService.GetByIdAsync(inputSubProject.ProjectId); var subProject = new SubProject { SubProjectTypeId = inputSubProject.SubProjectTypeId, ProjectId = inputSubProject.ProjectId, Budget = inputSubProject.Budget, ProgressStatusId = project.ProgressStatusId, }; if (inputSubProject.DueDate != null) { subProject.DueDate = inputSubProject.DueDate?.ToUniversalTime(); } else { subProject.DueDate = project.DueDate; } await this.subProjectsRepository.AddAsync(subProject); await this.subProjectsRepository.SaveChangesAsync(); return(subProject); }
public async Task DeleteAsyncShouldDeletetheCorrectSubProject() { // Arrange var subProject = new SubProject { Id = 1, Budget = 1000, ProgressStatusId = 2, DueDate = DateTime.Now.AddDays(10), }; await this.PlanItDbContext.SubProjects.AddAsync(subProject); await this.PlanItDbContext.SaveChangesAsync(); var subProjectId = 1; // Act var expected = 0; await this.SubProjectsService.DeleteAsync(subProjectId); // Assert Assert.Equal(expected, this.PlanItDbContext.SubProjects.Count()); }
public ActionResult Create(string projectCode, FormCollection collection) { var project = this.projectServices.GetProjectByCode(projectCode); if (project == null) { return RedirectToAction("Index", "Project"); } try { var newSubProject = new SubProject { Project = project }; if (TryUpdateModel(newSubProject, null, null, new[] { "Project" })) { project.SubProjects.Add(newSubProject); this.projectServices.SaveProject(project); return RedirectToAction("Index", new { projectCode }); } } catch (Exception e) { ModelState.AddModelError(string.Empty, e); } return View(); }
public async Task <ActionResult <SubProject> > PostSubProject(SubProjectDTO subProjectDto) { var subproject = _context.SubProjects.Where(c => c.SubProjectName == subProjectDto.SubProjectName).FirstOrDefault(); if (subproject != null) { return(Conflict(new RespStatus { Status = "Failure", Message = "Sub Project Already Exists" })); } SubProject SubProj = new SubProject { ProjectId = subProjectDto.ProjectId, SubProjectName = subProjectDto.SubProjectName, SubProjectDesc = subProjectDto.SubProjectDesc }; _context.SubProjects.Add(SubProj); await _context.SaveChangesAsync(); return(Ok(new RespStatus { Status = "Success", Message = "Sub-Project Created!" })); }
protected override void ExecuteTask() { int TestCount = 0; int TestPassingCount = 0; foreach (String Fixture in Fixtures) { SubProject FixtureProject = this.Project.SubProjects[Fixture]; try { this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, FixtureSetUp), FixtureProject); foreach (Target FixtureTarget in FixtureProject.Targets) { if (FixtureTarget.Name.EndsWith("Test")) { try { TestCount++; this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, SetUpName), FixtureProject); FixtureTarget.Execute(); TestPassingCount++; } catch (BuildException bx) { Log(Level.Error, "{0} at:{1}{2}", bx.Message, Environment.NewLine, bx.Location.ToString()); } catch (Exception ex) { Log(Level.Error, "{0} in {1}", ex.Message, FixtureTarget.Name); } finally { this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, TearDownName), FixtureProject); } } } } finally { this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, FixtureTearDown), FixtureProject); } } int TestFailingCount = TestCount - TestPassingCount; Log(Level.Info, "Tests Run: {0}", TestCount); Log(Level.Info, "Tests Passing: {0}", TestPassingCount); Log(Level.Info, "Tests Failing: {0}", TestFailingCount); Log(Level.Info, "Test Assertions Executed: {0}", MbUnit.Framework.Assert.AssertCount); if (TestFailingCount > 0) { throw new BuildException(string.Format("{0} tests failed.", TestFailingCount)); } }
public async Task SumCostsCompleteProjectsByManagerIdFromProjectShouldReturnCorretcValue() { // Arrange var project = new Project { Id = 1, ProjectManagerId = "First", IsDeleted = false, ProgressStatus = new ProgressStatus { Name = GlobalConstants.ProgressStatusCompleted, }, }; var subProject = new SubProject { Id = 1, ProjectId = 1, }; var problems = new List <Problem> { new Problem { SubProjectId = 1, HourlyRate = 4, TotalHours = 25, }, new Problem { SubProjectId = 1, HourlyRate = 4, TotalHours = 100, }, }; await this.PlanItDbContext.Projects.AddAsync(project); await this.PlanItDbContext.SubProjects.AddAsync(subProject); await this.PlanItDbContext.Problems.AddRangeAsync(problems); await this.PlanItDbContext.SaveChangesAsync(); var userId = "First"; // Act var expected = 500; var actual = this.ProblemsService.SumCostsCompleteProjectsByManagerId(userId); // Assert Assert.Equal(expected, actual); }
public SubProjectPanel(SubProject subPrj) { InitializeComponent(); App app = App.Current as App; _mainFrame = app.MainFrame; _treePanel = new IS3ProjectTree(this, MyTreeView, subPrj); GotFocus += SubProjectPanel_GotFocus; }
public async Task <ActionResult <SubProject> > PostSubProject(SubProjectDTO subProjectDto) { SubProject SubProj = new SubProject(); SubProj.SubProjectName = subProjectDto.SubProjectName; SubProj.SubProjectDesc = subProjectDto.SubProjectDesc; _context.SubProjects.Add(SubProj); await _context.SaveChangesAsync(); return(CreatedAtAction("GetSubProject", new { id = SubProj.Id }, SubProj)); }
/// <summary> /// Returns a view with a form for creating a new <see cref="SubProject"/>. /// </summary> /// <param name="projectCode">The parent project code.</param> /// <returns>A view with a form for creating a new <see cref="SubProject"/>.</returns> public ActionResult Create(string projectCode) { var project = this.projectServices.GetProjectByCode(projectCode); if (project == null) { return RedirectToAction("Index", "Project"); } ViewBag.ProjectCode = projectCode; var subProject = new SubProject { Project = project }; return View(subProject); }
private void Delete() { string Id = Request["Id"]; if (!string.IsNullOrEmpty(Id)) { ProjectUser.DeleteAll("ProjectId='" + Id + "'"); SubProject.DeleteAll("ProjectId='" + Id + "'"); KanChaSheJi.DeleteAll("ProjectId='" + Id + "'"); sql = "delete NCRL_SP..Project where Id='" + Id + "'"; DataHelper.ExecSql(sql); } }
/// <summary> /// Creates the project layout. Reads the layout file if specified. /// </summary> /// <param name="traps">Directory for trap files, or null to use layout/current directory.</param> /// <param name="archive">Directory for source archive, or null for layout/no archive.</param> /// <param name="layout">Path of layout file, or null for no layout.</param> /// <exception cref="InvalidLayoutException">Failed to read layout file.</exception> public Layout(string traps, string archive, string layout) { useLayoutFile = string.IsNullOrEmpty(traps) && !string.IsNullOrEmpty(layout); if (useLayoutFile) { ReadLayoutFile(layout); DefaultProject = blocks[0].Directories; } else { DefaultProject = new SubProject(traps, archive); } }
/// <summary> /// 删除之前台座上的构件 /// </summary> /// <param name="subProject"></param> /// <returns></returns> public async Task <Pedestal> DeleteSubProjectInPedestal(SubProject subProject) { if (subProject.Pedestal == null) { return(null); } // 删除台座原有的构件,已绑定新台座 subProject.Pedestal = await Repository.GetAll().FirstOrDefaultAsync(v => v.SubProjectId == subProject.Id); var pedestal = await GetAsync(subProject.Pedestal.Id); pedestal.SubProjectId = null; pedestal.SubProject = null; return(await Repository.UpdateAsync(pedestal)); }
public async Task <IActionResult> OnGetAsync(int?id) { if (id == null) { return(NotFound()); } SubProject = await _context.SubProject.FirstOrDefaultAsync(m => m.ID == id); if (SubProject == null) { return(NotFound()); } return(Page()); }
/// <summary> /// Creates the project layout. Reads the layout file if specified. /// </summary> /// <param name="traps">Directory for trap files, or null to use layout/current directory.</param> /// <param name="archive">Directory for source archive, or null for layout/no archive.</param> /// <param name="layout">Path of layout file, or null for no layout.</param> /// <exception cref="InvalidLayoutException">Failed to read layout file.</exception> public Layout(string?traps, string?archive, string?layout) { useLayoutFile = string.IsNullOrEmpty(traps) && !string.IsNullOrEmpty(layout); blocks = new List <LayoutBlock>(); if (useLayoutFile) { ReadLayoutFile(layout !); defaultProject = blocks[0].Directories; } else { defaultProject = new SubProject(traps, archive); } }
public async Task <IActionResult> OnPostAsync(int?id) { if (id == null) { return(NotFound()); } SubProject = await _context.SubProject.FindAsync(id); if (SubProject != null) { _context.SubProject.Remove(SubProject); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
/// <summary> /// 检查构件有没有资格上该台座 /// </summary> /// <param name="pedestal"></param> /// <param name="subProject"></param> /// <returns></returns> public async Task QualifyToPedestal(Pedestal pedestal, SubProject subProject) { var query = _repositorySPSL.GetAll().Where(v => v.SubProject.Id == subProject.Id) .Include(v => v.Pedestal).Select(v => v.Pedestal.Type); if (pedestal.Type == "CL") { if (!await query.ContainsAsync("GJ")) { throw new UserFriendlyException("该构件还未上够钢筋绑扎台"); } if (!await query.ContainsAsync("ZL")) { throw new UserFriendlyException("该构件还未上过制梁台"); } } }
public async Task CreateAsyncWithNullDueDateShouldReturnCorrectSubProject() { // Arrange var project = new Project { Id = 2, ProgressStatusId = 2, DueDate = DateTime.UtcNow, }; await this.PlanItDbContext.Projects.AddAsync(project); await this.PlanItDbContext.SaveChangesAsync(); var inputModel = new SubProjectCreateInputModel { SubProjectTypeId = 1, ProjectId = 2, Budget = 3000, DueDate = null, }; // Act var expected = new SubProject { SubProjectTypeId = 1, ProjectId = 2, Budget = 3000, DueDate = DateTime.UtcNow, ProgressStatusId = 2, }; var actual = await this.SubProjectsService .CreateAsync <SubProjectCreateInputModel>(inputModel); // Assert Assert.Equal(expected.SubProjectTypeId, actual.SubProjectTypeId); Assert.Equal(expected.ProjectId, actual.ProjectId); Assert.Equal(expected.Budget, actual.Budget); Assert.Equal(expected.DueDate?.ToString(DateTimeFormat), actual.DueDate?.ToString(DateTimeFormat)); Assert.Equal(expected.ProgressStatusId, actual.ProgressStatusId); }
public async Task EditAsyncShouldReturnCorrectSubProject() { // Arrange var editModel = new SubProjectEditInputModel { Id = 1, Budget = 5000, ProgressStatusId = 3, DueDate = DateTime.Now.AddDays(20), }; var subProject = new SubProject { Id = 1, Budget = 1000, ProgressStatusId = 2, DueDate = DateTime.Now.AddDays(10), }; await this.PlanItDbContext.SubProjects.AddAsync(subProject); await this.PlanItDbContext.SaveChangesAsync(); // Act var expected = new SubProjectEditInputModel { Id = 1, Budget = 5000, ProgressStatusId = 3, DueDate = DateTime.UtcNow.AddDays(20), }; var actual = await this.SubProjectsService .EditAsync <SubProjectEditInputModel>(editModel); // Assert Assert.Equal(expected.Id, actual.Id); Assert.Equal(expected.ProgressStatusId, actual.ProgressStatusId); Assert.Equal(expected.DueDate?.ToString(DateTimeFormat), actual.DueDate?.ToString(DateTimeFormat)); }
/// <summary> /// 更换项目时重新构建项目结构树 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void cmb_project_SelectedIndexChanged(object sender, EventArgs e) { tvMType.Nodes.Clear(); tn = new TreeNode(); ProjectCmbItem item = (ProjectCmbItem)cmb_project.SelectedItem; if (item == null) { MessageBox.Show("请选择项目", "提示"); return; } ProjectId = item.Value; tn.Tag = ProjectId; project p = project.Find(ProjectId); if (p != null) { tn.Text = p.description; tn.ImageIndex = 3; tn.SelectedImageIndex = 3; } else { tn.Text = "项目"; } this.tvMType.Nodes.Add(tn); ecprojectid = ProjectSystem.FindProjectid(ProjectId).ToString(); DataTable dt = new DataTable(); DataTable dtact = new DataTable(); //int projectid = ProjectSystem.FindProjectid(ProjectId); dt = SubProject.FindAllSubPro(ProjectId).Tables[0]; dtact = Activity.FindActivityDs(ProjectId).Tables[0]; //string virroot = ProjectSystem.GetProName(projectID); CreateTreeViewRecursiveNew(tn, dt, dtact, "0"); ProjectCmbItem.BlockBind(cmb_block, ecprojectid); }
/// <summary> /// Deletes the sub project. /// </summary> /// <param name="subProject">The sub project.</param> public void DeleteSubProject(SubProject subProject) { throw new System.NotImplementedException(); }
/// <summary> /// Saves the sub project. /// </summary> /// <param name="subProject">The sub project.</param> public void SaveSubProject(SubProject subProject) { if (subProject == null) { throw new ArgumentNullException("subProject", "Cannot save null sub project."); } if (subProject.SubProjectId == Guid.Empty) { this.DataContext.InsertSubProject(subProject); } else { this.DataContext.UpdateSubProject(subProject); } this.DataContext.SaveChanges(); }
public async Task ChangeStatusAsyncWithOneProblemsCompletedShouldChangeStatus() { // Arrange var subProject = new SubProject { Id = 1, ProgressStatus = new ProgressStatus { Name = GlobalConstants.ProgressStatusAssigned, }, Project = new Project { IsDeleted = false, }, }; await this.PlanItDbContext.SubProjects.AddAsync(subProject); var problems = new List <Problem> { new Problem { SubProjectId = 1, ProgressStatus = new ProgressStatus { Name = GlobalConstants.ProgressStatusCompleted, }, }, new Problem { SubProjectId = 1, ProgressStatus = new ProgressStatus { Name = GlobalConstants.ProgressStatusCompleted, }, }, }; await this.PlanItDbContext.Problems.AddRangeAsync(problems); await this.PlanItDbContext.SaveChangesAsync(); int subProjectId = 1; var status = new ProgressStatus { Name = GlobalConstants.ProgressStatusCompleted, }; // Act var expected = new Project { Id = 1, ProgressStatus = new ProgressStatus { Name = GlobalConstants.ProgressStatusCompleted, }, }; var actual = await this.SubProjectsService .ChangeStatusAsync(subProjectId, status); // Assert Assert.Equal(expected.ProgressStatus.Name, actual.ProgressStatus.Name); }
public void SaveSubProjectIUpdatesSubProjectIfItIsNotNew() { // Arrange var subProjectToSave = new SubProject { SubProjectId = Guid.NewGuid() }; var service = new ProjectServices(this.dataContext); this.mockDataContext.Setup(x => x.InsertSubProject(It.IsAny<SubProject>())).Callback( () => Assert.Fail("Insert should not be called.")); this.mockDataContext.Setup(x => x.UpdateSubProject(subProjectToSave)) .Verifiable(); this.mockDataContext.Setup(x => x.SaveChanges()).Verifiable(); // Act service.SaveSubProject(subProjectToSave); // Assert this.mockDataContext.Verify(); }
protected void Page_Load(object sender, EventArgs e) { try { Aim.Portal.Web.WebPortalService.CheckLogon(); } catch { Response.Write("<script> window.location.href = '/Login.aspx';</script>"); Response.End(); } string action = Request["action"]; string sql = ""; DataTable dt = null; Project pEnt = null; Project oriEnt = null; EasyDictionary dic = null; string id = Request["id"]; if (!string.IsNullOrEmpty(id)) { pEnt = Project.Find(id); } switch (action) { case "loadprojecttype": sql = "select name from SysEnumeration where ParentId='f6845db5-6277-43b7-885d-031754bd51b0' order by SortIndex asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "loadlocationfirst": sql = "select id,name from NCRL_SP..LocationFirst order by Id asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "loadlocationsecond": if (!string.IsNullOrEmpty(Request["locationfirst"])) { sql = @"select id,name from NCRL_SP..LocationSecond where First_Id=(select top 1 Id from NCRL_SP..LocationFirst where Name='" + Request["locationfirst"] + "') order by Id asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); } break; case "loadchuangkou": sql = "select id,DelegateName as name from NCRL_SP..DelegateInfo"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "loadgongchengleixing": if (Request["prjleibiename"] == "市政工程") { sql = "select name from SysEnumeration where ParentId='120731f7-1ddd-4acc-a410-8bd39356863e' order by SortIndex asc"; } else { sql = "select name from SysEnumeration where ParentId='110731f7-1ddd-4acc-a410-8bd39356863e' order by SortIndex asc"; } dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "create": pEnt = JsonHelper.GetObject <Project>(Request["formdata"]); pEnt.BelongCmp = "ZX"; pEnt.Status = "已创建"; pEnt.CreateId = Aim.Portal.Web.WebPortalService.CurrentUserInfo.UserID; pEnt.CreateName = Aim.Portal.Web.WebPortalService.CurrentUserInfo.Name; pEnt.CreateTime = DateTime.Now; pEnt.DoCreate(); Response.Write("{success:true,data:" + JsonHelper.GetJsonString(pEnt) + "}"); Response.End(); break; case "update": pEnt = JsonHelper.GetObject <Project>(Request["formdata"]); dic = JsonHelper.GetObject <EasyDictionary>(Request["formdata"]); oriEnt = Project.Find(pEnt.Id); oriEnt = DataHelper.MergeData <Project>(oriEnt, pEnt, dic.Keys); oriEnt.DoUpdate(); Response.Write("{success:true,data:" + JsonHelper.GetJsonString(oriEnt) + "}"); Response.End(); break; case "loadform": Response.Write("{success:true,data:" + JsonHelper.GetJsonString(pEnt) + "}"); Response.End(); break; case "loadjiegouleixing": sql = "select name from SysEnumeration where ParentId='28c731f7-1ddd-4acc-a410-8bd39356863e' order by SortIndex asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "update_gaikuang": case "update_unit": case "update_standard": case "update_other": pEnt = JsonHelper.GetObject <Project>(Request["formdata"]); dic = JsonHelper.GetObject <EasyDictionary>(Request["formdata"]); oriEnt = Project.Find(id); oriEnt = DataHelper.MergeData <Project>(oriEnt, pEnt, dic.Keys); oriEnt.DoUpdate(); Response.Write("{success:true,data:" + JsonHelper.GetJsonString(oriEnt) + "}"); Response.End(); break; case "loadsubprj": sql = "select * from NCRL_SP..SubProject where ProjectId='" + id + "'"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "loadkanchashejiuser": sql = @"select a.*,(select top 1 SortIndex from NCRL_Portal..SysEnumeration where Name=a.MajorName and ParentId='b640c40c-e2a9-41a8-bd28-d8ff9d71ff94') as SortIndex from NCRL_SP..KanChaSheJi a where a.ProjectId='" + id + "' order by SortIndex asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "loadprojectuser": sql = @"select a.*,(select top 1 SortIndex from NCRL_Portal..SysEnumeration where Name=a.MajorName and ParentId='b640c40c-e2a9-41a8-bd28-d8ff9d71ff94') as SortIndex from NCRL_SP..ProjectUser a where a.ProjectId='" + id + "' order by SortIndex asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "update_subprj": IList <SubProject> spEnts = SubProject.FindAllByProperty(SubProject.Prop_ProjectId, id); foreach (SubProject spEnt in spEnts) { spEnt.DoDelete(); } spEnts = JsonHelper.GetObject <IList <SubProject> >(Request["subprjs"]); foreach (SubProject spEnt in spEnts) { spEnt.ProjectId = id; spEnt.DoCreate(); } Response.Write("{success:true}"); Response.End(); break; case "loadmajor": sql = "select Name name from NCRL_Portal..SysEnumeration where ParentID = 'b640c40c-e2a9-41a8-bd28-d8ff9d71ff94' order by sortindex asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "update_kanchashejiuser": IList <KanChaSheJi> kcsEnts = KanChaSheJi.FindAllByProperty(KanChaSheJi.Prop_ProjectId, id); foreach (KanChaSheJi kcsEnt in kcsEnts) { kcsEnt.DoDelete(); } kcsEnts = JsonHelper.GetObject <IList <KanChaSheJi> >(Request["kanchashejiuser"]); foreach (KanChaSheJi kcsEnt in kcsEnts) { kcsEnt.ProjectId = id; kcsEnt.DoCreate(); } Response.Write("{success:true}"); Response.End(); break; case "loadexpert_shentu": if (!string.IsNullOrEmpty(Request["majorname"])) { sql = "select Id UserId,UserName from NCRL_SP..Expert where ProfessionType like '%审图专家%' and MajorName like '%" + Request["majorname"] + "%'"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); } break; case "loadexpert_qianzhang": if (!string.IsNullOrEmpty(Request["majorname"])) { sql = "select Id UserId,UserName from NCRL_SP..Expert where ProfessionType like '%签章专家%' and MajorName like '%" + Request["majorname"] + "%'"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); } break; case "loadexpert_shenhe": if (!string.IsNullOrEmpty(Request["majorname"])) { sql = "select Id UserId,UserName from NCRL_SP..Expert where ProfessionType like '%审核专家%' and MajorName like '%" + Request["majorname"] + "%'"; dt = DataHelper.QueryDataTable(sql); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); } break; case "update_projectexpert": if (pEnt.Status == "已创建") //如果项目任务已经下达了,不允许再对专家信息进行修改,不然会造成后面数据错误 { IList <ProjectUser> puEnts = ProjectUser.FindAllByProperty(ProjectUser.Prop_ProjectId, id); foreach (ProjectUser puEnt in puEnts) { puEnt.DoDelete(); } puEnts = JsonHelper.GetObject <IList <ProjectUser> >(Request["projectexpert"]); foreach (ProjectUser puEnt in puEnts) { puEnt.ProjectId = id; puEnt.DoCreate(); } Response.Write("{success:true}"); Response.End(); } break; } }
protected override void ExecuteTask() { int TestCount = 0; int TestPassingCount = 0; StringBuilder FailingTestInfo = new StringBuilder(); ReportContainer Report = new ReportContainer(); foreach (String Fixture in Fixtures) { if (!this.Project.SubProjects.Contains(Fixture)) { throw new BuildException(string.Format("There is no fixture loaded for {0}.", Fixture), this.Location); } SubProject FixtureProject = this.Project.SubProjects[Fixture]; FixtureReport fixtureReport = new FixtureReport(Fixture); Report.FixtureReports.Add(fixtureReport); try { this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, FixtureSetUp), FixtureProject); foreach (Target FixtureTarget in FixtureProject.Targets) { if (FixtureTarget.Name.EndsWith("Test")) { TestReport testReport = new TestReport(FixtureTarget.Name); fixtureReport.TestReports.Add(testReport); try { TestCount++; this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, SetUpName), FixtureProject); FixtureTarget.Execute(); TestPassingCount++; testReport.Passed = true; } catch (BuildException bx) { string FailureInfo = string.Format("{0} at:{1}{2}{3}{4}", bx.Message, Environment.NewLine, bx.Location.ToString(), Environment.NewLine, bx.ToString()); Log(Level.Error, FailureInfo); FailingTestInfo.AppendLine(FailureInfo); testReport.Passed = false; testReport.FailureException = bx.ToString(); } catch (Exception ex) { string FailureInfo = string.Format("{0} in {1}{2}{3}", ex.Message, FixtureTarget.Name, Environment.NewLine, ex.ToString()); Log(Level.Error, FailureInfo); FailingTestInfo.AppendLine(FailureInfo); testReport.Passed = false; testReport.FailureException = ex.ToString(); } finally { this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, TearDownName), FixtureProject); } } } } finally { this.TryRun(string.Format("{0}.{1}", FixtureProject.ProjectName, FixtureTearDown), FixtureProject); } } int TestFailingCount = TestCount - TestPassingCount; Log(Level.Info, "Tests Run: {0}", TestCount); Log(Level.Info, "Tests Passing: {0}", TestPassingCount); Log(Level.Info, "Tests Failing: {0}", TestFailingCount); Log(Level.Info, "Test Assertions Executed: {0}", MbUnit.Framework.Assert.AssertCount); Console.WriteLine(FailingTestInfo.ToString()); if (File.Exists(FilePath)) { File.Delete(FilePath); } XmlSerializer Serializer = new XmlSerializer(typeof(ReportContainer)); using (FileStream ReportStream = File.OpenWrite(FilePath)) { Serializer.Serialize(ReportStream, Report); } if (TestFailingCount > 0) { throw new BuildException(string.Format("{0} tests failed.", TestFailingCount)); } }
public void SetJsonBody(SubProject subProject) { Helpers.JsonSerializer aux = new Helpers.JsonSerializer(); jsonBody = aux.Serialize(subProject); }
protected void Page_Load(object sender, EventArgs e) { try { Aim.Portal.Web.WebPortalService.CheckLogon(); } catch { Response.Write("<script> window.parent.location.href = '/Login.aspx';</script>"); Response.End(); } string templatepath = ConfigurationManager.AppSettings["TemplatePath"].ToString(); string action = Request["action"]; string id = Request["id"]; Document srcDoc = null; BookmarkCollection marks = null; IList <EasyDictionary> dics = null; string filename = ""; if (!string.IsNullOrEmpty(id)) { pEnt = Project.Find(id); } switch (action) { case "loadproject": string ProjectName = Request["ProjectName"]; if (!string.IsNullOrEmpty(ProjectName)) { where = "and ProjectName like '%" + ProjectName + "%' "; } sql = @"select * from NCRL_SP..Project where BelongCmp = 'ZX' " + where; dt = DataHelper.QueryDataTable(GetPageSql(sql)); Response.Write("{rows:" + JsonHelper.GetJsonStringFromDataTable(dt) + ",total:" + totalProperty + "}"); Response.End(); break; case "delete": Delete(); break; case "Recycle": Recycle(); break; case "loadexportfile": sql = "select Id,Name,CreateTime from FileItem where ProjectId='" + id + "' and Path='导出' order by CreateTime asc"; dt = DataHelper.QueryDataTable(sql); Response.Write("{innerrows:" + JsonHelper.GetJsonStringFromDataTable(dt) + "}"); Response.End(); break; case "export_opinioncover": //意见封面 try { srcDoc = new Document(templatepath + "审查意见封面.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty(pEnt, mark.Name)) { mark.Text = pEnt.GetValue(mark.Name) + ""; } } filename = pEnt.ProjectName.Replace("#", "") + "_审查意见封面.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch { Response.Write("{success:false}"); } Response.End(); break; case "exporthegeshu": srcDoc = new Document(templatepath + "审查合格书_市政工程_房屋建筑.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty(pEnt, mark.Name)) { mark.Text = pEnt.GetValue(mark.Name) + ""; } } sql = @"select a.MajorName,(select top 1 SortIndex from SysEnumeration where ParentId='b640c40c-e2a9-41a8-bd28-d8ff9d71ff94' and Name=a.MajorName) as SortIndex from NCRL_SP..ProjectUser a where a.ProjectId='" + pEnt.Id + "' order by SortIndex asc"; dics = DataHelper.QueryDictList(sql); int i = 1; foreach (EasyDictionary dic in dics) { if (dic.Get <string>("MajorName") != "勘察") { if (marks["Major" + i] != null) { marks["Major" + i].Text = dic.Get <string>("MajorName"); } i++; } } filename = pEnt.ProjectName.Replace("#", "") + "_审查合格书.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); break; case "export_beiandengjibiao": try { srcDoc = new Document(templatepath + "附件10施工图设计文件审查备案登记表.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty(pEnt, mark.Name)) { mark.Text = pEnt.GetValue(mark.Name) + ""; } } if (marks["Layer"] != null) { marks["Layer"].Text = "地上层数:" + pEnt.UpperLayers + (string.IsNullOrEmpty(pEnt.DownLayers) ? "" : "地下层数:" + pEnt.DownLayers); } if (marks["KanChaIfBeiAn"] != null) { marks["KanChaIfBeiAn"].Text = string.IsNullOrEmpty(pEnt.KanChaUnitBeiAnNo) ? "否" : "是"; } if (marks["SheJiIfBeiAn"] != null) { marks["SheJiIfBeiAn"].Text = string.IsNullOrEmpty(pEnt.SheJiUnitBeiAnNo) ? "否" : "是"; } sql = @"select a.*,(select top 1 SortIndex from NCRL_Portal..SysEnumeration where Name=a.MajorName and ParentId='b640c40c-e2a9-41a8-bd28-d8ff9d71ff94') as SortIndex from NCRL_SP..KanChaSheJi a where a.ProjectId='" + pEnt.Id + "' order by SortIndex asc"; dics = DataHelper.QueryDictList(sql); //勘察设计人员 int index = 1; foreach (EasyDictionary dic in dics) { if (dic.Get <string>("Position") == "注册土木工程师(岩土)") { if (marks["ZhuCeYanTuName"] != null) { marks["ZhuCeYanTuName"].Text = dic.Get <string>("UserName"); } if (marks["ZhuCeYanTuSealNo"] != null) { marks["ZhuCeYanTuSealNo"].Text = dic.Get <string>("SealNo"); } if (marks["ZhuCeYanTuShenFenZheng"] != null) { marks["ZhuCeYanTuShenFenZheng"].Text = dic.Get <string>("ShenFenZhengNo"); } } else if (dic.Get <string>("Position") == "一级注册建筑师") { if (marks["ZhuCeJianZaoShiName"] != null) { marks["ZhuCeJianZaoShiName"].Text = dic.Get <string>("UserName"); } if (marks["ZhuCeJianZaoShiSealNo"] != null) { marks["ZhuCeJianZaoShiSealNo"].Text = dic.Get <string>("SealNo"); } if (marks["ZhuCeJianZaoShiShenFenZheng"] != null) { marks["ZhuCeJianZaoShiShenFenZheng"].Text = dic.Get <string>("ShenFenZhengNo"); } } else if (dic.Get <string>("Position") == "一级注册结构师") { if (marks["ZhuCeJieGouShiName"] != null) { marks["ZhuCeJieGouShiName"].Text = dic.Get <string>("UserName"); } if (marks["ZhuCeJieGouShiSealNo"] != null) { marks["ZhuCeJieGouShiSealNo"].Text = dic.Get <string>("SealNo"); } if (marks["ZhuCeJieGouShiShenFenZheng"] != null) { marks["ZhuCeJieGouShiShenFenZheng"].Text = dic.Get <string>("ShenFenZhengNo"); } } else { if (marks["SheJi_MajorName" + index] != null) { marks["SheJi_MajorName" + index].Text = dic.Get <string>("MajorName"); } if (marks["SheJi_UserName" + index] != null) { marks["SheJi_UserName" + index].Text = dic.Get <string>("UserName"); } index++; } } sql = @"select a.*,(select top 1 SortIndex from NCRL_Portal..SysEnumeration where Name=a.MajorName and ParentId='b640c40c-e2a9-41a8-bd28-d8ff9d71ff94') as SortIndex ,b.StampNo as QianZhangStampNo,c.StampNo as ShenHeStampNo from NCRL_SP..ProjectUser a left join NCRL_SP..Expert b on b.Id=a.QianZhangId left join NCRL_SP..Expert c on c.Id=a.ShenHeId where a.ProjectId='" + pEnt.Id + "' order by SortIndex asc"; dics = DataHelper.QueryDictList(sql); index = 1; foreach (EasyDictionary dic in dics) { if (marks["ShenTu_MajorName" + index] != null) { marks["ShenTu_MajorName" + index].Text = dic.Get <string>("MajorName"); } if (marks["ShenTu_UserName" + index] != null) { marks["ShenTu_UserName" + index].Text = dic.Get <string>("QianZhangName"); } if (marks["ShenTu_SealNo" + index] != null) { marks["ShenTu_SealNo" + index].Text = dic.Get <string>("QianZhangStampNo"); } if (marks["FuHe_UserName" + index] != null) { marks["FuHe_UserName" + index].Text = dic.Get <string>("ShenHeName"); } if (marks["FuHe_SealNo" + index] != null) { marks["FuHe_SealNo" + index].Text = dic.Get <string>("ShenHeStampNo"); } index++; } //写入备案登记表信息 IList <BeiAn_Project> bapEnts = BeiAn_Project.FindAllByProperty(BeiAn_Project.Prop_ProjectId, pEnt.Id); if (bapEnts.Count > 0) { for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty_Object(bapEnts[0], mark.Name)) { mark.Text = bapEnts[0].GetValue(mark.Name) + ""; } } } filename = pEnt.ProjectName.Replace("#", "") + "_审查备案登记表.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch { Response.Write("{success:false}"); } Response.End(); break; case "export_shenchabaogao": try { if (pEnt.ProjectType == "房屋建筑") { srcDoc = new Document(templatepath + "房屋建筑_审查报告.doc"); } if (pEnt.ProjectType == "市政工程") { srcDoc = new Document(templatepath + "市政工程_审查报告.doc"); } if (pEnt.ProjectType == "基坑支护") { srcDoc = new Document(templatepath + "基坑支护_审查报告.doc"); } marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty(pEnt, mark.Name)) { mark.Text = pEnt.GetValue(mark.Name) + ""; } } IList <ShenChaReport> scrEnts = ShenChaReport.FindAllByProperty(ShenChaReport.Prop_ProjectId, pEnt.Id); if (scrEnts.Count > 0) { for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty_Object(scrEnts[0], mark.Name)) { mark.Text = scrEnts[0].GetValue(mark.Name) + ""; } } } if (marks["Layer"] != null) { marks["Layer"].Text = "地上层数:" + pEnt.UpperLayers + (string.IsNullOrEmpty(pEnt.DownLayers) ? "" : "地下层数:" + pEnt.DownLayers); } if (marks["ProjectName1"] != null) { marks["ProjectName1"].Text = pEnt.ProjectName; } if (marks["JianSheUnit1"] != null) { marks["JianSheUnit1"].Text = pEnt.JianSheUnit; } filename = pEnt.ProjectName.Replace("#", "") + "_审查报告.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; case "export_kanchashenchabaogao": try { srcDoc = new Document(templatepath + "江西省工程勘察审查报告书.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty(pEnt, mark.Name)) { mark.Text = pEnt.GetValue(mark.Name) + ""; } } IList <ShenChaReport_KanCha> scrkEnts = ShenChaReport_KanCha.FindAllByProperty(ShenChaReport_KanCha.Prop_ProjectId, pEnt.Id); if (scrkEnts.Count > 0) { for (int j = 0; j < marks.Count; j++) { if (ContainProperty_Object(scrkEnts[0], marks[j].Name)) { marks[j].Text = scrkEnts[0].GetValue(marks[j].Name) + ""; } } } if (marks["ProjectName2"] != null) { marks["ProjectName2"].Text = pEnt.ProjectName; } if (marks["JianSheUnit2"] != null) { marks["JianSheUnit2"].Text = pEnt.JianSheUnit; } filename = pEnt.ProjectName.Replace("#", "") + "_工程勘察审查报告.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; case "exportqingkuangjilu": try { srcDoc = new Document(templatepath + "附件6房屋建筑和市政基础设施工程施工图设计文件审查情况记录.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty(pEnt, mark.Name)) { mark.Text = pEnt.GetValue(mark.Name) + ""; } } filename = pEnt.ProjectName.Replace("#", "") + "_审查情况记录.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; case "export_shenchahuizong": try { srcDoc = new Document(templatepath + "审查情况汇总.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { Bookmark mark = marks[j]; if (ContainProperty(pEnt, mark.Name)) { mark.Text = pEnt.GetValue(mark.Name) + ""; } } if (marks["ProjectType2"] != null) { marks["ProjectType2"].Text = pEnt.ProjectType; } if (marks["Layer"] != null) { marks["Layer"].Text = "地上层数:" + pEnt.UpperLayers + (string.IsNullOrEmpty(pEnt.DownLayers) ? "" : "地下层数:" + pEnt.DownLayers); } //找到项目人员 排除勘察专业的 sql = @"select a.*,(select top 1 SortIndex from NCRL_Portal..SysEnumeration where Name=a.MajorName and ParentId='b640c40c-e2a9-41a8-bd28-d8ff9d71ff94') as SortIndex from NCRL_SP..ProjectUser a where a.ProjectId='" + pEnt.Id + "' order by SortIndex asc"; dics = DataHelper.QueryDictList(sql); int index = 1; foreach (EasyDictionary dic in dics) { if (dic.Get <string>("MajorName") != "勘察") { if (marks["MajorName" + index] != null) { marks["MajorName" + index].Text = dic.Get <string>("MajorName"); } if (marks["QianZhangName" + index] != null) { marks["QianZhangName" + index].Text = dic.Get <string>("QianZhangName"); } index++; } } sql = @"select isnull(sum(QiangTiao),0) from NCRL_SP..ExamineOpinion where ExamineTaskId in ( select Id from NCRL_SP..ExamineTask where ProjectId='" + pEnt.Id + "')"; if (marks["QiangTiao"] != null) { marks["QiangTiao"].Text = DataHelper.QueryValue(sql) + ""; } filename = pEnt.ProjectName.Replace("#", "") + "_审查情况汇总.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; case "export_shenchahuizong_kancha": //审查情况汇总表_工程勘察 try { srcDoc = new Document(templatepath + "审查情况汇总表_工程勘察.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { if (ContainProperty(pEnt, marks[j].Name)) { marks[j].Text = pEnt.GetValue(marks[j].Name) + ""; } } if (marks["QianZhangName"] != null) //找到勘察专业的签章专家 { IList <ProjectUser> puEnts = ProjectUser.FindAllByProperties(ProjectUser.Prop_ProjectId, pEnt.Id, ProjectUser.Prop_MajorName, "勘察"); if (puEnts.Count > 0) { marks["QianZhangName"].Text = puEnts[0].QianZhangName; } } if (marks["QiangTiao"] != null) //找到勘察专业的强条 { IList <ExamineTask> etEnts = ExamineTask.FindAllByProperties(ExamineTask.Prop_MajorName, "勘察", ExamineTask.Prop_ProjectId, pEnt.Id); if (etEnts.Count > 0) { sql = "select isnull(sum(QiangTiao),0) from NCRL_SP..ExamineOpinion where ExamineTaskId='" + etEnts[0].Id + "'"; marks["QiangTiao"].Text = DataHelper.QueryValue <Int32>(sql) + ""; } } filename = pEnt.ProjectName.Replace("#", "") + "_工程勘察审查情况汇总表.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; case "export_kangzhen": try { srcDoc = new Document(templatepath + "抗震设防监管表.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { if (ContainProperty(pEnt, marks[j].Name)) { marks[j].Text = pEnt.GetValue(marks[j].Name) + ""; } } IList <KangZhen_Project> kzpEnts = KangZhen_Project.FindAllByProperty(KangZhen_Project.Prop_ProjectId, pEnt.Id); if (kzpEnts.Count > 0) { for (int j = 0; j < marks.Count; j++) { if (ContainProperty_Object(kzpEnts[0], marks[j].Name)) { marks[j].Text = kzpEnts[0].GetValue <string>(marks[j].Name); } } } if (pEnt.Property == "新建" && marks["XinJian"] != null) { marks["XinJian"].Text = "√"; } if (pEnt.Property == "改建" && marks["GaiJian"] != null) { marks["GaiJian"].Text = "√"; } if (pEnt.Property == "扩建" && marks["KuoJian"] != null) { marks["KuoJian"].Text = "√"; } filename = pEnt.ProjectName.Replace("#", "") + "_抗震设防专项审查监管表.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; case "export_zhongshenyijianbiao": try { srcDoc = new Document(templatepath + "附件5_终审意见表.doc"); marks = srcDoc.Range.Bookmarks; for (int j = 0; j < marks.Count; j++) { if (ContainProperty(pEnt, marks[j].Name)) { marks[j].Text = pEnt.GetValue(marks[j].Name) + ""; } } IList <ZhongShenOpinion_Project> zsopEnts = ZhongShenOpinion_Project.FindAllByProperty(ZhongShenOpinion_Project.Prop_ProjectId, pEnt.Id); if (zsopEnts.Count > 0) { for (int j = 0; j < marks.Count; j++) { if (ContainProperty_Object(zsopEnts[0], marks[j].Name)) { marks[j].Text = zsopEnts[0].GetValue(marks[j].Name) + ""; } } } filename = pEnt.ProjectName.Replace("#", "") + "_终审意见表.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; case "export_subproject": //导出子项 try { srcDoc = new Document(templatepath + "子项目明细表.doc"); marks = srcDoc.Range.Bookmarks; IList <SubProject> suEnts = SubProject.FindAllByProperty(SubProject.Prop_ProjectId, pEnt.Id); for (int j = 0; j < suEnts.Count; j++) { foreach (PropertyInfo pi in SubProject.AllProperties) { if (marks[pi.Name + (j + 1)] != null) { marks[pi.Name + (j + 1)].Text = suEnts[j].GetValue(pi.Name) + ""; } } } if (marks["ProjectName"] != null) { marks["ProjectName"].Text = pEnt.ProjectName; } filename = pEnt.ProjectName.Replace("#", "") + "_子项目明细表.doc"; srcDoc.Save(@"D:\RW\Files\AppFiles\Portal\Default\" + filename); UpdateFileItem(filename); Response.Write("{success:true}"); } catch (Exception ex) { Response.Write("{success:false}"); } Response.End(); break; } }
/// <summary> /// Saves the sub project. /// </summary> /// <param name="subProject">The sub project.</param> public void InsertSubProject(SubProject subProject) { this.SubProjectCollection.Add(subProject); }
/// <summary> /// Updates the sub project. /// </summary> /// <param name="subProject">The sub project.</param> public void UpdateSubProject(SubProject subProject) { }