185 lines
7.8 KiB
JavaScript
185 lines
7.8 KiB
JavaScript
var size = 0; //序号
|
|
$(function () {
|
|
//safeNumber();//默认加载一行数据
|
|
layui.use(['form'], function () {
|
|
var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
|
|
form.render();
|
|
form.verify({
|
|
number: [/^\+?[1-9][0-9]*$/, '请输入正确人数'],
|
|
contactWay: [/^((13[0-9])|(14(0|[5-7]|9))|(15[0-9])|(16(2|[5-7]))|(17[0-8])|(18[0-9])|(19([0-3]|[5-9])))\d{8}$/, '请正确输入联系方式'],
|
|
userName:[/^[\u4e00-\u9fa5_a-zA-Z]{2,15}$/,'请输入2-15位中英文用户名'],//用户名
|
|
objName:[/^[\u4e00-\u9fa5_a-zA-Z0-9]{1,20}$/,'请输入1-20位的长度'],//企业事业单位名称
|
|
});
|
|
// 验证成功后才会执行下面的操作
|
|
form.on('submit(formDemo)', function (data) {
|
|
addReleaseWorkInfo(data); // 新增工程
|
|
});
|
|
});
|
|
})
|
|
;
|
|
|
|
/**
|
|
* 新增务工信息
|
|
* @param formData
|
|
*/
|
|
function addReleaseWorkInfo(formData) {
|
|
// 加载提示
|
|
var loadingMsg = layer.msg('数据请求中,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']});
|
|
// form请求地址
|
|
var formUrl = ctxPath + "/migrant/addWorkInfoRelease";
|
|
var m = [];
|
|
var data1 = paramConversionToObjOfForm("gradeForm"); //获取Form表单数据项
|
|
for(var i = 1; i <= size; i++) {
|
|
var trueName= $("#getsafelist").find(".pa"+i+"").find(".trueName").find("input").val();
|
|
var sex= $("#getsafelist").find(".pa"+i+"").find(".sex").find("select").val();
|
|
var old= $("#getsafelist").find(".pa"+i+"").find(".old").find("input").val();
|
|
if (old <0 || old > 100){
|
|
layer.close(loadingMsg);
|
|
layer.msg('请输入合法的年龄', {icon: 5, scrollbar: false});
|
|
return false;
|
|
|
|
}
|
|
var typeWork= $("#getsafelist").find(".pa"+i+"").find(".typeWork").find("input").val();
|
|
var holder= $("#getsafelist").find(".pa"+i+"").find(".holder").find("input").val();
|
|
var workHistory= $("#getsafelist").find(".pa"+i+"").find(".workHistory").find("input").val();
|
|
if(trueName == undefined || trueName == undefined || sex == undefined || old == undefined || typeWork == undefined || workHistory == undefined ){
|
|
continue;
|
|
}
|
|
if(trueName != null && trueName !="" && sex!= null && sex!= "" && old!= null&& old!="" && typeWork!= null&& typeWork!="" && workHistory!= null &&workHistory!="") {
|
|
let obj = {'trueName':trueName,'sex':sex,'old':old,'typeWork':typeWork,'holder':holder,'workHistory':workHistory};
|
|
m.push(obj);
|
|
}else {
|
|
layer.msg("施工人员信息填写完整")
|
|
return false;
|
|
}
|
|
}
|
|
var data = {} ;
|
|
data["oneArr"] = m;
|
|
if(data["oneArr"] == ""){
|
|
layer.msg("请填写施工人员信息")
|
|
return false;
|
|
}
|
|
data["mainArr"] = data1;
|
|
// alert(JSON.stringify(data))
|
|
$.ajax({
|
|
type: 'POST',
|
|
async: false, // 默认异步true,false表示同步
|
|
url: formUrl, // 请求地址project
|
|
contentType: "application/json; charset=utf-8",
|
|
dataType:"json",
|
|
// data: JSON.stringify(formData.field), //获取提交的表单字段
|
|
data:JSON.stringify(data),
|
|
success: function (data) {
|
|
var html = '';
|
|
html += '<span style="color:red;">'+data.resMsg+'</span>'
|
|
parent.layer.alert(html, {icon: 1}, function () {
|
|
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
|
|
parent.layer.close(index); //再执行关闭
|
|
window.parent.location.reload();//刷新父页面
|
|
});
|
|
},
|
|
error: function (XMLHttpRequest, textStatus, e) {
|
|
layer.close(loadingMsg);
|
|
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
|
|
}
|
|
});
|
|
|
|
}
|
|
function safeNumber() {
|
|
$("#getsafelist").append(getInfosafeNumber());
|
|
}
|
|
|
|
function getInfosafeNumber() {
|
|
|
|
var html = "";
|
|
size++;
|
|
html += "<tr class='pa"+size+"' >";
|
|
html += "<td class='titleData trueName' style='width: 15%' ><input style=\"width: 100%; height: 100%;text-align: center;\" class=\"dataDiv\" name= \"trueName\"/></td>"
|
|
html += "<td class='titleData sex' style='width: 8%'><select style=\"width: 100%; height: 100%;text-align: center;\" class=\"\" name= \"sex\"><option value='男'>男</option><option value='女'>女</option></select></td>"
|
|
html += "<td class='titleData old' style='width: 8%'><input type='number' style=\"width: 100%; height: 100%;text-align: center;\" class=\"dataDiv\" name= \"old\"/></td>"
|
|
html += "<td class='titleData typeWork' style='width: 15%'><input style=\"width: 100%; height: 100%;text-align: center;\" class=\"dataDiv\" name= \"typeWork\"/></td>"
|
|
html += "<td class='titleData holder' style='width: 15%'><input style=\"width: 100%; height: 100%;text-align: center;\" class=\"dataDiv\" name= \"holder\"/></td>"
|
|
html += "<td class='titleData workHistory'style='width: 30%'><input style=\"width: 100%; height: 100%;text-align: center;\" class=\"dataDiv\" name= \"workHistory\"/></td> "
|
|
html += "<td class='titleData' style='width: 10%'><a center; style='color: red' onclick='delPartData(this)'>删除</a></td>" +
|
|
"</tr>";
|
|
return html;
|
|
}
|
|
function delPartData(that){
|
|
var indexMsg = layer.confirm("<h4 style='color:red'>您确定删除此行吗?</h4>", {btn: ['确定','取消']},function(){
|
|
layer.close(indexMsg);
|
|
$(that).parent().parent().remove();
|
|
});
|
|
|
|
}
|
|
/**
|
|
* @author 柳青
|
|
* @date 2022-09-05
|
|
* @function 将参数设置继承对象 可多级
|
|
* @returns
|
|
*/
|
|
function paramConversionToObjOfForm(formId){
|
|
var id;
|
|
var obj = {};
|
|
$("#"+formId).find("[name]").each(function(){
|
|
var param = $(this).attr("name");
|
|
var value = $(this).val();
|
|
if(value != "" || value !=null){
|
|
if(param == 'id'){
|
|
id = value;
|
|
}
|
|
if(param.indexOf(".") != -1){
|
|
var arr = param.split(".");
|
|
var size = arr.length;
|
|
var a={};
|
|
var b={};
|
|
for(var i = size ; i > 1 ; i--){
|
|
if(i==size){
|
|
a[arr[i-1]] = value;
|
|
}else{
|
|
b[arr[i-1]] = a;
|
|
a = b;
|
|
b = {};
|
|
}
|
|
}
|
|
var c = obj[arr[0]];
|
|
var cc = obj[arr[0]];
|
|
var f = false;
|
|
for(var i = 0 ; i < size ; i++){
|
|
if(JY.Object.notNull(c)){
|
|
cc = c;
|
|
c = c[arr[i+1]];
|
|
}else{
|
|
if(i == 0){
|
|
obj[arr[0]] = a;
|
|
}else{
|
|
var k = a;
|
|
var key = arr[i];//name
|
|
for(var j = 0 ; j < i ; j++){
|
|
k = k[arr[j+1]];
|
|
}
|
|
cc[key] = k;
|
|
var l={};
|
|
for(var m = i ; m > 0 ; m--){
|
|
if(m-1 == 0){
|
|
obj[arr[0]] = cc;
|
|
f =true;
|
|
}else{
|
|
l[arr[m-1]] = cc;
|
|
k=l;
|
|
l={};
|
|
}
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
if(f){
|
|
break;
|
|
}
|
|
}
|
|
}else{
|
|
obj[param] = value;
|
|
}
|
|
}
|
|
});
|
|
return obj;
|
|
} |