public async Task <RetourDeService <Commande> > AjouteCommande(AKeyUidRno keyClient, long noCommande, Site site, bool estFournisseur) { Commande commande = new Commande { Uid = keyClient.Uid, Rno = keyClient.Rno, No = noCommande, SiteUid = site.Uid, SiteRno = site.Rno, }; if (estFournisseur) { commande.Date = new DateTime(); } // [A SUPPRIMER if (site.Etat == TypeEtatSite.Livraison) { Livraison livraison = await _utile.DernièreLivraison(site); commande.LivraisonNo = livraison.No; } // A SUPPRIMER] _context.Commande.Add(commande); return(await SaveChangesAsync(commande)); }
/// <summary> /// supprime une livraison et supprime le numéro de livraison des commandes qui y étaient affectées /// </summary> /// <param name="site"></param> /// <returns></returns> public async Task AnnuleLivraison(Site site, Livraison livraison) { _context.Livraison.Remove(livraison); /// supprime le numéro de livraison des commandes de la livraison await _commandeService.AnnuleLivraison(site, livraison.No); }
public LivController() { livreur = new Livreur(); livraison = new Livraison(); serviceLivreur = new LivreurService(); serviceLivraison = new LivraisonService(); serviceProduct = new ProductService(); }
/// <summary> /// retourne la livraison définie par la clé /// </summary> /// <param name="keyLivraison"></param> /// <returns>null si non trouvé</returns> private async Task <Livraison> LivraisonDeKey(KeyUidRnoNo keyLivraison) { Livraison livraison = await _context.Livraison .Where(l => l.Uid == keyLivraison.Uid && l.Rno == keyLivraison.Rno) .FirstOrDefaultAsync(); return(livraison); }
public Livraison RechercheParId(int id) { Livraison s = db.Livraisons .Where(i => i.id == id) .SingleOrDefault(); return(s); }
public ActionResult DeleteConfirmed(int id) { Livraison livraison = db.Livraison.Find(id); db.Livraison.Remove(livraison); db.SaveChanges(); return(RedirectToAction("Index")); }
/// <summary> /// fixe la date de la livraison, supprime les commandes vides de la livraison et fixe la date des autres /// </summary> /// <param name="site"></param> /// <returns></returns> public async Task TermineLivraison(Site site, Livraison livraison) { livraison.Date = DateTime.Now; _context.Livraison.Update(livraison); // supprime les commandes vides, fixe la date des autres à celle de leur dernier détail créé par le client s'il y en a, à celle de la livraison sinon. await _commandeService.TermineLivraison(site, livraison); }
/// <summary> /// retourne vrai si tous les ALivrer des détails des commandes de la livraison sont fixés /// </summary> /// <param name="livraison"></param> /// <returns></returns> public async Task <bool> EstPrête(Livraison livraison) { bool pasPrête = await _context.Commande .Where(c => c.SiteUid == livraison.Uid && c.SiteRno == livraison.Rno && c.LivraisonNo == livraison.No) .Where(c => c.Détails.Where(d => !d.ALivrer.HasValue).Any()) .AnyAsync(); return(!pasPrête); }
public void SetPrixLivraisonPourUnPays() { var livraison = new Livraison(); decimal prix = 10; var pays = "France"; livraison.SetPrix(pays, prix); Assert.AreEqual(livraison.GetPrix(pays), prix); }
public ActionResult Edit([Bind(Include = "id,idCommande,Adresse,Ville,idLivreur,idClient")] Livraison livraison) { if (ModelState.IsValid) { db.Entry(livraison).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(livraison)); }
private void btnLivraison_Click(object sender, EventArgs e) { panelContainer.Controls.Clear(); Livraison liv = new Livraison(); this.panelContainer.Controls.Add(liv); liv.Dock = DockStyle.Fill; liv.BringToFront(); setBackColor(btnLivraison); }
private async Task <Livraison> LivraisonDeCommence(Site site) { Livraison livraison = await _utile.DernièreLivraison(site); if (livraison != null && !livraison.Date.HasValue) { ErreurDeModel.AjouteAModelState(ModelState, "DernièreLivraisonPasTerminée"); } return(livraison); }
private async Task <Livraison> LivraisonDeAnnule(Site site) { Livraison livraison = await _utile.DernièreLivraison(site); if (livraison == null || livraison.Date.HasValue) { ErreurDeModel.AjouteAModelState(ModelState, "PasDeDernièreLivraisonOuTerminée"); return(null); } return(livraison); }
public LivraisonController(ApplicationUserManager userManager, ApplicationSignInManager signInManager) { livraison = new Livraison(); user = new ApplicationUser(); l = new Livreur(); livreur = new Livreur(); serviceLivraison = new LivraisonService(); serviceLivreur = new LivreurService(); serviceCart = new CartService(); serviceCartLine = new CartLineService(); }
public bool Update(Livraison s) { var original = db.Livraisons.Find(s.id); if (original != null) { db.Entry(original).CurrentValues.SetValues(s); return(db.SaveChanges() > 0); } return(false); }
/// <summary> /// retourne la dernière livraison du site si elle n'est pas terminée /// </summary> /// <param name="site"></param> /// <returns></returns> public async Task <Livraison> LivraisonPasTerminée(Site site) { Livraison livraison = await _utile.DernièreLivraison(site); if (livraison.Date.HasValue) { // la dernière livraison est terminée return(null); } return(livraison); }
//Sauvegarder commande public void Ajouter_Livraison(DateTime dateLivraison, int Idclient, string Fournisseur, string Document) { clslivc = new Livraison(); clslivc.Date_Livraison = dateLivraison; clslivc.ID_Client = Idclient; clslivc.Fournisseur = Fournisseur; clslivc.Num_Document = Document; db.Livraisons.Add(clslivc); db.SaveChanges(); IDLivraison = clslivc.ID_Livraison;//numero de commande ajoute }
private DocumentBilan DocumentLivraisonBase(Livraison livraison, IEnumerable <DocumentCommande> commandes) { DocumentCommande commande = commandes.First(); DocumentBilan doc = new DocumentBilan { Uid = commande.Uid, Rno = commande.Rno, No = livraison.No, Date = livraison.Date.Value, }; return(doc); }
/// <summary> /// supprime les commandes vides, fixe la date des autres à celle de leur dernier détail créé par le client s'il y en a, à celle de la livraison sinon. /// </summary> /// <param name="site"></param> /// <param name="livraison"></param> /// <returns></returns> public async Task TermineLivraison(Site site, Livraison livraison) { bool filtreCommande(Commande commande) => commande.LivraisonNo == livraison.No; List <Commande> commandes = await _utile.CommandesAvecDétailsLivraisonEtFacture(filtreCommande, null, null, site).ToListAsync(); List <Commande> vides = commandes.Where(c => c.Détails.Count == 0).ToList(); commandes = commandes.Where(c => c.Détails.Count != 0).ToList(); commandes.ForEach(commande => TermineCommande(commande, livraison.Date.Value)); _context.Commande.RemoveRange(vides); _context.Commande.UpdateRange(commandes); }
// GET: Livraison/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Livraison livraison = db.Livraison.Find(id); if (livraison == null) { return(HttpNotFound()); } return(View(livraison)); }
public void CreateNewLivraison(LivraisonDto livraison) { Livraison livraisonNormale = new Livraison() { DateLivraison = livraison.DateLivraison, Adresse = Context.Adresse.Where(a => a.Id == livraison.Adresse.Id).FirstOrDefault(), Commande = Context.Commande.Where(c => c.Id == livraison.Commande.Id).FirstOrDefault(), Salarie = Context.Salarie.Where(s => s.Id == livraison.Salarie.Id).FirstOrDefault(), Vehicule = Context.Vehicule.Where(v => v.Id == livraison.Vehicule.Id).FirstOrDefault() }; Context.Livraison.Add(livraisonNormale); Context.SaveChanges(); }
private void dtgLivraison_SelectionChanged(object sender, EventArgs e) { if (dtgLivraison.SelectedRows.Count > 0) { livraison = null; btModifier.Enabled = true; livraison = (Livraison)dtgLivraison.SelectedRows[0].DataBoundItem; txtIdLivraison.Text = livraison.Id.ToString(); cboArticle.Text = Factory.Instance.GetArticle(livraison.Id_article).ToString(); cboFounisseur.Text = Factory.Instance.GetFournisseur(livraison.Id_fournisseur).ToString(); txtQuantite.Text = livraison.Qte_e.ToString(); txtDateLivraison.Text = livraison.Date_livraison.ToString(); } }
public LivraisonController() { t.T = new Livreur(); livraison = new Livraison(); user = System.Web.HttpContext.Current.GetOwinContext().GetUserManager <ApplicationUserManager>() .FindById(System.Web.HttpContext.Current.User.Identity.GetUserId <int>()); l = new Livreur(); livreur = new Livreur(); serviceLivraison = new LivraisonService(); serviceLivreur = new LivreurService(); serviceCart = new CartService(); serviceCartLine = new CartLineService(); //id = user.Id; userr = new ApplicationUser(); }
public async Task <bool> EstDansSynthèseEnvoyée(Commande commande) { if (!commande.LivraisonNo.HasValue) { return(false); } Livraison livraison = await _context.Livraison .Where(l => l.Uid == commande.SiteUid && l.Rno == commande.SiteRno && l.No == commande.LivraisonNo) .FirstOrDefaultAsync(); if (!livraison.Date.HasValue) { return(false); } return(!commande.Livraison.FactureNo.HasValue); }
public ActionResult Create([Bind(Include = "id,Adresse,Ville")] Livraison livraison) { if (ModelState.IsValid) { Cart cart = null; cart = serviceCart.GetCartByUserId(user.Id); livraison.idCommande = livraison.id; livraison.idLivreur = 1; livraison.idClient = user.Id; db.Livraison.Add(livraison); db.SaveChanges(); return(RedirectToAction("../Product/Carthistory")); } return(View(livraison)); }
private void pictureBox1_Click(object sender, EventArgs e) { Consultation fac = new Consultation(int.Parse(label9.Text)); var App = Application.OpenForms["Form1"] as Form1; App.panelContainer.Controls.Clear(); Livraison f = new Livraison(); App.panelContainer.Controls.Add(f); f.panelContainer.Controls.Clear(); f.panelContainer.Controls.Add(fac); fac.Dock = DockStyle.Fill; fac.BringToFront(); f.Dock = DockStyle.Fill; f.BringToFront(); }
/// <summary> /// crée une livraison et fixe le numéro de livraison des commandes sans numéro de livraison /// </summary> /// <param name="site"></param> /// <returns></returns> public async Task CommenceLivraison(Site site) { Livraison livraison = await _utile.DernièreLivraison(site); long no = livraison == null ? 1 : livraison.No + 1; livraison = new Livraison { Uid = site.Uid, Rno = site.Rno, No = no }; _context.Livraison.Add(livraison); /// fixe le numéro de livraison des commandes sans numéro de livraison émises par !es clients autorisés d'un site await _commandeService.CommenceLivraison(site, no); }
[ProducesResponseType(409)] // Conflict public async Task <IActionResult> Commence([FromQuery] KeyUidRno keySite) { CarteUtilisateur carte = await _utilisateurService.CréeCarteUtilisateur(HttpContext.User); if (carte == null) { // fausse carte return(Forbid()); } if (!await carte.EstActifEtAMêmeUidRno(keySite.KeyParam)) { // pas le fournisseur return(Forbid()); } Site site = await _utile.SiteDeKey(keySite); if (site == null) { return(NotFound()); } if (site.Etat != TypeEtatSite.Ouvert) { ErreurDeModel.AjouteAModelState(ModelState, "EtatSiteIncorrect"); return(BadRequest(ModelState)); } Livraison livraison = await _utile.DernièreLivraison(site); if (livraison != null && !livraison.Date.HasValue) { ErreurDeModel.AjouteAModelState(ModelState, "DernièreLivraisonPasTerminée"); } await _service.CommenceLivraison(site); RetourDeService retour = await _siteService.ChangeEtat(site, TypeEtatSite.Livraison); if (retour.Ok) { return(Ok(await _service.VueDesCommandesOuvertesDesClientsAvecCompte(site))); } return(SaveChangesActionResult(retour)); }
/// <summary> /// retourne un objet LivraisonVue contenant les commandes reçues depuis la date /// </summary> /// <param name="site"></param> /// <returns></returns> public async Task <LivraisonVue> VueDesCommandesOuvertesDesClientsAvecCompte(Site site) { Livraison livraison = await _utile.DernièreLivraison(site); long no = livraison == null ? 1 : site.Etat == TypeEtatSite.Livraison ? livraison.No : livraison.No + 1; List <Commande> dernièresCommandes = await _commandeService.CommandesOuvertesDesClientsAvecCompte(site); LivraisonVue vue = new LivraisonVue { Uid = site.Uid, Rno = site.Rno, No = no, Commandes = dernièresCommandes.Select(c => _commandeService.CréeCommandeVue(c)).ToList(), Date = DateTime.Now }; return(vue); }
public ActionResult Edit(int id, Livraison livraison) { using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:8091/Dari/All/Livraison/"); //HTTP POST var putTask = client.PutAsJsonAsync <Livraison>("livraison", livraison); putTask.Wait(); var result = putTask.Result; if (result.IsSuccessStatusCode) { return(RedirectToAction("Index")); } } return(View(livraison)); }