Пример #1
0
        // POST: api/RechercheFicheSecurite
        public HttpResponseMessage Post(RechercheFicheSecuriteParamModel RechercheFicheSecuriteParamModel)
        {
            _ficheSecuriteRepository = new FicheSecuriteRepository();

            //var queryFicheSecurite = from a in db.FicheSecurites select a;

            FicheSecuritePaginatedList FicheSecuritePaginatedList = _ficheSecuriteRepository.GetFromParams(RechercheFicheSecuriteParamModel);


            return(Request.CreateResponse(HttpStatusCode.OK, FicheSecuritePaginatedList));



            //var query = from m in db.Products
            //            select m;

            //// Set the total count
            //// so GridView knows how many pages to create
            //e.Arguments.TotalRowCount = query.Count();

            //// Get only the rows we need for the page requested
            //query = query.Skip(GridView1.PageIndex * PAGE_SIZE).Take(PAGE_SIZE);

            //e.Result = query;
        }
Пример #2
0
        public FicheSecuritePaginatedList GetFromParams(RechercheFicheSecuriteParamModel rechercheFicheSecuriteParamModel)
        {
            try
            {
                IQueryable <FicheSecurite> queryFicheSecurite = from a in _db.FicheSecurites
                                                                orderby a.WorkFlowCloturee && a.WorkFlowASEValidee, a.WorkFlowASEValidee, a.WorkFlowASERejetee, a.WorkFlowAttenteASEValidation, a.WorkFlowDiffusee
                select a;

                if (rechercheFicheSecuriteParamModel.SiteId.HasValue && rechercheFicheSecuriteParamModel.SiteId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.SiteId == rechercheFicheSecuriteParamModel.SiteId);
                }
                if (rechercheFicheSecuriteParamModel.ZoneId.HasValue && rechercheFicheSecuriteParamModel.ZoneId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.ZoneId == rechercheFicheSecuriteParamModel.ZoneId);
                }
                if (rechercheFicheSecuriteParamModel.LieuId.HasValue && rechercheFicheSecuriteParamModel.LieuId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.LieuId == rechercheFicheSecuriteParamModel.LieuId);
                }
                if (rechercheFicheSecuriteParamModel.FicheSecuriteTypeId.HasValue && rechercheFicheSecuriteParamModel.FicheSecuriteTypeId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.FicheSecuriteTypeId == rechercheFicheSecuriteParamModel.FicheSecuriteTypeId);
                }
                if (!string.IsNullOrEmpty(rechercheFicheSecuriteParamModel.Code))
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.Code == rechercheFicheSecuriteParamModel.Code);
                }
                if (!string.IsNullOrEmpty(rechercheFicheSecuriteParamModel.Age))
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.Age == rechercheFicheSecuriteParamModel.Age);
                }
                if (rechercheFicheSecuriteParamModel.PosteDeTravailId.HasValue && rechercheFicheSecuriteParamModel.PosteDeTravailId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.PosteDeTravailId == rechercheFicheSecuriteParamModel.PosteDeTravailId);
                }
                if (rechercheFicheSecuriteParamModel.ServiceId.HasValue && rechercheFicheSecuriteParamModel.ServiceId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.ServiceId == rechercheFicheSecuriteParamModel.ServiceId);
                }
                if (rechercheFicheSecuriteParamModel.DateEvenementDebut.HasValue)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.DateEvenement >= rechercheFicheSecuriteParamModel.DateEvenementDebut);
                }
                if (rechercheFicheSecuriteParamModel.DateEvenementFin.HasValue)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.DateEvenement <= rechercheFicheSecuriteParamModel.DateEvenementFin);
                }
                if (!string.IsNullOrEmpty(rechercheFicheSecuriteParamModel.PersonneConcerneeNom))
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.PersonneConcernee.Nom == rechercheFicheSecuriteParamModel.PersonneConcerneeNom);
                }
                if (!string.IsNullOrEmpty(rechercheFicheSecuriteParamModel.ResponsableNom))
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.Responsable.Nom == rechercheFicheSecuriteParamModel.ResponsableNom);
                }
                if (rechercheFicheSecuriteParamModel.CotationFrequence.HasValue)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.CotationFrequence == rechercheFicheSecuriteParamModel.CotationFrequence);
                }
                if (rechercheFicheSecuriteParamModel.CotationGravite.HasValue)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.CotationGravite == rechercheFicheSecuriteParamModel.CotationGravite);
                }
                if (rechercheFicheSecuriteParamModel.RisqueId.HasValue && rechercheFicheSecuriteParamModel.RisqueId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.RisqueId == rechercheFicheSecuriteParamModel.RisqueId);
                }
                if (rechercheFicheSecuriteParamModel.DangerId.HasValue && rechercheFicheSecuriteParamModel.DangerId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.DangerId == rechercheFicheSecuriteParamModel.DangerId);
                }
                if (rechercheFicheSecuriteParamModel.CorpsHumainZoneId.HasValue && rechercheFicheSecuriteParamModel.CorpsHumainZoneId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.CorpsHumainZoneId == rechercheFicheSecuriteParamModel.CorpsHumainZoneId);
                }
                if (rechercheFicheSecuriteParamModel.PlageHoraireId.HasValue && rechercheFicheSecuriteParamModel.PlageHoraireId != 0)
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.PlageHoraireId == rechercheFicheSecuriteParamModel.PlageHoraireId);
                }
                if (rechercheFicheSecuriteParamModel.ResponsableGuid.HasValue && rechercheFicheSecuriteParamModel.ResponsableGuid != new Guid())
                {
                    queryFicheSecurite = queryFicheSecurite.Where(q => q.Responsable.Guid == rechercheFicheSecuriteParamModel.ResponsableGuid);
                }

                int totalRowCount = queryFicheSecurite.Count();

                queryFicheSecurite = queryFicheSecurite.Skip(rechercheFicheSecuriteParamModel.PageSize * (rechercheFicheSecuriteParamModel.Page - 1)).Take(rechercheFicheSecuriteParamModel.PageSize);

                List <FicheSecurite> allFicheSecurite = queryFicheSecurite.ToList();

                FicheSecuritePaginatedList ficheSecuritePaginatedList = new FicheSecuritePaginatedList
                {
                    AllFicheSecurite = allFicheSecurite,
                    Page             = rechercheFicheSecuriteParamModel.Page,
                    PageSize         = rechercheFicheSecuriteParamModel.PageSize,
                    RowCount         = totalRowCount
                };

                return(ficheSecuritePaginatedList);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Пример #3
0
        // GET: api/RechercheFicheSecurite
        public HttpResponseMessage Get()
        {
            _activeDirectoryUtilisateurRepository = new ActiveDirectoryUtilisateurRepository();


            UserPrincipal user = _activeDirectoryUtilisateurRepository.GetActiveDirectoryUser(System.Web.HttpContext.Current.User.Identity.Name.Split('\\')[1]);

            String SiteTrigramme = _activeDirectoryUtilisateurRepository.GetCurrentUserSiteTrigramme();

            _ficheSecuriteRepository = new FicheSecuriteRepository();

            var queryPersonneConnectee = from p in db.Personnes
                                         where p.Guid == user.Guid
                                         select p;
            Personne PersonneConnectee = (Personne)queryPersonneConnectee.SingleOrDefault();

            var querySiteUser = from s in db.Sites
                                where s.Trigramme == SiteTrigramme
                                select s;
            Site SiteUser = (Site)querySiteUser.SingleOrDefault();

            // TODO ZONEREPOSITORY
            var queryZone = from a in db.Zones
                            where a.SiteId == SiteUser.SiteID
                            select a;
            List <Zone> AllZone = queryZone.ToList();

            // TODO LIEUREPOSITORY
            List <Lieu> AllLieu = new List <Lieu>();

            // TODO POSTEDETRAVAILREPOSITORY
            List <PosteDeTravail> AllPosteDeTravail = new List <PosteDeTravail>();

            // TODO SERVICEREPOSITORY
            var queryService = from a in db.Services
                               where a.SiteId == SiteUser.SiteID
                               select a;
            List <Service> AllService = queryService.ToList();

            RechercheFicheSecuriteParamModel RechercheFicheSecuriteParamModel = new RechercheFicheSecuriteParamModel()
            {
                SiteId = SiteUser.SiteID,
                ZoneId = 0,
                LieuId = 0,
                FicheSecuriteTypeId = 0,
                Code                   = "",
                Age                    = "",
                PosteDeTravailId       = 0,
                ServiceId              = 0,
                DateEvenementDebut     = new DateTime(2014, 01, 01),
                DateEvenementFin       = new DateTime(2020, 12, 31),
                PersonneConcerneeNom   = "",
                ResponsableNom         = user.Surname,
                ResponsableGuid        = user.Guid,
                CotationFrequence      = null,
                CotationGravite        = null,
                RisqueId               = 0,
                DangerId               = 0,
                CorpsHumainZoneId      = 0,
                PlageHoraireId         = 0,
                Page                   = 1,
                PageSize               = 12,
                IsNouvelleFiche        = true,
                IsPlanActionValide     = true,
                IsPlanActionAttente    = true,
                IsPlanActionRejete     = true,
                IsPlanActionCloture    = true,
                IsFicheSecuriteCloture = true,
                CriticiteNiveau        = CriticiteNiveauEnum.NULL,
                Criticite              = 0
            };

            FicheSecuritePaginatedList FicheSecuritePaginatedList = _ficheSecuriteRepository.GetFromParams(RechercheFicheSecuriteParamModel);

            RechercheFicheSecuriteViewModel RechercheFicheSecuriteViewModel = new RechercheFicheSecuriteViewModel(RechercheFicheSecuriteParamModel, FicheSecuritePaginatedList, AllService, AllZone, AllLieu, AllPosteDeTravail);

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