Esempio n. 1
0
        public ResultOfType <IList <CreneauResultDataModel> > PostNewCreneau(IList <CreneauDataModel> creneaux)
        {
            if (creneaux == null)
            {
                return(new Return <IList <CreneauResultDataModel> >().Error().As(EStatusDetail.BadRequest).AddingGenericError(
                           null, "Les données sont vides.").WithDefaultResult());
            }
            Logger.LogInfo(string.Format("Post New Creneau : Start --- "));



            if (creneaux.Count() > 0)
            {
                IList <CreneauResultDataModel> data = new List <CreneauResultDataModel>();

                foreach (CreneauDataModel creneauToAdd in creneaux)
                {
                    var validationResult = ValidateNewCreneauProperties(creneauToAdd);

                    if (validationResult != null)
                    {
                        Logger.LogInfo(string.Format("Post New Creneau : End --- Status = {0}, Message= {1}",
                                                     validationResult.Status, validationResult.Errors[0].Message));
                        return(validationResult);
                    }

                    Praticien praticien = _praticienRepository.GetAll().FirstOrDefault(p => p.Email.Equals(creneauToAdd.PraticienEmail));
                    if (praticien == null)
                    {
                        return(new Return <IList <CreneauResultDataModel> >().Error().As(EStatusDetail.BadRequest).AddingGenericError(
                                   null, "aucun praticien est lié à ce créneau !!!.").WithDefaultResult());
                    }

                    CreneauResultDataModel cre = new CreneauResultDataModel();
                    data.Add(cre);

                    var creneau = new Creneaux
                    {
                        HeureDebut  = creneauToAdd.HeureDebut,
                        HeureFin    = creneauToAdd.HeureFin,
                        Praticien   = praticien,
                        Status      = creneauToAdd.Status,
                        CurrentDate = creneauToAdd.CurrentDate,
                        Commentaire = creneauToAdd.Commentaire
                    };

                    _creneauxRepository.Add(creneau);
                }
                return
                    (new Return <IList <CreneauResultDataModel> >().OK()
                     .WithResult(data));
            }

            var cren = new List <CreneauResultDataModel>();

            return
                (new Return <IList <CreneauResultDataModel> >().OK()
                 .WithResult(cren));
        }
        public static CreneauResultDataModel ConvertCreneauEntityToDataModel(Creneaux creneau)
        {
            if (creneau == null)
            {
                return(null);
            }
            var creneauResultDataModel = new CreneauResultDataModel();

            if (!string.IsNullOrEmpty(creneau.HeureDebut))
            {
                creneauResultDataModel.HeureDebut = creneau.HeureDebut;
            }

            if (!string.IsNullOrEmpty(creneau.HeureFin))
            {
                creneauResultDataModel.HeureFin = creneau.HeureFin;
            }

            if (!string.IsNullOrEmpty(creneau.Status))
            {
                creneauResultDataModel.Status = creneau.Status;
            }

            if (creneau.Praticien != null && !string.IsNullOrEmpty(creneau.Praticien.Cin))
            {
                creneauResultDataModel.PraticienCin = creneau.Praticien.Cin;
            }
            if (!string.IsNullOrEmpty(creneau.CurrentDate))
            {
                creneauResultDataModel.CurrentDate = creneau.CurrentDate;
            }
            if (!string.IsNullOrEmpty(creneau.Commentaire))
            {
                creneauResultDataModel.Commentaire = creneau.Commentaire;
            }
            return(creneauResultDataModel);
        }