private void btnComp_Click(object sender, EventArgs e)
        {
            if ((int)MessageDialogResult.No == MessageDialog.ShowMessageDialog("Confirmacion", "¿Esta seguro que desea completar esta orden?\nYa no podra ser modificada", false))
            {
                return;
            }

            //Si la orden esta en proceso se agrega costo de mano de obra, en garantia no tiene costo
            if (Estado == OrdenStatus.PROCESO)
            {
                var aux = LaborCostDialog.ShowLaborCostDialog();

                if (!aux.Result)
                {
                    return;              //si no se asigno un valor valido no procede
                }
                OrdenMecanico ordenMecanico = OrdenMecanicoController.I.GetByIdOrden(Orden.Id);
                ordenMecanico.CostoManoObra = aux.Costo;
                ordenMecanico = OrdenMecanicoController.I.Edit(ordenMecanico);

                if (ordenMecanico == null)
                {
                    MessageBox.Show("No se puede cambiar el status, intente de nuevo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return;
                }
            }

            Orden.Status = Estado switch
            {
                OrdenStatus.PROCESO => (int)OrdenStatus.POR_ENTREGAR,
                OrdenStatus.GARANTIA => (int)OrdenStatus.GARANTIA_POR_ENTREGAR,
                _ => 0
            };

            Orden = OrdenController.I.Edit(Orden);

            if (Orden == null)
            {
                MessageBox.Show("No se puede cambiar el status, intente de nuevo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return;
            }

            //Agrega el estado de la orden al historial
            var saved = OrdenHistorialController.I.Add(new OrdenHistorial()
            {
                IdOrden     = Orden.Id,
                FechaStatus = DateTime.Now,
                Status      = Orden.Status,
            });

            if (saved == null)
            {
                MessageBox.Show("No se puede agregar al historial de ordenes", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            this.Dispose();
        }
Example #2
0
        private void InitOrdenMecanico(Entities db)
        {
            var ordenMecanico = new OrdenMecanico[]
            {
                new OrdenMecanico
                {
                    IdOrden       = 1,
                    IdMecanico    = 1,
                    CostoManoObra = 2000,
                },
            };

            foreach (var item in ordenMecanico)
            {
                db.OrdenMecanico.Add(item);
                db.SaveChanges();
            }
        }