var proId; var CODE_1 = 0; var CODE_2 = 2; var securityMaymentsFileId = ''; var boardFileId = ''; var fileExt = ""; var num = 0; let fileNum = 0; var layuiForm; let addLoadingMsg; var token = localStorage.getItem("token"); $(function () { // initTrees(); layui.use(['form', 'laydate', 'upload'], function () { var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功 layuiForm = form; var laydate = layui.laydate; var upload1 = layui.upload; var upload2 = layui.upload; form.render(); form.verify({ orgName: [/^(?!-1).*$/, '请选择公司名称'], voltageLevel: [/^(?!-1).*$/, '请选择电压等级'], bankAccount: [/^(?!-1).*$/, '请选择工资账户所属银行'], lon: [/^-?((0|1?[0-7]?[0-9]?)(([.][0-9]{1,4})?)|180(([.][0]{1,12})?))$/, '范围:-180.00~180.00(最大保留4位小数)'], lat: [/^-?((0|[1-8]?[0-9]?)(([.][0-9]{1,4})?)|90(([.][0]{1,12})?))$/, '范围:-90.00~90.00(最大保留4位小数)'], contractPrice: [/^\d+(.\d{1,4})?$/, '最大保留4位小数'], securityPayments: [/^\d+(.\d{1,4})?$/, '最大保留4位小数'], proLeader: [/^[\u4e00-\u9fa5_]{2,20}$/, '负责人联系⼈请输入2-20个中文真实姓名'], labourSpecialName: [/^[\u4e00-\u9fa5_]{2,20}$/, '劳资专管员请输入2-20个中文真实姓名'], labourSpecialPhone: [/^1[3456789]\d{9}$/, '劳资专管员电话请输入11位手机号码'], labourSpecialIdCard: [/^[1-9]\d{5}(18|19|20|(3\d))\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/, '劳资专管员身份证请输入18位身份证'], proLeaderPhone: [/^1[3456789]\d{9}$/, '负责人联系人电话请输入11位手机号码'], projectManager: [/^[\u4e00-\u9fa5_]{2,20}$/, '参建单位项目经理请输入2-20个中文真实姓名'], phone: [/^1[3456789]\d{9}$/, '参建单位项目经理电话请输入11位手机号码'], managerNumber: [/^[1-9]\d{5}(18|19|20|(3\d))\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/, '参建单位项目经理身份证请输入18位身份证'], bankName: [/^[\u4e00-\u9fa5_]{4,100}$/, '开户银行支行名称请输入4-100个中文字符'], openBankNumber: [/^[\u4e00-\u9fa5_a-zA-Z0-9.-]{6,30}$/, '开户账号6-30位字母、数字、中划线混合的字符'], accountBalance: [/^\d+(.\d{1,2})?$/, '最大保留2位小数'] }); //项目保险附件 //多图片上传 var uploadcom1 = upload1.render({ elem: '#test1', url: ctxPath + '/project/savePayment', //改成您自己的上传接口 multiple: true, //是否允许多文件上传,默认未false dataType: "json", // data: {"pickId": id}, exts: 'jpg|png|jpeg|pdf', //acceptMime: 'image/jpg,image/png,image/jpeg,file/pdf,file/xlsx', auto: false, //是否自动上传 ,默认为true number: 3, //最大上传数量 size: 1024 * 5, //最大文件大小,单位k bindAction: '#hideUpload1', //绑定的按钮 field: 'file', //传到后台的字段名,默认file choose: function (obj) { CODE_1 = 1; uploadcom1.config.elem.next()[0].value = ''; files = obj.pushFile(); obj.preview(function (index, file, result) { console.log(index); //得到文件索引 console.log(file.name); //得到文件对象 $('#demo1').append('' + file.name + ''); $('#' + index).bind('dblclick', function () {//双击删除指定预上传图片 delete files[index];//删除指定图片 $(this).remove(); }); var imgNum = $("#demo1 img").length; $("#test1").text(imgNum + "个文件"); // fileExt = file.name; }); }, before: function (obj) { // fileExt = fileExt.split(".")[1]; this.data = { // ext: fileExt, proId: proId, accessoryType: "0" }; if ($("[name='brand']").val() == '') { return false; } else { console.log(files); var names = ''; layui.each(files, function (index, file) { console.log(file.name) names += file.name + ','; }); $("[name='image']").val(names) console.log(names); } return true; }, done: function (data) { }, allDone: function (data) { num++; if (num == fileNum) { num = 0; fileNum = 0; top.layer.close(addLoadingMsg); //再执行关闭 top.layer.msg('文件保存成功', {icon: 1, time: 2000}); setTimeout("reloading()", 2100); } }, error: function (e) { //请求异常回调 console.log(e) } }); //维权告示牌附件 var uploadcom2 = upload2.render({ elem: '#test2', url: ctxPath + '/project/uploadFile', //改成您自己的上传接口 multiple: true, //是否允许多文件上传,默认未false dataType: "json", // data: {"pickId": id}, exts: 'jpg|png|jpeg', //acceptMime: 'image/jpg,image/png,image/jpeg,file/pdf,file/xlsx', auto: false, //是否自动上传 ,默认为true number: 3, //最大上传数量 size: 1024 * 5, //最大文件大小,单位k bindAction: '#hideUpload2', //绑定的按钮 field: 'projectInsuranceFile', //传到后台的字段名,默认file choose: function (obj) { CODE_2 = 3; var suffixType = ''; //后缀类型 uploadcom2.config.elem.next()[0].value = ''; files = obj.pushFile(); obj.preview(function (index, file, result) { console.log(index); //得到文件索引 console.log(file.name); //得到文件对象 $('#demo2').append('' + file.name + ''); $('#' + index).bind('dblclick', function () {//双击删除指定预上传图片 delete files[index];//删除指定图片 $(this).remove(); }); var imgNum = $("#demo2 img").length; $("#test2").text(imgNum + "个文件"); }); }, before: function (obj) { this.data = { proId: proId, accessoryType: "1" }; if ($("[name='brand']").val() == '') { return false; } else { console.log(files); var names = ''; layui.each(files, function (index, file) { console.log(file.name) names += file.name + ','; }); $("[name='image']").val(names) console.log(names); } return true; }, done: function (data) { }, allDone: function (data) { num++; if (num == fileNum) { num = 0; fileNum = 0; top.layer.close(addLoadingMsg); //再执行关闭 top.layer.msg('文件保存成功', {icon: 1, time: 2000}); setTimeout("reloading()", 2100); } }, error: function (e) { //请求异常回调 console.log(e) } }); // 验证成功后才会执行下面的操作 form.on('submit(formDemo)', function (data) { var orgId = $("#orgId").val(); if (orgId == '' || orgId == null) { layer.msg('请选择项目部'); return false; }else{ var id = $("#id").val(); data.field.companyId = $("#orgId").val(); if (id == '') { addProject(data); // 新增工程 } else { var proName = localStorage.getItem("name"); var name = $("#name").val(); if (proName == name) { data.field.flag = false; } else { data.field.flag = true; } updateProject(data); } } }); laydate.render({ elem: '#contractSigningDate' //指定元素 元素选择器 , type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒) , trigger: 'click' , format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss // , value: new Date() //初始值 今天 , btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定 , done: function (value, date) {//时间回调 console.log(value); console.log(date); } }); laydate.render({ elem: '#approachDate' //指定元素 元素选择器 , type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒) , trigger: 'click' , format: 'yyyy-MM-dd HH:mm:ss' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss , btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定 , done: function (value, date) {//时间回调 console.log(value); console.log(date); } }); laydate.render({ elem: '#contractWarranty' //指定元素 元素选择器 , type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒) , trigger: 'click' , format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss , btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定 , done: function (value, date) {//时间回调 console.log(value); console.log(date); } }); laydate.render({ elem: '#startTime' //指定元素 元素选择器 , type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒) , trigger: 'click' , format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss , btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定 , done: function (value, date) {//时间回调 $('#aTime').val(value); $('#bTime').val(value); var startDate = new Date($('#startTime').val()); var endDate = new Date($('#endTime').val()); if (startDate != null) { if (endDate != null) { if (endDate < startDate) { parent.layer.msg('计划竣工时间不能小于计划开工时间', {icon: 2, time: 1500}); $("#endTime").val(""); } } } } }); laydate.render({ elem: '#endTime' //指定元素 元素选择器 , type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒) , trigger: 'click' , format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss , btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定 , done: function (value, date) {//时间回调 var startDate = new Date($('#startTime').val()); var endDate = new Date($('#endTime').val()); if (startDate != null) { if (endDate != null) { if (endDate < startDate) { parent.layer.msg('计划竣工时间不能小于计划开工时间', {icon: 2, time: 1500}); // $("#startTime").val(getNowTime); $("#endTime").val(""); } } } } }); laydate.render({ elem: '#contractStartTime' //指定元素 元素选择器 , type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒) , trigger: 'click' , format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss , btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定 , done: function (value, date) {//时间回调 var startDate = new Date($('#contractStartTime').val()); var endDate = new Date($('#contractEndTime').val()); if (startDate != null) { if (endDate != null) { if (endDate < startDate) { parent.layer.msg('合同竣工时间不能小于合同开工时间', {icon: 2, time: 1500}); $("#contractEndTime").val(""); } } } } }); laydate.render({ elem: '#contractEndTime' //指定元素 元素选择器 , type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒) , trigger: 'click' , format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss , btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定 , done: function (value, date) {//时间回调 var startDate = new Date($('#contractStartTime').val()); var endDate = new Date($('#contractEndTime').val()); if (startDate != null) { if (endDate != null) { if (endDate < startDate) { parent.layer.msg('合同竣工时间不能小于合同开工时间', {icon: 2, time: 1500}); $("#contractEndTime").val(""); } } } } }); formValidation(); }); }); //新增工程 function addProject(formData) { // 加载提示 addLoadingMsg = top.layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']}); // form请求地址 if (CODE_1 == 0) { parent.layer.msg("请上传项目保障金附件", {icon: 2, time: 2000}); top.layer.close(addLoadingMsg); //再执行关闭 } else { if (CODE_2 == 2) { parent.layer.msg("请上传维权告示牌附件", {icon: 2, time: 2000}); top.layer.close(addLoadingMsg); //再执行关闭 } else { var formUrl = ctxPath + "/project"; $.ajax({ type: 'POST', async: false, // 默认异步true,false表示同步 url: formUrl, // 请求地址 contentType: "application/json; charset=utf-8", dataType: 'json', // 服务器返回数据类型 data: JSON.stringify(formData.field), //获取提交的表单字段 success: function (data) { proId = data.obj; if (data.resMsg == "保存成功") { fileNum = 2; $("#hideUpload1").trigger("click"); $("#hideUpload2").trigger("click"); } else if (data.resMsg == "保存失败") { top.layer.close(addLoadingMsg); //再执行关闭 parent.layer.msg('保存失败', {icon: 2, time: 2000}); } else { top.layer.close(addLoadingMsg); //再执行关闭 parent.layer.msg(data.resMsg, {icon: 2, time: 2000}); } }, error: function (XMLHttpRequest, textStatus, e) { layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false}); top.layer.close(addLoadingMsg); //再执行关闭 } }); } } } //修改工程 function updateProject(formData) { // 加载提示 addLoadingMsg = top.layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']}); $("#securityMaymentsFileId").val(securityMaymentsFileId); $("#boardFileId").val(boardFileId); proId = $("#id").val(); // form请求地址 var formUrl = ctxPath + "/project/updateProject?securityMaymentsFileId=" + securityMaymentsFileId + "&boardFileId=" + boardFileId; $.ajax({ type: 'POST', async: false, // 默认异步true,false表示同步 url: formUrl, // 请求地址 date: { proId: proId }, contentType: "application/json; charset=utf-8", dataType: 'json', // 服务器返回数据类型 data: JSON.stringify(formData.field), //获取提交的表单字段 success: function (data) { if (data.resMsg == "保存成功") { let num = 0; $("#demo1").find("img").each(function () { let newPhoto = $(this).attr("newPhoto"); if (newPhoto === undefined) { num++; } }) $("#demo1").find("div").each(function () { let newPhoto = $(this).attr("newFile"); if (newPhoto === undefined) { num++; } }) let number = 0; $("#demo2").find("img").each(function () { let newPhoto = $(this).attr("newPhoto"); if (newPhoto === undefined) { number++; } }) if (num > 0) { fileNum++; $("#hideUpload1").trigger("click"); } if (number > 0) { fileNum++; $("#hideUpload2").trigger("click"); } if(!num>0 && !number>0){ top.layer.close(addLoadingMsg); parent.layer.msg('修改成功', {icon: 1, time: 2000}); setTimeout("reloading()", 2100); } } else if (data.resMsg == "保存失败") { top.layer.close(addLoadingMsg); parent.layer.msg('保存失败', {icon: 2, time: 2000}); } else { top.layer.close(addLoadingMsg); parent.layer.msg(data.resMsg, {icon: 2, time: 2000}); } }, error: function (XMLHttpRequest, textStatus, e) { top.layer.close(addLoadingMsg); layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false}); } }); } /** * 获取行政区code * */ function getRegisterAddressCodes(addressCodeId) { $("#registerAddressCode").empty(); $.ajax({ type: 'POST', url: ctxPath + '/companyManager/getRegisterAddressCode', data: {}, dataType: 'json', success: function (data) { if (data.length > 0) { var html = ''; for (var i = 0; i < data.length; i++) { if(data[i].id === addressCodeId){ html += ''; }else{ html += ''; } } $("#registerAddressCode").append(html); layuiForm.render(); //这里就是我们要渲染的地方了 } }, error: function (err) { console.log("获取行政区code下拉列表出错:", err); } }) } /** * 获取分公司 * */ function getCompanys(orgId) { $("#orgId").empty(); $.ajax({ type: 'POST', url: ctxPath + '/project/getCompanys', data: {}, dataType: 'json', success: function (data) { var str = ''; if (data.length > 0) { for (var i = 0; i < data.length; i++) { if (orgId == data[i].id) { str += ''; } else { str += ''; } } } $("#orgId").append(str); // layui.form.render('select'); //这里就是我们要渲染的地方了 } }) } /** * 获取工程 * */ function getProject(orgId) { $("#proId").empty(); $.ajax({ type: 'POST', url: ctxPath + '/balls/getPros', data: { "comId": orgId, }, dataType: 'json', success: function (data) { var str = ''; if (data.length > 0) { for (var i = 0; i < data.length; i++) { str += ''; } } $("#proId").append(str); layui.form.render('select'); //这里就是我们要渲染的地方了 } }) } // 表单赋值 function setData(data) { console.log(JSON.stringify(data)); $("#id").val(data.id); localStorage.setItem("name", data.name); // getCompanys(data.companyId); // 赋值分公司 // $("#orgName").val(data.orgName); // // $("#orgId").val(data.orgId); // $("#companyId").val(data.companyId); $("#name").val(data.name); // 工程名称 $("#projectId").val(data.projectId); // 工程名称 $("#abbreviation").val(data.abbreviation); // 工程简称 // $("#proType").val(data.proType);// 工程类型 $("#proType").find('option[value=\'' + data.proType + '\']').prop("selected", "selected");//工程类型 $("#status").find('option[value=\'' + data.status + '\']').prop("selected", "selected"); // 工程状态 getLevel(data.voltageLevelId); //$("#voltageLevel").find('option[value=\'' + data.voltageLevel + '\']').prop("selected", "selected"); // 电压 $("#powerGrid").val(data.powerGrid); // 所属电网 $("#origin").val(data.origin); // 工程地址 $("#lon").val(data.lon); // 经度 $("#lat").val(data.lat); // 纬度 $("#startTime").val(data.startTime); // 计划开工时间 $("#endTime").val(data.endTime); // 计划竣工时间 $("#contractSigningDate").val(data.contractSigningDate); // 合同签订日期 $("#contractPrice").val(data.contractPrice); // 签约价格 // $("#registerAddressCode").find('option[value=\'' + data.registerAddressCodeId + '\']').prop("selected", "selected");// 是否备案 getRegisterAddressCodes(data.registerAddressCodeId); // 行政区编码 $("#isInsurance").find('option[value=\'' + data.isInsurance + '\']').prop("selected", "selected");// 是否购买工商保险 $("#paymentType").val(data.paymentType); // 保证金类型 $("#securityPayments").val(data.securityPayments); // 项目保障金预存额 getPayDate(data.payDate); // 发薪日期 $("#labourSpecialName").val(data.labourSpecialName); // 劳资专管员姓名 $("#labourSpecialPhone").val(data.labourSpecialPhone); // 劳资专管员电话 $("#labourSpecialIdCard").val(data.labourSpecialIdCard); // 劳资专管员身份证 $("#projectManager").val(data.projectManager); // 参建单位项目经理姓名 $("#phone").val(data.phone); // 参建单位项目经理电话 $("#managerNumber").val(data.managerNumber); // 参建单位项目经理证件号码 $("#approachDate").val(data.approachDate); // 参建单位项目经理进场时间 $("#proLeader").val(data.proLeader); // 负责人联系人姓名 $("#proLeaderPhone").val(data.proLeaderPhone); //负责人 联系人电话 getBankAccount(data.bankAccountId);// 工资专户所属银行 $("#specialBankType").find('option[value=\'' + data.specialBankType + '\']').prop("selected", "selected");// 专户类型 $("#openBankType").find('option[value=\'' + data.openBankType + '\']').prop("selected", "selected");// 开户类型 $("#openBankNumber").val(data.openBankNumber);// 开户账号 $("#bankName").val(data.bankName);// 开户银行支行名称 $("#payWay").find('option[value=\'' + data.payWay + '\']').prop("selected", "selected");// 工资发放渠道 $("#accountBalance").val(data.accountBalance);// 账户余额 getCompanyIdEdit(data.gsId,'0' ,data.fgsId,data.orgId);// 公司 var securityMaymentsFilePaths = data.securityMaymentsFilePaths; if (securityMaymentsFilePaths != '' && securityMaymentsFilePaths != null && securityMaymentsFilePaths != 'null') { var photos = securityMaymentsFilePaths.split(","); var fileType = data.fileType.split(","); var html = ''; for (var i = 0; i < photos.length; i++) { var path = ''; if (photos[i].indexOf("http") != -1) { path = photos[i]; } else { path = dataPath+"/" + photos[i]; } var j = i+1; if(fileType[i] == "0"){ html += '
PDF'+j+'文件(点击预览)
'; }else if(fileType[i] == "1"){ html += ''; } } $('#demo1').append(html); } // $("#boardFile").val(data.boardFile); // 维权告示牌附件 var BroadFilePath = data.broadFilePaths; if (BroadFilePath != "" && BroadFilePath != null && BroadFilePath != 'null') { var demo2 = $("#demo2"); var html = ''; var photoT = BroadFilePath.split(","); var BoardFileIds = data.boardFileId.split(","); for (var j = 0; j < photoT.length; j++) { var path = ''; if (photoT[j].indexOf("http") != -1) { path = photoT[j]; } else { path = dataPath + "/" + photoT[j]; } html += ''; } demo2.append(html); } } function getCompanyIdEdit(id,pId,fgsId,companyId) { $("#gsId").empty(); $.ajax({ type: 'POST', url: ctxPath + '/users/getCompanyIdInfo', data: { "pId":pId }, dataType: 'json', success: function (data) { var str =""; if (data.length > 0) { for (var i = 0; i < data.length; i++) { if (id == data[i].proId) { str += ''; } else { str += ''; } } getCompanyIdsEdit( fgsId,id,companyId); } $("#gsId").append(str); // layui.form.render('select'); //这里就是我们要渲染的地方了 } }) } function getCompanyIdsEdit(id,pId,companyId) { $("#fgsId").empty(); $.ajax({ type: 'POST', url: ctxPath + '/users/getCompanyIdInfo', data: { "pId":pId }, dataType: 'json', success: function (data) { var str =""; if (data.length > 0) { for (var i = 0; i < data.length; i++) { if (id == data[i].proId) { str += ''; } else { str += ''; } } getCompanyProIds( companyId,id); } $("#fgsId").append(str); // layui.form.render('select'); //这里就是我们要渲染的地方了 } }) } function getCompanyProIds(id,pId) { $("#companyId").empty(); $.ajax({ type: 'POST', url: ctxPath + '/users/getCompanyIdInfo', data: { "pId":pId }, dataType: 'json', success: function (data) { var str =""; if (data.length > 0) { for (var i = 0; i < data.length; i++) { if (id == data[i].proId) { str += ''; } else { str += ''; } } } $("#companyId").empty().append(str); // layui.form.render('select'); //这里就是我们要渲染的地方了 } }) } function delPhoto(id, photoId) { $('#' + id).remove(); if (id.indexOf('securityMaymentsFile') != -1) { securityMaymentsFileId += photoId + ','; } if (id.indexOf('BoardFile') != -1) { boardFileId += photoId + ','; } } function getValue(url) { //获取最后一个/的位置 var site = url.lastIndexOf("\/"); //截取最后一个/后的值 return url.substring(site + 1, url.length); } function dataURLtoFile(dataurl, filename) {//将base64转换为文件 var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n); while (n--) { u8arr[n] = bstr.charCodeAt(n); } return new File([u8arr], filename, {type: mime}); } // 对图片进行压缩 function compress(init) { if (files[init].size > 100 * 1024) { let reader = new FileReader(); var b = Math.sqrt(Math.sqrt(files[init].size / 100 / 1024)); reader.readAsDataURL(files[init]); reader.onload = function (e) { let image = new Image() //新建一个img标签(还没嵌入DOM节点) image.src = e.target.result image.onload = function () { let canvas = document.createElement('canvas'), context = canvas.getContext('2d'), imageWidth = image.width / b, //压缩后图片的大小 imageHeight = image.height / b, data = '' canvas.width = imageWidth canvas.height = imageHeight context.drawImage(image, 0, 0, imageWidth, imageHeight); data = canvas.toDataURL(files[init].type); files[init] = dataURLtoFile(data, files[init].name) } } } } function setDisable() { $("#orgId").prop("disabled", true); $("#proType").prop("disabled", true); $("#labourSpecialName").prop("readonly", true); $("#voltageLevel").prop("readonly", true); $("#voltageLevel").prop("disabled", true); $("#paymentType").prop("disabled", true); $("#name").prop("readonly", true); $("#proLeader").prop("readonly", true); $("#bankAccount").prop("disabled", true); $("#specialBankType").prop("disabled", true); $("#openBankType").prop("disabled", true); $("#labourSpecialPhone").prop("readonly", true); $("#province").prop("disabled", true); $("#origin").prop("disabled", true); $("#openBankNumber").prop("readonly", true); $("#bankName").prop("readonly", true); $("#payWay").prop("disabled", true); $("#accountBalance").prop("readonly", true); $("#isInsurance").prop("disabled", true); $("#registerAddressCode").prop("disabled", true); $("#status").prop("disabled", true); $("#workType").prop("disabled", true); $("#labourSpecialIdCard").prop("readonly", true); $("#lon").prop("readonly", true); $("#securityPayments").prop("readonly", true); $("#lat").prop("readonly", true); $("#payDate").prop("readonly", true); $("#linkPersonName").prop("readonly", true); $("#linkPersonPhone").prop("readonly", true); $("#projectId").prop("readonly", true); $("#powerGrid").prop("readonly", true); $("#contractPrice").prop("readonly", true); $("#projectManager").prop("readonly", true); $("#abbreviation").prop("readonly", true); $("#contractSigningDate").prop("readonly", true); $("#phone").prop("readonly", true); $("#lineLength").prop("readonly", true); $("#contractStartTime").prop("readonly", true); $("#contractEndTime").prop("readonly", true); $("#projectManagerIdCardNum").prop("readonly", true); $("#fatureTags").prop("readonly", true); $("#approachDate").prop("readonly", true); $("#contractWarranty").prop("readonly", true); $("#startTime").prop("readonly", true); $("#endTime").prop("readonly", true); $("#proLeaderPhone").prop("readonly", true); $("#safetyOfficerPhone").prop("readonly", true); $("#startTime").prop("disabled", "disabled"); $("#endTime").prop("disabled", "disabled"); $("#payDate").prop("disabled", "disabled"); $("#contractSigningDate").prop("disabled", "disabled"); $("#contractStartTime").prop("disabled", "disabled"); $("#contractEndTime").prop("disabled", "disabled"); $("#approachDate").prop("disabled", "disabled"); $("#contractWarranty").prop("disabled", "disabled"); $("#gsId").prop("disabled", true); $("#fgsId").prop("disabled", true); $("#companyId").prop("disabled", true); } /** * 获取当日时间 */ function getNowTime() { var nowDate = new Date(); var year = nowDate.getFullYear(); var month = nowDate.getMonth() + 1 < 10 ? "0" + (nowDate.getMonth() + 1) : nowDate.getMonth() + 1; var day = nowDate.getDate() < 10 ? "0" + nowDate.getDate() : nowDate.getDate(); var dateStr = year + "-" + month + "-" + day; return dateStr; } function reloading() { var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引 parent.layer.close(index); //再执行关闭 window.parent.location.reload(); } function getPayDate(value) { var num = mGetDate(); $("#payDate").empty(); var str = ''; // str += ''; for (var i = 1; i <= num; i++) { if (value == i) { str += ''; } else { str += ''; } } $("#payDate").append(str); // layui.form.render('select'); //这里就是我们要渲染的地方了 } // 获取当前月的天数 function mGetDate() { var date = new Date(); var year = date.getFullYear(); var month = date.getMonth() + 1; var d = new Date(year, month, 0); return d.getDate(); } //获取电压等级 function getLevel(voltageLevelId) { $("#voltageLevel").empty(); $.ajax({ type: 'POST', url: ctxPath + '/project/getPowerLevel', dataType: 'json', success: function (data) { var str = ''; if (data.length > 0) { for (var i = 0; i < data.length; i++) { if (voltageLevelId == data[i].id) { str += ''; } else { str += ''; } } } $("#voltageLevel").append(str); // layui.form.render('select'); //这里就是我们要渲染的地方了 } }) } /** * 获取工资账户所属银行 * */ function getBankAccount(bankAccountId) { $("#bankAccount").empty(); $.ajax({ type: 'POST', url: ctxPath + '/project/getBankAccount', dataType: 'json', success: function (data) { var str = ''; if (data.length > 0) { for (var i = 0; i < data.length; i++) { if (bankAccountId == data[i].id) { str += ''; } else { str += ''; } } } $("#bankAccount").append(str); // layui.form.render('select'); //这里就是我们要渲染的地方了 } }) } function loadCompanyInfo(n, c) { //分公司工程联动 var orgId = n; } //表单验证 function formValidation() { $("#orgId").blur(function () {//项目部 var orgId = $(this).val(); if (orgId == '' || orgId == null) { layer.msg('请选择项目部'); return false; } }); $("#name").blur(function () {//工程名称 var name = $(this).val(); if (name == '' || name == null) { layer.msg('请输入工程名称'); return false; } }); $("#abbreviation").blur(function () {//工程简称 var abbreviation = $(this).val(); if (abbreviation == '' || abbreviation == null) { layer.msg('请输入工程简称'); return false; } }); $("#proType").blur(function () {//工程类型 var proType = $(this).val(); if (proType == '' || proType == null) { layer.msg('请输入工程类型'); return false; } }); $("#status").blur(function () {//工程状态 var status = $(this).val(); if (status == '-1' || status == -1) { layer.msg('请选择工程状态'); return false; } }); $("#powerGrid").focus(function () {//所属电网 var powerGrid = $(this).val(); if (powerGrid == '-1' || powerGrid == -1) { layer.msg('请输入所属电网'); return false; } }); $("#origin").blur(function () {//工程地址 var origin = $(this).val(); if (origin == '' || origin == null) { layer.msg('请输入工程地址'); return false; } }); $("#lon").blur(function () {//经度 var lon = $(this).val(); if (lon == '' || lon == null) { layer.msg('请输入经度'); return false; } }); $("#lat").blur(function () {//维度 var lat = $(this).val(); if (lat == '' || lat == null) { layer.msg('请输入维度'); return false; } }); $("#contractPrice").blur(function () {//签约合同价(万元) var contractPrice = $(this).val(); if (contractPrice == '' || contractPrice == null) { layer.msg('请输入签约合同价'); return false; } }); $("#registerAddressCode").blur(function () {//项目所在地 var registerAddressCode = $(this).val(); if (registerAddressCode == '' || registerAddressCode == null) { layer.msg('请输入项目所在地'); return false; } }); $("#isInsurance").blur(function () {//工程是否购买工商保险 var isInsurance = $(this).val(); if (isInsurance == '' || isInsurance == null) { layer.msg('请选择工程是否购买工商保险'); return false; } }); $("#paymentType").blur(function () {//项目保障金类型 var paymentType = $(this).val(); if (paymentType == '' || paymentType == null) { layer.msg('请选择项目保障金类型'); return false; } }); $("#payDate").blur(function () {//发薪日期 var payDate = $(this).val(); if (payDate == '-1' || payDate == -1) { layer.msg('请选择发薪日期'); return false; } }); $("#labourSpecialName").blur(function () {//劳资专管员姓名 var labourSpecialName = $(this).val(); if (labourSpecialName == '' || payDate == null) { layer.msg('请输入劳资专管员姓名'); return false; } }); $("#labourSpecialPhone").blur(function () {//劳资专管员电话 var labourSpecialPhone = $(this).val(); if (labourSpecialPhone == '' || labourSpecialPhone == null) { layer.msg('请输入劳资专管员电话'); return false; } }); $("#labourSpecialIdCard").blur(function () {//劳资专管员身份证号码 var labourSpecialIdCard = $(this).val(); if (labourSpecialIdCard == '' || labourSpecialIdCard == null) { layer.msg('请输入劳资专管员身份证号码'); return false; } }); $("#projectManager").blur(function () {//参建单位项目经理姓名 var projectManager = $(this).val(); if (projectManager == '' || projectManager == null) { layer.msg('请输入参建单位项目经理姓名'); return false; } }); $("#phone").blur(function () {//参建单位项目经理电话 var phone = $(this).val(); if (phone == '' || phone == null) { layer.msg('请输入参建单位项目经理电话'); return false; } }); $("#managerNumber").blur(function () {//参建单位项目经理证件号码 var managerNumber = $(this).val(); if (managerNumber == '' || managerNumber == null) { layer.msg('请输入参建单位项目经理证件号码'); return false; } }); $("#proLeader").blur(function () {//负责人联系人姓名 var proLeader = $(this).val(); if (proLeader == '' || proLeader == null) { layer.msg('请输入负责人联系人姓名'); return false; } }); $("#specialBankType").blur(function () {//专户类型 var specialBankType = $(this).val(); if (specialBankType == '-1' || specialBankType == -1) { layer.msg('请选择专户类型'); return false; } }); $("#specialBankType").blur(function () {//开户类型 var specialBankType = $(this).val(); if (specialBankType == '-1' || specialBankType == -1) { layer.msg('请选择开户类型'); return false; } }); $("#proLeaderPhone").blur(function () {//负责人联系人电话 var proLeaderPhone = $(this).val(); if (proLeaderPhone == '' || proLeaderPhone == null) { layer.msg('请输入负责人联系人电话'); return false; } }); $("#openBankNumber").blur(function () {//开户账号 var openBankNumber = $(this).val(); if (openBankNumber == '' || openBankNumber == null) { layer.msg('请输入开户账号'); return false; } }); $("#bankName").blur(function () {//开户银行支行名称 var bankName = $(this).val(); if (bankName == '' || bankName == null) { layer.msg('请输入开户银行支行名称'); return false; } }); $("#payWay").blur(function () {//工资发放渠道 var payWay = $(this).val(); if (payWay == '-1' || payWay == -1) { layer.msg('请选择工资发放渠道'); return false; } }); $("#accountBalance").blur(function () {//账户余额 var accountBalance = $(this).val(); if (accountBalance == null || accountBalance == '') { layer.msg('请输入账户余额'); return false; } }); $("#accountBalance").blur(function () {//账户余额 var accountBalance = $(this).val(); if (accountBalance < 0) { layer.msg('请输入正确的账户余额'); return false; } }); $("#securityPayments").blur(function () {//账户余额 var securityPayments = $(this).val(); if (securityPayments == null || securityPayments == '') { layer.msg('请输入项目保障金预存金额,最低5万,单位为万元'); return false; } }); } function selectCheck() { } function initTrees() { $.ajax({ type: 'POST', headers : { "token" : token }, url: ctxPath + '/org/getCompanyTreeList', data: {}, dataType: 'json', success: function (data) { $.fn.zTree.init($("#orgTree"),{ view:{ dblClickExpand:false, selectedMulti:false, nameIsHTML:true }, data:{ simpleData:{ enable: true } }, callback:{ onClick:clickRoles } }, data.obj); }, error: function (e) { console.log(e.resMsg); }, }); } function clickRoles(e, treeId, treeNode) { // var check = (treeNode && !treeNode.isParent); //设置父节点不能被选择 if (treeNode.children) { layer.msg('请选择组织管理中的最后一级'); }else{ var check = (treeNode); if(check){ var zTree = $.fn.zTree.getZTreeObj("orgTree"), nodes = zTree.getSelectedNodes(),v ="",n ="",o="",p="",c=""; for (var i=0, l=nodes.length; i 0 ) v = v.substring(0, v.length-1); if (n.length > 0 ) n = n.substring(0, n.length-1); if (o.length > 0 ) o = o.substring(0, o.length-1); if (p.length > 0 ) p = p.substring(0, p.length-1); if (c.length > 0 ) c = c.substring(0, c.length-1); $("#orgName").val(p); $("#companyId").val(c); $("#auForm input[name$='orgId']").prop("value",n); hideRole(n,c); } } } function lookAttachment(url) { localStorage.setItem("idNumber", ""); localStorage.setItem("url", url); localStorage.setItem("downloadFileName", "项目保障金附件"); layer.open({ title: false, type: 2, content: '../../../pages/work/person/templateManage/contractView.html', area: ['80%', '95%'], maxmin: false, success:function(layero,index){ var iframeWin = window[layero.find('iframe')[0]['name']];//获得iframe页的窗口对象,执行iframe页的方法: iframeWin.setParamPro(url);//调用子页面的方法,页面锁定 $(window).resize(function () { if (autoResizeWidth) autoResizeWidth(index); if (autoResizeHeight) autoResizeHeight(index); }) }, }); } function getValue(url) { //获取最后一个/的位置 var site = url.lastIndexOf("\/"); //截取最后一个/后的值 return url.substring(site + 1, url.length); } function dataURLtoFile(dataurl, filename) {//将base64转换为文件 var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n); while(n--){ u8arr[n] = bstr.charCodeAt(n); } return new File([u8arr], filename, {type:mime}); } // 对图片进行压缩 function compress(init) { if (files[init].size > 100 * 1024) { let reader = new FileReader(); var b = Math.sqrt(Math.sqrt(files[init].size/ 100 / 1024)); reader.readAsDataURL(files[init]); reader.onload = function (e) { let image = new Image() //新建一个img标签(还没嵌入DOM节点) image.src = e.target.result image.onload = function () { let canvas = document.createElement('canvas'), context = canvas.getContext('2d'), imageWidth = image.width / b, //压缩后图片的大小 imageHeight = image.height / b, data = '' canvas.width = imageWidth canvas.height = imageHeight context.drawImage(image, 0, 0, imageWidth, imageHeight); data = canvas.toDataURL(files[init].type); files[init]=dataURLtoFile(data, files[init].name) } } } }