/// <summary>
        /// Se asocia una obra a la empresa actual
        /// </summary>
        /// <param name="_asoc"></param>
        public static void asociarEmpresaAObra(EmpresaEnObra _asoc)
        {
            recso2011DBEntities gestor = claseIntercambio.getGestor();

            gestor.AddToEmpresaEnObras(_asoc);
            gestor.SaveChanges(System.Data.Objects.SaveOptions.AcceptAllChangesAfterSave);
        }
Example #2
0
        /// <summary>
        /// Guarda el listado de obras para una empresa en la base de datos
        /// </summary>
        /// <param name="_listado"></param>
        /// <param name="_idEmpresa"></param>
        public static void guardarListadoObrasEmpresa(List <Obra> _listado, long _idEmpresa)
        {
            recso2011DBEntities gestor        = claseIntercambio.getGestor();
            List <Obra>         obrasActuales = gestionObras.listarObrasDeEmpresa(_idEmpresa);
            EmpresaEnObra       emp           = null;


            //borrar las obras
            foreach (Obra obra in obrasActuales)
            {
                var empes = (from t in gestor.EmpresaEnObras
                             where t.recnumObra == obra.recnum && t.recnumEmpresa == _idEmpresa
                             select t);
                foreach (var borrar in empes)
                {
                    gestor.EmpresaEnObras.DeleteObject(borrar);
                }

                gestor.SaveChanges(System.Data.Objects.SaveOptions.AcceptAllChangesAfterSave);
            }

            //agregar las obras como nuevas
            foreach (Obra obra in _listado)
            {
                emp               = new EmpresaEnObra();
                emp.recnumObra    = obra.recnum;
                emp.recnumEmpresa = _idEmpresa;

                //FECHA INICIO NO PUEDE SER NULL
                if (obra.finicioObra == null)
                {
                    obra.finicioObra = DateTime.Today.ToShortDateString();
                }

                emp.fechaInicio = obra.finicioObra;
                if (obra.ffinObra != null)
                {
                    emp.fechaFin = obra.ffinObra;
                }
                else
                {
                    emp.fechaFin = "";
                }

                gestor.AddToEmpresaEnObras(emp);
                gestor.SaveChanges(System.Data.Objects.SaveOptions.AcceptAllChangesAfterSave);
            }
        }