Beispiel #1
0
        public ActionResult DeleteComposantDetail(int idToDelete)
        {
            CardComposantViewModel modelOut = new CardComposantViewModel();
            CompositionDTO         cpstion  = new CompositionDTO();
            ModuleDTO mdl = new ModuleDTO();
            int       idModule;
            decimal   prixComposant;

            try
            {
                cpstion       = Mapper.Map <Composition, CompositionDTO>(_compositionService.Get(idToDelete));
                prixComposant = Convert.ToDecimal(cpstion.composant.prixHT * (1 + (cpstion.composant.gamme.pourcentageGamme / 100)));
                _compositionService.Delete(idToDelete, _donneNomPrenomUtilisateur());
                _compositionService.Save();

                //On récupère les caractéristiques du module
                idModule = _compositionService.Get(idToDelete).module.id;
                mdl      = Mapper.Map <Module, ModuleDTO>(_moduleService.Get(idModule));
                mdl.prix = Decimal.Subtract(mdl.prix, prixComposant);
                _moduleService.Update(Mapper.Map <ModuleDTO, Module>(mdl), _donneNomPrenomUtilisateur());
                _moduleService.Save();

                //On reconstruit le tableau récapitulant les composants de l'employé
                modelOut.tableauComposant.avecActionCrud = false;
                modelOut.tableauComposant.lesLignes.Add(new List <object> {
                    "Composant", "Prix fournisseur", "Prix de vente", "Gamme", ""
                });
                List <Composition> composition1 = new List <Composition>();
                composition1 = _compositionService.DonneTousComposants(idModule);


                if (composition1.Count != 0)
                {
                    foreach (Composition cpst1 in composition1)
                    {
                        modelOut.tableauComposant.lesLignes.Add(new List <object> {
                            cpst1.composant.libe, cpst1.composant.prixHT.ToString(), (cpst1.composant.prixHT * (1 + (cpst1.composant.gamme.pourcentageGamme / 100))).ToString(), cpst1.composant.gamme.libe, cpst1.id
                        });
                    }
                }

                modelOut.lesComposants = _donneListeComposants();

                FlashMessage.Confirmation("Composant mis à jour avec succès");
            }
            catch (Exception e)
            {
                FlashMessage.Danger("Erreur lors de la mise à jour du composant");

                return(PartialView("~/Areas/RechercheDeveloppement/Views/Module/_CardComposantPartial.cshtml", modelOut));
            }

            return(PartialView("~/Areas/RechercheDeveloppement/Views/Module/_CardComposantPartial.cshtml", modelOut));
        }
Beispiel #2
0
        private byte[] GetFileSegment(ICompositionService scope, int fileId, int ofs, int size)
        {
            var buf = new byte[size];

            using (var str = scope.Get <IFileSystemService <TestDomain> >().OpenFile(fileId))
            {
                str.Position = Math.Max(0, ofs);
                var total = 0;
                while (total < size)
                {
                    var read = str.Read(buf, total, size - total);
                    if (read == 0)
                    {
                        break;
                    }
                    total += read;
                }

                if (total < size)
                {
                    Array.Resize(ref buf, total);
                }
                return(buf);
            }
        }
Beispiel #3
0
            public IPropertyFilter ParseComponent <TDomain>(ICompositionService comp, PropertyFilterFactory <TDomain> factory,
                                                            IPropertyFilter sourceFilter, IAuditProperty p, PropertyValueComparison cmp, string value)
            {
                var res = from prop in Maybe.Value(p as IAuditProperty <TProp>)
                          from selector in comp.Get <PropertyValueSelectorCache <TProp> >().GetSelector(prop)
                          from parsed in Maybe.SafeValue(() => selector.ParsePostedValue(value))

                          select sourceFilter == null?factory.Create(prop, parsed, cmp) : sourceFilter.And(prop, parsed, cmp);

                return(res.ValueOrNull() ?? sourceFilter);
            }
Beispiel #4
0
            public ClientControlDisplay RenderSelector(ICompositionService comp, IAuditProperty p, object value)
            {
                var selector = comp.Get <PropertyValueSelectorCache <TProp> >().GetSelector(p as IAuditProperty <TProp>);

                return(selector == null ? null : selector.RenderSelector(value == null ? default(TProp) : (TProp)value));
            }