/*
*
*/
$(function (){
getRoomList();
formValidator();
//select2 多选
// $("#rid").select2({
// //minimumInputLength: 1,
// language: "zh-CN", //设置 提示语言
// maximumSelectionLength: 3, //设置最多可以选择多少项
// //width: "100%", //设置下拉框的宽度
// placeholder: "请选择",
// tags: true,
//
// });
$("#test-table").bootstrapTable('destroy');
$('#test-table').bootstrapTable({
method : 'GET', //默认是post,不允许对静态文件访问
url: "meeting/meetingList.action",
cache : false,
striped : true,// 隔行加亮
pagination : true, //开启分页功能 在表格底部显示分页工具栏
pageSize : 5, //默认每页条数
pageNumber : 1, //默认分页
pageList : [ 8, 10, 20, 50, 100],//分页数
// smartDisplay: false,
showColumns : true, //显示隐藏列
showRefresh : false, //显示刷新按钮
sortable: true, //是否启用排序
sortOrder: "asc", //排序方式
sortName : 'f_MeetingDateTime',
toolbar:"#toolbar",
singleselect : true,
minimumCountColumns: 2,// 设置最少显示列个数
clickToSelect: true, // 单击行即可以选中
// search : false,//显示搜素表单
silent : true, //刷新事件必须设置
sidePagination : "server", //表示服务端请求
columns : [ {
checkbox:true
} ,{
field : "f_MeetingNo",
title : "会议编号",
class : 'col-md-1',
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "f_MeetingName",
title : "会议名称",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "f_RoomName",
title : "会议室",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "f_MeetingDateTime",
title : "开始时间",
align : "center",
valign : "middle",
sortable : "true"//,
// formatter: function(value, row, index) {
// return timestampToTime(value);
// }
}, {
field : "f_MeetingEndDate",
title : "结束时间",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "f_SignStartTime",
title : "签到开始时间",
align : "center",
valign : "middle",
sortable : "true",
visible : false
}, {
field : "f_SignEndTime",
title : "签到结束时间",
align : "center",
valign : "middle",
sortable : "true",
visible : false
}, {
field : "f_Content",
title : "会议主题",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "f_Notes",
title : "备注",
align : "center",
valign : "middle",
visible : false,
sortable : "true"
}, {
field: 'operate',
title: '操作',
class : 'col-md-3',
align: 'center',
valign: 'middle',
formatter: operateFormatter,
}],
queryParamsType: "undefined",
queryParams: function queryParams(params) { //设置查询参数
var param = {
pageNumber: params.pageNumber,
pageSize: params.pageSize,
meetingNo:$("#meetingNo").val(),
meetingName:$("#meetingName").val(),
roomId:$("#roomId").val(),
MeetingBeginDate:$("#MeetingBeginDate").val(),
MeetingEndDate:$("#MeetingEndDate").val()
// searchText: params.searchText
};
return param;
},
formatLoadingMessage : function() {
return "请稍等,正在加载中...";
},
formatNoMatches : function() {
return '无符合条件的记录';
}
});
});
function operateFormatter(value, row, index) {
return [' ',
' ',
''
].join('');
}
/**
* 条件查询会议list
* @returns
*/
function getMeetingByCon(){
$("#test-table").bootstrapTable('refresh');
}
function timestampToTime(timestamp) {
var date = new Date(timestamp * 1);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
Y = date.getFullYear() + '-';
M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
D = date.getDate() + ' ';
h = date.getHours() + ':';
m = date.getMinutes() + ':';
s = date.getSeconds();
return Y+M+D+h+m+s;
}
//删除
function delMeeting(id){
if(confirm('您确定要删除这条数据吗?')){
$.ajax({
url:'meeting/delMeeting.action',
dataType:'json',
// contentType:'charset=utf-8',
type:'post',
data:{
mid:id
},
success:function(data){
if(data){
alert('删除成功!');
}else{
alert('删除失败!');
}
$("#test-table").bootstrapTable('refresh');
},
error:function(){
alert("请求失败!");
}
});
}else{
return false;
}
}
//修改
function upMeeting(){
var roomId=$("#f_RoomId1").val();
if(roomId==0){
alert('请选择会议地点');
return;
}
var t1=$("#f_MeetingDateTime1").val();
var t2=$("#f_MeetingEndDate1").val();
var t3=$("#f_SignStartTime1").val();
var t4=$("#f_SignEndTime1").val();
if(t1==null || t1=="" || t2==null || t2=="" || t3==null || t3=="" || t4==null || t4==""){
alert('会议时间不能为空');
return;
}
if(t1>t2){
alert('会议开始时间不能大于结束时间');
return;
}
if(t3>t4){
alert('会议签到时间不能大于结束时间');
return;
}
var status = false;
$.ajax({
url:'meeting/checkMeetingDate.action',
dataType:'json',
type:'post',
async: false,
data:$("#myform").serialize(),
success:function(data){
status = data;
},
error:function(){
alert("请求失败!");
}
});
if(status==false){
alert('会议时间已占用,请确认');
return;
}
var x=$("#info1").text();
if(x=='此名称可用'||x==""){
if($("#myform").data('bootstrapValidator').validate().isValid()){
$.ajax({
url:'meeting/upMeeting.action',
dataType:'json',
type:'post',
data:$("#myform").serialize(),
success:function(data){
if(data){
alert('修改成功!');
}else{
alert('修改失败!');
}
$("#test-table").bootstrapTable('refresh');
closeDlg();
},
error:function(){
alert("请求失败!");
}
});
}
}else{
alert("填写信息不合法!");
}
}
//修改 打开
function getValue(id){
var roomId;
$.ajax({
url:'meeting/getMeeting.action',
dataType:'json',
type:'post',
data:{
mid:id
},
success:function(data){
$("#f_MeetingNo1").val(id);
//$("#f_RoomNo1").val(data.meeting.f_RoomNo);
$("#f_MeetingName1").val(data.meeting.f_MeetingName);
roomId = data.meeting.f_RoomId;
// $("#f_RoomId1").val(data.meeting.f_RoomId);
$("#f_Content1").val(data.meeting.f_Content);
$("#f_MeetingDateTime1").val(data.meeting.f_MeetingDateTime);
$("#f_MeetingEndDate1").val(data.meeting.f_MeetingEndDate);
$("#f_SignStartTime1").val(data.meeting.f_SignStartTime);
$("#f_SignEndTime1").val(data.meeting.f_SignEndTime);
$("#f_Notes1").val(data.meeting.f_Notes);
},
error:function(){
alert("请求失败!");
}
});
$.ajax({
url:'meeting/meetingRoomList.action',
dataType:'json',
type:'post',
async: false,
data:{
pageNumber:1,
pageSize:1000
},
success:function(data){
$("#f_RoomId1").empty();
$("#f_RoomId1").append("");
$.each(data.rows,function(index,items){
if(this.f_RoomId==roomId){
$("#f_RoomId1").append("");
}else{
$("#f_RoomId1").append("");
}
});
},
error:function(){
alert("请求失败!");
}
});
$("#mydlg").modal('show');
}
//修改 验证会议室名称是否唯一
function checkMeetingNo1(){
var y=$("#f_MeetingNo1").val();
//var x=$("#f_MeetingNo1").val();
if(x!=""){
$.ajax({
url:'meeting/checkMeetingNo.action',
dataType:'json',
type:'post',
data:{
meetingNo:x,
mid:y
},
success:function(data){
$("#info1").text(data.msg);
},
error:function(){
alert("请求失败!");
}
});
}
}
//添加 验证会议室名称是否唯一
function checkMeetingNo(){
var x=$("#f_MeetingNo").val();
if(x!=""){
$.ajax({
url:'meeting/checkMeetingNo.action',
dataType:'json',
type:'post',
data:{
meetingNo:x
},
success:function(data){
$("#info").text(data.msg);
},
error:function(){
alert("请求失败!");
}
});
}
}
//添加会议室
function saveMeeting(){
var roomId=$("#f_RoomId").val();
if(roomId==0){
alert('请选择会议地点');
return;
}
var t1=$("#f_MeetingDateTime").val();
var t2=$("#f_MeetingEndDate").val();
var t3=$("#f_SignStartTime").val();
var t4=$("#f_SignEndTime").val();
if(t1==null || t1=="" || t2==null || t2=="" || t3==null || t3=="" || t4==null || t4==""){
alert('请输入会议时间');
return;
}
if(t1>t2){
alert('会议开始时间不能大于结束时间');
return;
}
if(t3>t4){
alert('会议签到时间不能大于结束时间');
return;
}
var status = false;
$.ajax({
url:'meeting/checkMeetingDate.action',
dataType:'json',
type:'post',
async: false,
data:$("#addForm").serialize(),
success:function(data){
status = data;
},
error:function(){
alert("请求失败!");
}
});
if(status==false){
alert('会议时间已占用,请确认');
return;
}
formValidator();
var x=$("#info").text();
if(x=="此名称可用" || x==null || x==""){
if($("#addForm").data('bootstrapValidator').validate().isValid()){
$.ajax({
url:'meeting/saveMeeting.action',
dataType:'json',
type:'post',
data:$("#addForm").serialize(),
success:function(data){
if(data){
alert('添加成功!');
$("input[type=reset]").trigger("click");
}else{
alert('添加失败!');
}
$("#test-table").bootstrapTable('refresh');
closeDlg();
},
error:function(){
alert("请求失败!");
}
});
}
}else{
alert("填写信息不合法!");
}
}
//打开 添加窗口
function addMeeting(){
$("#addDlg").modal('show');
}
/**
* 会议室列表
* @returns
*/
function getRoomList(){
$.ajax({
url:'meeting/meetingRoomList.action',
dataType:'json',
type:'post',
data:{
pageNumber:1,
pageSize:1000
},
success:function(data){
$("#roomId").empty();
$("#roomId").append("");
$.each(data.rows,function(){
$("#roomId").append("");
});
$("#f_RoomId").empty();
$("#f_RoomId").append("");
$.each(data.rows,function(){
$("#f_RoomId").append("");
});
},
error:function(){
alert("请求失败!");
}
});
}
//关闭
function closeDlg(){
$("#addDlg").modal('hide');
$("#mydlg").modal('hide');
$("#consumerDlg").modal('hide');
$("#info").text(null);
$("#info1").text(null);
$("input[type=reset]").trigger("click");
$('#myform').data('bootstrapValidator', null);
$('#addForm').data('bootstrapValidator', null);
$('#consumerform').data('bootstrapValidator', null);
formValidator();
}
//人员
function getConsumer(id){
$("#f_MeetingNo2").val(id);
$.ajax({
url:'meeting/getConsumerTree.action',
dataType:'json',
type:'post',
data:{rid:id},
success:function(data){
$('#tree').treeview({
data: data, // 数据源
showCheckbox: true, //是否显示复选框
selectable: false,
multiSelect: false, //多选
state: {
checked: true,
disabled: true,
expanded: true,
selected: true
},
onNodeChecked: function (event,node) {
// 父级节点被选中,那么子级节点都要选中
if (node.nodes != null) {
$.each(node.nodes, function(index, value) {
$('#tree').treeview('checkNode', value.nodeId, {
silent : true
});
});
} else {
// 子级节点选中的时候,要根据情况判断父节点是否要全部选中
// 父节点
var parentNode = $('#tree').treeview('getParent', node.nodeId);
var isAllchecked = $('#tree'); // 是否全部选中
// 当前子级节点的所有兄弟节点,也就是获取父下面的所有子
var siblings = $('#tree').treeview('getSiblings', node.nodeId);
for ( var i in siblings) {
// 有一个没选中,则不是全选
if (!siblings[i].state.checked) {
isAllchecked = false;
break;
}
}
// 全选,则打钩
if (isAllchecked) {
$('#tree').treeview('checkNode', parentNode.nodeId, {
silent : true
});
} else {// 非全选,则变红
$('#tree').treeview('checkNode', node.nodeId, {
silent : true
});
}
}
},
onNodeUnchecked : function(event, node) {
silentByChild = true;
// 选中的是父级节点
if (node.nodes != null) {
// 这里需要控制,判断是否是因为子级节点引起的父节点被取消选中
// 如果是,则只管取消父节点就行了
// 如果不是,则子节点需要被取消选中
// var silentByChild=false;
if (silentByChild) {
$.each(node.nodes, function(index, value) {
$('#tree').treeview('uncheckNode', value.nodeId, {
silent : true
});
});
}
} else {
}
},
onNodeSelected: function (event, data) {
}
});
},
error:function(){
alert("请求失败!");
}
});
$("#consumerDlg").modal('show');
}
//保存人员
function saveConsumer(){
var id=$("#f_MeetingNo2").val();
var ids=[];
var obj=$('#tree').treeview('getChecked');
$.each(obj,function(index,items){
ids.push(items.id);
});
$.ajax({
url:'meeting/saveMeetingConsumer.action',
dataType:'json',
type:'post',
traditional:true,
data:{
rid:id,
mid:ids
},
success:function(data){
if(data){
alert("保存成功!");
}else{
alert("保存失败!");
}
$("#test-table").bootstrapTable("refresh");
closeDlg();
},
error:function(){
alert("请求失败!");
}
});
}
function formValidator(){
$("#addForm").bootstrapValidator({
fields:{
f_MeetingName:{
validators:{
notEmpty:{
message:'会议名称不能为空'
},
stringLength:{
max:200,
message:'字符长度不能超过200个字符'
}
}
},
f_RoomId:{
validators:{
notEmpty:{
message:' 会议室不能为空'
}
}
}
}
});
$("#myform").bootstrapValidator({
fields:{
f_MeetingName:{
validators:{
notEmpty:{
message:'会议名称不能为空'
},
stringLength:{
max:200,
message:'字符长度不能超过200个字符'
}
}
},
f_RoomId:{
validators:{
notEmpty:{
message:'会议室不能为空'
}
}
}
}
});
}
///*以下代码是实现自动显示当前日期的功能函数*/
//function today(){
// var today=new Date();
// var h=today.getFullYear();
// var m=today.getMonth()+1;
// var d=today.getDate();
// var hh=today.getHours();
// var mm=today.getMinutes();
// var ss=today.getSeconds();
// m= m<10?"0"+m:m; // 这里判断月份是否<10,如果是在月份前面加'0'
// d= d<10?"0"+d:d; // 这里判断日期是否<10,如果是在日期前面加'0'
// hh = hh < 10 ? "0" + hh:hh;
// mm = mm < 10 ? "0" + mm:mm;
// ss = ss < 10 ? "0" + ss:ss;
// return h+"-"+m+"-"+d+" "+hh+":"+mm+":"+ss;
// return h+"-"+m+"-"+d;
//}
//document.getElementById("f_MeetingDateTime").value = today();//获取文本id并且传入当前日期