Files
2025-12-22 13:59:40 +08:00

656 lines
26 KiB
HTML

{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>
<p>*订单的状态又执行成功,等待执行,请勿删除执行</p>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-row">
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
<div class="layui-form-item">
<div class="layui-row">
<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>
<div class="layui-inline" style="width: 24%;">
<label class="layui-form-label">保洁是姓名:</label>
<div class="layui-input-block">
<select name="staff_id">
<option value="">请选保洁师查询</option>
{foreach $staff as $item }
<option value="{$item.id}">{$item.name}</option>
{/foreach}
</select>
</div>
</div>
<div class="layui-inline">
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad {$view_theme_color}" lay-submit
lay-filter="order-search">查询
</button>
<button class="layui-btn layui-btn-sm layuiadmin-btn-ad layui-btn-primary " lay-submit
lay-filter="order-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>
</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>
{foreach $type as $item }
<li data-type="{$item.id}">{$item.name}</li>
{/foreach}
</ul>
<div class="layui-tab-item layui-show">
<div class="layui-card">
<div class="layui-card-body">
<table id="order-lists" lay-filter="order-lists"></table>
<script type="text/html" id="adder" >
<div class="table-operate">
<p>{{d.morning}}</p>
<p style="color:#077E01">{{d.ids}}</p>
</div>
</script>
<script type="text/html" id="noon" >
<div class="table-operate">
<p>{{d.noon}}</p>
<p style="color:#077E01">{{d.idss}}</p>
</div>
</script>
<script type="text/html" id="data" >
<div class="table-operate">
<p>{{d.xq}}</p>
<p>
{{# if(d.addtime==1){}}
上午
{{# }else{ }}
下午
{{# } }}
</p>
</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 = '';
//监听搜索
form.on('submit(order-search)', function (data) {
var field = data.field;
//执行重载
table.reload('order-lists', {
where: field,
page: {
curr: 1
}
});
});
//日期时间范围
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("Orderstaff/orederlist")}?type=' + listType
, cols: [[
{field: 'name', title: '保洁师姓名',align: 'center',}
, {field: 'addr', title: '保洁师住址', align: 'center', templet:'#order',width:240}
, {field: 'adder', title: '上午服务地址',templet:'#adder'}
, {field: 'noon', title: '下午服务地址',templet:'#noon'}
, {field: 'order_count', title: '上午请假',}
, {field: 'order_counts', title: '下午请假',}
]]
, page: true
, text: {none: '暂无数据!'}
, parseData: function (res) {
return {
"code": res.code,
"msg": res.msg,
"count": res.data.count,
"data": res.data.lists,
"totalRow": {
"inventoryQty":123
}
};
}
,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 status=obj.data.status;
// if(status==1){
// layui.layer.msg('订单已经完成,无法修改订单的状态', {
// offset: '15px'
// , icon: 2
// , time: 1000
// },
// )
// return
// };
if(obj.event === 'reserva'){
var status=obj.data.lock;
if(status==1){
layui.layer.msg('请联系管理员解锁订单', {
offset: '15px'
, icon: 2
, time: 1000
},
)
return
};
var id = obj.data.id;
layer.open({
type: 2
,title: '修改订单预约的时间'
,content: '{:url("Orderautomatic/eitdata")}?id='+id
,area: ['55%', '60%']
,btn: ['确定', '取消']
,yes: function(index, layero){
var iframeWindow = window['layui-layer-iframe'+ index]
,submit = layero.find('iframe').contents().find('#edit-submits');
//监听提交
iframeWindow.layui.form.on('submit(edit-submits)', function(data){
var field = data.field;
if(data.field.end_time==""){
layui.layer.msg('服务日期不能为空', {
offset: '15px'
, icon: 2
, time: 1000
});
return;
}
$.ajax({
url:'{:url("Orderautomatic/eitdata")}?id='+id,
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('order-lists'); //数据刷新
}
}
});
});
submit.trigger('click');
}
})
}
//暂停订单执行
if(obj.event === 'del'){
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("Orderautomatic/dels")}?id='+id
, data: {'order_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');
});
}
},
});
});
}
//锁定订单
if(obj.event === 'lock'){
var id = obj.data.id;
layer.confirm('锁定订单后不是超级管理员不能解锁订单?', {
btn: ['确认','取消'] //按钮
}, function(){
like.ajax({
url: '{:url("Orderautomatic/lock")}?id='+id
, data: {'order_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');
});
}
},
});
});
}
//锁定订单
if(obj.event === 'unlock'){
var id = obj.data.id;
layer.confirm('锁定订单后不是超级管理员不能解锁订单?', {
btn: ['确认','取消'] //按钮
}, function(){
like.ajax({
url: '{:url("Orderautomatic/unlock")}?id='+id
, data: {'order_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');
});
}
},
});
});
}
//删除订单
if(obj.event === 'delss'){
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("Orderautomatic/delss")}?id='+id
, data: {'order_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');
});
}
},
});
});
}
//删除订单
if(obj.event === 'delss'){
var id = obj.data.id;
layer.confirm('请注意操作订单,订单日志记录更新?',{
btn: ['确认','取消'] //按钮
}, function(){
like.ajax({
url: '{:url("Orderautomatic/delss")}?id='+id
, data: {'order_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');
});
}
},
});
});
}
//设置订单已完成状态
if(obj.event === 'complete'){
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("Orderautomatic/complete")}?id='+id
, data: {'order_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');
});
}
},
});
});
}
//编辑订单
if(obj.event === 'edit'){
var status=obj.data.lock;
if(status==1){
layui.layer.msg('请联系管理员解锁订单', {
offset: '15px'
, icon: 2
, time: 1000
},
)
return
};
var index = layer.open({
type: 2
,title: '增加排单预约'
,content: '{:url("Orderautomatic/staff")}?id='+id
,area: ['30%', '60%']
,btn: ['保存', '取消']
,maxmin: true
,yes: function(index, layero){
var iframeWindow = window['layui-layer-iframe'+ index]
,submitID = 'add-user_level-submit'
,submit = layero.find('iframe').contents().find('#'+ submitID);
//监听提交
iframeWindow.layui.form.on('submit('+ submitID +')', function(data){
var field = data.field;
like.ajax({
url:'{:url("Orderautomatic/staff")}?id='+id,
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('order-lists'); //数据刷新
}
}
});
});
submit.trigger('click');
}
});
}
//取消暂停服务
if(obj.event === 'delsd'){
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("Orderautomatic/delsd")}?id='+id
, data: {'order_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');
});
}
},
});
});
}
//保洁人员备注信息
if(obj.event === 'remarksd'){
var id = obj.data.id;
like.ajax({
url: '{:url("Orderautomatic/remarks")}'
, data: {'id': id}
, type: 'get'
, success: function (res) {
if (res.code === 1) {
layer.prompt({title: '备注信息', formType: 2, value: res.data.order_remarks}, function(value, index){
layer.close(index);
like.ajax({
url: '{:url("Orderautomatic/remarks")}'
, data: {'id': id, "order_remarks": value }
, type: 'post'
, success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {
offset: '15px'
, icon: 1
, time: 1000
});
table.reload('order-lists');
layer.close(index); //关闭弹层
table.reload('user_level-lists'); //数据刷新
}
}
});
});
}
}
});
}
//商家备注
if(obj.event === 'remarks') {
like.ajax({
url: '{:url("order/remarks")}'
, data: {'id': id}
, type: 'get'
, success: function (res) {
if (res.code === 1) {
layer.prompt({title: '备注信息', formType: 2, value: res.data.order_remarks}, function(value, index){
layer.close(index);
like.ajax({
url: '{:url("order/remarks")}'
, data: {'id': id, "order_remarks": value }
, type: 'post'
, success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {
offset: '15px'
, icon: 1
, time: 1000
});
table.reload('order-lists');
layer.close(index); //关闭弹层
table.reload('user_level-lists'); //数据刷新
}
}
});
});
}
}
});
}
});
});
</script>