190 lines
5.6 KiB
Plaintext
190 lines
5.6 KiB
Plaintext
let form, layer;
|
||
|
||
function setParams(dateRange, type) {
|
||
dateRangeParam = dateRange;
|
||
layui.use(['form', 'layer'], function () {
|
||
layer = layui.layer;
|
||
form = layui.form;
|
||
getPersonByTypeAjax();
|
||
setTableData(dateRange);
|
||
if (type) {
|
||
getSchedulingPersonDataAjax(dateRange);
|
||
}
|
||
form.render();
|
||
form.on('submit(formData)', function (data) {
|
||
saveData(data);
|
||
});
|
||
})
|
||
}
|
||
|
||
function saveData2() {
|
||
let list = getTableData();
|
||
for (let i = 0; i < list.length; i++) {
|
||
let dataList = list[i];
|
||
let flag = false;
|
||
let dateMsg = '';
|
||
if (i !== 0) {
|
||
for (let j = 0; j < dataList.length; j++) {
|
||
let userId = dataList[j].userId;
|
||
let date = dataList[j].date;
|
||
if (!userId) {
|
||
dateMsg = date;
|
||
flag = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
if (flag) {
|
||
return layer.msg(personTypeArr[i] + ':' + (i === 2 || i === 3 ? dateRangeParam : dateMsg) + '排班人员未选择', {
|
||
icon: 7,
|
||
time: 4000
|
||
})
|
||
}
|
||
}
|
||
let dataList = {
|
||
'list1': list[0],
|
||
'list2': list[1],
|
||
'list3': list[2],
|
||
'list4': list[3],
|
||
'list5': list[4],
|
||
'list6': list[5],
|
||
'list7': list[6],
|
||
'list8': list[7],
|
||
'list9': list[8],
|
||
'list10': list[9],
|
||
'list11': list[10],
|
||
'list12': list[11],
|
||
'list13': list[12]
|
||
}
|
||
saveData(dataList);
|
||
}
|
||
|
||
function getSchedulingPersonDataAjax(dateStr) {
|
||
let param = {
|
||
'date': dateStr
|
||
}
|
||
let loadingMsg = layer.msg('数据加载中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||
$.ajax({
|
||
headers: {
|
||
"encrypt": sm3(JSON.stringify(param))
|
||
},
|
||
url: dataUrl + 'proteam/pot/duty/getSchedulingPersonData?token=' + token,
|
||
type: 'POST',
|
||
data: param,
|
||
dataType: 'json',
|
||
success: function (result) {
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
if (result.code === 200) {
|
||
setFormData(result.data.list);
|
||
} else if (result.code === 500) {
|
||
layer.alert(result.msg, {icon: 2})
|
||
} else if (result.code === 401) {
|
||
logout(1)
|
||
}
|
||
},
|
||
error: function (result) {
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
layer.msg('服务异常,请稍后重试', {icon: 16, scrollbar: false, time: 2000});
|
||
}
|
||
});
|
||
}
|
||
|
||
// 保存数据
|
||
function saveData(data) {
|
||
let obj = {
|
||
'date': dateRangeParam,
|
||
'dataList': data
|
||
}
|
||
let param = {
|
||
'params': JSON.stringify(obj)
|
||
}
|
||
let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||
$.ajax({
|
||
headers: {
|
||
"encrypt": sm3(JSON.stringify(param))
|
||
},
|
||
url: dataUrl + 'proteam/pot/duty/addSchedulingPersonData?token=' + token,
|
||
type: 'POST',
|
||
data: param,
|
||
dataType: 'json',
|
||
beforeSend: function () {
|
||
$('.save').addClass("layui-btn-disabled").attr("disabled", true);
|
||
$('.cancel').addClass("layui-btn-disabled").attr("disabled", true);
|
||
},
|
||
success: function (result) {
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
if (result.code === 200) {
|
||
closePage(1);
|
||
parent.layer.msg(result.msg, {icon: 1});
|
||
} else if (result.code === 500) {
|
||
layer.alert(result.msg, {icon: 2})
|
||
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
} else if (result.code === 401) {
|
||
logout(1)
|
||
}
|
||
},
|
||
error: function (result) {
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
layer.msg('服务异常,请稍后重试', {icon: 16, scrollbar: false, time: 2000});
|
||
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
}
|
||
});
|
||
}
|
||
|
||
// 验证某字段是否存在
|
||
function isRepeat(param, paramName, value) {
|
||
let data = {};
|
||
let params = {
|
||
'param': param,
|
||
'value': value,
|
||
'paramName': paramName
|
||
}
|
||
$.ajax({
|
||
headers: {
|
||
"encrypt": sm3(JSON.stringify(params))
|
||
},
|
||
url: dataUrl + 'proteam/pot/duty/isRepeat?token=' + token,
|
||
type: 'POST',
|
||
data: params,
|
||
dataType: 'json',
|
||
async: false,
|
||
success: function (result) {
|
||
if (result.code === 200) {
|
||
data = result
|
||
} else if (result.code === 500) {
|
||
} else if (result.code === 401) {
|
||
logout(1)
|
||
}
|
||
}
|
||
});
|
||
return data;
|
||
}
|
||
|
||
// 根据岗位类型获取值班人员
|
||
function getPersonByTypeAjax() {
|
||
$.ajax({
|
||
headers: {
|
||
"encrypt": sm3(JSON.stringify({}))
|
||
},
|
||
url: dataUrl + 'proteam/pot/duty/getPersonByType?token=' + token,
|
||
type: 'POST',
|
||
data: {},
|
||
dataType: 'json',
|
||
async: false,
|
||
success: function (result) {
|
||
if (result.code === 200) {
|
||
if (result.data) {
|
||
setPersonListData(result.data);
|
||
}
|
||
} else if (result.code === 500) {
|
||
} else if (result.code === 401) {
|
||
logout(1)
|
||
}
|
||
},
|
||
error: function (result) {
|
||
}
|
||
});
|
||
}
|