public ConSeguridadFisica getContrato(int NumeroContrato) { ConSeguridadFisica aux = null; try { ContraToS con = datos.obtenerContrato(NumeroContrato); string[] HsExtXDia = null; if (con.HorasComunesDeterminadas == 1) { HoRaSComUnescoNtRatOs hec = datos.obtenerHorasExtrasContrato(con.IDContratos); HsExtXDia = new string[7]; HsExtXDia[0] = hec.Lunes; HsExtXDia[1] = hec.Martes; HsExtXDia[2] = hec.Miercoles; HsExtXDia[3] = hec.Jueves; HsExtXDia[4] = hec.Viernes; HsExtXDia[5] = hec.Sabado; HsExtXDia[6] = hec.Domingo; } aux = new ConSeguridadFisica((con.PagaDescanso == (sbyte)1) ? true : false, (con.HorasExtras == (sbyte)1) ? true : false, 0, 0, 0, con.FechaIni.Value, con.FechaFin, con.Ajuste, con.Observaciones, (con.CostoFijo == (sbyte)1) ? true : false, con.Costo.Value, con.PagarExtrasDespuesDeHs, (con.HorasComunesDeterminadas == 1) ? true : false, HsExtXDia); LineaDeHoras lhs = null; HorarioXDia hor = null; foreach (LineAshOrAs lh in con.LineAshOrAs) { lhs = new LineaDeHoras(lh.Puesto, (lh.Armado == (sbyte)1) ? true : false, lh.PrecioXhOra.Value, (int)(lh.Cantidad), 0, 0); foreach (HoRaRioDiA h in lh.HoRaRioDiA) { if (h.IDContrato == lh.IDContrato && h.NroLinea == lh.NroLinea) { hor = new HorarioXDia(h.Dia, h.HoraIni, h.HoraFin); lhs.addDia(hor); } } aux.addLinea(lhs); } } catch (Exception ex) { throw ex; } return aux; }
private void GuardarBTN_Click(object sender, EventArgs e) { try { bcUC.Focus(); if (checkDatosObligatorios()) { int numCli = int.Parse(bcUC.ClienteNRO); int numSer = int.Parse(NroMTB.Text); DateTime dti = DateTime.ParseExact(FIniMTB.Text, @"dd/MM/yyyy", DateTimeFormatInfo.InvariantInfo); DateTime? dtf = null; if (FinCKB.Checked) dtf = DateTime.ParseExact(FFinMTB.Text, @"dd/MM/yyyy", DateTimeFormatInfo.InvariantInfo); bool costo = (CostoCB.SelectedItem.ToString() == "Fijo"); bool hx = HorasExtrasCHK.Checked; bool pd = PagaDescansoCKBX.Checked; float monto = 0; if (MontoTB.Text != "") monto = int.Parse(MontoTB.Text); int nroCon = CalcNroContrato(numCli, numSer); int? PagarExtrasLuegoDeHs; if (hx) PagarExtrasLuegoDeHs = int.Parse(cmbDespuesDeHs.SelectedItem.ToString()); else PagarExtrasLuegoDeHs = null; bool HsExtrasDet = DetHorasComunesCB.Checked; string[] HsExtXDia = null; if (HsExtrasDet) { ValidarHorasComunesDGV(); HsExtXDia = new string[7]; for (int i = 0; i < 7; i++) { HsExtXDia[i] = HorasComunesDGV.Rows[0].Cells[i].Value.ToString(); } } ConSeguridadFisica con = new ConSeguridadFisica(pd, hx, 0, 0, 0, dti, dtf, AjusteTB.Text, ObsTB.Text, costo, monto, PagarExtrasLuegoDeHs, HsExtrasDet, HsExtXDia); // ACA GUARDO TODOS LOS DATOS DEL DATAGRIDVIEW LineaDeHoras linea = null; HorarioXDia hor = null; DataGridViewCell cel = null; string precio; foreach (DataGridViewRow fila in CargaHorariaDGV.Rows) { if (fila.Cells[0].RowIndex + 1 < CargaHorariaDGV.RowCount) { if (fila.Cells["Armado"].Value == null) fila.Cells["Armado"].Value = "0"; precio = fila.Cells["PrecioXHora"].Value.ToString().Split(' ')[1]; linea = new LineaDeHoras(fila.Cells["Puesto"].Value.ToString(), (fila.Cells["Armado"].Value.ToString() == "1") ? true : false, float.Parse(precio), int.Parse(fila.Cells["Cantidad"].Value.ToString()), 0, 0); for (int i = 0; i < 7; i++) { cel = fila.Cells[dias[i]]; if (cel.Value.ToString() != @"N/T") { hor = new HorarioXDia(dias[i], obtHIni(cel.Value.ToString()), obtHFin(cel.Value.ToString())); linea.addDia(hor); } } con.addLinea(linea); } } if (datos.existeContrato(nroCon)) sistema.modificarContrato(nroCon, con); else sistema.altaContrato(nroCon, con); MessageBox.Show("Datos guardados correctamente.", "Guardado de Datos", MessageBoxButtons.OK, MessageBoxIcon.Information); /* if (datos.existeContrato(nroCon)) datos.modificarContrato(nroCon, dti, dtf, costo, hx, AjusteTB.Text, ObsTB.Text, monto); else sistema.altaContratoServicioCliente(numCli, numSer, CalcNroContrato(numCli,numSer), dti, dtf, costo, hx, AjusteTB.Text, ObsTB.Text, monto); */ //CancelarBTN.PerformClick(); } else MessageBox.Show(this, msgError, "Contrato no válido", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception ex) { MessageBox.Show(this, ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }