示例#1
0
		private void ContraToS_Detach(ContraToS entity)
		{
			entity.TipOContraToS = null;
		}
示例#2
0
		private void ContraToS_Attach(ContraToS entity)
		{
			entity.TipOContraToS = this;
		}
        public void altaContratoServicioCliente(int NumeroCliente, int NumeroServicio, int NumeroContrato, DateTime FechaInicio, DateTime FechaFin, bool CostoFijo, bool HorasExtras, string Ajuste, string Observaciones, float Monto)
        {

            ContraToS con = null;

            try
            {
                con = new ContraToS();

                con.TipodeContrato = 0;
                con.IDContratos = (uint)NumeroContrato;
                con.FechaIni = FechaInicio;
                con.FechaFin = FechaFin;
                if (CostoFijo)
                    con.CostoFijo = 1;
                else
                    con.CostoFijo = 0;
                if (HorasExtras)
                    con.HorasExtras = 1;
                else
                    con.HorasExtras = 0;
                con.Ajuste = Ajuste;
                con.Observaciones = Observaciones;
                con.Costo = Monto;

                Table<ContraToS> tablaContratos = database.GetTable<ContraToS>();
                tablaContratos.InsertOnSubmit(con);

                database.SubmitChanges();
            }
            catch (MySqlException ex)
            {
                //database.Refresh(System.Data.Linq.RefreshMode.KeepCurrentValues);
                // database.Connection.Close();
                if (ex.Number == 1062)
                {
                    // int index = database.GetChangeSet().Inserts.IndexOf(cliente);
                    // database.GetChangeSet().Inserts.RemoveAt(index);
                    database.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues);
                }
                throw ex;
            }
        }
        private void mtServicio_KeyDown(object sender, KeyEventArgs e)
        {

            if (mtCliente != null && mtServicio.Text != "" && (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Tab))
            {
                if (nroClienteCargado != null)
                {
                    // seteo el servicio.                
                    SERVicIoS servicio;

                    try
                    {
                        int nroCliente = nroClienteCargado.Value;                        
                        int nroServicio = int.Parse(mtServicio.Text);
                        limpiarForm();
                        LimpiarHporCubrir();

                        //servicio = getServicioCliente(nroCliente, nroServicio);

                        if (datos.existeClienteServicio(nroCliente, nroServicio))
                        {
                            servicio = datos.obtenerServicioCliente(nroCliente, nroServicio);
                            nroServicioCargado = nroServicio;
                            txtServicio.Text = servicio.Nombre;

                            // TRAEMOS EL CONTRATO
                            con = datos.obtenerContrato(nroCliente, nroServicio);

                            cargarVentana(nroCliente, nroServicio);
                        }
                        else
                        {
                            GuardarBTN.Enabled = false;
                            VerContratoBTN.Enabled = false;
                            GraficosPL.Visible = false;
                            splitContainer1.Panel2.Enabled = false;                            
                            MessageBox.Show("No existe el servicio número " + nroServicio + " en el cliente " + nroCliente);
                        }
                        
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }else
                {
                    MessageBox.Show("Debe cargar el cliente primero.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else if (e.KeyCode == Keys.F2)
            {
                
                // abro la ventana de busqueda de servicios.                
                //btnBuscarServicios.PerformClick();
            }
           
        }
        public void altaContrato(int NumeroContrato, ConSeguridadFisica cont)
        {
            ContraToS con = null;
      
            con = new ContraToS();
            
            con.TipodeContrato=0;
            con.IDContratos = (uint)NumeroContrato;
            con.FechaIni = cont.getFechaIni();
            con.FechaFin = cont.getFechaFin();
            if (cont.GetCostoFijo())
                con.CostoFijo = 1;
            else
                con.CostoFijo = 0;
            if (cont.getHorasExtras())
            {
                con.HorasExtras = 1;
                con.PagarExtrasDespuesDeHs = (short)cont.getPagarExtrasDespuesDeHs().Value;                
            }
            else
                con.HorasExtras = 0;

            if (cont.getPagaDescanso())
                con.PagaDescanso = 1;
            else
                con.PagaDescanso = 0;
                
            con.Ajuste = cont.getAjuste();
            con.Observaciones = cont.getObservaciones();
            con.Costo = cont.getMonto();

            List<LineAshOrAs> lhs = new List<LineAshOrAs>();
            LineAshOrAs lh = null;            
            int i=0;
            foreach (LineaDeHoras ldh in cont.getLineas())
            {
                lh = new LineAshOrAs();
                lh.IDContrato = (uint)NumeroContrato;                
                lh.NroLinea = (sbyte)i;
                lh.Puesto = ldh.getPuesto();
                lh.Armado = (ldh.getArmado()) ? (sbyte)1 : (sbyte)0;
                lh.Cantidad = (sbyte)ldh.getCantEmp();
                lh.PrecioXhOra = ldh.getCostoH();
                
                //pasar los horarios por dia
                HoRaRioDiA hd = null;
                foreach (HorarioXDia hpd in ldh.getHorario())
                {
                    hd = new HoRaRioDiA();
                    hd.IDContrato = (uint)NumeroContrato;
                    hd.NroLinea = (sbyte)i;
                    hd.Dia = hpd.getDia();
                    hd.HoraIni = hpd.getHoraIni();
                    hd.HoraFin = hpd.getHoraFin();

                    lh.HoRaRioDiA.Add(hd);
                }
                
                lhs.Add(lh);
                //con.LineAshOrAs.Add(lh);
                i++;
            }

            HoRaSComUnescoNtRatOs HsExt = null;
            con.HorasComunesDeterminadas = (cont.getHorasComunesDeterminadas()) ? (sbyte)1 : (sbyte)0;
            if (cont.getHorasComunesDeterminadas())
            {
                string[] heXdia = cont.getHorasExPorDia();

                HsExt = new HoRaSComUnescoNtRatOs();
                HsExt.IDContraToS = (uint)NumeroContrato;
                HsExt.Lunes = heXdia[0];
                HsExt.Martes = heXdia[1];
                HsExt.Miercoles = heXdia[2];
                HsExt.Jueves = heXdia[3];
                HsExt.Viernes = heXdia[4];
                HsExt.Sabado = heXdia[5];
                HsExt.Domingo = heXdia[6];
            }
            datos.altaContrato(con, lhs, HsExt);
        }