/**
|
* 初始化司机审核列表详情对话框
|
*/
|
var YesDriverInfoDlg = {
|
yesDriverInfoData : {},
|
validateFields: {
|
name: {
|
validators: {
|
notEmpty: {
|
message: '司机名称不能为空'
|
}
|
}
|
},
|
phone: {
|
validators: {
|
notEmpty: {
|
message: '手机号不能为空'
|
},
|
regexp: {
|
regexp: /^1\d{10}$/,
|
message: '电话格式不正确'
|
}
|
}
|
},
|
driveCard: {
|
validators: {
|
notEmpty: {
|
message: '驾驶证号码不能为空'
|
}
|
}
|
},
|
driverAge: {
|
validators: {
|
notEmpty: {
|
message: '驾龄不能为空'
|
},
|
regexp: {
|
regexp: /^[0-9]\d*$/,
|
message: '驾龄格式不正确'
|
}
|
}
|
},
|
idCard: {
|
validators: {
|
notEmpty: {
|
message: '身份证号不能为空'
|
},
|
regexp: {
|
regexp: /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/,
|
message: '身份证号格式不正确'
|
}
|
}
|
},
|
driverAddress: {
|
validators: {
|
notEmpty: {
|
message: '居住地址不能为空'
|
}
|
}
|
},
|
taxiAptitudeCard: {
|
validators: {
|
notEmpty: {
|
message: '出租车资格证号不能为空'
|
}
|
}
|
},
|
/* account: {
|
validators: {
|
notEmpty: {
|
message: '登录账号不能为空'
|
}
|
}
|
},*/
|
password: {
|
validators: {
|
notEmpty: {
|
message: '密码不能为空'
|
},
|
regexp:{
|
regexp: /^.{6,18}$/,
|
message: '密码长度为6-18'
|
},
|
identical: {
|
field: 'rePassword',
|
message: '两次密码不一致'
|
},
|
}
|
},
|
rePassword: {
|
validators: {
|
notEmpty: {
|
message: '密码不能为空'
|
},
|
regexp:{
|
regexp: /^.{6,18}$/,
|
message: '密码长度为6-18'
|
},
|
identical: {
|
field: 'password',
|
message: '两次密码不一致'
|
},
|
}
|
},
|
remark: {
|
validators: {
|
notEmpty: {
|
message: '操作备注不能为空'
|
}
|
}
|
}
|
|
,
|
driverNationality: {
|
validators: {
|
notEmpty: {
|
message: '国籍不能为空'
|
}
|
}
|
},
|
driverNation: {
|
validators: {
|
notEmpty: {
|
message: '民族不能为空'
|
}
|
}
|
},
|
driverLanguageLevel: {
|
validators: {
|
notEmpty: {
|
message: '外语能力不能为空'
|
}
|
}
|
},
|
driverEducation: {
|
validators: {
|
notEmpty: {
|
message: '学历不能为空'
|
}
|
}
|
},
|
driverCensus: {
|
validators: {
|
notEmpty: {
|
message: '户口登记机关名称不能为空'
|
}
|
}
|
},
|
driverAddress: {
|
validators: {
|
notEmpty: {
|
message: '户口地址不能为空'
|
}
|
}
|
},
|
driverContactAddress: {
|
validators: {
|
notEmpty: {
|
message: '通信地址不能为空'
|
}
|
}
|
},
|
getDriverLicenseDate: {
|
validators: {
|
notEmpty: {
|
message: '初次领取驾驶证日期不能为空'
|
}
|
}
|
},
|
driverLicenseOn: {
|
validators: {
|
notEmpty: {
|
message: '驾驶证有效期限起不能为空'
|
}
|
}
|
},
|
driverLicenseOff: {
|
validators: {
|
notEmpty: {
|
message: '驾驶证有效期限止不能为空'
|
}
|
}
|
},
|
networkCarlssueOrganization: {
|
validators: {
|
notEmpty: {
|
message: '网络预约出租车驾驶员证发证机构不能为空'
|
}
|
}
|
},
|
networkCarlssueDate: {
|
validators: {
|
notEmpty: {
|
message: '资格证发证日期不能为空'
|
}
|
}
|
},
|
getNetworkCarProofDate: {
|
validators: {
|
notEmpty: {
|
message: '初次认领资格证日期不能为空'
|
}
|
}
|
},
|
networkCarProofOn: {
|
validators: {
|
notEmpty: {
|
message: '资格证有效起始日期不能为空'
|
}
|
}
|
},
|
networkCarProofOff: {
|
validators: {
|
notEmpty: {
|
message: '资格证有效截至日期不能为空'
|
}
|
}
|
},
|
registerDate: {
|
validators: {
|
notEmpty: {
|
message: '报备日期不能为空'
|
}
|
}
|
},
|
contractCompany: {
|
validators: {
|
notEmpty: {
|
message: '驾驶员合同签署公司不能为空'
|
}
|
}
|
},
|
contractOn: {
|
validators: {
|
notEmpty: {
|
message: '合同有效期起不能为空'
|
}
|
}
|
},
|
contractOff: {
|
validators: {
|
notEmpty: {
|
message: '合同有效期止不能为空'
|
}
|
}
|
},
|
emergencyContact: {
|
validators: {
|
notEmpty: {
|
message: '紧急联系人不能为空'
|
}
|
}
|
},
|
emergencyContactPhone: {
|
validators: {
|
notEmpty: {
|
message: '紧急联系电话不能为空'
|
}
|
}
|
},
|
emergencyContactAddress: {
|
validators: {
|
notEmpty: {
|
message: '紧急联系地址不能为空'
|
}
|
}
|
}
|
|
}
|
};
|
|
/**
|
* 验证数据是否为空
|
*/
|
YesDriverInfoDlg.validate = function () {
|
$('#yesDriverInfoForm').data("bootstrapValidator").resetForm();
|
$('#yesDriverInfoForm').bootstrapValidator('validate');
|
return $("#yesDriverInfoForm").data('bootstrapValidator').isValid();
|
};
|
|
/**
|
* 清除数据
|
*/
|
YesDriverInfoDlg.clearData = function() {
|
this.yesDriverInfoData = {};
|
}
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
YesDriverInfoDlg.set = function(key, val) {
|
this.yesDriverInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val;
|
return this;
|
}
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
YesDriverInfoDlg.get = function(key) {
|
return $("#" + key).val();
|
}
|
|
/**
|
* 关闭此对话框
|
*/
|
YesDriverInfoDlg.close = function() {
|
parent.layer.close(window.parent.YesDriver.layerIndex);
|
}
|
|
/**
|
* 收集数据
|
*/
|
YesDriverInfoDlg.collectData = function() {
|
this
|
.set('id')
|
.set('account')
|
.set('jobNumber')
|
.set('phone')
|
.set('password')
|
.set('name')
|
.set('sex')
|
.set('idCard')
|
.set('companyId')
|
.set('headImgUrl')
|
.set('faceImgUrl')
|
.set('idCardImgUrl1')
|
.set('idCardImgUrl2')
|
.set('placeOfEmployment')
|
.set('birthday')
|
.set('bankCardNumber')
|
.set('driverNationality')
|
.set('driverNation')
|
.set('driverMaritalStatus')
|
.set('driverLanguageLevel')
|
.set('driverEducation')
|
.set('driverCensus')
|
.set('driverAddress')
|
.set('driverContactAddress')
|
.set('licenseCode')
|
.set('licenselImgUrl')
|
.set('driverAge')
|
.set('driveCard')
|
.set('driveCardImgUrl')
|
.set('driverType')
|
.set('getDriverLicenseDate')
|
.set('driverLicenseOn')
|
.set('driverLicenseOff')
|
.set('taxiDriver')
|
.set('taxiAptitudeCard')
|
.set('networkCarlssueImg')
|
.set('networkCarlssueOrganization')
|
.set('networkCarlssueDate')
|
.set('getNetworkCarProofDate')
|
.set('networkCarProofOn')
|
.set('networkCarProofOff')
|
.set('registerDate')
|
.set('fullTimeDriver')
|
.set('inDriverBlacklist')
|
.set('commercialType')
|
.set('contractCompany')
|
.set('contractOn')
|
.set('contractOff')
|
.set('emergencyContact')
|
.set('emergencyContactPhone')
|
.set('emergencyContactAddress')
|
.set('remark')
|
.set('isPlatCar')
|
.set('carId')
|
.set('authState')
|
.set('state')
|
.set('flag')
|
.set('insertTime')
|
.set('insertUser')
|
.set('updateTime')
|
.set('updateUser')
|
.set('mchtNo')
|
.set('addType');
|
}
|
|
/**
|
* 提交添加
|
*/
|
YesDriverInfoDlg.addSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
if(!this.validate()){
|
return ;
|
}
|
var roleType = $("#roleType").val(); //1=平台 2=分公司 3=加盟商
|
var companyType = $("input[name='companyType']:checked").val();
|
if (1 == roleType){
|
if (2 == companyType){
|
var oneId = $("#oneId").val();
|
if ("" == oneId){
|
Feng.info("所属分公司不能为空!");
|
return;
|
}
|
}
|
}
|
|
var sex = $("input[name='sex']:checked").val();
|
var headImgUrl = $("#headImgUrl").val();
|
if ("" == headImgUrl){
|
Feng.info("请上传头像");
|
return;
|
}
|
var faceImgUrl = $("#faceImgUrl").val();
|
if ("" == faceImgUrl){
|
Feng.info("请上传人脸识别照片");
|
return;
|
}
|
var driveCardImgUrl = $("#driveCardImgUrl").val();
|
if ("" == driveCardImgUrl){
|
Feng.info("请上传驾驶证照片");
|
return;
|
}
|
var serverBox =[];
|
$('input[name="serverBox"]:checked').each(function(){
|
serverBox.push($(this).val());
|
});
|
if (serverBox.length == 0){
|
Feng.info("请选择经营业务!");
|
return;
|
}
|
var serverBox3 = $('#serverBox3').prop('checked');
|
var subArr=[];
|
if (serverBox3){
|
//线路不能为空
|
$(".lineClass").each(function () {
|
subArr.push({
|
lineId:$(this).find("input[name*='lineId']").val(),
|
time:$(this).find("input[name*='time']").val(),
|
})
|
});
|
if(subArr.length <= 0){
|
Feng.error("请选择关联线路");
|
return;
|
}
|
}
|
|
|
this.yesDriverInfoData.idCard = encryptAES(this.yesDriverInfoData.idCard);
|
this.yesDriverInfoData.phone = encryptAES(this.yesDriverInfoData.phone);
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/tDriver/add", function(data){
|
if ("error" == data) {
|
Feng.error("登录账户已存在,请重新输入");
|
return;
|
}
|
Feng.success("添加成功!");
|
window.parent.YesDriver.table.refresh();
|
YesDriverInfoDlg.close();
|
},function(data){
|
Feng.error("添加失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.yesDriverInfoData);
|
ajax.set("serverBox",serverBox.toString());
|
ajax.set("lineStr",JSON.stringify(subArr));
|
ajax.set("sex",sex);
|
ajax.set("roleType",roleType);
|
if (1 == roleType){
|
ajax.set("companyType",companyType);
|
ajax.set("oneId",$("#oneId").val());
|
ajax.set("twoId",$("#twoId").val());
|
ajax.set("franchiseeId",0);
|
} else if (2 == roleType) {
|
ajax.set("franchiseeId",$("#franchiseeId").val());
|
ajax.set("companyType",0);
|
ajax.set("oneId",0);
|
ajax.set("twoId",0);
|
}else if (3 == roleType){
|
ajax.set("franchiseeId",0);
|
ajax.set("companyType",0);
|
ajax.set("oneId",0);
|
ajax.set("twoId",0);
|
}
|
ajax.start();
|
}
|
|
/**
|
* 提交修改
|
*/
|
YesDriverInfoDlg.editSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
if(!this.validate()){
|
return ;
|
}
|
|
this.yesDriverInfoData.idCard = encryptAES(this.yesDriverInfoData.idCard);
|
this.yesDriverInfoData.phone = encryptAES(this.yesDriverInfoData.phone);
|
|
var roleType = $("#roleType").val(); //1=平台 2=分公司 3=加盟商
|
var companyType = $("input[name='companyType']:checked").val();
|
if (1 == roleType){
|
if (2 == companyType){
|
var oneId = $("#oneId").val();
|
if ("" == oneId){
|
Feng.info("所属分公司不能为空!");
|
return;
|
}
|
}
|
}
|
var sex = $("input[name='sex']:checked").val();
|
var headImgUrl = $("#headImgUrl").val();
|
if ("" == headImgUrl){
|
Feng.info("请上传头像");
|
return;
|
}
|
var faceImgUrl = $("#faceImgUrl").val();
|
if ("" == faceImgUrl){
|
Feng.info("请上传人脸识别照片");
|
return;
|
}
|
var driveCardImgUrl = $("#driveCardImgUrl").val();
|
if ("" == driveCardImgUrl){
|
Feng.info("请上传驾驶证照片");
|
return;
|
}
|
var serverBox =[];
|
$('input[name="serverBox"]:checked').each(function(){
|
serverBox.push($(this).val());
|
});
|
if (serverBox.length == 0){
|
Feng.info("请选择经营业务!");
|
return;
|
}
|
var serverBox3 = $('#serverBox3').prop('checked');
|
var subArr=[];
|
if (serverBox3){
|
//线路不能为空
|
$(".lineClass").each(function () {
|
subArr.push({
|
lineId:$(this).find("input[name*='lineId']").val(),
|
time:$(this).find("input[name*='time']").val(),
|
})
|
});
|
if(subArr.length <= 0){
|
Feng.error("请选择关联线路");
|
return;
|
}
|
}
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/tDriver/update", function(data){
|
if ("error" == data) {
|
Feng.error("登录账户已存在,请重新输入");
|
return;
|
}
|
Feng.success("修改成功!");
|
window.parent.YesDriver.table.refresh();
|
YesDriverInfoDlg.close();
|
},function(data){
|
Feng.error("修改失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.yesDriverInfoData);
|
ajax.set("serverBox",serverBox.toString());
|
ajax.set("lineStr",JSON.stringify(subArr));
|
ajax.set("sex",sex);
|
ajax.set("roleType",roleType);
|
if (1 == roleType){
|
ajax.set("companyType",companyType);
|
ajax.set("oneId",$("#oneId").val());
|
ajax.set("twoId",$("#twoId").val());
|
ajax.set("franchiseeId",0);
|
} else if (2 == roleType) {
|
ajax.set("franchiseeId",$("#franchiseeId").val());
|
ajax.set("companyType",0);
|
ajax.set("oneId",0);
|
ajax.set("twoId",0);
|
}else if (3 == roleType){
|
ajax.set("franchiseeId",0);
|
ajax.set("companyType",0);
|
ajax.set("oneId",0);
|
ajax.set("twoId",0);
|
}
|
ajax.start();
|
}
|
|
|
var key = CryptoJS.enc.Utf8.parse("xqT86jictTPpHMem");
|
var iv = CryptoJS.enc.Utf8.parse("xqT86jicxqT86jic");
|
|
//aes加密
|
function encryptAES(context) {
|
if(null == context || '' == context){
|
return context;
|
}
|
var encrypted = '';
|
if (typeof(context) == 'string') {
|
|
}else if(typeof(context) == 'object'){
|
context = JSON.stringify(context);
|
}
|
var srcs = CryptoJS.enc.Utf8.parse(context);
|
encrypted = CryptoJS.AES.encrypt(srcs, key, {
|
iv: iv,
|
mode: CryptoJS.mode.CBC,
|
padding: CryptoJS.pad.Pkcs7
|
});
|
return encrypted.toString();
|
}
|
// aes解密
|
function decryptAES(context) {
|
if(null == context || '' == context){
|
return context;
|
}
|
var decrypt = CryptoJS.AES.decrypt(context, key, {
|
iv: iv,
|
mode: CryptoJS.mode.CBC,
|
padding: CryptoJS.pad.Pkcs7
|
});
|
var decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
|
return decryptedStr.toString();
|
}
|
|
|
$(function() {
|
Feng.initValidator("yesDriverInfoForm", YesDriverInfoDlg.validateFields);
|
// 初始化图片上传
|
var headImgUrl = new $WebUpload("headImgUrl");
|
headImgUrl.setUploadBarId("progressBar");
|
headImgUrl.init();
|
var faceImgUrl = new $WebUpload("faceImgUrl");
|
faceImgUrl.setUploadBarId("progressBar");
|
faceImgUrl.init();
|
var driveCardImgUrl = new $WebUpload("driveCardImgUrl");
|
driveCardImgUrl.setUploadBarId("progressBar");
|
driveCardImgUrl.init();
|
var networkCarlssueImg = new $WebUpload("networkCarlssueImg");
|
networkCarlssueImg.setUploadBarId("progressBar");
|
networkCarlssueImg.init();
|
});
|
|
/**
|
* 添加线路操作
|
*/
|
YesDriverInfoDlg.addLine = function () {
|
var selectLineName = $("#selectLineId option:selected").text();
|
var selectLineId = $("#selectLineId").val();
|
if ("" == selectLineId){
|
Feng.info("选择关联线路");
|
return;
|
}
|
//获取所有的值
|
var subArr=[];
|
$(".lineClass").each(function () {
|
subArr.push({
|
lineId:$(this).find("input[name*='lineId']").val(),
|
time:$(this).find("input[name*='time']").val(),
|
})
|
});
|
for(var i=0;i<subArr.length;i++){
|
var lineId = subArr[i].lineId;
|
if (selectLineId == lineId) {
|
Feng.info("关联线路已存在,请重新选择");
|
return;
|
}
|
}
|
var str = '<tr class="lineClass">' +
|
'<td style="text-align: center;"><input type="hidden" id="lineId" name="lineId" value="'+selectLineId+'">' +
|
'<input type="hidden" id="time" name="time" value="'+getNowFormatDate()+'">' + getNowFormatDate() + '</td>' +
|
'<td style="text-align: center;">' + selectLineName + '</td>' +
|
'<td style="text-align: center;"><button onclick="deleteSub(this)">移除</button></td></tr>';
|
$("#line").append(str);
|
|
}
|
|
function deleteSub(e) {
|
$(e).parent().parent().remove();
|
}
|
|
//获取当前时间,格式YYYY-MM-DD
|
function getNowFormatDate() {
|
var date = new Date();
|
var seperator1 = "-";
|
var year = date.getFullYear();
|
var month = date.getMonth() + 1;
|
var strDate = date.getDate();
|
if (month >= 1 && month <= 9) {
|
month = "0" + month;
|
}
|
if (strDate >= 0 && strDate <= 9) {
|
strDate = "0" + strDate;
|
}
|
var currentdate = year + seperator1 + month + seperator1 + strDate;
|
return currentdate;
|
}
|
|
/**
|
* "跨城出行"点击事件
|
*/
|
YesDriverInfoDlg.checkBox = function(){
|
var serverBox3 = $('#serverBox3').prop('checked');
|
if (serverBox3){
|
$("#lineDiv").show();
|
} else {
|
$("#lineDiv").hide();
|
}
|
}
|
|
/**
|
* 选择分公司后执行
|
*/
|
YesDriverInfoDlg.oneChange = function (e) {
|
var oneId=$(e).val();
|
var ajax = new $ax(Feng.ctxPath + "/tDriver/oneChange", function(data){
|
if(data!=null){
|
var content='<option value="">选择所属加盟商</option>';
|
$.each(data, function(k,v) {
|
content += "<option value='"+v.id+"'>"+v.name+"</option>";
|
});
|
$("#twoId").empty().append(content);
|
}
|
});
|
ajax.set("oneId",oneId);
|
ajax.start();
|
}
|
|
/**
|
* 操作用户
|
*/
|
YesDriverInfoDlg.optDriver = function () {
|
var remark = $("#remark").val();
|
if ("" == remark){
|
Feng.info("操作备注不能为空");
|
return;
|
}
|
var ajax = new $ax(Feng.ctxPath + "/tDriver/optDriver", function(data){
|
Feng.success("操作成功!");
|
window.parent.YesDriver.table.refresh();
|
YesDriverInfoDlg.close();
|
},function(data){
|
Feng.error("操作失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.yesDriverInfoData);
|
ajax.set("driverId",$("#tDriverId").val());
|
ajax.set("optType",$("#optType").val());
|
ajax.set("remark",$("#remark").val());
|
ajax.start();
|
}
|
|
/**
|
* 类型改变执行
|
* @param e
|
*/
|
YesDriverInfoDlg.companyTypeClick = function (e) {
|
if (1 == e){
|
$("#companyDiv").hide();
|
} else if (2 == e){
|
$("#companyDiv").show();
|
}
|
}
|