wushaodong vor 4 Jahren
Ursprung
Commit
990bfe0eae
3 geänderte Dateien mit 188 neuen und 175 gelöschten Zeilen
  1. 5 0
      apps/customer/views.py
  2. 22 21
      uis/views/customer/index.html
  3. 161 154
      uis/views/foundation/option.html

+ 5 - 0
apps/customer/views.py

@@ -125,6 +125,11 @@ class NewCustomerViewSet(CustomModelViewSet):
         f = NewCustomerFilter(self.request.GET, queryset=queryset)
         return f.qs
 
+    def paginate_queryset(self, queryset):
+        if self.paginator is None or self.request.GET.get('export'):
+            return None
+        return self.paginator.paginate_queryset(queryset, self.request, view=self)
+
     @action(methods=['post'], detail=True)
     def add_review(self, request, pk):
         check_permission(request, 'customer.add_review')

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

@@ -79,7 +79,7 @@
                                     class="layui-icon layui-icon-add-circle"></i>预约量房
                             </button>
                             <button class="layui-btn" id="btn_list"><i
-                                    class="layui-icon layui-icon-add-circle"></i>导出
+                                    class="layui-icon layui-icon-download-circle"></i>导出
                             </button>
                         </div>
                         <form class="layui-form" lay-filter="query-form-element">
@@ -104,7 +104,7 @@
                         <div style="width: 375px">
                             <table class="layui-hide" id="customer_log" lay-filter="customer-operate-log"></table>
                         </div>
-                        <div style="width: calc(100% - 400px)">
+                        <div style="width: calc(100% - 390px)">
                             <table class="layui-hide" id="customer_datagrid" lay-filter="customer-operate"></table>
                         </div>
                     </div>
@@ -149,6 +149,7 @@
         table.render({
             elem: '#customer_datagrid'
             , url: '/customer/new_customer/'
+            , title: '潜客跟踪'
             , cols: [[
                 {field: 'name', title: '姓名', width: 110}
                 , {field: 'gender_text', title: "性别", width: 70}
@@ -160,7 +161,7 @@
                 , {field: 'stage_progress_text', title: '阶段进度', width: 100}
                 , {field: 'potential_level_text', title: '客户级别', width: 100}
                 , {field: 'notes', title: '备注', width: 200}
-                , {field: 'status_text', title: '状态', width: 100}
+                , {field: 'status_text', title: '状态', width: 80}
                 , {field: 'track_user_text', title: '跟踪人', width: 100}
                 , {field: 'end_time_f', title: '最后跟踪时间', width: 120}
                 , {field: 'last_review', title: '最后跟踪情况', width: 200}
@@ -199,23 +200,6 @@
             });
         };
 
-        //导出列表
-        var _params1 = {};
-        $('#btn_list').on('click', function () {
-            $.get({
-                url: '/customer/new_customer/',
-                dataType: 'json',
-                data: _params1,
-                success: function (res) {
-                    if (res.code === 1) {
-                        layer.msg(res.msg);
-                        return;
-                    }
-                    table.exportFile('customer_datagrid', res,)
-                }
-            })
-        });
-
         //监听工具条
         table.on('tool(customer-operate)', function (obj) {
             var data = obj.data;
@@ -250,7 +234,7 @@
         table.on('row(customer-operate-log)', function (obj) {
             var data = obj.data;
             table.reload('customer_datagrid', {
-                where: {stage_progress:data.stage_id}
+                where: {stage_progress: data.stage_id}
                 , page: {curr: 1}
             });
 
@@ -258,7 +242,9 @@
             obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click');
         });
 
+        var _params = {};
         form.on('submit(query-form-element)', function (data) {
+            _params = data.field;
             table.reload('customer_datagrid', {
                 where: data.field
                 , page: {curr: 1}
@@ -266,6 +252,21 @@
             layer.closeAll();
             return false
         });
+        //导出列表
+        $('#btn_list').on('click', function () {
+            $.get({
+                url: '/customer/new_customer/?export=true',
+                dataType: 'json',
+                data: _params,
+                success: function (res) {
+                    if (res.code === 1) {
+                        layer.msg(res.msg);
+                        return;
+                    }
+                    table.exportFile('customer_datagrid', res,)
+                }
+            })
+        });
 
         $('#customer_order').on('click', function () {
             layer.open({

+ 161 - 154
uis/views/foundation/option.html

@@ -1,188 +1,195 @@
 <!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">
+    <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">
 </head>
 <body>
 
-  <div class="layui-fluid">
+<div class="layui-fluid">
     <div class="layui-card">
         <div class="layui-card-body" pad15>
-        <div class="layui-row layui-col-space15">
-          <div class="layui-col-md12">
+            <div class="layui-row layui-col-space15">
+                <div class="layui-col-md12">
 
-            <div class="LAY-btns" style="margin-bottom: 10px;">
-              <button class="layui-btn layui-btn-sm" id="btn_add"><i class="layui-icon layui-icon-add-circle"></i>添加</button>
-              <button class="layui-btn layui-btn-sm" id="btn_query"><i class="layui-icon layui-icon-search"></i>查询</button>
-            </div>
+                    <div class="LAY-btns" style="margin-bottom: 10px;">
+                        <button class="layui-btn layui-btn-sm" id="btn_add"><i
+                                class="layui-icon layui-icon-add-circle"></i>添加
+                        </button>
+                        <button class="layui-btn layui-btn-sm" id="btn_query"><i
+                                class="layui-icon layui-icon-search"></i>查询
+                        </button>
+                    </div>
 
-            <table class="layui-hide" id="datagrid" lay-filter="datagrid-operate"></table>
+                    <table class="layui-hide" id="datagrid" lay-filter="datagrid-operate"></table>
 
-            <script type="text/html" id="datagrid-operate-bar">
-                <div class="layui-btn-group">
-              <a class="layui-btn layui-btn-xs" lay-event="edit">修改</a>
-              <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
+                    <script type="text/html" id="datagrid-operate-bar">
+                        <div class="layui-btn-group">
+                            <a class="layui-btn layui-btn-xs" lay-event="edit">修改</a>
+                            <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
+                        </div>
+                    </script>
                 </div>
-            </script>
-          </div>
-        </div>
+            </div>
         </div>
     </div>
-  </div>
-  <div id="dlg_query" style="display: none">
+</div>
+<div id="dlg_query" style="display: none">
     <div class="layui-card-body" pad15>
         <form class="layui-form" lay-filter="query-form-element">
-          <div class="layui-row layui-col-space10 layui-form-item">
-              <div class="layui-col-xs12 layui-col-sm12">
-                <label class="layui-form-label">名称:</label>
-                <div class="layui-input-block">
-                   <input type="text" class="layui-input" name="name">
+            <div class="layui-row layui-col-space10 layui-form-item">
+                <div class="layui-col-xs12 layui-col-sm12">
+                    <label class="layui-form-label">名称:</label>
+                    <div class="layui-input-block">
+                        <input type="text" class="layui-input" name="name">
+                    </div>
                 </div>
-              </div>
-              <div class="layui-col-xs12 layui-col-sm12">
-                <label class="layui-form-label">是否在用:</label>
-                <div class="layui-input-block">
-                    <select name="enabled">
-                        <option value=""></option>
-                        <option value="1">是</option>
-                        <option value="0">否</option>
-                    </select>
+                <div class="layui-col-xs12 layui-col-sm12">
+                    <label class="layui-form-label">是否在用:</label>
+                    <div class="layui-input-block">
+                        <select name="enabled">
+                            <option value=""></option>
+                            <option value="1"></option>
+                            <option value="0">否</option>
+                        </select>
+                    </div>
                 </div>
-              </div>
-              <div class="layui-col-xs12 layui-col-sm12">
-                <label class="layui-form-label">类别:</label>
-                <div class="layui-input-block">
-                    <select name="type">
-                        <option value=""></option>
-                        <option value="0">客户类型</option>
-                        <option value="1">收银方式</option>
-                        <option value="2">维修类型</option>
-                        <option value="3">会员类别</option>
-                        <option value="4">供应商</option>
-                        <option value="5">保险公司</option>
-                    </select>
+                <div class="layui-col-xs12 layui-col-sm12">
+                    <label class="layui-form-label">类别:</label>
+                    <div class="layui-input-block">
+                        <select name="type">
+                            <option value=""></option>
+                            <option value="0">客户类型</option>
+                            <option value="1">收银方式</option>
+                            <option value="2">维修类型</option>
+                            <option value="3">会员类别</option>
+                            <option value="4">供应商</option>
+                            <option value="5">保险公司</option>
+                        </select>
+                    </div>
                 </div>
-              </div>
-          </div>
-          <div class="layui-form-item" style="text-align:right">
-                <button class="layui-btn" lay-submit lay-filter="query-form-element" id="query_btn" style="display: none;">查询</button>
-          </div>
+            </div>
+            <div class="layui-form-item" style="text-align:right">
+                <button class="layui-btn" lay-submit lay-filter="query-form-element" id="query_btn"
+                        style="display: none;">查询
+                </button>
+            </div>
         </form>
     </div>
-  </div>
+</div>
 
-  <script src="../../layuiadmin/layui/layui.js?t=1"></script>
-  <script>
-  layui.config({
-    base: '../../../layuiadmin/' //静态资源所在路径
-  }).extend({
-    index: 'lib/index' //主入口模块
-  }).use(['index', 'table','form'], function(){
-    var $ = layui.$;
-    var table = layui.table
-        ,form = layui.form;
+<script src="../../layuiadmin/layui/layui.js?t=1"></script>
+<script>
+    layui.config({
+        base: '../../../layuiadmin/' //静态资源所在路径
+    }).extend({
+        index: 'lib/index' //主入口模块
+    }).use(['index', 'table', 'form'], function () {
+        var $ = layui.$;
+        var table = layui.table
+            , form = layui.form;
 
-    table.render({
-      elem: '#datagrid'
-      ,url: '/foundation/option/data/'
-      ,cols: [[
-        {field:'name', title:'名称', width:200}
-        ,{field:'type_text', title:'类别', width:200}
-        ,{field:'notes', title:'备注', minWidth: 150}
-        ,{field:'enabled_text', title:'在用', width:80}
-        ,{width:110, align:'center', fixed: 'right', toolbar: '#datagrid-operate-bar'}
-      ]]
-      ,page: true
-      ,height: 'full-103'
-    });
+        table.render({
+            elem: '#datagrid'
+            , url: '/foundation/option/data/'
+            , cols: [[
+                {field: 'name', title: '名称', width: 200}
+                , {field: 'type_text', title: '类别', width: 200}
+                , {field: 'notes', title: '备注', minWidth: 150}
+                , {field: 'enabled_text', title: '在用', width: 80}
+                , {width: 110, align: 'center', fixed: 'right', toolbar: '#datagrid-operate-bar'}
+            ]]
+            , page: true
+            , height: 'full-103'
+        });
 
-    //监听工具条
-    table.on('tool(datagrid-operate)', function(obj){
-      var data = obj.data;
-      if(obj.event === 'detail'){
-        layer.msg('ID:'+ data.id + ' 的查看操作');
-      } else if(obj.event === 'del'){
-        layer.confirm('确定要删除吗?', function(index){
-          layer.close(index);
-          layui.admin.req({
-            url: '/foundation/option/delete/?id='+data.id
-            ,done: function(res){
-              table.reload('datagrid',{});
+        //监听工具条
+        table.on('tool(datagrid-operate)', function (obj) {
+            var data = obj.data;
+            if (obj.event === 'detail') {
+                layer.msg('ID:' + data.id + ' 的查看操作');
+            } else if (obj.event === 'del') {
+                layer.confirm('确定要删除吗?', function (index) {
+                    layer.close(index);
+                    layui.admin.req({
+                        url: '/foundation/option/delete/?id=' + data.id
+                        , done: function (res) {
+                            table.reload('datagrid', {});
 
-              //obj.del();
+                            //obj.del();
+                        }
+                    });
+                });
+            } else if (obj.event === 'edit') {
+                table.editdata = data;
+                layer.open({
+                    type: 2,
+                    title: '修改',
+                    shadeClose: false,
+                    area: ['450px', '470px'],
+                    btn: ['保存', '取消'],
+                    yes: function (index, dom) {
+                        $(window.frames["layui-layer-iframe" + index].document).contents().find("#btn_save").click();
+                    },
+                    btn2: function (index, layero) {
+                        layer.close(index);//关闭当前按钮
+                    },
+                    content: 'option_edit.html?id=' + data.id
+                });
             }
-          });
         });
-      } else if(obj.event === 'edit'){
-        table.editdata = data;
-        layer.open({
-          type: 2,
-          title: '修改',
-          shadeClose: false,
-          area: ['450px', '470px'],
-          btn:['保存','取消'],
-          yes: function(index, dom){
-             $(window.frames["layui-layer-iframe"+index].document).contents().find("#btn_save").click();
-          },
-          btn2: function(index, layero){
-            layer.close(index);//关闭当前按钮
-          },
-          content: 'option_edit.html?id='+data.id
-        });
-      }
-    });
 
-    $('#btn_add').on('click', function(){
-        layer.open({
-          type: 2,
-          title: '添加',
-          shadeClose: false,
-          area: ['450px', '470px'],
-          btn:['保存','取消'],
-          yes: function(index, dom){
-             $(window.frames["layui-layer-iframe"+index].document).contents().find("#btn_save").click();
-          },
-          btn2: function(index, layero){
-            layer.close(index);//关闭当前按钮
-          },
-          content: 'option_edit.html'
+        $('#btn_add').on('click', function () {
+            layer.open({
+                type: 2,
+                title: '添加',
+                shadeClose: false,
+                area: ['450px', '470px'],
+                btn: ['保存', '取消'],
+                yes: function (index, dom) {
+                    $(window.frames["layui-layer-iframe" + index].document).contents().find("#btn_save").click();
+                },
+                btn2: function (index, layero) {
+                    layer.close(index);//关闭当前按钮
+                },
+                content: 'option_edit.html'
+            });
         });
-    });
-    $('#btn_query').on('click', function(){
-        layer.open({
-          type: 1,
-          shadeClose: false,
-          area: ['500px', '550px'],
-          title: '查询',
-          btn: ['查询', '取消'],
-          yes: function(index, dom){
-             $("#query_btn").click();
-          },
-          btn2: function(index, layero){
-            layer.close(index);//关闭当前按钮
-          },
-          content: $('#dlg_query')
+        $('#btn_query').on('click', function () {
+            layer.open({
+                type: 1,
+                shadeClose: false,
+                area: ['500px', '550px'],
+                title: '查询',
+                btn: ['查询', '取消'],
+                yes: function (index, dom) {
+                    $("#query_btn").click();
+                },
+                btn2: function (index, layero) {
+                    layer.close(index);//关闭当前按钮
+                },
+                content: $('#dlg_query')
+            });
+        });
+        form.on('submit(query-form-element)', function (data) {
+            //layer.msg(JSON.stringify(data.field));
+            _params = data.field;
+            table.reload('datagrid', {
+                where: data.field
+                , page: {curr: 1}
+            });
+            layer.closeAll();
+            return false
         });
-    });
-    form.on('submit(query-form-element)', function(data){
-      //layer.msg(JSON.stringify(data.field));
-      _params = data.field;
-      table.reload('datagrid', {
-          where: data.field
-          ,page:{curr:1}
-      });
-      layer.closeAll();
-      return false
-    });
 
-  });
-  </script>
+    });
+</script>
 </body>
 </html>