Пример #1
0
        public List<Actividades_Inmueble> ListActInmuebleId(int id)
        {
            try
            {
                List<Actividades_Inmueble> lisb = bd.Actividades_Inmueble.Where(t =>  t.id== id).ToList();
                //bd.compromisosxcuota.ToList();
                List<Actividades_Inmueble> lisbcrm = new List<Actividades_Inmueble>();
                if (lisb.Count.Equals(0))
                {
                    return lisbcrm;
                }
                else
                {
                    foreach (var item in lisb)
                    {
                        Actividades_Inmueble entb = new Actividades_Inmueble();
                        entb.id = item.id;
                        entb.Nombre = item.Nombre;
                        entb.Descripcion = item.Descripcion;
                        entb.IdTraInmueble = item.IdTraInmueble;
                        entb.ActividadDependiente = item.ActividadDependiente;
                        entb.IdActividad = item.IdActividad;
                        entb.Duracion = item.Duracion;
                        entb.Simultaneo = item.Simultaneo;
                        entb.FechaInicio = item.FechaInicio;
                        entb.FechaFin = item.FechaFin;
                        entb.Posicion = item.Posicion;
                        entb.Estado = item.Estado;
                        lisbcrm.Add(entb);
                    }
                    return lisbcrm;
                }
            }
            catch (Exception)
            {

                throw;
            }
        }
Пример #2
0
        public string Actualizar(string b)
        {
            var bandera = 0;
            var bandera2 = 0;
            try
            {
                List<VInmueblesConTramites> vimp = bd.VInmueblesConTramites.OrderBy(l => l.INMUEBLE)
                    .Where(t => t.PROYECTO_INT == b && t.IdTramite == null).ToList();
                List<VInmueblesConTramites> Evimp = new List<VInmueblesConTramites>();
                if (vimp.Count().Equals(0))
                {

                    return "Todos los inmuebles ya tienen tramite";
                }
                else
                {
                    foreach (var item in vimp)
                    {
                        var tramite = bd.Tramites.Where(t => t.Banco == item.BANCO).First();
                        bandera = 0;
                        if (tramite != null)
                        {
                            Tramites_Inmueble tra = new Tramites_Inmueble();
                            tra.id_Tramite = tramite.id;
                            tra.Porcentaje = 0;
                            tra.Id_Inmueble = item.REFERENCIA;
                            var a = bd.Tramites_Inmueble.Add(tra);
                            int estado = bd.SaveChanges();

                            if (estado > 0)
                            {

                                var actividadesxtramite = bd.VActxtramite
                                    .Where(t => t.Id_tramite == tramite.id)
                                    .OrderBy(t => t.Posicion).ToList();

                                foreach (var actividad in actividadesxtramite)
                                {

                                    //sds
                                    Actividades_Inmueble actinmueble = new Actividades_Inmueble();
                                    actinmueble.IdTraInmueble = a.id;
                                    actinmueble.Nombre = actividad.Actividad;
                                    actinmueble.Descripcion = actividad.Descripcion;
                                    actinmueble.Duracion = actividad.Duracion;
                                    actinmueble.Simultaneo = actividad.Simultaneo;
                                    if (actinmueble.Simultaneo == 1)
                                    {
                                        if (bandera2 == 2)
                                        {
                                            bandera2 = 1;
                                        }
                                    }
                                    actinmueble.Posicion = actividad.Posicion;
                                    actinmueble.IdActividad = actividad.Id_Actividad;

                                    if (bandera == 1)
                                    {
                                        actinmueble.Estado = 1;
                                        actinmueble.FechaInicio = null;
                                        actinmueble.FechaFin = null;
                                        if (bandera2 == 1)
                                        {
                                            actinmueble.FechaInicio = DateTime.Now;
                                            actinmueble.Estado = 3;
                                            if (actividad.Duracion != null)
                                            {
                                                actinmueble.FechaFin = DateTime.Now.AddDays(Convert.ToDouble(actividad.Duracion));
                                            }
                                            bandera2 = 2;
                                        }
                                        else
                                        {
                                            bandera2 = 0;
                                        }

                                    }
                                    else
                                    {
                                        actinmueble.Estado = 3;
                                        actinmueble.FechaInicio = DateTime.Now;

                                        if (actividad.Duracion != null)
                                        {
                                            actinmueble.FechaFin = DateTime.Now.AddDays(Convert.ToDouble(actividad.Duracion));
                                        }
                                        bandera2 = 2;
                                    }

                                    actinmueble.ActividadDependiente = actividad.Actividad_Dependiente;

                                    bd.Actividades_Inmueble.Add(actinmueble);
                                    bd.SaveChanges();
                                    bandera = 1;

                                }

                            }
                            else
                            {
                                return "Este banco no tiene tramites";
                            }

                        }

                    }
                    // aca se registran los documentos
                    var documentosxactividad = bd.VDocumentosActividades.ToList();

                    foreach (var documento in documentosxactividad)
                    {
                        Documento_ActInmueble docuinmueble = new Documento_ActInmueble();
                        docuinmueble.IdActividad = documento.idactividad;
                        docuinmueble.Documento = null;
                        docuinmueble.Nombre = documento.Nombre;
                        docuinmueble.Fecha = null;
                        docuinmueble.Usuario = null;
                        bd.Documento_ActInmueble.Add(docuinmueble);
                        bd.SaveChanges();

                    }
                    return "Se han actualizado";
                }
            }

            catch (Exception ex)
            {
                return mensaje = "No fue posible llevar  a cabo el proceso" + ex;
                throw;
            }
        }
Пример #3
0
        public string UpdateActInmueble(int i, int id,int idtramiteinmueble)
        {
            var bandera = 0;
            var bandera2 = 0;
            int? posicion = 0;
            try
            {
                //cambiamos el estado de la activadad completada
                var ctx = bd.Actividades_Inmueble.First(inm => inm.id == id);
                    ctx.Estado = i;
                    bd.SaveChanges();

                //recorro toda la tabla actividad_inmueble para inicar la siguiente actividad
                List<Actividades_Inmueble> lisb = bd.Actividades_Inmueble.Where(t => t.IdTraInmueble == idtramiteinmueble).ToList();
                foreach (var item in lisb)
                {
                    Actividades_Inmueble entb = new Actividades_Inmueble();
                    if (bandera == 1) // esto es si es la actividad siguiente a la completada
                    {
                        if (item.Estado != 2)
                        {
                            // si es simultaneo se sigue recorriendo hasta queno sea simultaneo
                            if (item.Simultaneo == 1)
                            {
                                bandera = 1;
                                bandera2 = 2;
                                var ctx2 = bd.Actividades_Inmueble.First(inm => inm.id == item.id);

                                ctx2.FechaInicio = DateTime.Now;

                                if (item.Duracion != null)
                                {
                                    ctx2.FechaFin = DateTime.Now.AddDays(Convert.ToDouble(item.Duracion));
                                }
                                ctx2.Estado = 3;
                                bd.SaveChanges();// inicio la nueva actividad cambiando el estado a pendiente
                            }
                            else {
                                if (bandera2 == 1)
                                {
                                    var ctx2 = bd.Actividades_Inmueble.First(inm => inm.id == item.id);

                                    ctx2.FechaInicio = DateTime.Now;

                                    if (item.Duracion != null)
                                    {
                                        ctx2.FechaFin = DateTime.Now.AddDays(Convert.ToDouble(item.Duracion));
                                    }
                                    ctx2.Estado = 3;
                                    bd.SaveChanges();// inicio la nueva actividad cambiando el estado a pendiente
                                    bandera2 = 2;
                                }
                                bandera = 2;
                            }
                        }

                    }
                    else {
                            if (item.id == id)
                            {
                                bandera = 1;
                                bandera2 = 1;
                                posicion = item.Posicion;
                            }

                        }
                    // validamos que la actividad sea dependiente de la actividad completada
                    if(bandera == 2)
                    {
                        if (item.ActividadDependiente == posicion)
                        {
                            var ctx3 = bd.Actividades_Inmueble.First(inm => inm.id == item.id);
                            ctx3.FechaInicio = DateTime.Now;
                            if (item.Duracion != null)
                            {
                                ctx3.FechaFin = DateTime.Now.AddDays(Convert.ToDouble(item.Duracion));
                            }
                            ctx3.Estado = 3;
                            bd.SaveChanges();
                            bandera = 1;
                        }
                        else
                        {
                            bandera = 2;
                        }
                    }
                }

                // recorrer para ver si

                return mensaje = "Se actualizo el estado de manera exitosa";
            }

            catch (Exception ex)
            {
                return mensaje = "No fue posible llevar  a cabo el proceso" + ex;
                throw;
            }
        }