private void LogSetValuesByProveedorInfo(FilterTarifaProveedor tarifaProveedor) { var log = new Dtos.Log { Accion = "TarifasAdmin.SetValuesByProveedor", App = "Irsa.PDM.Web", CreateDate = DateTime.Now, Modulo = "Tarifas", Tipo = App.Info, UsuarioAccion = UsuarioLogged, Descripcion = JsonConvert.SerializeObject(tarifaProveedor) }; LogAdmin.Create(log); }
private void LogSetValuesByProveedorError(FilterTarifaProveedor tarifaProveedor, Exception ex) { var log = new Dtos.Log { Accion = "TarifasAdmin.SetValuesByProveedor", App = "Irsa.PDM.Web", CreateDate = DateTime.Now, Modulo = "Tarifas", Tipo = App.Error, UsuarioAccion = UsuarioLogged, Descripcion = JsonConvert.SerializeObject(tarifaProveedor), StackTrace = GetExceptionDetail(ex) }; LogAdmin.Create(log); }
public string SetValuesByProveedor(FilterTarifaProveedor tarifaProveedor) { if (tarifaProveedor.Proveedor.Vehiculos == null || !tarifaProveedor.Proveedor.Vehiculos.Any()) { throw new Exception("El proveedor no posee vehículos asociados"); } var tarifarios = default(List <Entities.Tarifario>); try { var vehiculosId = tarifaProveedor.Proveedor.Vehiculos.Select(v => v.Id).ToList(); tarifarios = PdmContext.Tarifarios.Where(e => (e.Estado == EstadoTarifario.Editable || e.Estado == EstadoTarifario.PendienteAprobacion) && vehiculosId.Contains(e.Vehiculo.Id)).ToList(); tarifarios.ForEach(t => { SetValues(new FilterTarifas { TarifarioId = t.Id }, tarifaProveedor.Importe, tarifaProveedor.Oc); }); LogSetValuesByProveedorInfo(tarifaProveedor); } catch (Exception ex) { LogSetValuesByProveedorError(tarifaProveedor, ex); throw; } return(!tarifarios.Any() ? "Operación finalizada correctamente. No hay tarifarios abiertos asociados a ninguno de los vehículos." : tarifarios.Count() < tarifaProveedor.Proveedor.Vehiculos.Count() ? "Operación finalizada correctamente. Alguno de los vehículos no poseen tarifario abiertos." : "Operación finalizada correctamente. Se actualizarion todos los tarifarios."); }