public AdministradorPresenter(IUnityContainer container, IAdministradorView view)
        {
            View = view;
            this.container = container;
            this.service = new WMSServiceClient();
            View.Model = this.container.Resolve<AdministradorModel>();


            #region Metodos

            //View.ConfirmBasicData += new EventHandler<EventArgs>(this.OnConfirmBasicData);
            //View.EvaluarTipoProducto += new EventHandler<DataEventArgs<Product>>(this.OnEvaluarTipoProducto);
            View.AddLine += new EventHandler<EventArgs>(this.OnAddLine);
            View.CargarDatosAdministrador += new EventHandler<EventArgs>(this.CargarDatosAdministrador);
            view.CargaMasiva += new EventHandler<DataEventArgs<DataTable>>(this.OnCargaMasiva);
            View.ReplicateDetails += new EventHandler<EventArgs>(this.OnReplicateDetails);
            View.SaveDetails += new EventHandler<EventArgs>(this.OnSaveDetails);
            View.ConfirmarMovimiento += new EventHandler<EventArgs>(this.OnConfirmarMovimiento);
            View.ReiniciarCapacitacion += new EventHandler<EventArgs>(this.OnReiniciarCapacitacion);
            View.ConsultarMovimientos += new EventHandler<EventArgs>(this.OnConsultarMovimientos);
            View.BuscarEquipoTracking += new EventHandler<EventArgs>(this.OnBuscarEquipoTracking);

            //Recibo
            View.BuscarRegistrosRecibo += this.OnBuscarRegistrosRecibo;
            View.BuscarNombreMaterial += this.OnBuscarNombreMaterial;
            View.ActualizarRegistrosRecibo += this.OnActualizarRegistrosRecibo;
            View.ConfirmarRecibo += this.OnConfirmarRecibo;

            //ConfirmarMovimiento
            #endregion

            #region Datos

            View.Model.HeaderDocument = new Document();
            View.Model.RecordCliente = service.GetLocation(new Location { LocationID = App.curLocation.LocationID }).First();
            View.Model.ListBinEntradaAlmacen = service.GetBin(new Bin { BinID = 4 });

            try { Local = service.GetConnection(new Connection { Name = "LOCAL" }).First(); }
            catch { }


            View.Model.ListadoEstatusLogPro = service.GetMMaster(new MMaster { MetaType = new MType { Code = "LOGPROSTAT" } });
            View.Model.ListadoPosiciones = service.GetMMaster(new MMaster { MetaType = new MType { Code = "POSICION1" } });
            //View.Model.ListadoModelos = service.GetMMaster(new MMaster { MetaType = new MType { Code = "DRIRECMODE" } });
            View.Model.ListadoOrigen = service.GetMMaster(new MMaster { MetaType = new MType { Code = "ALIADO" } });
            View.Model.ListadoTipoOrigen = service.GetMMaster(new MMaster { MetaType = new MType { Code = "REMISIONRR" } });
            View.Model.ListadoTipoREC = service.GetMMaster(new MMaster { MetaType = new MType { Code = "REC" } });
            View.Model.ListadoFallas = service.GetMMaster(new MMaster { MetaType = new MType { Code = "FALLADIA" } });
            View.Model.ListadoMotScrap = service.GetMMaster(new MMaster { MetaType = new MType { Code = "MOTSCRAP" } });
            View.Model.ListadoEstadoRR = service.GetMMaster(new MMaster { MetaType = new MType { Code = "ESTADO RR" } });
            View.Model.ListadoProductos = service.GetProduct(new Product());

            View.Model.ListadoEquipos = service.DirectSQLQuery("exec sp_GetProcesos2 'HISTORICOSERIAL'", "", "dbo.movimientoclaro", Local);

            #endregion
        }
        public AdministradorPresenter(IUnityContainer container, IAdministradorView view)
        {
            View           = view;
            this.container = container;
            this.service   = new WMSServiceClient();
            View.Model     = this.container.Resolve <AdministradorModel>();

            #region Metodos

            //View.ConfirmBasicData += new EventHandler<EventArgs>(this.OnConfirmBasicData);
            //View.EvaluarTipoProducto += new EventHandler<DataEventArgs<Product>>(this.OnEvaluarTipoProducto);
            View.AddLine += new EventHandler <EventArgs>(this.OnAddLine);
            View.CargarDatosAdministrador += new EventHandler <EventArgs>(this.CargarDatosAdministrador);
            view.CargaMasiva           += new EventHandler <DataEventArgs <DataTable> >(this.OnCargaMasiva);
            View.ReplicateDetails      += new EventHandler <EventArgs>(this.OnReplicateDetails);
            View.SaveDetails           += new EventHandler <EventArgs>(this.OnSaveDetails);
            View.ConfirmarMovimiento   += new EventHandler <EventArgs>(this.OnConfirmarMovimiento);
            View.ReiniciarCapacitacion += new EventHandler <EventArgs>(this.OnReiniciarCapacitacion);
            View.ConsultarMovimientos  += new EventHandler <EventArgs>(this.OnConsultarMovimientos);
            View.BuscarEquipoTracking  += new EventHandler <EventArgs>(this.OnBuscarEquipoTracking);
            View.exportarTracking      += new EventHandler <EventArgs>(this.OnexportarTracking);

            //Recibo
            View.BuscarRegistrosRecibo     += this.OnBuscarRegistrosRecibo;
            View.BuscarNombreMaterial      += this.OnBuscarNombreMaterial;
            View.ActualizarRegistrosRecibo += this.OnActualizarRegistrosRecibo;
            View.ConfirmarRecibo           += this.OnConfirmarRecibo;

            //ConfirmarMovimiento
            #endregion

            #region Datos

            View.Model.HeaderDocument = new Document();
            View.Model.RecordCliente  = service.GetLocation(new Location {
                LocationID = App.curLocation.LocationID
            }).First();
            View.Model.ListBinEntradaAlmacen = service.GetBin(new Bin {
                BinID = 4
            });

            try { Local = service.GetConnection(new Connection {
                    Name = "LOCAL"
                }).First(); }
            catch { }

            View.Model.ListadoEstatusLogPro = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "LOGPROSTAT"
                }
            });
            View.Model.ListadoPosiciones = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "POSICION1"
                }
            });
            //View.Model.ListadoModelos = service.GetMMaster(new MMaster { MetaType = new MType { Code = "DRIRECMODE" } });
            View.Model.ListadoOrigen = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "ALIADO"
                }
            });
            View.Model.ListadoTipoOrigen = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "REMISIONRR"
                }
            });
            View.Model.ListadoTipoREC = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "REC"
                }
            });
            View.Model.ListadoFallas = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "FALLADIA"
                }
            });
            View.Model.ListadoMotScrap = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "MOTSCRAP"
                }
            });
            View.Model.ListadoEstadoRR = service.GetMMaster(new MMaster {
                MetaType = new MType {
                    Code = "ESTADO RR"
                }
            });

            //View.Model.ListadoProductos = service.GetProduct(new Product());

            //Utilizar el service.GetProduct genera un retardo muy grande en la carga de la vista asi que se utiliza de la siguiente manera para evitar retardos

            DataTable aux = service.DirectSQLQuery("select brand,ProductID,ProductCode,Manufacturer from Master.Product", "", "Master.Product", Local);

            List <WpfFront.WMSBusinessService.Product> list = aux.AsEnumerable()
                                                              .Select(row => new WpfFront.WMSBusinessService.Product
            {
                ProductID    = Convert.ToInt32(row["ProductID"]),
                Brand        = row["brand"].ToString(),
                ProductCode  = row["ProductCode"].ToString(),
                Manufacturer = row["Manufacturer"].ToString()
            }).ToList <WpfFront.WMSBusinessService.Product>();

            View.Model.ListadoProductos = list;
            /////////////////////////////////////////////////////////////////////////////////////

            View.Model.ListadoEquipos = service.DirectSQLQuery("exec sp_GetProcesos2 'HISTORICOSERIAL'", "", "dbo.movimientoclaro", Local);

            #endregion
        }