添加网站文件
This commit is contained in:
143
application/admin/view/control/abnormal.html
Normal file
143
application/admin/view/control/abnormal.html
Normal file
@@ -0,0 +1,143 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label {
|
||||
color: #6a6f6c;
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
.tips{
|
||||
color: red;
|
||||
}
|
||||
.goods-li {
|
||||
float: left;
|
||||
opacity: 1;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.goods-img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
padding: 4px;
|
||||
}
|
||||
.goods-img-del-x {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
top: -4px;
|
||||
right: -2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-size: 16px;
|
||||
line-height: 16px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: hsla(0, 0%, 60%, .6);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user_level" id="layuiadmin-form-user_level" style="padding: 20px 30px 0 0;">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">异常原因:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="problem" placeholder="请输入异常订单的原因" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">处理结果:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="adjust" placeholder="请输入处理的结果" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="add-user_level-submit" id="add-user_level-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
<style>
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="/static/plug/formSelects/formSelects-v4.css" />
|
||||
<script src="/static/plug/formSelects/formSelects-v4.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index','table','like','laydate'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,table = layui.table
|
||||
,like = layui.like
|
||||
, laydate = layui.laydate;
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function(data){
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('user-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
//清空查询
|
||||
form.on('submit(user-clear-search)', function(){
|
||||
$('#keyword_type').val('sn');
|
||||
$('#keyword').val(''); //清空输入框
|
||||
$('#level').val(''); //清空输入框
|
||||
$('#group_id').val(''); //清空输入框
|
||||
$('#start_time').val(''); //清空输入框
|
||||
$('#end_time').val(''); //清空输入框
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('user-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
144
application/admin/view/control/abnormal_eidt.html
Normal file
144
application/admin/view/control/abnormal_eidt.html
Normal file
@@ -0,0 +1,144 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label {
|
||||
color: #6a6f6c;
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
.tips{
|
||||
color: red;
|
||||
}
|
||||
.goods-li {
|
||||
float: left;
|
||||
opacity: 1;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.goods-img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
padding: 4px;
|
||||
}
|
||||
.goods-img-del-x {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
top: -4px;
|
||||
right: -2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-size: 16px;
|
||||
line-height: 16px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: hsla(0, 0%, 60%, .6);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user_level" id="layuiadmin-form-user_level" style="padding: 20px 30px 0 0;">
|
||||
<input type="hidden" value="{$info.id}" name="id">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">异常原因:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="problem" placeholder="请输入异常订单的原因" class="layui-textarea">{$info.problem}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">处理结果:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="adjust" placeholder="请输入处理的结果" class="layui-textarea">{$info.adjust}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="eidt-submit" id="eidt-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
<style>
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="/static/plug/formSelects/formSelects-v4.css" />
|
||||
<script src="/static/plug/formSelects/formSelects-v4.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index','table','like','laydate'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,table = layui.table
|
||||
,like = layui.like
|
||||
, laydate = layui.laydate;
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function(data){
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('user-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
//清空查询
|
||||
form.on('submit(user-clear-search)', function(){
|
||||
$('#keyword_type').val('sn');
|
||||
$('#keyword').val(''); //清空输入框
|
||||
$('#level').val(''); //清空输入框
|
||||
$('#group_id').val(''); //清空输入框
|
||||
$('#start_time').val(''); //清空输入框
|
||||
$('#end_time').val(''); //清空输入框
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('user-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
367
application/admin/view/control/abnormal_lists.html
Normal file
367
application/admin/view/control/abnormal_lists.html
Normal file
@@ -0,0 +1,367 @@
|
||||
{layout name="layout1" /}
|
||||
<style>
|
||||
.layui-table-cell {
|
||||
height:auto;
|
||||
}
|
||||
.goods-content>div:not(:last-of-type) {
|
||||
border-bottom:1px solid #DCDCDC;
|
||||
}
|
||||
.goods-data::after{
|
||||
display: block;
|
||||
content: '';
|
||||
clear: both;
|
||||
}
|
||||
.goods_name_hide{
|
||||
overflow:hidden;
|
||||
white-space:nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.operation-btn {
|
||||
margin: 5px;
|
||||
}
|
||||
.table-operate{
|
||||
text-align: left;
|
||||
font-size:14px;
|
||||
padding:0 5px;
|
||||
height:auto;
|
||||
overflow:visible;
|
||||
text-overflow:inherit;
|
||||
white-space:normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
|
||||
<div class="layui-colla-item">
|
||||
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
|
||||
<div class="layui-colla-content layui-show">
|
||||
<p>*订单异常状态,设置异常订单请勿删除</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab layui-tab-card" lay-filter="tab-all">
|
||||
<ul class="layui-tab-title">
|
||||
<li data-type='' class="layui-this">全部</li>
|
||||
</ul>
|
||||
|
||||
<div class="layui-tab-item layui-show">
|
||||
<div class="layui-card">
|
||||
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
||||
<div class="layui-row">
|
||||
|
||||
|
||||
<div class="layui-inline" style="width: 24%;">
|
||||
<label class="layui-form-label">客户姓名:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="name" id="name" placeholder="请输入客户姓名"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline" style="width: 24%;">
|
||||
<label class="layui-form-label">客户电话:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="phone" id="name" placeholder="请输入客户电话"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">保洁师:</label>
|
||||
<div class="layui-input-inline">
|
||||
<select id="staff_id" name="staff_id" style="height:80px;width: 80px" >
|
||||
<option value="">全部</option>
|
||||
{foreach $staff as $item }
|
||||
<option value="{$item.id}">{$item.name}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">创建时间:</label>
|
||||
<div class="layui-input-inline">
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="start_time" class="layui-input" id="start_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-input-inline" style="margin-right: 5px;width: 20px;">
|
||||
<label class="layui-form-mid">至</label>
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="end_time" class="layui-input" id="end_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad {$view_theme_color}" lay-submit
|
||||
lay-filter="user-search">查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad layui-btn-primary " lay-submit
|
||||
lay-filter="user-clear-search">清空查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad layui-btn-primary " lay-submit
|
||||
lay-filter="export-file">导出
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="layui-card-body">
|
||||
<table id="order-lists" lay-filter="order-lists"></table>
|
||||
<script type="text/html" id="status">
|
||||
|
||||
|
||||
{{# if(d.status === 0) { }}
|
||||
<p style="color:#1E9FFF">跟进中</p>
|
||||
{{# } }}
|
||||
|
||||
{{# if(d.status === 1) { }}
|
||||
<p style="color:#ee0000">已完成</p>
|
||||
{{# } }}
|
||||
|
||||
</script>
|
||||
<script type="text/html" id="user-operation">
|
||||
<div style="color:#3A91FB">
|
||||
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a>
|
||||
<a class="layui-btn layui-btn-danger layui-btn-sm" id="del" lay-event="del">删除</a>
|
||||
<div>
|
||||
</script>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'table', 'like', 'laydate'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, table = layui.table
|
||||
, like = layui.like
|
||||
, element = layui.element
|
||||
, laydate = layui.laydate;
|
||||
var listType = '';
|
||||
|
||||
//图片放大
|
||||
$(document).on('click', '.image-show', function () {
|
||||
var src = $(this).attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function (data) {
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('order-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1
|
||||
}
|
||||
});
|
||||
});
|
||||
//清空查询
|
||||
form.on('submit(order-clear-search)', function () {
|
||||
$('#keyword').val('');
|
||||
$('#order_status').val('');
|
||||
$('#goods_name').val('');
|
||||
$('#pay_way').val('');
|
||||
$('#order_type').val('');
|
||||
$('#order_source').val('');
|
||||
$('#start_time').val('');
|
||||
$('#end_time').val('');
|
||||
$('#delivery_type').val('');
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('order-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
form.on('submit(export-file)', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url: '{:url("order/exportFile")}?type=' + listType,
|
||||
type: 'get',
|
||||
data: field,
|
||||
dataType: 'json',
|
||||
error: function() {
|
||||
layer.msg('导出超时,请稍后再试!');
|
||||
},
|
||||
success: function(res) {
|
||||
table.exportFile(res.data.exportTitle,res.data.exportData, res.data.exportExt, res.data.exportName);
|
||||
},
|
||||
timeout: 15000
|
||||
});
|
||||
layer.msg('导出中请耐心等待~');
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//获取列表
|
||||
getList(listType);
|
||||
//切换列表
|
||||
element.on('tab(tab-all)', function (data) {
|
||||
$('#keyword').val('');
|
||||
$('#order_status').val('');
|
||||
$('#goods_name').val('');
|
||||
$('#pay_way').val('');
|
||||
$('#order_type').val('');
|
||||
$('#start_time').val('');
|
||||
$('#end_time').val('');
|
||||
$('#delivery_type').val('');
|
||||
form.render('select');
|
||||
listType = $(this).attr('data-type');
|
||||
getList(listType);
|
||||
if (listType !== ''){
|
||||
$('.order_status').hide();
|
||||
}else {
|
||||
$('.order_status').show();
|
||||
}
|
||||
});
|
||||
|
||||
function getList(type) {
|
||||
table.render({
|
||||
elem: '#order-lists'
|
||||
,url: '{:url("Control/abnormal_lists")}?type=' + type//模拟接口
|
||||
, cols: [[
|
||||
{type: 'checkbox'}
|
||||
,{field: 'order_id', title: '订单ID',align: 'center',}
|
||||
,{field: 'coust_name', title: '客户信息',align: 'center',}
|
||||
,{field: 'coust_mobile', title: '联系电话',align: 'center',}
|
||||
,{field: 'staff_name', title: '保洁师姓名',align: 'center',}
|
||||
,{field: 'staff_mobile', title: '保洁电话',align: 'center',}
|
||||
,{field: 'problem', title: '异常原因',align: 'center',}
|
||||
,{field: 'adjust', title: ' 处理结果',align: 'center',}
|
||||
,{field: 'create_time', title: '增加时间',align: 'center',}
|
||||
,{fixed: 'right', title: '操作', width:150, toolbar: '#user-operation'}
|
||||
]]
|
||||
, page: true
|
||||
, limit: 17
|
||||
, text: {none: '暂无数据!'}
|
||||
, parseData: function (res) {
|
||||
return {
|
||||
"code": res.code,
|
||||
"msg": res.msg,
|
||||
"count": res.data.count,
|
||||
"data": res.data.lists,
|
||||
};
|
||||
}
|
||||
,done: function(res, curr, count){
|
||||
// 解决操作栏因为内容过多换行问题
|
||||
$(".layui-table-main tr").each(function (index, val) {
|
||||
$($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
$($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//监听工具条
|
||||
table.on('tool(order-lists)', function (obj) {
|
||||
var id = obj.data.id;
|
||||
if(obj.event === 'edit'){
|
||||
var id = obj.data.id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '编辑售后回访'
|
||||
,content: '{:url("Control/abnormal_eidt")}?id='+id
|
||||
,area: ['60%', '65%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submit = layero.find('iframe').contents().find('#eidt-submit');
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(eidt-submit)', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url:'{:url("Control/abnormal_eidt")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
}else{
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
if(obj.event === 'del'){
|
||||
var id = obj.data.id;
|
||||
layer.confirm('确定删除异常订单内容?', function(index){
|
||||
$.ajax({
|
||||
url:'{:url("Control/abnormal_del")}',
|
||||
data:{id:id},
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
obj.del();
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
</script>
|
||||
206
application/admin/view/control/add.html
Normal file
206
application/admin/view/control/add.html
Normal file
@@ -0,0 +1,206 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label {
|
||||
color: #6a6f6c;
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
.tips{
|
||||
color: red;
|
||||
}
|
||||
.goods-li {
|
||||
float: left;
|
||||
opacity: 1;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.goods-img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
padding: 4px;
|
||||
}
|
||||
.goods-img-del-x {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
top: -4px;
|
||||
right: -2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-size: 16px;
|
||||
line-height: 16px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: hsla(0, 0%, 60%, .6);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user_level" id="layuiadmin-form-user_level" style="padding: 20px 30px 0 0;">
|
||||
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">服务评分:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" name="score" lay-verType="tips" autocomplete="off" value="0" max="10" min="0" switch-tab="0" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">检查验收:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="ptance" style="height:80px;width: 80px" >
|
||||
<option value="" selected>是否要求一起检查验收</option>
|
||||
<option value="1">是</option>
|
||||
<option value="0">否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">物品收纳:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="storaged" style="height:80px;width: 80px" >
|
||||
<option value="" selected>物品收纳是否做了</option>
|
||||
<option value="1">是</option>
|
||||
<option value="2">否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">拖鞋清洗:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="leanin" style="height:80px;width: 80px" >
|
||||
<option value="" selected>选择拖鞋是否清洗</option>
|
||||
<option value="1">是</option>
|
||||
<option value="2">否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">是否进社群:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="munity" style="height:80px;width: 80px" >
|
||||
<option value="" selected>请选择是否进社群</option>
|
||||
<option value="1">是</option>
|
||||
<option value="2">否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">公司及建议:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="advise" placeholder="有无体验其它的家政公司及建议" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">影响深刻:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="profound" placeholder="服务是否有什么比较影响深刻" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">建议或调整:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="adjust" placeholder="请输入建议调整" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="add-user_level-submit" id="add-user_level-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
<style>
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="/static/plug/formSelects/formSelects-v4.css" />
|
||||
<script src="/static/plug/formSelects/formSelects-v4.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index','table','like','laydate'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,table = layui.table
|
||||
,like = layui.like
|
||||
, laydate = layui.laydate;
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function(data){
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('user-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
//清空查询
|
||||
form.on('submit(user-clear-search)', function(){
|
||||
$('#keyword_type').val('sn');
|
||||
$('#keyword').val(''); //清空输入框
|
||||
$('#level').val(''); //清空输入框
|
||||
$('#group_id').val(''); //清空输入框
|
||||
$('#start_time').val(''); //清空输入框
|
||||
$('#end_time').val(''); //清空输入框
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('user-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
64
application/admin/view/control/controlimg.html
Normal file
64
application/admin/view/control/controlimg.html
Normal file
@@ -0,0 +1,64 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label{
|
||||
width: 120px;
|
||||
}
|
||||
.layui-card .layui-tab{
|
||||
margin-left: 7px;
|
||||
}
|
||||
.layui-form-label{
|
||||
margin-left: 20px;
|
||||
width: 98px;
|
||||
}
|
||||
.layui-input-inline{
|
||||
width:160px;
|
||||
}
|
||||
.layui-table-cell {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user_group" id="layuiadmin-form-user_group" style="padding: 20px 30px 0 0;">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">会员头像:</label>
|
||||
<div class="layui-input-inline">
|
||||
<label class="layui-form-mid">
|
||||
<img class="image-show" src="" width="80px" height="80px">
|
||||
</label>
|
||||
<label class="layui-form-mid">
|
||||
<img class="image-show" src="" width="80px" height="80px">
|
||||
</label>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="user_group-submit" id="user_group-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index','table','like','element'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,table = layui.table
|
||||
,like = layui.like
|
||||
,element = layui.element
|
||||
;
|
||||
element.on('tab(tab-all)', function (data) {
|
||||
var index = data.index;
|
||||
getList(index);
|
||||
})
|
||||
$(document).on('click', '.image-show', function () {
|
||||
var src = $(this).attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
|
||||
|
||||
})
|
||||
</script>
|
||||
206
application/admin/view/control/edit.html
Normal file
206
application/admin/view/control/edit.html
Normal file
@@ -0,0 +1,206 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label {
|
||||
color: #6a6f6c;
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
.tips{
|
||||
color: red;
|
||||
}
|
||||
.goods-li {
|
||||
float: left;
|
||||
opacity: 1;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.goods-img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
padding: 4px;
|
||||
}
|
||||
.goods-img-del-x {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
top: -4px;
|
||||
right: -2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-size: 16px;
|
||||
line-height: 16px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: hsla(0, 0%, 60%, .6);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user_level" id="layuiadmin-form-user_level" style="padding: 20px 30px 0 0;">
|
||||
|
||||
<input type="hidden" value="{$info.id}" name="id">
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">服务评分:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" name="score" value="{$info.score}" lay-verType="tips" autocomplete="off" value="0" max="10" min="0" switch-tab="0" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">检查验收:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="ptance" style="height:80px;width: 80px" >
|
||||
<option value="" selected>是否要求一起检查验收</option>
|
||||
<option value="1" {if $info.ptance == 1} selected="selected" {/if}>是</option>
|
||||
<option value="0" {if $info.ptance == 0} selected="selected" {/if}>否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">物品收纳:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="storaged" style="height:80px;width: 80px" >
|
||||
<option value="" selected>物品收纳是否做了</option>
|
||||
<option value="1" {if $info.storaged == 1} selected="selected" {/if}>是</option>
|
||||
<option value="0" {if $info.storaged == 0} selected="selected" {/if}>否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">拖鞋清洗:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="leanin" style="height:80px;width: 80px" >
|
||||
<option value="" selected>选择拖鞋是否清洗</option>
|
||||
<option value="1" {if $info.leanin == 1} selected="selected" {/if}>是</option>
|
||||
<option value="0" {if $info.leanin == 0} selected="selected" {/if}>否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">是否进社群:</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="type" name="munity" style="height:80px;width: 80px" >
|
||||
<option value="" selected>请选择是否进社群</option>
|
||||
<option value="1" {if $info.munity == 1} selected="selected" {/if}>是</option>
|
||||
<option value="0" {if $info.munity == 0} selected="selected" {/if}>否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">公司及建议:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="advise" placeholder="有无体验其它的家政公司及建议" class="layui-textarea">{$info.advise}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">影响深刻:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="profound" placeholder="服务是否有什么比较影响深刻" class="layui-textarea">{$info.profound}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">建议或调整:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="adjust" placeholder="请输入建议调整" class="layui-textarea">{$info.adjust}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="edit-submit" id="edit-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
<style>
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="/static/plug/formSelects/formSelects-v4.css" />
|
||||
<script src="/static/plug/formSelects/formSelects-v4.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index','table','like','laydate'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,table = layui.table
|
||||
,like = layui.like
|
||||
, laydate = layui.laydate;
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function(data){
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('user-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
//清空查询
|
||||
form.on('submit(user-clear-search)', function(){
|
||||
$('#keyword_type').val('sn');
|
||||
$('#keyword').val(''); //清空输入框
|
||||
$('#level').val(''); //清空输入框
|
||||
$('#group_id').val(''); //清空输入框
|
||||
$('#start_time').val(''); //清空输入框
|
||||
$('#end_time').val(''); //清空输入框
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('user-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
129
application/admin/view/control/follow.html
Normal file
129
application/admin/view/control/follow.html
Normal file
@@ -0,0 +1,129 @@
|
||||
{layout name="layout1" /}
|
||||
<div class="admin-main layui-anim layui-anim-upbit">
|
||||
<div class="layui-row" style="background-color: #fff;">
|
||||
<div class="layui-col-xs6" style=" margin-top: 20px;">
|
||||
<ul class="layui-timeline">
|
||||
|
||||
{foreach $result.comment as $vo }
|
||||
<li class="layui-timeline-item">
|
||||
<i class="layui-icon layui-timeline-axis"></i>
|
||||
<div class="layui-timeline-content layui-text">
|
||||
<h3 class="layui-timeline-title" style="color: rosybrown;font-size: 15px">
|
||||
{$vo.createtime|date='Y年m月d日 H:i'} {$vo.name} {$vo.phone}</h3>
|
||||
<p>
|
||||
{$vo.connect}
|
||||
</p>
|
||||
</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
</div>
|
||||
<div class="layui-col-xs6" style="padding: 0px 10px 0px 10px;">
|
||||
|
||||
<fieldset class="layui-elem-field " style="padding: 15px 15px 0px 15px">
|
||||
<legend>跟进记录</legend>
|
||||
|
||||
<div class="layui-form layui-form-pane" style="margin-top: 20px;">
|
||||
|
||||
<div class="layui-form-item layui-form-text">
|
||||
<a name="comment"></a>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="reply_msg" id="reply_msg" required lay-verify="required" placeholder="请输入跟进的内容" class="layui-textarea fly-editor" style="height: 150px;"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<input type="hidden" name="custom_id" value="{$id}">
|
||||
<button class="layui-btn" lay-filter="btn_comment" lay-submit>提交记录</button>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
|
||||
|
||||
<script>
|
||||
layui.use(['form', 'layer','jquery'], function () {
|
||||
var form = layui.form, layer = layui.layer,$ = layui.jquery;
|
||||
|
||||
|
||||
form.on('submit(btn_comment)',function (data) {
|
||||
console.log(data.elem) //被执行事件的元素DOM对象,一般为button对象
|
||||
console.log(data.form) //被执行提交的form对象,一般在存在form标签时才会返回
|
||||
console.log(data.field) //当前容器的全部表单字段,名值对形式:{name: value}
|
||||
$.ajax(
|
||||
{
|
||||
method:'post',
|
||||
url:"{:url('Control/follow_add')}",
|
||||
async:false,
|
||||
data:data.field,
|
||||
success:function (res) {
|
||||
layer.msg(res.msg,function () {
|
||||
console.log('返回参数',res)
|
||||
/* window.location = "{:url('Index/index')}"
|
||||
return false;*/
|
||||
$('#reply_msg').val('');
|
||||
|
||||
$('.layui-timeline').append("<li class=\"layui-timeline-item\">\n" +
|
||||
" <i class=\"layui-icon layui-timeline-axis\"></i>\n" +
|
||||
" <div class=\"layui-timeline-content layui-text\">\n" +
|
||||
" <h3 class=\"layui-timeline-title\" style=\"color: rosybrown;font-size: 15px\">\n" +
|
||||
"\n" +
|
||||
" "+res.data.create_time+res.data.name+res.data.phone+"</h3>\n" +
|
||||
" <p>\n" +" \n" +
|
||||
|
||||
" "+ res.data.connect+"\n" +
|
||||
"\n" +
|
||||
" </p>\n" +
|
||||
" </div>\n" +
|
||||
" </li>");
|
||||
|
||||
});
|
||||
},
|
||||
error:function (res) {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
|
||||
})
|
||||
|
||||
form.on('submit(btn_reply)',function (data) {
|
||||
console.log(data.elem) //被执行事件的元素DOM对象,一般为button对象
|
||||
console.log(data.form) //被执行提交的form对象,一般在存在form标签时才会返回
|
||||
console.log(data.field) //当前容器的全部表单字段,名值对形式:{name: value}
|
||||
$.ajax(
|
||||
{
|
||||
method:'post',
|
||||
url:"{:url('Control/follow_add')}",
|
||||
async:false,
|
||||
data:data.field,
|
||||
success:function (res) {
|
||||
layer.msg(res.msg,function () {
|
||||
/* window.location = "{:url('Index/index')}"
|
||||
return false;*/
|
||||
$('#reply_msg').val('');
|
||||
|
||||
$('.layui-timeline').append(" <li class=\"layui-timeline-item\">\n" +
|
||||
" <i class=\"layui-icon layui-timeline-axis\"></i>\n" +
|
||||
" <div class=\"layui-timeline-content layui-text\">\n" +
|
||||
" <h3 class=\"layui-timeline-title\">"+res.data.user_id+"</h3>\n" +
|
||||
" <p>\n" + res.data.reply_msg+"<small>"+res.data.create_date+"</small>\n" +
|
||||
" </p>\n" +
|
||||
" </div>\n" +
|
||||
" </li>")
|
||||
|
||||
});
|
||||
},
|
||||
error:function (res) {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
|
||||
})
|
||||
|
||||
});
|
||||
</script>
|
||||
141
application/admin/view/control/images.html
Normal file
141
application/admin/view/control/images.html
Normal file
@@ -0,0 +1,141 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.img-content{
|
||||
height:80px;
|
||||
line-height:80px
|
||||
}
|
||||
.img-container {
|
||||
float: left;
|
||||
opacity: 1;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.img-src {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
padding: 4px;
|
||||
}
|
||||
.img-del-x {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
top: -4px;
|
||||
right: -2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-size: 16px;
|
||||
line-height: 16px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: hsla(0, 0%, 60%, .6);
|
||||
border-radius: 10px;
|
||||
}
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user" id="layuiadmin-form-user" style="padding: 20px 30px 0 0;">
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label" style="width:120px">服务前图片:</label>
|
||||
<div class="layui-input-block">
|
||||
<div class="img-content">
|
||||
{foreach $info.images as $image}
|
||||
<div class="img-container">
|
||||
<img class="img-src" src="https://images.dulmao.com/{$image}"> <!-- 注意加 / 表示根目录 -->
|
||||
<a class="img-del-x">x</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label" style="width:120px">服务视频:</label>
|
||||
<div class="layui-input-block">
|
||||
<div class="video-content" >
|
||||
{if !empty($info['video'])}
|
||||
<div class="video-container">
|
||||
|
||||
<div class="video-container" style="width: 600px; height: 550px;">
|
||||
<video
|
||||
controls
|
||||
style="width: 100%; height: 100%; object-fit: cover;">
|
||||
<source src="https://images.dulmao.com/{$info['video']}" type="video/mp4">
|
||||
</video>
|
||||
</div>
|
||||
|
||||
|
||||
<a class="video-del-x">x</a>
|
||||
</div>
|
||||
{else /}
|
||||
<div class="layui-form-mid layui-word-aux">暂无视频</div>
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="edit-submit" id="edit-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'form','laydate','like'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,laydate = layui.laydate
|
||||
,like = layui.like;
|
||||
laydate.render({
|
||||
elem: '#birthday'
|
||||
,format: 'yyyy-MM-dd'
|
||||
,trigger: 'click'
|
||||
});
|
||||
like.imageUpload('.img-add', function (uris, element) {
|
||||
if(uris.length>1){
|
||||
layer.msg('最多最能选中1张图片');
|
||||
return;
|
||||
}
|
||||
var html = '<div class="img-container">\n' +
|
||||
'<img class="img-src" ' +
|
||||
'src="' + uris[0] + '">' +
|
||||
'<a class="img-del-x">x</a>' +
|
||||
'</div>';
|
||||
element.prev().val(like.getUrlFileName(uris[0], '{$storageUrl}'));
|
||||
element.parent().append(html);
|
||||
element.css('display','none');
|
||||
}, true);
|
||||
//删除图片
|
||||
$(document).on('click', '.img-del-x', function () {
|
||||
$(this).parent().siblings('input').val('');
|
||||
$(this).parent().prev().css('display','block');
|
||||
$(this).parent().remove();
|
||||
});
|
||||
//显示图片
|
||||
$(document).on('click', '.img-src', function () {
|
||||
var image = $(this).attr('src');
|
||||
like.showImg(image, 600);
|
||||
});
|
||||
|
||||
form.on('select(category)', function(data){
|
||||
var level = $(data.elem).find("option:selected").attr("data-level");
|
||||
$('.alliance_ratio').hide();
|
||||
$('.autotrophy_ratio').hide();
|
||||
if(level == 2){
|
||||
$('.alliance_ratio').show();
|
||||
$('.autotrophy_ratio').show();
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
})
|
||||
</script>
|
||||
441
application/admin/view/control/lists.html
Normal file
441
application/admin/view/control/lists.html
Normal file
@@ -0,0 +1,441 @@
|
||||
{layout name="layout1" /}
|
||||
<style>
|
||||
.layui-table-cell {
|
||||
height:auto;
|
||||
}
|
||||
.goods-content>div:not(:last-of-type) {
|
||||
border-bottom:1px solid #DCDCDC;
|
||||
}
|
||||
.goods-data::after{
|
||||
display: block;
|
||||
content: '';
|
||||
clear: both;
|
||||
}
|
||||
.goods_name_hide{
|
||||
overflow:hidden;
|
||||
white-space:nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.operation-btn {
|
||||
margin: 5px;
|
||||
}
|
||||
.table-operate{
|
||||
text-align: left;
|
||||
font-size:14px;
|
||||
padding:0 5px;
|
||||
height:auto;
|
||||
overflow:visible;
|
||||
text-overflow:inherit;
|
||||
white-space:normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
|
||||
<div class="layui-colla-item">
|
||||
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
|
||||
<div class="layui-colla-content layui-show">
|
||||
<p>*子订单的回访情况及说明。</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab layui-tab-card" lay-filter="tab-all">
|
||||
<ul class="layui-tab-title">
|
||||
<li data-type='' class="layui-this">全部</li>
|
||||
</ul>
|
||||
|
||||
<div class="layui-tab-item layui-show">
|
||||
<div class="layui-card">
|
||||
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
||||
<div class="layui-row">
|
||||
<div class="layui-inline" style="width: 24%;">
|
||||
<label class="layui-form-label">订单ID:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="order_id" id="name" placeholder="请输入子订单的ID"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">保洁师:</label>
|
||||
<div class="layui-input-inline">
|
||||
<select id="level" name="level" style="height:80px;width: 80px" >
|
||||
<option value="" selected>请选择服务保洁师</option>
|
||||
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline" style="width: 24%;">
|
||||
<label class="layui-form-label">客户姓名:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="name" id="name" placeholder="请输入客户姓名"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline" style="width: 24%;">
|
||||
<label class="layui-form-label">客户电话:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="phone" id="name" placeholder="请输入客户电话"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<p></p>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">评分区别:</label>
|
||||
<div class="layui-input-inline">
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="start_score" class="layui-input"
|
||||
placeholder="请输入最低评分" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-input-inline" style="margin-right: 5px;width: 20px;">
|
||||
<label class="layui-form-mid">至</label>
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="end_score" class="layui-input"
|
||||
placeholder="请输最高评分" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">创建时间:</label>
|
||||
<div class="layui-input-inline">
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="start_time" class="layui-input" id="start_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-input-inline" style="margin-right: 5px;width: 20px;">
|
||||
<label class="layui-form-mid">至</label>
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="end_time" class="layui-input" id="end_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad {$view_theme_color}" lay-submit
|
||||
lay-filter="user-search">查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad layui-btn-primary " lay-submit
|
||||
lay-filter="user-clear-search">清空查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad layui-btn-primary " lay-submit
|
||||
lay-filter="export-file">导出
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-card-body">
|
||||
<table id="order-lists" lay-filter="order-lists"></table>
|
||||
<script type="text/html" id="server_time">
|
||||
<div>服务开始时间:{{d.start_time}}</div>
|
||||
<div>服务结束时间:{{d.timeout}}</div>
|
||||
|
||||
</script>
|
||||
<script type="text/html" id="user">
|
||||
<div style="text-align:left">客户姓名:{{d.name}}</div>
|
||||
<div style="text-align:left">客户电话:{{d.phone}}</div>
|
||||
|
||||
</script>
|
||||
<script type="text/html" id="user-operation">
|
||||
<div style="color:#3A91FB">
|
||||
<a id="adjust_user" lay-event="edit" style="color:#3A91FB;font-size:14px">修改</a>
|
||||
<a lay-event="edit" style="color:#3A91FB;font-size:14px">跟踪</a>
|
||||
<a id="adjust_user" lay-event="adjust_user" style="color:#3A91FB;font-size:14px">图片</a>
|
||||
<a lay-event="edit" style="color:#3A91FB;font-size:14px">日志</a>
|
||||
<div>
|
||||
</script>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'table', 'like', 'laydate'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, table = layui.table
|
||||
, like = layui.like
|
||||
, element = layui.element
|
||||
, laydate = layui.laydate;
|
||||
var listType = '';
|
||||
|
||||
//图片放大
|
||||
$(document).on('click', '.image-show', function () {
|
||||
var src = $(this).attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function (data) {
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('order-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1
|
||||
}
|
||||
});
|
||||
});
|
||||
//清空查询
|
||||
form.on('submit(order-clear-search)', function () {
|
||||
$('#keyword').val('');
|
||||
$('#order_status').val('');
|
||||
$('#goods_name').val('');
|
||||
$('#pay_way').val('');
|
||||
$('#order_type').val('');
|
||||
$('#order_source').val('');
|
||||
$('#start_time').val('');
|
||||
$('#end_time').val('');
|
||||
$('#delivery_type').val('');
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('order-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
form.on('submit(export-file)', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url: '{:url("order/exportFile")}?type=' + listType,
|
||||
type: 'get',
|
||||
data: field,
|
||||
dataType: 'json',
|
||||
error: function() {
|
||||
layer.msg('导出超时,请稍后再试!');
|
||||
},
|
||||
success: function(res) {
|
||||
table.exportFile(res.data.exportTitle,res.data.exportData, res.data.exportExt, res.data.exportName);
|
||||
},
|
||||
timeout: 15000
|
||||
});
|
||||
layer.msg('导出中请耐心等待~');
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//获取列表
|
||||
getList(listType);
|
||||
//切换列表
|
||||
element.on('tab(tab-all)', function (data) {
|
||||
$('#keyword').val('');
|
||||
$('#order_status').val('');
|
||||
$('#goods_name').val('');
|
||||
$('#pay_way').val('');
|
||||
$('#order_type').val('');
|
||||
$('#start_time').val('');
|
||||
$('#end_time').val('');
|
||||
$('#delivery_type').val('');
|
||||
form.render('select');
|
||||
listType = $(this).attr('data-type');
|
||||
getList(listType);
|
||||
if (listType !== ''){
|
||||
$('.order_status').hide();
|
||||
}else {
|
||||
$('.order_status').show();
|
||||
}
|
||||
});
|
||||
|
||||
function getList(type) {
|
||||
table.render({
|
||||
elem: '#order-lists'
|
||||
,url: '{:url("Control/lists")}?type=' + type//模拟接口
|
||||
, cols: [[
|
||||
{type: 'checkbox'}
|
||||
,{field: 'staff_name', title: '服务人员',align: 'center',width:100}
|
||||
,{field: 'adderss', title: '客户姓名/电话',align: 'center', toolbar:'#user',width:200}
|
||||
,{field: 'server_time', title: '服务时间',align: 'center', toolbar:'#server_time',width:260}
|
||||
,{field: 'add', title: '加时',align: 'center',width:80}
|
||||
,{field: 'goods_name', title: ' 商品套餐',align: 'center',width:200}
|
||||
,{field: 'score', title: '评分',align: 'center',width:80}
|
||||
,{field: 'advise', title: '公司建议',align: 'center',width:220}
|
||||
,{field: 'profound', title: '深刻影响',align: 'center',width:220}
|
||||
,{field: 'adjust', title: '调整建议',align: 'center',width:220}
|
||||
,{fixed: 'right', title: '操作', width:150, toolbar: '#user-operation'}
|
||||
]]
|
||||
, page: true
|
||||
, limit: 17
|
||||
, text: {none: '暂无数据!'}
|
||||
, parseData: function (res) {
|
||||
return {
|
||||
"code": res.code,
|
||||
"msg": res.msg,
|
||||
"count": res.data.count,
|
||||
"data": res.data.lists,
|
||||
};
|
||||
}
|
||||
,done: function(res, curr, count){
|
||||
// 解决操作栏因为内容过多换行问题
|
||||
$(".layui-table-main tr").each(function (index, val) {
|
||||
$($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
$($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//监听工具条
|
||||
table.on('tool(order-lists)', function (obj) {
|
||||
var id = obj.data.id;
|
||||
if(obj.event === 'edit'){
|
||||
var id = obj.data.id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '编辑员工资料'
|
||||
,content: '{:url("Control/edit")}?id='+id
|
||||
,area: ['60%', '65%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submit = layero.find('iframe').contents().find('#edit-submit');
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(edit-submit)', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url:'{:url("Control/edit")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
}else{
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
})
|
||||
}
|
||||
if(obj.event === 'info'){
|
||||
var id = obj.data.id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '账户调整'
|
||||
,content: '{:url("staff/staffinfo")}?id='+id
|
||||
,area: ['90%', '90%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submit = layero.find('iframe').contents().find('#adjust_user-submit');
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(adjust_user-submit)', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url:'{:url("staff/staffinfo")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
}else{
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
})
|
||||
}
|
||||
if(obj.event === 'adjust_user'){
|
||||
|
||||
var id = obj.data.order_id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '服务图片'
|
||||
,content: '{:url("Control/controlimg")}?id='+id
|
||||
,area: ['60%','70%']
|
||||
,btn: ['返回']
|
||||
})
|
||||
|
||||
|
||||
}
|
||||
if(obj.event === 'adjust_level'){
|
||||
var id = obj.data.id;
|
||||
layer.confirm('确定删除员工', function(index){
|
||||
$.ajax({
|
||||
url:'{:url("staff/del")}',
|
||||
data:{id:id},
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
obj.del();
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
</script>
|
||||
440
application/admin/view/control/order_server.html
Normal file
440
application/admin/view/control/order_server.html
Normal file
@@ -0,0 +1,440 @@
|
||||
{layout name="layout1" /}
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-form">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
|
||||
<div class="layui-colla-item">
|
||||
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
|
||||
<div class="layui-colla-content layui-show">
|
||||
<p>*子订单服务完成客户家人对订单评价。</p>
|
||||
<p>*可以对子订单的评价评价进行回复,隐藏或删除。</p>
|
||||
<p>*子订单服务评价会在员工端口详情中进行显示。</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-tab layui-tab-card" lay-filter="tab-all">
|
||||
<ul class="layui-tab-title">
|
||||
<li data-type=1 class="layui-this">全部评论</li>
|
||||
<li data-type=2 >待回复评论</li>
|
||||
</ul>
|
||||
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label" style="white-space: nowrap;">评价信息:</label>
|
||||
<div class="layui-input-inline">
|
||||
<select name="choice" id="choice">
|
||||
<option value=""></option>
|
||||
<option value="1">商品名称</option>
|
||||
<option value="2">会员编号</option>
|
||||
<option value="3">会员昵称</option>
|
||||
<option value="4">手机号码</option>
|
||||
|
||||
</select>
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="keyword" id="keyword" placeholder="请输入关键词" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">评分等级:</label>
|
||||
<div class="layui-input-inline">
|
||||
<select name="goods_comment" id="goods_comment" >
|
||||
<option value="">全部</option>
|
||||
<option value="1">好评</option>
|
||||
<option value="2">中评</option>
|
||||
<option value="3">差评</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">评论时间:</label>
|
||||
<div class="layui-input-inline">
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="start_time" class="layui-input" id="start_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-input-inline" style="margin-right: 5px;width: 20px;">
|
||||
<label class="layui-form-mid">至</label>
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="end_time" class="layui-input" id="end_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-unit {$view_theme_color}" lay-submit lay-filter="comment-search">查询</button>
|
||||
<button class="layui-btn layui-btn-sm layui-btn-primary layuiadmin-btn-unit }" lay-submit lay-filter="comment-clear-search">清空查询</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-card">
|
||||
<div style="padding-bottom: 10px;">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-unit layui-btn-danger" data-type="batchdel" id="batchdel">删除所选</button>
|
||||
</div>
|
||||
<table id="goods_comment-lists" class="layui-border-box" lay-filter="goods_comment-lists"></table>
|
||||
|
||||
<!--会员信息-->
|
||||
<script type="text/html" id="user">
|
||||
<img src="{{d.avatar}}" style="height:80px;width: 80px" class="image-show">
|
||||
<div class="layui-input-inline" style="text-align: left">
|
||||
<p>会员编号:{{d.sn}}</p>
|
||||
<p>昵称:{{d.nickname}}</p>
|
||||
<p>会员等级:{{d.level_name}}</p>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<!--商品信息-->
|
||||
<script type="text/html" id="goods">
|
||||
<img src="{{d.image}}" style="height:80px;width: 80px;" class="image-show layui-col-md4">
|
||||
<div class="layui-input-inline" style="text-align: left;margin-left: 5px;">
|
||||
<p>商品名称:{{d.name}}</p>
|
||||
<p>商品规格:{{d.spec_value_str}}</p>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="comment_image">
|
||||
{{# layui.each(d.comment_image, function(index, item){ }}
|
||||
<img src="{{item}}" class="image-show" alt="评论图片" style="width:50px;height:50px;float:left;margin-right:5px;">
|
||||
{{# }); }}
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="comment-operation">
|
||||
{{# if(d.reply === null) { }}
|
||||
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="reply">待回复</a>
|
||||
{{# } }}
|
||||
{{# if(d.reply) { }}
|
||||
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="reply">修改回复</a>
|
||||
{{# } }}
|
||||
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="status_switch">{{d.info_state_switch}}</a>
|
||||
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
|
||||
</script>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<style>
|
||||
.layui-table-cell {
|
||||
height: auto;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'table', 'like','form','laydate'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, table = layui.table
|
||||
, like = layui.like
|
||||
,element = layui.element
|
||||
, laydate = layui.laydate;
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
getList(1);
|
||||
//切换列表
|
||||
element.on('tab(tab-all)', function (data) {
|
||||
var type = $(this).attr('data-type');
|
||||
getList(type);
|
||||
});
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(comment-search)', function(data){
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('goods_comment-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
},
|
||||
});
|
||||
});
|
||||
//清空查询
|
||||
form.on('submit(comment-clear-search)', function(){
|
||||
$('#keyword').val('');
|
||||
$('#choice').val('');
|
||||
$('#goods_comment').val('');
|
||||
$('#start_time').val(''); //清空输入框
|
||||
$('#end_time').val(''); //清空输入框
|
||||
//刷新列表
|
||||
form.render('select');
|
||||
table.reload('goods_comment-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
//图片放大
|
||||
$(document).on('click', '.image-show', function () {
|
||||
var src = $(this).attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
function getList(type) {
|
||||
table.render({
|
||||
elem: '#goods_comment-lists'
|
||||
, url: '{:url("goods_comment/lists")}?type='+type
|
||||
, cols: [[
|
||||
{type: 'checkbox',title: '当页全选'},
|
||||
{field: 'user', title: '客户信息',templet:'#user',width:310},
|
||||
{field: 'goods', title: '服务套餐',templet:'#goods',width:120},
|
||||
{field: 'goods_comment', title: '保洁师服务态度', align: 'center',width:220},
|
||||
{field: 'comment', title: '保洁师服务效果',templet:'#comment',width:250},
|
||||
{field: 'comment', title: '客服及时性和服务态度',width:200},
|
||||
{field: 'reply', title: '客户反馈内容',width:200},
|
||||
{field: 'comment_time', title: '评论时间', align: 'center',width:200},
|
||||
{fixed: 'right', title: '操作', align: 'center', toolbar: '#comment-operation',width:200},
|
||||
]]
|
||||
, page: true
|
||||
, text: {none: '暂无数据!'}
|
||||
, parseData: function (res) { //将原始数据解析成 table 组件所规定的数据
|
||||
return {
|
||||
"code": res.code,
|
||||
"msg": res.msg,
|
||||
"count": res.data.count, //解析数据长度
|
||||
"data": res.data.lists, //解析数据列表
|
||||
};
|
||||
}
|
||||
, done: function fix() {
|
||||
$(".layui-table-main tr").each(function (index, val) {
|
||||
$(".layui-table-fixed").each(function () {
|
||||
$($(this).find(".layui-table-body tbody tr")[index]).height($(val).height());
|
||||
});
|
||||
});
|
||||
$(".layui-table-header tr").each(function (index, val) {
|
||||
$(".layui-table-fixed").each(function () {
|
||||
$($(this).find(".layui-table-header thead tr")[index]).height($(val).height());
|
||||
});
|
||||
});
|
||||
window.onresize = function () {
|
||||
fix()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
})};
|
||||
|
||||
table.on('tool(goods_comment-lists)', function(obj){
|
||||
|
||||
if(obj.event === 'del'){
|
||||
var id = obj.data.id;
|
||||
var name = obj.data.name;
|
||||
layer.confirm('确定删除评论:<span style="color: red">'+name+"</span>", function(index){
|
||||
like.ajax({
|
||||
url:'{:url("goods_comment/del")}',
|
||||
data:{delData:id},
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('goods_comment-lists'); //数据刷新
|
||||
obj.del();
|
||||
}else{
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
}
|
||||
if(obj.event === 'status_switch'){
|
||||
var id = obj.data.id;
|
||||
var info_state = obj.data.status;
|
||||
var name = obj.data.name;
|
||||
var status = 0;
|
||||
if (info_state == '显示'){
|
||||
status = 0;
|
||||
layer.confirm('确认隐藏评论:<span style="color: red">'+name+'</span>', function(index){
|
||||
like.ajax({
|
||||
url:'{:url("goods_comment/switchStatus")}',
|
||||
data:{id:id,status:status},
|
||||
type:"get",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('goods_comment-lists');
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
|
||||
}else if (info_state == '隐藏') {
|
||||
status = 1;
|
||||
layer.confirm('确认显示评论:<span style="color: red">'+name+'</span>', function(index){
|
||||
like.ajax({
|
||||
url:'{:url("goods_comment/switchStatus")}',
|
||||
data:{id:id,status:status},
|
||||
type:"get",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('goods_comment-lists');
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(obj.event === 'reply'){
|
||||
var id = obj.data.id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '商品评论'
|
||||
,content: '{:url("goods_comment/reply")}?id='+id
|
||||
,area: ['60%','60%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submitID = 'reply-comment-submit'
|
||||
,submit = layero.find('iframe').contents().find('#'+ submitID);
|
||||
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit('+ submitID +')', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url:'{:url("goods_comment/reply")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('goods_comment-lists'); //数据刷新
|
||||
}else{
|
||||
iframeWindow.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
|
||||
},
|
||||
error:function(res)
|
||||
{
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
submit.trigger('click');
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
$('#batchdel').click(
|
||||
function(){ //删除所选
|
||||
var checkStatus = table.checkStatus('goods_comment-lists')
|
||||
,checkData = checkStatus.data; //得到选中的数据
|
||||
//是否已选数据
|
||||
if(checkData.length === 0){
|
||||
return layer.msg('请选择数据');
|
||||
}else {
|
||||
//获取所选id
|
||||
ids = [];
|
||||
for (let i of checkData){
|
||||
ids.push(i['id']);
|
||||
}
|
||||
|
||||
layer.confirm('确定删除所选评价?', function(index){
|
||||
like.ajax({
|
||||
url:'{:url("goods_comment/del")}',
|
||||
data:{delData:ids},
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('goods_comment-lists'); //数据刷新
|
||||
}else{
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
243
application/admin/view/control/sale_add.html
Normal file
243
application/admin/view/control/sale_add.html
Normal file
@@ -0,0 +1,243 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label {
|
||||
color: #6a6f6c;
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
.tips{
|
||||
color: red;
|
||||
}
|
||||
.goods-li {
|
||||
float: left;
|
||||
opacity: 1;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.goods-img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
padding: 4px;
|
||||
}
|
||||
.goods-img-del-x {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
top: -4px;
|
||||
right: -2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-size: 16px;
|
||||
line-height: 16px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: hsla(0, 0%, 60%, .6);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
.upload-file-div {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
border: 1px dashed #d2d2d2;
|
||||
text-align: center;
|
||||
line-height: 80px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.upload-file-title {
|
||||
color: #666;
|
||||
}
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user_level" id="layuiadmin-form-user_level" style="padding: 20px 30px 0 0;">
|
||||
<input type="hidden" value="{$id}" name="id">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">问题反馈:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="problem" placeholder="请输入客户投诉反馈的内容" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">处理想法:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="adjust" placeholder="请输入客户的处理想法" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item" style="margin-bottom: 0px">
|
||||
<label class="layui-form-label"><span class="form-label-asterisk">*</span>商品图片:</label>
|
||||
<div style="height:80px;line-height:80px">
|
||||
<div class="master-image"></div>
|
||||
<div class="goods-img-add goods-image" lay-verify="image" lay-verType="tips" switch-tab="0" verify-msg="请选择图片"></div>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item" style="margin-bottom: 0px">
|
||||
<label class="layui-form-label">投诉视频:</label>
|
||||
<div class="upload-file-div video-style" id="video">
|
||||
<a href="#" class="upload-file-title">+添加视频</a>
|
||||
</div>
|
||||
<input type="hidden" name="video" value="">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="add-user_level-submit" id="add-user_level-submit" value="确认">
|
||||
</div>
|
||||
|
||||
|
||||
<script type="text/html" id="template-goods-image">
|
||||
<li class="goods-li">
|
||||
<input name="goods_image[]" type="hidden" value="{image-src}">
|
||||
<img class="goods-img goods_image" src="{image-src}">
|
||||
<a class="goods-img-del-x" style="display: none;">x</a>
|
||||
</li>
|
||||
</script>
|
||||
<link rel="stylesheet" href="/static/plug/formSelects/formSelects-v4.css" />
|
||||
<script src="/static/plug/formSelects/formSelects-v4.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/'
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index','table','like','laydate','form'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,table = layui.table
|
||||
,like = layui.like
|
||||
, laydate = layui.laydate;
|
||||
form.render();
|
||||
$(document).off('submit.formEvent');
|
||||
|
||||
$('#add-user_level-submit').on('click', function(){
|
||||
var formData = {
|
||||
problem: $('[name="problem"]').val(),
|
||||
adjust: $('[name="adjust"]').val(),
|
||||
id: $('[name="id"]').val(),
|
||||
goods_images: $('[name="goods_image[]"]').map(function(){
|
||||
return $(this).val();
|
||||
}).get().join(','),
|
||||
video:$('[name="video"]').val(),
|
||||
};
|
||||
if(formData.problem==''){
|
||||
layer.msg('问题反馈的内容不能为空');
|
||||
return;
|
||||
}
|
||||
if(formData.adjust==''){
|
||||
layer.msg('处理想法不能为空');
|
||||
return;
|
||||
}
|
||||
like.ajax({
|
||||
url:'{:url("Control/sale_adds")}',
|
||||
data:formData,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('order-lists'); //数据刷新
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
// 图片上传功能
|
||||
$(document).on('mouseenter', '.goods-li', function () {
|
||||
$(this).children().last().show();
|
||||
});
|
||||
$(document).on('mouseleave', '.goods-li', function () {
|
||||
$(this).children().last().hide();
|
||||
});
|
||||
$(document).on('click', '.goods-li', function () {
|
||||
var src = $(this).children('img').attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
// 主图显示删除按钮
|
||||
$(document).on('mouseenter','.master-image',function () {
|
||||
$(this).children('.goods-image-del').show();
|
||||
});
|
||||
$(document).on('mouseleave', '.master-image', function () {
|
||||
$(this).children('.goods-image-del').hide();
|
||||
});
|
||||
$(document).on('click', '.master-image', function () {
|
||||
var src = $(this).children('img').attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
$(document).on('click', '.goods-img-del-x', function () {
|
||||
if($(this).hasClass('goods-image-del')){
|
||||
$(this).parent().next().show();
|
||||
$(this).parent().children().remove();
|
||||
}
|
||||
$(this).parent().remove();
|
||||
return false;
|
||||
});
|
||||
|
||||
like.imageUpload('.goods-img-add', function (uris, element) {
|
||||
var count = element.prev().children().length;
|
||||
count = !count ? 0:count;
|
||||
if (count+uris.length > 8) {
|
||||
layer.msg('最多只能选中8张图片');
|
||||
return;
|
||||
}
|
||||
uris = uris.reverse();
|
||||
for(var i in uris){
|
||||
var uri = uris[i];
|
||||
var template_goods_image = $('#template-goods-image').html();
|
||||
element.prev().append(template_goods_image.replace('{image-src}', like.getUrlFileName(uri, '{$storageUrl}')).replace('{image-src}', uri));
|
||||
}
|
||||
}, true);
|
||||
|
||||
// 视频上传功能
|
||||
$('#video').click(function(){
|
||||
layer.open({
|
||||
type: 2,
|
||||
title: '上传视频',
|
||||
content: '{:url("file_new/lists")}?type=video',
|
||||
area: ['90%', '90%']
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
window.videoCallback = function(uris) {
|
||||
if(uris.length > 0) {
|
||||
$('input[name="video"]').val(like.getUrlFileName(uris[0], '{$storageUrl}'));
|
||||
$('#video').html('<video width="80" height="80" controls><source src="'+uris[0]+'"></video>' +
|
||||
'<a class="goods-img-del-x" style="top:0;right:0;">x</a>');
|
||||
}
|
||||
};
|
||||
|
||||
// 表单验证
|
||||
form.verify({
|
||||
image: function(value, item) {
|
||||
// 改为检查实际存在的图片字段
|
||||
var images = $('input[name="goods_image[]"]').length;
|
||||
if(images === 0) {
|
||||
return $(item).attr('verify-msg');
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
144
application/admin/view/control/sale_edit.html
Normal file
144
application/admin/view/control/sale_edit.html
Normal file
@@ -0,0 +1,144 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label {
|
||||
color: #6a6f6c;
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
.tips{
|
||||
color: red;
|
||||
}
|
||||
.goods-li {
|
||||
float: left;
|
||||
opacity: 1;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.goods-img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
padding: 4px;
|
||||
}
|
||||
.goods-img-del-x {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
top: -4px;
|
||||
right: -2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-size: 16px;
|
||||
line-height: 16px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: hsla(0, 0%, 60%, .6);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-user_level" id="layuiadmin-form-user_level" style="padding: 20px 30px 0 0;">
|
||||
<input type="hidden" value="{$info.id}" name="id">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">问题反馈:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="problem" placeholder="请输入客户投诉反馈的内容" class="layui-textarea">{$info.problem}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">处理想法:</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea name="adjust" placeholder="请输入客户的处理想法" class="layui-textarea">{$info.adjust}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="eidt-submit" id="eidt-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
<style>
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
.layui-input-block {
|
||||
margin-left: 130px;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="/static/plug/formSelects/formSelects-v4.css" />
|
||||
<script src="/static/plug/formSelects/formSelects-v4.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index','table','like','laydate'], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form
|
||||
,table = layui.table
|
||||
,like = layui.like
|
||||
, laydate = layui.laydate;
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function(data){
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('user-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
//清空查询
|
||||
form.on('submit(user-clear-search)', function(){
|
||||
$('#keyword_type').val('sn');
|
||||
$('#keyword').val(''); //清空输入框
|
||||
$('#level').val(''); //清空输入框
|
||||
$('#group_id').val(''); //清空输入框
|
||||
$('#start_time').val(''); //清空输入框
|
||||
$('#end_time').val(''); //清空输入框
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('user-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1 //重新从第 1 页开始
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
469
application/admin/view/control/visit_order.html
Normal file
469
application/admin/view/control/visit_order.html
Normal file
@@ -0,0 +1,469 @@
|
||||
{layout name="layout1" /}
|
||||
<style>
|
||||
.layui-table-cell {
|
||||
height:auto;
|
||||
}
|
||||
.goods-content>div:not(:last-of-type) {
|
||||
border-bottom:1px solid #DCDCDC;
|
||||
}
|
||||
.goods-data::after{
|
||||
display: block;
|
||||
content: '';
|
||||
clear: both;
|
||||
}
|
||||
.goods_name_hide{
|
||||
overflow:hidden;
|
||||
white-space:nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.operation-btn {
|
||||
margin: 5px;
|
||||
}
|
||||
.table-operate{
|
||||
text-align: left;
|
||||
font-size:14px;
|
||||
padding:0 5px;
|
||||
height:auto;
|
||||
overflow:visible;
|
||||
text-overflow:inherit;
|
||||
white-space:normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
|
||||
<div class="layui-colla-item">
|
||||
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
|
||||
<div class="layui-colla-content layui-show">
|
||||
<p>*订单服务完成服务售后跟踪,请勿删除</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab layui-tab-card" lay-filter="tab-all">
|
||||
<ul class="layui-tab-title">
|
||||
<li data-type='' class="layui-this">全部</li>
|
||||
</ul>
|
||||
|
||||
<div class="layui-tab-item layui-show">
|
||||
<div class="layui-card">
|
||||
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
||||
<div class="layui-row">
|
||||
|
||||
|
||||
<div class="layui-inline" style="width: 24%;">
|
||||
<label class="layui-form-label">客户姓名:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="name" id="name" placeholder="请输入客户姓名"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline" style="width: 24%;">
|
||||
<label class="layui-form-label">客户电话:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="phone" id="name" placeholder="请输入客户电话"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">创建时间:</label>
|
||||
<div class="layui-input-inline">
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="start_time" class="layui-input" id="start_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-input-inline" style="margin-right: 5px;width: 20px;">
|
||||
<label class="layui-form-mid">至</label>
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="end_time" class="layui-input" id="end_time"
|
||||
placeholder="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad {$view_theme_color}" lay-submit
|
||||
lay-filter="user-search">查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad layui-btn-primary " lay-submit
|
||||
lay-filter="user-clear-search">清空查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad layui-btn-primary " lay-submit
|
||||
lay-filter="export-file">导出
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="layui-card-body">
|
||||
<table id="order-lists" lay-filter="order-lists"></table>
|
||||
<script type="text/html" id="status">
|
||||
{{# if(d.status === 0) { }}
|
||||
<p style="color:#1E9FFF">跟进中</p>
|
||||
{{# } }}
|
||||
|
||||
{{# if(d.status === 1) { }}
|
||||
<p style="color:#ee0000">已完成</p>
|
||||
{{# } }}
|
||||
</script>
|
||||
<script type="text/html" id="punish">
|
||||
{{# if(d.punish === 0) { }}
|
||||
<p style="color:#1E9FFF">未处罚</p>
|
||||
{{# } }}
|
||||
|
||||
{{# if(d.punish === 1) { }}
|
||||
<p style="color:#ee0000">已处罚</p>
|
||||
{{# } }}
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="user-operation">
|
||||
<div class="table-operate">
|
||||
<a class=" layui-btn-primary layui-btn-sm " lay-event="edit" style="display: inline-block;">修改</a>
|
||||
<a class=" layui-btn-primary layui-btn-sm " lay-event="follow" style="display: inline-block;">跟踪</a>
|
||||
<a class=" layui-btn-primary layui-btn-sm " lay-event="punish" style="display: inline-block;margin-top:10px">处罚</a>
|
||||
<a class=" layui-btn-primary layui-btn-sm " lay-event="images" style="display: inline-block;margin-top:10px">图片</a>
|
||||
<a class=" layui-btn-primary layui-btn-sm " lay-event="done" style="display: inline-block;margin-top:10px">派单</a>
|
||||
<a class=" layui-btn-primary layui-btn-sm " lay-event="done" style="display: inline-block;margin-top:10px">完成</a>
|
||||
<a class=" layui-btn-primary layui-btn-sm " lay-event="del" style="display: inline-block;margin-top:10px;background-color:#ee0000;color:#fff">删除</a>
|
||||
<div>
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'table', 'like', 'laydate'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, table = layui.table
|
||||
, like = layui.like
|
||||
, element = layui.element
|
||||
, laydate = layui.laydate;
|
||||
var listType = '';
|
||||
|
||||
//图片放大
|
||||
$(document).on('click', '.image-show', function () {
|
||||
var src = $(this).attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(user-search)', function (data) {
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('order-lists', {
|
||||
where: field,
|
||||
page: {
|
||||
curr: 1
|
||||
}
|
||||
});
|
||||
});
|
||||
//清空查询
|
||||
form.on('submit(order-clear-search)', function () {
|
||||
$('#keyword').val('');
|
||||
$('#order_status').val('');
|
||||
$('#goods_name').val('');
|
||||
$('#pay_way').val('');
|
||||
$('#order_type').val('');
|
||||
$('#order_source').val('');
|
||||
$('#start_time').val('');
|
||||
$('#end_time').val('');
|
||||
$('#delivery_type').val('');
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('order-lists', {
|
||||
where: [],
|
||||
page: {
|
||||
curr: 1
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 导出
|
||||
form.on('submit(export-file)', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url: '{:url("order/exportFile")}?type=' + listType,
|
||||
type: 'get',
|
||||
data: field,
|
||||
dataType: 'json',
|
||||
error: function() {
|
||||
layer.msg('导出超时,请稍后再试!');
|
||||
},
|
||||
success: function(res) {
|
||||
table.exportFile(res.data.exportTitle,res.data.exportData, res.data.exportExt, res.data.exportName);
|
||||
},
|
||||
timeout: 15000
|
||||
});
|
||||
layer.msg('导出中请耐心等待~');
|
||||
});
|
||||
|
||||
//日期时间范围
|
||||
laydate.render({
|
||||
elem: '#start_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
|
||||
laydate.render({
|
||||
elem: '#end_time'
|
||||
,type: 'datetime'
|
||||
,trigger: 'click'
|
||||
});
|
||||
|
||||
//获取列表
|
||||
getList(listType);
|
||||
//切换列表
|
||||
element.on('tab(tab-all)', function (data) {
|
||||
$('#keyword').val('');
|
||||
$('#order_status').val('');
|
||||
$('#goods_name').val('');
|
||||
$('#pay_way').val('');
|
||||
$('#order_type').val('');
|
||||
$('#start_time').val('');
|
||||
$('#end_time').val('');
|
||||
$('#delivery_type').val('');
|
||||
form.render('select');
|
||||
listType = $(this).attr('data-type');
|
||||
getList(listType);
|
||||
if (listType !== ''){
|
||||
$('.order_status').hide();
|
||||
}else {
|
||||
$('.order_status').show();
|
||||
}
|
||||
});
|
||||
|
||||
function getList(type) {
|
||||
table.render({
|
||||
elem: '#order-lists'
|
||||
,url: '{:url("Control/visit_order")}?type=' + type//模拟接口
|
||||
, cols: [[
|
||||
{type: 'checkbox'}
|
||||
,{field: 'order_id', title: '订单编号',align: 'center',}
|
||||
,{field: 'name', title: '客户信息',align: 'center',}
|
||||
,{field: 'phone', title: '联系电话',align: 'center',}
|
||||
,{field: 'autotime', title: '服务时间',align: 'center',}
|
||||
,{field: 'staff_name', title: '保洁师姓名',align: 'center',}
|
||||
,{field: 'staff_phone', title: '保洁师电话',align: 'center',}
|
||||
,{field: 'problem', title: '处理状态',align: 'center',toolbar: '#status'}
|
||||
,{field: 'problem', title: '投诉内容',align: 'center',}
|
||||
,{field: 'adjust', title: ' 处理方法',align: 'center',}
|
||||
,{field: 'time', title: '增加时间',align: 'center',}
|
||||
,{field: 'punish', title: '处罚状态',align: 'center',toolbar: '#punish'}
|
||||
,{fixed: 'right', title: '操作', width:150, toolbar: '#user-operation'}
|
||||
]]
|
||||
, page: true
|
||||
, limit: 17
|
||||
, text: {none: '暂无数据!'}
|
||||
, parseData: function (res) {
|
||||
return {
|
||||
"code": res.code,
|
||||
"msg": res.msg,
|
||||
"count": res.data.count,
|
||||
"data": res.data.lists,
|
||||
};
|
||||
}
|
||||
,done: function(res, curr, count){
|
||||
// 解决操作栏因为内容过多换行问题
|
||||
$(".layui-table-main tr").each(function (index, val) {
|
||||
$($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
$($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//监听工具条
|
||||
table.on('tool(order-lists)', function (obj) {
|
||||
var id = obj.data.id;
|
||||
if(obj.event === 'edit'){
|
||||
var id = obj.data.id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '编辑售后回访'
|
||||
,content: '{:url("Control/sale_edit")}?id='+id
|
||||
,area: ['60%', '65%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submit = layero.find('iframe').contents().find('#eidt-submit');
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(eidt-submit)', function(data){
|
||||
var field = data.field;
|
||||
$.ajax({
|
||||
url:'{:url("Control/sale_edit")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
}else{
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
if(obj.event === 'follow'){
|
||||
var id = obj.data.id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '写入售后跟踪信息'
|
||||
,content: '{:url("Control/follow")}?id='+id
|
||||
,area: ['60%','90%']
|
||||
,btn: ['关闭']
|
||||
})
|
||||
}
|
||||
|
||||
//查看图片的内容
|
||||
if(obj.event === 'images'){
|
||||
var id = obj.data.order_id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '查看图片'
|
||||
,content: '{:url("Control/images")}?id='+id
|
||||
,area: ['60%','90%']
|
||||
,btn: ['关闭']
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//处罚的内容
|
||||
if(obj.event === 'punish'){
|
||||
var id = obj.data.order_id;
|
||||
var punish = obj.data.punish;
|
||||
if(punish==1){
|
||||
layui.layer.msg('已经处罚了请勿重复处罚', {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
},
|
||||
)
|
||||
return
|
||||
}
|
||||
layer.confirm('确定生成处罚单据?', {
|
||||
btn: ['确认','取消'] //按钮
|
||||
}, function(){
|
||||
like.ajax({
|
||||
url: '{:url("Control/punish")}?id='+id
|
||||
, data: {id:id}
|
||||
, type: 'post'
|
||||
, success: function (res) {
|
||||
if (res.code == 1) {
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
},function () {
|
||||
table.reload('order-lists'); //数据刷新
|
||||
layer.close(index); //关闭弹层
|
||||
|
||||
});
|
||||
}
|
||||
},
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
//取消暂停服务
|
||||
if(obj.event === 'done'){
|
||||
var status=obj.data.status;
|
||||
if(status==1){
|
||||
layui.layer.msg('已经点击完成刷新页面', {
|
||||
offset: '15px'
|
||||
, icon: 2
|
||||
, time: 1000
|
||||
},
|
||||
)
|
||||
return
|
||||
};
|
||||
var id = obj.data.id;
|
||||
layer.confirm('确定售后订单跟踪完成?', {
|
||||
btn: ['确认','取消'] //按钮
|
||||
}, function(){
|
||||
like.ajax({
|
||||
url: '{:url("Control/done")}?id='+id
|
||||
, data: {id:id}
|
||||
, type: 'post'
|
||||
, success: function (res) {
|
||||
if (res.code == 1) {
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
},function () {
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
});
|
||||
}
|
||||
},
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
if(obj.event === 'del'){
|
||||
var id = obj.data.id;
|
||||
layer.confirm('确定删除售后订单', function(index){
|
||||
$.ajax({
|
||||
url:'{:url("Control/sale_del")}',
|
||||
data:{id:id},
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('user-lists'); //数据刷新
|
||||
obj.del();
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
</script>
|
||||
Reference in New Issue
Block a user