Пример #1
0
        private void UpdateActivityPlanCompAppr(CMBusiness cmb)
        {
            if (CheckActivityPlanCode(cmb.Context.ActivityPlan.CaseTemplate.Code))
            {
                var demBusinessService = Globals.Resolve <IDEMService>();
                var isDemRequired      = demBusinessService.IsDEMRequired(IDBContext.Current.Operation);
                if (isDemRequired)
                {
                    if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.DEMV))
                    {
                        cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.DEMV, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                    }
                }

                var operationFund = cmb.Context.Operation.FundOperation;

                if (operationFund != null && operationFund.Any())
                {
                    if (operationFund.Any(q => q.Fund.FundCode == FundCode.SCX || q.Fund.FundCode == FundCode.CTF))
                    {
                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CGCM))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CGCM, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }

                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.FASIP))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.FASIP, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }

                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.VBFC))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.VBFC, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }

                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CERT))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CERT, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }
                    }

                    if (operationFund.Any(q => q.Fund.FundCode == FundCode.CHC || q.Fund.FundCode == FundCode.KIF))
                    {
                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CGCM))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CGCM, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }

                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.SPPD))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.SPPD, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }

                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.FAS))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.FAS, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }

                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.VBFC))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.VBFC, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }

                        if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CERT))
                        {
                            cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CERT, CMConstants.ActivityItemStatus.NotStarted.MasterId);
                        }
                    }
                }
            }
        }