Example #1
0
 public static User CheckLogin(SEGRepository segRep, string user)
 {
     User u = null;
     using (SEGContext seg = segRep.GetContext())
     {
         u = seg.Users.FirstOrDefault(x => x.Name.Trim().ToUpper() == user.Trim().ToUpper());
     }
     return u;
 }
Example #2
0
 public static void DeleteDiagnosticsImage(SEGRepository segR, Guid diagId, Guid imgId)
 {
     using (SEGContext seg = segR.GetContext())
     {
         DiagnosticsImages ih = seg.DiagnosticsImages.FirstOrDefault(x => x.DiagnosticID == diagId && x.ImageId == imgId);
         seg.DiagnosticsImages.Remove(ih);
         Image i = seg.Images.FirstOrDefault(x => x.Id == imgId);
         seg.Images.Remove(i);
         seg.SaveChanges();
     }
 }
Example #3
0
        public bool CheckDatabase()
        {
            bool isOk = false;
            if(configLoaded)
            {
                // Load segR
                segR = new SEGRepository(ConnString());

                //
                using(var seg = segR.GetContext())
                {
                    if (seg.RiskAnalysisTypes.Count() != 4)
                    {
                        dbError = "Database is Empty.  Initialization error.  Please delete DB and reload";
                        configLoaded = false;
                    }
                    else
                        isOk = true;
                }
            }
            return isOk;
        }
Example #4
0
        public static void ChangeAssets(SEGRepository segR)
        {
            List<Item> dtItems = DiagnosticsHelper.GetStandardsForType(segR, "Mechanical");

            using (SEGContext seg = segR.GetContext())
            {
                List<Asset> assets = seg.Assets.ToList();
                foreach(Asset a in assets)
                {
                    Diagnostics d = DiagnosticsHelper.GetMechanicalDiagnostics(segR,a.Id);
                    List<DiagnosticsDetail> dL = DiagnosticsHelper.GetDiagnosticsDetails(segR, d.Id);
                    // Go through each of the items
                    foreach(Item i in dtItems)
                    {
                        DiagnosticsDetail ddl = seg.DiagnosticsDetails.FirstOrDefault(x => x.DiagnosticsId == d.Id && x.ItemId == i.Id);
                        if(ddl==null)
                        {
                            // We need to add this diagnostics detail
                            DiagnosticsDetail dd = new DiagnosticsDetail();
                            dd.Comments = "";
                            dd.DiagnosticsId = d.Id;
                            dd.EntryDate = DateTime.MinValue;
                            dd.ExecutorId = Guid.Empty;
                            dd.ImageId = Guid.Empty;
                            dd.ItemId = i.Id;
                            dd.Status = "_new_";
                            dd.VerifierId = Guid.Empty;
                            dd.VerifyDate = DateTime.MinValue;
                            seg.DiagnosticsDetails.Add(dd);
                        }
                    }
                    seg.SaveChanges();
                    Console.WriteLine("Asset:" + a.Id);
                }
            }
        }
Example #5
0
 public static void SaveDiagnosticsImage(SEGRepository segR, Guid diagId, Guid imgId)
 {
     using (SEGContext seg = segR.GetContext())
     {
         List<DiagnosticsImages> imgs = seg.DiagnosticsImages.Where(x=>x.DiagnosticID == diagId).ToList();
         int nextOrder = 1;
         if(imgs.Count>0)
             nextOrder = seg.DiagnosticsImages.Where(x=>x.DiagnosticID == diagId).OrderBy(x=>x.Order).ToList().Last().Order+1;
         DiagnosticsImages ih = new DiagnosticsImages();
         ih.ImageId = imgId;
         ih.DiagnosticID = diagId;
         ih.Order = nextOrder;
         seg.DiagnosticsImages.Add(ih);
         seg.SaveChanges();
     }
 }
Example #6
0
 public static void ModifyDetails(SEGRepository segR, Guid diId, string newStatus, string newComments, Guid newImgId)
 {
     using (SEGContext seg = segR.GetContext())
     {
         DiagnosticsDetail di = seg.DiagnosticsDetails.FirstOrDefault(x => x.Id == diId);
         if(di.ImageId!=newImgId && di.ImageId!=Guid.Empty)
         {
             Image img = seg.Images.FirstOrDefault(x=>x.Id == di.ImageId);
             seg.Images.Remove(img);
         }
         di.ImageId = newImgId;
         di.Comments = newComments;
         di.Status = newStatus;
         seg.SaveChanges();
     }
 }
Example #7
0
 public static List<Item> GetStandardsForType(SEGRepository segR, string standardsType)
 {
     List<Item> dtItems = new List<Item>();
     using (SEGContext seg = segR.GetContext())
     {
         ItemClass ic = seg.ItemClasses.FirstOrDefault(a => a.Name == standardsType);
         dtItems = seg.Items.Where(x => x.ItemClassId == ic.Id).OrderBy(x => x.Index).ToList();
     }
     return dtItems;
 }
Example #8
0
 public static Diagnostics GetMechanicalDiagnostics(SEGRepository segR, Guid assetId)
 {
     Diagnostics d = null;
     using (SEGContext seg = segR.GetContext())
     {
         DiagnosticsType dt = seg.DiagnosticsTypes.FirstOrDefault(t => t.Name == "Mechanical");
         d = seg.Diagnostics.FirstOrDefault(a => a.AssetId == assetId && a.DiagnosticsTypeId == dt.Id);
     }
     return d;
 }
Example #9
0
 public static ItemSubSection GetItemSubSection(SEGRepository segR, Guid id)
 {
     ItemSubSection item = null;
     using (SEGContext seg = segR.GetContext())
     {
         item = seg.ItemSubSections.FirstOrDefault(x => x.Id == id);
     }
     return item;
 }
Example #10
0
 public static Item GetItem(SEGRepository segR, Guid iId)
 {
     Item item = null;
     using (SEGContext seg = segR.GetContext())
     {
         item = seg.Items.FirstOrDefault(x => x.Id == iId);
     }
     return item;
 }
Example #11
0
        public static void AddElectricalDiagnostics(SEGRepository segR, Guid assetId)
        {
            List<Diagnostics> electrical = DiagnosticsHelper.GetElectricalDiagnostics(segR,assetId).ToList();
            int nextIndex = 1;
            if(electrical.Count>0)
            {
                nextIndex = electrical.OrderBy(x => x.Index).Last().Index + 1;
            }

            using (SEGContext seg = segR.GetContext())
            {
                DiagnosticsType dtEle = seg.DiagnosticsTypes.FirstOrDefault(a => a.Name == "Electrical");
                ItemClass icEle = seg.ItemClasses.FirstOrDefault(a => a.Name == "Electrical");
                List<Item> dtEItems = seg.Items.Where(x => x.ItemClassId == icEle.Id).OrderBy(x => x.Index).ToList();

                // Asset info
                AssetInfo ai = new AssetInfo();
                ai.Key = "EDIAG_" + nextIndex + "_INFO1";
                ai.Value = "";
                ai.AssetId = assetId;
                seg.AssetInfos.Add(ai);

                ai = new AssetInfo();
                ai.Key = "EDIAG_" + nextIndex + "_INFO2";
                ai.Value = "";
                ai.AssetId = assetId;
                seg.AssetInfos.Add(ai);

                ai = new AssetInfo();
                ai.Key = "EDIAG_" + nextIndex + "_INFO3";
                ai.Value = "";
                ai.AssetId = assetId;
                seg.AssetInfos.Add(ai);

                ai = new AssetInfo();
                ai.Key = "EDIAG_" + nextIndex + "_INFO4";
                ai.Value = "";
                ai.AssetId = assetId;
                seg.AssetInfos.Add(ai);

                // Mechanical Diagnostics
                Diagnostics d = new Diagnostics();
                d.AreaId = Guid.Empty;
                d.AssetId = assetId;
                d.Index = nextIndex;
                d.DiagnosticsTypeId = dtEle.Id;
                seg.Diagnostics.Add(d);
                seg.SaveChanges();

                foreach (Item i in dtEItems)
                {
                    DiagnosticsDetail dd = new DiagnosticsDetail();
                    dd.Comments = "";
                    dd.DiagnosticsId = d.Id;
                    dd.EntryDate = DateTime.MinValue;
                    dd.ExecutorId = Guid.Empty;
                    dd.ImageId = Guid.Empty;
                    dd.ItemId = i.Id;
                    dd.Status = "_new_";
                    dd.VerifierId = Guid.Empty;
                    dd.VerifyDate = DateTime.MinValue;
                    seg.DiagnosticsDetails.Add(dd);
                }
                seg.SaveChanges();

            }
        }
Example #12
0
 public static List<Image> GetDiagnosticsImages(SEGRepository segR, Guid diagId)
 {
     List<Image> imgs = new List<Image>();
     using (SEGContext seg = segR.GetContext())
     {
         List<DiagnosticsImages> di = seg.DiagnosticsImages.Where(x => x.DiagnosticID == diagId).ToList();
         foreach(DiagnosticsImages d in di)
         {
             Image i = seg.Images.FirstOrDefault(x => x.Id == d.ImageId);
             ImageHelper.FillImage(i);
             imgs.Add(i);
         }
     }
     return imgs;
 }
Example #13
0
 public static List<DiagnosticsDetail> GetDiagnosticsDetails(SEGRepository segR, Guid dId)
 {
     List<DiagnosticsDetail> dd = new List<DiagnosticsDetail>();
     using (SEGContext seg = segR.GetContext())
     {
         dd = seg.DiagnosticsDetails.Where(a => a.DiagnosticsId == dId).ToList();
     }
     return dd;
 }
Example #14
0
 public static DiagnosticsDetail GetDiagnosticsDetail(SEGRepository segR, Guid diId)
 {
     DiagnosticsDetail di = null;
     using (SEGContext seg = segR.GetContext())
     {
         di = seg.DiagnosticsDetails.FirstOrDefault(x => x.Id == diId);
     }
     return di;
 }
Example #15
0
        public static void Load(SEGRepository segR)
        {
            Guid iId = ImageHelper.SaveImage(segR, @"Media\project_01.png");

            List<Guid> assetImg = new List<Guid>();
            for (int i = 1; i <= 135;i++ )
            {
                Guid gi = ImageHelper.SaveImage(segR, @"C:\Develop\SEG\Multimedia\Taschibra\Final\"+i.ToString()+".jpg");
                assetImg.Add(gi);
            }

            Guid pId;
            Guid uId;

            using (SEGContext seg = segR.GetContext())
            {
                Project p = new Project();
                p.Name = "Taschibra";
                p.ImageId = iId;
                p.Active = true;
                seg.Projects.Add(p);

                User u = new User();
                u.Active = true;
                u.FullName = "Isabela Paredes";
                u.IsAdmin = true;
                u.IsApprover = true;
                u.IsExecutor = true;
                u.IsVerifier = true;
                u.Name = "isaparedes";
                u.Password = "******";
                seg.Users.Add(u);
                seg.SaveChanges();

                pId = p.Id;
                uId = u.Id;
            }

            List<string> aNames = new List<string>();
            List<Guid> aIds = new List<Guid>();

            DiagnosticsType dtGen;
            DiagnosticsType dtMec;
            DiagnosticsType dtEle;

            ItemClass icGen;
            ItemClass icMec;
            ItemClass icEle;

            List<Item> dtGItems;
            List<Item> dtMItems;

            using (SEGContext seg = segR.GetContext())
            {
                aNames.Add("1. INJEÇÃO");
                aNames.Add("2. MOAGEM");
                aNames.Add("3. FERRAMENTARIA");
                aNames.Add("4. PERFILADEIRA");
                aNames.Add("5. PEÇAS ESPECIAIS");
                aNames.Add("6. PINTURA");
                aNames.Add("7. PINTURA COLORIDA");
                aNames.Add("8. OFICINA");
                aNames.Add("9. REFLETOR");
                aNames.Add("10. ALMOXARIFADO");
                aNames.Add("11. MONTAGEM");
                aNames.Add("12. RETRABALHO");
                aNames.Add("13. PEÇAS SOLTAS");
                aNames.Add("14. MARCENARIA");
                aNames.Add("15. RECICLAGEM");
                aNames.Add("16. FIGURAS");

                dtGen = seg.DiagnosticsTypes.FirstOrDefault(a => a.Name == "General");
                dtMec = seg.DiagnosticsTypes.FirstOrDefault(a => a.Name == "Mechanical");
                dtEle = seg.DiagnosticsTypes.FirstOrDefault(a => a.Name == "Electrical");

                icGen = seg.ItemClasses.FirstOrDefault(a => a.Name == "General");
                icMec = seg.ItemClasses.FirstOrDefault(a => a.Name == "Mechanical");
                icEle = seg.ItemClasses.FirstOrDefault(a => a.Name == "Electrical");

                dtGItems = seg.Items.Where(x => x.ItemClassId == icGen.Id).OrderBy(x => x.Index).ToList();
                dtMItems = seg.Items.Where(x => x.ItemClassId == icMec.Id).OrderBy(x => x.Index).ToList();
            }

            using (SEGContext seg = segR.GetContext())
            {
                foreach (string s in aNames)
                {
                    ProjectArea a = new ProjectArea();
                    a.ProjectId = pId;
                    a.Name = s;
                    a.ImageId = Guid.Empty;
                    a.Active = true;
                    seg.ProjectAreas.Add(a);
                    seg.SaveChanges();
                    aIds.Add(a.Id);

                    Diagnostics d = new Diagnostics();
                    d.AreaId = a.Id;
                    d.AssetId = Guid.Empty;
                    d.DiagnosticsTypeId = dtGen.Id;
                    d.Index = 0;
                    seg.Diagnostics.Add(d);
                    seg.SaveChanges();

                    foreach (Item i in dtGItems)
                    {
                        DiagnosticsDetail dd = new DiagnosticsDetail();
                        dd.Comments = "";
                        dd.DiagnosticsId = d.Id;
                        dd.EntryDate = DateTime.MinValue;
                        dd.ExecutorId = Guid.Empty;
                        dd.ImageId = Guid.Empty;
                        dd.ItemId = i.Id;
                        dd.Status = "_new_";
                        dd.VerifierId = Guid.Empty;
                        dd.VerifyDate = DateTime.MinValue;
                        seg.DiagnosticsDetails.Add(dd);
                    }
                    seg.SaveChanges();
                }
            }

            using (SEGContext seg = segR.GetContext())
            {
                StreamReader sr = new StreamReader(@"Data\assets.txt", System.Text.Encoding.GetEncoding(1252), true);
                int assetidx=0;
                while (!sr.EndOfStream)
                {
                    string sline = sr.ReadLine();
                    char[] delimiters = new char[] { '\t' };
                    string[] sitems = sline.Split(delimiters);

                    int aidx = Convert.ToInt32(sitems[1]);
                    string sid = sitems[2];
                    string stag = sitems[3];
                    string sdesc = sitems[4].Replace("\"", "").Trim();

                    Asset asset = new Asset();
                    asset.ProjectAreaId = aIds[aidx - 1];
                    asset.ExecutorId = uId;
                    asset.VerifierId = Guid.Empty;
                    asset.ApproverId = Guid.Empty;
                    asset.ImageId = assetImg[assetidx];
                    asset.EntryDate = DateTime.Now;
                    asset.VerifyDate = DateTime.MinValue;
                    asset.ApprovalDate = DateTime.MinValue;
                    seg.Assets.Add(asset);
                    seg.SaveChanges();

                    AssetInfo aInfo = new AssetInfo();
                    aInfo.AssetId = asset.Id;
                    aInfo.Key = "ID";
                    aInfo.Value = sid;
                    seg.AssetInfos.Add(aInfo);

                    aInfo = new AssetInfo();
                    aInfo.AssetId = asset.Id;
                    aInfo.Key = "TAG";
                    aInfo.Value = stag;
                    seg.AssetInfos.Add(aInfo);

                    aInfo = new AssetInfo();
                    aInfo.AssetId = asset.Id;
                    aInfo.Key = "LOCATION";
                    aInfo.Value = "";
                    seg.AssetInfos.Add(aInfo);

                    aInfo = new AssetInfo();
                    aInfo.AssetId = asset.Id;
                    aInfo.Key = "DESCRIPTION";
                    aInfo.Value = sdesc;
                    seg.AssetInfos.Add(aInfo);

                    // Mechanical Diagnostics
                    Diagnostics d = new Diagnostics();
                    d.AreaId = Guid.Empty;
                    d.AssetId = asset.Id;
                    d.Index = 0;
                    d.DiagnosticsTypeId = dtMec.Id;
                    seg.Diagnostics.Add(d);
                    seg.SaveChanges();

                    DiagnosticsImages di = new DiagnosticsImages();
                    di.DiagnosticID = d.Id;
                    di.ImageId = asset.ImageId;
                    di.Order = 0;
                    seg.DiagnosticsImages.Add(di);
                    seg.SaveChanges();

                    foreach (Item i in dtMItems)
                    {
                        DiagnosticsDetail dd = new DiagnosticsDetail();
                        dd.Comments = "";
                        dd.DiagnosticsId = d.Id;
                        dd.EntryDate = DateTime.MinValue;
                        dd.ExecutorId = Guid.Empty;
                        dd.ImageId = Guid.Empty;
                        dd.ItemId = i.Id;
                        dd.Status = "_new_";
                        dd.VerifierId = Guid.Empty;
                        dd.VerifyDate = DateTime.MinValue;
                        seg.DiagnosticsDetails.Add(dd);
                    }
                    seg.SaveChanges();

                    assetidx++;
                }

            }
        }
Example #16
0
        public static void FixMechDiag(SEGRepository segR)
        {
            using (SEGContext seg = segR.GetContext())
            {
                DiagnosticsType dtGen = seg.DiagnosticsTypes.FirstOrDefault(a => a.Name == "General");
                DiagnosticsType dtMec = seg.DiagnosticsTypes.FirstOrDefault(a => a.Name == "Mechanical");
                DiagnosticsType dtEle = seg.DiagnosticsTypes.FirstOrDefault(a => a.Name == "Electrical");

                ItemClass icGen = seg.ItemClasses.FirstOrDefault(a => a.Name == "General");
                ItemClass icMec = seg.ItemClasses.FirstOrDefault(a => a.Name == "Mechanical");
                ItemClass icEle = seg.ItemClasses.FirstOrDefault(a => a.Name == "Electrical");

                bool hasSS = false;
                int idx = 0;
                ItemSection iS = null;
                ItemSubSection iSS = null;

                List<Item> fItems = seg.Items.Where(x => x.ItemClassId == icMec.Id).ToList();
                List<ItemSection> fItemSections = new List<ItemSection>();
                List<ItemSubSection> fItemSubSections = new List<ItemSubSection>();
                foreach (Item i in fItems)
                {
                    ItemSection aiS = null;
                    if(fItemSections.Count>0)
                        aiS = fItemSections.FirstOrDefault(x => x.Id == i.ItemSectionId);
                    if(aiS==null)
                    {
                        aiS = seg.ItemSections.FirstOrDefault(x => x.Id == i.ItemSectionId);
                        fItemSections.Add(aiS);
                    }

                    if (i.ItemSubSectionId != Guid.Empty)
                    {
                        ItemSubSection aiSS = null;
                        if (fItemSubSections.Count > 0)
                            aiSS = fItemSubSections.FirstOrDefault(x => x.Id == i.ItemSubSectionId);
                        if (aiSS == null)
                        {
                            aiSS = seg.ItemSubSections.FirstOrDefault(x => x.Id == i.ItemSubSectionId);
                            fItemSubSections.Add(aiSS);
                        }
                    }
                }

                StreamReader sr = new StreamReader(@"Data\mechanical2.txt", System.Text.Encoding.GetEncoding(1252), true);
                while (!sr.EndOfStream)
                {
                    string sline = sr.ReadLine();
                    char[] delimiters = new char[] { '\t' };
                    string[] sitems = sline.Split(delimiters);

                    // Let's see what the first value has
                    if (sitems[0] == "section")
                    {
                        iS = new ItemSection();
                        string scode = sitems[1].Trim();
                        iS.Code = scode;
                        iS.Title = sitems[5].Replace("\"", "").Trim();

                        // Now we try to find the code within fItemSections
                        if (fItemSections.FirstOrDefault(x => x.Code == iS.Code) == null)
                        {
                            // We now add it
                            seg.ItemSections.Add(iS);
                            seg.SaveChanges();
                            Console.WriteLine("Added Section :" + iS.Code);
                        }
                        else
                            iS = fItemSections.FirstOrDefault(x => x.Code == iS.Code);

                        hasSS = false;
                    }
                    else if (sitems[0] == "print")
                    {
                        iSS = new ItemSubSection();
                        iSS.ItemSectionId = iS.Id;

                        string scode = sitems[1].Trim();
                        scode = scode + "." + sitems[2].Trim();
                        // Check if item 3 is a 0 or empty
                        if (sitems[3].Trim() == "0" || sitems[3].Trim() == "")
                        {
                            // Nothing
                        }
                        else
                        {
                            scode = scode + "." + sitems[3].Trim();
                        }
                        if (sitems[4].Trim().Length > 0)
                        {
                            scode = scode + "|" + sitems[4].Trim();
                        }
                        else
                        {
                            // Nothing
                        }

                        iSS.Code = scode;
                        iSS.Title = sitems[5].Replace("\"", "").Trim();

                        // Now we try to find the code within fItemSections
                        if (fItemSubSections.FirstOrDefault(x => x.Code == iSS.Code) == null)
                        {
                            // We now add it
                            seg.ItemSubSections.Add(iSS);
                            seg.SaveChanges();
                            Console.WriteLine("Added SubSection :" + iSS.Code);
                        }
                        else
                            iSS = fItemSubSections.FirstOrDefault(x => x.Code == iSS.Code);

                        hasSS = false;
                    }
                    else
                    {
                        // Check code, and based on the last item, see if it is in SS or not
                        string scode = sitems[1].Trim();
                        scode = scode + "." + sitems[2].Trim();
                        // Check if item 3 is a 0
                        if (sitems[3].Trim() == "0" || sitems[3].Trim() == "")
                        {
                            // Nothing
                        }
                        else
                        {
                            scode = scode + "." + sitems[3].Trim();
                        }

                        if (sitems[4].Trim().Length > 0)
                        {
                            scode = scode + "|" + sitems[4].Trim();
                            hasSS = true;
                        }
                        else
                        {
                            hasSS = false;
                        }

                        Item i = new Item();
                        i.Index = idx;
                        i.ItemSectionId = iS.Id;
                        if (hasSS)
                            i.ItemSubSectionId = iSS.Id;
                        else
                            i.ItemSubSectionId = Guid.Empty;
                        i.ItemClassId = icMec.Id;
                        i.Code = scode;
                        i.Title = sitems[5].Replace("\"", "").Trim();

                        if (fItems.FirstOrDefault(x => x.Code == i.Code) == null)
                        {
                            // We now add it
                            seg.Items.Add(i);
                            seg.SaveChanges();
                            Console.WriteLine("Added Item :" + i.Code);
                        }
                        else
                        {
                            i = seg.Items.FirstOrDefault(x => x.Code == i.Code && x.ItemClassId == icMec.Id);
                            i.Index = idx;
                            seg.SaveChanges();
                        }
                        idx++;
                    }
                }
                sr.Close();
            }
        }
Example #17
0
 public static Diagnostics GetAreaDiagnostics(SEGRepository segR, Guid areaId)
 {
     Diagnostics d = null;
     using (SEGContext seg = segR.GetContext())
     {
         d = seg.Diagnostics.FirstOrDefault(x => x.AreaId == areaId);
     }
     return d;
 }
Example #18
0
 public static List<Diagnostics> GetElectricalDiagnostics(SEGRepository segR, Guid assetId)
 {
     List<Diagnostics> d = null;
     using (SEGContext seg = segR.GetContext())
     {
         DiagnosticsType dt = seg.DiagnosticsTypes.FirstOrDefault(t => t.Name == "Electrical");
         d = seg.Diagnostics.Where(a => a.AssetId == assetId && a.DiagnosticsTypeId == dt.Id).ToList();
     }
     return d;
 }