def get_rst_bankcard_list(rst_id): arg_spec = { 'status': Arg(int, allow_missing=True), 'type_code': Arg(int, allow_missing=True), 'page_size': Arg(int, allow_missing=True), 'page_no': Arg(int, allow_missing=True) } args = args_parser.parse(arg_spec) status = args.get('status') type_code = args.get('type_code') page_no, page_size = get_paging_params() offset = (page_no - 1) * page_size limit = page_size rst_bankcard_list = bankcard_base \ .query_bankcard(rst_id, status=status, limit=limit, offset=offset) rst_bankcard_list_new = [model2dict(m) for m in rst_bankcard_list] return { 'bankcard_list': rst_bankcard_list_new, 'total_num': bankcard_base.get_bankcard_count([ rst_id, ], status=status, type_code=type_code) }
def query_by_area(): arg_spec = {'city_id': Arg(int), '_area': Arg(list)} args = args_parser.parse(arg_spec) points = [] for point_dic in args.get('_area', []): points.append('{lng},{lat}'.format(**point_dic)) return transaction_svc.get_order_trs_by_area(args['city_id'], points)
def query(): args_spec = { 'query': Arg(unicode, default='{}'), 'struct': Arg(unicode, default='{}'), } args = args_parser.parse(args_spec) result = order_query_helper.ess_search2(**args) return result
def olpay_income_records(restaurant_id): args = args_parser.parse({ 'type': Arg(int, required=False), 'begin_date': Arg(str, required=False), 'end_date': Arg(str, required=False), }) records = restaurant_manager.get_olpay_records(restaurant_id, **args) return {'records': records}
def edit_username_mobile(): args_spec = { 'user_id':Arg(int), 'username':Arg(unicode), 'mobile':Arg(unicode), } args = args_parser.parse(args_spec) chaos_base.edit_username_mobile(**args) return '{"success": true}'
def get(): args = args_parser.parse({ 'restaurant_id': Arg(int, allow_missing=True), 'is_premium': Arg(int, allow_missing=True), 'order_mode': Arg(int, allow_missing=True), 'is_valid': Arg(int, allow_missing=True), }) result, total_num = get_notifications(args) return {'notifications': result, 'total_num': total_num}
def balance_change(restaurant_id): args = args_parser.parse({ 'trade_type': Arg(int, required=False), 'begin_date': Arg(str, required=False), 'end_date': Arg(str, required=False), }) records, total_num = restaurant_manager.get_balance_change( restaurant_id, **args) return {'records': records, 'total_num': total_num}
def put(): args = args_parser.parse({ 'restaurant_ids': Arg([], allow_missing=False), 'notice_enabled': Arg(int, allow_missing=True), 'in_charge': Arg(int, allow_missing=True), }) args['restaurant_ids'] = [int(r) for r in args['restaurant_ids']] set_notification(**args) return ''
def put(city_id): arg_spec = { 'date_from': Arg(str, required=True), 'date_end': Arg(str, required=True), } args = args_parser.parse(arg_spec) return trs_query_cfg_service.add_or_update(city_id, strptime_to_date(args['date_from']), strptime_to_date(args['date_end']))
def withdraw_records(restaurant_id): args = args_parser.parse({ 'status': Arg(int, required=False), 'begin_date': Arg(str, required=False), 'end_date': Arg(str, required=False), }) records, total_num = restaurant_manager.get_withdraw_records( restaurant_id, **args) return {'records': records, 'total_num': total_num}
def get_list(): user_args = { 'status': Arg(int), 'order_id': Arg(int), 'pay_platform': Arg(int), } page_no, page_size = get_paging_params() args = args_parser.parse(user_args) args.update(offset=(page_no - 1) * page_size, limit=page_size) result = refund_service.query(**args) return result
def update(coupon_id): args_spec = { 'deadline': Arg(str, allow_missing=True), 'remain': Arg(int, allow_missing=True), } args = args_parser.parse(args_spec) return coupon_base.update( coupon_id=coupon_id, deadline=args.get('deadline'), remain=args.get('remain', 0), )
def set_is_valid(): args_spec = { 'zone_id': Arg(int), 'zone_ids': Arg(default=[]), 'is_valid': Arg(bool), } args = args_parser.parse(args_spec) zone_id = args['zone_id'] zone_ids = args['zone_ids'] if zone_id: zone_ids.append(zone_id) zone_base.set_is_valid(zone_ids, args['is_valid']) return ''
def refuse_contract(): """ 餐厅拒绝签署活动合同 """ args_spec = { 'contract_id': Arg(int), 'restaurant_id': Arg(int), } args = args_parser.parse(args_spec) with thrift_client('ers') as ers: result = ers.refuse_activity_subsidy_contract(args['contract_id'], args['restaurant_id']) return ''
def set_is_valid(): args_spec = { 'city_id': Arg(int), 'city_ids': Arg(default=[]), 'is_valid': Arg(bool) } args = args_parser.parse(args_spec) city_id = args['city_id'] city_ids = args['city_ids'] if city_id: city_ids.append(city_id) city_base.set_is_valid(city_ids, is_valid=args['is_valid']) return ''
def set_is_valid(): args_spec = { 'district_id': Arg(int), 'district_ids': Arg(default=[]), 'is_valid': Arg(bool), } args = args_parser.parse(args_spec) district_id = args['district_id'] district_ids = args['district_ids'] if district_id: district_ids.append(district_id) district_base.set_is_valid(district_ids, is_valid=args['is_valid']) return ''
def set_is_valid(): args_spec = { 'entry_id': Arg(int), 'entry_ids': Arg(default=[]), 'is_valid': Arg(bool), } args = args_parser.parse(args_spec) entry_id = args['entry_id'] entry_ids = args['entry_ids'] if entry_id: entry_ids.append(entry_id) entry_base.set_is_valid(entry_ids, args['is_valid']) return ''
def query(): args_spec = { 'sn': Arg(str), 'batch_sn': Arg(str), } args = args_parser.parse(args_spec) page_no, page_size = get_paging_params() offset = (page_no - 1) * page_size limit = page_size return coupon_base.query(sn=args['sn'], batch_sn=args['batch_sn'], offset=offset, limit=limit)
def quit_restaurant_activity(): """ # deprecate 退出餐厅活动(即设置餐厅活动为未设置状态) """ args_spec = { 'restaurant_id': Arg(), 'activity_id': Arg(), } args = args_parser.parse(args_spec) restaurant_id = args['restaurant_id'] activity_id = args['activity_id'] with thrift_client('ers') as ers: result = ers.quit_restaurant_activity(restaurant_id, activity_id) return ''
def query_receive_by_mobile(): args_spec = { 'mobile':Arg(int) } args = args_parser.parse(args_spec) result = sms_base.query_receive_by_mobile(args['mobile']) return result
def get_alipay_url(): args_spec = { 'batch_id': Arg(int), } batch_id = args_parser.parse(args_spec)['batch_id'] url_info = get_alipay_html(batch_id) return {'url': url_info.url, 'form_data': url_info.form_data}
def get_user_by_mobile(): args = { 'mobile':Arg(), } arg_spec = args_parser.parse(args) user = user_base.get_by_mobile(arg_spec['mobile']) return user or {}
def is_username_available(): args = { 'username':Arg(), } args_spec = args_parser.parse(args) available = user_base.is_username_available(args_spec['username']) return {'available':available}
def apply_for_complex_activity_subsidy_contract(): """ 申请参加活动.会生成一份活动对应的合同等待同意 """ #todo 权限效验 current_user.id args_spec = { 'restaurant_id': Arg(int), 'activity_id': Arg(int), 'activity_category_id': Arg(int), 'subsidy': Arg(str), } args = args_parser.parse(args_spec) with thrift_client('ers') as ers: ers.apply_for_complex_activity_subsidy_contract( args['restaurant_id'], args['activity_id'], args['activity_category_id'], args['subsidy'], current_user.id) return ''
def export(): args_spec = { 'query': Arg(unicode, default='{}'), 'struct': Arg(unicode, default='{}'), } args = args_parser.parse(args_spec) result = order_query_helper.ess_search2(**args) orders = result['objects'] head_line = [ u"订单号", u"订单时间", u"用户名", u"餐厅名称", u"餐厅id", # u"订餐电话", u"地址", u"备注", u"订餐内容(菜单)", u"总价", u"ip", ] lines = [] for order in orders: with thrift_client('eos') as eos: _o = eos.get(int(order['order_id'])) line_list = [ order['order_id'], order['active_at'], order['user_name'], order['restaurant_name'], unicode(order['restaurant_id']), # order['phone'][0], order['address'], order['description'], order['content_text'], unicode(order['total']), _o.ip ] line_list = [x.replace('\n', '') for x in line_list] lines.append(line_list) data = tablib.Dataset(*lines, headers=head_line) return make_excel_res(data.xls)
def gets(): arg_spec = { 'city_id': Arg(int, allow_missing=True) } args = args_parser.parse(arg_spec) offset, limit = get_paging_params(db_style=True) return trs_query_cfg_service.gets(city_id=args.get('city_id'), offset=offset, limit=limit)
def olpay_income_details(restaurant_id, date): args = args_parser.parse({ 'status': Arg(int, required=False), }) records, total_num = restaurant_manager.get_olpay_detail(restaurant_id, date=date, **args) return {'records': records, 'total_num': total_num}
def available_food_activity(): """ 获取当前可以设置的食物活动 """ # ...这个接口对应的zeus接口歧义太锤子了... args_spec = { 'city_id': Arg(int, default=None), 'city_ids': Arg(default=[]), 'restaurant_id': Arg(int, default=None), 'restaurant_ids': Arg(default=[]), } args = args_parser.parse(args_spec) city_id = args['city_id'] city_ids = args['city_ids'] if city_id: city_ids.append(city_id) restaurant_id = args['restaurant_id'] restaurant_ids = args['restaurant_ids'] if restaurant_id: restaurant_ids.append(restaurant_id) # attention,这里接口跟zeus的略不一致. if restaurant_id and not city_id: with thrift_client('ers') as ers: restaurant = ers.get(restaurant_id) city_id = restaurant.city_id if city_id not in city_ids: city_ids.append(city_id) # now_str = str(datetime.datetime.now()).split()[0] results = {} with thrift_client('ers') as ers: for x in range(0, 8): query = thirdparty_svc.ers.TFoodActivityQuery() query.city_ids = city_ids query.weekday = [ x, ] # query.begin_date = now_str query.end_date = now_str query.is_valid = True result = ers.query_food_activity(query) for activity in result: results[activity.id] = activity activities = results.values() return activities
def retry(pk): user_args = { 'pay_type': Arg(int, required=True), 'bank_account': Arg(str, required=True), 'bank_name': Arg(unicode, allow_missing=True), 'account_type': Arg(int, allow_missing=True), 'account_holder': Arg(unicode, allow_missing=True), 'bank_branch': Arg(unicode, allow_missing=True), 'city': Arg(unicode, allow_missing=True), } args = args_parser.parse(user_args) if args.get('pay_type') == 1: result = refund_service.save_bank_account( pk=pk, admin_id=current_user.id, bank_account=args.get('bank_account'), bank_name=args.get('bank_name'), account_type=args.get('account_type'), account_holder=args.get('account_holder'), bank_branch=args.get('bank_branch'), city=args.get('city') ) else: result = refund_service.save_alipay_account( pk=pk, admin_id=current_user.id, bank_account=args.get('bank_account') ) return result
def save(): args_spec = { 'city_id': Arg(int, required=True), 'type_code': Arg(int, required=True), 'area': Arg(dict, required=True), 'name': Arg(unicode, required=True), } args = args_parser.parse(args_spec) if not city_permission(args.get('city_id')): raise_auth_exc(AUTH_FAILED_ERROR) _check_region_type(args.get('type_code')) _check_region_json(args.get('area')) args.update(area=json.dumps(args['area'])) result = region_brand.save(**args) return result