hn_cloud_web/smz-web/js/work/basic/ProManagerFormView.js

1307 lines
51 KiB
JavaScript
Raw Normal View History

2025-11-27 16:55:35 +08:00
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;
2025-12-05 15:39:43 +08:00
var token = localStorage.getItem("smz-token");
2025-11-27 16:55:35 +08:00
$(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('<img src="' + result + '" id="' + index + '" alt="' + file.name + '" style="height: 80px;width: 80px;margin-right: 10px" class="layui-upload-img ">');
$('#' + 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('<img src="' + result + '" id="' + index + '" alt="' + file.name + '" style="height: 80px;width: 80px;margin-right: 10px" class="layui-upload-img ">');
$('#' + 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 += '<option value=\'' + data[i].id + '\' selected>' + data[i].registerAddressCode + '</option>';
}else{
html += '<option value=\'' + data[i].id + '\'>' + data[i].registerAddressCode + '</option>';
}
}
$("#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 = '<option selected value="-1">请选择公司</option>';
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
if (orgId == data[i].id) {
str += '<option selected value=\'' + data[i].id + '\'>' + data[i].name + '</option>';
} else {
str += '<option value=\'' + data[i].id + '\'>' + data[i].name + '</option>';
}
}
}
$("#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 = '<option selected value="-1">请选择工程</option>';
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
str += '<option value=\'' + data[i].id + '\'>' + data[i].name + '</option>';
}
}
$("#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 += '<div onclick="lookAttachment(\'' + path + '\')""><font size="5" color="red">PDF'+j+'文件(点击预览)</font></div>';
}else if(fileType[i] == "1"){
html += '<img src="' + path + '" securityMaymentsFileId="' + i + '" name="' + photos[i] + '" ondblclick="delPhoto(\'' + i + '\')" style="height: 80px;width: 80px;margin-right: 10px" class="layui-upload-img ">';
}
}
$('#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 += '<img newPhoto="1" src="' + path + '" BoardFileId="' + j + '" name="' + photoT[j] + '" ondblclick="delPhoto(\'' + j + 'BoardFile\',\'' + BoardFileIds[j] + '\')" id="' + j + 'BoardFile" style="height: 80px;width: 80px;margin-right: 10px" class="layui-upload-img ">';
}
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 += '<option selected value=\'' + data[i].proId + '\'>' + data[i].proName + '</option>';
} else {
str += '<option value=\'' + data[i].proId + '\'>' + data[i].proName + '</option>';
}
}
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 += '<option selected value=\'' + data[i].proId + '\'>' + data[i].proName + '</option>';
} else {
str += '<option value=\'' + data[i].proId + '\'>' + data[i].proName + '</option>';
}
}
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 += '<option selected value=\'' + data[i].proId + '\'>' + data[i].proName + '</option>';
} else {
str += '<option value=\'' + data[i].proId + '\'>' + data[i].proName + '</option>';
}
}
}
$("#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 += '<option selected value="-1">请选择</option>';
for (var i = 1; i <= num; i++) {
if (value == i) {
str += '<option selected value=\'' + i + '\'>' + i + '日</option>';
} else {
str += '<option value=\'' + i + '\'>' + i + '日</option>';
}
}
$("#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 = '<option selected value="-1">请选择电压等级</option>';
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
if (voltageLevelId == data[i].id) {
str += '<option selected value=\'' + data[i].name + '\'>' + data[i].name + '</option>';
} else {
str += '<option value=\'' + data[i].name + '\'>' + data[i].name + '</option>';
}
}
}
$("#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 = '<option selected value="-1">请选择账户所属银行</option>';
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
if (bankAccountId == data[i].id) {
str += '<option selected value=\'' + data[i].name + '\'>' + data[i].name + '</option>';
} else {
str += '<option value=\'' + data[i].name + '\'>' + data[i].name + '</option>';
}
}
}
$("#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<l; i++) {
v += nodes[i].name + ",";//获取name值
n += nodes[i].id + ",";//获取id值
o += nodes[i].other + ",";//获取自定义值
c += nodes[i].companyId + ",";
var pathNodes=nodes[i].getPath();
for(var y=0;y<pathNodes.length;y++){
p+=pathNodes[y].name+"/";//获取path/name值
}
}
if (v.length > 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)
}
}
}
}