387 lines
16 KiB
HTML
387 lines
16 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
|
||
<head>
|
||
<th:block th:include="include :: header('党务列表')" />
|
||
<th:block th:include="include :: layout-latest-css" />
|
||
<th:block th:include="include :: ztree-css" />
|
||
</head>
|
||
<body class="gray-bg">
|
||
<div class="ui-layout-west">
|
||
<div class="box box-main">
|
||
<div class="box-header">
|
||
<div class="box-title">
|
||
<i class="fa fa-sitemap"></i> 组织机构
|
||
</div>
|
||
<div class="box-tools pull-right">
|
||
<a type="button" class="btn btn-box-tool" href="#" onclick="dept()" title="管理部门"><i class="fa fa-edit"></i></a>
|
||
<button type="button" class="btn btn-box-tool" id="btnExpand" title="展开" style="display:none;"><i class="fa fa-chevron-up"></i></button>
|
||
<button type="button" class="btn btn-box-tool" id="btnCollapse" title="折叠"><i class="fa fa-chevron-down"></i></button>
|
||
<button type="button" class="btn btn-box-tool" id="btnRefresh" title="刷新部门"><i class="fa fa-refresh"></i></button>
|
||
</div>
|
||
</div>
|
||
<div class="ui-layout-content">
|
||
<div id="tree" class="ztree"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="ui-layout-center">
|
||
<div class="container-div">
|
||
<div class="row">
|
||
<div class="col-sm-12 search-collapse">
|
||
<form id="formId">
|
||
<div class="select-list">
|
||
<ul>
|
||
<input type="hidden" name="type" value="季度考核指标"/>
|
||
<li>
|
||
<label>简写:</label>
|
||
<input type="text" id="shotName" name="shotName"/>
|
||
</li>
|
||
<li>
|
||
<label>负责人:</label>
|
||
<select name="head" id="head"></select>
|
||
</li>
|
||
<li>
|
||
<label>审核人:</label>
|
||
<select name="reviewed" id="reviewed"></select>
|
||
</li>
|
||
<li>
|
||
<label>督办科室:</label>
|
||
<select name="deptId" id="deptId"></select>
|
||
</li>
|
||
<li>
|
||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a>
|
||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
|
||
<div class="btn-group-sm" id="toolbar" role="group">
|
||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="base:affairs:add">
|
||
<i class="fa fa-plus"></i> 添加
|
||
</a>
|
||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="base:affairs:edit">
|
||
<i class="fa fa-edit"></i> 修改
|
||
</a>
|
||
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="base:affairs:remove">
|
||
<i class="fa fa-remove"></i> 删除
|
||
</a>
|
||
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="base:affairs:export">
|
||
<i class="fa fa-download"></i> 导出
|
||
</a>
|
||
</div>
|
||
<div class="col-sm-12 select-table table-striped">
|
||
<table id="bootstrap-table"></table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<th:block th:include="include :: footer" />
|
||
<th:block th:include="include :: layout-latest-js" />
|
||
<th:block th:include="include :: ztree-js" />
|
||
<script th:inline="javascript">
|
||
var editFlag = [[${@permission.hasPermi('base:affairs:edit')}]];
|
||
var removeFlag = [[${@permission.hasPermi('base:affairs:remove')}]];
|
||
var prefix = ctx + "base/affairs";
|
||
|
||
$(document).ready(function () {
|
||
$.ajax({
|
||
type: "post",
|
||
url: ctx + "base/personnel/personnelList",
|
||
data: {
|
||
},
|
||
success: function(data) {
|
||
var opt = '<option value="">请选择</option>';
|
||
data.data.forEach(d=>{
|
||
opt += '<option value="'+d.id+'">'+d.name+'</option>';
|
||
})
|
||
$("#head")[0].innerHTML=opt;
|
||
$("#reviewed")[0].innerHTML=opt;
|
||
}
|
||
});
|
||
$.ajax({
|
||
type: "post",
|
||
url: ctx + "base/personnel/deptList",
|
||
data: {
|
||
},
|
||
success: function(data) {
|
||
var opt = '<option value="">请选择</option>';
|
||
data.data.forEach(d=>{
|
||
opt += '<option value="'+d.deptId+'">'+d.deptName+'</option>';
|
||
})
|
||
$("#deptId")[0].innerHTML=opt;
|
||
}
|
||
});
|
||
})
|
||
|
||
$(function() {
|
||
var panehHidden = false;
|
||
if ($(this).width() < 769) {
|
||
panehHidden = true;
|
||
}
|
||
$('body').layout({ initClosed: panehHidden, west__size: 185 });
|
||
// 回到顶部绑定
|
||
if ($.fn.toTop !== undefined) {
|
||
var opt = {
|
||
win:$('.ui-layout-center'),
|
||
doc:$('.ui-layout-center')
|
||
};
|
||
$('#scroll-up').toTop(opt);
|
||
}
|
||
var options = {
|
||
url: prefix + "/list",
|
||
createUrl: prefix + "/add",
|
||
updateUrl: prefix + "/edit/{id}",
|
||
removeUrl: prefix + "/remove",
|
||
exportUrl: prefix + "/export",
|
||
modalName: "党务",
|
||
columns: [{
|
||
checkbox: true
|
||
},
|
||
{
|
||
field: 'id',
|
||
title: '自增ID',
|
||
visible: false
|
||
},
|
||
{
|
||
field: 'branch',
|
||
title: '支部名称'
|
||
},
|
||
{
|
||
field: 'type',
|
||
title: '类型'
|
||
},
|
||
{
|
||
field: 'target',
|
||
title: '考核内容'
|
||
},
|
||
{
|
||
field: 'shotName',
|
||
title: '简写'
|
||
},
|
||
{
|
||
field: 'demand',
|
||
title: '考核目标',
|
||
width:200,
|
||
align: 'center',
|
||
formatter: function(value, row, index) {
|
||
return $.table.tooltip(value);
|
||
}
|
||
},
|
||
{
|
||
field: 'method',
|
||
title: '标准要求',
|
||
width:200,
|
||
align: 'center',
|
||
formatter: function(value, row, index) {
|
||
return $.table.tooltip(value);
|
||
}
|
||
},
|
||
{
|
||
field: 'detailed',
|
||
title: '评分办法',
|
||
width:200,
|
||
align: 'center',
|
||
formatter: function(value, row, index) {
|
||
return $.table.tooltip(value);
|
||
}
|
||
},
|
||
{
|
||
field: 'score',
|
||
title: '分值'
|
||
},
|
||
{
|
||
field: 'nowScore',
|
||
title: '当前得分'
|
||
},
|
||
{
|
||
field: 'unit',
|
||
title: '考核类别'
|
||
},
|
||
{
|
||
field: 'deptName',
|
||
title: '督办科室'
|
||
},
|
||
{
|
||
field: 'header',
|
||
title: '负责人'
|
||
},
|
||
{
|
||
field: 'reviewer',
|
||
title: '审核人'
|
||
},
|
||
{
|
||
field: 'finishDate',
|
||
title: '完成截止时间'
|
||
},
|
||
{
|
||
field: 'remark',
|
||
title: '备注'
|
||
},
|
||
{
|
||
title: '操作',
|
||
align: 'center',
|
||
formatter: function(value, row, index) {
|
||
var actions = [];
|
||
if (row.status === '1'){
|
||
actions.push('<a data-id="'+row.id+'" data-header="'+row.header+'" data-shotname="'+row.shotName+'" data-deptname="'+row.deptName+'" class="openUpload btn btn-primary btn-xs ' + editFlag + '" href="javascript:void(0)"><i class="fa fa-upload"></i>上传附件</a> ');
|
||
}else if (row.status === '2'){
|
||
actions.push('<a class="btn btn-default btn-xs" href="javascript:void(0)">待审核</a> ');
|
||
}else if(row.status === '3'){
|
||
actions.push('<a class="btn btn-danger btn-xs" href="javascript:void(0)">已驳回</a> ');
|
||
actions.push('<a data-id="'+row.id+'" data-header="'+row.header+'" data-shotname="'+row.shotName+'" data-deptname="'+row.deptName+'" class="openUpload btn btn-primary btn-xs ' + editFlag + '" href="javascript:void(0)"><i class="fa fa-upload"></i>重新上传附件</a> ');
|
||
}else if (row.status === '4'){
|
||
actions.push('<a class="btn btn-primary btn-xs" href="javascript:void(0)">已完成</a> ');
|
||
}
|
||
if (row.files && row.status !=='3'){
|
||
actions.push('<a data-files="'+row.files+'" data-type="1" class="viewFiles0828 btn btn-primary btn-xs ' + editFlag + '" href="javascript:void(0)"><i class="fa fa-picture-o"></i>查看图片</a> ');
|
||
actions.push('<a data-files="'+row.files+'" data-type="2" class="viewFiles0828 btn btn-primary btn-xs ' + editFlag + '" href="javascript:void(0)"><i class="fa fa-download"></i>下载附件</a> ');
|
||
}
|
||
// actions.push('<a class="btn btn-default btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>查看详情</a> ');
|
||
return actions.join('');
|
||
}
|
||
}]
|
||
};
|
||
$.table.init(options);
|
||
$("#bootstrap-table").on('click','.openUpload',function () {
|
||
let _id = $(this)[0].dataset.id;
|
||
layer.open({
|
||
title:'上传附件',
|
||
area:['80%','80%'],
|
||
type:2,
|
||
content:'/base/affairs/upload',
|
||
success(res,index){
|
||
//传值
|
||
parent.a_upload_id = _id;
|
||
parent.a_upload_index = index;
|
||
parent.a_upload_type = "1";
|
||
},
|
||
end(){
|
||
$.table.search()
|
||
}
|
||
})
|
||
});
|
||
$("#bootstrap-table").on('click',".openUpload",function () {
|
||
let _id = $(this)[0].dataset.id;
|
||
layer.open({
|
||
title:'上传附件',
|
||
area:['80%','80%'],
|
||
type:2,
|
||
content:'/base/affairs/upload',
|
||
success(res,index){
|
||
//传值
|
||
parent.a_upload_id = _id;
|
||
parent.a_upload_index = index;
|
||
parent.a_upload_type = "1";
|
||
},
|
||
end(){
|
||
$.table.search()
|
||
}
|
||
})
|
||
})
|
||
$("#bootstrap-table").on("click",".viewFiles0828",function () {
|
||
let _files = $(this)[0].dataset.files.split(',');
|
||
let _type = $(this)[0].dataset.type;
|
||
let _dataImg = [];
|
||
let _downData = [];
|
||
_files.forEach((item,index) => {
|
||
if(item.indexOf(".jpg")>-1 || item.indexOf(".png")>-1){
|
||
_dataImg.push({
|
||
"alt": "",
|
||
"pid": index, //图片id
|
||
"src": window.location.origin+item, //原图地址
|
||
"thumb": window.location.origin+item //缩略图地址
|
||
})
|
||
}else if(item.indexOf(".docx")> -1 || item.indexOf(".doc") > -1 || item.indexOf(".xlsx") > -1 || item.indexOf(".xls") > -1 || item.indexOf(".pdf") > -1){
|
||
_downData.push(item);
|
||
}
|
||
})
|
||
if(_type === '1'){ //查看图片
|
||
let json = {
|
||
"title": "查看图片", //相册标题
|
||
"id": 123, //相册id
|
||
"start": 0, //初始显示的图片序号,默认0
|
||
"data": _dataImg
|
||
};
|
||
layer.photos({
|
||
photos: json,
|
||
closeBtn: 0, //右上角按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0
|
||
anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机(请注意,3.0之前的版本用shift参数)
|
||
});
|
||
}else{ //下载附件
|
||
if(_downData.length === 0){
|
||
$.modal.msgError('暂无文件!')
|
||
return false;
|
||
}
|
||
_downData.forEach(item => {
|
||
let _lastNum = item.lastIndexOf('/')+1;
|
||
let _title = item.substr(_lastNum,item.length-1);
|
||
const a = document.createElement('a');
|
||
a.style.display = 'none';
|
||
a.download = _title;
|
||
a.href = window.location.origin+item;
|
||
document.body.appendChild(a);
|
||
a.click();
|
||
document.body.removeChild(a);
|
||
})
|
||
}
|
||
});
|
||
queryDeptTree();
|
||
});
|
||
function queryDeptTree(){
|
||
var url = ctx + "base/affairs/deptTree";
|
||
// var url = ctx + "base/affairs/deptTree";
|
||
var options = {
|
||
url: url,
|
||
data:{
|
||
type:'季度考核指标'
|
||
},
|
||
expandLevel: 2,
|
||
onClick : zOnClick
|
||
};
|
||
$.tree.init(options);
|
||
|
||
function zOnClick(event, treeId, treeNode) {
|
||
console.log(treeNode)
|
||
$("#deptId").val(treeNode.id);
|
||
$("#type").val(treeNode.type);
|
||
$("#parentId").val(treeNode.pId);
|
||
$.table.search();
|
||
}
|
||
}
|
||
|
||
$('#btnExpand').click(function() {
|
||
$._tree.expandAll(true);
|
||
$(this).hide();
|
||
$('#btnCollapse').show();
|
||
});
|
||
|
||
$('#btnCollapse').click(function() {
|
||
$._tree.expandAll(false);
|
||
$(this).hide();
|
||
$('#btnExpand').show();
|
||
});
|
||
$('#btnRefresh').click(function() {
|
||
queryDeptTree();
|
||
});
|
||
|
||
/* 用户管理-部门 */
|
||
function dept() {
|
||
var url = ctx + "base/dept";
|
||
$.modal.openTab("部门管理", url);
|
||
}
|
||
|
||
/* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
|
||
function resetPre() {
|
||
resetDate();
|
||
$("#formId")[0].reset();
|
||
$("#deptId").val("");
|
||
$("#parentId").val("");
|
||
$(".curSelectedNode").removeClass("curSelectedNode");
|
||
$.table.search();
|
||
}
|
||
</script>
|
||
</body>
|
||
</html> |