예제 #1
0
        private async Task CargarMemoria()
        {
            try{
                DTOODTCustom[] ArrayODTMem = Utils.Memoria;
                LinearLayout   linearPadre = FindViewById <LinearLayout>(Resource.Id.Layout_OrdenTrabajo);
                linearPadre.RemoveAllViews();


                foreach (DTOODTCustom ODTDet in ArrayODTMem)
                {
                    LinearLayout LY = new LinearLayout(this);
                    LY.Id          = ODTDet.ID;
                    LY.Orientation = Android.Widget.Orientation.Vertical;
                    LY.SetGravity(GravityFlags.Center);
                    TextView tvTitulo = new TextView(this);
                    tvTitulo.Text = ODTDet.Folio + " - " + ODTDet.NumeroVista;
                    tvTitulo.SetBackgroundResource(Resource.Drawable.ListViewOrden_Trabajo);
                    tvTitulo.Gravity = Android.Views.GravityFlags.Center;


                    switch (ODTDet.EstatusID)
                    {
                    case 113:                            //programada--blanco
                        tvTitulo.SetTextColor(Color.ParseColor(color[0]));
                        break;

                    case 114:                            //Ejecutada-Verde
                        tvTitulo.SetTextColor(Color.ParseColor(color[3]));
                        break;

                    case 115:                            //Ejecutada-Verde
                        tvTitulo.SetTextColor(Color.ParseColor(color[4]));
                        break;

                    case 116:                            //Ejecutada-Verde
                        tvTitulo.SetTextColor(Color.ParseColor(color[3]));
                        break;

                    case 117:                            //Cancelada --Rojo
                        tvTitulo.SetTextColor(Color.ParseColor(color [2]));
                        break;
                    }
                    if (ODTDet.EsPospuesta == true && ODTDet.EstatusID == 113)
                    {
                        tvTitulo.SetTextColor(Color.ParseColor(color [1]));
                    }

                    tvTitulo.Click += delegate
                    {
                        //primero preguntar si hay internet
                        //despues buscar la odt si se encuentra en memoria de ejecucion, cancelacion, pospuesta.
                        //al dar click que se haga el envio de la odt.
                        if (Utils.Internet(ApplicationContext))                          //Hay internet
                        {
                            if (ODTDet.EstatusID == 113 && ODTDet.EsPospuesta == false)
                            {
                                var    activityMain = new Intent(this, typeof(Orden_De_Trabajo));
                                string alan         = ODTDet.ToString();
                                activityMain.PutExtra("ODT", Utils.Serialize(typeof(DTOODTCustom), ODTDet));
                                StartActivityForResult(activityMain, 1);
                            }
                            else if (ODTDet.EstatusID == 113 && ODTDet.EsPospuesta == true)
                            {
                                DTOODTPospuesta pos = EjecucionMemoria.FindPospuesta(ODTDet);
                                if (pos != null)
                                {
                                    BKPospones(pos);
                                }
                                else
                                {
                                    var    activityMain = new Intent(this, typeof(Orden_De_Trabajo));
                                    string alan         = ODTDet.ToString();
                                    activityMain.PutExtra("ODT", Utils.Serialize(typeof(DTOODTCustom), ODTDet));
                                    StartActivityForResult(activityMain, 1);
                                }
                            }
                            else if (ODTDet.EstatusID == 114)
                            {
                                DTOODTEjecucion Exec = EjecucionMemoria.FindEjecucion(ODTDet);
                                if (Exec != null)
                                {
                                    BKEjecucion(Exec);
                                }
                                else
                                {
                                    Toast.MakeText(this, "No cuentas con internet para el envio de ODT, solo se pueden modificar ODT programadas", ToastLength.Long).Show();
                                    return;
                                }
                            }
                            else if (ODTDet.EstatusID == 117)
                            {
                                DTOODTCancelacion can = EjecucionMemoria.FindCancelacion(ODTDet);
                                if (can != null)
                                {
                                    BKCancelacion(can);
                                }
                                else
                                {
                                    Toast.MakeText(this, "No cuentas con internet para el envio de ODT, solo se pueden modificar ODT programadas", ToastLength.Long).Show();
                                    return;
                                }
                            }
                        }
                        else                          //No hay internet
                        {
                            if (ODTDet.EstatusID == 113 || (ODTDet.EstatusID == 113 && ODTDet.EsPospuesta == true))
                            {
                                var    activityMain = new Intent(this, typeof(Orden_De_Trabajo));
                                string alan         = ODTDet.ToString();
                                activityMain.PutExtra("ODT", Utils.Serialize(typeof(DTOODTCustom), ODTDet));
                                StartActivityForResult(activityMain, 1);
                            }
                            else
                            {
                                Toast.MakeText(this, "No cuentas con internet para el envio de ODT, solo se pueden modificar ODT programadas", ToastLength.Long).Show();
                                return;
                            }
                        }
                    };
                    tvTitulo.Clickable = true;
                    LY.AddView(tvTitulo, 410, 70);
                    linearPadre.AddView(LY, 410, 80);
                }
            }catch (Exception ex) {
                throw ex;
            }
        }
예제 #2
0
        async Task Load()
        {
            try{
                LinearLayout linearPadre = FindViewById <LinearLayout> (Resource.Id.Layout_OrdenTrabajo);
                linearPadre.RemoveAllViews();

                LinkedList <DTOODTCustom> ListaODT = new LinkedList <DTOODTCustom> ();
                foreach (DTOODTCustom ODTDet in ArrayODT)
                {
                    DTOODTCustom Find = Utils.FindODT(ODTDet);
                    LinearLayout LY   = new LinearLayout(this);


                    LinearLayout.LayoutParams linearLayoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MatchParent,
                                                                                                 LinearLayout.LayoutParams.MatchParent);

                    linearLayoutParams.SetMargins(0, 0, 0, 0);

                    LY.LayoutParameters = linearLayoutParams;


                    LY.Id          = ODTDet.ID;
                    LY.Orientation = Android.Widget.Orientation.Vertical;
                    LY.SetGravity(GravityFlags.Center);



                    TextView tvTitulo = new TextView(this);
                    tvTitulo.Text = ODTDet.Folio + " - " + ODTDet.NumeroVista;
                    tvTitulo.SetBackgroundResource(Resource.Drawable.ListViewOrden_Trabajo);
                    tvTitulo.Gravity = Android.Views.GravityFlags.Center;
                    if (Find == null)
                    {
                        if (ODTDet.EsPospuesta == true)
                        {
                            tvTitulo.SetTextColor(Color.ParseColor(color [1]));
                        }
                        else
                        {
                            tvTitulo.SetTextColor(Color.ParseColor(color [0]));
                        }
                        tvTitulo.Click += delegate
                        {
                            var activityMain = new Intent(this, typeof(Orden_De_Trabajo));
                            activityMain.PutExtra("ODT", Utils.Serialize(typeof(DTOODTCustom), ODTDet));
                            StartActivityForResult(activityMain, 1);
                        };
                        ListaODT.AddLast(ODTDet);
                    }
                    else
                    {
                        if (Find.EstatusID == 114)
                        {
                            DTOODTEjecucion Exec = EjecucionMemoria.FindEjecucion(Find);
                            if (Exec != null)
                            {
                                tvTitulo.SetTextColor(Color.ParseColor(color [3]));
                                tvTitulo.Click += delegate { BKEjecucion(Exec); };
                                ListaODT.AddLast(Find);
                            }
                            else
                            {
                                if (ODTDet.EsPospuesta == true)
                                {
                                    tvTitulo.SetTextColor(Color.ParseColor(color [1]));
                                }
                                else
                                {
                                    tvTitulo.SetTextColor(Color.ParseColor(color [0]));
                                }
                                tvTitulo.Click += delegate
                                {
                                    var activityMain = new Intent(this, typeof(Orden_De_Trabajo));
                                    activityMain.PutExtra("ODT", Utils.Serialize(typeof(DTOODTCustom), ODTDet));
                                    StartActivityForResult(activityMain, 1);
                                };
                                ListaODT.AddLast(ODTDet);
                            }
                        }
                        else if (Find.EstatusID == 113)
                        {
                            DTOODTPospuesta pos = EjecucionMemoria.FindPospuesta(Find);
                            if (pos != null)
                            {
                                tvTitulo.SetTextColor(Color.ParseColor(color [1]));
                                tvTitulo.Click += delegate { BKPospones(pos); };
                                ListaODT.AddLast(Find);
                            }
                            else
                            {
                                if (ODTDet.EsPospuesta == true)
                                {
                                    tvTitulo.SetTextColor(Color.ParseColor(color [1]));
                                }
                                else
                                {
                                    tvTitulo.SetTextColor(Color.ParseColor(color [0]));
                                }
                                tvTitulo.Click += delegate
                                {
                                    var activityMain = new Intent(this, typeof(Orden_De_Trabajo));
                                    activityMain.PutExtra("ODT", Utils.Serialize(typeof(DTOODTCustom), ODTDet));
                                    StartActivityForResult(activityMain, 1);
                                };
                                ListaODT.AddLast(ODTDet);
                            }
                        }
                        else if (Find.EstatusID == 117)
                        {
                            DTOODTCancelacion can = EjecucionMemoria.FindCancelacion(Find);
                            if (can != null)
                            {
                                tvTitulo.SetTextColor(Color.ParseColor(color [2]));
                                tvTitulo.Click += delegate {
                                    BKCancelacion(can);
                                };
                                ListaODT.AddLast(Find);
                            }
                            else
                            {
                                if (ODTDet.EsPospuesta == true)
                                {
                                    tvTitulo.SetTextColor(Color.ParseColor(color [1]));
                                }
                                else
                                {
                                    tvTitulo.SetTextColor(Color.ParseColor(color [0]));
                                }
                                tvTitulo.Click += delegate
                                {
                                    var activityMain = new Intent(this, typeof(Orden_De_Trabajo));
                                    activityMain.PutExtra("ODT", Utils.Serialize(typeof(DTOODTCustom), ODTDet));
                                    StartActivityForResult(activityMain, 1);
                                };
                                ListaODT.AddLast(ODTDet);
                            }
                        }
                    }

                    tvTitulo.Clickable = true;
                    LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MatchParent,
                                                                                LinearLayout.LayoutParams.MatchParent);

                    p.SetMargins(10, 0, 15, 20);
                    tvTitulo.LayoutParameters = p;
                    LY.AddView(tvTitulo);
                    linearPadre.AddView(LY);
                }
                Utils.Memoria = ListaODT.ToArray <DTOODTCustom>();
            }catch (Exception ex) {
                throw ex;
            }
        }