コード例 #1
0
        public HttpResponseMessage Get(int id)
        {
            _activeDirectoryUtilisateurRepository = new ActiveDirectoryUtilisateurRepository();
            _nonConformiteRepository = new NonConformiteRepository();

            NonConformite nonConformite;

            if (id == -1)
            {
                Site SiteUser = _activeDirectoryUtilisateurRepository.GetCurrentUserSite();

                nonConformite = new NonConformite()
                {
                    SiteId        = (SiteUser == null) ? 0 : SiteUser.SiteID,
                    ServiceTypeId = db.ServiceTypes.Where(w => w.Nom.Equals("Qualité R/D")).Single().ServiceTypeId
                };
            }
            else
            {
                nonConformite = _nonConformiteRepository.Get(id);

                if (nonConformite == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.NotFound));
                }
            }

            var nonConformiteViewModel = new NonConformiteViewModel(nonConformite);

            return(Request.CreateResponse(HttpStatusCode.OK, nonConformiteViewModel));
        }
コード例 #2
0
 public NonConformiteViewModel(NonConformite nonConformite)
 {
     this.NonConformite           = nonConformite;
     this.AllNonConformiteDomaine = db.NonConformiteDomaines.OrderBy(o => o.Nom).ToList();
     this.AllNonConformiteOrigine = db.NonConformiteOrigines.Where(w => w.ServiceTypeId.Equals(nonConformite.ServiceTypeId)).ToList();
     this.AllNonConformiteGravite = db.NonConformiteGravites.ToList();
     this.AllSite        = db.Sites.ToList();
     this.AllServiceType = db.ServiceTypes.Where(w => w.Nom.Equals("Sécurité/Environnement") || w.Nom.Equals("Qualité R/D")).ToList();
 }
コード例 #3
0
        // DELETE: api/NonConformite/5
        //[ResponseType(typeof(NonConformite))]
        public HttpResponseMessage Delete(int id)
        {
            NonConformite nonConformite = db.NonConformites.Find(id);

            if (nonConformite == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            db.NonConformites.Remove(nonConformite);
            db.SaveChanges();

            return(Request.CreateResponse(HttpStatusCode.OK));
        }
コード例 #4
0
        public HttpResponseMessage Post(NonConformite nonConformite)
        {
            nonConformite.DateCreation = DateTime.Now;

            nonConformite.CompteurAnnuelSite = 1;

            var QueryLastNonConformiteForSiteAnnee = from n in db.NonConformites
                                                     where n.SiteId == nonConformite.SiteId &&
                                                     n.Date.Year == nonConformite.Date.Year
                                                     orderby n.CompteurAnnuelSite descending
                                                     select n;

            NonConformite LastNonConformiteForSiteAnnee = QueryLastNonConformiteForSiteAnnee.FirstOrDefault();

            if (LastNonConformiteForSiteAnnee != null)
            {
                if (LastNonConformiteForSiteAnnee.Date.Year == nonConformite.Date.Year)
                {
                    nonConformite.CompteurAnnuelSite = LastNonConformiteForSiteAnnee.CompteurAnnuelSite + 1;
                }
            }

            Site site = db.Sites.First(s => s.SiteID == nonConformite.SiteId);

            nonConformite.Code += site.Trigramme + "-" + nonConformite.Date.Year + "-" + nonConformite.CompteurAnnuelSite;

            db.NonConformites.Add(nonConformite);

            try
            {
                db.SaveChanges();

                return(Request.CreateResponse(HttpStatusCode.OK, nonConformite));
            }
            catch (Exception e)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, e));
            }
        }
コード例 #5
0
        public HttpResponseMessage Put(int id, NonConformite nonConformite)
        {
            if (!ModelState.IsValid)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            if (id != nonConformite.Id)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }


            var currentNonConformite = db.NonConformites.Find(nonConformite.Id);

            db.Entry(currentNonConformite).CurrentValues.SetValues(nonConformite);

            db.Entry(currentNonConformite).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!NonConformiteExists(id))
                {
                    return(Request.CreateResponse(HttpStatusCode.NotFound, currentNonConformite));
                }
                else
                {
                    throw;
                }
            }

            return(Request.CreateResponse(HttpStatusCode.OK, currentNonConformite));
        }
コード例 #6
0
 public NonConformite Get(Int32 id)
 {
     NonConformite nonConformite = _db.NonConformites.SingleOrDefault(r => r.Id == id);
     return nonConformite;
 }
コード例 #7
0
        public HttpResponseMessage ImportNonConformites()
        {
            List <ImportNonConformite> AllImportNonConformite = context.ImportNonConformites.ToList();

            foreach (ImportNonConformite ImportNonConformite in AllImportNonConformite)
            {
                NonConformite NonConformite = new NonConformite()
                {
                    Date                   = ImportNonConformite.Date,
                    Description            = ImportNonConformite.Description,
                    Attendu                = ImportNonConformite.Attendu,
                    Cause                  = ImportNonConformite.Cause,
                    NonConformiteOrigineId = ImportNonConformite.NonConformiteOrigineId,
                    NonConformiteGraviteId = ImportNonConformite.NonConformiteGraviteId,
                    NonConformiteDomaineId = ImportNonConformite.NonConformiteDomaineId,
                    SiteId                 = ImportNonConformite.SiteId,
                    DateCreation           = DateTime.Now
                };

                //-------

                NonConformite.CompteurAnnuelSite = 1;

                var QueryLastNonConformiteForSiteAnnee = from n in context.NonConformites
                                                         where n.SiteId == NonConformite.SiteId &&
                                                         n.Date.Year == NonConformite.Date.Year
                                                         orderby n.CompteurAnnuelSite descending
                                                         select n;

                NonConformite LastNonConformiteForSiteAnnee = QueryLastNonConformiteForSiteAnnee.FirstOrDefault();

                if (LastNonConformiteForSiteAnnee != null)
                {
                    if (LastNonConformiteForSiteAnnee.Date.Year == NonConformite.Date.Year)
                    {
                        NonConformite.CompteurAnnuelSite = LastNonConformiteForSiteAnnee.CompteurAnnuelSite + 1;
                    }
                }

                Site site = context.Sites.First(s => s.SiteID == NonConformite.SiteId);
                NonConformite.Code += site.Trigramme + "-" + NonConformite.Date.Year + "-" + NonConformite.CompteurAnnuelSite;

                context.NonConformites.Add(NonConformite);
                context.SaveChanges();
                //-----

                var QueryImportActionforImportNonConformite = from a in context.ImportActions
                                                              where a.NonConformiteId == ImportNonConformite.Id
                                                              select a;

                List <ImportAction> AllImportAction = QueryImportActionforImportNonConformite.ToList();

                foreach (ImportAction ImportAction in AllImportAction)
                {
                    ActionQSE ActionQSE = new ActionQSE()
                    {
                        NonConformiteId     = NonConformite.Id,
                        Titre               = ImportAction.Titre,
                        Description         = ImportAction.Description,
                        DateButoireInitiale = ImportAction.DateButoireInitiale,
                        DateButoireNouvelle = ImportAction.DateButoireNouvelle,
                        Avancement          = ImportAction.Avancement,
                        PreuveVerification  = ImportAction.PreuveVerification,
                        CommentaireEfficaciteVerification = ImportAction.CommentaireEfficaciteVerification,
                        RealiseDate = ImportAction.RealiseDate,
                        VerifieDate = ImportAction.VerifieDate,
                        CritereEfficaciteVerification = ImportAction.CritereEfficaciteVerification
                    };

                    ActionQSE.Responsable = _personneAnnuaireService.GetPersonneFromAllAnnuaireOrCreate(
                        ImportAction.ResponsableNom, ImportAction.ResponsablePrenom, null, context
                        );

                    ActionQSE.Verificateur = _personneAnnuaireService.GetPersonneFromAllAnnuaireOrCreate(
                        ImportAction.VerificateurNom, ImportAction.VerificateurPrenom, null, context
                        );


                    context.ActionQSEs.Add(ActionQSE);
                    context.SaveChanges();
                }
            }

            context.SaveChanges();

            return(Request.CreateResponse(HttpStatusCode.OK));
        }