class WatchLiveTaskItemAdmin(WxModelView): Model = WatchLiveTaskItem form = WatchLiveTaskItemForm can_view_details = True details_modal = True column_details_list = ('wlt_id', 'product_id', 'product_num', 'title', 'identity') column_labels = dict(wlt_id=u'观看直播时长任务ID', product_id=u'物品', product_num=u'物品数量', title=u'商品描述', identity=u'营销平台奖项ID') column_formatters = dict( wlt_id=lambda v, c, m, n: format_model(m, n, WatchLiveTask), product_id=lambda v, c, m, n: get_choices_desc(Product.all_products_for_admin(), m[n]), ) def create_form(self, obj=None): form = super(WatchLiveTaskItemAdmin, self).create_form(obj) form.wlt_id.choices = WatchLiveTask.all_tasks_for_admin() form.product_id.choices = Product.all_products_for_admin() return form def edit_form(self, obj=None): form = super(WatchLiveTaskItemAdmin, self).edit_form(obj) form.wlt_id.choices = WatchLiveTask.all_tasks_for_admin() form.product_id.choices = Product.all_products_for_admin() return form def after_model_change(self, form, model, is_created): super(WatchLiveTaskItemAdmin, self).after_model_change(form, model, is_created) self.Model.clear_redis(form.wlt_id.data) self.Model.clear_redis(model['wlt_id']) def after_model_delete(self, model): super(WatchLiveTaskItemAdmin, self).after_model_delete(model) self.Model.clear_redis(model['wlt_id'])
def create_form(self, obj=None): form = super(TaskAdmin, self).create_form(obj) form.product_id.choices = Product.all_products_for_admin() # aids = [('', u'不限定')] # aids.extend(ActivityConfig.activity()) # form.activity_id.choices = aids return form
def edit_form(self, obj=None): form = super(TaskAdmin, self).edit_form(obj) form.product_id.choices = Product.all_products_for_admin() # aids = [('', u'不限定')] # aids.extend(ActivityConfig.activity()) # form.activity_id.choices = aids form.task_type.choices = filter(lambda x:x[0] == obj.task_type, TASK_TYPE) return form
class TaskAdmin(ModelView): form = TaskForm can_view_details = True details_modal = True column_details_list = ('title', 'description', 'image', 'task_type', 'action', 'activity_id', 'task_platform', 'game_id', 'num', 'product_id', 'product_num') column_list = ('title', 'description', 'image', 'task_type', 'action', 'task_platform', 'num', 'product_id', 'product_num') column_labels = dict(title=u'标题', description=u'描述', image=u'图片', task_type=u'任务类型', action=u'任务条件', game_id=u'游戏ID', num=u'条件数值', product_id=u'奖励物品', product_num=u'奖励物品数量', task_platform=u'任务平台', activity_id=u'活动ID') column_formatters = dict( image=format_image, task_type=lambda v, c, m, n: get_choices_desc(TASK_TYPE, m.task_type), action=lambda v, c, m, n: get_choices_desc(TASK_ACTION, m.action), game_id=format_game, product_id=lambda v, c, m, n: get_choices_desc(Product.all_products_for_admin(), m.product_id), task_platform=lambda v, c, m, n: get_choices_desc(TASK_PLATFORMS, m.task_platform), ) def create_form(self, obj=None): form = super(TaskAdmin, self).create_form(obj) form.product_id.choices = Product.all_products_for_admin() # aids = [('', u'不限定')] # aids.extend(ActivityConfig.activity()) # form.activity_id.choices = aids return form def edit_form(self, obj=None): form = super(TaskAdmin, self).edit_form(obj) form.product_id.choices = Product.all_products_for_admin() # aids = [('', u'不限定')] # aids.extend(ActivityConfig.activity()) # form.activity_id.choices = aids form.task_type.choices = filter(lambda x:x[0] == obj.task_type, TASK_TYPE) return form def after_model_change(self, form, model, is_created): super(TaskAdmin, self).after_model_change(form, model, is_created) Redis.delete(TASK_KEY) def after_model_delete(self, model): super(TaskAdmin, self).after_model_delete(model) UserTask.delete().where(UserTask.task_id==model.task_id).execute() Redis.delete(TASK_KEY) def create_model(self, form): if form.topest.data: Task.reset_topest_task() return super(TaskAdmin, self).create_model(form) def update_model(self, form, model): if form.topest.data: Task.reset_topest_task() return super(TaskAdmin, self).update_model(form, model)
class UserOrderAdmin(ModelView): form = UserOrderForm can_create = False can_delete = False can_view_details = True details_modal = True column_details_list = ('order_id', 'user_id', 'item_id', 'store_id', 'store_type', 'campaign_id', 'title', 'product_id', 'product_num', 'status', 'result', 'recid', 'create_at') column_list = ('order_id', 'user_id', 'title', 'product_num', 'store_id', 'status') column_labels = dict(order_id=u'订单ID', user_id=u'用户', item_id=u'商品', store_id=u'商店', store_type=u'商店类型', campaign_id=u'营销平台活动ID', title=u'商品描述', product_id=u'物品', product_num=u'物品数量', status=u'状态', result=u'抽奖结果', recid=u'营销平台兑换订单', create_at=u'创建时间') column_formatters = dict( store_id=lambda v, c, m, n: get_choices_desc(store.Store.all_stores_for_admin(), m.store_id), product_id=lambda v, c, m, n: get_choices_desc(Product.all_products_for_admin(), m.product_id), store_type=lambda v, c, m, n: get_choices_desc(store.STORE_TYPE, m.store_type), status=lambda v, c, m, n: get_choices_desc(store.STATUS, m.status), user_id=format_user ) column_filters = ( 'user_id', PeeweeEqualFilter( column=store.UserOrder.store_id, name='商店', options=store.Store.all_stores_for_admin() ), PeeweeEqualFilter( column=store.UserOrder.status, name='订单状态', options=store.STATUS ), PeeweeEqualFilter( column=store.UserOrder.product_id, name='物品', options=Product.all_products_for_admin() ), )
class StoreItemAdmin(ModelView): form = StoreItemForm can_view_details = True details_modal = True column_details_list = ('store_id', 'product_id', 'product_num', 'title', 'credit_type', 'credit_value', 'total_num', 'use_num', 'left_num', 'order', 'identity') column_list = ('store_id', 'product_id', 'product_num', 'credit_type', 'credit_value', 'left_num', 'order', 'identity') column_labels = dict(store_id=u'商店', product_id=u'物品', product_num=u'物品数量', title=u'商品描述', credit_type=u'价格类型', credit_value=u'价格数值', total_num=u'总库存', use_num=u'已用库存', left_num=u'剩余库存', order=u'显示顺序', identity=u'营销平台奖项ID') column_formatters = dict( store_id=lambda v, c, m, n: get_choices_desc(store.Store.all_stores_for_admin(), m.store_id), product_id=lambda v, c, m, n: get_choices_desc(Product.all_products_for_admin(), m.product_id), credit_type=lambda v, c, m, n: get_choices_desc(store.CREDIT_TYPE, m.credit_type), ) column_filters = ('store_id',) def create_form(self, obj=None): form = super(StoreItemAdmin, self).create_form(obj) form.store_id.choices = store.Store.all_stores_for_admin() form.product_id.choices = Product.all_products_for_admin() return form def edit_form(self, obj=None): form = super(StoreItemAdmin, self).edit_form(obj) form.store_id.choices = filter(lambda x: x[0] == obj.store_id, store.Store.all_stores_for_admin()) # form.store_id.choices = store.Store.all_stores_for_admin() form.product_id.choices = Product.all_products_for_admin() return form def after_model_change(self, form, model, is_created): super(StoreItemAdmin, self).after_model_change(form, model, is_created) key = store.STORE_ITEM_KEY % ({'store_id': model.store_id}) Redis.delete(key) def after_model_delete(self, model): super(StoreItemAdmin, self).after_model_delete(model) key = store.STORE_ITEM_KEY % ({'store_id': model.store_id}) Redis.delete(key)
def edit_form(self, obj=None): form = super(WatchLiveTaskItemAdmin, self).edit_form(obj) form.wlt_id.choices = WatchLiveTask.all_tasks_for_admin() form.product_id.choices = Product.all_products_for_admin() return form
def edit_form(self, obj=None): form = super(StoreItemAdmin, self).edit_form(obj) form.store_id.choices = filter(lambda x: x[0] == obj.store_id, store.Store.all_stores_for_admin()) # form.store_id.choices = store.Store.all_stores_for_admin() form.product_id.choices = Product.all_products_for_admin() return form
def create_form(self, obj=None): form = super(StoreItemAdmin, self).create_form(obj) form.store_id.choices = store.Store.all_stores_for_admin() form.product_id.choices = Product.all_products_for_admin() return form