var num = 0;
var nosignalTeamApplyId;
var boardFileId = '';
$(function () {
layui.use(['form', 'laydate', 'upload'], function () {
var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
var laydate = layui.laydate;
var upload = layui.upload;
form.render();
form.verify();
form.on('select(subId)', function (data) {
getPro(data.value,"");
getTeam(data.value,"");
});
var uploadcom = upload.render({
elem: '#test2',
url: ctxPath + '/noSignalTeamApply/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: 6, //最大上传数量
size: 1024 * 5, //最大文件大小,单位k
bindAction: '#hideUpload', //绑定的按钮
field: 'projectInsuranceFile', //传到后台的字段名,默认file
choose: function (obj) {
var suffixType = ''; //后缀类型
uploadcom.config.elem.next()[0].value = '';
files = obj.pushFile();
obj.preview(function (index, file, result) {
console.log(index); //得到文件索引
console.log(file.name); //得到文件对象
var number = $('.layui-upload-img').length;
if(number>=6){
layer.msg("最多只允许上传6张", {time: 1000});
return delete files[index];
}
$('#demo').append('
');
$('#' + index).bind('dblclick', function () {//双击删除指定预上传图片
delete files[index];//删除指定图片
$(this).remove();
});
});
},
before: function (obj) {
this.data = {
id: nosignalTeamApplyId
};
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) {
top.layer.msg('文件保存成功', {icon: 1, time: 2000});
setTimeout("reloading()", 2100);
},
error: function (e) {
//请求异常回调
console.log(e)
},
progress:function (n, elem) {
alert("请联系管理员")
}
});
// 验证成功后才会执行下面的操作
form.on('submit(formDemo)', function (data) {
var id = $("#id").val();
if (id == '') {
addNoSignalTeamApply(data); // 新增无信号打卡
} else {
updateSubcontractor(data);
}
});
var minListDate = $('#hidMinListDate').val();//最小可选时间,例:1990-02-01
var maxListDate = $('#hidMaxListDate').val();//最大可选时间,例:2200-12-31
$('#startTime').val(getNowTime());
$('#stopTime').val(getNowTime());
var begin = "#startTime", end = "#stopTime";//开始时间选择框、结束时间选择框:文本框
var startDate = laydate.render({
elem: begin,
trigger: 'click',
max:maxListDate,//设置一个默认最大值
done: function(value, date) {
// 结束时间大于开始时间
endDate.config.min ={
year:date.year,
month:date.month-1, //关键
date: date.date,
hours: 0,
minutes: 0,
seconds : 0
};
}
});
var endDate = laydate.render({
elem: end,
min:minListDate,//设置min默认最小值
trigger: 'click',
done: function(value, date) {
// 开始时间小于结束时间
startDate.config.max={
year:date.year,
month:date.month-1,//关键
date: date.date,
hours: 0,
minutes: 0,
seconds : 0
}
}
});
});
});
//新增无信号打卡
function addNoSignalTeamApply(formData) {
if ($("#subId").val()=="-1"){
parent.layer.msg("请选择分包商", {icon: 2, time: 2000});
}else if($("#proId").val()=="-1"){
parent.layer.msg("请选择工程", {icon: 2, time: 2000});
}else if($("#teamId").val()=="-1"){
parent.layer.msg("请选择班组", {icon: 2, time: 2000});
}else if($("#demo").children().length == 0){
parent.layer.msg("请选择附件", {icon: 2, time: 2000});
}else if($("#demo").children().length >6){
parent.layer.msg("最多上传6张图片", {icon: 2, time: 2000});
}else if($("#remark").val() == ""){
parent.layer.msg("请填写备注描述", {icon: 2, time: 2000});
}else{
var formUrl = ctxPath + "/noSignalTeamApply/addNoSignalTeamApply";
$.ajax({
type: 'POST',
async: true, // 默认异步true,false表示同步
url: formUrl, // 请求地址
contentType: "application/json; charset=utf-8",
dataType: 'json', // 服务器返回数据类型
data: JSON.stringify(formData.field), //获取提交的表单字段
success: function (data) {
if (data.resMsg == "保存成功") {
nosignalTeamApplyId = data.obj;
$("#hideUpload").trigger("click");
setTimeout("reloading()", 2100);
} else if (data.resMsg == "保存失败") {
parent.layer.msg('保存失败', {icon: 2, time: 2000});
setTimeout("reloading()", 2100);
} else {
parent.layer.msg(data, {icon: 2, time: 2000});
setTimeout("reloading()", 2100);
}
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
}
}
//修改分包商
function updateSubcontractor(formData) {
if ($("#subId").val()=="-1"){
parent.layer.msg("请选择分包商", {icon: 2, time: 2000});
}else if($("#proId").val()=="-1"){
parent.layer.msg("请选择工程", {icon: 2, time: 2000});
}else if($("#teamId").val()=="-1"){
parent.layer.msg("请选择班组", {icon: 2, time: 2000});
}else if($("#demo").children().length == 0){
parent.layer.msg("请选择附件", {icon: 2, time: 2000});
}else if($("#demo").children().length >6){
parent.layer.msg("最多上传6张图片", {icon: 2, time: 2000});
}else if($("#remark").val() == ""){
parent.layer.msg("请填写备注描述", {icon: 2, time: 2000});
}else{
formData.field.fileId = boardFileId;
var formUrl = ctxPath + "/noSignalTeamApply/updNoSignalTeamApply";
$.ajax({
type: 'POST',
async: true, // 默认异步true,false表示同步
url: formUrl, // 请求地址
contentType: "application/json; charset=utf-8",
data: JSON.stringify(formData.field), //获取提交的表单字段
success: function (data) {
nosignalTeamApplyId = $("#id").val();
if (data.resMsg == "保存成功") {
var number = 0;
$("#demo").find("img").each(function () {
var newPhoto = $(this).attr("newPhoto");
if (newPhoto === undefined) {
number++;
}
})
if (number > 0) {
$("#hideUpload").trigger("click");
}
if(!number>0){
parent.layer.msg('修改成功', {icon: 1, time: 2000});
setTimeout("reloading()", 2100);
}
} else if (data.resMsg == "保存失败") {
parent.layer.msg('保存失败', {icon: 2, time: 2000});
} else {
parent.layer.msg(data, {icon: 2, time: 2000});
}
},
error: function (e) {
console.log("########");
console.log(e);
console.log("########");
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
}
}
// 表单赋值
function setData(data) {
$("#id").val(data[0].id);
getSub(data[0].subId);
getPro(data[0].subId,data[0].proId);
getTeam("",data[0].teamId);
$("#startTime").val(data[0].startTime);
$("#stopTime").val(data[0].stopTime);
$("#remark").val(data[0].remark);
var filePath = data[0].filePath;
if (filePath != "" && filePath != null && filePath != 'null') {
var demo = $("#demo");
var html = '';
var photoT = filePath.split(",");
var ids = data[0].fileId.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 += '
';
}
demo.append(html);
}
}
function delPhoto(id, photoId) {
$('#' + id).remove();
boardFileId += photoId + ',';
}
//设置弹窗关闭
function reloading() {
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
window.parent.example.ajax.reload( null, false ); // 刷新页面
}
/**
* 获得当前时间 yyyy-MM-dd
* @returns {string}
*/
function getNowTime() {
var time = new Date();
var year = time.getFullYear();
var month = time.getMonth() + 1 >= 10 ? time.getMonth() + 1 : '0' + (time.getMonth() + 1);
var day = time.getDate() >= 10 ? time.getDate() : '0' + time.getDate();
return year + "-" + month + "-" + day;
}
/**
* 获取当月第一天
* @returns {string}
*/
function getCurrentMonthFirst() {
var date = new Date();
date.setDate(1);
var year = date.getFullYear();
var month = date.getMonth() + 1 > 10 ? date.getMonth() + 1 : '0' + (date.getMonth() + 1);
var day = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
return year + "-" + month + "-" + day;
}
function getSub(subId) {
$("#subId").empty();
$.ajax({
type: 'POST',
url: ctxPath + '/noSignalTeamApply/getSub',
data: {},
dataType: 'json',
success: function (data) {
if(data.length>0){
var str = '';
for(var i = 0; i < data.length; i++) {
if(subId == data[i].id) {
str += '';
} else {
str += '';
}
}
$("#subId").append(str);
layui.form.render('select'); //这里就是我们要渲染的地方了
}
}
})
}
function getPro(subId,proId) {
$("#proId").empty();
$.ajax({
type: 'POST',
url: ctxPath + '/noSignalTeamApply/getPro',
data: {subId:subId},
dataType: 'json',
success: function (data) {
if(data.length>0){
var str = '';
for(var i = 0; i < data.length; i++) {
if(proId == data[i].id) {
str += '';
} else {
str += '';
}
}
$("#proId").append(str);
layui.form.render('select'); //这里就是我们要渲染的地方了
}else{
var str = '';
$("#proId").append(str);
layui.form.render('select'); //这里就是我们要渲染的地方了
}
}
})
}
function getTeam(subId,teamId) {
$("#teamId").empty();
$.ajax({
type: 'POST',
url: ctxPath + '/noSignalTeamApply/getTeam',
data: {
subId: subId,
teamId: teamId
},
dataType: 'json',
success: function (data) {
if(data.length>0){
var str = '';
for(var i = 0; i < data.length; i++) {
if(teamId == data[i].id) {
str += '';
} else {
str += '';
}
}
$("#teamId").append(str);
layui.form.render('select'); //这里就是我们要渲染的地方了
}else{
var str = '';
$("#teamId").append(str);
layui.form.render('select'); //这里就是我们要渲染的地方了
}
}
})
}