No Description

admin.py 3.0KB

    # -*- coding: utf-8 -*- from curtail_uuid import CurtailUUID from django.contrib import admin from django.contrib.auth.hashers import make_password from account.models import (LensmanIncomeExpensesInfo, LensmanInfo, LensmanLoginLogInfo, UserIncomeExpensesInfo, UserInfo, UserLoginLogInfo) class LensmanInfoAdmin(admin.ModelAdmin): readonly_fields = ('lensman_id', 'encryption', ) list_display = ('lensman_id', 'unionid', 'username', 'name', 'sex', 'phone', 'location', 'proportion', 'balance', 'user_status', 'status', 'created_at', 'updated_at') search_fields = ('name', 'phone', 'location') list_filter = ('sex', 'user_status', 'status') def save_model(self, request, obj, form, change): if not obj.lensman_id: user_id = CurtailUUID.uuid(UserInfo, 'user_id') obj.lensman_id = user_id fields = { 'unionid': obj.unionid, 'name': obj.name, 'sex': obj.sex, 'phone': obj.phone, 'location': obj.location, 'user_status': obj.user_status, } user, created = UserInfo.objects.get_or_create(user_id=obj.lensman_id, user_from=UserInfo.LENSMAN_USER, defaults=fields) if not created: for key, value in fields.iteritems(): setattr(user, key, value) user.save() if obj.password: obj.encryption = make_password(obj.password, None, 'pbkdf2_sha256') obj.password = None obj.save() class LensmanLoginLogInfoAdmin(admin.ModelAdmin): list_display = ('lensman_id', 'login_ip', 'login_result', 'status', 'created_at', 'updated_at') class LensmanIncomeExpensesInfoAdmin(admin.ModelAdmin): list_display = ('lensman_id', 'photo_id', 'type', 'amount', 'balance', 'remark', 'status', 'created_at', 'updated_at') list_filter = ('type', 'status') class UserInfoAdmin(admin.ModelAdmin): readonly_fields = ('user_id', ) list_display = ('user_id', 'user_from', 'username', 'wx_uid', 'unionid', 'name', 'sex', 'nickname', 'phone', 'location', 'balance', 'user_status', 'status', 'created_at', 'updated_at') search_fields = ('name', 'phone', 'location') list_filter = ('user_from', 'sex', 'user_status', 'status') class UserLoginLogInfoAdmin(admin.ModelAdmin): list_display = ('user_id', 'login_ip', 'login_result', 'status', 'created_at', 'updated_at') class UserIncomeExpensesInfoAdmin(admin.ModelAdmin): list_display = ('user_id', 'photo_id', 'type', 'amount', 'balance', 'remark', 'status', 'created_at', 'updated_at') list_filter = ('type', 'status') admin.site.register(LensmanInfo, LensmanInfoAdmin) admin.site.register(LensmanLoginLogInfo, LensmanLoginLogInfoAdmin) admin.site.register(LensmanIncomeExpensesInfo, LensmanIncomeExpensesInfoAdmin) admin.site.register(UserInfo, UserInfoAdmin) admin.site.register(UserLoginLogInfo, UserLoginLogInfoAdmin) admin.site.register(UserIncomeExpensesInfo, UserIncomeExpensesInfoAdmin)