|
# -*- coding: utf-8 -*-
from django.conf import settings
from django.contrib import admin
from django_admin import DeleteModelAdmin
from account.models import UserInfo
from member.models import (GoodsInfo, GoodsOrderInfo, MemberActivityContributionInfo,
MemberActivityContributionWelfareInfo, MemberActivityContributionWelfareUnlockingInfo,
MemberActivityGroupShareInfo, MemberActivityInfo, MemberActivitySigninInfo,
MemberActivitySignupInfo, RightInfo, ShotTypeInfo)
from pre.custom_message import sendwxasubscribemessage
from utils.redis.rshot import update_member_shot_data
class GoodsInfoAdmin(admin.ModelAdmin):
list_display = ('good_id', 'good_type', 'title', 'value', 'left_num', 'coupon_id', 'image', 'is_slider', 'slider_image', 'integral', 'fee', 'minlevel', 'only_for_member', 'only_once', 'position', 'is_upload_qiniu', 'status', 'created_at', 'updated_at')
list_filter = ('good_type', 'is_slider', 'only_for_member', 'only_once', 'is_upload_qiniu', 'status')
class GoodsOrderInfoAdmin(admin.ModelAdmin):
list_display = ('order_id', 'user_id', 'good_id', 'good_type', 'title', 'name', 'phone', 'address', 'tracking_number', 'send_template_message_res', 'has_send_template_message', 'integral', 'status', 'created_at', 'updated_at')
list_filter = ('good_type', 'status')
def save_model(self, request, obj, form, change):
obj.save()
if obj.good_type != GoodsInfo.PHYSICAL or not obj.tracking_number or obj.has_send_template_message:
return
obj.has_send_template_message = True
obj.save()
# 校验用户是否存在
try:
user = UserInfo.objects.get(user_id=obj.user_id)
except UserInfo.DoesNotExist:
return
# TODO: 立即推送模版消息,兑换成功,快递已发送(商品,快递单号,扣除的积分)
data = {
"thing6": {
"value": obj.title,
"color": "#173177"
},
"character_string7": {
"value": obj.tracking_number,
"color": "#173177"
},
"number2": {
"value": obj.integral,
"color": "#173177"
},
"thing5": {
"value": u"您的礼品正在快马加鞭赶来,请耐心等待呦~",
"color": "#173177"
},
}
sendwxasubscribemessage(openid=user.openid_miniapp, template_id=settings.TEMPLATE_ID_TRACKING, data=data, miniprogram_state=None, lang=None, page=None)
class RightInfoAdmin(admin.ModelAdmin):
list_display = ('right_id', 'right_type', 'icon', 'title', 'subtitle', 'detail', 'level1', 'level2', 'level3', 'level4', 'level5', 'minlevel', 'position', 'is_send_coupon', 'coupon_num', 'coupon_level1_id', 'coupon_level2_id', 'coupon_level3_id', 'status', 'created_at', 'updated_at')
list_filter = ('right_type', 'is_send_coupon', 'is_continue_send_coupon', 'status')
class ShotTypeInfoAdmin(DeleteModelAdmin, admin.ModelAdmin):
list_display = ('shot_type_id', 'shot_type_name', 'position', 'status', 'created_at', 'updated_at')
def save_model(self, request, obj, form, change):
obj.save()
update_member_shot_data()
def delete_model(self, request, obj):
obj.delete()
update_member_shot_data()
class MemberActivityInfoAdmin(admin.ModelAdmin):
list_display = ('activity_id', 'activity_type', 'title', 'subtitle', 'date', 'start_date', 'end_date', 'start_display_date', 'end_display_date', 'city', 'location', 'lat', 'lon', 'is_slider', 'slider_image', 'cover', 'limit_image_num', 'share_img_link', 'share_h5_link', 'is_signup', 'activity_state', 'position', 'is_upload_qiniu', 'status', 'created_at', 'updated_at')
list_filter = ('activity_type', 'is_slider', 'is_signup', 'activity_state', 'is_upload_qiniu', 'status')
class MemberActivitySignupInfoAdmin(admin.ModelAdmin):
list_display = ('signup_id', 'activity_id', 'title', 'name', 'phone', 'status', 'created_at', 'updated_at')
class MemberActivitySignupInfoAdmin(admin.ModelAdmin):
list_display = ('signup_id', 'user_id', 'activity_id', 'title', 'name', 'phone', 'status', 'created_at', 'updated_at')
class MemberActivitySigninInfoAdmin(admin.ModelAdmin):
list_display = ('signin_id', 'user_id', 'activity_id', 'title', 'status', 'created_at', 'updated_at')
class MemberActivityGroupShareInfoAdmin(admin.ModelAdmin):
list_display = ('group_share_id', 'activity_id', 'share_user_id', 'click_user_id', 'open_gid', 'title', 'is_integral', 'integral', 'status', 'created_at', 'updated_at')
list_filter = ('is_integral', 'status')
class MemberActivityContributionInfoAdmin(admin.ModelAdmin):
list_display = ('contribution_id', 'user_id', 'activity_id', 'content_type', 'title', 'content', 'images', 'video_url', 'audit_status', 'is_selected', 'status', 'created_at', 'updated_at')
list_filter = ('activity_id', 'content_type', 'audit_status', 'is_selected', 'status')
class MemberActivityContributionWelfareInfoAdmin(admin.ModelAdmin):
list_display = ('welfare_id', 'activity_id', 'welfare_type', 'welfare_title', 'welfare_detail', 'welfare_value', 'welfare_image', 'status', 'created_at', 'updated_at')
list_filter = ('activity_id', 'welfare_type', 'status')
class MemberActivityContributionWelfareUnlockingInfoAdmin(admin.ModelAdmin):
list_display = ('unlocking_id', 'admin_id', 'user_id', 'activity_id', 'contribution_id', 'welfare_id', 'welfare_type', 'welfare_value', 'name', 'phone', 'address', 'tracking_number', 'is_handled', 'status', 'created_at', 'updated_at')
list_filter = ('admin_id', 'activity_id', 'welfare_id', 'is_handled', 'status')
admin.site.register(GoodsInfo, GoodsInfoAdmin)
admin.site.register(GoodsOrderInfo, GoodsOrderInfoAdmin)
admin.site.register(RightInfo, RightInfoAdmin)
admin.site.register(ShotTypeInfo, ShotTypeInfoAdmin)
admin.site.register(MemberActivityInfo, MemberActivityInfoAdmin)
admin.site.register(MemberActivitySignupInfo, MemberActivitySignupInfoAdmin)
admin.site.register(MemberActivitySigninInfo, MemberActivitySigninInfoAdmin)
admin.site.register(MemberActivityGroupShareInfo, MemberActivityGroupShareInfoAdmin)
admin.site.register(MemberActivityContributionInfo, MemberActivityContributionInfoAdmin)
admin.site.register(MemberActivityContributionWelfareInfo, MemberActivityContributionWelfareInfoAdmin)
admin.site.register(MemberActivityContributionWelfareUnlockingInfo, MemberActivityContributionWelfareUnlockingInfoAdmin)
|