소스 검색

客户跟踪

wushaodong 4 년 전
부모
커밋
3c97d788be
2개의 변경된 파일21개의 추가작업 그리고 17개의 파일을 삭제
  1. 11 9
      apps/customer/serializers.py
  2. 10 8
      uis/views/customer/index.html

+ 11 - 9
apps/customer/serializers.py

@@ -2,8 +2,9 @@
 import json
 from rest_framework import serializers
 from apps.option.models import Option
+from django.conf import settings
 from utils.exceptions import CustomError
-from utils.booleancharfield import BooleanCharField
+from utils.booleancharfield import BooleanCharField, TimeCharField
 from apps.option.serializers import OptionSerializer
 from .models import ReportCustomer,NewCustomer,Review
 
@@ -59,9 +60,9 @@ class NewCustomerSerializer(serializers.ModelSerializer):
     create_user_text = serializers.CharField(source='create_user.name', read_only=True)
     potential_level_text = serializers.CharField(source='potential_level.name', read_only=True)
     stage_progress_text = serializers.CharField(source='stage_progress.name', read_only=True)
-    create_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M', read_only=True)
-    end_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M', read_only=True)
-    next_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M', read_only=True)
+    create_time_f = TimeCharField(source='create_time', read_only=True)
+    end_time_f = TimeCharField(source='end_time', read_only=True)
+    next_time_f = TimeCharField(source='next_time', read_only=True)
 
     name = serializers.CharField(source='report_customer.name', read_only=True)
     tel = serializers.CharField(source='report_customer.tel', read_only=True)
@@ -69,13 +70,14 @@ class NewCustomerSerializer(serializers.ModelSerializer):
     address = serializers.CharField(source='report_customer.address', read_only=True)
     source_text = serializers.CharField(source='report_customer.source.name', read_only=True)
     project_text = serializers.CharField(source='report_customer.projects.name', read_only=True)
+    gender_text = serializers.SerializerMethodField()
+
+    def get_gender_text(self, obj):
+        return settings.GENDER_CHOICES[obj.report_customer.gender - 1][1]
 
     class Meta:
         model = NewCustomer
-        fields = (
-            'id', 'name', 'tel', 'village', 'address', 'source_text', 'project_text', 'potential_level_text',
-            'stage_progress_text', 'end_time', 'next_time','create_time', 'create_user_text', 'track_user_text',
-        )
+        fields =  '__all__'
 
     def create(self, validated_data):
         validated_data['create_user'] = self.context['request'].user
@@ -100,4 +102,4 @@ class ReviewSerializer(serializers.ModelSerializer):
 
     class Meta:
         model = Review
-        fields = '__all__'
+        fields = '__all__'

+ 10 - 8
uis/views/customer/index.html

@@ -108,10 +108,10 @@
                     </div>
 
                     <div class="tableContent">
-                        <div style="width: 405px">
+                        <div style="width: 400px">
                             <table class="layui-hide" id="customer_log" lay-filter="customer-operate-log"></table>
                         </div>
-                        <div style="width: calc(100% - 450px)">
+                        <div style="width: calc(100% - 420px)">
                             <table class="layui-hide" id="customer_datagrid" lay-filter="customer-operate"></table>
                         </div>
                     </div>
@@ -152,25 +152,27 @@
 
         table.render({
             elem: '#customer_datagrid'
-            , url: '/api/dataTable.json'
+            , url: '/customer/new_customer/'
             , cols: [[
                 {field: 'name', title: '姓名', width: 110}
                 , {field: 'gender_text', title: "性别", width: 70}
-                , {field: 'tel', title: '电话', width: 120}
+                , {field: 'tel', title: '电话', width: 130}
                 , {field: 'village', title: '小区', width: 150}
                 , {field: 'address', title: '地址', width: 200}
                 , {field: 'source_text', title: '来源', width: 100}
+                , {field: 'project_text', title: '项目', width: 100}
                 , {field: 'notes', title: '备注', width: 200}
-                , {field: 'follow_user', title: '跟踪人', width: 100}
-                , {field: 'last_follow', title: '最后跟踪', width: 150}
+                , {field: 'track_user_text', title: '跟踪人', width: 100}
+                , {field: 'end_time_f', title: '最后跟踪时间', width: 150}
                 , {field: 'follow_status', title: '跟踪情况', width: 200}
+                , {field: 'next_time_f', title: '下次跟踪时间', width: 150}
                 , {field: 'follow_count', title: '跟踪次数', width: 100}
                 , {field: 'enter_count', title: '进店次数', width: 100}
                 , {field: 'last_enter', title: '最后进店时间', width: 150}
                 , {field: 'rank', title: '级别', width: 100}
                 , {field: 'status', title: '状态', width: 100}
-                , {field: 'create_time', title: '建档时间', width: 150}
-                , {field: 'create_user', title: '建档人', width: 150}
+                , {field: 'create_time_f', title: '建档时间', width: 150}
+                , {field: 'create_user_text', title: '建档人', width: 100}
                 , {width: 80, align: 'center', fixed: 'right', toolbar: '#customer-operate-bar'}
             ]]
             , page: true