Exemplo n.º 1
0
        public ActionResult TarifasLinUpdate([ModelBinder(typeof(DevExpressEditorsBinder))] TarifasLinModel item)
        {
            var model = Session[session] as TarifasModel;

            try
            {
                if (ModelState.IsValid)
                {
                    var editItem = model.Lineas.Single(f => f.Fkarticulos == item.Fkarticulos);
                    if (model.Precioobligatorio && !item.Precio.HasValue && item.Precio.Value == 0.0)
                    {
                        ModelState.AddModelError("Precio", string.Format(General.ErrorCampoObligatorio, Tarifas.Precio));
                        return(PartialView("_listadotarifas", model));
                    }

                    var serviceEmpresa = FService.Instance.GetService(typeof(EmpresaModel), ContextService);
                    var empresa        = serviceEmpresa.get(ContextService.Empresa) as EmpresaModel;

                    editItem.Precio    = Math.Round(item.Precio ?? 0, empresa.Decimalesprecios ?? 2);
                    editItem.Descuento = item.Descuento;

                    Session[session] = model;
                }
            }
            catch (ValidationException)
            {
                throw;
            }

            return(PartialView("_listadotarifas", model));
        }
Exemplo n.º 2
0
        public ActionResult TarifasLinAddNew([ModelBinder(typeof(DevExpressEditorsBinder))] TarifasLinModel item)
        {
            var model = Session[session] as TarifasModel;

            try
            {
                if (ModelState.IsValid)
                {
                    if (model.Lineas.Any(f => f.Fkarticulos == item.Fkarticulos))
                    {
                        ModelState.AddModelError("Codigovariedad", string.Format(General.ErrorRegistroExistente));
                    }
                    else
                    {
                        if (model.Precioobligatorio && !item.Precio.HasValue && item.Precio.Value == 0.0)
                        {
                            ModelState.AddModelError("Precio", string.Format(General.ErrorCampoObligatorio, Tarifas.Precio));
                            return(PartialView("_listadotarifas", model));
                        }

                        var service        = FService.Instance.GetService(typeof(UnidadesModel), ContextService);
                        var serviceFamilia = FService.Instance.GetService(typeof(FamiliasproductosModel), ContextService);
                        var serviceEmpresa = FService.Instance.GetService(typeof(EmpresaModel), ContextService);
                        var empresa        = serviceEmpresa.get(ContextService.Empresa) as EmpresaModel;

                        var familiaObj = serviceFamilia.get(item.Fkarticulos.Substring(0, 2)) as FamiliasproductosModel;

                        var unidadesObj = service.get(familiaObj.Fkunidadesmedida) as UnidadesModel;
                        item.Unidades = unidadesObj.Codigounidad;
                        item.Precio   = Math.Round(item.Precio ?? 0, empresa.Decimalesprecios ?? 2);

                        model.Lineas.Add(item);
                        Session[session] = model;
                    }
                }
            }
            catch (ValidationException)
            {
                model.Lineas.Remove(item);
                throw;
            }



            return(PartialView("_listadotarifas", model));
        }