wushaodong 4 жил өмнө
parent
commit
0b82462936

+ 2 - 1
apps/account/serializers.py

@@ -72,7 +72,8 @@ class EmployeeSerializer(serializers.ModelSerializer):
 
     class Meta:
         model = User
-        fields = '__all__'
+        # fields = '__all__'
+        exclude = ('password',)
 
     def create(self, validated_data):
         username = self.initial_data['username']

+ 0 - 8
apps/customer/views.py

@@ -343,11 +343,3 @@ class ReviewViewSet(CustomModelViewSet):
         except Exception as e:
             return response_error(str(e))
         return response_ok()
-
-
-
-
-
-
-
-

+ 4 - 4
apps/order/serializers.py

@@ -1,12 +1,12 @@
 # coding=utf-8
 from rest_framework import serializers
 from .models import Order,ProgressDetails
-from utils.booleancharfield import TimeCharField
-
+from django.conf import settings
 
 class OrderSerializer(serializers.ModelSerializer):
     service_user_text = serializers.CharField(source='service_user.name', read_only=True)
-    create_time_f = TimeCharField(source='create_time', read_only=True)
+    create_time_f = serializers.DateTimeField(source='create_time', format=settings.SHORT_DATETIME_FORMAT,
+                                              read_only=True)
     status_text = serializers.CharField(source='get_status_display', read_only=True)
 
     name = serializers.CharField(source='customer.name', read_only=True)
@@ -31,4 +31,4 @@ class ProgressDetailsSerializer(serializers.ModelSerializer):
 
     class Meta:
         model = ProgressDetails
-        fields = '__all__'
+        fields = '__all__'

+ 5 - 2
apps/order/views.py

@@ -18,13 +18,16 @@ class GetProcessView(APIView):
 
     def get(self, request):
         customer_id = request.query_params.get('customer_id')
+        dispatch = request.query_params.get('dispatch') # 分配服务人员,
+
         instance = NewCustomer.objects.filter(id=customer_id).first()
         if not instance:
             raise CustomError('当前客户信息有误,请刷新重试!')
         if instance.stage_progress.end_stage:
             raise CustomError('当前客户进度已到最后阶段,请勿重复更新!')
         order = Order.objects.filter(customer=instance).first()
-        if order and order.status == Order.WAIT_DISPATCH:
+        # 分配服务人员,不做重复更新判断
+        if order and order.status == Order.WAIT_DISPATCH and not dispatch:
             data = {
                 'error': True,
                 'error_message': u'当前客户订单等待分配中,请勿重复更新!',
@@ -92,4 +95,4 @@ class GetFilesView(APIView):
                     'user': img.user.name,
                 }
             )
-        return response_ok(img_data)
+        return response_ok(img_data)

+ 1 - 0
uis/views/employee/index.html

@@ -101,6 +101,7 @@
                 , {field: 'gender_text', title: '性别', width: 80}
                 , {field: 'tel', title: '电话', width: 120}
                 , {field: 'username', title: '账号', width: 120}
+                , {field: 'general_agent_text', title: '总代理', width: 150}
                 , {field: 'agent_text', title: '代理商', width: 150}
                 , {field: 'store_text', title: '门店', width: 150}
                 , {field: 'enable_text', title: '是否在用', width: 100}

+ 2 - 8
uis/views/order/detail.html

@@ -9,7 +9,6 @@
           content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
     <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
-    <link rel="stylesheet" type="text/css" href="../../layuiadmin/style/formSelects-v4.css"/>
     <style>
         .input {
             border-radius: 2px;
@@ -79,17 +78,12 @@
     layui.link('../../../layuiadmin/style/autocomplete.css');
     layui.config({
         base: '../../../layuiadmin/' //静态资源所在路径
-        , autocomplete: 'autocomplete'
     }).extend({
         index: 'lib/index',
-        formSelects: 'formSelects-v4'
-    }).use(['index', 'table', 'form', 'autocomplete', 'formSelects', 'laytpl' ], function () {
+    }).use(['index', 'table','laytpl' ], function () {
         var $ = layui.$
             , table = layui.table
-            , admin = layui.admin
             , laytpl = layui.laytpl
-            , formSelects = layui.formSelects
-            , form = layui.form;
 
         var order_id = layui.view.getParameterByName('order_id');
         editdata = JSON.parse(JSON.stringify(parent.layui.table.editdata)); // 框架有Bug所以这么转换
@@ -106,7 +100,7 @@
                 {field: 'operation', title: "操作", width: 200}
                 , {field: 'operation_time', title: '操作时间', width: 150}
                 , {field: 'notes', title: '备注', width: 200}
-                , {field: 'user', title: '操作人', width: 120}
+                , {field: 'user', title: '操作人', width: 80}
                 , {width: 100, align: 'center', fixed: 'right', toolbar: '#customer-operate-bar'}
             ]]
             , page: true

+ 0 - 134
uis/views/order/dispatch_process_detail.html

@@ -1,134 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="utf-8">
-    <title>进度分配详情</title>
-    <meta name="renderer" content="webkit">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport"
-          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
-    <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
-    <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
-    <link rel="stylesheet" type="text/css" href="../../layuiadmin/style/formSelects-v4.css"/>
-    <style>
-        .input {
-            border-radius: 2px;
-            height: 38px;
-            border-width: 1px;
-            border-color: lightgray;
-            border-style: solid;
-            background-color: white;
-            padding-left: 3px;
-        }
-    </style>
-</head>
-<body>
-
-<div class="layui-fluid">
-    <div class="layui-row layui-col-space15">
-        <div class="layui-card">
-            <div class="layui-card-body" pad15>
-                <div id="tableDom"></div>
-                <h3 style="margin: 20px 0 10px 0">进度明细</h3>
-                <table class="layui-hide" id="process_datagrid" lay-filter="customer-operate"></table>
-            </div>
-        </div>
-    </div>
-</div>
-<script id="demo" type="text/html">
-    <table class="layui-table">
-          <tbody>
-            <tr>
-              <td style="background: #f8f8f8; width: 90px">单号:</td>
-              <td>{{ d.no || "" }}</td>
-              <td style="background: #f8f8f8; width: 90px">客户名称:</td>
-              <td>{{ d.name || "" }}</td>
-            </tr>
-            <tr>
-              <td style="background: #f8f8f8; width: 90px">客户电话:</td>
-              <td>{{ d.tel || "" }}</td>
-              <td style="background: #f8f8f8; width: 90px">地址:</td>
-              <td>{{ d.address || "" }}</td>
-            </tr>
-            <tr>
-              <td style="background: #f8f8f8; width: 90px">小区:</td>
-              <td>{{ d.village || "" }}</td>
-              <td style="background: #f8f8f8; width: 90px">项目:</td>
-              <td>{{ d.project_text || "" }}</td>
-            </tr>
-            <tr>
-              <td style="background: #f8f8f8; width: 90px">当前跟踪人:</td>
-              <td>{{ d.current_follow_user || "" }}</td>
-              <td style="background: #f8f8f8; width: 90px">申请进度:</td>
-              <td>{{ d.apply_process || "" }}</td>
-            </tr>
-          </tbody>
-        </table>
-</script>
-<script type="text/html" id="customer-operate-bar">
-    <div class="layui-btn-group">
-        <a class="layui-btn layui-btn-xs" lay-event="order_detail"
-        >查看资料</a>
-    </div>
-</script>
-
-
-<script src="../../layuiadmin/layui/layui.js"></script>
-<script>
-    layui.link('../../../layuiadmin/style/autocomplete.css');
-    layui.config({
-        base: '../../../layuiadmin/' //静态资源所在路径
-        , autocomplete: 'autocomplete'
-    }).extend({
-        index: 'lib/index',
-        formSelects: 'formSelects-v4'
-    }).use(['index', 'table', 'form', 'autocomplete', 'formSelects', 'laytpl' ], function () {
-        var $ = layui.$
-            , table = layui.table
-            , admin = layui.admin
-            , laytpl = layui.laytpl
-            , formSelects = layui.formSelects
-            , form = layui.form;
-
-        editdata = JSON.parse(JSON.stringify(parent.layui.table.editdata)); // 框架有Bug所以这么转换
-        var data = editdata;
-        var getTpl = demo.innerHTML
-        ,tableDom = document.getElementById('tableDom');
-        laytpl(getTpl).render(data, function(html){
-          tableDom.innerHTML = html;
-        });
-        var id = layui.view.getParameterByName('customer');
-        table.render({
-            elem: '#process_datagrid'
-            , url: '/api/process.json'
-            , cols: [[
-                {field: 'time', title: '时间', width: 150}
-                , {field: 'process', title: "进度", width: 120}
-                , {field: 'notes', title: '备注', width: 200}
-                , {field: 'option_user', title: '操作人', width: 120}
-                , {width: 100, align: 'center', fixed: 'right', toolbar: '#customer-operate-bar'}
-            ]]
-            , page: true
-        });
-
-         //监听工具条
-        table.on('tool(customer-operate)', function (obj) {
-            var data = obj.data;
-            if (obj.event === 'order_detail') {
-                // 显示资料图片
-                layer.open({
-                    type: 2,
-                    title: '资料图片',
-                    area: ['100%', '70%'],
-                    btn: ['取消'],
-                    btn1: function (index, layero) {
-                        layer.close(index);//关闭当前按钮
-                    },
-                    content: 'imgsInfo.html'
-                });
-            }
-        });
-    });
-</script>
-</body>
-</html>

+ 1 - 1
uis/views/order/dispatch_process_edit.html

@@ -145,7 +145,7 @@
         //form.render(null, 'component-form-element');
         var next_process_id = '';
         admin.req({
-            url: '/order/get_process/?customer_id=' + customer_id
+            url: '/order/get_process/?customer_id=' + customer_id + '&dispatch=1'
             , type: 'get'
             , done: function (res) {
                 if (res.data.error) {

+ 1 - 1
uis/views/order/dispatch_process_index.html

@@ -156,7 +156,7 @@
                 btn1: function (index, layero) {
                     layer.close(index);//关闭当前按钮
                 },
-                content: 'dispatch_process_detail.html'
+                content: 'detail.html'
             });
             }else if(obj.event === "order_update"){
                 // 更新进度

+ 1 - 1
uis/views/order/index.html

@@ -174,7 +174,7 @@
                layer.open({
                 type: 2,
                 title: '查看详情',
-                area: ['45%', '80%'],
+                area: ['55%', '80%'],
                 btn: ['取消'],
                 btn1: function (index, layero) {
                     layer.close(index);//关闭当前按钮