public void EnregistrerReleveMensuel(ReleveMensuel releveMensuel) { if (releveMensuel.Id == 0) { this.context.RelevesMensuels.Add(releveMensuel); } else { this.context.Entry(releveMensuel).State = EntityState.Modified; } foreach (var jour in releveMensuel.Jours) { if (jour.Id == 0) { this.context.RelevesJours.Add(jour); } else { this.context.Entry(jour).State = EntityState.Modified; } } this.context.SaveChanges(); }
public void EnregistrerReleveMensuel(ReleveMensuel releveMensuel) { var ouvrier = this.dataEmploye.GetOuvrier(releveMensuel.IdOuvrier); bool check = true; while (check) { foreach (var item in releveMensuel.Jours) { if (item.NombreHeures >= 13) { check = false; throw new BusinessException("Vous avez dépassé la limite horraire journalière"); } } break; } releveMensuel.NombreTotalHeures = releveMensuel.Jours.Sum(x => x.NombreHeures); releveMensuel.TauxHoraire = ouvrier.TauxHoraire; this.dataReleve.EnregistrerReleveMensuel(releveMensuel); }
public void ValiderNombreJoursTravaillés() { var fauxDataEmploye = new Mock <IDataEmploye>(); var fauxDataReleve = new Mock <IDataReleve>(); fauxDataEmploye.Setup(x => x.GetOuvrier(It.IsAny <int>())).Returns(new Ouvrier()); var serviceReleve = new ServiceReleve(fauxDataReleve.Object, fauxDataEmploye.Object); ReleveMensuel releveMensuel = new ReleveMensuel(); releveMensuel.Jours.Add(new ReleveJour { Jour = DateTime.Now, NombreHeures = 15 }); //serviceReleve.EnregistrerReleveMensuel(releveMensuel); var exception = Assert.ThrowsException <BusinessException>(() => { serviceReleve.EnregistrerReleveMensuel(releveMensuel); }); Assert.AreEqual("Vous avez dépassé la limite horraire journalière", exception.Message); }
public ActionResult Nouveau(EditionReleveMensuelViewModel viewModel) { if (this.ModelState.IsValid) { var releveMensuel = new ReleveMensuel { IdOuvrier = viewModel.IdOuvrier, IdPeriode = viewModel.IdPeriode, }; foreach (var releveJour in viewModel.Jours) { releveMensuel.Jours.Add(new ReleveJour { Jour = releveJour.Date, NombreHeures = releveJour.NombreHeures.Value }); } try { this.serviceReleve.EnregistrerReleveMensuel(releveMensuel); return(this.RedirectToAction("Index", "Releves")); } catch (BusinessException exception) { this.ModelState.AddModelError(string.Empty, exception.Message); } } viewModel.Periode = this.servicePeriode.GetPeriode(viewModel.IdPeriode); return(this.View("EditionReleveMensuel", viewModel)); }
public void EnregistrerReleveMensuel(ReleveMensuel releveMensuel) { var ouvrier = this.dataEmploye.GetOuvrier(releveMensuel.IdOuvrier); releveMensuel.NombreTotalHeures = releveMensuel.Jours.Sum(x => x.NombreHeures); releveMensuel.TauxHoraire = ouvrier.TauxHoraire; this.dataReleve.EnregistrerReleveMensuel(releveMensuel); }
public void EnregistrerReleveMensuel(ReleveMensuel releveMensuel) { var ouvrier = this.dataEmploye.GetOuvrier(releveMensuel.IdOuvrier); if (releveMensuel.Jours.Any(x => x.NombreHeures >= 13)) { throw new BusinessException("Le nombre d'heure doit etre compris entre 1 et 13"); } releveMensuel.NombreTotalHeures = releveMensuel.Jours.Sum(x => x.NombreHeures); releveMensuel.TauxHoraire = ouvrier.TauxHoraire; this.dataReleve.EnregistrerReleveMensuel(releveMensuel); }
public void ValiderHoraire(string rawHoraire) { var fauxDataReleve = new Mock <IDataReleve>(); var fauxDataEmploye = new Mock <IDataEmploye>(); var NombreHeures = decimal.Parse(rawHoraire); var serviceReleve = new ServiceReleve(fauxDataReleve.Object, fauxDataEmploye.Object); var releveMensuel = new ReleveMensuel(); var exception = Assert.ThrowsException <BusinessException>(() => { var releveJour = new ReleveJour { Jour = new DateTime(2018, 05, 10), NombreHeures = 20 }; releveMensuel.Jours.Add(releveJour); serviceReleve.EnregistrerReleveMensuel(releveMensuel); }); Assert.AreEqual("Le nombre d'heure doit etre compris entre 1 et 13", exception.Message); }