let loadingMsg;
var form;
var beanArr = [];
var urls="";
var ysurls="";
var gtIds="";
var gtNames="";
var nums = 0;
layui.use(['upload','laydate','form'], function () {
var upload = layui.upload;
var element = layui.element;
var $ = layui.$;
form = layui.form;
var laydate = layui.laydate;
initProList();
laydate.render({
elem: '#dataTime',
min:firstDayStr(),
max:lastDayStr()
});
// 制作多文件上传表格
var uploadListIns = upload.render({
elem: '#ID-upload-demo-files',
elemList: $('#ID-upload-demo-files-list'), // 列表元素对象
url: FILE_URL + "/file/uploadmake" , // 实际使用时改成您自己的上传接口即可。
multiple: true, //是否允许多文件上传,默认未false
dataType: "json",
accept:"file",
// exts: 'jpg|png|jpeg|txt|pdf|xlsx|xls|docx|doc|ppt|pptx|mp4|avi|flv',
//'avi','mpg','wmv','3gp','mov','asf','asx','flv','mkv'
// exts: 'jpg|png',
number: 10, //最大上传数量
auto: false, //是否自动上传 ,默认为true
// size: 1024 * 30, //最大文件大小,单位k
bindAction: '#hideUpload',
choose: function(obj){
console.log(obj)
var that = this;
var files = this.files = obj.pushFile(); // 将每次选择的文件追加到文件队列
var startWorkFiles = obj.pushFile();
// 读取本地文件
obj.preview(function(index, file, result){
var fileExtension = file.name.split('.').pop().toLowerCase();
// 检查文件是否为支持的格式
if("jpg|png".indexOf(fileExtension) == -1){
delete startWorkFiles[index]; //清空对应的文件
layer.msg('文件格式不支持', {time: 2000, icon: 5});
// 阻止文件上传
return false;
}
var tr = $(['
',
'| '+ file.name +' | ',
''+ (file.size/1024).toFixed(1) +'kb | ',
' | ',
'',
'',
'',
' | ',
'
'].join(''));
nums++;
// 单个重传
tr.find('.demo-reload').on('click', function(){
obj.upload(index, file);
});
// 删除
tr.find('.demo-delete').on('click', function(){
//双击删除指定预上传图片
delete files[index]; // 删除对应的文件
tr.remove(); // 删除表格行
// 清空 input file 值,以免删除后出现同名文件不可选
uploadListIns.config.elem.next()[0].value = '';
nums --;
});
that.elemList.append(tr);
element.render('progress'); // 渲染新加的进度条组件
});
},
before: function (obj) {
urls="";
ysurls="";
gtIds="";
gtNames="";
this.data = {
uploadType:"1",photoType:"hxy",proId:$("#proId").val()
};
},
done: function(res, index, upload){ // 成功的回调
console.log("resresresres:", res);
if(res.data.isSuccess==1){
var json = {
// "companyId": $("#companyId").val()
}
beanArr.push(json);
var that = this;
// if(res.code == 0){ // 上传成功
var tr = that.elemList.find('tr#upload-'+ index)
var tds = tr.children();
tds.eq(3).html(''); // 清空操作
delete this.files[index]; // 删除文件队列已经上传成功的文件
urls=urls+res.data.url+",";
ysurls=ysurls+res.data.ysUrl+",";
gtIds=gtIds+res.data.gtId+",";
gtNames=gtNames+res.data.gtName+",";
}
// this.error(index, upload);
},
allDone: function(obj){ // 多文件上传完毕后的状态回调
insertBatch();
var iframeWindow = parent.window['layui-layer-iframe' + localStorage.getItem("resultindex")];
iframeWindow.reloadData();
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index);
},
// error: function(index, upload){ // 错误回调
// var that = this;
// var tr = that.elemList.find('tr#upload-'+ index);
// var tds = tr.children();
// // 显示重传
// // tds.eq(3).find('.demo-reload').removeClass('layui-hide');
// },
progress: function(n, elem, e, index){ // 注意:index 参数为 layui 2.6.6 新增
element.progress('progress-demo-'+ index, n + '%'); // 执行进度条。n 即为返回的进度百分比
}
});
form.on('submit(formDemo)', function (data) {
if($("#proId").val()==""||$("#dataTime").val()==""){
layer.msg("请选择完善信息!")
return;
}
if(nums<1){
layer.msg("请选择上传文件!")
return;
}
loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']}); //④创建一个formData对象
$("#hideUpload").trigger("click");
});
});
function firstDayStr(){
var today = new Date();
var thisMonth = today.getMonth(); // 获取当前月份(从0开始)
var year = today.getFullYear(); // 获取当前年份
// 当月的第一天
var firstDay = new Date(year, thisMonth, 2);
var firstDayString = firstDay.toISOString().slice(0, 10); // 转换为YYYY-MM-DD格式
// 当月的最后一天
var lastDay = new Date(year, thisMonth + 1, 1);
var lastDayString = lastDay.toISOString().slice(0, 10); // 转换为YYYY-MM-DD格式
console.log("First day of this month: " + firstDayString);
console.log("Last day of this month: " + lastDayString);
return firstDayString;
}
function lastDayStr(){
var today = new Date();
var thisMonth = today.getMonth(); // 获取当前月份(从0开始)
var year = today.getFullYear(); // 获取当前年份
// 当月的第一天
var firstDay = new Date(year, thisMonth, 2);
var firstDayString = firstDay.toISOString().slice(0, 10); // 转换为YYYY-MM-DD格式
// 当月的最后一天
var lastDay = new Date();
var lastDayString = lastDay.toISOString().slice(0, 10); // 转换为YYYY-MM-DD格式
console.log("First day of this month: " + firstDayString);
console.log("Last day of this month: " + lastDayString);
return lastDayString;
}
function initProList(){
$.ajax({//id获取详情打开弹窗传值子页面
type: 'post',
url: PATH_URL + "/makeInfo/getProList",
dataType: 'json',
async:false,
data: {
userId:localStorage.getItem("resultUserId")
},
success: function (res) {
console.log(res,"getProList");
$("#proId").empty();
var html="";
for(var i=0;i"+ res.data[i].proName +"";
}
$("#proId").append(html);
form.render();
},
error:function(e){
}
})
}
function insertBatch(){
if(urls.length == 0){
layer.msg('请上传文件', {icon: 2});
return;
}
$.ajax({
type:"post",
url : PATH_URL + "/makeInfo/insertBatchMakeGt",
async:false,
data:{
gtId: gtIds,
gtName:gtNames,
userId:localStorage.getItem("resultUserId"),
makeMonth:localStorage.getItem("resultMakeMonth"),
proId:localStorage.getItem("resultProId"),
makeTime:$("#dataTime").val(),
sFilePath:ysurls,
filePath:urls,
makeType:0,
numTimes:$("#numTimes").val()
},
dataType:"json",
success:function(res){
layer.close(loadingMsg);
console.log(res,"res")
if(res.code==500){
parent.layer.msg(res.msg)
return;
}
},
error:function(data){
}
});
}
function reloading() {
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
// window.parent.location.reload();
}