HnRealNameBmwWeb/js/work/person/wagesManage/wagesInfoReceiptUploadList.js

305 lines
11 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var example = null;
var pers = null;
var form = null;
var token = localStorage.getItem("token");
layui.use(['layer', 'form', 'laydate'], function () {
var layer = layui.layer;
form = layui.form;
var laydate = layui.laydate;
laydate.render({
elem: '#monthTime',
type: 'month',
format: 'yyyy-MM',
});
$('#monthTime').val(getNowTime());
form.render();
form.verify();
getProject(form);
pers = checkPermission();
init();
$("#searchBt").click(function () {
example.ajax.reload();
});
form.on('select(proId)', function (data) {
getProSubInfo(data.value,form);
getSubTeamInfo('',form);
});
form.on('select(subId)', function (data) {
getSubTeamInfo(data.value,form);
});
});
function init() {
example =
$('#dt-table').DataTable({
"searching": false,
"processing": true, //加载数据时显示进度状态
"serverSide": true,
//表头固定
"fixedHeader": true,
"scrollX": "500px",
"scrollY": "650px",
"scrollCollapse": true,
"language": {
"url": ctxPath + "/js/plugin/datatables/Chinese.lang"
},
"ajax": {
"url": ctxPath + "/wagesInfoReceipt",
"type": "get",
"data": function (d) {
d.proId = $("#proId").val();
d.subId = $("#subId").val();
d.teamId = $("#teamId").val();
d.keyWord = $("#keyWord").val();
d.receiptFlage = $("#receiptFlage").val();
d.months = $("#monthTime").val();
},
"error": function (xhr, textStatus, errorThrown) {
var msg = xhr.responseText;
console.log(msg);
var response = JSON.parse(msg);
var code = response.code;
var message = response.message;
if (code == 400) {
layer.msg(message);
} else if (code == 401) {
localStorage.removeItem("token");
layer.msg("token过期请先登录", {shift: -1, time: 1000}, function () {
location.href = ctxPath + '/login.html';
});
} else if (code == 403) {
console.log("未授权:" + message);
layer.msg('未授权');
} else if (code == 500) {
console.log('系统错误:' + message);
}
}
},
"lengthMenu": [ [10, 20, 50], [10, 20, 50] ], // 设置每页显示数据量选项
"drawCallback": function() {
// alert( '表格重绘了' );
var thisDataTable = $('#dt-table').DataTable();
$(".pagination").append("<li>" +
"<a class='paginate_button' style='padding:4px;' href='#' tabindex='0'>到 <input style='margin:0px;width:40px;' id='changePage'> 页</a>" +
"<a class='paginate_button' style='margin-bottom:1px' href='#' tabindex='0' id='dataTable-btn'>确认</a></li>");
//点击按钮跳转指定页数
$('#dataTable-btn').click(function (e) {
if ($("#changePage").val() && $("#changePage").val() > 0) {
var redirectpage = $("#changePage").val() - 1;
} else {
var redirectpage = 0;
}
thisDataTable.page(redirectpage).draw( 'page' );
});
//敲击回车键跳转指定页数
$("#changePage").keypress(function (e) {
if(event.keyCode==13){
if ($("#changePage").val() && $("#changePage").val() > 0) {
var redirectpage = $("#changePage").val() - 1;
} else {
var redirectpage = 0;
}
thisDataTable.page(redirectpage).draw( 'page' );
}
});
},
"dom": "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-4 col-xs-4 hidden-xs'i><'col-xs-8 col-sm-8' p v>><'dt-table-length'l>",
"columns": [
{
width: '4%',
orderable: false,
data: function (row, type, set, meta) {
var c = meta.settings._iDisplayStart + meta.row + 1;
return c;
}
},
{"data": "proName","width":"5%"},
{"data": "subName","width":"5%"},
{"data": "teamName","width":"5%"},
{"data": "month","width":"5%","orderable": false,},
{"data": "","width":"5%","orderable": false,
"render":function(data,type,row){
var receiptFlage = row['receiptFlage'];
var html = '';
if(receiptFlage==0){
html +="<span style='color: red'>未上传</span>";
}else{
html +="已上传";
}
return html;
}
},
{
"data": "",
"width":"10%",
"defaultContent": "",
"orderable": false,
"render": function (data, type, row) {
var receiptFlage = row['receiptFlage'];
var month = row['month'];
var proId = row['proId'];
var subId = row['subId'];
var teamId = row['teamId'];
var html = '';
if(receiptFlage==0){
html += buttonUpload(month,proId,teamId,subId,"sys:wagesInfoReceipt:upload", pers);
}else{
html += buttonEdits(receiptFlage, "sys:wagesInfoReceipt:upload", pers);
html += buttonView(receiptFlage,"", pers);
}
return html;
}
}
],
"order": [[1, "desc"],[2, "desc"]] //在栏目列上显示排序功能
});
}
/**
* 详情按钮
* */
function view(receiptFlage) {
$.ajax({
type: 'POST',
contentType: "application/x-www-form-urlencoded",
url: ctxPath + '/wagesInfoReceipt/getById',
data: {"id": receiptFlage},
dataType: 'json',
success: function (data) {
console.log(data)
var height = '750px';
var width = '1650px';
var index = layer.open({
title: ['查看', 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'wagesInfoReceiptUploadEnclosure.html',
area: [width, height],
maxmin: false,
btn: ['关闭'],
success: function (layero, index) {
var myIframe = window[layero.find('iframe')[0]['name']];
var fnc = myIframe.setDataWagesInfoReceiptView(data); //aaa()为子页面的方法
var fnc = myIframe.setDisableWagesInfoReceipt(); //aaa()为子页面的方法
},
});
}
})
}
// 详情按钮
function buttonView(receiptFlage, permission, pers) {
if (permission != "") {
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='详情' onclick='view(\"" + receiptFlage + "\")'><i class='layui-icon'>&#xe63c;</i></button>");
return btn.prop("outerHTML");
}
// 编辑按钮
function buttonEdits(receiptFlage, permission, pers) {
if (permission != "") {
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='编辑' onclick='edit(\"" + receiptFlage + "\")'><i class='layui-icon'>&#xe642;</i></button>");
return btn.prop("outerHTML");
}
/**
* 编辑页面
*/
function edit(id) {
localStorage.setItem("id",id);
localStorage.setItem("month","");
localStorage.setItem("proId","");
localStorage.setItem("teamId","");
localStorage.setItem("subId","");
$.ajax({
type: 'POST',
contentType: "application/x-www-form-urlencoded",
url: ctxPath + '/wagesInfoReceipt/getById',
data: {"id": id},
dataType: 'json',
success: function (data) {
var height = '750px';
var width = '1650px';
var index = layer.open({
title: ['修改', 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'wagesInfoReceiptUploadEnclosure.html',
area: [width, height],
btn: ['确定', '关闭'],
maxmin: false,
success: function (layero, index) {
var myIframe = window[layero.find('iframe')[0]['name']];
var fnc = myIframe.setDataWagesInfoReceipt(data); //aaa()为子页面的方法
},
yes: function (index, layero) {
// 获取弹出层中的form表单元素
var formSubmit = layer.getChildFrame('form', index);
var submited = formSubmit.find('button')[2];
submited.click();
example.ajax.reload(); // 刷新页面
},
});
}
})
}
// 上传按钮
function buttonUpload(month,proId,teamId,subId, permission, pers) {
if (permission != "") {
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='回执单上传' onclick='upload(\"" + month + "\",\"" + proId + "\",\"" + teamId + "\",\"" + subId + "\")'><i class='layui-icon'>&#xe62f;</i></button>");
return btn.prop("outerHTML");
}
function upload(month,proId,teamId,subId ) {
localStorage.setItem("id","新增");
localStorage.setItem("month",month);
localStorage.setItem("proId",proId);
localStorage.setItem("teamId",teamId);
localStorage.setItem("subId",subId);
var height = '750px';
var width = '1650px';
var index = layer.open({
title: ['回执单上传', 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'wagesInfoReceiptUploadEnclosure.html',
area: [width, height],
maxmin: false,
btn: ['确定','关闭'],
yes: function (index, layero) {
// 获取弹出层中的form表单元素
var formSubmit = layer.getChildFrame('form', index);
var submited = formSubmit.find('button')[2];
submited.click();
example.ajax.reload(); // 刷新页面
},
});
}
/**
* 获得当前时间 yyyy-MM
* @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);
return year + "-" + month ;
}