var proId ;
var CODE_1 = 0;
var CODE_2 = 2;
$(function () {
layui.use(['form', 'laydate','upload'], function () {
var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
var laydate = layui.laydate;
var upload1 = layui.upload;
var upload2 = layui.upload;
form.render();
form.verify({
lineLength: [/^((0\.\d*[1-9]+\d*)|([1-9]*[1-9][0-9]*)|([1-9]*[1-9][0-9]*\.[0-9]+)|(0))$/, '请正确输入线路长度'],
contractPrice: [/^((0\.\d*[1-9]+\d*)|([1-9]*[1-9][0-9]*)|([1-9]*[1-9][0-9]*\.[0-9]+)|(0))$/, '请正确输入签约价格'],
securityPayments: [/^((0\.\d*[1-9]+\d*)|([1-9]*[1-9][0-9]*)|([1-9]*[1-9][0-9]*\.[0-9]+)|(0))$/, '请正确输入项目保障金预存额'],
// voltageLevel: [/^((±[1-9]*[1-9][0-9]*)|([1-9]*[1-9][0-9]*))$/, '请正确输入电压'],
labourSpecialPhone: [/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/, '请正确输入劳资专管员电话'],
linkPersonPhone: [/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/, '请正确输入联系人电话'],
phone: [/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/, '请正确输入参建单位项目经理电话'],
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]$/, '请正确输入劳资专管员身份证'],
projectManagerIdCardNum: [/^[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]$/, '请正确输入参建单位项目经理证件号码'],
orgName: [/^(?!-1).*$/, '请选择公司名称'],
voltageLevel: [/^(?!-1).*$/, '请选择电压等级'],
bankAccount: [/^(?!-1).*$/, '请选择工资账户所属银行'],
openBankNumber: [/^([1-9]{1})(\d{11}|\d{15}|\d{16}|\d{17}|\d{18})$/,"请正确输入开户账号"]
});
getOrg(form);
//多图片上传
var uploadcom1 =upload1.render({
elem: '#test1',
url: smz_ht_url + '/project/uploadFile', //改成您自己的上传接口
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;
var suffixType = ''; //后缀类型
uploadcom1.config.elem.next()[0].value = '';
files = obj.pushFile();
obj.preview1(function (index, file, result) {
console.log(index); //得到文件索引
console.log(file.name); //得到文件对象
$('#demo1').append('');
$('#' + index).bind('dblclick', function () {//双击删除指定预上传图片
delete files[index];//删除指定图片
$(this).remove();
});
var imgNum = $("#demo1 img").length;
$("#test1").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) {
parent.layer.alert('保存成功', {icon: 1});
setTimeout("reloading()", 2100);
},
error: function (e) {
//请求异常回调
console.log(e)
}
});
var uploadcom2 =upload2.render({
elem: '#test2',
url: smz_ht_url + '/project/savePayment', //改成您自己的上传接口
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: 'file', //传到后台的字段名,默认file
choose: function (obj) {
CODE_2 = 3;
var suffixType = ''; //后缀类型
uploadcom2.config.elem.next()[0].value = '';
files = obj.pushFile();
obj.preview2(function (index, file, result) {
console.log(index); //得到文件索引
console.log(file.name); //得到文件对象
$('#demo2').append('
');
$('#' + 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: "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) {
parent.layer.alert('保存成功', {icon: 1});
setTimeout("reloading()", 2100);
},
error: function (e) {
//请求异常回调
console.log(e)
}
});
// 验证成功后才会执行下面的操作
form.on('submit(formDemo)', function (data) {
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("");
}
}
}
}
});
// select 监听
form.on('select(province)', function (data) {
getOrigins(data.value, null);
// form.render('select');//select是固定写法 不是选择器
});
formValidation();
});
});
//新增工程
function addProject(formData) {
// form请求地址
if (CODE_1 == 0){
parent.layer.msg("请上传项目保障金附件", {icon: 2, time: 2000});
}else {
if (CODE_2 == 2) {
parent.layer.msg("请上传维权告示牌附件", {icon: 2, time: 2000});
} else {
var formUrl = smz_ht_url + "/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 == "保存成功") {
$("#hideUpload1").trigger("click");
$("#hideUpload2").trigger("click");
reloading();
top.layer.msg('保存成功', {icon: 1, time: 2000});
} else if (data.resMsg == "保存失败") {
parent.layer.msg('保存失败', {icon: 2, time: 2000});
} else {
parent.layer.msg(data.resMsg, {icon: 2, time: 2000});
}
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
}
}
}
//修改工程
function updateProject(formData) {
// form请求地址
var formUrl = smz_ht_url + "/project/updateProject";
$.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) {
if (data.resMsg == "保存成功") {
reloading();
top.layer.msg('保存成功', {icon: 1, time: 2000});
} else if (data.resMsg == "保存失败") {
parent.layer.msg('保存失败', {icon: 2, time: 2000});
} else {
parent.layer.msg(data.resMsg, {icon: 2, time: 2000});
}
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
}
/**
* 获取分公司
* */
function getCompanys(orgId) {
$("#orgId").empty();
$.ajax({
type: 'POST',
url: smz_ht_url + '/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: smz_ht_url + '/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); // 赋值分公司
$("#name").val(data.name); // 工程名称
$("#abbreviation").val(data.abbreviation); // 工程简称
$("#proType").val(data.proType);// 工程类型
$("#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); // 签约价格
$("#isRegistered").find('option[value=\'' + data.isRegistered + '\']').prop("selected", "selected");// 是否备案
$("#registerAddressCode").val(data.registerAddressCode); // 行政区编码
$("#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");// 开户类型
$("#accountName").val(data.accountName);// 开户名称
$("#openBankNumber").val(data.openBankNumber);// 开户账号
$("#bankName").val(data.bankName);// 开户银行支行名称
$("#payWay").find('option[value=\'' + data.payWay + '\']').prop("selected", "selected");// 工资发放渠道
$("#accountBalance").val(data.accountBalance);// 账户余额
// $("#paymentFile").val(data.paymentFile); // 项目保障金附件
securityMaymentsFileId = data.securityMaymentsFileId;
var securityMaymentsFilePaths = data.securityMaymentsFilePaths;
if (securityMaymentsFilePaths != '') {
var demo1 = $("#demo1");
var html = '';
var photos = securityMaymentsFilePaths.split(',');
var fileType = data.fileType.split(",");
for (var i = 0; i < photos.length; i++) {
var path = '';
var fileName = getValue(photos[i]);
if (photos[i].indexOf("http") != -1) {
path = photos[i];
} else {
path = smz_ht_url +"/" + photos[i];
}
var j = i+1;
if(fileType[i] == "0"){
html += '