def update_status(request): """ 激活或停用微众卡 """ try: id = request.POST.get('card_id', '') card_remark = request.POST.get('card_remark', '') activated_to = request.POST.get('activated_to', '') department = request.POST.get('department', '') operate_style = request.POST.get('operate_style', '') # status = int(request.POST['status']) event_type = WEIZOOM_CARD_LOG_TYPE_DISABLE weizoom_card = WeizoomCard.objects.get(id=id) if operate_style == 'active': status = 0 weizoom_card.active_card_user_id = request.user.id operate_log = u'激活' else: status = 3 operate_log = u'停用' if weizoom_card.status == WEIZOOM_CARD_STATUS_INACTIVE: weizoom_card.activated_at = datetime.strftime( datetime.now(), '%Y-%m-%d %H:%M:%S') event_type = WEIZOOM_CARD_LOG_TYPE_ACTIVATION if (status == 0 and weizoom_card.weizoom_card_rule.money != weizoom_card.money): weizoom_card.status = WEIZOOM_CARD_STATUS_USED else: weizoom_card.status = status weizoom_card.target_user_id = 0 if card_remark and activated_to and department: weizoom_card.remark = card_remark weizoom_card.activated_to = activated_to weizoom_card.department = department weizoom_card.save() # 创建激活日志 module_api.create_weizoom_card_log(request.user.id, -1, event_type, id, weizoom_card.money) response = create_response(200) # 创建操作日志 WeizoomCardOperationLog.objects.create(card_id=id, operater_id=request.user.id, operater_name=request.user, operate_log=operate_log, remark=card_remark, activated_to=activated_to, department=department) except: response = create_response(500) return response.get_response()
def update_batch_status(request): card_ids = request.POST.get('card_ids', '') target_id = request.POST.get('target_id', '') activated_at = datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M:%S') WeizoomCard.objects.filter(id__in=card_ids.split(',')).update(status=0, target_user_id=target_id, activated_at=activated_at) # 创建激活日志 for card in WeizoomCard.objects.filter(id__in=card_ids.split(',')): module_api.create_weizoom_card_log( request.user.id, -1, WEIZOOM_CARD_LOG_TYPE_ACTIVATION, card.id, card.money) response = create_response(200) return response.get_response()
def update_batch_status(request): """ 批量激活微众卡 """ card_ids = request.POST.get('card_id', '') card_remark = request.POST['card_remark'] activated_to = request.POST['activated_to'] department = request.POST['department'] if card_ids: card_ids = card_ids.split(',') activated_at = datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M:%S') cards = WeizoomCard.objects.filter(id__in=card_ids) cards.update(status=0, activated_at=activated_at, remark=card_remark, activated_to=activated_to, department=department, active_card_user_id=request.user.id) # 创建操作日志 operation_logs = [] for card_id in card_ids: operation_logs.append( WeizoomCardOperationLog(card_id=card_id, operater_id=request.user.id, operater_name=request.user, operate_log=u'激活', remark=card_remark, activated_to=activated_to)) WeizoomCardOperationLog.objects.bulk_create(operation_logs) # 创建激活日志 for card in cards: module_api.create_weizoom_card_log( request.user.id, -1, WEIZOOM_CARD_LOG_TYPE_ACTIVATION, card.id, card.money) response = create_response(200) else: response = create_response(500) response.errMsg = u'没有需要激活的卡' return response.get_response()
def update_status(request): id = request.POST['card_id'] status = int(request.POST['status']) event_type = WEIZOOM_CARD_LOG_TYPE_DISABLE weizoom_card = WeizoomCard.objects.get(id=id) if weizoom_card.status == WEIZOOM_CARD_STATUS_INACTIVE: weizoom_card.activated_at = datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M:%S') event_type = WEIZOOM_CARD_LOG_TYPE_ACTIVATION if (status==0 and weizoom_card.weizoom_card_rule.money!=weizoom_card.money): weizoom_card.status = WEIZOOM_CARD_STATUS_USED else: weizoom_card.status = status=status weizoom_card.target_user_id = 0 weizoom_card.save() # 创建激活日志 module_api.create_weizoom_card_log(request.user.id, -1, event_type, id, weizoom_card.money) response = create_response(200) return response.get_response()
def change_weizoom_card_to_integral(request): """ 微众卡兑换积分,暂不使用 """ if True: return response = create_response(500) data = dict() card_id = request.POST.get('card_id', '') webapp_owner_id = request.webapp_owner_id if card_id: try: weizoom_card = WeizoomCard.objects.get(id=card_id) except: weizoom_card = None data['msg'] = u'不存在该微众卡' if weizoom_card and weizoom_card.status == WEIZOOM_CARD_STATUS_INACTIVE: data['msg'] = u'微众卡未激活' if weizoom_card and WeizoomCardUsedAuthKey.is_can_pay( request.COOKIES[core_setting.WEIZOOM_CARD_AUTH_KEY], card_id ) and weizoom_card.status != WEIZOOM_CARD_STATUS_INACTIVE: integral_each_yuan = IntegralStrategySttings.get_integral_each_yuan( request.user_profile.webapp_id) if integral_each_yuan: expired_money = weizoom_card.money change_integral = weizoom_card.money * integral_each_yuan if change_integral > int(change_integral): change_integral = int(change_integral) + 1 change_integral = int(change_integral) try: log = increase_member_integral(request.member, change_integral, u'积分兑换') weizoom_card.money = 0 weizoom_card.status = WEIZOOM_CARD_STATUS_EMPTY weizoom_card.save() # 创建微众卡日志 module_api.create_weizoom_card_log( webapp_owner_id, -1, WEIZOOM_CARD_LOG_TYPE_RETURN_BY_SYSTEM, weizoom_card.id, expired_money, log.id if log else 0) #登录安全 WeizoomCardUsedAuthKey.objects.filter( auth_key=request.COOKIES[ core_setting.WEIZOOM_CARD_AUTH_KEY], weizoom_card_id=card_id).delete() except: notify_message = u"微众卡兑换积分, cause:\n{}".format( unicode_full_stack()) watchdog_error(notify_message) response = create_response(500) response.data = u'兑换失败' else: response = create_response(500) response.data = u'兑换失败' response = create_response(200) elif data.has_key('msg') is False: response.data = u'兑换失败' response.data = data return response.get_response()