567 lines
23 KiB
JavaScript
567 lines
23 KiB
JavaScript
|
|
var example = null;
|
|||
|
|
var pers = null;
|
|||
|
|
var isSelected = [];
|
|||
|
|
|
|||
|
|
var year = localStorage.getItem("year");
|
|||
|
|
var month = localStorage.getItem("month");
|
|||
|
|
var proId = localStorage.getItem("proId");
|
|||
|
|
var proName = localStorage.getItem("proName");
|
|||
|
|
var teamId = localStorage.getItem("teamId");
|
|||
|
|
var teamName = localStorage.getItem("teamName");
|
|||
|
|
var seTime = localStorage.getItem("seTime");
|
|||
|
|
|
|||
|
|
var date = seTime.split("~");
|
|||
|
|
var startTime = date[0];
|
|||
|
|
var endTime = date[1];
|
|||
|
|
$(function () {
|
|||
|
|
layui.use(['layer', 'laydate', 'form'], function () {
|
|||
|
|
var layer = layui.layer;
|
|||
|
|
var laydate = layui.laydate;
|
|||
|
|
var form = layui.form;
|
|||
|
|
$("#proName").html(proName);
|
|||
|
|
$("#teamName").html(teamName);
|
|||
|
|
$("#year").html(year);
|
|||
|
|
$("#month").html(month);
|
|||
|
|
init();
|
|||
|
|
pers = checkPermission();
|
|||
|
|
$("#searchBt").click(function () {
|
|||
|
|
example.ajax.reload();
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
})
|
|||
|
|
function init() {
|
|||
|
|
example =
|
|||
|
|
$('#dt-table').DataTable({
|
|||
|
|
"sort": false,
|
|||
|
|
'paging':false,
|
|||
|
|
"searching": false,
|
|||
|
|
"processing": true, //加载数据时显示进度状态
|
|||
|
|
"serverSide": true,
|
|||
|
|
"language": {
|
|||
|
|
"url": ctxPath + "/js/plugin/datatables/Chinese.lang"
|
|||
|
|
},
|
|||
|
|
"ajax": {
|
|||
|
|
"url": ctxPath + "/wagesGrant/getWagesInfos",
|
|||
|
|
"type": "get",
|
|||
|
|
"data": function (d) {
|
|||
|
|
d.teamId = teamId;
|
|||
|
|
d.proId = proId;
|
|||
|
|
d.year = year;
|
|||
|
|
d.month = month;
|
|||
|
|
d.keyWord = $("#keyWord").val();
|
|||
|
|
d.startTime = startTime;
|
|||
|
|
d.endTime = endTime;
|
|||
|
|
},
|
|||
|
|
"error": function (xhr, textStatus, errorThrown) {
|
|||
|
|
var msg = xhr.responseText;
|
|||
|
|
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);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
"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>>",
|
|||
|
|
"columns": [
|
|||
|
|
//复选框(通过render渲染复选框)
|
|||
|
|
{
|
|||
|
|
width: '5%',
|
|||
|
|
"data": null,
|
|||
|
|
"bSortable": false,
|
|||
|
|
render: function (data, type, full, meta) {
|
|||
|
|
var node = '';
|
|||
|
|
for (var i = 0; i < isSelected.length; i++) {
|
|||
|
|
if (full.id == isSelected[i]) {
|
|||
|
|
full.isSelected = 1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
node = '<input class="checkall" name="checked" checked="checked" value=\"' + full.idNumber + '\" type="checkbox" disabled />';
|
|||
|
|
if (full.isSelected == 1) {
|
|||
|
|
isSelected.push(full.id);
|
|||
|
|
node = '<input class="checkall" name="checked" checked="checked" value=\"' + full.idNumber + '\" type="checkbox" disabled />';
|
|||
|
|
}
|
|||
|
|
return node;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
width: '5%',
|
|||
|
|
data: function (row, type, set, meta) {
|
|||
|
|
var c = meta.settings._iDisplayStart + meta.row + 1;
|
|||
|
|
return c;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{"data": "teamMembers",width: '8%', },
|
|||
|
|
{"data": "idNumber",width: '8%',},
|
|||
|
|
{"data": "postName",width: '8%',},
|
|||
|
|
|
|||
|
|
{"data": "unitPrice",width: '8%'},
|
|||
|
|
{"data": "checkNum",width: '8%'},
|
|||
|
|
{"data": "",width: '8%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var basePay = row['basePay'];
|
|||
|
|
if(basePay==null|| basePay=="null"){
|
|||
|
|
basePay=0;
|
|||
|
|
}
|
|||
|
|
var id = "dyxj"+ meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' style='text-align: center;border: 0px;width: 100%;' id='" + id + "' value='" + basePay + "' readonly />";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
{ //加班天数
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",width: '5%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var overtimeday = row['overtimeday'];
|
|||
|
|
if(overtimeday==null|| overtimeday=="null"){
|
|||
|
|
overtimeday=0;
|
|||
|
|
}
|
|||
|
|
var id = "jbts"+ meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' style='text-align: center;width: 100%;' id='" + id + "' value='" + overtimeday + "' onchange='getOvertimePay(this,\""+meta.row+"\")' onkeyup='clearNoNum(this)' />";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{ //单价
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",width: '5%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var unitOvertimePay = row['unitOvertimePay'];
|
|||
|
|
var id = "jbdj" + meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' style='text-align: center;width: 100%;' id='" + id + "' value='" + unitOvertimePay + "' onchange='getOvertimePays(this,\""+meta.row+"\")' onkeyup='clearNoNum(this)' />";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{ //小计
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",width: '5%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var overtimePay = row['overtimePay'];
|
|||
|
|
overtimePay = Number(overtimePay)
|
|||
|
|
overtimePay = overtimePay.toFixed(2);
|
|||
|
|
var id = "jbxj" + meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' id='" + id + "' value='" + overtimePay + "' readonly style='border: 0px;text-align: center;width: 100%;' />";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{ //绩效奖金 单价
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",width: '5%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var unitPerformanceFee = row['unitPerformanceFee'];
|
|||
|
|
var minAchievementsMoney = row['minAchievementsMoney'];
|
|||
|
|
if(minAchievementsMoney==null|| minAchievementsMoney=="null"){
|
|||
|
|
minAchievementsMoney=0;
|
|||
|
|
}else{
|
|||
|
|
minAchievementsMoney = minAchievementsMoney;
|
|||
|
|
}
|
|||
|
|
var maxAchievementsMoney = row['maxAchievementsMoney'];
|
|||
|
|
if(maxAchievementsMoney==null|| maxAchievementsMoney=="null"){
|
|||
|
|
maxAchievementsMoney=600;
|
|||
|
|
}else{
|
|||
|
|
maxAchievementsMoney = maxAchievementsMoney;
|
|||
|
|
}
|
|||
|
|
var id = "jxdj" + meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' style='text-align: center;width: 100%;' id='" + id + "' value='" + unitPerformanceFee + "' onchange='getNumAchievements(this,\""+meta.row+"\",\""+minAchievementsMoney+"\",\""+maxAchievementsMoney+"\")' onkeyup='clearNoNum(this)' />";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{ //考勤天数
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",width: '5%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var performanceDay = row['performanceDay'];
|
|||
|
|
var checknumTotal = row['checknumTotal'];
|
|||
|
|
if(checknumTotal==null|| checknumTotal=="null"){
|
|||
|
|
checknumTotal = 0;
|
|||
|
|
}
|
|||
|
|
var id = "jxts" + meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' style='text-align: center;width: 100%;' id='" + id + "' value='" + performanceDay + "' onchange='getNumst(this,\""+meta.row+"\",\""+checknumTotal+"\")' onkeyup='clearNoNum(this)' />";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{ //小计
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",width: '5%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var performanceFeePay = row['performanceFeePay'];
|
|||
|
|
performanceFeePay = Number(performanceFeePay)
|
|||
|
|
performanceFeePay = performanceFeePay.toFixed(2);
|
|||
|
|
var id = "jxxj" + meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' readonly id='" + id + "' value='" + performanceFeePay + "' style='text-align: center;border: 0px;width: 100%;'/>";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{ //报酬小计
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",width: '5%',
|
|||
|
|
"orderable": false,
|
|||
|
|
"render": function (data, type, row,meta) {
|
|||
|
|
var payNum = row['payNum'];
|
|||
|
|
if(payNum==null||payNum=="null"){
|
|||
|
|
payNum=0;
|
|||
|
|
}
|
|||
|
|
payNum = Number(payNum)
|
|||
|
|
payNum = payNum.toFixed(2);
|
|||
|
|
var id = "bcxj" + meta.row ;
|
|||
|
|
var html = '';
|
|||
|
|
html += "<input type='text' maxlength='8' id='" + id + "' value='" + payNum + "' readonly style='text-align: center;border: 0px;width: 100%;' />";
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{"data": "performanceCount",width: '8%'},
|
|||
|
|
{"data": "autograph",width: '8%'},
|
|||
|
|
|
|||
|
|
],
|
|||
|
|
|
|||
|
|
footerCallback: function (row, data, start, end, display) {
|
|||
|
|
var api = this.api(), data;
|
|||
|
|
var intVal = function (i) {
|
|||
|
|
return typeof i === 'string' ?
|
|||
|
|
i.replace(/[\$,]/g, '') * 1 :
|
|||
|
|
typeof i === 'number' ? i : 0;
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
total();
|
|||
|
|
},
|
|||
|
|
"order": [ [1, "asc"]] //在栏目列上显示排序功能
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function clearNoNum(obj){
|
|||
|
|
//修复第一个字符是小数点 的情况.
|
|||
|
|
if(obj.value !=''&& obj.value.substr(0,1) == '.'){
|
|||
|
|
obj.value="";
|
|||
|
|
}
|
|||
|
|
obj.value = obj.value.replace(/^0*(0\.|[1-9])/, '$1');//解决 粘贴不生效
|
|||
|
|
obj.value = obj.value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符
|
|||
|
|
obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的
|
|||
|
|
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
|
|||
|
|
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');//只能输入二位个小数
|
|||
|
|
if(obj.value.indexOf(".")< 0 && obj.value !=""){//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
|
|||
|
|
if(obj.value.substr(0,1) == '0' && obj.value.length == 2){
|
|||
|
|
obj.value= obj.value.substr(1,obj.value.length);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//计算报酬小计的
|
|||
|
|
function payNums(type) {
|
|||
|
|
var dyxj = $("#dyxj"+type).val();
|
|||
|
|
var jbxj = $("#jbxj"+type).val();
|
|||
|
|
var jxxj = $("#jxxj"+type).val();
|
|||
|
|
var bcxj = Number(dyxj) + Number(jbxj) + Number(jxxj);
|
|||
|
|
bcxj =bcxj.toFixed(2);
|
|||
|
|
$("#bcxj"+type).val(bcxj);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//计算合计的
|
|||
|
|
function total() {
|
|||
|
|
//当月发放基本工资
|
|||
|
|
var basePayTotal = 0;
|
|||
|
|
//加班费
|
|||
|
|
var overtimePayTotal = 0;
|
|||
|
|
//绩效奖金
|
|||
|
|
var bonusTotal = 0;
|
|||
|
|
//绩效奖金累计(含本月)
|
|||
|
|
var bonusTotals = 0;
|
|||
|
|
|
|||
|
|
//报酬小计
|
|||
|
|
var remunerationTotals = 0 ;
|
|||
|
|
|
|||
|
|
var oTable = $('#dt-table').dataTable();
|
|||
|
|
var rowcollection = oTable.$(".checkall:checked", {"page": "all"});
|
|||
|
|
rowcollection.each(function (index, elem) {
|
|||
|
|
var basePay = $(elem).parent().next().next().next().next().next().next().next().children().val();
|
|||
|
|
basePayTotal = Number(basePay) + Number(basePayTotal);
|
|||
|
|
|
|||
|
|
var overtimePay = $(elem).parent().next().next().next().next().next().next().next().next().next().next().children().val();
|
|||
|
|
overtimePayTotal = Number(overtimePay) + Number(overtimePayTotal);
|
|||
|
|
|
|||
|
|
var bonus = $(elem).parent().next().next().next().next().next().next().next().next().next().next().next().next().next().children().val();
|
|||
|
|
bonusTotal = Number(bonus) + Number(bonusTotal);
|
|||
|
|
|
|||
|
|
var bonusToo = $(elem).parent().next().next().next().next().next().next().next().next().next().next().next().next().next().next().next().text();
|
|||
|
|
bonusTotals = Number(bonusToo) + Number(bonusTotals);
|
|||
|
|
|
|||
|
|
var remuneration = $(elem).parent().next().next().next().next().next().next().next().next().next().next().next().next().next().next().children().val();
|
|||
|
|
remunerationTotals = Number(remuneration) + Number(remunerationTotals);
|
|||
|
|
});
|
|||
|
|
basePayTotal =basePayTotal.toFixed(2);
|
|||
|
|
overtimePayTotal =overtimePayTotal.toFixed(2);
|
|||
|
|
$("#basePays").html(basePayTotal);
|
|||
|
|
$("#overtimePays").html(overtimePayTotal);
|
|||
|
|
|
|||
|
|
bonusTotal =bonusTotal.toFixed(2);
|
|||
|
|
bonusTotals =bonusTotals.toFixed(2);
|
|||
|
|
remunerationTotals =remunerationTotals.toFixed(2);
|
|||
|
|
|
|||
|
|
$("#performanceDays").html(bonusTotal);
|
|||
|
|
$("#monthPerformanceDays").html(bonusTotals);
|
|||
|
|
$("#remuneration").html(remunerationTotals);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function getNumAchievements(that,type,minAchievementsMoney,maxAchievementsMoney) {
|
|||
|
|
var str = that.value;
|
|||
|
|
if(Number(str) >= Number(minAchievementsMoney)){
|
|||
|
|
if(Number(str) <= Number(maxAchievementsMoney) ){
|
|||
|
|
that.value = str;
|
|||
|
|
}else{
|
|||
|
|
layer.confirm('请填写小于等于'+maxAchievementsMoney, {icon: 1, time: 10000});
|
|||
|
|
that.value = "0";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
}else{
|
|||
|
|
layer.confirm('请填写大于等于'+minAchievementsMoney, {icon: 1, time: 10000});
|
|||
|
|
that.value = "0";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
var unitPerformanceFee = $("#jxdj"+type).val();
|
|||
|
|
var performanceDay = $("#jxts"+type).val();
|
|||
|
|
var performanceFeePay = Number(unitPerformanceFee) * Number(performanceDay);
|
|||
|
|
performanceFeePay =performanceFeePay.toFixed(2);
|
|||
|
|
$("#jxxj"+type).val(performanceFeePay);
|
|||
|
|
payNums(type)
|
|||
|
|
total();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function getNumst(that,type,checknumTotal) {
|
|||
|
|
var str = that.value;
|
|||
|
|
if(Number(str) <= Number(checknumTotal)){
|
|||
|
|
that.value = str;
|
|||
|
|
}else{
|
|||
|
|
layer.confirm('请填写小于等于'+checknumTotal, {icon: 1, time: 10000});
|
|||
|
|
that.value = "0";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
var unitPerformanceFee = $("#jxdj"+type).val();
|
|||
|
|
var performanceDay = $("#jxts"+type).val();
|
|||
|
|
var performanceFeePay = Number(unitPerformanceFee) * Number(performanceDay);
|
|||
|
|
performanceFeePay =performanceFeePay.toFixed(2);
|
|||
|
|
$("#jxxj"+type).val(performanceFeePay);
|
|||
|
|
payNums(type)
|
|||
|
|
total();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//计算加班费用 加班天数
|
|||
|
|
function getOvertimePay(that,type) {
|
|||
|
|
var str = that.value;
|
|||
|
|
if(Number(str) < Number(31)){
|
|||
|
|
that.value = str;
|
|||
|
|
}else{
|
|||
|
|
layer.confirm('加班天数不能大于30天', {icon: 1, time: 10000});
|
|||
|
|
that.value = "0";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
var overtimeday = $("#jbts"+type).val();
|
|||
|
|
var unitOvertimePay = $("#jbdj"+type).val();
|
|||
|
|
var overtimePay = Number(overtimeday) * Number(unitOvertimePay);
|
|||
|
|
overtimePay =overtimePay.toFixed(2);
|
|||
|
|
$("#jbxj"+type).val(overtimePay);
|
|||
|
|
payNums(type)
|
|||
|
|
total();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//计算加班费用 单价
|
|||
|
|
function getOvertimePays(that,type) {
|
|||
|
|
var str = that.value;
|
|||
|
|
if(Number(str) < Number(1201)){
|
|||
|
|
that.value = str;
|
|||
|
|
}else{
|
|||
|
|
that.value = "0";
|
|||
|
|
}
|
|||
|
|
var overtimeday = $("#jbts"+type).val();
|
|||
|
|
var unitOvertimePay = $("#jbdj"+type).val();
|
|||
|
|
var overtimePay = Number(overtimeday) * Number(unitOvertimePay);
|
|||
|
|
overtimePay =overtimePay.toFixed(2);
|
|||
|
|
$("#jbxj"+type).val(overtimePay);
|
|||
|
|
payNums(type)
|
|||
|
|
total();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//修改
|
|||
|
|
function editBtn(){
|
|||
|
|
var idNumber = [];//考勤人员身份证
|
|||
|
|
var overtimeday = []; //加班天数
|
|||
|
|
var unitOvertimePay = []; //单价
|
|||
|
|
var unitPerformanceFee = []; //单价
|
|||
|
|
var performanceDay = []; //考勤天数
|
|||
|
|
|
|||
|
|
var flagOvertimedays = 1;
|
|||
|
|
var flagUnitOvertimePays = 1;
|
|||
|
|
var flagUnitPerformanceFees = 1;
|
|||
|
|
var flagPerformanceDays = 1;
|
|||
|
|
|
|||
|
|
var oTable = $('#dt-table').dataTable();
|
|||
|
|
var rowcollection = oTable.$(".checkall:checked", {"page": "all"});
|
|||
|
|
rowcollection.each(function (index, elem) {
|
|||
|
|
var overtimedays = $(elem).parent().next().next().next().next().next().next().next().next().children().val();
|
|||
|
|
if(overtimedays == "" || overtimedays == null){
|
|||
|
|
flagOvertimedays = 2;
|
|||
|
|
}
|
|||
|
|
var unitOvertimePays = $(elem).parent().next().next().next().next().next().next().next().next().next().children().val();
|
|||
|
|
if(unitOvertimePays == "" || unitOvertimePays == null){
|
|||
|
|
flagUnitOvertimePays = 2;
|
|||
|
|
}
|
|||
|
|
var unitPerformanceFees = $(elem).parent().next().next().next().next().next().next().next().next().next().next().next().children().val();
|
|||
|
|
if(unitPerformanceFees == "" || unitPerformanceFees == null){
|
|||
|
|
flagUnitPerformanceFees = 2;
|
|||
|
|
}
|
|||
|
|
var performanceDays = $(elem).parent().next().next().next().next().next().next().next().next().next().next().next().next().children().val();
|
|||
|
|
if(performanceDays == "" || performanceDays == null){
|
|||
|
|
flagPerformanceDays = 2;
|
|||
|
|
}
|
|||
|
|
var checkbox_value = $(elem).val();
|
|||
|
|
var strArr = checkbox_value.split(",");
|
|||
|
|
idNumber.push(strArr[0]);
|
|||
|
|
overtimeday.push(overtimedays);
|
|||
|
|
unitOvertimePay.push(unitOvertimePays);
|
|||
|
|
unitPerformanceFee.push(unitPerformanceFees);
|
|||
|
|
performanceDay.push(performanceDays);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
|
|||
|
|
if(flagOvertimedays == 2){
|
|||
|
|
parent.layer.msg("请填写加班天数", {icon: 2, time: 2000});
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
if(flagUnitOvertimePays == 2){
|
|||
|
|
parent.layer.msg("请填写加班单价", {icon: 2, time: 2000});
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
if(flagUnitPerformanceFees == 2){
|
|||
|
|
parent.layer.msg("请填写单价", {icon: 2, time: 2000});
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
if(flagPerformanceDays == 2){
|
|||
|
|
parent.layer.msg("请填写考勤天数", {icon: 2, time: 2000});
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
$.ajax({
|
|||
|
|
type: 'POST',
|
|||
|
|
async: true, // 默认异步true,false表示同步
|
|||
|
|
url: ctxPath + "/wagesGrant/updatePayForPerson", // 请求地址
|
|||
|
|
data: {
|
|||
|
|
"proId": proId,
|
|||
|
|
"teamId": teamId,
|
|||
|
|
"year": year,
|
|||
|
|
"month": month,
|
|||
|
|
"idNumber": idNumber.toString(),
|
|||
|
|
"overtimeday":overtimeday.toString(),
|
|||
|
|
"unitOvertimePay":unitOvertimePay.toString(),
|
|||
|
|
"unitPerformanceFee":unitPerformanceFee.toString(),
|
|||
|
|
"performanceDay":performanceDay.toString(),
|
|||
|
|
"startTime":startTime,
|
|||
|
|
"endTime":endTime
|
|||
|
|
}, //获取提交的表单字段
|
|||
|
|
success: function (data) {
|
|||
|
|
console.log(data);
|
|||
|
|
if (data.resMsg == "修改成功") {
|
|||
|
|
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 (XMLHttpRequest, textStatus, e) {
|
|||
|
|
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
function getPro(proId) {
|
|||
|
|
$("#proId").empty();
|
|||
|
|
$.ajax({
|
|||
|
|
type: 'POST',
|
|||
|
|
url: ctxPath + '/noSignalTeamRecords/getPro',
|
|||
|
|
data: {},
|
|||
|
|
dataType: 'json',
|
|||
|
|
success: function (data) {
|
|||
|
|
if(data.length>0){
|
|||
|
|
var str = '<option selected value="-1">请选择工程</option>';
|
|||
|
|
for(var i = 0; i < data.length; i++) {
|
|||
|
|
if(proId == 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>';
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
$("#proId").append(str);
|
|||
|
|
layui.form.render('select'); //这里就是我们要渲染的地方了
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
function getTeam(proId,teamId) {
|
|||
|
|
|
|||
|
|
$("#teamId").empty();
|
|||
|
|
$.ajax({
|
|||
|
|
type: 'POST',
|
|||
|
|
url: ctxPath + '/noSignalTeamRecords/getTeam',
|
|||
|
|
data: {
|
|||
|
|
id: proId
|
|||
|
|
},
|
|||
|
|
dataType: 'json',
|
|||
|
|
success: function (data) {
|
|||
|
|
if(data.length>0){
|
|||
|
|
var str = '<option selected value="-1">请选择班组</option>';
|
|||
|
|
for(var i = 0; i < data.length; i++) {
|
|||
|
|
if(teamId == 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>';
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
$("#teamId").append(str);
|
|||
|
|
layui.form.render('select'); //这里就是我们要渲染的地方了
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获得当前时间 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;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//设置弹窗关闭
|
|||
|
|
function reloading() {
|
|||
|
|
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
|
|||
|
|
parent.layer.close(index); //再执行关闭
|
|||
|
|
window.parent.location.reload();
|
|||
|
|
}
|