@@ -151,6 +151,9 @@ class UserInfo(BaseModelMixin, LensmanTypeBoolMixin):  | 
            ||
| 151 | 151 | 
                identity_card_number = models.CharField(_(u'identity_card_number'), max_length=32, blank=True, null=True, help_text=u'身份证号')  | 
            
| 152 | 152 | 
                identity_card_name = models.CharField(_(u'identity_card_name'), max_length=32, blank=True, null=True, help_text=u'身份证姓名')  | 
            
| 153 | 153 | 
                 | 
            
| 154 | 
                + #租用镜头权限  | 
            |
| 155 | 
                + tenancy_shot_permission = models.BooleanField(_(u'tenancy_shot_permission'), default=False, help_text=u'租用镜头权限')  | 
            |
| 156 | 
                +  | 
            |
| 154 | 157 | 
                class Meta:  | 
            
| 155 | 158 | 
                verbose_name = _(u'userinfo')  | 
            
| 156 | 159 | 
                verbose_name_plural = _(u'userinfo')  | 
            
                @@ -245,6 +248,11 @@ class UserInfo(BaseModelMixin, LensmanTypeBoolMixin):  | 
            ||
| 245 | 248 | 
                'freeze_integral': self.freeze_integral,  | 
            
| 246 | 249 | 
                'shots_num': self.shots_num,  | 
            
| 247 | 250 | 
                'level': self.level,  | 
            
| 251 | 
                + # 身份信息  | 
            |
| 252 | 
                + 'identity_card_number': self.identity_card_number,  | 
            |
| 253 | 
                + 'identity_card_name': self.identity_card_name,  | 
            |
| 254 | 
                +  | 
            |
| 255 | 
                + 'tenancy_shot_permission': self.tenancy_shot_permission,  | 
            |
| 248 | 256 | 
                }  | 
            
| 249 | 257 | 
                 | 
            
| 250 | 258 | 
                def brand_qydata(self, brand_id=None):  | 
            
                @@ -138,6 +138,8 @@ urlpatterns += [  | 
            ||
| 138 | 138 | 
                url(r'^admin/query_userinfo$', admin_views.query_userinfo, name='query_userinfo'),  | 
            
| 139 | 139 | 
                url(r'^admin/userinfo_update$', admin_views.userinfo_update, name='userinfo_update'),  | 
            
| 140 | 140 | 
                url(r'^admin/userinfo/integral/add$', mini_views.user_integral_add, name='user_integral_add'),  | 
            
| 141 | 
                + url(r'^admin/userinfo/tenancy/shot/permission/update$', mini_views.update_user_tenancy_shot_permission, name='update_user_tenancy_shot_permission'),  | 
            |
| 142 | 
                +  | 
            |
| 141 | 143 | 
                 | 
            
| 142 | 144 | 
                # statistic  | 
            
| 143 | 145 | 
                url(r'^admin/statistic/user_profile$', admin_views.statistic_userprofile, name='statistic_userprofile'),  | 
            
                @@ -341,3 +341,26 @@ def user_integral_add(request):  | 
            ||
| 341 | 341 | 
                )  | 
            
| 342 | 342 | 
                 | 
            
| 343 | 343 | 
                return response(200, 'Add User Integral Success', u'添加用户投稿积分成功')  | 
            
| 344 | 
                +  | 
            |
| 345 | 
                +  | 
            |
| 346 | 
                +@logit  | 
            |
| 347 | 
                +@transaction.atomic  | 
            |
| 348 | 
                +def update_user_tenancy_shot_permission(request):  | 
            |
| 349 | 
                +    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
               | 
            |
| 350 | 
                +    user_id = request.POST.get('user_id', '')
               | 
            |
| 351 | 
                +    tenancy_shot_permission = request.POST.get('tenancy_shot_permission', 0)
               | 
            |
| 352 | 
                +  | 
            |
| 353 | 
                + if brand_id != settings.KODO_DEFAULT_BRAND_ID:  | 
            |
| 354 | 
                + return response(ProductBrandStatusCode.BRAND_NOT_MATCH)  | 
            |
| 355 | 
                +  | 
            |
| 356 | 
                + try:  | 
            |
| 357 | 
                + user = UserInfo.objects.select_for_update().get(user_id=user_id, status=True)  | 
            |
| 358 | 
                + except UserInfo.DoesNotExist:  | 
            |
| 359 | 
                + return response(UserStatusCode.USER_NOT_FOUND)  | 
            |
| 360 | 
                +  | 
            |
| 361 | 
                + user.tenancy_shot_permission = tenancy_shot_permission  | 
            |
| 362 | 
                + user.save()  | 
            |
| 363 | 
                +  | 
            |
| 364 | 
                +    return response(200, 'Update User Tenancy Shot Permission Success', u'修改租用镜头权限成功', {
               | 
            |
| 365 | 
                + user: user.brandata(brand_id=brand_id)  | 
            |
| 366 | 
                + })  |