Преглед изворни кода

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	apps/customer/models.py
wushaodong пре 4 година
родитељ
комит
c42cef3dd3
4 измењених фајлова са 53 додато и 26 уклоњено
  1. 1 1
      apps/customer/models.py
  2. 18 2
      apps/customer/serializers.py
  3. 7 1
      apps/customer/views.py
  4. 27 22
      uis/views/customer/index.html

+ 1 - 1
apps/customer/models.py

@@ -56,7 +56,7 @@ class NewCustomer(models.Model):
     potential_level = models.ForeignKey(Option, verbose_name=u'潜客级别', related_name='potential_level', null=True,
                                         on_delete=models.PROTECT)
     stage_progress = models.ForeignKey(Option, verbose_name=u'阶段进度', related_name='stage_progress',
-                                        on_delete=models.PROTECT)
+                                       on_delete=models.PROTECT)
     track_user = models.ForeignKey(settings.AUTH_USER_MODEL, verbose_name=u'跟踪人', related_name='track_user',
                                    editable=False, on_delete=models.PROTECT)
     end_time = models.DateTimeField(verbose_name=u'最后跟踪时间', null=True)

+ 18 - 2
apps/customer/serializers.py

@@ -3,8 +3,9 @@ import json
 from rest_framework import serializers
 from apps.option.models import Option
 from utils.exceptions import CustomError
+from utils.booleancharfield import BooleanCharField
 from apps.option.serializers import OptionSerializer
-from .models import ReportCustomer,NewCustomer
+from .models import ReportCustomer,NewCustomer,Review
 
 class ReportCustomerSerializer(serializers.ModelSerializer):
     gender_text = serializers.CharField(source='get_gender_display', read_only=True)
@@ -52,6 +53,7 @@ class ReportCustomerSerializer(serializers.ModelSerializer):
         instance = super(ReportCustomerSerializer, self).update(instance, validated_data)
         return instance
 
+
 class NewCustomerSerializer(serializers.ModelSerializer):
     track_user_text = serializers.CharField(source='track_user.name', read_only=True)
     create_user_text = serializers.CharField(source='create_user.name', read_only=True)
@@ -84,4 +86,18 @@ class NewCustomerSerializer(serializers.ModelSerializer):
     def update(self, instance, validated_data):
 
         instance = super(NewCustomerSerializer, self).update(instance, validated_data)
-        return instance
+        return instance
+
+
+class ReviewSerializer(serializers.ModelSerializer):
+
+    create_user_text = serializers.CharField(source='create_user.name', read_only=True)
+    check_user_text = serializers.CharField(source='check_user.name', read_only=True)
+    check_status_text = serializers.CharField(source='get_check_status_display', read_only=True)
+    create_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M', read_only=True)
+    check_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M', read_only=True)
+    is_giveup_text = BooleanCharField(source='enable', read_only=True)
+
+    class Meta:
+        model = Review
+        fields = '__all__'

+ 7 - 1
apps/customer/views.py

@@ -55,7 +55,6 @@ class ReportCustomerViewSet(CustomModelViewSet):
     def dispatch_customer(self, request, pk):
         check_permission(request, 'customer.check_report_customer')
         # 审核
-        # TODO 创建潜客跟踪表
         user = request.POST.get('user')
         try:
             instance = ReportCustomer.objects.filter(id=pk).first()
@@ -67,6 +66,13 @@ class ReportCustomerViewSet(CustomModelViewSet):
             instance.save()
             BizLog.objects.addnew(request.user, BizLog.INSERT,
                                   u'分配客户报备[%s],id=%d' % (instance.name,  instance.id))
+
+            # 创建潜客跟踪表
+            potential_level = Option.objects.filter(type=Option.POTENTIAL_LEVEL, sort=1).first()
+            stage_progress = Option.objects.filter(type=Option.STAGE_PROGRESS, sort=1).first()
+            NewCustomer.objects.create(report_customer=instance, potential_level=potential_level,
+                                       stage_progress=stage_progress, create_user=self.request.user,
+                                       create_time=timezone.now())
         except CustomError as e:
             return response_error(e.get_error_msg())
         except Exception as e:

+ 27 - 22
uis/views/customer/index.html

@@ -177,6 +177,29 @@
             , height: 'full-108'
         });
 
+        function createFollowReport(){
+            layer.open({
+                type: 2,
+                title: '添加跟踪报告',
+                area: ['45%', '70%'],
+                btn: ['保存', '取消'],
+                yes: function (index, dom) {
+                    layui.onSubmitChild = function (res) {
+                        if(res.code === 0){
+                            layer.msg('添加成功!', {icon: 1})
+                         }
+                        layer.close(index);
+                        table.reload('customer_datagrid', {});
+                    };
+                    layui.submitChild();
+                },
+                btn2: function (index, layero) {
+                    layer.close(index);//关闭当前按钮
+                },
+                content: 'add_report.html'
+            });
+        };
+
         admin.req({
             url: '/customer/dict/',
             done: function (res) {
@@ -238,8 +261,8 @@
                 area: ['45%', '90%'],
                 btn: ['跟踪报告', '更新进度', '取消'],
                 yes: function (index, dom) {
-                    //跟踪报告
-                    layer.close(index);
+                    //添加跟踪报告
+                    createFollowReport()
                 },
                 btn2: function (index, layero) {
                     //更新进度
@@ -263,27 +286,9 @@
             return false
         });
 
+        //添加跟踪报告
         $('#customer_add').on('click', function () {
-            layer.open({
-                type: 2,
-                title: '添加跟踪报告',
-                area: ['45%', '70%'],
-                btn: ['保存', '取消'],
-                yes: function (index, dom) {
-                    layui.onSubmitChild = function (res) {
-                        if(res.code === 0){
-                            layer.msg('添加成功!', {icon: 1})
-                         }
-                        layer.close(index);
-                        table.reload('customer_datagrid', {});
-                    };
-                    layui.submitChild();
-                },
-                btn2: function (index, layero) {
-                    layer.close(index);//关闭当前按钮
-                },
-                content: 'add_report.html'
-            });
+            createFollowReport()
         });
 
         $('#customer_order').on('click', function () {