private void InitTarifario(Tarifario entity, double?importe = null, string oi = null) { var tarifas = FCMediosClient.Get <IList <TarifaFcMedios> >(GetTarifasAction) .Where(e => e.cod_vehiculo == entity.Vehiculo.Codigo).ToList(); var actualMedios = PdmContext.Medios.ToList(); var actualPlazas = PdmContext.Plazas.ToList(); var actualVehiculos = PdmContext.Vehiculos.ToList(); #region Tarifas var toAdd = new List <Entities.Tarifa>(); tarifas.ForEach(t => { var medio = actualMedios.Single(e => e.Codigo == t.cod_medio); var plaza = actualPlazas.Single(e => e.Codigo == t.cod_plaza); var vehiculo = actualVehiculos.Single(e => e.Codigo == t.cod_vehiculo); toAdd.Add(new Entities.Tarifa { CodigoPrograma = t.cod_programa, Descripcion = t.espacio, HoraDesde = t.hora_inicio, HoraHasta = t.hora_fin, Importe = importe ?? t.bruto, OrdenDeCompra = oi, ImporteOld = t.bruto, Lunes = t.Lunes, Martes = t.Martes, Miercoles = t.Miercoles, Jueves = t.Jueves, Viernes = t.Viernes, Sabado = t.Sabado, Domingo = t.Domingo, Medio = medio, Plaza = plaza, Tarifario = entity, Vehiculo = vehiculo, CreateDate = DateTime.Now, CreatedBy = App.ImportUser, Enabled = true, Estado = t.bruto > 0 ? EstadoTarifa.PendienteAprobacion : EstadoTarifa.SinTarifaAsociada }); }); entity.Estado = toAdd.All(tt => tt.Estado == EstadoTarifa.PendienteAprobacion) ? EstadoTarifario.PendienteAprobacion : EstadoTarifario.Editable; PdmContext.Configuration.AutoDetectChangesEnabled = false; toAdd.ForEach(e => PdmContext.Tarifas.Add(e)); PdmContext.SaveChanges(); PdmContext.Configuration.AutoDetectChangesEnabled = true; PdmContext = new PDMContext(); #endregion }
private void LogAprobarInfo(Tarifario entity) { var log = new Dtos.Log { Accion = "TarifarioAdmin.AprobarTarifario", App = "Irsa.PDM.Web", CreateDate = DateTime.Now, Modulo = "Tarifarios", Tipo = App.Info, UsuarioAccion = UsuarioLogged, Descripcion = string.Format("Tarifario aprobado. ID: {0}", entity.Id) }; LogAdmin.Create(log); }
private void LogAprobarError(Tarifario entity, Exception ex) { var log = new Dtos.Log { Accion = "TarifarioAdmin.AprobarTarifario", App = "Irsa.PDM.Web", CreateDate = DateTime.Now, Modulo = "Tarifarios", Tipo = App.Error, UsuarioAccion = UsuarioLogged, Descripcion = string.Format("Tarifario. ID: {0}", entity.Id), StackTrace = GetExceptionDetail(ex) }; LogAdmin.Create(log); }
public override Tarifario ToEntity(Dtos.Tarifario dto) { var entity = default(Tarifario); var vehiculo = PdmContext.Vehiculos.Single(e => e.Id == dto.Vehiculo.Id); var tipoOeracion = (TipoOperacion)Enum.Parse(typeof(TipoOperacion), dto.TipoOperacion); if (!dto.Id.HasValue) { entity = new Tarifario { CreateDate = DateTime.Now, CreatedBy = UsuarioLogged, Enabled = true, Estado = EstadoTarifario.Editable, FechaDesde = dto.FechaDesde, FechaHasta = dto.FechaHasta, Vehiculo = vehiculo, NumeroProveedorSap = dto.NumeroProveedorSap, Documento = dto.Documento, TipoOperacion = tipoOeracion }; } else { entity = PdmContext.Tarifarios.Single(c => c.Id == dto.Id.Value); entity.UpdateDate = DateTime.Now; entity.UpdatedBy = UsuarioLogged; entity.FechaDesde = dto.FechaDesde; entity.FechaHasta = dto.FechaHasta; entity.Vehiculo = vehiculo; entity.NumeroProveedorSap = dto.NumeroProveedorSap; entity.Documento = dto.Documento; entity.TipoOperacion = tipoOeracion; } return(entity); }