| @@ -4,6 +4,7 @@ from __future__ import division | ||
| 4 | 4 |  | 
| 5 | 5 | import json | 
| 6 | 6 |  | 
| 7 | +from django.conf import settings | |
| 7 | 8 | from django.db import transaction | 
| 8 | 9 | from django.db.models import Q | 
| 9 | 10 | from django_logit import logit | 
| @@ -14,10 +15,12 @@ from TimeConvert import TimeConvert as tc | ||
| 14 | 15 | from api.tenancy_views import tenancy_tracking_info_subscribe | 
| 15 | 16 | from kodo.decorators import check_admin | 
| 16 | 17 | from pre.custom_message import sendtemplatemessage | 
| 18 | +from account.models import UserInfo | |
| 17 | 19 | from tenancy.models import TenancyShotInfo, TenancyShotRequestInfo | 
| 18 | 20 | from utils.error.errno_utils import TenancyStatusCode | 
| 19 | 21 | from utils.kuaidi.synquery import KuaiDi100 | 
| 20 | 22 |  | 
| 23 | +WECHAT = settings.WECHAT | |
| 21 | 24 |  | 
| 22 | 25 | @logit | 
| 23 | 26 | @check_admin | 
| @@ -183,6 +186,7 @@ def shot_request_update(request, administrator): | ||
| 183 | 186 |      back_express_name = request.POST.get('back_express_name', '') | 
| 184 | 187 |      back_express_com = request.POST.get('back_express_com', '') | 
| 185 | 188 |      back_tracking_number = request.POST.get('back_tracking_number', '') | 
| 189 | +    remark = request.POST.get('remark', '') | |
| 186 | 190 |  | 
| 187 | 191 | try: | 
| 188 | 192 | req = TenancyShotRequestInfo.objects.select_for_update().get(request_id=req_id, status=True) | 
| @@ -223,6 +227,8 @@ def shot_request_update(request, administrator): | ||
| 223 | 227 | req.back_express_com = back_express_com | 
| 224 | 228 | if back_tracking_number: | 
| 225 | 229 | req.back_tracking_number = back_tracking_number | 
| 230 | + if remark: | |
| 231 | + req.remark = remark | |
| 226 | 232 | req.save() | 
| 227 | 233 |  | 
| 228 | 234 | if tracking_number and tracking_number != old_tracking_number: | 
| @@ -309,6 +315,11 @@ def shot_request_send(request, administrator): | ||
| 309 | 315 | shot.tenancy_status = 1 | 
| 310 | 316 | shot.save() | 
| 311 | 317 |  | 
| 318 | + try: | |
| 319 | + user = UserInfo.objects.get(user_id=req.user_id) | |
| 320 | + except UserInfo.DoesNotExist: | |
| 321 | + return response() | |
| 322 | + | |
| 312 | 323 | if tracking_number and tracking_number != old_tracking_number: | 
| 313 | 324 | tenancy_tracking_info_subscribe(req, 'tracking') | 
| 314 | 325 |          data = { | 
| @@ -321,15 +332,15 @@ def shot_request_send(request, administrator): | ||
| 321 | 332 | "color": "#173177" | 
| 322 | 333 | }, | 
| 323 | 334 |              "keyword2": { | 
| 324 | - "value": shot.model_name, | |
| 335 | + "value": shot.data['model_info']['model_full_name'], | |
| 325 | 336 | "color": "#173177" | 
| 326 | 337 | }, | 
| 327 | -             "keyword2": { | |
| 338 | +             "keyword3": { | |
| 328 | 339 | "value": shot.sn, | 
| 329 | 340 | "color": "#173177" | 
| 330 | 341 | }, | 
| 331 | 342 |              "remark": { | 
| 332 | - "value": u'感谢您的申请', | |
| 343 | + "value": req.remark if req.remark else u'感谢您的申请', | |
| 333 | 344 | "color": "#173177" | 
| 334 | 345 | } | 
| 335 | 346 | } | 
| @@ -0,0 +1,19 @@ | ||
| 1 | +# -*- coding: utf-8 -*- | |
| 2 | +# Generated by Django 3.2.16 on 2022-12-06 08:24 | |
| 3 | + | |
| 4 | +from django.db import migrations, models | |
| 5 | + | |
| 6 | + | |
| 7 | +class Migration(migrations.Migration): | |
| 8 | + | |
| 9 | + dependencies = [ | |
| 10 | +        ('tenancy', '0005_tenancyshotinfo_admin_id'), | |
| 11 | + ] | |
| 12 | + | |
| 13 | + operations = [ | |
| 14 | + migrations.AddField( | |
| 15 | + model_name='tenancyshotrequestinfo', | |
| 16 | + name='remark', | |
| 17 | + field=models.CharField(default='', help_text='备注', max_length=256, verbose_name='remark'), | |
| 18 | + ), | |
| 19 | + ] | 
| @@ -125,6 +125,8 @@ class TenancyShotRequestInfo(BaseModelMixin): | ||
| 125 | 125 | request_status = models.CharField(_(u'request_status'), max_length=16, default='', help_text=u'租借申请状态') | 
| 126 | 126 |      request_status_at = JSONField(_(u'request_status_at'), blank=True, null=True, default={}, help_text=u'租借申请状态变更时间') | 
| 127 | 127 |  | 
| 128 | + remark = models.CharField(_(u'remark'), max_length=256, default='', help_text=u'备注') | |
| 129 | + | |
| 128 | 130 | class Meta: | 
| 129 | 131 | verbose_name = _(u'租赁镜头申请信息') | 
| 130 | 132 | verbose_name_plural = _(u'租赁镜头申请信息') | 
| @@ -182,6 +184,7 @@ class TenancyShotRequestInfo(BaseModelMixin): | ||
| 182 | 184 | 'request_status': self.request_status, | 
| 183 | 185 |              'request_status_at': {k: tc.local_date_string(utc_dt=tc.string_to_utc_datetime(v, format='%Y-%m-%dT%H:%M:%S.%fZ')) for k, v in self.request_status_at.items()}, | 
| 184 | 186 | 'created_at': tc.local_date_string(utc_dt=self.created_at), | 
| 187 | + 'remark': self.remark, | |
| 185 | 188 | } | 
| 186 | 189 |  | 
| 187 | 190 | @property | 
| @@ -236,4 +239,5 @@ class TenancyShotRequestInfo(BaseModelMixin): | ||
| 236 | 239 | 'lens_hood_status': self.lens_hood_status, | 
| 237 | 240 | 'tripod_ring_status': self.tripod_ring_status, | 
| 238 | 241 | 'appearance_performance_status': self.appearance_performance_status, | 
| 242 | + 'remark': self.remark, | |
| 239 | 243 | } |