Exemplo n.º 1
0
        public void Fix()
        {
            CmsEntities cee = new CmsEntities();

            List<IssueRelatedIssue> itemsToAdd = new List<IssueRelatedIssue>();

            var allRelatedIssues = cee.IssueRelatedIssues.ToList();

            foreach (var relatedIssue in allRelatedIssues)
            {
                var reverseExist = (allRelatedIssues.FirstOrDefault(x => x.RelatedIssueId == relatedIssue.IssueId));

                if (reverseExist == null)
                {
                    if (itemsToAdd.FirstOrDefault(x => x.IssueId == relatedIssue.IssueId  && x.RelatedIssueId == relatedIssue.RelatedIssueId) == null)
                    {
                        itemsToAdd.Add(new IssueRelatedIssue {IssueId = relatedIssue.RelatedIssueId, RelatedIssueId = relatedIssue.IssueId});
                    }
                }
            }

            if (itemsToAdd.Any())
            {
                foreach (var issueRelatedIssue in itemsToAdd)
                {
                    cee.IssueRelatedIssues.Add(new IssueRelatedIssue { IssueId = issueRelatedIssue.IssueId, RelatedIssueId = issueRelatedIssue.RelatedIssueId });
                }
            }

            cee.SaveChanges();
        }
Exemplo n.º 2
0
        public void DeleteIssueApprovalDuplicates()
        {
            using (CmsEntities cee = new CmsEntities(120,mConnectCMS))
            {

                var issues = (from x in cee.Issues orderby x.Id select x).ToList();

                foreach (var issue in issues)
                {
                    Console.Out.WriteLine("Processing issue {0}", issue.Id);

                    var issueApprovals = (from x in cee.IssueApprovals
                                          where x.IssueId == issue.Id
                                          select x);

                    var duplicates = issueApprovals.GroupBy(x => new { x.IssueId, x.IssueCategoryId })
                        .Where(g => g.Count() > 1)
                        .Select(g => g.Key)
                        .ToList();

                    foreach (var issueApproval in duplicates)
                    {
                        var delete = (from x in cee.IssueApprovals
                                      where x.IssueId == issueApproval.IssueId
                                            && x.IssueCategoryId == issueApproval.IssueCategoryId
                                      select x).OrderByDescending(x => x.Date).Skip(1).ToList();

                        delete.ForEach(x => cee.IssueApprovals.Remove(x));

                    }
                }

                cee.SaveChanges();
            }
        }
Exemplo n.º 3
0
 public TuningPropertiesImporter(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.TuningProperties.ToString();
     Cee = new CmsEntities(5000);
     Cee.Configuration.LazyLoadingEnabled = false;
 }
 public IssueSystemReferencesImporter(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.SystemReferences.ToString();
     Cee = new CmsEntities(5000);
     Cee.Configuration.LazyLoadingEnabled = false;
 }
Exemplo n.º 5
0
        public DbOperationResult DeleteRole(int roleId)
        {
            using (CmsEntities cee = new CmsEntities())
            {
                Role role = (from x in cee.Roles where x.Id == roleId select x).FirstOrDefault();

                if (role == null)
                {
                    DbOperationResult result = new DbOperationResult();

                    result.ServerErrorMessages.Add(string.Format("Cannot find the Role to delete with Id = {0}", role.Id));
                    return result;
                }

                cee.Roles.Remove(role);
                try
                {
                    cee.SaveChanges();
                }
                catch (Exception ex)
                {
                    log.Error("", ex, ex.ToString());
                    DbOperationResult result = new DbOperationResult();

                    result.ServerErrorMessages.Add(ex.Message);
                    return result;
                }
            }

            return new DbOperationResult();
        }
Exemplo n.º 6
0
 public ElectricalImporter(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.ElectricalEquipments.ToString();
     Cee = new CmsEntities(5000);
     Cee.Configuration.LazyLoadingEnabled = false;
 }
        public DbOperationResult SaveIssueFiles(List<IssueFile> issueFiles)
        {
            try
            {
                using (var cee = new CmsEntities())
                {
                    foreach (IssueFile attachment in issueFiles)
                    {
                        IssueFile existingAttachment = (from x in cee.IssueFiles
                                                        where x.Filename == attachment.Filename &&
                                                              x.Path == attachment.Path
                                                        select x).FirstOrDefault();

                        if (existingAttachment != null)
                        {
                            existingAttachment.Description = attachment.Description;
                        }
                        else
                        {
                            attachment.User = null;
                            attachment.Issue = null;
                            attachment.AttachmentType = null;
                            cee.IssueFiles.Add(attachment);
                        }
                    }
                    cee.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return new DbOperationResult { ServerErrorMessages = new List<string> { ex.Message } };
            }

            return new DbOperationResult();
        }
Exemplo n.º 8
0
        public DbOperationResult<IssueTypeSubType> AddIssueTypeSubType(IssueType issueType, IssueSubType issueSubType)
        {
            var result = new DbOperationResult<IssueTypeSubType>();

            //guard against duplicate.
            using (var cee = new CmsEntities())
            {
                int k = (from x in cee.IssueTypeSubTypes where x.IssueTypeId == issueType.Id && x.IssueSubTypeId == issueSubType.Id select x.Id).Count();

                if (k > 0)
                {
                    result.ServerErrorMessages.Add(string.Format("Insert Failed. An IssueTypeSubType with the combination IssueType Name: '{0}' and Issue SubType Name: '{1}' already exists.", issueType.Name, issueSubType.Name));
                    return result;
                }

                var typeSubType = new IssueTypeSubType
                {
                    IssueSubTypeId = issueSubType.Id,
                    IssueTypeId = issueType.Id,
                    Ordinal = 0
                };

                cee.IssueTypeSubTypes.Add(typeSubType);
                cee.SaveChanges();
                result.EntityResult = typeSubType;
            }

            return result;
        }
Exemplo n.º 9
0
 public InterlockRiskImporter(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.InterlockRisks.ToString();
     Cee = new CmsEntities(5000);
     Cee.Configuration.LazyLoadingEnabled = false;
 }
 public MobilePlantComponentImporter(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.Components.ToString();
     Cee = new CmsEntities(5000);
     Cee.Configuration.LazyLoadingEnabled = false;
 }
Exemplo n.º 11
0
        public string Export(int[] pipeIdList, string usersBaseReportingDirectory)
        {
            if (pipeIdList == null) throw new ArgumentNullException("pipeIdList");
            if (String.IsNullOrEmpty(usersBaseReportingDirectory)) throw new ArgumentNullException("usersBaseReportingDirectory");

            if (!Directory.Exists(usersBaseReportingDirectory))
            {
                Directory.CreateDirectory(usersBaseReportingDirectory);
            }

            using (CmsEntities cee = new CmsEntities())
            {
                IList<PipeComponent> allPipeComponents = (from x in cee.PipeComponents
                                                             .Include("Pipe")
                                                             .Include("PipeComponentType")
                                                             .Include("PipePropertyValues")
                                                             .Include("Pipe.PipeClass")
                                                             .Include("Pipe.PipeSize")
                                                             .Include("Pipe.PipeFluidCode")
                                                             .Include("Pipe.PipeSpecialFeature")
                                                             .Include("Pipe.Area")
                                                          where pipeIdList.Contains(x.Id)
                                                          select x).ToList();
                return RunExport(cee, usersBaseReportingDirectory, allPipeComponents);
            }
        }
Exemplo n.º 12
0
        public ElectricalEquipmentComponentTypeProperty AddElectricalComponentTypeProperty(ElectricalEquipmentComponentTypeProperty mecp)
        {
            using (CmsEntities cee = new CmsEntities())
            {
                //Check if this component property already exist
                ElectricalEquipmentComponentTypeProperty temp = (from x in cee.ElectricalEquipmentComponentTypeProperties
                                                                 where x.ElectricalEquipmentPropertyId == mecp.ElectricalEquipmentPropertyId &&
                                                                       x.ElectricalEquipmentComponentTypeId == mecp.ElectricalEquipmentComponentTypeId
                                                                 select x).FirstOrDefault();

                if (temp == null)
                {
                    //Add new Component Type
                    temp = new ElectricalEquipmentComponentTypeProperty();
                    temp.ElectricalEquipmentPropertyId = mecp.ElectricalEquipmentPropertyId;
                    temp.ElectricalEquipmentComponentTypeId = mecp.ElectricalEquipmentComponentTypeId;
                    temp.Ordinal = mecp.Ordinal;

                    cee.ElectricalEquipmentComponentTypeProperties.Add(temp);
                    cee.SaveChanges();
                }
                else
                {
                    temp.Ordinal = mecp.Ordinal;
                    cee.SaveChanges();
                }
                return temp;
            }
        }
Exemplo n.º 13
0
 //private readonly CmsEntities mCee;
 public Cji5Importer(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.Financial.ToString();
     Cee = new CmsEntities(5000);
     Cee.Configuration.LazyLoadingEnabled = false;
 }
Exemplo n.º 14
0
        public void Migrate()
        {
            using (CmsEntities cee = new CmsEntities(120,mConnectCMS))
            {

                //var issues = (from x in cee.Issues orderby x.Id
                //              where
                //                   x.TimeToImplement.HasValue
                //                || x.TimeToTest.HasValue
                //                || x.TimeToDocument.HasValue
                //                || x.ActualTimeImplement.HasValue
                //                || x.ActualTimeTest.HasValue
                //                || x.ActualTimeDocument.HasValue
                //                || x.Budgeted.HasValue
                //                || x.FundingType != null
                //                || x.EstimateScope.HasValue
                //                || x.ActualScope.HasValue
                //                || x.EstimateDesign.HasValue
                //                || x.ActualDesign.HasValue
                //                || x.HasScope.HasValue
                //                || x.HasDesign.HasValue
                //                || x.HasScopeUserId.HasValue
                //                || x.HasDesignUserId.HasValue
                //                || x.EstimatedCost.HasValue
                //                || x.Effort.HasValue
                //                || x.Reward.HasValue
                //              select x).ToList();

                //foreach (var issue in issues)
                //{
                //    Console.Out.WriteLine("Processing issue {0}", issue.Id);

                //    if (issue.IssueTracking == null)
                //    {
                //        issue.IssueTracking = new IssueTracking();
                //    }
                //    issue.IssueTracking.ImplementedEstimate = issue.TimeToImplement;
                //    issue.IssueTracking.TestedEstimate = issue.TimeToTest;
                //    issue.IssueTracking.DocumentedEstimate = issue.TimeToDocument;
                //    issue.IssueTracking.ImplementedActual = issue.ActualTimeImplement;
                //    issue.IssueTracking.TestedActual = issue.ActualTimeTest;
                //    issue.IssueTracking.DocumentedActual = issue.ActualTimeDocument;
                //    issue.IssueTracking.Budgeted = issue.Budgeted;
                //    issue.IssueTracking.FundingType = issue.FundingType;
                //    issue.IssueTracking.ScopedEstimate = issue.EstimateScope;
                //    issue.IssueTracking.ScopedActual = issue.ActualScope;
                //    issue.IssueTracking.PeerReviewEstimate = issue.EstimateDesign;
                //    issue.IssueTracking.PeerReviewActual = issue.ActualDesign;
                //    issue.IssueTracking.Scoped = issue.HasScope.HasValue && issue.HasScope.Value;
                //    issue.IssueTracking.PeerReviewed = issue.HasDesign.HasValue && issue.HasDesign.Value;
                //    issue.IssueTracking.ScopedUserId = issue.HasScopeUserId;
                //    issue.IssueTracking.PeerReviewedUserId = issue.HasDesignUserId;
                //    issue.IssueTracking.EstimatedCost = issue.EstimatedCost;
                //    issue.IssueTracking.Effort = issue.Effort;
                //    issue.IssueTracking.Return = issue.Reward;
                //}
                //cee.SaveChanges();
            }
        }
Exemplo n.º 15
0
 public PipeComponentImporter(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.Components.ToString();
     Cee = new CmsEntities();
     //mCee.CommandTimeout = 5000;
     Cee.Configuration.LazyLoadingEnabled = false;
 }
Exemplo n.º 16
0
 public static string GetAppSettingValue(CommonUtils.AppSettingKey keyIn)
 {
     using (CmsEntities cee = new CmsEntities())
     {
         string keyInText = keyIn.ToString();
         return (from x in cee.AppSettings where string.Compare(keyInText, x.Key, StringComparison.OrdinalIgnoreCase) == 0 select x.Value).FirstOrDefault();
     }
 }
Exemplo n.º 17
0
 private static AttachmentType GetAttachmentType()
 {
     using (var cee = new CmsEntities())
     {
         var attachmentType = (from x in cee.AttachmentTypes where x.Code.Equals("Correspondence", StringComparison.CurrentCultureIgnoreCase) select x).FirstOrDefault();
         return attachmentType;
     }
 }
Exemplo n.º 18
0
        public PipeImporter(ImportFileMetaData metadata)
        {
            MetaData = metadata;
            WorkSheetName = ImportWorkSheetName.Pipes.ToString();

            Cee = new CmsEntities();
            Cee.Configuration.LazyLoadingEnabled = false;
        }
Exemplo n.º 19
0
        /// <summary>
        ///     Authenticate a user
        /// </summary>
        /// <returns></returns>
        public User AuthenticateUser(string username, string password, bool isDomainUser, string assemblyFileVersion)
        {
            using (CmsEntities cee = new CmsEntities())
            {
                User user;

                if (isDomainUser)
                {
                    user = (from x in cee.Users.Include("Role").Include("Role.RolePrivileges").Include("Role.RolePrivileges.Privilege").Include("Role.RolePrivileges.SecurityObject")
                                         .Include("UserPreference").Include("Role.RoleApprovalCategories")
                            where x.UserName.ToLower() == username &&
                                  x.ActiveUser
                            select x).FirstOrDefault();

                    if (user == null)
                    {
                        user = (from x in cee.Users.Include("Role").Include("Role.RolePrivileges").Include("Role.RolePrivileges.Privilege").Include("Role.RolePrivileges.SecurityObject")
                                             .Include("UserPreference").Include("Role.RoleApprovalCategories")
                                where x.UserName.ToLower() == "guest" &&
                                      x.ActiveUser
                                select x).FirstOrDefault();
                    }
                }
                else
                {
                    user = (from x in cee.Users.Include("Role").Include("Role.RolePrivileges").Include("Role.RolePrivileges.Privilege").Include("Role.RolePrivileges.SecurityObject")
                                         .Include("UserPreference").Include("Role.RoleApprovalCategories")
                            where x.UserName.ToLower() == username &&
                                  x.Password == password &&
                                  x.ActiveUser
                            select x).FirstOrDefault();
                }

                if (user != null && user.UserPreference == null)
                {
                    //Created new default preference
                    user.UserPreference = new UserPreference();
                    user.UserPreference.SummaryTabsExpanded = true;
                    user.UserPreference.ShowDocumentPreview = true;

                    const int Width = 315;
                    user.UserPreference.IssuePanelWidth = Width;
                    user.UserPreference.ControlPanelWidth = Width;
                    user.UserPreference.ElectricalPanelWidth = Width;
                    user.UserPreference.InstrumentPanelWidth = Width;
                    user.UserPreference.MechanicalPanelWidth = Width;
                    user.UserPreference.MobilePanelWidth = Width;
                    user.UserPreference.PipePanelWidth = Width;
                    user.UserPreference.DocumentPanelWidth = 630;
                    user.UserPreference.AdminPanelWidth = Width;
                }

                CheckClientServerVersions(user, assemblyFileVersion);

                return user;
            }
        }
Exemplo n.º 20
0
 //private readonly CmsEntities mCee;
 public DocumentEquipmentImporter(ImportFileMetaData metadata)
 {
     MetaData = metadata;
     WorkSheetName = ImportWorkSheetName.RelatedEquipment.ToString();
     //mCee = new CmsEntities(5000);
     Cee = new CmsEntities();
     //mCee.CommandTimeout = 5000;
     Cee.Configuration.LazyLoadingEnabled = false;
 }
Exemplo n.º 21
0
 /// <summary>
 /// 添加文章
 /// </summary>
 /// <param name="varticle"></param>
 public int AddArticle(cms_varticle varticle)
 {
     using (CmsEntities entity = new CmsEntities())
     {
         cms_varticle obj = varticle;
         entity.cms_varticle.AddObject(obj);
         entity.SaveChanges();
         return obj.id;
     }
 }
Exemplo n.º 22
0
        private static User GetAdminUser()
        {
            const string SystemAdministratorJobTitle = "System Administrator";

            using (var cee = new CmsEntities())
            {
                var user = (from x in cee.Users where x.JobTitle.Equals(SystemAdministratorJobTitle, StringComparison.CurrentCultureIgnoreCase) select x).FirstOrDefault();
                return user;
            }
        }
Exemplo n.º 23
0
        public void AddSupervisorsToApprovals()
        {
            using (TransactionScope transaction = new TransactionScope())
            {
                using (CmsEntities cee = new CmsEntities(120, mConnectCMS))
                {
                    var supervisorCategory = (from x in cee.IssueCategories where x.Code == "SUPERVISOR" select x).FirstOrDefault();
                    var pcsAdminUser = (from x in cee.Users where x.UserName == "pcsadmin" select x).FirstOrDefault();

                    var issues = (from x in cee.Issues orderby x.Id select x).ToList();

                    foreach (var issue in issues)
                    {
                        Console.Out.WriteLine("Processing issue {0}", issue.Id);

                        Issue issue1 = issue;
                        var hasAnyApprovalsChecked = (from x in cee.IssueApprovals
                                              where x.IssueId == issue1.Id
                                                    && x.IssueCategoryId != supervisorCategory.Id
                                                    && x.Approved
                                              select x).Any();

                        var hasSupervisor = (from x in cee.IssueApprovals
                                             where x.IssueId == issue1.Id
                                             && x.IssueCategoryId == supervisorCategory.Id
                                             select x).FirstOrDefault();

                        if (hasSupervisor == null && hasAnyApprovalsChecked)
                        {
                            var newIssueApproval = new IssueApproval
                                {
                                    IssueId = issue.Id,
                                    IssueCategoryId = supervisorCategory.Id,
                                    Approved = true,
                                    Approver = pcsAdminUser,
                                    Date = DateTime.Now
                                };

                            cee.IssueApprovals.Add(newIssueApproval);
                            Console.Out.WriteLine("Added Supervisor for IssueApproval on issue {0}", issue.Id);

                        }
                    }

                    cee.SaveChanges();

                    transaction.Complete();

                    Console.Out.WriteLine("Transaction Complete");
                    Console.ReadLine();
                }
            }
        }
Exemplo n.º 24
0
 /// <summary>
 /// 删除文章
 /// </summary>
 /// <param name="varticle"></param>
 public void DelArticle(cms_varticle varticle)
 {
     using (CmsEntities entity = new CmsEntities())
     {
         var query = entity.cms_varticle.FirstOrDefault(m => m.id == varticle.id);
         if (query != null)
         {
             entity.cms_varticle.DeleteObject(query);
             entity.SaveChanges();
         }
     }
 }
Exemplo n.º 25
0
        public void Run()
        {
            try
            {

                Console.WriteLine("Started Run.");

                DirectoryInfo di = new DirectoryInfo(@"D:\CmsRoot\CMS Document Versions");
                DirectoryInfo[] directories = di.GetDirectories("*", SearchOption.AllDirectories);
                Console.WriteLine("Got {0} Directories.", directories.Length);
                int i = 0;
                int k = 0;
                using (CmsEntities cee = new CmsEntities(120,mConnectCMS))
                {
                    var docVersions = (from x in cee.DocumentVersions select x).ToList();
                    Console.WriteLine("Got {0} Doc Versions.", docVersions.Count);

                    foreach (DirectoryInfo directoryInfo in directories)
                    {
                        i++;
                        DirectoryInfo dir = directoryInfo;

                        DocumentVersion match = (from x in docVersions where x.Path == dir.Name select x).FirstOrDefault();

                        if (match == null)
                        {
                            if (Directory.Exists(di.FullName))
                            {
                                Directory.Delete(dir.FullName, true);
                                Console.WriteLine("Deleted Directory '{0}'.", dir.Name);
                                k++;
                            }
                        }
                        else
                        {
                            Console.Write("{0} ", i);
                        }
                    }
                }

                Console.WriteLine("Deleted {0} directories.", k);
                Console.WriteLine("Finished Run.");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception:  {0}.", ex.ToString());
                Console.ReadLine();
            }
        }
 protected override bool OnModelUpdating(ControllerContext controllerContext, ModelBindingContext bindingContext)
 {
     // Copy CmsEntities from Controller to the Model (Before we update and validate the model)
     var modelPropertyInfo = bindingContext.Model.GetType().GetProperty("CmsEntities");
     if (modelPropertyInfo != null)
     {
         var controllerPropertyInfo = controllerContext.Controller.GetType().GetProperty("CmsEntities");
         if (controllerPropertyInfo != null)
         {
             CmsEntities cmsEntities = controllerPropertyInfo.GetValue(controllerContext.Controller) as CmsEntities;
             modelPropertyInfo.SetValue(bindingContext.Model, cmsEntities);
         }
     }            
     return base.OnModelUpdating(controllerContext, bindingContext);
 }
Exemplo n.º 27
0
        public IssueTypeClassification AddIssueTypeClassification(int issueClassificationId, int issueTypeId)
        {
            using (var cee = new CmsEntities())
            {
                var issueTypeClassification = new IssueTypeClassification();

                issueTypeClassification.IssueClassificationId = issueClassificationId;
                issueTypeClassification.IssueTypeId = issueTypeId;

                cee.IssueTypeClassifications.Add(issueTypeClassification);
                cee.SaveChanges();

                return issueTypeClassification;
            }
        }
Exemplo n.º 28
0
        /// <summary>
        /// Create the Report
        /// </summary>
        /// <param name="usersBaseReportingDirectory">The file path.</param>
        /// <returns></returns>
        public string Create(string usersBaseReportingDirectory)
        {
            if (String.IsNullOrEmpty(usersBaseReportingDirectory)) throw new ArgumentNullException("usersBaseReportingDirectory");

            if (!Directory.Exists(usersBaseReportingDirectory))
            {
                Directory.CreateDirectory(usersBaseReportingDirectory);
            }

            string fileName = Path.Combine(usersBaseReportingDirectory, "Issues_" + DateTime.Now.ToString("dd_MM_yyyy_hhmm") + ".xls");

            using (ExcelXmlWriter excelXmlWriter = new ExcelXmlWriter(fileName) { Landscape = true })
            {
                using (CmsEntities cee = new CmsEntities())
                {
                    cee.Configuration.LazyLoadingEnabled = true;

                    IList<Issue> issues;

                    List<int> ids = new List<int>();
                    ids.Add(1);

                    if (System.Diagnostics.Debugger.IsAttached)
                    {
                        issues = (from x in cee.Issues select x).Take(20).ToList();
                    }
                    else
                    {
                        issues = (from x in cee.Issues select x).ToList();
                    }

                    CreateIssuesSummaryWorksheet(excelXmlWriter, issues);
                    CreateActionsSummaryWorksheet(excelXmlWriter, issues);
                    CreateMobilePlantIssuesWorksheet(excelXmlWriter, issues);

                    CreateMechEquipWorksheet(excelXmlWriter, issues);
                    CreateElectEquipWorksheet(excelXmlWriter, issues);
                    CreatePipingIssuesWorksheet(excelXmlWriter, issues);

                    CreateDocumentationWorksheet(excelXmlWriter, issues);
                    excelXmlWriter.Close();
                }
            }

            return fileName;
        }
Exemplo n.º 29
0
        public void RunFix()
        {
            using (TransactionScope transaction = new TransactionScope())
            {
                using (CmsEntities cee = new CmsEntities(120,mConnectCMS))
                {
                    var issues = (from x in cee.Issues.Include("IssueAssignedCategories") orderby x.Id select x).ToList();

                    foreach (var issue in issues)
                    {
                        Console.Out.WriteLine("Processing issue {0}", issue.Id);

                        foreach (var issueAssignedCategory in issue.IssueAssignedCategories)
                        {
                            var closeoutExist = (from x in cee.IssueCloseouts
                                                 where
                                                     x.IssueId == issue.Id &&
                                                     x.IssueCategoryId == issueAssignedCategory.IssueCategoryId
                                                 select x).FirstOrDefault();

                            if (closeoutExist == null)
                            {
                                //CloseOut Doesnt exist add one
                                var newCloseout = new IssueCloseout
                                                      {
                                                          IssueId = issue.Id,
                                                          IssueCategoryId = issueAssignedCategory.IssueCategoryId
                                                      };
                                cee.IssueCloseouts.Add(newCloseout);
                                Console.Out.WriteLine("Added new category '{0}' closeout to issue {1}",
                                    issueAssignedCategory.IssueCategoryId,issue.Id);
                            }

                        }
                    }

                    cee.SaveChanges();

                    transaction.Complete();

                    Console.Out.WriteLine("Transaction Complete");
                    Console.ReadLine();
                }
            }
        }
Exemplo n.º 30
0
        public void InsertUpdate(CmsEntities cee, ImportWbsProjectObject importWbsProjectObject, int issueId, SystemReferenceType systemReferenceType)
        {
            foreach (var systemReferenceDataAdapter in importWbsProjectObject.Children)
            {
                var existing = cee.SystemReferences.FirstOrDefault(x =>
                    x.IssueId == issueId
                    && x.Number == systemReferenceDataAdapter.WbsElement);

                if (existing != null) //Exist so lets update
                {
                    mLog.Verbose("Updating SystemReferenceId ='{0}', IssueId ='{1}', SystemReferenceTypeId ='{2}' ({3})  Number ='{4}' to Description ='{5}', FundingType ='{6}', ActualValue  ='{7}', EstValue ='{8}'",
                        existing.Id, existing.IssueId, existing.SystemReferenceTypeId,existing.SystemReferenceType.Name, existing.Number,
            existing.Description, existing.FundingType, existing.ActualValue, existing.EstValue);

                    existing.Description = systemReferenceDataAdapter.WbsElementDescription;
                    existing.FundingType = systemReferenceDataAdapter.SpendClassification == "CAPEX" ? "CAPEX" : systemReferenceDataAdapter.SpendClassification == "OPEX" ? "OPEX" : "--";
                    existing.Status = systemReferenceDataAdapter.Status;
                    existing.ActualValue = systemReferenceDataAdapter.Actuals;
                    existing.EstValue = systemReferenceDataAdapter.WbsBudget;
                }
                else //Insert new
                {

                    SystemReference newReference = new SystemReference
                    {
                        IssueId = issueId,
                        Number = systemReferenceDataAdapter.WbsElement,
                        SystemReferenceTypeId = systemReferenceType.Id,
                        Description = systemReferenceDataAdapter.WbsElementDescription,
                        FundingType = systemReferenceDataAdapter.SpendClassification == "CAPEX" ? "CAPEX" : systemReferenceDataAdapter.SpendClassification == "OPEX" ? "OPEX" : "--",
                        Status = systemReferenceDataAdapter.Status,
                        ActualValue = systemReferenceDataAdapter.Actuals,
                        EstValue = systemReferenceDataAdapter.WbsBudget
                    };
                    cee.SystemReferences.Add(newReference);

                    mLog.Verbose("Inserting new SystemReferenceId ='{0}', IssueId ='{1}', SystemReferenceTypeId ='{2}' ({3})  Number ='{4}', Description ='{5}', FundingType ='{6}', ActualValue  ='{7}', EstValue ='{8}'",
                        newReference.Id, newReference.IssueId, newReference.SystemReferenceTypeId, systemReferenceType.Name, newReference.Number,
                        newReference.Description, newReference.FundingType, newReference.ActualValue, newReference.EstValue);
                }
            }
        }
Exemplo n.º 31
0
        public ControlSystemComponentType AddControlSystemComponentType(ControlSystemComponentType controlSystemComponentType)
        {
            var newControlSystemComponentType = new ControlSystemComponentType();

            using (var cee = new CmsEntities())
            {
                //Check if this component type already exist
                var componentType = (from x in cee.ControlSystemComponentTypes
                                     where x.Id == controlSystemComponentType.Id
                                     select x).FirstOrDefault();

                if (componentType != null)
                {
                    //Edit the Component Type
                    componentType.Name = controlSystemComponentType.Name;
                    componentType.Description = controlSystemComponentType.Description;
                    componentType.Ordinal = controlSystemComponentType.Ordinal;

                    cee.SaveChanges();
                }
                else
                {
                    //Add new Component Type
                    componentType = new ControlSystemComponentType();
                    componentType.Name = controlSystemComponentType.Name;
                    componentType.Description = controlSystemComponentType.Description;
                    componentType.Code = controlSystemComponentType.Name.Replace(" ", "");
                    componentType.IsActive = true;
                    cee.ControlSystemComponentTypes.Add(componentType);

                    cee.SaveChanges();
                }

                newControlSystemComponentType.Id = componentType.Id;
                newControlSystemComponentType.Name = componentType.Name;
                newControlSystemComponentType.Description = componentType.Description;
                newControlSystemComponentType.Ordinal = componentType.Ordinal;
                newControlSystemComponentType.Code = componentType.Code;

                return newControlSystemComponentType;
            }
        }