wushaodong před 4 roky
rodič
revize
1eeb2b4c8f

+ 15 - 6
apps/tenant/repair_order/models.py

@@ -62,7 +62,6 @@ class RepairOrder(models.Model):
     delete = models.BooleanField(verbose_name='删除', default=False)
 
     images = models.ManyToManyField(Upload, verbose_name='图片', blank=True, related_name='images_id')
-    voice = models.ForeignKey(Upload, verbose_name='语音', blank=True, on_delete=models.PROTECT,related_name='voice_id')
 
     class Meta:
         db_table = 'repair_order'
@@ -190,12 +189,21 @@ class RepairOrderRecord(models.Model):
             'status': self.status,
             'status_text': settings.REPAIR_STATUS_CHOICES[self.status - 1][1],
             'operation_time': strftime(self.operation_time),
+            'images': [],
         }
         user_name = self.user.employee.name
         if self.status == settings.NOT_CHECKED:
             dict['no'] = self.repair_order.no
             dict['desc'] = u'下单人:{}-{}'.format(self.repair_order.name, self.repair_order.tel)
             dict['tel'] = self.repair_order.tel
+            # images = self.repair_order.images.all()
+            # for img in images:
+            #     if img.type != Upload.REPAIR_VOICE:
+            #         dict['images'].append(
+            #             {
+            #                 'url': img.picture
+            #             }
+            #         )
         elif self.status == settings.CHECKED:
             dict['desc'] = u'审核人:{}'.format(user_name)
         elif self.status == settings.DISPATCH:
@@ -234,11 +242,12 @@ class RepairOrderRecord(models.Model):
 
             images = order_finish.images.all()
             for img in images:
-                dict['images'].append(
-                    {
-                        'url': img.picture
-                    }
-                )
+                if img.type != Upload.REPAIR_VOICE:
+                    dict['images'].append(
+                        {
+                            'url': img.picture
+                        }
+                    )
         elif self.status == settings.TURN_EMPLOYEE:
             e_name = User.objects.filter(id=self.repair_users).values('employee__name', 'employee__tel', )
             e_name = [e['employee__name'] + '-' + e['employee__tel'] for e in e_name]

+ 1 - 2
apps/upload/models.py

@@ -71,7 +71,7 @@ class UploadManager(models.Manager):
             Upload.REPAIR_IMAGE: repair_image,
             Upload.INSPECTION_IMAGE: inspection_image,
             Upload.COMPANY_IMAGE: company_image,
-            Upload.REPAIR_VOICE:repair_voice,
+            Upload.REPAIR_VOICE:repair_image,
         }
 
         return path_map[type] + str(tenant_id) + str(user_id) + '/'
@@ -80,7 +80,6 @@ class UploadManager(models.Manager):
 repair_image = "repair/"
 inspection_image = "inspection/"
 company_image = "company/"
-repair_voice = "repair/"
 
 class Upload(models.Model):
     REPAIR_IMAGE = 1

+ 1 - 6
apps/upload/serializers.py

@@ -6,12 +6,7 @@ from .models import Upload
 
 
 class UploadSerializer(serializers.ModelSerializer):
-    # picture = serializers.SerializerMethodField()
-
-    # def get_picture(self, obj):
-        # print(5555555,obj.id)
-        # return '%s%s' % (settings.MEDIA_URL, obj.picture)
 
     class Meta:
         model = Upload
-        fields = ('picture', 'width', 'height')
+        fields = ('picture', 'width', 'height', 'type')

+ 4 - 12
apps/wxapp/repair_order/serializers.py

@@ -12,21 +12,17 @@ class RepairOrderDetailSerializer(serializers.ModelSerializer):
     status_text = serializers.CharField(source='get_status_display', read_only=True)
     user_id = serializers.CharField(source='user.id', read_only=True)
     images = serializers.SerializerMethodField()
-    voice = serializers.SerializerMethodField()
     repair_type_name = serializers.CharField(source='repair_type.name', read_only=True)
     create_at = DelayTimeCharField(source='create_time', read_only=True)
 
     def get_images(self, obj):
         return UploadSerializer(obj.images, many=True).data
 
-    def get_voice(self, obj):
-        return UploadSerializer(obj.voice, many=True).data
-
     class Meta:
         model = RepairOrder
         fields = (
             'id', 'status_text', 'status', 'no', 'fault_des', 'tel', 'name', 'create_at', 'device_address',
-            'repair_type_name', 'images', 'user_id','voice')
+            'repair_type_name', 'images', 'user_id')
 
 
 class RepairOrderListSerializer(serializers.ModelSerializer):
@@ -57,15 +53,11 @@ class RepairOrderListSerializer(serializers.ModelSerializer):
 class RepairOrderSerializer(serializers.ModelSerializer):
     class Meta:
         model = RepairOrder
-        fields = ('id', 'fault_des', 'tel', 'name', 'repair_type','device_name','device_address','voice')
+        fields = ('id', 'fault_des', 'tel', 'name', 'repair_type','device_name','device_address',)
 
     def create(self, validated_data):
-        if 'images' in self.initial_data:
-            validated_data['images'] = self.initial_data['images'].split(',')
-        print(self.initial_data)
-        print(self.context['request'])
-        validated_data['voice'] = self.initial_data['voice']
-        print(validated_data)
+        if 'file' in self.initial_data:
+            validated_data['images'] = self.initial_data['file'].split(',')
         validated_data['user'] = self.context['request'].user
         validated_data['tenant'] = self.context['request'].user.employee.tenant
         instance = super(RepairOrderSerializer, self).create(validated_data)

+ 9 - 9
ly_baoxiu_admin/settings.py

@@ -122,7 +122,7 @@ WSGI_APPLICATION = 'ly_baoxiu_admin.wsgi.application'
 # https://docs.djangoproject.com/en/2.2/ref/settings/#databases
 
 DATABASES = {
-    'default': {
+    'default2': {
         'ENGINE': 'django.db.backends.mysql',
         'NAME': 'baoxiu',
         'USER': 'baoxiu',
@@ -130,14 +130,14 @@ DATABASES = {
         'HOST': '139.9.148.181',
         'PORT': 3306,
     },
-    # 'default2': {
-    #     'ENGINE': 'django.db.backends.mysql',
-    #     'NAME': 'ly_report_repair',
-    #     'USER': 'carwin',
-    #     'PASSWORD': 'carwin!@#',
-    #     'HOST': '192.168.2.45',
-    #     'PORT': 3306,
-    # },
+    'default': {
+        'ENGINE': 'django.db.backends.mysql',
+        'NAME': 'ly_report_repair',
+        'USER': 'carwin',
+        'PASSWORD': 'carwin!@#',
+        'HOST': '192.168.2.45',
+        'PORT': 3306,
+    },
     # 'default': {
     #     'ENGINE': 'django.db.backends.mysql',
     #     'NAME': 'baoxiu',

+ 17 - 0
uis/tenant/repairManage/detail.html

@@ -60,10 +60,27 @@
                     <li class="baoxiu-li">
                         <h3>报修状态:{{ d.status_text }}</h3>
                     </li>
+
+                    {{# layui.each(d.images, function(index, item){ }}
+                    {{# if(item.type == 4){ }}
+                    <li class="baoxiu-li">
+                        <h3>报修语音:
+                            <audio controls>
+                                <source src={{ item.picture }} type="audio/mpeg">
+                            </audio>
+                        </h3>
+                    </li>
+                    {{# } }}
+                    {{# }); }}
+                    <li class="baoxiu-li">
+                        <h3>报修图片:</h3>
+                    </li>
                     {{# layui.each(d.images, function(index, item){ }}
+                    {{# if(item.type != 4){ }}
                     <li>
                         <img class="layui-upload-img" src={{ item.picture }}>
                     </li>
+                    {{# } }}
                     {{# }); }}
                 </ui>
             </div>