def admin_score(request): admin_user = request.user if request.method == "GET": if not (admin_user.is_authenticated() and admin_user.is_staff): return redirect( reverse('admin:login') + "?next=" + reverse('admin_score')) return render(request, "admin_score.html") if request.method == "POST": res = {} if not admin_user.has_admin_perms('003'): res['code'] = -5 res['res_msg'] = u'您没有操作权限!' return JsonResponse(res) if not request.is_ajax(): raise Http404 if not (admin_user.is_authenticated() and admin_user.is_staff): res['code'] = -1 res['url'] = reverse('admin:login') + "?next=" + reverse( 'admin_user') return JsonResponse(res) event_id = request.POST.get('id', None) type = request.POST.get('type', None) if not event_id or not type: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) type = int(type) event_id = int(event_id) event = UserEvent.objects.get(id=event_id) log = AuditLog(user=admin_user, item=event) if event.audit_state != '1': res['code'] = -3 res['res_msg'] = u'该项目已审核过,不要重复审核!' return JsonResponse(res) if type == 1: event.audit_state = '0' log.audit_result = True res['code'] = 0 elif type == 2: reason = request.POST.get('reason', '') if not reason: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) event.audit_state = '2' log.reason = reason log.audit_result = False scoretranslist = charge_score(event.user, '0', event.invest_amount, u'冲账') if scoretranslist: scoretranslist.user_event = event scoretranslist.save(update_fields=['user_event']) res['code'] = 0 else: logger.critical(u"Charging score is failed!!!") res['code'] = -2 res['res_msg'] = u"现金记账失败,请检查输入合法性后再次提交!" return JsonResponse(res) admin_event = AdminEvent.objects.create(admin_user=admin_user, custom_user=event.user, event_type='8') log.admin_item = admin_event log.save() event.audit_time = log.time event.save(update_fields=['audit_state', 'audit_time']) return JsonResponse(res)
def admin_return(request): admin_user = request.user if request.method == "GET": if not (admin_user.is_authenticated() and admin_user.is_staff): return redirect( reverse('admin:login') + "?next=" + reverse('admin_return')) return render(request, "admin_return.html") if request.method == "POST": res = {} if not admin_user.has_admin_perms('002'): res['code'] = -5 res['res_msg'] = u'您没有操作权限!' return JsonResponse(res) if not request.is_ajax(): raise Http404 if not (admin_user.is_authenticated() and admin_user.is_staff): res['code'] = -1 res['url'] = reverse('admin:login') + "?next=" + reverse( 'admin_return') return JsonResponse(res) event_id = request.POST.get('id', None) cash = request.POST.get('cash', None) score = request.POST.get('score', None) type = request.POST.get('type', None) reason = request.POST.get('reason', None) type = int(type) if not event_id or type == 1 and not ( cash and score) or type == 2 and not reason or type != 1 and type != 2: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) event = UserEvent.objects.get(id=event_id) event_user = event.user log = AuditLog(user=admin_user, item=event) translist = None scoretranslist = None if type == 1: try: cash = Decimal(cash) score = int(score) except: res['code'] = -2 res['res_msg'] = u"操作失败,输入不合法!" return JsonResponse(res) if cash < 0 or score < 0: res['code'] = -2 res['res_msg'] = u"操作失败,输入不合法!" return JsonResponse(res) if event.audit_state != '1': res['code'] = -3 res['res_msg'] = u'该项目已审核过,不要重复审核!' return JsonResponse(res) if event.translist.exists(): logger.critical("Returning cash is repetitive!!!") res['code'] = -3 res['res_msg'] = u"操作失败,返现重复!" else: log.audit_result = True translist = charge_money(event_user, '0', cash, u'福利返现') scoretranslist = charge_score(event_user, '0', score, u'福利返现(积分)') if translist and scoretranslist: event.audit_state = '0' translist.user_event = event translist.save(update_fields=['user_event']) scoretranslist.user_event = event scoretranslist.save(update_fields=['user_event']) res['code'] = 0 else: res['code'] = -4 res['res_msg'] = "注意,重复提交时只提交失败项目,成功的可以输入0。\n" if not translist: logger.error(u"Charging cash is failed!!!") res['res_msg'] += u"现金记账失败,请检查输入合法性后再次提交!" if not scoretranslist: logger.error(u"Charging score is failed!!!") res['res_msg'] += u"积分记账失败,请检查输入合法性后再次提交!" else: event.audit_state = '2' log.audit_result = False log.reason = reason res['code'] = 0 if res['code'] == 0: admin_event = AdminEvent.objects.create(admin_user=admin_user, custom_user=event_user, event_type='1') if translist: translist.admin_event = admin_event translist.save(update_fields=['admin_event']) if scoretranslist: scoretranslist.admin_event = admin_event scoretranslist.save(update_fields=['admin_event']) log.admin_item = admin_event log.save() event.audit_time = log.time event.save(update_fields=['audit_state', 'audit_time']) return JsonResponse(res)
def admin_withdraw(request): admin_user = request.user if request.method == "GET": if not (admin_user.is_authenticated() and admin_user.is_staff): return redirect( reverse('admin:login') + "?next=" + reverse('admin_withdraw')) return render(request, "admin_withdraw.html") if request.method == "POST": res = {} if not admin_user.has_admin_perms('004'): res['code'] = -5 res['res_msg'] = u'您没有操作权限!' return JsonResponse(res) if not request.is_ajax(): raise Http404 if not (admin_user.is_authenticated() and admin_user.is_staff): res['code'] = -1 res['url'] = reverse('admin:login') + "?next=" + reverse( 'admin_user') return JsonResponse(res) event_id = request.POST.get('id', None) type = request.POST.get('type', None) if not event_id or not type: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) type = int(type) event_id = int(event_id) event = UserEvent.objects.get(id=event_id) if event.audit_state != '1': res['code'] = -3 res['res_msg'] = u'该项目已审核过,不要重复审核!' return JsonResponse(res) log = AuditLog(user=admin_user, item=event) if type == 1: event.audit_state = '0' log.audit_result = True res['code'] = 0 #用户提现成功,立即发放邀请人100积分奖励 inviter = event.user.inviter if inviter: if not UserEvent.objects.filter(user=event.user, event_type='2', audit_state='0').exists(): invite_award_scores = settings.AWARD_SCORES inviter.invite_scores += invite_award_scores translist = charge_score(inviter, '0', invite_award_scores, u"邀请奖励") if translist: logger.debug( 'Inviting Award scores is successfully payed!') inviter.save(update_fields=['invite_scores']) translist.user_event = event translist.save(update_fields=['user_event']) else: logger.debug( 'Inviting Award scores is failed to pay!!!') elif type == 2: reason = request.POST.get('reason', '') if not reason: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) event.audit_state = '2' log.reason = reason log.audit_result = False translist = charge_money(event.user, '0', event.invest_amount, u'冲账') if translist: translist.user_event = event translist.save(update_fields=['user_event']) res['code'] = 0 else: logger.critical(u"Charging cash is failed!!!") res['code'] = -2 res['res_msg'] = u"现金记账失败,请检查输入合法性后再次提交!" return JsonResponse(res) admin_event = AdminEvent.objects.create(admin_user=admin_user, custom_user=event.user, event_type='2') log.admin_item = admin_event log.save() event.audit_time = log.time event.save(update_fields=['audit_state', 'audit_time']) return JsonResponse(res)
def admin_score(request): admin_user = request.user if request.method == "GET": if not ( admin_user.is_authenticated() and admin_user.is_staff): return redirect(reverse('admin:login') + "?next=" + reverse('admin_score')) return render(request,"admin_score.html") if request.method == "POST": res = {} if not admin_user.has_admin_perms('003'): res['code'] = -5 res['res_msg'] = u'您没有操作权限!' return JsonResponse(res) if not request.is_ajax(): raise Http404 if not ( admin_user.is_authenticated() and admin_user.is_staff): res['code'] = -1 res['url'] = reverse('admin:login') + "?next=" + reverse('admin_user') return JsonResponse(res) event_id = request.POST.get('id', None) type = request.POST.get('type', None) if not event_id or not type: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) type = int(type) event_id = int(event_id) event = UserEvent.objects.get(id=event_id) log = AuditLog(user=admin_user,item=event) if event.audit_state != '1': res['code'] = -3 res['res_msg'] = u'该项目已审核过,不要重复审核!' return JsonResponse(res) if type==1: event.audit_state = '0' log.audit_result = True res['code'] = 0 elif type == 2: reason = request.POST.get('reason', '') if not reason: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) event.audit_state = '2' log.reason = reason log.audit_result = False scoretranslist = charge_score(event.user, '0', event.invest_amount, u'冲账') if scoretranslist: scoretranslist.user_event = event scoretranslist.save(update_fields=['user_event']) res['code'] = 0 else: logger.critical(u"Charging score is failed!!!") res['code'] = -2 res['res_msg'] = u"现金记账失败,请检查输入合法性后再次提交!" return JsonResponse(res) admin_event = AdminEvent.objects.create(admin_user=admin_user, custom_user=event.user, event_type='8') log.admin_item = admin_event log.save() event.audit_time = log.time event.save(update_fields=['audit_state','audit_time']) return JsonResponse(res)
def admin_withdraw(request): admin_user = request.user if request.method == "GET": if not ( admin_user.is_authenticated() and admin_user.is_staff): return redirect(reverse('admin:login') + "?next=" + reverse('admin_withdraw')) return render(request,"admin_withdraw.html") if request.method == "POST": res = {} if not admin_user.has_admin_perms('004'): res['code'] = -5 res['res_msg'] = u'您没有操作权限!' return JsonResponse(res) if not request.is_ajax(): raise Http404 if not ( admin_user.is_authenticated() and admin_user.is_staff): res['code'] = -1 res['url'] = reverse('admin:login') + "?next=" + reverse('admin_user') return JsonResponse(res) event_id = request.POST.get('id', None) type = request.POST.get('type', None) if not event_id or not type: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) type = int(type) event_id = int(event_id) event = UserEvent.objects.get(id=event_id) if event.audit_state != '1': res['code'] = -3 res['res_msg'] = u'该项目已审核过,不要重复审核!' return JsonResponse(res) log = AuditLog(user=admin_user,item=event) if type==1: event.audit_state = '0' log.audit_result = True res['code'] = 0 #用户提现成功,立即发放邀请人100积分奖励 inviter = event.user.inviter if inviter: if not UserEvent.objects.filter(user=event.user, event_type='2', audit_state='0').exists(): invite_award_scores = settings.AWARD_SCORES inviter.invite_scores += invite_award_scores translist = charge_score(inviter, '0', invite_award_scores, u"邀请奖励") if translist: logger.debug('Inviting Award scores is successfully payed!') inviter.save(update_fields=['invite_scores']) translist.user_event = event translist.save(update_fields=['user_event']) else: logger.debug('Inviting Award scores is failed to pay!!!') elif type == 2: reason = request.POST.get('reason', '') if not reason: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) event.audit_state = '2' log.reason = reason log.audit_result = False translist = charge_money(event.user, '0', event.invest_amount, u'冲账') if translist: translist.user_event = event translist.save(update_fields=['user_event']) res['code'] = 0 else: logger.critical(u"Charging cash is failed!!!") res['code'] = -2 res['res_msg'] = u"现金记账失败,请检查输入合法性后再次提交!" return JsonResponse(res) admin_event = AdminEvent.objects.create(admin_user=admin_user, custom_user=event.user, event_type='2') log.admin_item = admin_event log.save() event.audit_time = log.time event.save(update_fields=['audit_state','audit_time']) return JsonResponse(res)
def admin_return(request): admin_user = request.user if request.method == "GET": if not ( admin_user.is_authenticated() and admin_user.is_staff): return redirect(reverse('admin:login') + "?next=" + reverse('admin_return')) return render(request,"admin_return.html") if request.method == "POST": res = {} if not admin_user.has_admin_perms('002'): res['code'] = -5 res['res_msg'] = u'您没有操作权限!' return JsonResponse(res) if not request.is_ajax(): raise Http404 if not ( admin_user.is_authenticated() and admin_user.is_staff): res['code'] = -1 res['url'] = reverse('admin:login') + "?next=" + reverse('admin_return') return JsonResponse(res) event_id = request.POST.get('id', None) cash = request.POST.get('cash', None) score = request.POST.get('score', None) type = request.POST.get('type', None) reason = request.POST.get('reason', None) type = int(type) if not event_id or type==1 and not (cash and score) or type==2 and not reason or type!=1 and type!=2: res['code'] = -2 res['res_msg'] = u'传入参数不足,请联系技术人员!' return JsonResponse(res) event = UserEvent.objects.get(id=event_id) event_user = event.user log = AuditLog(user=admin_user,item=event) translist = None scoretranslist = None if type==1: try: cash = Decimal(cash) score = int(score) except: res['code'] = -2 res['res_msg'] = u"操作失败,输入不合法!" return JsonResponse(res) if cash < 0 or score < 0: res['code'] = -2 res['res_msg'] = u"操作失败,输入不合法!" return JsonResponse(res) if event.audit_state != '1': res['code'] = -3 res['res_msg'] = u'该项目已审核过,不要重复审核!' return JsonResponse(res) if event.translist.exists(): logger.critical("Returning cash is repetitive!!!") res['code'] = -3 res['res_msg'] = u"操作失败,返现重复!" else: log.audit_result = True translist = charge_money(event_user, '0', cash, u'福利返现') scoretranslist = charge_score(event_user, '0', score, u'福利返现(积分)') if translist and scoretranslist: event.audit_state = '0' translist.user_event = event translist.save(update_fields=['user_event']) scoretranslist.user_event = event scoretranslist.save(update_fields=['user_event']) res['code'] = 0 else: res['code'] = -4 res['res_msg'] = "注意,重复提交时只提交失败项目,成功的可以输入0。\n" if not translist: logger.error(u"Charging cash is failed!!!") res['res_msg'] += u"现金记账失败,请检查输入合法性后再次提交!" if not scoretranslist: logger.error(u"Charging score is failed!!!") res['res_msg'] += u"积分记账失败,请检查输入合法性后再次提交!" else: event.audit_state = '2' log.audit_result = False log.reason = reason res['code'] = 0 if res['code'] == 0: admin_event = AdminEvent.objects.create(admin_user=admin_user, custom_user=event_user, event_type='1') if translist: translist.admin_event = admin_event translist.save(update_fields=['admin_event']) if scoretranslist: scoretranslist.admin_event = admin_event scoretranslist.save(update_fields=['admin_event']) log.admin_item = admin_event log.save() event.audit_time = log.time event.save(update_fields=['audit_state','audit_time']) return JsonResponse(res)
suc_num = 0 try: for row in rtable: with transaction.atomic(): id = row[0] result = row[1] reason = row[3] event = UserEvent.objects.get(id=id) if event.audit_state != '1' or event.translist.exists(): continue log = AuditLog(user=admin_user, item=event) event_user = event.user translist = None if result: amount = int(row[2] * 100) log.audit_result = True project = event.content_object.project translist = charge_money(event_user, '0', amount, project.title) if project.is_vip_bonus: get_vip_bonus(event_user, amount, 'finance') if translist: event.audit_state = '0' translist.user_event = event translist.save(update_fields=['user_event']) # Invest_Record.objects.create(invest_date=event.time,invest_company=event.content_object.company.name, # user_name=event_user.zhifubao_name,zhifubao=event_user.zhifubao, # invest_mobile=event.invest_account,invest_period=event.invest_term, # invest_amount=event.invest_amount,return_amount=amount/100.0,wafuli_account=event_user.mobile, # return_date=datetime.date.today(),remark=event.remark) else:
suc_num = 0 try: for row in rtable: with transaction.atomic(): id = row[0] result = row[1] reason = row[3] event = UserEvent.objects.get(id=id) if event.audit_state != '1' or event.translist.exists(): continue log = AuditLog(user=admin_user,item=event) event_user = event.user translist = None if result: amount = int(row[2]*100) log.audit_result = True project = event.content_object.project translist = charge_money(event_user, '0', amount, project.title) if project.is_vip_bonus: get_vip_bonus(event_user, amount, 'finance') if translist: event.audit_state = '0' translist.user_event = event translist.save(update_fields=['user_event']) # Invest_Record.objects.create(invest_date=event.time,invest_company=event.content_object.company.name, # user_name=event_user.zhifubao_name,zhifubao=event_user.zhifubao, # invest_mobile=event.invest_account,invest_period=event.invest_term, # invest_amount=event.invest_amount,return_amount=amount/100.0,wafuli_account=event_user.mobile, # return_date=datetime.date.today(),remark=event.remark) else: logger.error(u"Charging cash is failed!!!")