Example #1
0
        async protected static void Execute(InteraccionModel <InteraccionBusiness> interaccion)
        {
            _isExecuting = true;
            try
            {
                string caption = "Acceso a la ediciĆ³n del formulario";

                if (interaccion.Motivo == null || interaccion.Negocio == null)
                {
                    string msg = "Para proceder a completar el formulario,\r\ndebe seleccionar un motivo y negocio (negocio por segmento).";
                    CRMMessageBox.Show(msg, caption, MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }


                FormularioModel frm = InteraccionBusiness.GetFormularioXSeleccion(interaccion.Motivo, interaccion.Negocio);

                if (frm == null)
                {
                    string msg = "El grupo de motivo, segmento y negocio seleccionado\r\nno posee formulario asociado.";
                    CRMMessageBox.Show(msg, caption, MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }

                // Es formulario nuevo?
                if (interaccion.Formulario_CodigoSAP == null || interaccion.Formulario_CodigoSAP != frm.CodigoSAP)
                {
                    // Set el nuevo formulario
                    interaccion.Formulario = frm;
                }

                App.Locator.FormularioViewModelStatic.FormularioActual = FormularioModel <FormularioCheckListBusiness> .Create(interaccion.Formulario);

                NavigationHelper.Navigate <FormularioView>();
            }
            catch (Exception ex)
            {
                App.CurrentLoggingContext.LogException(ex);
            }
            finally
            {
                _isExecuting = false;
            }
        }
Example #2
0
        public static FormularioModel GetFormularioXSeleccion(MotivoModel motivo, NegocioModel negocio)
        {
            Query supQuery = new Query();

            CompositeTest where = new CompositeTest();
            where.SetOperator(CompositeTest.AND);
            where.Add(new AttributeTest("idMotivo", motivo.IdMotivo, AttributeTest.EQUAL));
            where.Add(new AttributeTest("idNegocio", negocio.IdNegocio, AttributeTest.EQUAL));

            supQuery.Where(where);

            GenericList <SeleccionFormulario> seleccionFormulario = SeleccionFormulario.FindWithQuery(supQuery);

            if (seleccionFormulario.Size() > 0)
            {
                return(FormularioModel.Create(seleccionFormulario[0].Formulario));
            }
            else
            {
                return(null);
            }
        }
Example #3
0
        private void loadFormularios()
        {
            DispatcherHelper.UIDispatcher.Invoke(() =>
            {
                Formularios.Clear();
                var interaccion = App.Locator.InteraccionViewModelStatic.InteraccionActual;
                switch ((Enums.eFormulario)FormularioActual.IdFormulario)
                {
                case Enums.eFormulario.CHECK_COMERCIAL:
                case Enums.eFormulario.CHECK_COMERCIAL_RETAIL:
                case Enums.eFormulario.CHECK_VISITA_RETAIL:
                case Enums.eFormulario.CHECK_VISITA_INTEGRAL:
                case Enums.eFormulario.CHECK_VISITA_ESPECIALISTA:
                case Enums.eFormulario.PLAN_VENTA:
                    var frm = FormularioModel <FormularioCheckListBusiness> .Create(interaccion.Formulario);
                    App.Locator.FormularioCheckListViewModelStatic.FormIsReadOnly    = this.FormIsReadOnly;
                    App.Locator.FormularioCheckListViewModelStatic.FormularioActual  = frm;
                    App.Locator.FormularioCheckListViewModelStatic.InteraccionActual = interaccion;
                    Formularios.Add(new FormularioCheckListView());
                    break;

                case Enums.eFormulario.MERCADO:
                    if (interaccion.FormularioMercado == null)
                    {
                        interaccion.FormularioMercado             = new FormularioMercadoModel();
                        interaccion.FormularioMercado.Interaccion = (InteraccionModel)interaccion;
                    }

                    App.Locator.FormularioMercadoViewModelStatic.FormIsReadOnly          = this.FormIsReadOnly;
                    App.Locator.FormularioMercadoViewModelStatic.FormularioMercadoActual = interaccion.FormularioMercado;
                    Formularios.Add(new FormularioMercadoView());
                    break;

                case Enums.eFormulario.PRECIOS:
                    if (interaccion.FormularioPrecios == null)
                    {
                        interaccion.FormularioPrecios             = new FormularioPreciosModel();
                        interaccion.FormularioPrecios.Interaccion = (InteraccionModel)interaccion;
                    }

                    App.Locator.FormularioPreciosViewModelStatic.FormIsReadOnly          = this.FormIsReadOnly;
                    App.Locator.FormularioPreciosViewModelStatic.FormularioPreciosActual = interaccion.FormularioPrecios;
                    Formularios.Add(new FormularioPreciosView());
                    break;

                case Enums.eFormulario.TRANSPORTE:
                    if (interaccion.FormularioTransporte == null)
                    {
                        interaccion.FormularioTransporte             = new FormularioTransporteModel();
                        interaccion.FormularioTransporte.Interaccion = (InteraccionModel)interaccion;
                    }

                    App.Locator.FormularioTransporteViewModelStatic.FormIsReadOnly             = this.FormIsReadOnly;
                    App.Locator.FormularioTransporteViewModelStatic.FormularioTransporteActual = interaccion.FormularioTransporte;
                    Formularios.Add(new FormularioTransporteView());
                    break;

                default:
                    break;
                }
            });
        }