function pageInitWhite() {
var plNos = [];
var matchTypes = [];
var operateId;
var arrid = [];
var editarrid = [];
(function() {
var fun = {
init: function() {
//初始化下拉框
fun.initPark();
/*生效时间初始化*/
// $('#idcardTimeedit input').val(moment().subtract('days', 0).format('YYYY-MM-DD')+ ' - ' + moment().subtract('days', 30).format('YYYY-MM-DD'));
fn.getMatchType(fun.initMatchType);
fn.getChargeType(fun.initChargeType);
fun.searchParkAdd();
fun.searchParkEdit();
},
//新增搜索停车场
searchParkAdd:function(){
documentBindFunc.on('click','#whitelist-findPark',function () {
var val = $.trim($('#whitelistadd-findPark').val());
$('#whitelist-write_rule').addClass('display-none').text('');
areaTree.getNodesByParamFuzzy(val);
//plSearch();
});
},
//修改搜索停车场
searchParkEdit:function(){
documentBindFunc.on('click','#whitelistedit-findPark',function () {
var val = $.trim($('#whitelisteditEdit-findPark').val());
$('#whitelist-edit_rule').addClass('display-none').text('');
areaEditTree.getNodesByParamFuzzy(val);
//plSearch();
});
},
//初始化停车场下拉框
initPark: function () {
var data = fn.getParkLot();
$("#parkIds").empty();
var html = '';
var parkcom ='';
plNos = [];
for (var i = 0; i < data.length; i++) {
plNos.push(data[i].code);
html += "";
parkcom+="";
}
var plnosStr = JSON.stringify(plNos);
html = '' + html;
$("#parkIds").append(html);
$('#parkIds').selectpicker('render');
$('#parkIds').trigger('change');
fun.createTableData();
},
//初始化匹配规则
initMatchType: function (datas) {
$('#matchType').empty();
var html = '';
$.each(datas, function (index, data) {
html += "";
})
html = '' + html;
$('#matchType').append(html);
$('#matchType').selectpicker('refresh');
},
//初始化收费类型
initChargeType: function (datas) {
$('#payOrg').empty();
$('#payOrgedit').empty();
var html = '';
$.each(datas, function (index, data) {
html += "";
})
//html = '' + html;
$('#payOrg').append(html);
$('#payOrg').selectpicker('refresh');
$('#payOrgedit').append(html);
$('#payOrgedit').selectpicker('refresh');
},
//生成表格数据
createTableData: function() {
$('#recordtableWhite').bootstrapTable('destroy').bootstrapTable({
striped: true, //表格显示条纹
pagination: true, //启动分页
pageNumber: 1, //当前第几页
showColumns: false,
pageSize: 10, //每页显示的记录数
pageList: [10, 15, 20], //记录数可选列表
sidePagination: 'server', //表示服务端分页
queryParamsType: 'limit',
method: 'POST', //请求方法
// fixedColumns:true,
// fixedNumber:1,
// leftFixedColumns: true,
// leftFixedNumber: 2,
paginationPreText: '<',
paginationNextText: '>',
ajax: tableLoadRequest, //自定义ajax加载数据
uniqueId: 'id',
columns: [
{
field: 'whiteRNo',
title: '规则编码',
width: '5%',
align: 'left',
formatter:commonObj.replacenull
},
{
field: 'whiteRName',
title: '规则名称',
width: '10%',
align: 'left',
formatter:commonObj.replacenull
},
{
field: 'matchType',
title: '匹配类型',
width: '5%',
align: 'left',
formatter: fun.matchTypeFormatter
},
{
field: 'chargeType',
title: '收费类型',
width: '8%',
align: 'left',
formatter: fun.chargeTypeFormatter
},
{
field: 'carNum',
title: '车牌',
width: '10%',
align: 'left',
formatter:commonObj.replacenull
},
{
field: 'whiteRState',
title: '状态',
width: '8%',
align: 'left',
formatter: fun.whiteRStateFormatter
},
{
field: 'createDate',
title: '创建时间',
width: '10%',
align: 'left',
formatter:commonObj.timeOneFormatter
},
// {
// field: 'id',
// title: '主键',
// align: 'center'
// },
{
field: 'oper',
title: '操作',
width: '15%',
align: 'left',
formatter: function(value, row, index) {
var html = '';
html += "详情 修改删除";
return html;
}
},
]
});
},
matchTypeFormatter:function(value){
var result="";
if(value===null||value===undefined||value===''){
value = '-'
}
switch (value) {
case 1:
result = '前置匹配';
break;
case 2:
result = '后置匹配';
break;
case 3:
result = '完全匹配';
break;
default:
result = '未知';
}
return result;
},
chargeTypeFormatter:function(value){
var result="";
if(value===null||value===undefined||value===''){
value = '-'
}
switch (value) {
case 1:
result = '免费';
break;
case 2:
result = '每天只收一次';
break;
case 3:
result = '运营新能源车折扣';
break;
default:
result = '未知';
}
return result;
},
whiteRStateFormatter:function(value){
var result="";
if(value===null||value===undefined||value===''){
value = '-'
}
switch (value) {
case 1:
result = '生效';
break;
case 0:
result = '失效';
break;
default:
result = '未知';
}
return result;
},
/*获取查询参数*/
getQueryParam: function() {
//白名单规则名称
var whiteRName = $("#whiteRName").val();
/*匹配类型*/
var matchType = $("#matchType").val();
//停车场
var plnos = JSON.parse($("#parkIds").val());
/*车牌号*/
var carNum = $('#carNum').val();
carNum = carNum == null || carNum.length == 0 ? null : carNum.trim();
var req = {
plNos: plnos,
whiteRName: whiteRName,
matchType: matchType,
carNum: carNum
};
console.log(req);
return req;
},
strFormatter:function(value){
if(value===null||value===undefined||value===''){
value = '-'
}
return value+"";
},
};
//初始执行
fun.init();
documentBindFunc.on('click', '#queryBtn', function() {
//fun.createTableData();
$('#recordtableWhite').bootstrapTable('refresh');
});
// 添加弹窗
documentBindFunc.on('click', '#whitelist-addBtn', function() {
//初始化
$("#whitelistadd-findPark").val('');
$("#whitelistadd").val("");
$('#rulename_inp').val('');//规则名称
$("#payOrg").html($("#payOrg").html());
$("#payOrg").selectpicker("refresh");//收费类型初始化
$('#carlice-inp').val('');//车牌号初始化
$('#carowners').val('');//车主初始化
$('#match-type0').parent().addClass('checked');//匹配类型初始化
$('#match-type0')[0].checked=true;
$('#match-type1').parent().removeClass('checked');//匹配类型初始化
$('#match-type2').parent().removeClass('checked');//匹配类型初始化
$('#manSex0').parent().addClass('checked');//性别初始化
$('#manSex0')[0].checked=true;//性别初始化
$('#manSex1').parent().removeClass('checked');//性别初始化
//$('#saletrue0').parent().addClass('checked');//是否生效初始化
//$('#saletrue0')[0].checked=true;//是否生效初始化
//$('#saletrue1').parent().removeClass('checked');//是否生效初始化
/*生效时间初始化*/
$('#idcardTime input').val(moment().subtract('days', 0).format('YYYY-MM-DD')+ ' - ' + moment().subtract('days', -30).format('YYYY-MM-DD'));
$('#idcardTime').daterangepicker({
startDate: moment().subtract('days', 0),
endDate: moment().subtract('days', -30),
opens: 'right', //日期选择框的弹出位置
locale: {
applyLabel: '确定',
cancelLabel: '取消',
customRangeLabel: '自定义',
daysOfWeek: ['日', '一', '二', '三', '四', '五', '六'],
monthNames: ['一月', '二月', '三月', '四月', '五月', '六月',
'七月', '八月', '九月', '十月', '十一月', '十二月'],
},
},
function (start, end) {
$('#idcardTime input').val(start.format('YYYY-MM-DD') + ' - ' + end.format('YYYY-MM-DD'));
}
);
// $('#idcard').val('');//车主身份证初始化
$('#car-ipo').val('');//车主电话初始化
$('#caraddress').val('');//车主地址初始化
$('#car-des').val('');//车主描述初始化
arrid = [];
$('#whitelist-parkCheck').empty();
areaTree.initTree(); //初始化区域tree
$('#choosePark').find('span').removeClass('checked');//停车场ajax初始化
$('#whitelist-write_rule').addClass('display-none').text('');
$('#whitelist_addmodel').modal('show');
});
// 修改弹窗
documentBindFunc.on('click', '.reviseMon', function() {
//初始化
$("#whitelisteditEdit-findPark").val("");
$('#rulename_inpedit').val('');//规则名称
$('#carlice-inpedit').val('');//车牌号初始化
$('#carownersedit').val('');//车主初始化
$('#match-typeedit0').parent().removeClass('checked');//匹配类型初始化
$('#match-typeedit1').parent().removeClass('checked');//匹配类型初始化
$('#match-typeedit2').parent().removeClass('checked');//匹配类型初始化
$('#manSexedit0').parent().removeClass('checked');//性别初始化
$('#manSexedit1').parent().removeClass('checked');//性别初始化
//$('#saletrueedit0').parent().removeClass('checked');//是否生效初始化
//$('#saletrueedit1').parent().removeClass('checked');//是否生效初始化
$('#idcardTimeedit input').val('');//车主身份证初始化
$('#car-ipoedit').val('');//车主电话初始化
$('#caraddressedit').val('');//车主地址初始化
$('#car-desedit').val('');//车主描述初始化
$("#whitelist-edit-checked").empty();
editarrid = [];
$('#whitelist-edit-checked').empty();
$('#whitelist-edit_rule').addClass('display-none').text('');
areaEditTree.initTree(); //初始化区域tree
var id =$(this).attr('value');
operateId = id;
editDialog(id);
});
//删除弹窗
documentBindFunc.on('click', '.delList', function() {
operateId =$(this).attr('value');
$('#whitelist_deletemodel').modal('show');
});
//确定删除
documentBindFunc.on('click', '#whitelist-delete-submit', function() {
deleteCommit(operateId);
});
//详情弹窗
documentBindFunc.on('click', '.readMsg', function() {
var id =$(this).attr('value');
whiteListDetail(id);
});
//添加弹窗的提交按钮
documentBindFunc.on('click', '#whitelist-write-submit',function () {
addCommit();
});
//修改弹窗的提交按钮
documentBindFunc.on('click', '#whitelist-edit-submit',function () {
editCommit(operateId);
});
//添加匹配类型下拉框改变
documentBindFunc.on('change', '#payOrg',function () {
var chargeType=$('#payOrg').val();
if("2" == chargeType){
$('#match-type0').parent().removeClass('checked');//匹配类型初始化
$('#match-type1').parent().removeClass('checked');//匹配类型初始化
$('#match-type2').parent().addClass('checked');//匹配类型初始化
$('#match-type2')[0].checked=true;
}
});
//修改匹配类型下拉框改变
documentBindFunc.on('change', '#payOrgedit',function () {
var chargeType=$('#payOrgedit').val();
if("2" == chargeType){
$('#match-typeedit0').parent().removeClass('checked');//匹配类型初始化
$('#match-typeedit1').parent().removeClass('checked');//匹配类型初始化
$('#match-typeedit2').parent().addClass('checked');//匹配类型初始化
$('#match-typeedit2')[0].checked=true;
}
});
function deleteCommit(id){
var req = {
sysCode: sysComm.sysCode,
id: id
};
sysAjax({
method: 'POST',
url: dataUrl.util.deleteWhiteRuleById(),
data: JSON.stringify(req),
dataType: 'json',
async: false,
success: function (res) {
if (res.code == '8888') {
if (res.data) {
//关闭删除页面
$('#whitelist_deletemodel').modal('hide');
swal({title:"提示",text:"删除成功!",type:"success",timer:3000,allowOutsideClick:true});
//初始化table
fun.createTableData();
}
else {
console.log(res.msg);
return false;
}
} else {
console.log(res.msg);
return;
}
}
});
}
function whiteListDetail(id){
if(id==undefined||id==null||id==''){
return;
}
var divs = $('#whitelistRow-cont .ITD-form-padleft5-read');
//先清空
divs.text('');
$('.whitelist-width70').eq(0).text('');
var req = {
sysCode: sysComm.sysCode,
id: id
};
var opt = {
method: 'post',
url: dataUrl.util.queryWhiteRuleById(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
if (res.code == '8888') {
var data = res.data;
console.log()
divs.eq(0).text(fun.strFormatter(data.whiteRName));//规则名称
divs.eq(6).text(fun.chargeTypeFormatter(data.chargeType));//收费类型
divs.eq(1).text(fun.strFormatter(data.carNum));//车牌号
divs.eq(7).text(fun.matchTypeFormatter(data.matchType));//匹配类型
divs.eq(2).text(fun.whiteRStateFormatter(data.whiteRState));//是否生效
divs.eq(8).text(fun.strFormatter(data.carOwner));//车主
divs.eq(3).text(commonObj.sexFormatter(data.sex));//性别
divs.eq(9).text(commonObj.timeOneFormatter(data.effDate)+' - '+commonObj.timeOneFormatter(data.expDate));//车主身份证号
divs.eq(4).text(fun.strFormatter(data.phone));//车主联系电话
divs.eq(10).text(fun.strFormatter(data.address));//车主地址
divs.eq(5).text(fun.strFormatter(data.remark));//描述
var plNames = "";
$.each(data.whiteParkLotDTOs, function(index,item) {
plNames+=(item.plName);
plNames+="、";
});
$('.whitelist-width70').eq(0).text(plNames.substr(0,plNames.length-1));//适用停车场
$('.whitelist-width70').eq(0).attr('title',plNames.substr(0,plNames.length-1));
$('#whitelist_Readmodel').modal('show');
}
}
};
sysAjax(opt);
}
//添加提交事件
function addCommit(){
$('#whitelist-write_rule').addClass('display-none');
var parkArr = arrid;//存储停车场id
var rulename = $.trim($('#rulename_inp').val());//规则名称
var chargeType=$('#payOrg').val();
var carlice = $.trim($('#carlice-inp').val());//车牌号
var carowners = $.trim($('#carowners').val());//车主
var matchType = $("input[name='sameStyl-ad']:checked").val();//匹配类型
var sex = $("input[name='sex-ad']:checked").val();//性别
var whiteRState = 1;//$("input[name='saletrue-ad']:checked").val()//是否生效
var carpho = $.trim($('#car-ipo').val());//联系电话
var address = $.trim($('#caraddress').val());//车主地址
var remark = $.trim($('#car-des').val());//描述
/*时间*/
var dateEntranceRange = $('#idcardTime input').val();
if (null != dateEntranceRange && dateEntranceRange.trim().length > 0) {
var times = dateEntranceRange.split(' - ');
seffDate = times[0]+ ' 00:00:00';
effDate=new Date(Date.parse(seffDate.replace(/-/g, "/")))
dexpDate = times[1]+ ' 23:59:59';
expDate=new Date(Date.parse(dexpDate.replace(/-/g, "/")))
}
//把别的值也获取到,比如类型,姓名等等,到时候放到ajax
if(rulename){//规则名称
var returnParkName="";
var plNos = checkWhiteUnique(chargeType,carlice,matchType,parkArr);
if(plNos != null && plNos !="" && plNos !=undefined){
$.each(plNos,function(index,row){
var parkName="";
parkName = $("#whitelist-parkCheck").find("span[data-id='"+row+"']").text();
if(parkName != null && parkName!= "" && parkName !=undefined){
returnParkName=parkName
}
return false;
});
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:该车牌在停车场['+returnParkName+']已经有相同的规则');
return false;
}
if(carlice){//车牌号
if("2" ==chargeType){
var flg = (!/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4,5}[A-Z0-9挂学警港澳]{1}$/.test(carlice)||carlice.length<7);
if(flg){
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:请输入完整车牌号');
return false;
}
if("3" !=matchType){
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:"每天只收一次"只能完全匹配');
return false;
}
}
// if(idcard&&!/^[1-9]{1}[0-9]{14}$|^[1-9]{1}[0-9]{16}([0-9]|[xX])$/.test(idcard)){//身份证
// $('#whitelist-write_rule').removeClass('display-none').text('错误提示:请输入正确身份证')
// }
else{
if(carpho&&!/^1[3|4|5|7|8]{1}\d{9}$/.test(carpho)&&carpho.length!=11){//联系方式
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:请输入正确联系方式')
}else {
/*$('#choosePark input').each(function () {//是否有停车场
if($(this).parent().hasClass('checked')){
parkArr.push($(this).attr('data-id'))
}
});*/
if(parkArr.length==0){
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:请至少选择一个停车场')
}else{
$('#whitelist-write_rule').addClass('display-none').text('');
//提交
//alert("berthNo:"+berthNo+"parkType:"+parkType+"checkedAreaId"+JSON.stringify(checkedAreaId));
var req = {
whiteRName:rulename,
chargeType:chargeType,
carNum:carlice,
carOwner:carowners,
matchType:matchType,
sex:sex,
whiteRState:whiteRState,
//cardId:idcard,
effDate:effDate,
expDate:expDate,
phone:carpho,
address:address,
remark:remark,
plNos:parkArr,
sysCode: sysComm.sysCode,
};
sysAjax({
method: 'POST',
url: dataUrl.util.addWhiteRuleById(),
data: JSON.stringify(req),
dataType: 'json',
async: false,
success: function (res) {
if (res.code == '8888') {
if (res.data) {
//关闭添加页面
$("#whitelist_addmodel").css('display', 'none');
$('#whitelist_addmodel').modal('hide');
swal({title:"提示",text:"保存成功",type:"success",timer:3000,allowOutsideClick:true});
//初始化table
fun.createTableData();
}
else {
console.log(res.msg);
return false;
}
} else {
console.log(res.msg);
return;
}
}
});
}
}
}
}else{
if("2" ==chargeType){
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:请输入完整车牌号');
}else{
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:请输入车牌号匹配值');
}
}
}else{
$('#whitelist-write_rule').removeClass('display-none').text('错误提示:请输入卡规则名称')
}
};
//校验唯一性 通过停车场编码+收费类型+车牌号+匹配类型
function checkWhiteUnique(chargeType,carlice,matchType,parkArr){
var plNoDate = "";
var req = {
chargeType:chargeType,
carNum:carlice,
matchType:matchType,
plNos:parkArr,
sysCode: sysComm.sysCode,
};
sysAjax({
method: 'POST',
url: dataUrl.util.checkWhiteUnique(),
data: JSON.stringify(req),
dataType: 'json',
async: false,
success: function (res) {
if (res.code == '8888') {
plNoDate=res.data;
} else {
console.log(res.msg);
return;
}
}
});
return plNoDate;
}
//编辑弹窗
function editDialog(id){
if(id==undefined||id==null||id==''){
return;
}
var req = {
sysCode: sysComm.sysCode,
id: id
};
var opt = {
method: 'post',
url: dataUrl.util.queryWhiteRuleById(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
if (res.code == '8888') {
var data = res.data;
$("#payOrgeditCheck").val(""); //收费类型
$("#carlice-inpeditCheck").val(""); //停车场车牌
$("#sameStyl-edCheck").val(""); //匹配类型
$('#rulename_inpedit').val(fun.strFormatter(data.whiteRName));//规则名称
$('#ruleno_inpedit').val(fun.strFormatter(data.whiteRNo));//规则编码
$('#carlice-inpedit').val(fun.strFormatter(data.carNum));//车牌号初始化
$('#carownersedit').val(fun.strFormatter(data.carOwner));//车主初始化
$('#payOrgedit').selectpicker('val',data.chargeType);
$("#payOrgeditCheck").val(data.chargeType); //收费类型
$("#carlice-inpeditCheck").val(fun.strFormatter(data.carNum)); //停车场车牌
$("#sameStyl-edCheck").val(data.chargeType); //匹配类型
switch (data.matchType){
case 1:
$('#match-typeedit0').parent().addClass('checked');//前置
$('#match-typeedit0')[0].checked=true;
break;
case 2:
$('#match-typeedit1').parent().addClass('checked');//匹配类型-后置
$('#match-typeedit1')[0].checked=true;//匹配类型-后置
break;
case 3:
$('#match-typeedit2').parent().addClass('checked');//匹配类型-完全
$('#match-typeedit2')[0].checked=true;//匹配类型-完全
break;
default:
break;
}
switch (data.sex){
case 1:
$('#manSexedit0').parent().addClass('checked');//性别-男
$('#manSexedit0')[0].checked=true;//性别-男
break;
case 2:
$('#manSexedit1').parent().addClass('checked');//性别女
$('#manSexedit1')[0].checked=true;//性别女
break;
default:
break;
}
/**switch (data.whiteRState){
case 1:
$('#saletrueedit0').parent().addClass('checked');//生效
$('#saletrueedit0')[0].checked=true;//生效
break;
case 0:
$('#saletrueedit1').parent().addClass('checked');//失效
$('#saletrueedit1')[0].checked=true;//失效
break;
default:
break;
}*/
$('#idcardTimeedit input').val(commonObj.timeOneFormatter(data.effDate)+' - '+commonObj.timeOneFormatter(data.expDate));//修改初始化
$('#idcardTimeedit input').daterangepicker({
startDate: commonObj.timeOneFormatter(data.effDate),
endDate:commonObj.timeOneFormatter(data.expDate),
opens: 'right', //日期选择框的弹出位置
locale: {
applyLabel: '确定',
cancelLabel: '取消',
customRangeLabel: '自定义',
daysOfWeek: ['日', '一', '二', '三', '四', '五', '六'],
monthNames: ['一月', '二月', '三月', '四月', '五月', '六月',
'七月', '八月', '九月', '十月', '十一月', '十二月'],
},
},
function (start, end) {
$('#idcardTimeedit input').val(start.format('YYYY-MM-DD') + ' - ' + end.format('YYYY-MM-DD'));
}
);
$('#car-ipoedit').val(fun.strFormatter(data.phone));//车主电话初始化
$('#caraddressedit').val(fun.strFormatter(data.address));//车主地址初始化
$('#car-desedit').val(fun.strFormatter(data.remark));//车主描述初始化
//$('#chooseParkedit').find('span').removeClass('checked');//选择停车场
var temp =$('#chooseParkedit span label');
var plNoNodes=[];
$.each(data.whiteParkLotDTOs, function(index,item) {
plNoNodes.push(item.plNo);
editarrid.push(item.plNo);
if(plNos.indexOf(item.plNo)==-1){
$('#whitelist-edit-checked').append('' + item.plName + '');
}
else{
$('#whitelist-edit-checked').append('' + item.plName + '');
}
});
areaEditTree.updateNodesForCheckedEdit(plNoNodes);
$('#whitelist_editmodel').modal('show');
}
}
};
sysAjax(opt);
};
//添加提交事件(编辑)
function editCommit(operateId){
var parkArr = editarrid;//存储停车场id
var rulename = $.trim($('#rulename_inpedit').val());//规则名称
var ruleno = $.trim($('#ruleno_inpedit').val());
var carlice = $.trim($('#carlice-inpedit').val());//车牌号
// var idcardtimeedit = $.trim($('#idcardTimeedit input').val());//时间
/*时间*/
var dateEntranceRange = $('#idcardTimeedit input').val();
if (null != dateEntranceRange && dateEntranceRange.trim().length > 0) {
var times = dateEntranceRange.split(' - ');
seffDate = times[0]+ ' 00:00:00';
effDate=new Date(Date.parse(seffDate.replace(/-/g, "/")))
dexpDate = times[1]+ ' 23:59:59';
expDate=new Date(Date.parse(dexpDate.replace(/-/g, "/")))
}
var carpho = $.trim($('#car-ipoedit').val());//联系电话
var chargeType=$('#payOrgedit').val();
var carowners = $.trim($('#carownersedit').val());//车主
var matchType = $("input[name='sameStyl-ed']:checked").val();//匹配类型
var sex = $("input[name='sex-ed']:checked").val();//性别
var whiteRState = 1;//$("input[name='saletrue-ed']:checked").val()//是否生效
var address = $.trim($('#caraddressedit').val());//车主地址
var remark = $.trim($('#car-desedit').val());//描述
//把别的值也获取到,比如类型,姓名等等,到时候放到ajax
if(rulename){//规则名称
var returnParkName="";
var chargeTypeCheck = $("#payOrgeditCheck").val(); //收费类型
var carNumCheck =$("#carlice-inpeditCheck").val(); //停车场车牌
var matchTypeCheck = $("#sameStyl-edCheck").val(); //匹配类型
if(chargeTypeCheck != chargeType && carNumCheck !=carlice && matchType !=matchTypeCheck){
var plNos = checkWhiteUnique(chargeType,carlice,matchType,parkArr);
if(plNos != null && plNos !="" && plNos !=undefined){
$.each(plNos,function(index,row){
var parkName="";
parkName = $("#whitelist-edit-checked").find("span[data-id='"+row+"']").text();
if(parkName != null && parkName!= "" && parkName !=undefined){
returnParkName=parkName
}
return false;
});
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:该车牌在停车场['+returnParkName+']已经有相同的规则');
return false;
}
}
if(carlice){//车牌号
if("2" ==chargeType){
var flg = (!/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4,5}[A-Z0-9挂学警港澳]{1}$/.test(carlice)||carlice.length<7);
if(flg){
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:请输入完整车牌号');
return false;
}
if("3" !=matchType){
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:"每天只收一次"只能完全匹配');
return false;
}
}
// if(idcard&&!/^[1-9]{1}[0-9]{14}$|^[1-9]{1}[0-9]{16}([0-9]|[xX])$/.test(idcard)){//身份证
// $('#whitelist-edit_rule').removeClass('display-none').text('错误提示:请输入正确身份证')
// }
else{
if(carpho&&!/^1[3|4|5|7|8]{1}\d{9}$/.test(carpho)&&carpho.length!=11){//联系方式
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:请输入正确联系方式')
}else {
/*$('#chooseParkedit input').each(function () {//是否有停车场
if($(this).parent().hasClass('checked')){
parkArr.push($(this).attr('data-id'))
}
});*/
if(parkArr.length==0){
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:请至少选择一个停车场')
}else{
$('#whitelist-edit_rule').addClass('display-none').text('');
//提交
//alert("berthNo:"+berthNo+"parkType:"+parkType+"checkedAreaId"+JSON.stringify(checkedAreaId));
var req = {
id:operateId,
whiteRName:rulename,
whiteRNo:ruleno,
chargeType:chargeType,
carNum:carlice,
carOwner:carowners,
matchType:matchType,
sex:sex,
whiteRState:whiteRState,
effDate:effDate,
expDate:expDate,
phone:carpho,
address:address,
remark:remark,
plNos:parkArr,
sysCode: sysComm.sysCode,
};
sysAjax({
method: 'POST',
url: dataUrl.util.updateWhiteRuleById(),
data: JSON.stringify(req),
dataType: 'json',
async: false,
success: function (res) {
if (res.code == '8888') {
if (res.data) {
//关闭修改页面
$("#whitelist_editmodel").css('display', 'none');
$('#whitelist_editmodel').modal('hide');
swal({title:"提示",text:"保存成功",type:"success",timer:3000,allowOutsideClick:true});
//初始化table
fun.createTableData();
}
else {
console.log(res.msg);
return false;
}
} else {
console.log(res.msg);
return;
}
}
});
}
}
}
}else{
if("2" ==chargeType){
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:请输入完整车牌号');
}else{
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:请输入车牌号匹配值');
}
}
}else{
$('#whitelist-edit_rule').removeClass('display-none').text('错误提示:请输入卡规则名称')
}
};
/**
* 自定义table AJAX请求
* @param {Object} params
*/
function tableLoadRequest(params) {
var req = fun.getQueryParam();
//设置请求参数
var pageNum = (params.data.offset / params.data.limit) + 1;
//条件查询
req.baseRequest = {
pageNum: pageNum,
pageSize: params.data.limit
};
req.sysCode = sysComm.sysCode;
var opt = {
method: 'post',
url: dataUrl.util.queryWhitelistRuleForPage(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function(res) {
console.log(res);
if(res.code == '8888') {
params.success(res.data);
}
}
};
sysAjax(opt);
}
})
();
//新增
var areaTree = {
//初始化树
initTree: function() {
$.fn.zTree.init($("#user_org_tree"), areaTree.setting, areaTree.getTreeData());
//展开全部
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
treeObj.expandAll(false);
areaTree.selectedNodes(0);
},
setting: {
view: {
selectedMulti: true //静止多选
},
check: {
enable: true, //显示多选框
chkStyle: "checkbox",
// chkStyle: "radio",
radioType: "all"
},
data: {
simpleData: {
enable: true, //使用简单模式加载
idKey: "id",
pIdKey: "pId",
rootPId: 0
}
},
callback: {
onCheck: zTreeOnCheck
},
edit: {
enable: false
}
},
getNodesByParamFuzzyAll:function(){
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var nodes = treeObj.getNodes();
for(var i = 0;i0) {
for(var i=0;i 0) {
treeObj.expandNode(nodes[0], true, false, true);
}
},
//添加节点
addNodes: function(newNodes) {
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
newNodes = treeObj.addNodes(null, newNodes);
},
//勾选 或 取消勾选 全部节点
checkAllNodes: function(checked) {
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
treeObj.checkAllNodes(checked);
},
//更新节点
updateNodes: function(treeNode, checkTypeFlag) {
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
treeObj.updateNode(treeNode);
},
//根据id集合更新节点变为选中
updateNodesForChecked: function(ids) {
var nodes = areaTree.getNodesByIds(ids);
for(var i = 0; i < ids.length; i++) {
var node = nodes[i];
if(node == null) {
continue;
}
node.checked = true;
areaTree.updateNodes(node);
}
},
//删除节点
removeNode: function(id) {
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var treeNode = areaTree.getNodeById(id);
treeObj.removeNode(treeNode);
},
//通过id获取某个节点
getNodeById: function(id) {
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var node = treeObj.getNodeByParam("id", id, null);
return node;
},
//通过id集合获取节点集合
getNodesByIds: function(ids) {
var nodes = [];
for(var i = 0; i < ids.length; i++) {
nodes[i] = areaTree.getNodeById(ids[i]);
}
return nodes;
},
//根据id取消选/选中节点
updateNodesForNotChecked: function(id,checked) {
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var node = treeObj.getNodeByParam("id", id, null);
node.checked = checked;
treeObj.updateNode(node);
},
//获取输入框被勾选 或 未勾选的节点ID集合
getCheckedNodesId: function(checked) {
var ids = [];
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var nodes = treeObj.getCheckedNodes(true);
for(var i = 0; i < nodes.length; i++) {
ids[i] = nodes[i].id
}
return ids;
},
//获取输入框被勾选 或 未勾选的块节点ID集合
getCheckedNodesIdForArea: function(checked) {
var ids = [];
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var nodes = treeObj.getCheckedNodes(checked);
index = 0;
for(var i = 0; i < nodes.length; i++) {
if(null != nodes[i].areaType && "70" == nodes[i].areaType) {
ids[index++] = {
areaId: nodes[i].id,
areaType: nodes[i].areaType,
plNo: nodes[i].pId,
orgAreaType: 1
};
}
}
return ids;
},
//获取输入框被勾选 或 未勾选的节点name集合
getCheckedNodesName: function(checked) {
var names = "";
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var nodes = treeObj.getCheckedNodes(true);
for(var i = 0; i < nodes.length; i++) {
names = names + "," + nodes[i].name;
}
return names;
},
//获取选中的节点集合
getSelectedNodes: function() {
var treeObj = $.fn.zTree.getZTreeObj("user_org_tree");
var nodes = treeObj.getSelectedNodes();
return nodes;
},
//获取树
getTreeData: function() {
var sysCode = sessionStorage.getItem("sysCode");
var zNodes = [];
sysAjax({
method: 'POST',
url: dataUrl.util.vipCardSelectParkTree(),
//data: JSON.stringify(req),
dataType: 'json',
async: false,
success: function(res) {
if(isError(res)) {
return false;
}
//console.log("res.data="+res.data);
$.each(res.data, function(index, rows) {
var data = "";
if(rows.level == "1"){//服务点
data={id:rows.id,pId:rows.parentId,name:rows.treeName,level:rows.level,chkDisabled:true};
}else{
data={id:rows.id,pId:rows.parentId,name:rows.treeName,level:rows.level};
}
zNodes[index] = data;
});
}
});
//增加一个公告根节点
//zNodes[zNodes.length] = {name:'根节点',id:0,checked:true};
return zNodes;
}
};
//编辑
var areaEditTree = {
//初始化树
initTree: function() {
$.fn.zTree.init($("#userEdit_org_tree"), areaEditTree.setting, areaEditTree.getTreeData());
//展开全部
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
treeObj.expandAll(false);
areaEditTree.selectedNodes(0);
},
setting: {
view: {
selectedMulti: true //静止多选
},
check: {
enable: true, //显示多选框
chkStyle: "checkbox",
// chkStyle: "radio",
radioType: "all"
},
data: {
simpleData: {
enable: true, //使用简单模式加载
idKey: "id",
pIdKey: "pId",
rootPId: 0
}
},
callback: {
onCheck: zTreeOnCheck
},
edit: {
enable: false
}
},
getNodesByParamFuzzyAll:function(){
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var nodes = treeObj.getNodes();
for(var i = 0;i0) {
for(var i=0;i 0) {
treeObj.expandNode(nodes[0], true, false, true);
}
},
//添加节点
addNodes: function(newNodes) {
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
newNodes = treeObj.addNodes(null, newNodes);
},
//勾选 或 取消勾选 全部节点
checkAllNodes: function(checked) {
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
treeObj.checkAllNodes(checked);
},
//更新节点
updateNodes: function(treeNode, checkTypeFlag) {
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
treeObj.updateNode(treeNode);
},
//根据id取消选/选中节点
updateNodesForNotChecked: function(id,checked) {
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var node = treeObj.getNodeByParam("id", id, null);
node.checked = checked;
treeObj.updateNode(node);
},
//根据id集合更新节点变为选中
updateNodesForCheckedEdit: function(ids) {
var nodes = areaEditTree.getNodesByIds(ids);
for(var i = 0; i < ids.length; i++) {
var node = nodes[i];
if(node == null) {
continue;
}
node.checked = true;
areaEditTree.updateNodes(node);
}
},
//删除节点
removeNode: function(id) {
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var treeNode = areaEditTree.getNodeById(id);
treeObj.removeNode(treeNode);
},
//通过id获取某个节点
getNodeById: function(id) {
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var node = treeObj.getNodeByParam("id", id, null);
return node;
},
//通过id集合获取节点集合
getNodesByIds: function(ids) {
var nodes = [];
for(var i = 0; i < ids.length; i++) {
nodes[i] = areaEditTree.getNodeById(ids[i]);
}
return nodes;
},
//获取输入框被勾选 或 未勾选的节点ID集合
getCheckedNodesId: function(checked) {
var ids = [];
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var nodes = treeObj.getCheckedNodes(true);
for(var i = 0; i < nodes.length; i++) {
ids[i] = nodes[i].id
}
return ids;
},
//获取输入框被勾选 或 未勾选的块节点ID集合
getCheckedNodesIdForArea: function(checked) {
var ids = [];
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var nodes = treeObj.getCheckedNodes(checked);
index = 0;
for(var i = 0; i < nodes.length; i++) {
if(null != nodes[i].areaType && "70" == nodes[i].areaType) {
ids[index++] = {
areaId: nodes[i].id,
areaType: nodes[i].areaType,
plNo: nodes[i].pId,
orgAreaType: 1
};
}
}
return ids;
},
//获取输入框被勾选 或 未勾选的节点name集合
getCheckedNodesName: function(checked) {
var names = "";
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var nodes = treeObj.getCheckedNodes(true);
for(var i = 0; i < nodes.length; i++) {
names = names + "," + nodes[i].name;
}
return names;
},
//获取选中的节点集合
getSelectedNodes: function() {
var treeObj = $.fn.zTree.getZTreeObj("userEdit_org_tree");
var nodes = treeObj.getSelectedNodes();
return nodes;
},
//获取树
getTreeData: function() {
var sysCode = sessionStorage.getItem("sysCode");
var zNodes = [];
sysAjax({
method: 'POST',
url: dataUrl.util.vipCardSelectParkTree(),
//data: JSON.stringify(req),
dataType: 'json',
async: false,
success: function(res) {
if(isError(res)) {
return false;
}
// console.log("res.data="+res.data);
$.each(res.data, function(index, rows) {
var data = "";
if(rows.level == "1"){//服务点
data={id:rows.id,pId:rows.parentId,name:rows.treeName,level:rows.level,chkDisabled:true};
}else{
data={id:rows.id,pId:rows.parentId,name:rows.treeName,level:rows.level};
}
zNodes[index] = data;
});
}
});
//增加一个公告根节点
//zNodes[zNodes.length] = {name:'根节点',id:0,checked:true};
return zNodes;
}
};
/**
* 处理错误信息
* @param {Object} res
*/
function isError(res){
if(res == null || res == undefined){
return true;
}
if(res.code!='8888'){
alert('树失败')
return true;
}else{
return false;
}
}
Array.prototype.remove = function(val) {
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
};
/**
* 左侧单选按钮点击选中右侧.
* @param {Object} event
* @param {Object} treeId
* @param {Object} treeNode
*/
function zTreeOnCheck (event, treeId, treeNode) {
if($("#whitelist_editmodel").css("display")=='none' ){
console.log('添加页面的' + treeNode.id + ", " + treeNode.name + "," + treeNode.checked);
if(treeNode.checked === true){
arrid.push(treeNode.id);
console.log(arrid)
$('#whitelist-parkCheck').append(''+treeNode.name+'')
}else{
arrid.remove(treeNode.id);
$('.whitelist-parkCheck'+treeNode.id).remove();
};
}else{
console.log('编辑页面的' + treeNode.id + ", " + treeNode.name + "," + treeNode.checked);
if (treeNode.checked === true) {
//还需要判断下 editarrid 是否存在这个treeNode.id 如果存在 就不添加了。
if($.inArray(treeNode.id, editarrid) == -1){
editarrid.push(treeNode.id);
console.log(editarrid)
$('#whitelist-edit-checked').append('' + treeNode.name + '');
}else{
return
}
} else {
editarrid.remove(treeNode.id);
$('.whitelist-editParkCheck' + treeNode.id).remove();
}
}
};
//新增树下面内容删除
$(document).delegate('.closex','click',function () {
var valid = $(this).parent().attr('data-id');
arrid.remove(valid);
$(this).parent().remove();
//取消树的选中
areaTree.updateNodesForNotChecked(valid,false);
});
//编辑树下面内容删除
$(document).delegate('.editclosex','click',function () {
var valid = $(this).parent().attr('data-id');
editarrid.remove(valid);
console.log(editarrid)
$(this).parent().remove();
//取消树的选中
areaEditTree.updateNodesForNotChecked(valid,false);
});
};
pageInitWhite();
function getQueryWhiteParams(){
//白名单规则名称
var whiteRName = $("#whiteRName").val();
/*匹配类型*/
var matchType = $("#matchType").val();
//停车场
var plnos = JSON.parse($("#parkIds").val());
/*车牌号*/
var carNum = $('#carNum').val();
carNum = carNum == null || carNum.length == 0 ? '' : carNum.trim();
var req = {
plNos: plnos,
whiteRName: whiteRName,
matchType: matchType,
carNum: carNum
};
return req;
}
window.downloadFile = function (sUrl) {
//iOS devices do not support downloading. We have to inform user about this.
if (/(iP)/g.test(navigator.userAgent)) {
alert('Your device does not support files downloading. Please try again in desktop browser.');
return false;
}
//If in Chrome or Safari - download via virtual link click
if (window.downloadFile.isChrome || window.downloadFile.isSafari) {
//Creating new link node.
var link = document.createElement('a');
link.href = sUrl;
if (link.download !== undefined) {
//Set HTML5 download attribute. This will prevent file from opening if supported.
var fileName = sUrl.substring(sUrl.lastIndexOf('/') + 1, sUrl.length);
link.download = fileName;
}
//Dispatching click event.
if (document.createEvent) {
var e = document.createEvent('MouseEvents');
e.initEvent('click', true, true);
link.dispatchEvent(e);
return true;
}
}
// Force file download (whether supported by server).
if (sUrl.indexOf('?') === -1) {
sUrl += '?download';
}
window.open(sUrl, '_self');
return true;
}
window.downloadFile.isChrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
window.downloadFile.isSafari = navigator.userAgent.toLowerCase().indexOf('safari') > -1;
//导出
var InterValObj; //timer变量,控制时间
var count = 8; //间隔函数,1秒执行
var curCount;//当前剩余秒数
function sendMessage() {
curCount = count;
//设置button效果,开始计时
$("#reportWhitBtn").attr("disabled", "true");
$(".ITD-export-btn").css("width", "138px");
$("#reportWhitBtn").val(curCount + "秒后可再次导出");
InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
}
//timer处理函数
function SetRemainTime() {
if (curCount == 0) {
window.clearInterval(InterValObj);//停止计时器
$("#reportWhitBtn").removeAttr("disabled");//启用按钮
$(".ITD-export-btn").css("width", "72px");
$("#reportWhitBtn").val("导出");
}
else {
curCount--;
$("#reportWhitBtn").val(curCount + "秒后可再次导出");
}
}
//导出excle
documentBindFunc.on('click','#reportWhitBtn',function (){
//获取table所有行数据
var parkLot = $("#recordtableWhite").bootstrapTable('getData');
//获取table总条数
var numTotal = $("#recordtableWhite").bootstrapTable('getOptions').totalRows;
if(parkLot.length<1){
$('.ITD-alertmodel-contentmsg').text('无数据可导出!');
$('#ITD-tipsmodel').modal('show');
setTimeout(function () {
$('.ITD-alertmodel-contentmsg').text('');
$('#ITD-tipsmodel').modal('hide');
},3000);
return false;
}
if(numTotal>10000){
$('.ITD-alertmodel-contentmsg').text('数据量过大,请缩小查询范围!');
$('#ITD-tipsmodel').modal('show');
setTimeout(function () {
$('.ITD-alertmodel-contentmsg').text('');
$('#ITD-tipsmodel').modal('hide');
},3000);
return false;
}
//执行倒计时函数
sendMessage();
var req = getQueryWhiteParams();
var url = dataUrl.util.exportWhitelistRule() + '?plNos=' + req.plNos + '&whiteRName=' + req.whiteRName + '&matchType=' + req.matchType+'&carNum=' + req.carNum + '&sysCode='+sysComm.sysCode;
window.downloadFile(url);
});