试验管理
This commit is contained in:
parent
5c180f1e69
commit
99dc4b0baa
|
|
@ -306,11 +306,32 @@ function basisAdd() {
|
|||
// 创建新的div元素
|
||||
var newDiv = document.createElement('div');
|
||||
newDiv.className = 'layui-inline basis';
|
||||
newDiv.innerHTML = `
|
||||
if(count!=2){
|
||||
if (count % 2 === 0) {
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label" style="padding: 9px 2px;"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
} else {
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
}else{
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
// newDiv.innerHTML = `
|
||||
// <label class="layui-form-label"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
// <div class="layui-input-inline" id="basisName-${count}">
|
||||
// </div>
|
||||
// `;
|
||||
// 将新div插入到现有元素之后
|
||||
var parent = devElems[count - 2].parentNode;
|
||||
parent.insertBefore(newDiv, parent.querySelector('.btn-box'));
|
||||
|
|
|
|||
|
|
@ -293,11 +293,29 @@ function basisAdd() {
|
|||
// 创建新的div元素
|
||||
var newDiv = document.createElement('div');
|
||||
newDiv.className = 'layui-inline basis';
|
||||
newDiv.innerHTML = `
|
||||
if(count!=2){
|
||||
if (count % 2 === 0) {
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label" style="padding: 9px 2px;"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
} else {
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
}else{
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
|
||||
|
||||
// 将新div插入到现有元素之后
|
||||
var parent = devElems[count - 2].parentNode;
|
||||
parent.insertBefore(newDiv, parent.querySelector('.btn-box'));
|
||||
|
|
|
|||
|
|
@ -0,0 +1,654 @@
|
|||
let form, layer, dtree, util, idParam, phoneParam, selectInput, laydate, table;
|
||||
let arr = ['background', 'web', 'mobile', 'wx'];
|
||||
let background, web, mobile, wx;
|
||||
let data = [], appResList = [];
|
||||
// 角色下拉选
|
||||
let roleList;
|
||||
let orgData;
|
||||
|
||||
var cols = []; // 初始化为空,因为我们将动态构建表头
|
||||
function setParams(params) {
|
||||
idParam = JSON.parse(params).id;
|
||||
layui.config({
|
||||
base: "../../../../js/layui-v2.6.8/dtree/", //此处路径请自行处理, 可以使用绝对路径
|
||||
}).extend({
|
||||
dtree: 'dtree',
|
||||
selectInput: 'selectInput/selectInput'
|
||||
}).use(['form', 'layer', 'dtree', 'util', 'selectInput', 'laydate', 'table'], function () {
|
||||
layer = layui.layer;
|
||||
laydate = layui.laydate;
|
||||
form = layui.form;
|
||||
util = layui.util;
|
||||
dtree = layui.dtree;
|
||||
selectInput = layui.selectInput;
|
||||
table = layui.table;
|
||||
|
||||
laydate.render({
|
||||
elem: '#devContractDate'
|
||||
});
|
||||
|
||||
if (idParam) {
|
||||
getTestById();
|
||||
}
|
||||
|
||||
//设备类别
|
||||
// getDicts("dev_code",'devTypeName',"","设备类别",30);
|
||||
getDevCode()
|
||||
|
||||
//试验地点
|
||||
getDicts("sy_local",'experLocal',"","试验地点",30);
|
||||
|
||||
//试验设备列表
|
||||
// getDevList("devName-1" ,"","试验设备列表",30);
|
||||
|
||||
//设备名称
|
||||
getDevList("experDevName" ,"","设备名称",30);
|
||||
|
||||
//试验依据
|
||||
getDicts("sy_basis",'basisName-1',"","试验依据",30);
|
||||
|
||||
form.on('submit(formData)', function (data) {
|
||||
saveData(data);
|
||||
});
|
||||
|
||||
var ins = selectInput.getInstance("#experDevName");
|
||||
// 监听select 选择事件
|
||||
ins.on('itemSelect(experDevName)', function(obj) {
|
||||
var devId=JSON.stringify(ins.getValue().value).replace(/"/g, '');
|
||||
getEcho(devId);
|
||||
});
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
//下拉选回显
|
||||
function getEcho(devId){
|
||||
let url = dataUrl + '/sys/select/getDevices';
|
||||
let obj = {
|
||||
'id':devId
|
||||
}
|
||||
let params = {
|
||||
encryptedData: encryptCBC(JSON.stringify(obj))
|
||||
}
|
||||
ajaxRequest(url, "POST", params, false, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
console.log(result.data)
|
||||
if(result.data.length>0){
|
||||
$('#experDevModule').val(result.data[0].devModule);
|
||||
$('#experDevCode').val(result.data[0].devCode);
|
||||
$('#devContractDate').val(result.data[0].contractDate);
|
||||
}
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
//设备类别
|
||||
function getDevCode(){
|
||||
let url = dataUrl + '/sys/select/getDicts';
|
||||
let obj = {
|
||||
'code':'dev_code'
|
||||
}
|
||||
let params = {
|
||||
encryptedData: encryptCBC(JSON.stringify(obj))
|
||||
}
|
||||
ajaxRequest(url, "POST", params, false, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
setSelectValue(result.data, 'devCode');
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
/*下拉选表单赋值*/
|
||||
function setSelectValue(list, selectName) {
|
||||
let html = '<option value="" selected>请选择</option>';
|
||||
$.each(list, function (index, item) {
|
||||
html += '<option value="' + item.value + '">' + item.name + '</option>';
|
||||
})
|
||||
$('#' + selectName).empty().append(html);
|
||||
layui.form.render();
|
||||
}
|
||||
|
||||
function getDicts(code,id,value,name,maxlength){
|
||||
let url = dataUrl + '/sys/select/getDicts';
|
||||
let obj = {
|
||||
'code':code
|
||||
}
|
||||
let params = {
|
||||
encryptedData: encryptCBC(JSON.stringify(obj))
|
||||
}
|
||||
|
||||
ajaxRequest(url, "POST", params, false, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
getSelect(result.data, id,value,name,maxlength);
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
//试验设备列表
|
||||
function getDevList(id,value,name,maxlength) {
|
||||
let url = dataUrl + '/sys/select/getDevices';
|
||||
ajaxRequest(url, "POST", null, false, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
let formattedData = result.data.map(({devName, devId}) => ({name: devName, value: devId}));
|
||||
getSelect(formattedData, id,value,name,maxlength);
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
//新增标题
|
||||
function titleAdd() {
|
||||
// 获取当前已有的'dev'类元素
|
||||
var devElems = document.querySelectorAll('.info');
|
||||
var count = devElems.length +1 ;
|
||||
|
||||
// 创建新的div元素
|
||||
var newDiv = document.createElement('div');
|
||||
newDiv.className = 'info';
|
||||
newDiv.style.marginTop = '2%';
|
||||
newDiv.style.display='flex';
|
||||
newDiv.style.flexDirection='column';
|
||||
newDiv.style.border='1px solid #ccc';
|
||||
newDiv.innerHTML = `
|
||||
<div style="display: flex;">
|
||||
<input lay-verify="required" type="text" class="layui-input" id="experTypeName-${count}" name="experTypeName-${count}" placeholder="请输入名称" style="border: 0px" maxlength="30" />
|
||||
<input lay-verify="required" type="text" class="layui-input" id="amount-${count}" name="amount-${count}" placeholder="请输入金额" style="border: 0px" maxlength="6" />
|
||||
<button class="layui-btn layui-btn-norma save" onclick="itemNameAdd(${count})" title="新增子标题">+</button>
|
||||
<button class="layui-btn layui-btn-primary cancel" onclick="itemNameDel(${count})" title="删除子标题">-</button>
|
||||
</div>
|
||||
<div style="display: flex;width: 100%;overflow: auto;" class="subtitle-${count}">
|
||||
<input lay-verify="required" placeholder="请输入名称" class="layui-input-dev" id="itemName-${count}-1" name="itemName-${count}-1" maxlength="30" >
|
||||
</div>
|
||||
`;
|
||||
// 将新div插入到现有'dev'元素之后
|
||||
var parent = devElems[count - 2].parentNode;
|
||||
parent.insertBefore(newDiv, parent.querySelector('.btn-box'));
|
||||
}
|
||||
|
||||
//删除标题
|
||||
function titleDel() {
|
||||
// 获取所有的'dev'类元素
|
||||
var devElems = document.querySelectorAll('.info');
|
||||
var count = devElems.length;
|
||||
|
||||
// 检查是否至少保留一个'dev'元素
|
||||
if (count > 1) {
|
||||
// 删除最后一个'dev'元素
|
||||
devElems[count - 1].remove();
|
||||
} else {
|
||||
layer.msg('至少保留一个试验设备信息');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//新增子标题
|
||||
function itemNameAdd(num) {
|
||||
// 获取包含 input 元素的 div
|
||||
var divElement = document.querySelector('.subtitle-'+num);
|
||||
// 获取所有 input 元素
|
||||
var inputs = divElement.querySelectorAll('input');
|
||||
// 初始化最大 id 为0
|
||||
var maxId = 0;
|
||||
// 遍历所有 input 元素,找出最大的 id
|
||||
inputs.forEach(function(input) {
|
||||
var idParts = input.id.split('-');
|
||||
if (idParts[0] === 'itemName' && !isNaN(idParts[1])) {
|
||||
var idNum = parseInt(idParts[2], 10);
|
||||
if (idNum > maxId) {
|
||||
maxId = idNum;
|
||||
}
|
||||
}
|
||||
});
|
||||
// 创建一个新的 input 元素,id为下一个数字
|
||||
var newInput = document.createElement('input');
|
||||
newInput.type = 'text';
|
||||
newInput.setAttribute('lay-verify', 'required');
|
||||
newInput.className = 'layui-input-dev';
|
||||
newInput.placeholder = '请输入名称';
|
||||
newInput.id = 'itemName-'+num+'-' + (maxId + 1);
|
||||
newInput.name = 'itemName-'+num+'-' + (maxId + 1);
|
||||
newInput.maxLength='30';
|
||||
|
||||
// 将新的 input 元素追加到 div 中
|
||||
divElement.appendChild(newInput);
|
||||
}
|
||||
|
||||
//删除子标题
|
||||
function itemNameDel(num) {
|
||||
// 获取包含 input 元素的 div
|
||||
var divElement = document.querySelector('.subtitle-'+num);
|
||||
// 获取所有的 input 元素
|
||||
var inputs = divElement.querySelectorAll('input');
|
||||
// 检查是否有超过一个 input 元素
|
||||
if (inputs.length > 1) {
|
||||
// 获取最后一个 input 元素
|
||||
var lastInput = inputs[inputs.length - 1];
|
||||
// 删除最后一个 input 元素
|
||||
divElement.removeChild(lastInput);
|
||||
}else{
|
||||
layer.msg('至少保留一个子标题');
|
||||
}
|
||||
}
|
||||
|
||||
//新增试验设备列表
|
||||
/*function devAdd() {
|
||||
// 获取当前已有的'dev'类元素
|
||||
var devElems = document.querySelectorAll('.dev');
|
||||
var count = devElems.length +1 ;
|
||||
|
||||
// 创建新的div元素
|
||||
var newDiv = document.createElement('div');
|
||||
newDiv.className = 'layui-inline dev';
|
||||
newDiv.innerHTML = `
|
||||
<div class="layui-input-inline" id="devName-${count}">
|
||||
</div>
|
||||
`;
|
||||
// 将新div插入到现有'dev'元素之后
|
||||
var parent = devElems[count - 2].parentNode;
|
||||
parent.insertBefore(newDiv, parent.querySelector('.btn-box'));
|
||||
|
||||
getDevList("devName-"+count,"","试验设备列表",30);
|
||||
}*/
|
||||
|
||||
//删除试验设备列表
|
||||
/*function devDel() {
|
||||
// 获取所有的'dev'类元素
|
||||
var devElems = document.querySelectorAll('.dev');
|
||||
var count = devElems.length;
|
||||
|
||||
// 检查是否至少保留一个'dev'元素
|
||||
if (count > 1) {
|
||||
// 删除最后一个'dev'元素
|
||||
devElems[count - 1].remove();
|
||||
} else {
|
||||
layer.msg('至少保留一个试验设备信息');
|
||||
}
|
||||
}*/
|
||||
|
||||
//新增试验依据
|
||||
function basisAdd() {
|
||||
// 获取当前已有的类元素
|
||||
var devElems = document.querySelectorAll('.basis');
|
||||
var count = devElems.length+1;
|
||||
|
||||
// 创建新的div元素
|
||||
var newDiv = document.createElement('div');
|
||||
newDiv.className = 'layui-inline basis';
|
||||
if(count!=2){
|
||||
if (count % 2 === 0) {
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label" style="padding: 9px 17px;"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
} else {
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
}else{
|
||||
newDiv.innerHTML = `
|
||||
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>试验依据</label>
|
||||
<div class="layui-input-inline" id="basisName-${count}">
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
|
||||
|
||||
// 将新div插入到现有元素之后
|
||||
var parent = devElems[count - 2].parentNode;
|
||||
parent.insertBefore(newDiv, parent.querySelector('.btn-box'));
|
||||
getDicts("sy_basis","basisName-" + count,"","试验依据",30);
|
||||
}
|
||||
|
||||
//删除试验依据
|
||||
function basisDel() {
|
||||
// 获取所有类元素
|
||||
var devElems = document.querySelectorAll('.basis');
|
||||
var count = devElems.length;
|
||||
|
||||
if (count > 1) {
|
||||
// 删除最后一个
|
||||
devElems[count - 1].remove();
|
||||
} else {
|
||||
layer.msg('至少保留一个试验依据');
|
||||
}
|
||||
}
|
||||
|
||||
function saveData2() {
|
||||
$('#formSubmit').trigger('click')
|
||||
}
|
||||
|
||||
function saveData(data) {
|
||||
//获取试验设备列表
|
||||
// var devList = convertToDevList(data.field);
|
||||
|
||||
//试验依据列表
|
||||
var yjList = convertToYjList(data.field);
|
||||
|
||||
//主要设备
|
||||
var mainDevList = [{
|
||||
"devTypeCode": "",
|
||||
"devTypeName": "",
|
||||
"experDevName": data.field["experDevName"],
|
||||
"experDevModule": data.field["experDevModule"],
|
||||
"experDevCode": data.field["experDevCode"],
|
||||
"devContractDate": data.field["devContractDate"],
|
||||
"experId": null
|
||||
}];
|
||||
|
||||
//获取试验项内容列表
|
||||
var items = convertToItems(data.field);
|
||||
|
||||
// 获取select元素
|
||||
var selectElement = document.getElementById('devCode');
|
||||
// 获取选中的option
|
||||
var selectedOption = selectElement.options[selectElement.selectedIndex];
|
||||
// 读取option的value和text
|
||||
var value = selectedOption.value;
|
||||
var text = selectedOption.text;
|
||||
|
||||
let paramsData = {
|
||||
'yjList':yjList,
|
||||
// 'devList':devList,
|
||||
'mainDevList':mainDevList,
|
||||
'items':items,
|
||||
}
|
||||
let obj = {
|
||||
'id': data.field["id"],
|
||||
'devTypeCode': value,
|
||||
'devTypeName': text,
|
||||
'devModule': data.field["devModule"],
|
||||
'experLocalCode':'',
|
||||
'experLocal': data.field["experLocal"],
|
||||
'paramsData':paramsData
|
||||
}
|
||||
|
||||
|
||||
let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||
let url = dataUrl + "/experimentStandard/addData";
|
||||
let params = obj;
|
||||
|
||||
if(params.id !=""){
|
||||
url = dataUrl + "/experimentStandard/editData";
|
||||
}
|
||||
params={
|
||||
encryptedData:encryptCBC(JSON.stringify(params))
|
||||
}
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
$('.save').addClass("layui-btn-disabled").attr("disabled", true);
|
||||
$('.cancel').addClass("layui-btn-disabled").attr("disabled", true);
|
||||
}, function (result) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
if (result.code === 200) {
|
||||
closePage(1);
|
||||
parent.layer.msg(result.msg, {icon: 1});
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
|
||||
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
|
||||
}
|
||||
}, function (xhr) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
|
||||
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
/*function convertToDevList(obj){
|
||||
return Object.entries(obj)
|
||||
.filter(([key, value]) => key.startsWith('devName-'))
|
||||
.map(([key, value]) => ({
|
||||
devTypeCode: "",
|
||||
devTypeName: "", // 如果需要,可以在这里使用 key 或 value
|
||||
devName: value,
|
||||
devId: null
|
||||
}));
|
||||
}*/
|
||||
|
||||
function convertToYjList(obj){
|
||||
return Object.entries(obj)
|
||||
.filter(([key, value]) => key.startsWith('basisName-'))
|
||||
.map(([key, value]) => ({
|
||||
basisName: value,
|
||||
}));
|
||||
}
|
||||
|
||||
function convertToItems(obj){
|
||||
var dataField = obj;
|
||||
var items = [];
|
||||
// 先收集所有的 experTypeName 键名,以便知道有多少个试验项
|
||||
var experTypeNames = Object.keys(dataField).filter(key => key.startsWith('experTypeName-'));
|
||||
var experTypeCount = experTypeNames.length;
|
||||
|
||||
// 预创建试验项对象,先不填充数据
|
||||
for (let i = 0; i < experTypeCount; i++) {
|
||||
items.push({
|
||||
"experTypeCode": "",
|
||||
"experTypeName": "",
|
||||
"experNum": 0, // 将会在后面设置
|
||||
"itemsSort": i + 1,
|
||||
"amount": "",
|
||||
"item": []
|
||||
});
|
||||
}
|
||||
|
||||
// 填充数据
|
||||
experTypeNames.forEach(key => {
|
||||
const experTypeIndex = key.split('-')[1];
|
||||
const item = items[experTypeIndex - 1];
|
||||
item.experTypeName = dataField[key];
|
||||
item.amount = dataField['amount-' + experTypeIndex];
|
||||
});
|
||||
|
||||
// 填充 itemName 数据
|
||||
Object.keys(dataField).forEach(key => {
|
||||
if (key.startsWith('itemName-')) {
|
||||
const parts = key.split('-');
|
||||
const experTypeIndex = parts[1];
|
||||
const itemIndex = parts[2];
|
||||
const itemNum = parseInt(itemIndex);
|
||||
const itemName = dataField[key];
|
||||
|
||||
// 找到对应的试验项并添加试验项内容
|
||||
items[experTypeIndex - 1].item.push({
|
||||
"itemName": itemName,
|
||||
"itemNum": itemNum
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// 设置 experNum 为 item 数组的长度
|
||||
items.forEach(item => {
|
||||
item.experNum = item.item.length;
|
||||
});
|
||||
// 按照 itemsSort 排序
|
||||
items.sort((a, b) => a.itemsSort - b.itemsSort);
|
||||
return items;
|
||||
}
|
||||
|
||||
function getTestById() {
|
||||
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, scrollbar: false, time: 0,});
|
||||
let url = dataUrl + "/experimentStandard/viewData";
|
||||
let params = {
|
||||
id: idParam
|
||||
}
|
||||
params={
|
||||
encryptedData:encryptCBC(JSON.stringify(params))
|
||||
}
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
}, function (result) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
if (result.code === 200) {
|
||||
setFormData(result.data);
|
||||
} else if (result.code === 500) {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function setFormData(data) {
|
||||
if (data) {
|
||||
$('#id').val(data.id);
|
||||
//设备类别
|
||||
// getDicts("dev_code",'devTypeName',data.devTypeName,"设备类别",30);
|
||||
|
||||
$('#devCode option[value=' + data.devTypeCode + ']').attr('selected', true)
|
||||
|
||||
//设备规格
|
||||
$('#devModule').val(data.devModule)
|
||||
|
||||
//试验地点
|
||||
getDicts("sy_local",'experLocal',data.experLocal,"试验地点",30);
|
||||
|
||||
//试验设备列表
|
||||
/*for (let i = 0; i < data.deviceVos.length; i++) {
|
||||
var k = i+1;
|
||||
if(k>1){
|
||||
devAdd()
|
||||
}
|
||||
getDevList("devName-"+k ,data.deviceVos[i].devName,"试验设备列表",30);
|
||||
}*/
|
||||
|
||||
//设备名称
|
||||
getDevList("experDevName" ,data.mainDeviceVos[0].experDevName,"设备名称",30);
|
||||
|
||||
//设备型号
|
||||
$('#experDevModule').val(data.mainDeviceVos[0].experDevModule)
|
||||
//设备编号
|
||||
$('#experDevCode').val(data.mainDeviceVos[0].experDevCode)
|
||||
//合同生效日期
|
||||
$('#devContractDate').val(data.mainDeviceVos[0].devContractDate)
|
||||
|
||||
//试验依据
|
||||
for (let i = 0; i < data.basisVos.length; i++) {
|
||||
var k = i+1;
|
||||
if(k>1){
|
||||
basisAdd()
|
||||
}
|
||||
getDicts("sy_basis",'basisName-'+k,data.basisVos[i].basisName,"试验依据",30);
|
||||
}
|
||||
|
||||
//试验项信息
|
||||
console.log(data);
|
||||
console.log(data.configItemsVos);
|
||||
for (let i = 0; i < data.configItemsVos.length; i++) {
|
||||
var k = i+1;
|
||||
//标题大于1
|
||||
if(k>1){
|
||||
// 新增一个标题
|
||||
titleAdd();
|
||||
}else{
|
||||
|
||||
}
|
||||
|
||||
// 循环判断子标题
|
||||
for (let j = 0; j < data.configItemsVos[i].itemList.length; j++){
|
||||
var kk = j+1;
|
||||
//子标题大于1
|
||||
if(kk>1){
|
||||
//新增一个子标题
|
||||
itemNameAdd(k);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 赋值
|
||||
|
||||
data.configItemsVos.forEach((item, index) => {
|
||||
const experTypeNameInput = document.getElementById(`experTypeName-${index + 1}`);
|
||||
const amountInput = document.getElementById(`amount-${index + 1}`);
|
||||
const subtitleContainer = document.querySelector(`.subtitle-${index + 1}`);
|
||||
|
||||
// 设置主标题和金额输入框的值
|
||||
experTypeNameInput.value = item.experTypeName;
|
||||
amountInput.value = item.amount;
|
||||
|
||||
// 清空现有的子标题输入框
|
||||
while (subtitleContainer.firstChild) {
|
||||
subtitleContainer.removeChild(subtitleContainer.firstChild);
|
||||
}
|
||||
|
||||
// 添加子标题输入框
|
||||
item.itemList.forEach((subItem, subIndex) => {
|
||||
const inputElement = document.createElement('input');
|
||||
inputElement.type = 'text';
|
||||
inputElement.classList.add('layui-input-dev');
|
||||
inputElement.setAttribute('lay-verify', 'required');
|
||||
inputElement.setAttribute('placeholder', '请输入名称');
|
||||
inputElement.setAttribute('name', `itemName-${index + 1}-${subIndex + 1}`);
|
||||
inputElement.id = `itemName-${index + 1}-${subIndex + 1}`;
|
||||
inputElement.value = subItem.itemName;
|
||||
subtitleContainer.appendChild(inputElement);
|
||||
});
|
||||
});
|
||||
|
||||
// if(data.configItemsVos.length>1){
|
||||
// for (let i = 0; i < data.configItemsVos.length; i++) {
|
||||
//
|
||||
// }
|
||||
// }else{
|
||||
// if(data.configItemsVos[0].itemList.length>2){
|
||||
// for (let i = 0; i < data.configItemsVos[0].itemList.length; i++){
|
||||
// var divElement = document.querySelector('.subtitle-1');
|
||||
// // 创建一个新的 input 元素,id为下一个数字
|
||||
// var newInput = document.createElement('input');
|
||||
// newInput.type = 'text';
|
||||
// newInput.setAttribute('lay-verify', 'required');
|
||||
// newInput.className = 'layui-input-dev';
|
||||
// newInput.placeholder = '请输入名称';
|
||||
// newInput.vlue = data.configItemsVos[0].itemList[i].itemName;
|
||||
// newInput.id = 'itemName-1'+'-' + (3 + i);
|
||||
// newInput.name = 'itemName-1'+'-' + (3 + i);
|
||||
// // 将新的 input 元素追加到 div 中
|
||||
// divElement.appendChild(newInput);
|
||||
// }
|
||||
// }else{
|
||||
// for(let i = 0; i < data.configItemsVos[0].itemList.length; i++){
|
||||
//
|
||||
// }
|
||||
// // $('#itemName-1-1').val(data.items[0].item.)
|
||||
// // $('#itemName-1-2').val(data.items[0].item.devContractDate)
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
layui.form.render();
|
||||
}
|
||||
}
|
||||
|
||||
// 关闭页面
|
||||
function closePage(type) {
|
||||
let index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
|
||||
parent.layer.close(index); //再执行关闭
|
||||
if (type === 1) {
|
||||
parent.reloadData()
|
||||
}
|
||||
}
|
||||
|
|
@ -137,10 +137,12 @@
|
|||
<div class="layui-input-inline" id="basisName-1">
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn-box">
|
||||
<button class="layui-btn layui-btn-norma save" onclick="basisAdd()" title="新增试验依据">+</button>
|
||||
<button class="layui-btn layui-btn-primary cancel" onclick="basisDel()" title="删除试验依据">-</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="btn-box">
|
||||
<button class="layui-btn layui-btn-norma save" onclick="basisAdd()" title="新增试验依据">+</button>
|
||||
<button class="layui-btn layui-btn-primary cancel" onclick="basisDel()" title="删除试验依据">-</button>
|
||||
</div>
|
||||
|
||||
<div style="width: 98%;margin-top: 2%;margin-left: 1%" >
|
||||
|
|
|
|||
|
|
@ -179,6 +179,6 @@
|
|||
<button class="layui-btn layui-btn-primary cancel" onclick="closePage()">取消</button>
|
||||
</div>
|
||||
</body>
|
||||
<script src="../../../../js/basis/tools/child/addTestStandards.js" charset="UTF-8" type="text/javascript"></script>
|
||||
<script src="../../../../js/basis/tools/child/checkTestStandards.js" charset="UTF-8" type="text/javascript"></script>
|
||||
<script src="../../../../js/basis/tools/child/select.js" charset="UTF-8" type="text/javascript"></script>
|
||||
</html>
|
||||
Loading…
Reference in New Issue