Example #1
0
        async void bk_DoWorkE()
        {
            ej = await EjecucionMemoria.Finalizar(ExecGlobal, ApplicationContext);

            if (ej == 1)
            {
                //quitar de memoria Ejecucion
                EjecucionMemoria.QuitarMemoriaEjecucion(ExecGlobal.ODTID);
                EjecucionMemoria.QuitarMemoriaGlobal(ExecGlobal.ODTID);


                //quitar de memoria global

                _progressDialog.Hide();
                Toast.MakeText(ApplicationContext, "La orden de trabajo se finalizó  correctamente", ToastLength.Long).Show();
                _progressDialog.Show();
                CargarInformacion();
            }
            else
            {
                _progressDialog.Hide();
                Toast.MakeText(ApplicationContext, "La orden de trabajo no se finalizo", ToastLength.Long).Show();
                return;
            }
        }
Example #2
0
        async void bk_DoWorkC()
        {
            ca = await EjecucionMemoria.Cancelar(CancGlobal, ApplicationContext);

            if (ca == 1)
            {
                //quitar de memoria cancelacion
                EjecucionMemoria.QuitarMemoriaGlobal(CancGlobal.ODTID);
                EjecucionMemoria.QuitarMemoriaCancelacion(CancGlobal.ODTID);


                //quitar de memoria global
                if (ArrayODT != null && ArrayODT.Length > 0)
                {
                    var i = ArrayODT.ToList().FindIndex(x => x.ID == CancGlobal.ODTID);
                    if (i != -1)
                    {
                        ArrayODT.ToList().RemoveAt(i);
                        await Load();
                    }
                }

                _progressDialog.Hide();
                Toast.MakeText(ApplicationContext, "La orden de trabajo se canceló correctamente", ToastLength.Long).Show();

                _progressDialog.Show();
                CargarInformacion();
            }
            else
            {
                _progressDialog.Hide();
                Toast.MakeText(ApplicationContext, "La orden de trabajo no se finalizo", ToastLength.Long).Show();
                return;
            }
        }
Example #3
0
        async void bk_DoWorkP()
        {
            po = await EjecucionMemoria.Posponer(PospGlobal, ApplicationContext);

            if (po == 1)
            {
                //quitar de memoria posponer
                EjecucionMemoria.QuitarMemoriaPosponer(PospGlobal.ODTID);
                EjecucionMemoria.QuitarMemoriaGlobal(PospGlobal.ODTID);


                //quitar de memoria global
                //quitar de memoria global
                if (ArrayODT != null && ArrayODT.Length > 0)
                {
                    var i = ArrayODT.ToList().FindIndex(x => x.ID == PospGlobal.ODTID);
                    if (i != -1)
                    {
                        ArrayODT.ToList().RemoveAt(i);
                        await Load();
                    }
                }
                _progressDialog.Hide();
                Toast.MakeText(ApplicationContext, "La ODT se pospuso correctamente", ToastLength.Long).Show();
                _progressDialog.Show();
                CargarInformacion();
            }
            else
            {
                _progressDialog.Hide();
                Toast.MakeText(ApplicationContext, "La orden de trabajo no se finalizo", ToastLength.Long).Show();
                return;
            }
        }
Example #4
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;
            }
        }
Example #5
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;
            }
        }
Example #6
0
        public static async Task EjecutarMemoria(Context ApplicationContext)
        {
            try
            {
                List <DTOODTEjecucion>   ejecucion   = Utils.MemoriaEjecucion;
                List <DTOODTCancelacion> cancelacion = Utils.MemoriaCancelacion;
                List <DTOODTPospuesta>   pospone     = Utils.MemoriaPosponer;
                OperationClient          WS          = null;

                if (ejecucion != null)
                {
                    List <DTOODTEjecucion> NoExec = new List <DTOODTEjecucion> ();
                    int CountExec = 0;
                    foreach (DTOODTEjecucion insert in ejecucion)
                    {
                        try {
                            int detalle = await Utils.CargarFoto(insert.ODTID.ToString(), insert.CortaFoto.Foto, ApplicationContext, insert.CortaFoto.FechaCreacion.Day.ToString() + "/" + insert.CortaFoto.FechaCreacion.Month.ToString() + "/" + insert.CortaFoto.FechaCreacion.Year.ToString());

                            int mediana = await Utils.CargarFoto(insert.ODTID.ToString(), insert.MediaFoto.Foto, ApplicationContext, insert.MediaFoto.FechaCreacion.Day.ToString() + "/" + insert.MediaFoto.FechaCreacion.Month.ToString() + "/" + insert.MediaFoto.FechaCreacion.Year.ToString());

                            int larga = await Utils.CargarFoto(insert.ODTID.ToString(), insert.LargaFoto.Foto, ApplicationContext, insert.LargaFoto.FechaCreacion.Day.ToString() + "/" + insert.LargaFoto.FechaCreacion.Month.ToString() + "/" + insert.LargaFoto.FechaCreacion.Year.ToString());

                            if (detalle != 0 && mediana != 0 && larga != 0)
                            {
                                insert.CortaFotoID    = detalle;
                                insert.MediaFotoID    = mediana;
                                insert.LargaFotoID    = larga;
                                insert.CortaFoto.Foto = null;
                                insert.MediaFoto.Foto = null;
                                insert.LargaFoto.Foto = null;
                                WS = Utils.InitializeServiceClient();
                                OperationStatus Request = WS.InsertODTEjecucion(insert);
                                if (Request != null && Request.IsComplete)
                                {
                                    EjecucionMemoria.QuitarMemoriaGlobal(insert.ODTID);
                                    EjecucionMemoria.QuitarMemoriaEjecucion(insert.ODTID);
                                }
                                else
                                {
                                    NoExec.Add(ejecucion [CountExec]);
                                }
                            }
                            else
                            {
                                NoExec.Add(ejecucion [CountExec]);
                            }
                        } catch (Exception exc)
                        {
                            NoExec.Add(ejecucion [CountExec]);
                        }
                        finally {
                            if (WS != null)
                            {
                                WS.Close();
                            }
                        }
                        CountExec++;
                    }
                    Utils.MemoriaEjecucion = NoExec;
                }

                if (cancelacion != null)
                {
                    List <DTOODTCancelacion> NoCanc = new List <DTOODTCancelacion> ();
                    int CountCanc = 0;
                    foreach (DTOODTCancelacion insert in cancelacion)
                    {
                        try {
                            int detalle = await Utils.CargarFoto(insert.ODTID.ToString(), insert.Foto.Foto, ApplicationContext, insert.Foto.FechaCreacion.Day.ToString() + "/" + insert.Foto.FechaCreacion.Month.ToString() + "/" + insert.Foto.FechaCreacion.Year.ToString());

                            if (detalle != 0)
                            {
                                insert.FotoID    = detalle;
                                insert.Foto.Foto = null;
                                WS = Utils.InitializeServiceClient();
                                OperationStatus Request = WS.CancelODT(insert);
                                if (Request != null && Request.IsComplete)
                                {
                                    EjecucionMemoria.QuitarMemoriaGlobal(insert.ODTID);
                                    EjecucionMemoria.QuitarMemoriaCancelacion(insert.ODTID);
                                }
                                else
                                {
                                    NoCanc.Add(cancelacion [CountCanc]);
                                }
                            }
                            else
                            {
                                NoCanc.Add(cancelacion [CountCanc]);
                            }
                        } catch (Exception exc)
                        {
                            NoCanc.Add(cancelacion [CountCanc]);
                        }
                        finally {
                            if (WS != null)
                            {
                                WS.Close();
                            }
                        }
                        CountCanc++;
                    }
                    Utils.MemoriaCancelacion = NoCanc;
                }

                if (pospone != null)
                {
                    List <DTOODTPospuesta> NoPosp = new List <DTOODTPospuesta> ();
                    int CountPosp = 0;
                    foreach (DTOODTPospuesta insert in pospone)
                    {
                        try {
                            int detalle = await Utils.CargarFoto(insert.ODTID.ToString(), insert.Foto.Foto, ApplicationContext, insert.Foto.FechaCreacion.Day.ToString() + "/" + insert.Foto.FechaCreacion.Month.ToString() + "/" + insert.Foto.FechaCreacion.Year.ToString());

                            if (detalle != 0)
                            {
                                insert.FotoID    = detalle;
                                insert.Foto.Foto = null;
                                WS = Utils.InitializeServiceClient();
                                OperationStatus Request = WS.PostponeODT(insert);
                                if (Request != null && Request.IsComplete)
                                {
                                    EjecucionMemoria.QuitarMemoriaGlobal(insert.ODTID);
                                    EjecucionMemoria.QuitarMemoriaPosponer(insert.ODTID);
                                }
                                else
                                {
                                    NoPosp.Add(pospone [CountPosp]);
                                }
                            }
                            else
                            {
                                NoPosp.Add(pospone [CountPosp]);
                            }
                        } catch (Exception exc)
                        {
                            NoPosp.Add(pospone[CountPosp]);
                        }
                        finally {
                            if (WS != null)
                            {
                                WS.Close();
                            }
                        }
                        CountPosp++;
                    }
                    Utils.MemoriaPosponer = NoPosp;
                }
            }catch (Exception ex) {
                throw ex;
            }
        }