def guardarComposicionFamiliar(request): if request.method == 'POST': if request.POST['cf_familiar_id'] == "": f = Familiar() f.beneficiario_id = request.POST['cf_beneficiario'] f.parentezco_id = request.POST['cf_parentezco'] f.nombres = request.POST['cf_nombres'] f.tipo_documento_id = request.POST['cf_tip_doc'] f.numero_documento = request.POST['cf_documento'] f.edad = request.POST['cf_edad'] f.nivel_escolaridad_id = request.POST['cf_escolaridad'] f.ocupacion_id = request.POST['cf_ocupacion'] f.sabe_leer = request.POST['cf_sabe_leer'] f.sabe_escribir = request.POST['cf_sabe_escribir'] f.estado_laboral_id = request.POST['cf_estado_laboral'] f.n_dias_labora = request.POST['cf_dias_semana'] f.n_horas_labora = request.POST['cf_horas'] f.condiciones_especiales = request.POST['cf_condiciones'] f.aporta_sustento = request.POST['cf_aporta_sustento'] f.estado_sgsss = request.POST['cf_estado_eps'] f.nombre_eps_id = request.POST['cf_eps'] f.save() b = Beneficiario.objects.get(id=request.POST['cf_beneficiario']) registrarLogs( request.user.first_name + " " + request.user.last_name, 'GUARDAR', 'Familiar', 'Familiar Creado Exitosamente', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) messages.success(request, 'g_composicion') else: f = Familiar.objects.get(id=request.POST['cf_familiar_id']) f.beneficiario_id = request.POST['cf_beneficiario'] f.parentezco_id = request.POST['cf_parentezco'] f.nombres = request.POST['cf_nombres'] f.tipo_documento_id = request.POST['cf_tip_doc'] f.numero_documento = request.POST['cf_documento'] f.edad = request.POST['cf_edad'] f.nivel_escolaridad_id = request.POST['cf_escolaridad'] f.ocupacion_id = request.POST['cf_ocupacion'] f.sabe_leer = request.POST['cf_sabe_leer'] f.sabe_escribir = request.POST['cf_sabe_escribir'] f.estado_laboral_id = request.POST['cf_estado_laboral'] f.n_dias_labora = request.POST['cf_dias_semana'] f.n_horas_labora = request.POST['cf_horas'] f.condiciones_especiales = request.POST['cf_condiciones'] f.aporta_sustento = request.POST['cf_aporta_sustento'] f.estado_sgsss = request.POST['cf_estado_eps'] f.nombre_eps_id = request.POST['cf_eps'] f.save() b = Beneficiario.objects.get(id=request.POST['cf_beneficiario']) registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Familiar', 'Familiar Actualizado Exitosamente', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) messages.success(request, 'a_composicion') return HttpResponseRedirect('/beneficiario/editar/' + str(request.POST['cf_beneficiario'])) else: return HttpResponseRedirect("/")
def eliminarOperario(request, id=None): if request.method == 'DELETE': if User.objects.filter(pk=request.user.id, groups__name=GRUPO1).exists(): usu = User.objects.get(id=id) operario = Operario.objects.get(id=id) try: conn = tinys3.Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_STORAGE_BUCKET_NAME, tls=True) lista = conn.list('media/operarios/' + str(id), AWS_STORAGE_BUCKET_NAME) for fichero in lista: conn.delete(fichero['key']) conn.delete('media/operarios/' + str(id)) except OSError as e: print(e) operario.delete() registrarLogs( request.user.first_name + " " + request.user.last_name, 'ELIMINAR', 'Operarios', 'Operario Eliminado Exitosamente', usu.first_name + " " + usu.last_name) usu.delete() messages.success(request, 'Borrado') return HttpResponse(status=200) else: return HttpResponseRedirect("/") else: return HttpResponseRedirect("/")
def eliminarBeneficiario(request, id=None): if request.method == 'DELETE': s = Salud.objects.filter(beneficiario=id) n = Nutricion.objects.filter(beneficiario=id) c = Cabeza_Nucleo.objects.filter(beneficiario=id) f = Familiar.objects.filter(beneficiario=id) v = CaracteristicasVivienda.objects.filter(beneficiario=id) b = Beneficiario.objects.get(id=id) try: conn = tinys3.Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_STORAGE_BUCKET_NAME, tls=True) lista = conn.list('media/beneficiarios/' + str(id), AWS_STORAGE_BUCKET_NAME) for fichero in lista: conn.delete(fichero['key']) conn.delete('media/beneficiarios/' + str(id)) except OSError as e: print(e) registrarLogs( request.user.first_name + " " + request.user.last_name, 'ELIMINAR', 'Beneficiarios', 'Beneficiario Eliminado Exitosamente', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) s.delete() n.delete() c.delete() f.delete() b.delete() messages.success(request, 'Borrado') return HttpResponse(status=200) else: return HttpResponseRedirect("/")
def guardarEntidad(request): if request.method == 'POST': e = Entidad_Administradora() e.nombre = request.POST['nombre_entidad'] e.tipo_documento_id = request.POST['tip_doc'] e.numero_documento = request.POST['numero_documento'] e.save() registrarLogs(request.user.first_name+" "+request.user.last_name,'GUARDAR','Entidad Administradora','Entidad Administradora Creada Exitosamente',e.nombre) messages.success(request, 'Creada') return HttpResponseRedirect('/entidades') else: return HttpResponseRedirect('/')
def actualizarEntidad(request): if request.method == 'POST': e = Entidad_Administradora.objects.get(id=request.POST['entidad_id']) e.nombre = request.POST['nombre_entidad'] e.tipo_documento_id = request.POST['tip_doc'] e.numero_documento = request.POST['numero_documento'] e.save() registrarLogs(request.user.first_name+" "+request.user.last_name,'ACTUALIZAR','Entidad Administradora','Entidad Administradora Actulizada Exitosamente',e.nombre) messages.success(request, 'Actualizada') return HttpResponseRedirect('/entidades') else: return HttpResponseRedirect('/')
def guardarOperario(request): if request.method == 'POST': if User.objects.filter(pk=request.user.id, groups__name=GRUPO1).exists(): usu = User() usu.username = request.POST['nombres'] + time.strftime("%H:%M:%S") usu.first_name = request.POST['nombres'] usu.last_name = request.POST['apellidos'] usu.email = request.POST['email'] usu.password = make_password("icbf2017") usu.is_active = True perfil = Group.objects.get(id=2) usu.save() usu.groups.add(perfil) operario = Operario() operario.id_id = usu.id operario.uds_id = request.POST['uds'] operario.genero = request.POST['genero'] operario.intentos = 5 operario.estado = "A" if request.POST['bandera_foto'] == "CAMBIO": operario.foto = request.FILES['archivo'] else: operario.foto = "media/operarios/no_photo.png" operario.direccion = request.POST['direccion'] operario.telefono = request.POST['telefono'] operario.celular = request.POST['celular'] operario.save() e = Eventos() e.uds = operario.uds e.detalle = "CREACIÓN DEL OPERARIO " + usu.first_name + " " + usu.last_name e.f_inicio = '1997-02-21' e.f_fin = '2017-02-21' e.tipo = "TAREAS" e.allday = True e.estado = "REALIZADA" e.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'GUARDAR', 'Operarios', 'Operario Creado Exitosamente', usu.first_name + " " + usu.last_name) messages.success(request, 'Creado') return HttpResponseRedirect('/operarios') else: return HttpResponseRedirect('/') else: return HttpResponseRedirect("/")
def actualizarOperario(request): if request.method == 'POST': if User.objects.filter(pk=request.user.id, groups__name=GRUPO1).exists(): usu = User.objects.get(id=request.POST['operario_id']) usu.first_name = request.POST['nombres'].encode('ascii', 'ignore') usu.last_name = request.POST['apellidos'].encode('ascii', 'ignore') usu.email = request.POST['email'] usu.save() operario = Operario.objects.get(id=request.POST['operario_id']) f_anterior = str(operario.foto) if request.POST['bandera_foto'] == "CAMBIO": operario.foto = request.FILES['archivo'] if f_anterior != ("media/operarios/no_photo.png"): try: conn = tinys3.Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, tls=True) conn.delete(f_anterior, AWS_STORAGE_BUCKET_NAME) except OSError as e: print(e) if int(request.POST['operario_id']) == request.user.id: request.session["foto"] = URL + "media/operarios/" + str( request.POST['operario_id']) + "/" + str(operario.foto) else: operario.foto = f_anterior operario.genero = request.POST['genero'] operario.direccion = request.POST['direccion'] operario.telefono = request.POST['telefono'] operario.celular = request.POST['celular'] if operario.id_id == request.user.id: messages.success(request, 'PerfilActualizado') redireccion = "/perfil" else: operario.uds_id = request.POST['uds'] messages.success(request, 'Actualizado') redireccion = "/operarios" registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Operarios', 'Operario Actualizado Exitosamente', usu.first_name + " " + usu.last_name) operario.save() return HttpResponseRedirect(redireccion) else: return HttpResponseRedirect('/') else: return HttpResponseRedirect('/')
def actualizar_password(request): if request.method == 'POST': id = request.user.id usu = User.objects.get(id=id) usu.password = make_password(request.POST['password']) usu.save() messages.success(request, 'Actualizado') registrarLogs(request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Operarios', 'Contraseña Actualizada Exitosamente', usu.first_name + " " + usu.last_name) return HttpResponseRedirect('/logout') else: return HttpResponseRedirect('/')
def actualizarUDS(request): if request.method == 'POST': u = UDS.objects.get(id=request.POST['id_uds']) u.entidad_id = request.POST['entidad'] u.nombre = request.POST['nombre_uds'] u.modalidad_id = request.POST['modalidad'] u.pais_id = request.POST['pais'] u.departamento_id = request.POST['departamento'] u.ciudad_id = request.POST['ciudad'] u.direccion = request.POST['direccion'] u.save() registrarLogs(request.user.first_name+" "+request.user.last_name,'ACTUALIZAR','UDS','Unidad del Servicio Actualizada Exitosamente',u.nombre) messages.success(request, 'Actualizada') return HttpResponseRedirect('/uds') else: return HttpResponseRedirect('/')
def activarOperario(request): if request.method == 'PUT': if User.objects.filter(pk=request.user.id, groups__name=GRUPO1).exists(): operario = Operario.objects.get(id=request.GET['id']) operario.estado = "A" operario.intentos = 5 operario.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Operarios', 'Intentos Reiniciados Exitosamente', operario.id.first_name + " " + operario.id.last_name) return HttpResponse("Operario Activado", status=200) else: return HttpResponse("Permisos Incorrectos", status=200) else: return HttpResponse("Solicitud Incorrecta", status=200)
def is_valid(self): if not super(FormLoginValidator, self).is_valid(): return False correo = self._post['txtEmail'] clave = self._post['txtPassword'] if User.objects.filter(email=correo).exists(): usuario = User.objects.get(email=correo) operario = Operario.objects.get(id=usuario.id) acceso = auth.authenticate(username=usuario, password=clave) self.acceso = acceso if acceso is None: if operario.intentos >= '1' and operario.estado != 'I': operario.intentos = int(operario.intentos) - 1 operario.save() self._message = 'CONTRASEÑA INCORRECTA\n' + 'Intentos Restantes: ' + str( operario.intentos) registrarLogs( usuario.first_name + ' ' + usuario.last_name, 'INICIO DE SESSIÓN', 'Login', 'Inicio de Sessión Fallido Contraseña Incorrecta', '') return False else: operario.estado = 'I' operario.save() self._message = 'INTENTOS SUPERADOS\n' + 'Contacta con el Administrador' registrarLogs(usuario.first_name + ' ' + usuario.last_name, 'CUENTA BLOQUEADA', 'Login', 'Intentos de Contraseña Superados', '') return False else: if operario.intentos >= '1' and operario.estado != 'I': operario.intentos = 5 operario.save() registrarLogs(usuario.first_name + ' ' + usuario.last_name, 'INICIO DE SESSIÓN', 'Login', 'Inicio de Sessión Exitoso', '') return True else: self._message = 'INTENTOS SUPERADOS\n' + 'Contacta con el Administrador' registrarLogs(usuario.first_name + ' ' + usuario.last_name, 'CUENTA BLOQUEADA', 'Login', 'Intentos de Contraseña Superados', '') return False else: self._message = 'El Correo NO se encuentra Registrado' return False
def guardarRelaciones(request): if request.method == 'POST': if request.POST['d_estado'] == "INCOMPLETO": r = Relaciones() r.beneficiario_id = request.POST['d_ben'] #D1. El núcleo familiar se apoya de sus vecinos cuando r.d1 = request.POST['d1'] r.id_d1 = request.POST['id_d1'] #D2 ¿El núcleo familiar completo o alguno de sus miembros apoya a sus vecinos cuando lo requieren? r.d2 = request.POST['d2'] #D3. EL núcleo familiar comparte actividades con los vecinos r.d3 = request.POST['d3'] r.id_d3 = request.POST['id_d3'] #D4. El núcleo familiar comparte sus dificultades con r.d4 = request.POST['d4'] r.id_d4 = request.POST['id_d4'] #D4.2 El núcleo familiar comparte sus acontecimientos especiales con r.d42 = request.POST['d42'] r.id_d42 = request.POST['id_d42'] #D5. Cuándo se presentan algunas dificultades con los vecinos el núcleo familiar los resuelve: r.d5 = request.POST['d5'] r.id_d5 = request.POST['id_d5'] #D6. La cabeza del núcleo familiar pertenece a algún tipo de organización dentro de su barrio o vereda r.d6 = request.POST['d6'] r.id_d6 = request.POST['id_d6'] #D7. Cuál es el mayor talento o capacidad de la cabeza del núcleo familiar para trabajar en grupo o comunitariamente r.d7 = request.POST['d7'] r.id_d7 = request.POST['id_d7'] r.d7_otro = request.POST['d7_otro'] #d8. Alguno de los miembros del núcleo familiar desearía pertenecer a alguna organización en su barrio r.d8 = request.POST['d8'] #D9. Cuándo se realizan actividades comunitarias, se comunican a través de r.d9 = request.POST['d9'] r.id_d9 = request.POST['id_d9'] r.save() d = Beneficiario.objects.get(id=request.POST['d_ben']) d.modulo_d = "COMPLETADO" d.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'GUARDAR', 'Relaciones Comunitarias', 'Relaciones Comunitarias Creadas Exitosamente', d.primer_nombre + " " + d.segundo_nombre + " " + d.primer_apellido + " " + d.segundo_apellido) else: r = Relaciones.objects.get(beneficiario=request.POST['d_ben']) #D1. El núcleo familiar se apoya de sus vecinos cuando r.d1 = request.POST['d1'] r.id_d1 = request.POST['id_d1'] #D2 ¿El núcleo familiar completo o alguno de sus miembros apoya a sus vecinos cuando lo requieren? r.d2 = request.POST['d2'] #D3. EL núcleo familiar comparte actividades con los vecinos r.d3 = request.POST['d3'] r.id_d3 = request.POST['id_d3'] #D4. El núcleo familiar comparte sus dificultades con r.d4 = request.POST['d4'] r.id_d4 = request.POST['id_d4'] #D4.2 El núcleo familiar comparte sus acontecimientos especiales con r.d42 = request.POST['d42'] r.id_d42 = request.POST['id_d42'] #D5. Cuándo se presentan algunas dificultades con los vecinos el núcleo familiar los resuelve: r.d5 = request.POST['d5'] r.id_d5 = request.POST['id_d5'] #D6. La cabeza del núcleo familiar pertenece a algún tipo de organización dentro de su barrio o vereda r.d6 = request.POST['d6'] r.id_d6 = request.POST['id_d6'] #D7. Cuál es el mayor talento o capacidad de la cabeza del núcleo familiar para trabajar en grupo o comunitariamente r.d7 = request.POST['d7'] r.id_d7 = request.POST['id_d7'] r.d7_otro = request.POST['d7_otro'] #d8. Alguno de los miembros del núcleo familiar desearía pertenecer a alguna organización en su barrio r.d8 = request.POST['d8'] #D9. Cuándo se realizan actividades comunitarias, se comunican a través de r.d9 = request.POST['d9'] r.id_d9 = request.POST['id_d9'] r.save() d = Beneficiario.objects.get(id=request.POST['d_ben']) registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Relaciones Comunitarias', 'Relaciones Comunitarias Creadas Exitosamente', d.primer_nombre + " " + d.segundo_nombre + " " + d.primer_apellido + " " + d.segundo_apellido) messages.success(request, 'Relaciones') return HttpResponseRedirect('/beneficiarios') else: return HttpResponseRedirect("/")
def guardarSalud(request): if request.method == 'POST': if request.POST['f_estado'] == "INCOMPLETO": s = Salud() s.beneficiario_id = request.POST['f_ben'] #F1. El niño o niña se encuentra afiliado al Sistema General de seguridad social en salud s.f1 = request.POST['f1'] #F2. El niño o niña es beneficiario del régimen s.f2 = request.POST['f2'] #F3. Nombre de la Entidad Promotora de Salud a la que se encuentra afiliado s.f3_id = request.POST['f3'] #Semana de gestación en la que ocurrio el parto (Nacimiento) s.semana_nacimiento = request.POST['f3_semana'] s.tipo_parto = request.POST['f3_parto'] s.servicio_parto = request.POST['f3_servicio'] #F4. ¿El niño o niña cuenta con el carnet de vacunación actualizado? s.f4 = request.POST['f4'] #F5. El niño o niña cuenta con el siguiente esquema de vacunación (Marque con una X aquellas que han sido aplicadas) s.vacunas_1 = request.POST['vacunas_1'] s.vacunas_2 = request.POST['vacunas_2'] s.vacunas_3 = request.POST['vacunas_3'] s.vacunas_4 = request.POST['vacunas_4'] s.vacunas_5 = request.POST['vacunas_5'] s.vacunas_6 = request.POST['vacunas_6'] s.vacunas_7 = request.POST['vacunas_7'] s.vacunas_8 = request.POST['vacunas_8'] #F6. En caso de no contar con el carnet de vacunación al día según la edad del niño o niña ¿Cuál ha sido el motivo? s.f6 = request.POST['f6'] s.id_f6 = request.POST['id_f6'] s.f6_otro = request.POST['f6_otro'] #F7. Si el niño o niña es mayor de 1 año ¿ Ha asistido a Controles de Salud Oral ? s.f7 = request.POST['f7'] #F8. En caso de no contar con el Carnet de Vacunación al día según la edad del niño o niña ¿ Cuál ha sido el motivo ? s.f8 = request.POST['f8'] s.id_f8 = request.POST['id_f8'] s.f8_otro = request.POST['f8_otro'] #F9. ¿El niño o niña menor de 4 años ¿ Ha recibido valoración Oftalmológica ? s.f9 = request.POST['f9'] #F10. ¿El niño o niña menor de 4 años ¿ Ha recibido valoración Auditiva ? s.f10 = request.POST['f10'] s.save() f = Beneficiario.objects.get(id=request.POST['f_ben']) f.modulo_f = "COMPLETADO" f.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'GUARDAR', 'Salud', 'Salud Creada Exitosamente', f.primer_nombre + " " + f.segundo_nombre + " " + f.primer_apellido + " " + f.segundo_apellido) else: s = Salud.objects.get(beneficiario=request.POST['f_ben']) #F1. El niño o niña se encuentra afiliado al Sistema General de seguridad social en salud s.f1 = request.POST['f1'] #F2. El niño o niña es beneficiario del régimen s.f2 = request.POST['f2'] #F3. Nombre de la Entidad Promotora de Salud a la que se encuentra afiliado s.f3_id = request.POST['f3'] #Semana de gestación en la que ocurrio el parto (Nacimiento) s.semana_nacimiento = request.POST['f3_semana'] s.tipo_parto = request.POST['f3_parto'] s.servicio_parto = request.POST['f3_servicio'] #F4. ¿El niño o niña cuenta con el carnet de vacunación actualizado? s.f4 = request.POST['f4'] #F5. El niño o niña cuenta con el siguiente esquema de vacunación (Marque con una X aquellas que han sido aplicadas) s.vacunas_1 = request.POST['vacunas_1'] s.vacunas_2 = request.POST['vacunas_2'] s.vacunas_3 = request.POST['vacunas_3'] s.vacunas_4 = request.POST['vacunas_4'] s.vacunas_5 = request.POST['vacunas_5'] s.vacunas_6 = request.POST['vacunas_6'] s.vacunas_7 = request.POST['vacunas_7'] s.vacunas_8 = request.POST['vacunas_8'] #F6. En caso de no contar con el carnet de vacunación al día según la edad del niño o niña ¿Cuál ha sido el motivo? s.f6 = request.POST['f6'] s.id_f6 = request.POST['id_f6'] s.f6_otro = request.POST['f6_otro'] #F7. Si el niño o niña es mayor de 1 año ¿ Ha asistido a Controles de Salud Oral ? s.f7 = request.POST['f7'] #F8. En caso de no contar con el Carnet de Vacunación al día según la edad del niño o niña ¿ Cuál ha sido el motivo ? s.f8 = request.POST['f8'] s.id_f8 = request.POST['id_f8'] s.f8_otro = request.POST['f8_otro'] #F9. ¿El niño o niña menor de 4 años ¿ Ha recibido valoración Oftalmológica ? s.f9 = request.POST['f9'] #F10. ¿El niño o niña menor de 4 años ¿ Ha recibido valoración Auditiva ? s.f10 = request.POST['f10'] s.save() f = Beneficiario.objects.get(id=request.POST['f_ben']) registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Salud', 'Salud Actualizada Exitosamente', f.primer_nombre + " " + f.segundo_nombre + " " + f.primer_apellido + " " + f.segundo_apellido) messages.success(request, 'Salud') return HttpResponseRedirect('/beneficiarios') else: return HttpResponseRedirect("/")
def logout(request): registrarLogs(request.user.first_name+' '+request.user.last_name,'CIERRE DE SESSIÓN','Login','Sessión Terminada Exitosamente','') auth.logout(request) return HttpResponseRedirect("/")
def guardarBeneficiario(request): if request.method == 'POST': b = Beneficiario() b.uds_id = request.POST['uds'] b.tipo_beneficiario = request.POST['tip_ben'] b.primer_nombre = request.POST['1nombre'] b.segundo_nombre = request.POST['2nombre'] b.primer_apellido = request.POST['1apellido'] b.segundo_apellido = request.POST['2apellido'] b.fecha_nacimiento = request.POST['fec_nac'] if request.POST['bandera_foto'] == "CAMBIO": b.foto = request.FILES['archivo'] else: b.foto = "media/beneficiarios/no_photo.png" d_fechas = datetime.strptime(time.strftime("%Y-%m-%d"), '%Y-%m-%d') - datetime.strptime( b.fecha_nacimiento, '%Y-%m-%d') b.edad_anios = int(d_fechas.days / 365.2425) meses = int(d_fechas.days / 30.4375) if meses < 12: b.edad_meses = meses if meses >= 12 and meses <= 23.9: b.edad_meses = meses - 12 if meses >= 24 and meses <= 35.9: b.edad_meses = meses - 24 if meses >= 36 and meses <= 47.9: b.edad_meses = meses - 36 if meses >= 48 and meses <= 59.9: b.edad_meses = meses - 48 if meses >= 60 and meses <= 71.9: b.edad_meses = meses - 60 b.tipo_documento_id = request.POST['tip_doc'] b.numero_documento = request.POST['numdoc'] b.fecha_expedicion = request.POST['fec_exp'] b.lugar_expedicion = request.POST['lug_exp'] b.genero = request.POST['genero'] b.pais_id = request.POST['pais_nac'] b.departamento_id = request.POST['departamento_nac'] b.ciudad_id = request.POST['ciudad_nac'] b.grupo_etnico = request.POST['grupo_etnico'] #A14. Si el núcleo familiar del beneficiario se reconoce como Afrocolombiano o Indígena indique a qué comunidad, resguardo o territorio colectivo pertenece b.grupo_perteneciente = request.POST['a14'] #A15. ¿En la familia se habla la lengua nativa del grupo étnico al que pertenece? b.a15 = request.POST['a15'] #A16. ¿El beneficiario habla la lengua nativa del grupo étnico al que pertenece? b.a16 = request.POST['a16'] #A.17. Datos de contacto del Adulto responsable o acudiente b.direccion_acudiente = request.POST['direccion_acu'] b.telefono_acudiente = request.POST['tel_acu'] #A.18. Ha sido víctima del desplazamiento forzado u otro hecho victimizante? b.a18 = request.POST['a18'] #¿Algún miembro del grupo familiar con el que convive el beneficiario ha sido víctima del Desplazamiento forzado u otro hecho victimizante? b.a19 = request.POST['a19'] # Señale el tipo de relación del miembro del grupo familiar con el que convive, que ha sido víctima del Desplazamiento u otro hecho victimizante b.a20_id = request.POST['a20'] b.modulo_b = "INCOMPLETO" b.modulo_c = "INCOMPLETO" b.modulo_d = "INCOMPLETO" b.modulo_e = "INCOMPLETO" b.modulo_f = "INCOMPLETO" b.modulo_g = "INCOMPLETO" b.save() VacunasTask.delay(b.id, b.uds.id, b.fecha_nacimiento) registrarLogs( request.user.first_name + " " + request.user.last_name, 'GUARDAR', 'Beneficiarios', 'Beneficiario Creado Exitosamente', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) messages.success(request, 'Creado') return HttpResponseRedirect('/beneficiarios') else: return HttpResponseRedirect("/")
def guardarCaracteristicas(request): if request.method == 'POST': if request.POST['b_estado'] == "INCOMPLETO": c = CaracteristicasVivienda() c.beneficiario_id = request.POST['b_ben'] c.pais_id = request.POST['pais_re'] c.departamento_id = request.POST['departamento_re'] c.ciudad_id = request.POST['ciudad_re'] c.zona_ubicacion = request.POST['z_ubicacion'] c.nombre_corregimiento = request.POST['nom_corregimiento'] c.nombre_barrio = request.POST['nom_barrio'] c.direccion_vivienda = request.POST['dir_vivienda'] c.tipo_vivienda_id = request.POST['tip_vivienda'] c.tipo_tenencia_id = request.POST['tip_tenencia'] c.tiempo_anios = request.POST['tiempo_anios'] c.tiempo_meses = request.POST['tiempo_meses'] #b10 . Número de personas que conforman el núcleo familiar y conviven en la misma vivienda. c.b10 = request.POST['b10'] #B11. Excluyendo la sala y el comedor de cuantos cuartos dispone el núcleo familiar del beneficiario para que duerman los niños y/o niñas menores de 5 años c.b11 = request.POST['b11'] #B12. Los niños y niñas duermen con adultos en la misma habitación SI NO c.b12 = request.POST['b12'] #B13. Los niños y niñas duermen con adultos en la misma cama SI NO c.b13 = request.POST['b13'] #B14. La vivienda cuenta con espacios independientes para dormitorio, cocina y baños (Verificación a través de visita domiciliaria) SI NO c.b14 = request.POST['b14'] #B15. La vivienda cuenta con espacios aseados (Verificación a través de visita domiciliaria) c.b15 = request.POST['b15'] #B16. En el núcleo familiar del beneficiario los niños o niñas menores de 5 años duermen en (Solo una opción) (Verificación a través de visita domiciliaria c.b16_id = request.POST['b16'] c.b16_otro = request.POST['b16_otro'] #B17. El núcleo familiar del beneficiario tiene acceso a los siguientes servicios domiciliarios (Opciones multiples c.b17_codigo = request.POST['id_servicios_domiciliarios'] c.b17_nombre = request.POST['servicios_domiciliarios'] #B18. El agua que consumen y utilizan para la preparación de los alimentos la obtienen de (Verificación a través de visita domiciliaria) c.b18_id = request.POST['b18'] #B19 El núcleo familiar recibe el servicio de agua (Verificación a través de visita domiciliaria) c.b19_id = request.POST['b19'] c.b19_otro = request.POST['b19_otra'] #B20. En el hogar el agua la usan: (Verificación a través de visita domiciliaria) c.b20_id = request.POST['b20'] #B21. ¿Cuál es el tratamiento que le dan a las basuras? (Verificación a través de visita domiciliaria) c.b21_id = request.POST['b21'] #¿Con qué tipo de sanitario cuenta el hogar? (Verificación a través de visita domiciliaria) c.b22_id = request.POST['b22'] #B23. El sanitario es de uso: c.b23 = request.POST['b23'] #B24. Cerca de la vivienda se cuenta con c.b24_codigo = request.POST['id_servicios_comunitarios'] c.b24_nombre = request.POST['servicios_comunitarios'] c.save() b = Beneficiario.objects.get(id=request.POST['b_ben']) b.modulo_b = "COMPLETADO" b.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'GUARDAR', 'Caracteristicas de Vivienda', 'Caracteristicas de Vivienda Creadas Exitosamente', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) else: b = Beneficiario.objects.get(id=request.POST['b_ben']) c = CaracteristicasVivienda.objects.get( beneficiario=request.POST['b_ben']) c.pais_id = request.POST['pais_re'] c.departamento_id = request.POST['departamento_re'] c.ciudad_id = request.POST['ciudad_re'] c.zona_ubicacion = request.POST['z_ubicacion'] c.nombre_corregimiento = request.POST['nom_corregimiento'] c.nombre_barrio = request.POST['nom_barrio'] c.direccion_vivienda = request.POST['dir_vivienda'] c.tipo_vivienda_id = request.POST['tip_vivienda'] c.tipo_tenencia_id = request.POST['tip_tenencia'] c.tiempo_anios = request.POST['tiempo_anios'] c.tiempo_meses = request.POST['tiempo_meses'] #b10 . Número de personas que conforman el núcleo familiar y conviven en la misma vivienda. c.b10 = request.POST['b10'] #B11. Excluyendo la sala y el comedor de cuantos cuartos dispone el núcleo familiar del beneficiario para que duerman los niños y/o niñas menores de 5 años c.b11 = request.POST['b11'] #B12. Los niños y niñas duermen con adultos en la misma habitación SI NO c.b12 = request.POST['b12'] #B13. Los niños y niñas duermen con adultos en la misma cama SI NO c.b13 = request.POST['b13'] #B14. La vivienda cuenta con espacios independientes para dormitorio, cocina y baños (Verificación a través de visita domiciliaria) SI NO c.b14 = request.POST['b14'] #B15. La vivienda cuenta con espacios aseados (Verificación a través de visita domiciliaria) c.b15 = request.POST['b15'] #B16. En el núcleo familiar del beneficiario los niños o niñas menores de 5 años duermen en (Solo una opción) (Verificación a través de visita domiciliaria c.b16_id = request.POST['b16'] c.b16_otro = request.POST['b16_otro'] #B17. El núcleo familiar del beneficiario tiene acceso a los siguientes servicios domiciliarios (Opciones multiples c.b17_codigo = request.POST['id_servicios_domiciliarios'] c.b17_nombre = request.POST['servicios_domiciliarios'] #B18. El agua que consumen y utilizan para la preparación de los alimentos la obtienen de (Verificación a través de visita domiciliaria) c.b18_id = request.POST['b18'] #B19 El núcleo familiar recibe el servicio de agua (Verificación a través de visita domiciliaria) c.b19_id = request.POST['b19'] c.b19_otro = request.POST['b19_otra'] #B20. En el hogar el agua la usan: (Verificación a través de visita domiciliaria) c.b20_id = request.POST['b20'] #B21. ¿Cuál es el tratamiento que le dan a las basuras? (Verificación a través de visita domiciliaria) c.b21_id = request.POST['b21'] #¿Con qué tipo de sanitario cuenta el hogar? (Verificación a través de visita domiciliaria) c.b22_id = request.POST['b22'] #B23. El sanitario es de uso: c.b23 = request.POST['b23'] #B24. Cerca de la vivienda se cuenta con c.b24_codigo = request.POST['id_servicios_comunitarios'] c.b24_nombre = request.POST['servicios_comunitarios'] c.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Caracteristicas de Vivienda', 'Caracteristicas de Vivienda Actualizadas Exitosamente', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) messages.success(request, 'Caracteristicas') return HttpResponseRedirect('/beneficiarios') else: return HttpResponseRedirect("/")
def actualizarBeneficiario(request): if request.method == 'POST': b = Beneficiario.objects.get(id=request.POST['beneficiario_id']) d_fechas = datetime.strptime(time.strftime("%Y-%m-%d"), '%Y-%m-%d') - datetime.strptime( b.fecha_nacimiento, '%Y-%m-%d') b.edad_anios = int(d_fechas.days / 365.2425) meses = int(d_fechas.days / 30.4375) if meses < 12: b.edad_meses = meses if meses >= 12 and meses <= 23.9: b.edad_meses = meses - 12 if meses >= 24 and meses <= 35.9: b.edad_meses = meses - 24 if meses >= 36 and meses <= 47.9: b.edad_meses = meses - 36 if meses >= 48 and meses <= 59.9: b.edad_meses = meses - 48 if meses >= 60 and meses <= 71.9: b.edad_meses = meses - 60 b.grupo_etnico = request.POST['grupo_etnico'] #A14. Si el núcleo familiar del beneficiario se reconoce como Afrocolombiano o Indígena indique a qué comunidad, resguardo o territorio colectivo pertenece b.grupo_perteneciente = request.POST['a14'] #A15. ¿En la familia se habla la lengua nativa del grupo étnico al que pertenece? b.a15 = request.POST['a15'] #A16. ¿El beneficiario habla la lengua nativa del grupo étnico al que pertenece? b.a16 = request.POST['a16'] #A.17. Datos de contacto del Adulto responsable o acudiente b.direccion_acudiente = request.POST['direccion_acu'] b.telefono_acudiente = request.POST['tel_acu'] #A.18. Ha sido víctima del desplazamiento forzado u otro hecho victimizante? b.a18 = request.POST['a18'] #¿Algún miembro del grupo familiar con el que convive el beneficiario ha sido víctima del Desplazamiento forzado u otro hecho victimizante? b.a19 = request.POST['a19'] # Señale el tipo de relación del miembro del grupo familiar con el que convive, que ha sido víctima del Desplazamiento u otro hecho victimizante b.a20_id = request.POST['a20'] f_anterior = str(b.foto) if request.POST['bandera_foto'] == "CAMBIO": b.foto = request.FILES['archivo'] if f_anterior != ("media/beneficiarios/no_photo.png"): try: conn = tinys3.Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, tls=True) conn.delete(f_anterior, AWS_STORAGE_BUCKET_NAME) except OSError as e: print(e) else: b.foto = f_anterior b.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Beneficiarios', 'Beneficiario Actualizado Exitosamente', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) messages.success(request, 'Actualizado') return HttpResponseRedirect('/beneficiarios') else: return HttpResponseRedirect('/')
def guardarCabeza_Nucleo(request): if request.method == 'POST': if request.POST['c_estado'] == "INCOMPLETO": c = Cabeza_Nucleo() c.beneficiario_id = request.POST['c_ben'] #C2. Condición especial del padre o madre cabeza de hogar c.c2 = request.POST['c2_condicion'] c.id_c2 = request.POST['id_c2_condicion'] #C3. ¿Presenta declaración de los hechos de victimización en el marco del conflicto armado ante la personería, # Defensoría o Procuraduría? c.c3 = request.POST['c3'] #C4. Pertenece a población prioritaria de: c.c4 = request.POST['c4_poblacion'] c.id_c4 = request.POST['id_c4_poblacion'] #NUMERO DE FOLIO O PUNTAJE DEL SISBEN c.c4_puntaje = request.POST['c4_puntaje'] c.c4_folio = request.POST['c4_folio'] #C5. ¿Recibe subsidio de familias en acción? c.c5 = request.POST['c5'] c.c5_beneficio = request.POST['c5_beneficio'] c.id_c5_beneficio = request.POST['id_c5_beneficio'] #C6. ¿Se encuentra recibiendo beneficios de otro programa? c.c6 = request.POST['c6'] c.c6_beneficio = request.POST['c6_cual'] #C7. La mujer cuidadora del niño o niña menor de cinco años se encuentra c.c7 = request.POST['c7'] #C8. En caso de no encontrarse afiliado al Sistema de seguridad social en salud, ¿Cuál es la razón? c.c8 = request.POST['c8_razon'] c.id_c8 = request.POST['id_c8_razon'] #C9. Dentro de sus metas en un plazo de un año, se proyecta: (Diligenciar solo si la cabeza del núcleo #familiar es mayor de 18 años) c.c9 = request.POST['c9_metas'] c.id_c9 = request.POST['id_c9_metas'] #C10. La cabeza de hogar hace parte de c.c10 = request.POST['c10_organizacion'] c.id_c10 = request.POST['id_c10_organizacion'] #C11. El padre y la madre de los niños y niñas menores de 5 años, planearon con antelación el embarazo c.c11 = request.POST['c11'] c.save() c = Beneficiario.objects.get(id=request.POST['c_ben']) c.modulo_c = "COMPLETADO" c.save() registrarLogs( request.user.first_name + " " + request.user.last_name, 'GUARDAR', 'Cabeza de Nucleo', 'Cabeza de Nucleo Creada Exitosamente.', c.primer_nombre + " " + c.segundo_nombre + " " + c.primer_apellido + " " + c.segundo_apellido) else: c = Cabeza_Nucleo.objects.get(beneficiario=request.POST['c_ben']) c.beneficiario_id = request.POST['c_ben'] #C2. Condición especial del padre o madre cabeza de hogar c.c2 = request.POST['c2_condicion'] c.id_c2 = request.POST['id_c2_condicion'] #C3. ¿Presenta declaración de los hechos de victimización en el marco del conflicto armado ante la personería, # Defensoría o Procuraduría? c.c3 = request.POST['c3'] #C4. Pertenece a población prioritaria de: c.c4 = request.POST['c4_poblacion'] c.id_c4 = request.POST['id_c4_poblacion'] #NUMERO DE FOLIO O PUNTAJE DEL SISBEN c.c4_puntaje = request.POST['c4_puntaje'] c.c4_folio = request.POST['c4_folio'] #C5. ¿Recibe subsidio de familias en acción? c.c5 = request.POST['c5'] c.c5_beneficio = request.POST['c5_beneficio'] c.id_c5_beneficio = request.POST['id_c5_beneficio'] #C6. ¿Se encuentra recibiendo beneficios de otro programa? c.c6 = request.POST['c6'] c.c6_beneficio = request.POST['c6_cual'] #C7. La mujer cuidadora del niño o niña menor de cinco años se encuentra c.c7 = request.POST['c7'] #C8. En caso de no encontrarse afiliado al Sistema de seguridad social en salud, ¿Cuál es la razón? c.c8 = request.POST['c8_razon'] c.id_c8 = request.POST['id_c8_razon'] #C9. Dentro de sus metas en un plazo de un año, se proyecta: (Diligenciar solo si la cabeza del núcleo #familiar es mayor de 18 años) c.c9 = request.POST['c9_metas'] c.id_c9 = request.POST['id_c9_metas'] #C10. La cabeza de hogar hace parte de c.c10 = request.POST['c10_organizacion'] c.id_c10 = request.POST['id_c10_organizacion'] #C11. El padre y la madre de los niños y niñas menores de 5 años, planearon con antelación el embarazo c.c11 = request.POST['c11'] c.save() b = Beneficiario.objects.get(id=request.POST['c_ben']) registrarLogs( request.user.first_name + " " + request.user.last_name, 'ACTUALIZAR', 'Cabeza de Nucleo', 'Cabeza de Nucleo Actualizada Exitosamente.', b.primer_nombre + " " + b.segundo_nombre + " " + b.primer_apellido + " " + b.segundo_apellido) messages.success(request, 'Cabeza') return HttpResponseRedirect('/beneficiarios') else: return HttpResponseRedirect("/")