コード例 #1
0
        //项目计划与工作周报交叉比对
        //对于 [周报] 中存在,但[项目计划]中不存在的内容,存放 ignoredWeeklyItemList
        //对于 [周报] 中不存在,但[项目计划]中存在的内容,存放 ignoredProjectPlanList
        //对于 [周报] 中立项和需求中的项目,存放 markableWeeklyItemList,留待人工判断
        public ProjectPlan CompareWith(DevWeeklies weeklies)
        {
            Console.WriteLine("周报 --> 项目类工作 : " + weeklies.ProjectWorkList.Count);
            Console.WriteLine("项目计划 --> 对比开始");

            //尝试将周报中的项目名称模糊匹配为项目计划中的项目名称
            weeklies.ProjectWorkList.ForEach(item => { item.Name = projectName.TryToProjectPlanName(item.Name); });

            existedProjectPlanList = weeklies.ProjectWorkList
                                     .Where(item => IsExist(item.Name) && !item.IsProjectApproved())
                                     .ToList()
                                     .Select(item => ToProjectPlanItem(item))
                                     .ToList();

            ignoredWeeklyItemList = weeklies.ProjectWorkList
                                    .Where(item => !IsExist(item.Name) && !item.IsProjectApproved())
                                    .ToList();

            ignoredProjectPlanList = projectPlanList
                                     .Where(item => !weeklies.IsExist(item.ProjectName))
                                     .ToList();

            markableWeeklyItemList = weeklies.ProjectWorkList
                                     .Where(item => item.IsProjectApproved())
                                     .ToList();

            Console.WriteLine("项目计划 --> 对比结束 : ");
            Console.WriteLine("项目计划 --> [项目计划][存在]   and [周报][存在]   : " + existedProjectPlanList.Count);
            Console.WriteLine("项目计划 --> [项目计划][不存在] and [周报][存在]   : " + ignoredWeeklyItemList.Count);
            Console.WriteLine("项目计划 --> [项目计划][存在]   and [周报][不存在] : " + ignoredProjectPlanList.Count);
            Console.WriteLine("项目计划 --> 立项和需求中的项目     : " + markableWeeklyItemList.Count);


            return(this);
        }
コード例 #2
0
        public DevBrief()
        {
            DevWeeklies weeklies = new DevWeeklies();

            weeklies.Load().Summarize();

            FrontDevBriefList  = ToBriefItemList(DepartmentType.FRONT, weeklies.CurrentWeekWorksDevDivisions);
            FrontDataBriefList = ToBriefItemList(DepartmentType.FRONT, weeklies.CurrentWeekWorksDataSci);
            BackDevBriefList   = ToBriefItemList(DepartmentType.BACK, weeklies.CurrentWeekWorksDevDivisions);
            BackDataBriefList  = ToBriefItemList(DepartmentType.BACK, weeklies.CurrentWeekWorksDataSci);
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: ApricityJ/Minerva
        //比对项目计划与周报中的项目部分,生成草稿
        static void Phase1()
        {
            Console.WriteLine("phase 1 start ... ");

            DevWeeklies devWeeklies = new DevWeeklies();

            devWeeklies.Load().Summarize();

            new ProjectPlan()
            .CompareWith(devWeeklies)
            .ReNewProjectPlan();

            Console.WriteLine("phase 1 complete ... ");
        }