def post(self, request, *args, **kwargs): data = dict() if request.method == 'POST': form = EgresoForm(request.POST) capital = int(capital_obtener()) print('recibo', request.POST['monto']) print('recibo c', Capital(request)) monto_egreso = int(request.POST['monto']) resta = (capital - monto_egreso) print("\n \n \n \n resta", resta) if resta < 0: data[ 'error'] = "El monto que intenta retirar es no coincide con el dinero disponible" print(data['error']) data['form_is_valid'] = False else: if form.is_valid(): usuario = form.save(commit=False) usuario.usuario = request.user form.save() notificacions(user=request.user, contenido=request.user.first_name + " realizó un retiro de: <strong>" + str(request.POST['monto']) + " Bs.</strong>") data['form_is_valid'] = True else: data['form_is_valid'] = False context = {'form': form} data['html_form'] = render_to_string('diezmos/egreso/create.html', context, request=request) return JsonResponse(data) else: form = EgresoForm() context = {'form': form} data['html_form'] = render_to_string('diezmos/egreso/create.html', context, request=request) return JsonResponse(data)
def post(self,request): pk = request.POST['id'] activo = request.POST['activo'] asign = AsignarMaterial.objects.filter(pk=pk) if activo == 'true': activo = True contenido = "Ya tienes acceso a un nuevo material." else: activo = False contenido = "Se te ha bloqueado el acceso a un material." asign.update(estatus=activo) link='/panel/actividades/material' notificacions( user=asign.first().entrenamiento.iglesia.usuario, tipo="organizacion", contenido=contenido, url=link ) return JsonResponse([{"is_valid":True}],safe=False)
def post(self,request,*args,**kwargs): data = dict() estatus_id = get_object_or_404(Status,status="Por Realizar") actividad = get_object_or_404(Actividades,pk=request.POST['ida']) data['form_is_valid'] = True data['lugar'] = request.POST['lugar'] data['descripcion'] = request.POST['descripcion'] data['tipo'] = request.POST['tipo'] data['title'] = request.POST['nombre'] data['color'] = "#00B0F0" data['hora'] = request.POST['hora'] data['persona'] = request.POST['persona'] data['start'] = str(actividad.fecha)+"T"+str(request.POST['hora']) #actividad = form.save() tipo = get_object_or_404(Tipo_actividad,pk=request.POST['tipo']) if tipo.tipo == 'Entrenamiento': link='/panel/actividades/detailentrenamiento/'+str(actividad.pk) notificacions( user=actividad.entrenamiento.iglesia.usuario, tipo="organizacion", contenido="Se ha modificado su entrenamiento solicitado, fecha: "+str(actividad.fecha), url=link ) Actividades.objects.filter(pk=actividad.pk).update( nombre=data['title'], descripcion=data['descripcion'], hora=data['hora'], lugar=data['lugar'], persona=data['persona'], tipo=data['tipo']) data['id'] = actividad.pk return JsonResponse(data)
def post(self, request, *args, **kwargs): data = dict() if request.method == 'POST': form = IngresoForm(request.POST) if form.is_valid(): form.save() notificacions(user=request.user, contenido=request.user.first_name + " registro un ingreso de: <strong>" + str(request.POST['monto']) + " Bs.</strong>") data['form_is_valid'] = True else: data['form_is_valid'] = False else: form = IngresoForm() context = {'form': form} data['html_form'] = render_to_string('diezmos/ingreso/create.html', context, request=request) return JsonResponse(data)
def post(self, request, *args, **kwargs): data = dict() estatus_id = get_object_or_404(Status, status="Por Realizar") if request.method == 'POST': form = ActividadesForm(request.POST) print(request.POST['fecha']) if form.is_valid(): data['form_is_valid'] = True data['lugar'] = request.POST['lugar'] data['start'] = str(request.POST['fecha_submit']) + "T" + str( request.POST['hora']) data['descripcion'] = request.POST['descripcion'] data['title'] = request.POST['nombre'] data['color'] = "#00B0F0" status_p = form.save(commit=False) status_p.status = estatus_id actividad = form.save() notificacions( user=request.user, contenido= "Se ha planificado una nueva actividad titulada: <strong>" + str(request.POST['nombre']) + "</strong>, fecha: <strong>" + str(request.POST['fecha_submit']) + "</strong>", url="") data['id'] = actividad.pk else: data['form_is_valid'] = False else: form = ActividadesForm() context = {'form': form} data['html_form'] = render_to_string('actividades/create.html', context, request=request) return JsonResponse(data)
def post(self,request,*args,**kwargs): data = [] estatus_id = get_object_or_404(Status,status="Por Realizar") if request.method == 'POST': data1 = json.loads(request.POST['data']) for i in data1: tipo = get_object_or_404(Tipo_actividad,pk=i['tipo']) fecha = i['fecha'] from datetime import datetime ht = i['hora'].split(':') hora = datetime.strptime(str(ht[0])+str(ht[1]),"%H%M") if tipo.tipo == 'Series': acti = Actividades.objects.filter(fecha=fecha,tipo=tipo).exists() if acti: err = { 'form_is_valid':False, 'error':'Ya existe una serie planificada para esa fecha, por favor seleccione otra.' } return JsonResponse(err,safe=False) hora_pm = datetime.strptime('1400',"%H%M") if(i['is_domingo']): if hora<hora_pm: err = { 'form_is_valid':False, 'error':'Día domingo, no puede seleccionar una hora menor a las 2:00 pm, por favor seleccione otra.' } return JsonResponse(err,safe=False) from datetime import datetime lider = get_object_or_404(Persona,pk=i['persona']) act = Actividades.objects.filter(fecha=fecha,persona=lider) if act.exists(): for i in act: hora_a =str(i.hora).split(':') hor = datetime.strptime(str(hora_a[0])+str(hora_a[1]),"%H%M") if hora>=hor: hora2 = str(i.hora).split(':') time2 = datetime.strptime(str(hora2[0])+str(hora2[1]),"%H%M") diff = hora-time2 horas = int(diff.total_seconds()/3600) # seconds to hour if horas<=3: err = { 'form_is_valid':False, 'error':'Ya este lider tiene asignada una actividad muy cercana a la hora seleccionada.' } return JsonResponse(err,safe=False) count = 0 for i in data1: count +=1 nombre = i['nombre'] descripcion = i['descripcion'] lugar = i['lugar'] lider = get_object_or_404(Persona,pk=i['persona']) tipo = get_object_or_404(Tipo_actividad,pk=i['tipo']) hora = i['hora'] fecha = i['fecha'] act = Actividades( nombre=nombre, descripcion=descripcion, lugar=lugar, persona=lider, tipo=tipo, hora=hora, fecha=fecha, status=estatus_id, ) act.save() if i['entre']: entrenamiento = get_object_or_404(Entrenamiento,pk=int(i['entre'])) Actividades.objects.filter(pk=act.pk).update(entrenamiento=entrenamiento) if tipo.tipo == 'Entrenamiento': link='/panel/actividades/detailentrenamiento/'+str(act.pk) notificacions( user=entrenamiento.iglesia.usuario, tipo="organizacion", contenido="Se ha planificado su entrenamiento solicitado dia "+str(count)+", fecha: "+str(fecha), url=link ) val = { 'title':nombre, 'descripcion':descripcion, 'lugar':lugar, 'lider':lider.nombre, 'tipo':tipo.tipo, 'hora':hora, 'start':str(fecha)+"T"+str(hora), 'id':act.pk } data.append(val) datos = { 'data' : data, 'form_is_valid':True } return JsonResponse(datos,safe=False) else: form = ActividadesForm() context = {'form': form} data['html_form'] = render_to_string('actividades/create.html', context, request=request) return JsonResponse(data)
def Status_update(request, pk): data = dict() estatus = get_object_or_404(Actividades, pk=pk) if request.method == 'POST': form = StatusForm(request.POST, instance=estatus) formm = FechaForm(instance=estatus) fecha = '' for i in request.POST: print (request.POST) if i == 'fecha_submit': estatus_id = get_object_or_404(Status,status="Por Realizar") fecha = request.POST['fecha_submit'] hora = request.POST['hora'] if fecha: #Nuevo registro if estatus.entrenamiento: entrenamiento= estatus.entrenamiento else: entrenamiento = None estatus.suspended = True estatus.save() actividad_new = Actividades(nombre = estatus.nombre,descripcion = estatus.descripcion,fecha=fecha,hora=hora,lugar = estatus.lugar,persona = estatus.persona,status = estatus_id,tipo = estatus.tipo,entrenamiento=entrenamiento) actividad_new.save() data['id'] = actividad_new.pk status_p = form.save(commit=False) data['create'] =True data['lugar'] = estatus.lugar data['descripcion'] = estatus.descripcion data['observacion'] = estatus.observacion data['estatuss'] = estatus.statuss data['tipo'] = estatus.tipo.tipo data['title'] = estatus.nombre data['color'] = "#00B0F0" data['start'] = str(fecha)+"T"+str(hora) data['estatus'] = estatus_id.status data['form_is_valid'] = True #notificacions(user=request.user,contenido="Actividad titulada: <strong>"+estatus.nombre+"</strong> actualizada a una nueva fecha: <p style='color:green;display: contents;'><strong>"+str(estatus.fecha)+"</strong></p>",url="") else: if form.is_valid(): save = form.save() if estatus.status.status == 'Suspendida': color = "#ffc100" print ("Suspendida") if estatus.status.status == 'Realizada': color = "green" print (color) if estatus.status.status == 'Por Realizar': color = "#00B0F0" if estatus.status.status == 'No Realizada': color = "red" data['form_is_valid'] = True data['color'] = color tipo = get_object_or_404(Tipo_actividad,pk=save.tipo.pk) if tipo.tipo == 'Entrenamiento': entr = Entrenamiento.objects.filter(pk=estatus.entrenamiento.pk) if estatus.status.status == 'Realizada': entr.update(estatus="aceptada") if estatus.status.status == 'No Realizada': act = Actividades.objects.filter(entrenamiento__pk=estatus.entrenamiento.pk).exclude(status__status="No Realizada") if len(act) == 0: entr.update(cancelado=True) link='/panel/actividades/detailentrenamiento/'+str(save.pk) notificacions( user=estatus.entrenamiento.iglesia.usuario, tipo="organizacion", contenido="Se ha actualizado el estatus de su entrenamiento solicitado, fecha: "+str(save.fecha), url=link ) #notificacions(user=request.user,contenido="Actividad titulada: <strong>"+estatus.nombre+"</strong> actualizada a: <p style='color:"+color+";display: contents;'><strong>"+estatus.status.status+"</strong></p>",url="") data['observacion'] = save.observacion data['tipo'] = save.tipo.tipo data['estatus'] = estatus.status.status data['estatuss'] = estatus.statuss else: form = StatusForm(instance=estatus) formm = FechaForm(instance=estatus) if estatus.tipo.tipo == 'Entrenamiento': tipo = Tipo_actividad.objects.filter(tipo="Entrenamiento") else: tipo = Tipo_actividad.objects.exclude(tipo="Entrenamiento") lider = Persona.objects.all().filter(roles="Lider") context = {'form': form,'actividad':estatus,'lider':lider,'tipo':tipo,'formm':formm} data['html_form'] = render_to_string('actividades/update.html', context, request=request ) return JsonResponse(data)
def Status_update(request, pk): data = dict() estatus = get_object_or_404(Actividades, pk=pk) if request.method == 'POST': form = StatusForm(request.POST, instance=estatus) fecha = '' for i in request.POST: print(request.POST) if i == 'fecha_submit': estatus_id = get_object_or_404(Status, status="Por Realizar") fecha = request.POST['fecha_submit'] hora = request.POST['hora'] print('obtengo la fecha a actualizar ', fecha) if fecha: #Nuevo registro if estatus.entrenamiento: entrenamiento = estatus.entrenamiento else: entrenamiento = None estatus.suspended = True estatus.save() actividad_new = Actividades(nombre=estatus.nombre, descripcion=estatus.descripcion, fecha=fecha, hora=hora, lugar=estatus.lugar, persona=estatus.persona, status=estatus_id, tipo=estatus.tipo, entrenamiento=entrenamiento) actividad_new.save() data['id'] = actividad_new.pk status_p = form.save(commit=False) data['create'] = True data['lugar'] = estatus.lugar data['descripcion'] = estatus.descripcion data['title'] = estatus.nombre data['color'] = "#00B0F0" data['start'] = str(fecha) + "T" + str(hora) data['estatus'] = estatus_id.status data['form_is_valid'] = True notificacions( user=request.user, contenido="Actividad titulada: <strong>" + estatus.nombre + "</strong> actualizada a una nueva fecha: <p style='color:green;display: contents;'><strong>" + str(estatus.fecha) + "</strong></p>", url="") else: if form.is_valid(): form.save() if estatus.status.status == 'Suspendida': color = "#ffc100" print("Suspendida") if estatus.status.status == 'Realizada': color = "green" print(color) if estatus.status.status == 'Por Realizar': color = "#00B0F0" if estatus.status.status == 'No Realizada': color = "red" data['form_is_valid'] = True data['color'] = color notificacions( user=request.user, contenido="Actividad titulada: <strong>" + estatus.nombre + "</strong> actualizada a: <p style='color:" + color + ";display: contents;'><strong>" + estatus.status.status + "</strong></p>", url="") data['estatus'] = estatus.status.status else: form = StatusForm(instance=estatus) context = {'form': form, 'actividad': estatus} data['html_form'] = render_to_string('actividades/update.html', context, request=request) return JsonResponse(data)