|
|
<extend name="Public/base"/>
|
|
|
|
|
|
<block name="body">
|
|
|
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css"/>
|
|
|
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
|
|
|
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
|
|
<style>
|
|
|
.select2-container--default .select2-selection--single {
|
|
|
color: #000;
|
|
|
resize: none;
|
|
|
border-width: 1px;
|
|
|
border-style: solid;
|
|
|
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
|
|
|
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
|
|
|
height:28px;border-radius:3px;font-size:12px;
|
|
|
}
|
|
|
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
|
|
line-height:35px;
|
|
|
line-height:28px;
|
|
|
}
|
|
|
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
|
|
height:26px;
|
|
|
}
|
|
|
.select2-container--default .select2-search--dropdown .select2-search__field {
|
|
|
height:26px;line-height:26px;font-size:12px;
|
|
|
}
|
|
|
.select2-results__option[aria-selected] {font-size:12px;}
|
|
|
.layui-layer-dialog .layui-layer-content{color:red}
|
|
|
.butnbox {padding:10px 0 10px;}
|
|
|
.butnbox .butnlist {overflow:hidden;clear:both;}
|
|
|
.butnbox .butnlist .butn,.butnbox .butnlist .butn:hover {text-decoration:none;border:none;}
|
|
|
.butnbox .butnlist .butn {display:inline-block;width:120px;height:28px;line-height:28px;text-align:center;color:#FFF;background:#3C95C8;border-radius:3px;}
|
|
|
.butnbox .butnlist .butn.last {background:#009900;}
|
|
|
.butnbox .butnlist .butn~.butn {margin-left:20px;}
|
|
|
.data_list table tbody tr a.disabled,.data_list table tbody tr a.disabled:hover {color:#999;cursor:default;}
|
|
|
.layui-layer-title {
|
|
|
text-align: center;
|
|
|
height: 80px;
|
|
|
line-height: 80px;
|
|
|
font-weight: 600;
|
|
|
font-size: 18px;
|
|
|
}
|
|
|
</style>
|
|
|
<!-- 标题栏 -->
|
|
|
<div class="cf main-place top_nav_list navtab_list">
|
|
|
<h3 class="page_title">工单管理列表</h3>
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="cf top_nav_list">
|
|
|
<!-- 高级搜索 -->
|
|
|
<div class="jssearch fl cf search_list">
|
|
|
<div class="input-list search-title-box">
|
|
|
<label>搜索:</label>
|
|
|
<input id="serverid" name="server_id" type="text" value="{:I('server_id')}" style="display:none">
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<input type="text" name="order_no" value="{$_GET['order_no']}" placeholder="工单号">
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<select id="game_id" name="game_id" class="select_gallery" style="width:120px;">
|
|
|
<option value="">游戏名称</option>
|
|
|
<volist name=":get_game_list()" id="vo">
|
|
|
<option game-id="{$vo.id}" value="{$vo.id}" <?php if (I('game_id') == $vo['id']):?>selected<?php endif;?> >{$vo.game_name}</option>
|
|
|
</volist>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<select id="server_id" name="server_name" class="select_gallery" style="width:120px;">
|
|
|
<option value="">区服名称</option>
|
|
|
<if condition="$data['server_name'] neq ''"><option value="{$data['server_name']}">{$data['server_name']}</option></if>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<select id="type" name="type" class="select_gallery">
|
|
|
<option value="">工单类型</option>
|
|
|
<option value="1" <?php echo I('type') == 1 ? "selected" : "" ?> >资源</option>
|
|
|
<option value="2" <?php echo I('type') == 2 ? "selected" : "" ?> >反馈</option>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<input type="text" name="user_account" value="{$_GET['user_account']}" placeholder="玩家账号">
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<select id="status" name="status" class="select_gallery">
|
|
|
<option value="">状态</option>
|
|
|
<option value="1" <?php echo I('status') == 1 ? "selected" : "" ?> >完成</option>
|
|
|
<option value="3" <?php echo I('status') == 3 ? "selected" : "" ?> >处理中</option>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<select id="attachment_type" name="attachment_type" class="select_gallery">
|
|
|
<option value="">附件</option>
|
|
|
<option value="1" <?php echo I('attachment_type') == 1 ? "selected" : "" ?> >有</option>
|
|
|
<option value="2" <?php echo I('attachment_type') == 2 ? "selected" : "" ?> >无</option>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<select id="handler_id" name="handler_id" class="select_gallery">
|
|
|
<option value="">接单人员选择</option>
|
|
|
<?php foreach ($admin_users as $user):?>
|
|
|
<option value="{$user['uid']}" <?php if ($user['uid'] == I('handler_id')):?>selected<?php endif;?> >{$user.nickname}</option>
|
|
|
<?php endforeach;?>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="input-list">
|
|
|
<input type="text" readonly id="time-start" name="created_time_start" class="" value="{:I('created_time_start')}"
|
|
|
placeholder="申请开始时间"/>
|
|
|
-
|
|
|
<div class="input-append date" id="datetimepicker" style="display:inline-block">
|
|
|
<input type="text" readonly id="time-end" name="created_time_end" class="" value="{:I('created_time_end')}"
|
|
|
placeholder="申请结束时间"/>
|
|
|
<span class="add-on"><i class="icon-th"></i></span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="input-list input-list-game search_label_rehab">
|
|
|
<select id="score" name="score" class="select_gallery">
|
|
|
<option value="">评分选择</option>
|
|
|
<option value="1" <?php if(I('score') == 1):?>selected<?php endif;?> >1</option>
|
|
|
<option value="2" <?php if(I('score') == 2):?>selected<?php endif;?> >2</option>
|
|
|
<option value="3" <?php if(I('score') == 3):?>selected<?php endif;?> >3</option>
|
|
|
<option value="4" <?php if(I('score') == 4):?>selected<?php endif;?> >4</option>
|
|
|
<option value="5" <?php if(I('score') == 5):?>selected<?php endif;?> >5</option>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="input-list">
|
|
|
<a class="sch-btn" href="javascript:;" id="search"
|
|
|
url="{:U('workOrder/list','model='.$model['name'],false)}">
|
|
|
搜索
|
|
|
</a>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="fl button_list" style="margin-bottom: 10px;">
|
|
|
<div class="tools">
|
|
|
<a class="" href="{:U('WorkOrder/store')}"><span class="button_icon button_icon1"></span>新增工单</a>
|
|
|
<a class="confirm ajax-post" id="dtnn" target-form="ids" url="{:U('WorkOrder/delete')}"><span class="button_icon button_icon2 "></span>批量删除</a>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<!-- 数据列表 -->
|
|
|
<div class="data_list">
|
|
|
<div class="">
|
|
|
<table>
|
|
|
<!-- 表头 -->
|
|
|
<thead>
|
|
|
<tr>
|
|
|
<th class="">
|
|
|
<input class="check-all" type="checkbox">
|
|
|
</th>
|
|
|
<th>工单号</th>
|
|
|
<th>游戏名</th>
|
|
|
<th>区服</th>
|
|
|
<th>工单类型</th>
|
|
|
<th>状态</th>
|
|
|
<th>游戏账号</th>
|
|
|
<th>创单人员</th>
|
|
|
<th>接单人员</th>
|
|
|
<th>创建时间</th>
|
|
|
<th>评价分数</th>
|
|
|
<th>附件</th>
|
|
|
<th>操作</th>
|
|
|
</tr>
|
|
|
</thead>
|
|
|
<!-- 列表 -->
|
|
|
<tbody>
|
|
|
<empty name="list_data">
|
|
|
<td colspan="99" class="text-center">aOh! 暂时还没有内容!</td>
|
|
|
<else/>
|
|
|
<volist name="list_data" id="data">
|
|
|
<tr>
|
|
|
<td><input class="ids" type="checkbox" value="{$data['id']}" name="ids[]"></td>
|
|
|
<td>{$data.order_no}</td>
|
|
|
<td>{$data.game_name}</td>
|
|
|
<td>{$data.server_name}</td>
|
|
|
<td><?php echo $data['type'] == 1 ? "资源" : "反馈";?></td>
|
|
|
<td>{$data.status_desc}</td>
|
|
|
<td>{$data.user_account}</td>
|
|
|
<td>{:get_admin_nickname($data['creator_id'])}</td>
|
|
|
<td>{:get_admin_nickname($data['handler_id'])}</td>
|
|
|
<td>{$data.created_time|date='Y-m-d H:i:s',###}</td>
|
|
|
<td>{$data.score}</td>
|
|
|
<td><?php echo $data['attachment_url'] ? '有' : '无'?></td>
|
|
|
<td>
|
|
|
<a href="{:U('workOrder/modify',array('id'=>$data['id']))}">编辑 </a>
|
|
|
<?php if ($data['type'] == 1):?><a href="{:U('workOrder/resourceApply',array('id'=>$data['id']))}">申请 </a><?php endif;?>
|
|
|
<?php if ($data['status'] != 1 && empty($data['handler_id'])):?><a class="ajax-get" href="{:U('workOrder/take',array('id'=>$data['id']))}">接单 </a><?php endif;?>
|
|
|
<?php if ($data['type'] == 2):?><a href="{:U('workOrder/feedbackProcessLogStore',array('id'=>$data['id']))}">更新 </a><?php endif;?>
|
|
|
<?php if ($data['status'] != 1):?><a class="ajax-get" href="{:U('workOrder/finish',array('id'=>$data['id']))}">完成</a><?php endif;?>
|
|
|
<a href="{:U('workOrder/evaluate',array('id'=>$data['id']))}">评价 </a>
|
|
|
<a class="ajax-get confirm" href="{:U('workOrder/delete',array('ids'=>$data['id']))}">删除 </a>
|
|
|
</td>
|
|
|
</tr>
|
|
|
</volist>
|
|
|
</empty>
|
|
|
</tbody>
|
|
|
</table>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="page">
|
|
|
<if condition="$role_export_check eq true ">
|
|
|
<a class="sch-btn" href="{:U('Export/exportWorkOrder',I('get.'))}">导出</a>
|
|
|
</if>
|
|
|
{$_page|default=''}
|
|
|
</div>
|
|
|
|
|
|
<div class="common_settings">
|
|
|
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
|
|
|
<form class="addShortcutIcon">
|
|
|
<input type="hidden" name="title" value="{$m_title}">
|
|
|
<input type="hidden" name="url" value="settlement/sheetList">
|
|
|
</form>
|
|
|
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
|
|
|
</div>
|
|
|
|
|
|
</block>
|
|
|
|
|
|
<block name="script">
|
|
|
<script src="__STATIC__/layer/layer.js"></script>
|
|
|
<script src="__STATIC__/layer/extend/layer.ext.js"></script>
|
|
|
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
|
|
|
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
|
|
|
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
|
|
|
<script type="text/javascript" src="__STATIC__/layer/extend/layer.ext.js" ></script>
|
|
|
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
|
|
|
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
|
|
|
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
|
|
|
<link rel="stylesheet" href="__STATIC__/flatpickr/flatpickr.min.css">
|
|
|
<script src="__STATIC__/flatpickr/flatpickr.min.js"></script>
|
|
|
<script src="__STATIC__/flatpickr/l10n/zh.js"></script>
|
|
|
<style>
|
|
|
.layui-layer-demo .layui-layer-title {background:#F0F5F7;font-weight:bold;}
|
|
|
.layui-layer-demo .layui-layer-content {}
|
|
|
.layui-layer-demo .layui-layer-content table{width:100%;border:0;border-spacing:0;padding:0;}
|
|
|
.layui-layer-demo .layui-layer-content td {height:42px;padding-left:20px;}
|
|
|
.layui-layer-demo .layui-layer-content tr:hover {background:#F0F5F7;}
|
|
|
.layui-layer-demo .layui-layer-content tr~tr {border-top:1px solid #ccc;}
|
|
|
.layui-layer-demo .layui-layer-content td~td {border-left:1px solid #ccc;}
|
|
|
.layui-layer-demo .layui-layer-content tr:last-child td {}
|
|
|
</style>
|
|
|
<script type="text/javascript">
|
|
|
//导航高亮
|
|
|
highlight_subnav('{:U('WorkOrder/list')}');
|
|
|
$(function () {
|
|
|
$(".select_gallery").select2();
|
|
|
|
|
|
//搜索功能
|
|
|
$("#search").click(function () {
|
|
|
var sdate = Date.parse($('#time-start').val()) / 1000;
|
|
|
var edate = Date.parse($('#time-end').val()) / 1000;
|
|
|
if (sdate > edate) {
|
|
|
layer.msg('开始时间必须小于等于结束时间');
|
|
|
return false;
|
|
|
}
|
|
|
if ((edate - sdate) > 2592000) {
|
|
|
layer.msg('时间间隔不能超过31天,请重新选择日期');
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
var url = $(this).attr('url');
|
|
|
var query = $('.jssearch').find('input').serialize();
|
|
|
query += "&" + $('.jssearch').find('select').serialize();
|
|
|
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g, '');
|
|
|
query = query.replace(/^&/g, '');
|
|
|
if (url.indexOf('?') > 0) {
|
|
|
url += '&' + query;
|
|
|
} else {
|
|
|
url += '?' + query;
|
|
|
}
|
|
|
window.location.href = url;
|
|
|
});
|
|
|
|
|
|
//回车自动提交
|
|
|
$('.jssearch').find('input').keyup(function (event) {
|
|
|
if (event.keyCode === 13) {
|
|
|
$("#search").click();
|
|
|
}
|
|
|
});
|
|
|
$('#time-start').datetimepicker({
|
|
|
format: 'yyyy-mm-dd',
|
|
|
language: "zh-CN",
|
|
|
minView: 2,
|
|
|
autoclose: true
|
|
|
});
|
|
|
|
|
|
$('#datetimepicker').datetimepicker({
|
|
|
format: 'yyyy-mm-dd',
|
|
|
language: "zh-CN",
|
|
|
minView: 2,
|
|
|
autoclose: true,
|
|
|
pickerPosition: 'bottom-left'
|
|
|
})
|
|
|
|
|
|
$("#server_id").change(function () {
|
|
|
var g_server_id = $("#server_id option:selected").attr('server-id');
|
|
|
$("#serverid").val(g_server_id);
|
|
|
});
|
|
|
var server_id = "{:I('server_id')}";
|
|
|
$("#game_id").change(function(){
|
|
|
var addData = '';
|
|
|
$.ajax({
|
|
|
url:"{:U('Ajax/getServer')}",
|
|
|
type:"post",
|
|
|
data:{game_id:$("#game_id option:selected").attr('game-id')},
|
|
|
dataType:'json',
|
|
|
success:function(data){
|
|
|
str = "<option value=''>请选择区服</option>";
|
|
|
for (var i in data){
|
|
|
if (data[i].id == server_id) {
|
|
|
str += "<option value='"+data[i].server_name+"' server-id='"+data[i].id+"' selected >"+data[i].server_name+"</option>"
|
|
|
} else {
|
|
|
str += "<option value='"+data[i].server_name+"' server-id='"+data[i].id+"'>"+data[i].server_name+"</option>"
|
|
|
}
|
|
|
}
|
|
|
var g_game_id = $("#game_id option:selected").attr('game-id');
|
|
|
$("#gameid").val(g_game_id);
|
|
|
$("#server_id").empty();
|
|
|
$("#server_id").append(str);
|
|
|
$("#server_id").select2();
|
|
|
|
|
|
}
|
|
|
})
|
|
|
});
|
|
|
$("#game_id").change();
|
|
|
})
|
|
|
</script>
|
|
|
</block>
|