def post(self, request, team): """设置团队的头像""" if request.user != team.owner: abort(403, '只有队长可以操作') icon = request.FILES.get('image') if not icon: abort(400, '头像上传失败') filename = save_uploaded_image(icon) if filename: team.icon = filename team.save() return JsonResponse({'icon_url': team.icon}) abort(500, '头像保存失败')
def post(self, request): """上传用户头像""" icon = request.FILES.get('image') if not icon: abort(400, '头像上传失败') filename = save_uploaded_image(icon) if filename: if not request.user.icon: request.user.score += get_score_stage(3) request.user.score_records.create(score=get_score_stage(3), type="初始数据", description="首次上传头像") request.user.icon = filename request.user.save() return JsonResponse({'icon_url': request.user.icon}) abort(500, '头像保存失败')
def post(self, request, team, name, description, tags): """发布成果 :param description: 成果描述 :return: achievement_id: 成果id """ if request.user != team.owner: abort(403, '只有队长可以操作') if check_bad_words(description): abort(400, '含有非法词汇') achievement_num = team.achievements.count() if achievement_num == 0: team.score += get_score_stage(2) team.score_records.create(score=get_score_stage(2), type="初始数据", description="首次发布团队成果") achievement = Achievement(team=team, name=name, description=description, user=request.user, tags=tags) picture = request.FILES.get('image') if picture: filename = save_uploaded_image(picture) if filename: achievement.picture = filename else: abort(400, '图片上传失败') achievement.save() request.user.score += get_score_stage(1) request.user.score_records.create(score=get_score_stage(1), type="能力", description="发布一个团队成果") request.user.save() team.score += get_score_stage(1) team.score_records.create(score=get_score_stage(1), type="活跃度", description="发布一个团队成果") team.save() return JsonResponse({'achievement_id': achievement.id, 'code': 0})
def post(self, request, name, description, tags): """发布成果 :param description: 成果描述 :return: achievement_id: 成果id """ # 检查非法词汇 if check_bad_words(description): abort(400, '含有非法词汇') system_param = request.param # 检查发布的时间间隔 last_time = datetime.datetime.now() + datetime.timedelta( minutes=system_param.publish_min_minute) if Achievement.objects.filter(user=request.user, time_created__gt=last_time).count() > 0: abort( 403, '发布成果时间间隔不能小于{}分钟'.format_map(system_param.publish_min_minute)) # 检查上传图片数量 max_pic = system_param.pic_max + 1 if 'image' + str(max_pic) in request.FILES: abort(403, '最多上传' + str(system_param.pic_max) + '张图片') pics = [ request.FILES.get('image' + str(i)) if 'image' + str(i) in request.FILES else None for i in range(1, max_pic) ] achievement = Achievement(user=request.user, description=description, name=name, tags=tags) if len(pics) != 0: filenames = [] for p in pics: if p is None: continue filenames.append(save_uploaded_image(p)) achievement.picture = str(filenames) else: abort(500, '图片上传失败') achievement.save() return JsonResponse({'achievement_id': achievement.id, 'code': 0})
def post(self, request): """上传用户头像""" icon = request.FILES.get('image') if not icon: HttpResponseForbidden() filename = save_uploaded_image(icon) if filename: request.user.icon = filename request.user.save() template = loader.get_template("admin_user/info.html") context = Context({ 'u': request.user, 'msg': '上传成功', 'user': request.user }) return HttpResponse(template.render(context)) HttpResponseForbidden()
def post(self, request): """上传其他证件照片""" checkIdVerified(request.user) if request.user.is_role_verified: abort(403, '已经通过认证') other_card = request.FILES.get('image') if not other_card: abort(400, '图片上传失败') filename = save_uploaded_image(other_card, is_private=True) if filename: if not request.user.other_card: request.user.score += get_score_stage(5) request.user.score_records.create(score=get_score_stage(5), type="初始数据", description="首次身份认证") request.user.other_card = filename request.user.save() abort(200) abort(500, '图片保存失败')
def post(self, request): """上传身份证照片""" # 等待审核或者已通过审核不能上传照片 if request.user.is_verified in [1, 2]: abort(403, '等待审核或已实名认证') if request.user.is_verified == 4: abort(403, '已通过eid认证') id_card = request.FILES.get('image') if not id_card: abort(400, '图片上传失败') filename = save_uploaded_image(id_card, is_private=True) if filename: if not request.user.id_card: request.user.score += get_score_stage(5) request.user.score_records.create(score=get_score_stage(5), type="初始数据", description="首次实名认证") request.user.id_card = filename request.user.save() abort(200) abort(500, '图片保存失败')