You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
395 lines
15 KiB
395 lines
15 KiB
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>{:config('sys_name')}后台管理</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, maximum-scale=1">
|
|
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
|
<meta name="format-detection" content="telephone=no">
|
|
<link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all" />
|
|
<link rel="stylesheet" href="/static/admin/css/global.css" media="all">
|
|
<link rel="stylesheet" href="/static/common/css/font.css" media="all">
|
|
|
|
<style>
|
|
|
|
.filtrate-warp{
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.filtrate-warp .title{
|
|
padding: 5px 12px 7px 12px;
|
|
font-size: 14px;
|
|
font-weight: normal;
|
|
text-align: left;
|
|
cursor: pointer;
|
|
width: 90px;
|
|
background-color: transparent!important;
|
|
color: black!important;
|
|
}
|
|
|
|
.filtrate-warp .title:hover{
|
|
color: black;
|
|
}
|
|
|
|
.filtrate-warp .flag{
|
|
padding: 6px 12px 6px 12px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.filtrate-warp .flag:hover{
|
|
color: black;
|
|
}
|
|
|
|
.filtrate-warp .layui-badge:hover{
|
|
color: white!important;
|
|
}
|
|
|
|
</style>
|
|
|
|
</head>
|
|
<body class="skin-<?php if(!empty($_COOKIE['skin'])){echo $_COOKIE['skin'];}else{echo '0';setcookie('skin','0');}?>">
|
|
|
|
<div class="admin-main layui-anim layui-anim-upbit">
|
|
|
|
|
|
<fieldset class="layui-elem-field " >
|
|
<legend>高级查询</legend>
|
|
|
|
<div class="layui-card" style="box-shadow: none;margin-top: 10px">
|
|
<div class="layui-form layui-card-header layuiadmin-card-header-auto" style="border-bottom: transparent;height: auto" >
|
|
|
|
<div class="layui-form-item" style="text-align: left;padding-left: 20px;">
|
|
|
|
<div class="layui-inline">
|
|
<label class="layui-form-label">日期查询:</label>
|
|
<div class="layui-input-inline">
|
|
<input type="text" class="layui-input" autocomplete="off" name="at_time" id="at_time" placeholder="请输入日期查询">
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="layui-inline">
|
|
<label class="layui-form-label" style="margin-left: 5px">线索来源:</label>
|
|
<div class="layui-input-inline">
|
|
<select name="xs_source" id="xs_source">
|
|
<option value="">请选择线索来源</option>
|
|
|
|
{volist name='xsSourceList' id='vo'}
|
|
<option value="{$vo.source_name}">{$vo.source_name}</option>
|
|
{/volist}
|
|
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="layui-inline">
|
|
<label class="layui-form-label" style="">手机:</label>
|
|
<div class="layui-input-inline">
|
|
<input type="text" id="phone" name="phone" placeholder="请输入手机号码" class="layui-input">
|
|
</div>
|
|
</div>
|
|
|
|
<!-- <div class="layui-inline">
|
|
<label class="layui-form-label" style="">时间查询:</label>
|
|
<div class="layui-input-inline">
|
|
<select name="timebucket">
|
|
<option value="">请选择时间</option>
|
|
<option value="today">今天</option>
|
|
<option value="yesterday">昨天</option>
|
|
<option value="week">本周</option>
|
|
<option value="last week">上周</option>
|
|
<option value="month">本月</option>
|
|
<option value="last month">上月</option>
|
|
<option value="year">今年</option>
|
|
<option value="last year">去年</option>
|
|
<option value="-2 hours">两个小时内</option>
|
|
</select>
|
|
</div>
|
|
</div> -->
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="layui-inline" style="float: right;padding-bottom: 15px">
|
|
<button class="layui-btn layuiadmin-btn-list" lay-submit lay-filter="LAY-app-contlist-search">
|
|
<i class="layui-icon layui-icon-search layuiadmin-button-btn" style="vertical-align: sub;"></i>查询数据
|
|
</button>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<table class="layui-table" id="table-list" lay-filter="table-list"></table>
|
|
</div>
|
|
|
|
|
|
|
|
<script type="text/html" id="action">
|
|
|
|
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="alter"><i class="layui-icon"></i>转移</a>
|
|
<a class="layui-btn layui-btn-xs" lay-event="edit"><i class="layui-icon"></i>编辑</a>
|
|
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon"></i>删除</a>
|
|
</script>
|
|
|
|
|
|
<script type="text/html" id="topBtn">
|
|
<button type="button" class="layui-btn layui-btn-primary layui-btn-radius layui-btn-sm" id="add"><i class="layui-icon"></i>添加线索</button>
|
|
<button type="button" class="layui-btn layui-btn-normal layui-btn-radius layui-btn-sm" id="toAll" style="margin-right: 10px"><i class="layui-icon"></i>导入线索</button>
|
|
<button type="button" class="layui-btn layui-btn-warm layui-btn-radius layui-btn-sm" id="turnKh" lay-event="turnKh"><i class="layui-icon"></i>转成客户</button>
|
|
<button type="button" class="layui-btn layui-btn-primary layui-btn-radius layui-btn-sm" id="alterAll" lay-event="alterAll"><i class="layui-icon"></i>转移线索</button>
|
|
|
|
|
|
</script>
|
|
|
|
|
|
{include file="common/foot"/}
|
|
<script>
|
|
layui.use(['table','form','upload','util','laydate'], function() {
|
|
var table = layui.table,form = layui.form,laydate = layui.laydate, $ = layui.jquery,upload = layui.upload,util = layui.util;
|
|
var tableIn = table.render({
|
|
elem: '#table-list',
|
|
url: '{:url("perClulist")}',
|
|
method: 'post',
|
|
toolbar: '#topBtn',
|
|
defaultToolbar:['filter'],
|
|
page: true,
|
|
cols: [[
|
|
{checkbox:true,fixed: true},
|
|
{field: 'id', title: 'ID', width: 80, fixed: true,hide:true},
|
|
{field: 'xs_name', title: '线索名称',templet:function (res) {
|
|
return "<a href='{:url('client/dialogue')}?id="+res.id+"'>"+res.xs_name+"</a>";
|
|
}},
|
|
{field: 'phone', title: '联系号码', },
|
|
{field: 'xs_status', title: '线索状态', },
|
|
{field: 'xs_source', title: '线索来源', },
|
|
{field: 'xs_area', title: '地区来源', },
|
|
{field: 'last_up_records', title: '最新跟进记录', },
|
|
{field: 'last_up_time', title: '实际跟进时间',hide:true },
|
|
// {field: 'next_up_time', title: '下次跟进时间',hide:true },
|
|
// {field: 'wechat', title: '微信号',hide:true },
|
|
/* {field: 'no_day', title: '未跟进天数', },*/
|
|
{field: 'remark', title: '备注', },
|
|
// {field: 'pr_dep_bef', title: '前所属部门',hide:true },
|
|
// {field: 'pr_dep', title: '所属部门',hide:true },
|
|
{field: 'at_user', title: '创建人',hide:true},
|
|
{field: 'pr_user', title: '负责人',hide:true },
|
|
{field: 'pr_user_bef', title: '前负责人',hide:true },
|
|
{field: 'ut_time', title: '更新于',hide:true},
|
|
{field: 'at_time', title: '创建时间', },
|
|
{field: 'kh_need', title: '客户需求',hide:true },
|
|
{width: 260, align: 'center', toolbar: '#action'}
|
|
]],
|
|
limit: 10 //每页默认显示的数量
|
|
});
|
|
|
|
|
|
table.on('tool(table-list)', function(obj) {
|
|
var data = obj.data;
|
|
|
|
if (obj.event === 'del') {
|
|
layer.confirm('您确定要删除吗?', function(index){
|
|
var loading = layer.load(1, {shade: [0.1, '#fff']});
|
|
$.post("{:url('del')}",{id:data.id},function(res){
|
|
layer.close(loading);
|
|
if(res.code===0){
|
|
layer.msg(res.msg,{time:1000,icon:1});
|
|
tableIn.reload();
|
|
}else{
|
|
layer.msg('操作失败!',{time:1000,icon:2});
|
|
}
|
|
});
|
|
layer.close(index);
|
|
});
|
|
}else if(obj.event === 'edit'){
|
|
layer_add("编辑线索","{:url('Clues/edit')}?id="+data.id);
|
|
}else if(obj.event === 'alter'){
|
|
layer_add("转移线索","{:url('Clues/alterPrUserPri')}?ids="+data.id)
|
|
}
|
|
});
|
|
|
|
|
|
$('body').on('click','#add',function() {
|
|
var indexOpen = layer.open({
|
|
type: 2,
|
|
title: '添加线索',
|
|
closeBtn: 1, //是否显示关闭按钮
|
|
area: ['100%','86%'],
|
|
anim: 2, //动画
|
|
shadeClose: false, //点击空白处是否关闭
|
|
maxmin: false, //开启最大化最小化按钮
|
|
content: ["{:url('Clues/add')}"]
|
|
});
|
|
})
|
|
|
|
|
|
|
|
//监听事件
|
|
table.on('toolbar(table-list)', function(obj){
|
|
|
|
var checkStatus = table.checkStatus(obj.config.id)
|
|
,data = checkStatus.data; //获取选中的数据
|
|
switch(obj.event){
|
|
case 'turnKh':
|
|
if(data.length === 0){
|
|
layer.msg('请选择一行');
|
|
} else if(data.length > 1){
|
|
layer.msg('只能同时编辑一个');
|
|
} else {
|
|
console.log(data);
|
|
/*layer.alert('编辑 [id]:'+ checkStatus.data[0]['id']);*/
|
|
var indexOpen = layer.open({
|
|
type: 2,
|
|
title: '转成客户',
|
|
closeBtn: 1, //是否显示关闭按钮
|
|
area: ['100%','86%'],
|
|
anim: 2, //动画
|
|
shadeClose: false, //点击空白处是否关闭
|
|
maxmin: false, //开启最大化最小化按钮
|
|
content: ["{:url('Clues/toTurnKh')}?id="+checkStatus.data[0]['id']]
|
|
});
|
|
}
|
|
break;
|
|
case 'alterAll':
|
|
var checkStatus = table.checkStatus(obj.config.id)
|
|
,data=checkStatus.data;//获取选中的数据
|
|
|
|
if(data.length > 0){
|
|
alterList = []; //定义需要转移的数组
|
|
data.forEach(function (obj,index) {
|
|
alterList.push(obj.id);
|
|
});
|
|
|
|
var currConfirm = layer.confirm('您确定要转移这'+data.length+'个线索吗?',function (index) {
|
|
|
|
|
|
layer.close(currConfirm);
|
|
var indexOpen = layer.open({
|
|
type: 2,
|
|
title: '转移线索',
|
|
closeBtn: 1, //是否显示关闭按钮
|
|
area: ['100%','86%'],
|
|
anim: 2, //动画
|
|
shadeClose: false, //点击空白处是否关闭
|
|
maxmin: false, //开启最大化最小化按钮
|
|
content: ["{:url('Clues/alterPrUserPri')}?ids="+alterList]
|
|
|
|
});
|
|
|
|
|
|
});
|
|
|
|
|
|
}else {
|
|
layer.msg("请选择需要转移的线索");
|
|
}
|
|
break;
|
|
};
|
|
});
|
|
|
|
|
|
//监听搜索
|
|
form.on('submit(LAY-app-contlist-search)', function(data){
|
|
var field = data.field;
|
|
|
|
/* layer.alert(JSON.stringify(data.field), {
|
|
title: '最终的提交信息'
|
|
})
|
|
return false;*/
|
|
|
|
|
|
table.reload('table-list', {
|
|
url:"{:url('Clues/personCluesSearch')}",
|
|
where: {
|
|
keyword: data.field
|
|
},
|
|
page:{
|
|
curr:1
|
|
}
|
|
});
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
laydate.render({
|
|
elem: '#at_time'
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
//批量导入
|
|
var indexMsg;
|
|
//上传xls文件
|
|
upload.render({ //允许上传的文件后缀
|
|
elem: '#toAll'
|
|
,url: "{:url('Clues/xlsUpload')}"
|
|
,accept: 'file' //普通文件
|
|
,field:'xlsFile'
|
|
,exts: 'xls|xlsx' //只允许上传压缩文件
|
|
|
|
,before: function(obj){ //obj参数包含的信息,跟 choose回调完全一致,可参见上文。
|
|
indexMsg = layer.msg('正在导入数据,请稍等...', {
|
|
icon: 16,
|
|
shade: 0.04,
|
|
time:false //取消自动关闭
|
|
});
|
|
}
|
|
,done: function(res){
|
|
layer.close(indexMsg); //关闭信息框
|
|
if (res.code == 0){
|
|
layer.msg(res.msg, {time: 1800, icon: 1}, function () {
|
|
location.reload()
|
|
});
|
|
}else {
|
|
layer.msg(res.msg, {time: 1800, icon: 2});
|
|
}
|
|
}
|
|
,error: function(index, upload){
|
|
layer.close(indexMsg); //关闭信息框
|
|
layer.msg('系统繁忙,请稍后...', {time: 1800, icon: 1});
|
|
}
|
|
});
|
|
|
|
|
|
|
|
});
|
|
</script>
|
|
|
|
|
|
<script>
|
|
|
|
/*添加*/
|
|
function layer_add(title,url){
|
|
var indexOpen = layer.open({
|
|
type: 2,
|
|
title: title,
|
|
closeBtn: 1, //是否显示关闭按钮
|
|
area: ['100%','86%'],
|
|
anim: 2, //动画
|
|
shadeClose: false, //点击空白处是否关闭
|
|
maxmin: true, //开启最大化最小化按钮
|
|
content: [url,'no']
|
|
});
|
|
}
|
|
|
|
</script>
|
|
</body>
|
|
</html>
|