Files
duolamaojiazhen/application/admin/view/fine/lists.html
2025-12-22 13:59:40 +08:00

446 lines
18 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>
</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">
<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="" selected>请选择服务保洁师</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="order-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="done" style="display: inline-block; margin-top:10px">完成</a>
<a class="layui-btn-primary layui-btn-sm " lay-event="complete" style="display: inline-block; margin-top:10px">图片</a>
<a class="layui-btn-primary layui-btn-sm " lay-event="complete" style="display: inline-block; margin-top:10px">视频</a>
<a class="layui-btn-primary layui-btn-sm " lay-event="complete" style="display: inline-block; margin-top:10px">删除</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 = '';
$('.layui-btn.layuiadmin-btn-user_level').on('click', function(){
var type = $(this).data('type');
active[type] ? active[type].call(this) : '';
});
//图片放大
$(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("fine/lists")}?type=' + type//模拟接口
, cols: [[
{type: 'checkbox'}
,{field: 'order_id', title: '订单编号',align: 'center'}
,{field: 'goods_name', title: '订单类型',align: 'center'}
,{field: 'user_name', title: '客户名字',align: 'center'}
,{field: 'user_mobile', title: '客户电话',align: 'center'}
,{field: 'staff_name', title: '员工姓名',align: 'center'}
,{field: 'staff_mobile', title: '员工电话',align: 'center'}
,{field: 'type_name', title: '投诉类型',align: 'center'}
,{field: 'score', title: '罚款',align: 'center',}
,{field: 'integral', title: '扣分',align: 'center'}
,{field: 'problem', title: '处理状态',align: 'center',toolbar: '#status'}
,{field: 'create_time', title: '创建时间',align: 'center'}
,{fixed: 'right', title: '操作', width:135, toolbar: '#order-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());
});
}
});
}
var active = {
add: function(){
var index = layer.open({
type: 2
,title: '增加员工罚款'
,content: '{:url("Fine/add")}'
, area: ['60%', '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("Fine/add")}',
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');
}
});
}
}
//监听工具条
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("Fine/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("Fine/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('order-lists'); //数据刷新
}else{
layer.msg(res.msg, {
offset: '15px'
, icon: 2
, time: 1000
});
}
}
});
});
submit.trigger('click');
}
})
}
if(obj.event === 'done'){
var id = obj.data.id;
var type_id=obj.data.type_id;
var status = obj.data.status;
if(status==1){
layer.msg('审核已经完成,请勿重复审核', {
offset: '15px'
, icon: 2
, time: 1000
});
return
}else if(type_id==0){
layer.msg('处罚类型不能为空', {
offset: '15px'
, icon: 2
, time: 1000
});
return
}else{
$.ajax({
url:'{:url("fine/done")}',
data:obj.data,
type:"post",
success:function(res){
if(res.code==1){
layui.layer.msg(res.msg, {
offset: '15px'
, icon: 1
, time: 1000
});
table.reload('order-lists'); //数据刷新
}
}
})
}
}
if(obj.event === 'del'){
var id = obj.data.id;
layer.confirm('确定删除罚款', function(index){
$.ajax({
url:'{:url("fine/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>