public Int32 UltimoID() { Dato.Modelo.Producto _entidadToIDAdd = db.ProductoSet.ToList().LastOrDefault(); Int32 _id = _entidadToIDAdd.ID; return(_id); }
public Boolean Create(EntidadNegocio.Entidades.Producto _producto) { Dato.Modelo.Producto productoToAdd = new Dato.Modelo.Producto(); Boolean resul = false; String IDTipo = ""; String IDMarca = ""; String IDModelo = ""; String IDCategoria = ""; productoToAdd.ID = _producto.ID; productoToAdd.Codigo = _producto.Codigo; productoToAdd.Descripcion = _producto.Descripcion; if (_producto.Status == EntidadNegocio.Enumerados.EnumEstatus.Registro.Activo) { productoToAdd.Estatus = 1; } else { productoToAdd.Estatus = 0; } Int32 iIDTipo = _producto.IDTipo; if (iIDTipo == 0) { TipoController ctrlTipo = new TipoController(); iIDTipo = ctrlTipo.UltimoID(); } else { iIDTipo = _producto.IDTipo; } productoToAdd.IDTipo = iIDTipo; IDTipo = iIDTipo.ToString(); Int32 iIDMarca = _producto.IDMarca; productoToAdd.IDMarca = iIDMarca; IDMarca = iIDMarca.ToString(); Int32 iIDModelo = _producto.IDModelo; productoToAdd.IDModelo = iIDModelo; IDModelo = iIDModelo.ToString(); Int32 iIDCategoria = _producto.IDCategoria; productoToAdd.IDCategoria = iIDCategoria; IDCategoria = iIDCategoria.ToString(); if (!String.IsNullOrEmpty(IDTipo)) { productoToAdd.Tipo = db.TipoSet.FirstOrDefault(c => c.ID == iIDTipo); } if (productoToAdd.Tipo == null) { MessageBox.Show(String.Format("El número de IDTipo {0} no está registrado en la base de datos."), EntidadNegocio.Entidades.Mensajes.Titulo_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); } if (!String.IsNullOrEmpty(IDMarca)) { productoToAdd.Marca = db.MarcaSet.FirstOrDefault(c => c.ID == iIDMarca); } if (productoToAdd.Marca == null) { MessageBox.Show(String.Format("El número de IDMarca {0} no está registrado en la base de datos."), EntidadNegocio.Entidades.Mensajes.Titulo_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); } if (!String.IsNullOrEmpty(IDModelo)) { productoToAdd.Modelo = db.ModeloSet.FirstOrDefault(c => c.ID == iIDModelo); } if (productoToAdd.Modelo == null) { MessageBox.Show(String.Format("El número de IDModelo {0} no está registrado en la base de datos."), EntidadNegocio.Entidades.Mensajes.Titulo_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); } if (!String.IsNullOrEmpty(IDCategoria)) { productoToAdd.Categoria = db.CategoriaSet.FirstOrDefault(c => c.ID == iIDCategoria); } if (productoToAdd.Categoria == null) { MessageBox.Show(String.Format("El número de IDCategoria {0} no está registrado en la base de datos."), EntidadNegocio.Entidades.Mensajes.Titulo_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); } //valido claves primaria if (db.ProductoSet.FirstOrDefault(b => b.ID == productoToAdd.ID) != null) { MessageBox.Show(EntidadNegocio.Entidades.Mensajes.Info_ErrorAlGuardarViolacionPK, EntidadNegocio.Entidades.Mensajes.Titulo_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (db.Connection.State != System.Data.ConnectionState.Open) { db.Connection.Open(); } DbTransaction dbTransaction = db.Connection.BeginTransaction(); try { // Guardar y confirmo. db.AddToProductoSet(productoToAdd); db.SaveChanges(); dbTransaction.Commit(); /// Si la transaccion es exitosa enviamos true Dato.Modelo.Producto _entidadToIDAdd = db.ProductoSet.ToList().LastOrDefault(); Int32 _id = _entidadToIDAdd.ID; _entidadToIDAdd.ID = _id; resul = true; } catch (Exception ex) { dbTransaction.Rollback(); HandleException excepcion = new HandleException(); String msjLog = "Error en " + ObtenerMetodoEnEjecucion(false).ToString() + ".\n" + excepcion.RegistrarExcepcion(ex, ObtenerMetodoEnEjecucion(false).ToString()); excepcion.EscribirLogExcepcion(msjLog); String clientMessage = excepcion.HandleExceptionEx(ex); excepcion = null; resul = false; } } return(resul); }
public EntidadNegocio.Entidades.Producto Details(int id) { Dato.Modelo.Producto _productoDetail = new Dato.Modelo.Producto(); if (id == 0) { _productoDetail = new Dato.Modelo.Producto(); } else { _productoDetail = db.ProductoSet.First(p => p.ID == id); _productoDetail.TipoLoad(); _productoDetail.MarcaLoad(); _productoDetail.ModeloLoad(); _productoDetail.CategoriaLoad(); } EntidadNegocio.Entidades.Producto productoDetail = new EntidadNegocio.Entidades.Producto(); productoDetail.ID = _productoDetail.ID; productoDetail.Tipo = new EntidadNegocio.Entidades.Tipo(); productoDetail.Tipo.ID = _productoDetail.IDTipo; productoDetail.IDTipo = _productoDetail.IDTipo; productoDetail.Tipo.Codigo = _productoDetail.Tipo.Codigo; productoDetail.Tipo.Descripcion = _productoDetail.Tipo.Descripcion; if (_productoDetail.Tipo.Estatus == 1) { productoDetail.Tipo.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Activo; } else { productoDetail.Tipo.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Inactivo; } productoDetail.Tipo.Edicion = EntidadNegocio.Enumerados.EnumEstatus.Edicion.Normal; productoDetail.Codigo = _productoDetail.Codigo; productoDetail.Descripcion = _productoDetail.Descripcion; productoDetail.Marca = new EntidadNegocio.Entidades.Marca(); productoDetail.IDMarca = _productoDetail.IDMarca; productoDetail.Marca.ID = _productoDetail.IDMarca; productoDetail.Marca.Codigo = _productoDetail.Marca.Codigo; productoDetail.Marca.Descripcion = _productoDetail.Marca.Descripcion; if (_productoDetail.Marca.Estatus == 1) { productoDetail.Marca.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Activo; } else { productoDetail.Marca.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Inactivo; } productoDetail.Marca.Edicion = EntidadNegocio.Enumerados.EnumEstatus.Edicion.Normal; productoDetail.Modelo = new EntidadNegocio.Entidades.Modelo(); productoDetail.IDModelo = _productoDetail.IDModelo; productoDetail.Modelo.ID = _productoDetail.IDModelo; productoDetail.Modelo.Codigo = _productoDetail.Modelo.Codigo; productoDetail.Modelo.Descripcion = _productoDetail.Modelo.Descripcion; if (_productoDetail.Modelo.Estatus == 1) { productoDetail.Modelo.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Activo; } else { productoDetail.Modelo.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Inactivo; } productoDetail.Modelo.Edicion = EntidadNegocio.Enumerados.EnumEstatus.Edicion.Normal; productoDetail.Categoria = new EntidadNegocio.Entidades.Categoria(); productoDetail.IDCategoria = _productoDetail.IDCategoria; productoDetail.Categoria.ID = _productoDetail.IDCategoria; productoDetail.Categoria.Codigo = _productoDetail.Categoria.Codigo; productoDetail.Categoria.Descripcion = _productoDetail.Categoria.Descripcion; if (_productoDetail.Categoria.Estatus == 1) { productoDetail.Categoria.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Activo; } else { productoDetail.Categoria.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Inactivo; } productoDetail.Categoria.Edicion = EntidadNegocio.Enumerados.EnumEstatus.Edicion.Normal; if (_productoDetail.Estatus == 1) { productoDetail.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Activo; } else { productoDetail.Status = EntidadNegocio.Enumerados.EnumEstatus.Registro.Inactivo; } productoDetail.Edicion = EntidadNegocio.Enumerados.EnumEstatus.Edicion.Normal; return(productoDetail); }