public int GuardarTienda(MadeInHouse.Dictionary.DynamicGrid anaquel, MadeInHouse.Dictionary.DynamicGrid deposito) { Evaluador eva = new Evaluador(); if (String.IsNullOrEmpty(TxtAlturaAnq) || String.IsNullOrEmpty(TxtNumColumnsAnq) || String.IsNullOrEmpty(TxtNumRowsAnq) || String.IsNullOrEmpty(TxtAlturaDto) || String.IsNullOrEmpty(TxtNumColumnsDto) || String.IsNullOrEmpty(TxtNumRowsDto) || !eva.esNumeroEntero(TxtNumColumnsAnq) || !eva.esNumeroEntero(TxtNumColumnsDto) || !eva.esNumeroEntero(TxtNumRowsAnq) || !eva.esNumeroEntero(TxtNumRowsDto) || !eva.esNumeroEntero(TxtAlturaAnq) || !eva.esNumeroEntero(TxtAlturaDto) || int.Parse(TxtAlturaDto) <= 0 || int.Parse(TxtAlturaAnq) <= 0 || int.Parse(TxtNumColumnsAnq) <= 0 || int.Parse(TxtNumColumnsDto) <= 0 || int.Parse(TxtNumRowsAnq) <= 0 || int.Parse(TxtNumRowsDto) <= 0 ) { System.Windows.MessageBox.Show("Debes ingresar un numero entero para el numero de filas , columnas y altura"); return 1; } int exito = 0; DBConexion db = new DBConexion(); db.conn.Open(); SqlTransaction trans = db.conn.BeginTransaction(IsolationLevel.Serializable); db.cmd.Transaction = trans; pxaSQL = new ProductoSQL(db); /*Agrega una tienda*/ Tienda tienda = new Tienda(); tienda.Estado = 1; tienda.Nombre = txtNombre; tienda.Direccion = txtDir; tienda.Telefono = txtTelef; tienda.Administrador = txtAdmin; Ubigeo seleccionado = new Ubigeo(); UbigeoSQL uSQL = new UbigeoSQL(db); seleccionado = uSQL.buscarUbigeo(selectedDpto, selectedProv, selectedDist); tienda.IdUbigeo = seleccionado.IdUbigeo; tienda.FechaReg = DateTime.Today; TiendaSQL gw = new TiendaSQL(db); int idTienda=-1; if (accion == 1) idTienda = gw.AgregarTienda(tienda); else if (accion == 2) { tienda.IdTienda = this.idTienda; exito = gw.ActualizarTienda(tienda); } if (idTienda > 0 || exito>0) { /*Se agregan las dos partes de la tienda*/ AlmacenSQL aSQL = new AlmacenSQL(db); /*anaquel*/ Almacenes ana = new Almacenes(); ana.CodAlmacen = "ANA00" + tienda.IdTienda.ToString(); ana.IdTienda = tienda.IdTienda; ana.Nombre = "Anaquel de "+ txtNombre; ana.Telefono = tienda.Telefono; ana.Direccion = tienda.Direccion; ana.NroColumnas = int.Parse(TxtNumColumnsAnq); ana.NroFilas = int.Parse(TxtNumRowsAnq); ana.Altura = int.Parse(TxtAlturaAnq); ana.Tipo = 2; int idAnaquel=-1; if (accion == 1) idAnaquel = aSQL.Agregar(ana); else if (accion == 2) { ana.IdAlmacen = this.idAnaquel; exito = aSQL.Actualizar(ana); } if (idAnaquel > 0 || exito>0) { /*deposito*/ Almacenes dto = new Almacenes(); dto.CodAlmacen = "DTO00" + tienda.IdTienda.ToString(); dto.IdTienda = tienda.IdTienda; dto.Nombre = "Deposito de " + txtNombre; dto.Telefono = tienda.Telefono; dto.Direccion = tienda.Direccion; dto.NroColumnas = int.Parse(TxtNumColumnsDto); dto.NroFilas = int.Parse(TxtNumRowsDto); dto.Altura = int.Parse(TxtAlturaDto); dto.Tipo = 1; int idDeposito=-1; if (accion == 1) idDeposito = aSQL.Agregar(dto); else if (accion == 2) { dto.IdAlmacen = this.idDeposito; exito = aSQL.Actualizar(dto); } if (idDeposito > 0 || exito>0) { if (accion == 1) { /*Productos de la tienda*/ for (int i = 0; i < LstProductos.Count; i++) { LstProductos[i].IdAlmacen = idDeposito; LstProductos[i].IdTienda = idTienda; exito = pxaSQL.AgregarProductoxAlmacen(LstProductos[i]); if (exito <= 0) break; } } else if (accion == 2) { DataTable productoxAlmacenDT= pxaSQL.CrearProductoxAlmacenDT(); pxaSQL.AgregarFilasToDT(productoxAlmacenDT, LstProductos); exito = pxaSQL.ActualizarProductoxAlmacen(productoxAlmacenDT,trans); } if (exito > 0) { DataTable zonaxAlmacenData = CrearZonasDT(); AgregarFilasToZonasDT(zonaxAlmacenData, anaquel.listaZonas, (accion==1) ? idAnaquel :this.idAnaquel ); AgregarFilasToZonasDT(zonaxAlmacenData, deposito.listaZonas, (accion==1) ? idDeposito : this.idDeposito ); if (accion==1) exito = aSQL.AgregarZonasMasivo(zonaxAlmacenData, trans); else if (accion==2) exito = aSQL.ActualizarZonasMasivo(zonaxAlmacenData, trans); if (exito > 0) { UbicacionSQL ubSQL = new UbicacionSQL(db); /*Ubicaciones del anaquel*/ DataTable ubicacionesData = CrearUbicacionesDT(); AgregarFilasToUbicacionesDT(ubicacionesData, anaquel.Ubicaciones, (accion == 1) ? idAnaquel : this.idAnaquel); AgregarFilasToUbicacionesDT(ubicacionesData, deposito.Ubicaciones, (accion == 1) ? idDeposito : this.idDeposito); if (accion == 1) exito = ubSQL.AgregarMasivo(ubicacionesData, trans); else if (accion == 2) exito = ubSQL.ActualizarUbicacionMasivo(ubicacionesData, trans); if (exito > 0) { trans.Commit(); if (accion == 1) { //1: Agregar, 2: Editar, 3: Eliminar, 4: Recuperar, 5: Desactivar DataObjects.Seguridad.LogSQL.RegistrarActividad("Registrar Tienda", tienda.IdTienda+"", 1); System.Windows.MessageBox.Show("Se creó la tienda correctamente"); } else if (accion == 2) { //1: Agregar, 2: Editar, 3: Eliminar, 4: Recuperar, 5: Desactivar DataObjects.Seguridad.LogSQL.RegistrarActividad("Actualizar Tienda",tienda.IdTienda+"" , 2); System.Windows.MessageBox.Show("Se editó la tienda correctamente"); } return 1; } else { System.Windows.MessageBox.Show("ERROR"); } } else { System.Windows.MessageBox.Show("ERROR"); } } else { System.Windows.MessageBox.Show("ERROR"); } } else { System.Windows.MessageBox.Show("ERROR"); } } else { System.Windows.MessageBox.Show("ERROR"); } } else { System.Windows.MessageBox.Show("ERROR"); } trans.Rollback(); return -1; // System.Windows.MessageBox.Show("Se creo correctamente la tienda con id: " + idTienda.ToString() + " con anaquel id: " + idAnaquel.ToString() + " y con deposito id :" + idDeposito.ToString()); }
public void SelectedItemChanged(object sender, MadeInHouse.Dictionary.DynamicGrid almacen, MadeInHouse.Dictionary.DynamicGrid ubicacionCol) { SelectedProduct = ((sender as DataGrid).SelectedItem as ProductoCant); ubicacionCol.SelectedProduct = SelectedProduct; if (SelectedProduct != null) { almacen.UbicarProducto(SelectedProduct.IdProducto); } }
public List<int> ObtenerListaZonas(MadeInHouse.Dictionary.DynamicGrid objeto) { List<int> lista = new List<int>(); bool encontrado = false; for (int i = 0; i < objeto.Ubicaciones.Count; i++) { for (int j = 0; j < objeto.Ubicaciones[i].Count; j++) { for (int k = 0; k < lista.Count; k++) { if (lista[k] == objeto.Ubicaciones[i][j][0].IdTipoZona) { encontrado = true; break; } } if (!encontrado) lista.Add(objeto.Ubicaciones[i][j][0].IdTipoZona); encontrado = false; } } return lista; }
public void Distribuir(int tipo, MadeInHouse.Dictionary.DynamicGrid dg) { Evaluador eva = new Evaluador(); if (tipo == 0) { if (String.IsNullOrEmpty(TxtAlturaAnq) || String.IsNullOrEmpty(TxtNumColumnsAnq) || String.IsNullOrEmpty(TxtNumRowsAnq) || !eva.esNumeroEntero(TxtNumColumnsAnq) || !eva.esNumeroEntero(TxtNumRowsAnq) || !eva.esNumeroEntero(TxtAlturaAnq) ) { System.Windows.MessageBox.Show("Debes ingresar un numero entero para el numero de filas , columnas y altura"); return; } else if (int.Parse(TxtAlturaAnq) <= 0 || int.Parse(TxtNumColumnsAnq) <= 0 || int.Parse(TxtNumRowsAnq) <= 0 ) { System.Windows.MessageBox.Show("Debes ingresar un numero entero para el numero de filas , columnas y altura"); return; } NumColumnsAnq = Int32.Parse(TxtNumColumnsAnq); NumRowsAnq = Int32.Parse(TxtNumRowsAnq); AlturaAnq = Int32.Parse(TxtAlturaAnq); dg.RecreateGridCells(); if (accion == 2) { dg.cargarGrid(lstZonasAnq); } } else { if (String.IsNullOrEmpty(TxtAlturaAnq) || String.IsNullOrEmpty(TxtNumColumnsDto) || String.IsNullOrEmpty(TxtNumRowsDto) || !eva.esNumeroEntero(TxtAlturaDto) || !eva.esNumeroEntero(TxtNumColumnsDto) || !eva.esNumeroEntero(TxtNumRowsDto)) { System.Windows.MessageBox.Show("Debes ingresar un numero entero para el numero de filas , columnas y altura"); return; } else if (int.Parse(TxtAlturaDto) <= 0 || int.Parse(TxtNumColumnsAnq) <= 0 || int.Parse(TxtNumRowsDto) <= 0) { System.Windows.MessageBox.Show("Debes ingresar un numero entero para el numero de filas , columnas y altura"); return; } NumColumnsDto = Int32.Parse(TxtNumColumnsDto); NumRowsDto = Int32.Parse(TxtNumRowsDto); AlturaDto = Int32.Parse(TxtAlturaDto); dg.RecreateGridCells(); if (accion == 2) { dg.cargarGrid(lstZonasDto); } } }
public void Distribuir(int tipo, MadeInHouse.Dictionary.DynamicGrid dg) { NumColumns = Int32.Parse(TxtNumColumns); NumRows = Int32.Parse(TxtNumRows); Altura = Int32.Parse(TxtAltura); if (accion == 2) { dg.cargarGrid(lstZonas); } }
public int GuardarAlmacen(MadeInHouse.Dictionary.DynamicGrid deposito) { int exito = 1; DBConexion db = new DBConexion(); db.conn.Open(); SqlTransaction trans = db.conn.BeginTransaction(IsolationLevel.Serializable); db.cmd.Transaction = trans; Almacenes central = new Almacenes(); central.Estado = 1; central.CodAlmacen = "CENTRAL001"; central.Nombre = TxtNombre; central.Direccion = TxtDir; central.Telefono = TxtTelefono; central.Administrador = txtAdmin; Ubigeo seleccionado = new Ubigeo(); UbigeoSQL uSQL = new UbigeoSQL(db); seleccionado = uSQL.buscarUbigeo(selectedDpto, selectedProv, selectedDist); central.IdUbigeo = seleccionado.IdUbigeo; central.FechaReg = DateTime.Today; AlmacenSQL aSQL = new AlmacenSQL(db); if (TxtNumColumns != null) central.NroColumnas = int.Parse(TxtNumColumns); else return -1; central.NroFilas = int.Parse(TxtNumRows); if (TxtAltura != null) central.Altura = int.Parse(TxtAltura); else return -1; central.Tipo = 3; int idAlmacen = aSQL.Agregar(central); central.IdAlmacen = idAlmacen; central.CodAlmacen = "CENTRAL001"; int up = aSQL.Actualizar(central); if (idAlmacen > 0 && up > 0) { DataTable zonaxAlmacenData = CrearZonasDT(); AgregarFilasToZonasDT(zonaxAlmacenData, deposito.listaZonas, idAlmacen); /*Agrego las zonas por almacen*/ exito = aSQL.AgregarZonasMasivo(zonaxAlmacenData, trans); if (exito > 0) { UbicacionSQL ubSQL = new UbicacionSQL(db); /*Ubicaciones del anaquel*/ DataTable ubicacionesData = CrearUbicacionesDT(); AgregarFilasToUbicacionesDT(ubicacionesData, deposito.Ubicaciones, idAlmacen); exito = ubSQL.AgregarMasivo(ubicacionesData, trans); trans.Commit(); _windowManager.ShowDialog(new AlertViewModel(_windowManager, "Se creó el almacen central correctamente")); return 1; } else { _windowManager.ShowDialog(new AlertViewModel(_windowManager, "ERROR")); } } else { _windowManager.ShowDialog(new AlertViewModel(_windowManager, "ERROR")); } trans.Rollback(); return -1; }
public void SelectedItemChanged(object sender, MadeInHouse.Dictionary.DynamicGrid anaquel) { SelectedProduct = ((sender as DataGrid).SelectedItem as ProductoxTienda); if (SelectedProduct != null) { ProductoCant pc = new ProductoCant(); pc.IdProducto = SelectedProduct.IdProducto; anaquel.SelectedProduct = pc; anaquel.UbicarSector(SelectedProduct.IdProducto, 4); TxtStockActual = anaquel.StockActual.ToString(); TxtCapacidad = anaquel.CapacidadActual.ToString(); //(sender as DataGrid).SelectedItem = null; } }
public void Recargar(MadeInHouse.Dictionary.DynamicGrid dg) { AlmacenSQL aSQL = new AlmacenSQL(); Almacenes anaquel = aSQL.BuscarAlmacen(-1, idTienda, 2); idAnaquel = anaquel.IdAlmacen; NumColumns = anaquel.NroColumnas; NumRows = anaquel.NroFilas; Altura = anaquel.Altura; dg.RecreateGridCells(); TipoZonaSQL tzSQL = new TipoZonaSQL(); LstZonasAnq = tzSQL.ObtenerZonasxAlmacen(idAnaquel, 2); CmbZonas = lstZonasAnq; ProductoSQL pSQL = new ProductoSQL(); LstProductos = pSQL.BuscarProductoxTienda(idTienda); TxtStockActual = ""; TxtCapacidad = ""; }
public Boolean validar(MadeInHouse.Models.Compras.Servicio s) { if ((s.Descripcion == null) || (s.Nombre == null)) { _windowManager.ShowDialog(new AlertViewModel(_windowManager, "Tiene campos incompletos , rellenar porfavor")); return false; } else { return true; } }
public void SelectedItemChanged(object sender, MadeInHouse.Dictionary.DynamicGrid anaquel) { SelectedProduct = ((sender as DataGrid).SelectedItem as ProductoCant); anaquel.SelectedProduct = SelectedProduct; if (selectedZona > 0) { if (SelectedProduct != null) { anaquel.UbicarSector(SelectedProduct.IdProducto); TxtCapacidad = anaquel.CapacidadActual; TxtVolOcupado = anaquel.VolOcupadoActual + "%"; TxtStockActual = anaquel.StockActual; Atendido = SelectedProduct.Atendido; //(sender as DataGrid).SelectedItem = null; } } else { (sender as DataGrid).SelectedItem = null; } }
public void BuscarProductos(MadeInHouse.Dictionary.DynamicGrid almacen, MadeInHouse.Dictionary.DynamicGrid ubicacionCol) { if (TxtProducto == null || TxtProducto == "") { _windowManager.ShowWindow(new ProductoBuscarViewModel(_windowManager, this, 7, idTienda)); } else { ProductoCant pc = new ProductoCant(); //Buscar producto del textBox Inicial: if (productoSeleccionado == null) { ProductoSQL prodSQL = new ProductoSQL(); List<Producto> lstProd; lstProd = prodSQL.BuscarProducto(TxtProducto); if (lstProd == null) _windowManager.ShowDialog(new AlertViewModel(_windowManager, "Producto no existente con ese código")); else { pc.Nombre = lstProd[0].Nombre; pc.IdProducto = lstProd[0].IdProducto; pc.CodigoProd = TxtProducto; productoSeleccionado = null; } } else { pc.Nombre = ProductoSeleccionado.Nombre; pc.IdProducto = ProductoSeleccionado.IdProducto; pc.CodigoProd = ProductoSeleccionado.CodigoProd; productoSeleccionado = null; } ubicacionCol.SelectedProduct = pc; almacen.UbicarProducto(pc.IdProducto); pc = null; } }