//eliminar detalles de presupuesto public bool Delete(int Id) { var rpta = false; try { using (var ctx = new PresupuestoContext()) { var dPresupuesto = ctx.SPDetallePresupuesto.Where(x => x.Id == Id).SingleOrDefault(); if (dPresupuesto != null) { var dimensiones = ctx.SPCostoByDimension.Where(x => x.detalle_presupuesdoId == Id).ToList(); //eliminamos los existentes en el detalle ctx.SPCostoByDimension.RemoveRange(dimensiones); ctx.SaveChanges(); ctx.Entry(dPresupuesto).State = EntityState.Deleted; ctx.SaveChanges(); rpta = true; } } } catch { } return(rpta); }
//metodo para guardar actividads public string Save() { string rpta = ""; this.estado = "I"; this.fecha = DateTime.Today; try { using (var ctx = new PresupuestoContext()) { if (this.Id > 0) { ctx.Entry(this).State = EntityState.Modified; } else { ctx.Entry(this).State = EntityState.Added; } ctx.SaveChanges(); rpta = "presupuesto ah sido registrado con exito"; } } catch (Exception e) { throw e; } return(rpta); }
//guardar un empleado public string Save() { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { this.estado = "A"; if (this.empleadoId > 0) { ctx.Entry(this).State = EntityState.Modified; } else { ctx.SPEmpleado.Add(this); } ctx.SaveChanges(); } } catch { } return(rpta); }
public string ActivarODesactivarLote(int loteId, string estado) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { var lote = ctx.SPSubLote.Where(x => x.Id == loteId).SingleOrDefault(); lote.estado = estado; ctx.Entry(lote).State = EntityState.Modified; ctx.SaveChanges(); if (estado == "A") { rpta = "Lote ah sido activado"; } else { rpta = "Lote ha sido desactivado"; } } } catch { throw; } return(rpta); }
//metodo para guardar actividads public string Save() { string rpta = ""; this.estado = "A"; try { using (var ctx = new PresupuestoContext()) { if (this.Id > 0) { ctx.Entry(this).State = EntityState.Modified; } else { ctx.Entry(this).State = EntityState.Added; } ctx.SaveChanges(); rpta = "Tipo cambio registrada con exito"; } } catch (Exception e) { throw e; } return(rpta); }
//metodo para eliminar a nivel logico una actividad public bool Delete(int id) { var rpta = false; try { using (var ctx = new PresupuestoContext()) { var tipo = this.GetById(id); if (tipo != null) { tipo.estado = "I"; ctx.Entry(tipo).State = EntityState.Modified; ctx.SaveChanges(); rpta = true; } } } catch (Exception e) { throw e; } return(rpta); }
//metodo para guardar lote y detalle lote public string Save(CreateSubLoteDto model) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transaction = ctx.Database.BeginTransaction()) { try { var sublote = new SPSubLote { Id = model.Id, codigo = model.codigo, nombre = model.nombre, loteId = model.loteId, cultivoId = model.cultivoId, variedadId = model.variedadId, metros = model.metros, altura = model.altura, ancho = model.ancho, densidad = model.densidad, factor_manzana = model.factor_manzana, techado = model.techado, fecha_inicio = model.fecha_inicio, fecha_fin = model.fecha_fin, estado = "A" }; if (sublote.Id > 0) { ctx.Entry(sublote).State = EntityState.Modified; } else { ctx.SPSubLote.Add(sublote); } ctx.SaveChanges(); transaction.Commit(); rpta = "Lote registado correctamente"; } catch (Exception ex) { transaction.Rollback(); throw ex; } } } } catch (Exception e) { throw e; } return(rpta); }
//metodo para guardar lote y detalle lote public string Save(CentroCostoDto model, string op) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transaction = ctx.Database.BeginTransaction()) { try { var ccosto = new CentrodeCosto { codigo = model.codigo, descripcion = model.descripcion, Region = model.Region, CorrelativoTD = model.CorrelativoTD, Correlativo = model.Correlativo, CodigoNAV = model.CodigoNAV, paisId = model.paisId, estado = "A" }; if (op == "G") { ctx.CentrodeCosto.Add(ccosto); } else { ctx.Entry(ccosto).State = EntityState.Modified; } ctx.SaveChanges(); transaction.Commit(); rpta = "Centro de costo registado correctamente"; } catch (Exception ex) { transaction.Rollback(); throw ex; } } } } catch (Exception e) { throw e; } return(rpta); }
//metodo para guardar lote y detalle lote public string Save() { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transaction = ctx.Database.BeginTransaction()) { try { this.estado = "A"; if (this.Id > 0) { ctx.Entry(this).State = EntityState.Modified; } else { ctx.SPLote.Add(this); } ctx.SaveChanges(); transaction.Commit(); rpta = "Lote registado correctamente"; } catch (Exception ex) { transaction.Rollback(); throw ex; } } } } catch (Exception e) { throw e; } return(rpta); }
public bool Delete(int Id) { var rpta = false; try { using (var ctx = new PresupuestoContext()) { var dPresupuesto = ctx.SPPresupuestoContable.Where(x => x.Id == Id).SingleOrDefault(); if (dPresupuesto != null) { ctx.Entry(dPresupuesto).State = EntityState.Deleted; ctx.SaveChanges(); rpta = true; } } } catch { } return(rpta); }
public string Delete(int productoId) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { var producto = ctx.SPProducto.Where(x => x.productoId == productoId).SingleOrDefault(); producto.estado = estado; ctx.Entry(producto).State = EntityState.Modified; ctx.SaveChanges(); rpta = "producto ha sido removido"; } } catch { throw; } return(rpta); }
//actualizar el total del presupuesto public bool updateTotal(int presupuestoId, decimal?total_estimado) { var rpta = false; try { using (var ctx = new PresupuestoContext()) { var presupuesto = ctx.SPPresupuesto.Where(x => x.Id == presupuestoId).SingleOrDefault(); if (presupuesto != null) { presupuesto.total_estimado = total_estimado; ctx.Entry(presupuesto).State = EntityState.Modified; ctx.SaveChanges(); rpta = true; } } } catch { } return(rpta); }
public bool Save(CreateUsuarioDto model) { var rpta = false; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transacion = ctx.Database.BeginTransaction()) { try { if (model.Id == 0) { model.password = HashHelper.SHA256(model.password); } var usuario = new SPUsuario { Id = model.Id, email = model.email, usuario = model.usuario, password = model.password, estado = "A" }; if (usuario.Id > 0) { ctx.Entry(usuario).State = EntityState.Modified; } else { ctx.Entry(usuario).State = EntityState.Added; } ctx.SaveChanges(); var usuarioId = usuario.Id; //eliminamos los existentes para sustituirlos var permisos = ctx.SPUsuarioPermiso.Where(x => x.usuarioId == usuarioId).ToList(); ctx.SPUsuarioPermiso.RemoveRange(permisos); ctx.SaveChanges(); foreach (var u in model.permisos) { var usuario_permiso = new SPUsuarioPermiso { usuarioId = usuarioId, permisoId = u }; ctx.Entry(usuario_permiso).State = EntityState.Added; ctx.SaveChanges(); } //eliminamos los existentes de la tabla paises var paises = ctx.SPUsuarioPais.Where(x => x.usuarioId == usuarioId).ToList(); ctx.SPUsuarioPais.RemoveRange(paises); ctx.SaveChanges(); foreach (var p in model.paises) { var usuario_pais = new SPUsuarioPais { usuarioId = usuarioId, paisId = p }; ctx.Entry(usuario_pais).State = EntityState.Added; ctx.SaveChanges(); } //eliminamos los presupuestos asignados anteriormente var presupuestos = ctx.SPUsuarioPresupuesto.Where(x => x.usuarioId == usuarioId).ToList(); ctx.SPUsuarioPresupuesto.RemoveRange(presupuestos); ctx.SaveChanges(); if (model.presupuestos != null) { foreach (var p in model.presupuestos) { var usuario_p = new SPUsuarioPresupuesto { usuarioId = usuarioId, tipoId = p }; ctx.Entry(usuario_p).State = EntityState.Added; ctx.SaveChanges(); } } transacion.Commit(); rpta = true; }catch (Exception e) { transacion.Rollback(); throw e; } } } }catch (Exception e) { throw e; } return(rpta); }
//metodo para guardar lote y detalle lote public string Save(CreateSubcentroDto model) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transaction = ctx.Database.BeginTransaction()) { try { var subCentroCosto = new SPSubCentroCosto { Id = model.Id, fincaId = model.fincaId, nombre = model.nombre, codigo_nav = model.codigo_nav, codigo = model.codigo, estado = "A" }; if (subCentroCosto.Id > 0) { ctx.Entry(subCentroCosto).State = EntityState.Modified; } else { ctx.SPSubCentroCosto.Add(subCentroCosto); } ctx.SaveChanges(); int fincaId = subCentroCosto.Id; //eliminamos los existentes para sustituirlos var detalles = ctx.SPCCostoActividad.Where(x => x.fincaId == fincaId).ToList(); ctx.SPCCostoActividad.RemoveRange(detalles); ctx.SaveChanges(); if (model.actividades != null) { foreach (var d in model.actividades) { var detalle = new SPCCostoActividad { fincaId = fincaId, actividadId = d }; ctx.SPCCostoActividad.Add(detalle); ctx.SaveChanges(); } } transaction.Commit(); rpta = "sub centro de costo registado correctamente"; } catch (Exception ex) { transaction.Rollback(); throw ex; } } } } catch (Exception e) { throw e; } return(rpta); }
public string SaveFile(CargaMasivaCt model) { string rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (var transaction = ctx.Database.BeginTransaction()) { try { foreach (var m in model.detalle) { var newPsContalle = new SPPresupuestoContable { Id = model.Id, presupuestoId = model.presupuestoId, subcentroId = m.subcentroId, loteId = m.loteId, cuenta_contable = m.cuenta_contable, codigo_cuenta = m.codigo_cuenta, enero = m.enero, febrero = m.febrero, marzo = m.marzo, abril = m.abril, mayo = m.mayo, junio = m.junio, julio = m.julio, agosto = m.agosto, septiembre = m.septiembre, octubre = m.octubre, noviembre = m.noviembre, diciembre = m.diciembre, detalle = m.detalle, total = m.enero + m.febrero + m.marzo + m.abril + m.marzo + m.junio + m.julio + m.agosto + m.septiembre + m.octubre + m.noviembre + m.diciembre }; ctx.Configuration.AutoDetectChangesEnabled = false; ctx.SPPresupuestoContable.Add(newPsContalle); ctx.SaveChanges(); } transaction.Commit(); rpta = "Carga de datos realizada correctamente"; } catch (Exception e) { transaction.Rollback(); throw e; } } } }catch (Exception e) { throw; } return(rpta); }
//guardar carga masiva public string saveFile(CargaMasivaCreateDto model) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transaction = ctx.Database.BeginTransaction()) { try { foreach (var d in model.detalle) { var detalle = new SPDetallePresupuesto { Id = model.Id, presupuestoId = model.presupuestoId, referencia = d.referencia, cantidad = d.cantidad, total_referencia = d.total_referencia, fincaId = d.fincaId, subloteId = d.subloteId, unidad_by_p_cs = d.unidad_by_p_cs, costo_by_p_cs = d.costo_by_p_cs }; ctx.Configuration.AutoDetectChangesEnabled = false; ctx.SPDetallePresupuesto.Add(detalle); ctx.SaveChanges(); var detalleId = detalle.Id; if (model.codigoTipo == "P_MO") { //obtener dimensiones por actividad SPDimension _dimension = new SPDimension(); var dimensiones = _dimension.GetDimensionesbyActividad(detalle.referencia); if (dimensiones.Count > 0) { //eliminamos los existentes para sustituirlos var costosdim = ctx.SPCostoByDimension.Where(x => x.detalle_presupuesdoId == detalleId).ToList(); ctx.SPCostoByDimension.RemoveRange(costosdim); ctx.SaveChanges(); foreach (var ca in dimensiones) { var costo_actividad = new SPCostoByDimension { dimensionId = ca.dimensionId, detalle_presupuesdoId = detalleId, costo = Convert.ToDouble(detalle.total_referencia) * (ca.factor / 100) }; //costo_actividad.costo = Math.Round(Convert.ToDecimal(costo_actividad.costo), 2); ctx.Configuration.AutoDetectChangesEnabled = false; ctx.SPCostoByDimension.Add(costo_actividad); ctx.SaveChanges(); } } } } transaction.Commit(); rpta = "Carga de datos realizada correctamente"; } catch (Exception e) { transaction.Rollback(); throw e; } } } } catch (Exception e) { throw e; } return(rpta); }
//metodo para guardar lote y detalle lote public string Save(ProductoDto model) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transaction = ctx.Database.BeginTransaction()) { try { var producto = new SPProducto { productoId = model.productoId, codigo = model.codigo, nombre = model.nombre, categoriaId = model.categoriaId, cultivoId = model.cultivoId, tipo = model.tipo, estado = "A", }; if (producto.productoId > 0) { ctx.Entry(producto).State = EntityState.Modified; } else { ctx.SPProducto.Add(producto); } ctx.SaveChanges(); //obtenemos el ultimo id insertado var productoId = producto.productoId; //eliminamos los existentes para sustituirlos var detalles = ctx.SPProductoPresentacion.Where(x => x.productoId == productoId && x.productoId == model.productoId).ToList(); ctx.SPProductoPresentacion.RemoveRange(detalles); ctx.SaveChanges(); if (model.detalle != null) { foreach (var d in model.detalle) { var detalle = new SPProductoPresentacion { Id = d.Id, productoId = productoId, presentacionId = d.presentacionId, }; ctx.SPProductoPresentacion.Add(detalle); ctx.SaveChanges(); } } transaction.Commit(); rpta = "producto registado correctamente"; } catch (Exception ex) { transaction.Rollback(); throw ex; } } } } catch (Exception e) { throw e; } return(rpta); }
//guardar o actualizar lotes public string Save(CreateDetalleManoObraDto model) { var rpta = ""; try { using (var ctx = new PresupuestoContext()) { using (DbContextTransaction transaction = ctx.Database.BeginTransaction()) { try { if (model.referencia == null) { model.referencia = model.referencia_producto; } var d_manoObra = new SPDetallePresupuesto { Id = model.Id, presupuestoId = model.presupuestoId, fincaId = model.fincaId, subloteId = model.loteId, referencia = model.referencia, total_referencia = model.total_referencia, cantidad = model.cantidad, unidad_by_p_cs = model.unidad_by_p_cs, costo_by_p_cs = model.costo_by_p_cs, estado = "I" }; if (d_manoObra.Id > 0) { ctx.Entry(d_manoObra).State = EntityState.Modified; } else { ctx.Entry(d_manoObra).State = EntityState.Added; } ctx.SaveChanges(); ctx.Database.ExecuteSqlCommand("UPDATE SPDetallePresupuesto SET estado = 'I' WHERE presupuestoId IN (@p0) and fincaId IN (@p1)", d_manoObra.presupuestoId, d_manoObra.fincaId); var detalleId = d_manoObra.Id; //obtener dimensiones por actividad SPDimension _dimension = new SPDimension(); var dimensiones = _dimension.GetDimensionesbyActividad(d_manoObra.referencia); if (dimensiones.Count > 0) { //eliminamos los existentes para sustituirlos var costosdim = ctx.SPCostoByDimension.Where(x => x.detalle_presupuesdoId == detalleId).ToList(); ctx.SPCostoByDimension.RemoveRange(costosdim); ctx.SaveChanges(); foreach (var ca in dimensiones) { var costo_actividad = new SPCostoByDimension { dimensionId = ca.dimensionId, detalle_presupuesdoId = detalleId, costo = Convert.ToDouble(d_manoObra.total_referencia) * (ca.factor / 100) }; //costo_actividad.costo = Math.Round(Convert.ToDecimal(costo_actividad.costo), 2); ctx.SPCostoByDimension.Add(costo_actividad); ctx.SaveChanges(); } } transaction.Commit(); rpta = "accion se agrego presupuesto correctamente"; } catch (Exception e) { transaction.Rollback(); throw e; } } } } catch { } return(rpta); }