试验管理
This commit is contained in:
parent
ca9e8a2086
commit
9030f67757
|
|
@ -354,6 +354,9 @@ function saveData(data) {
|
|||
|
||||
//获取试验项内容列表
|
||||
var items = convertToItems(data.field);
|
||||
if(data.field["id"] !=""){
|
||||
items = convertToItemsUpdate(data.field);
|
||||
}
|
||||
|
||||
// 获取select元素
|
||||
// var selectElement = document.getElementById('devCode');
|
||||
|
|
@ -392,7 +395,7 @@ function saveData(data) {
|
|||
//
|
||||
'paramsData':paramsData
|
||||
}
|
||||
|
||||
debugger;
|
||||
console.log(obj)
|
||||
|
||||
let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||
|
|
@ -501,6 +504,7 @@ function convertToExperDevList(originalData){
|
|||
return experDevList;
|
||||
}
|
||||
|
||||
|
||||
function convertToItems(obj){
|
||||
var dataField = obj;
|
||||
var items = [];
|
||||
|
|
@ -531,6 +535,8 @@ function convertToItems(obj){
|
|||
// 填充 itemName 数据
|
||||
Object.keys(dataField).forEach(key => {
|
||||
if (key.startsWith('itemName-')) {
|
||||
debugger
|
||||
|
||||
const parts = key.split('-');
|
||||
const experTypeIndex = parts[1];
|
||||
const itemIndex = parts[2];
|
||||
|
|
@ -553,6 +559,64 @@ function convertToItems(obj){
|
|||
items.sort((a, b) => a.itemsSort - b.itemsSort);
|
||||
return items;
|
||||
}
|
||||
function convertToItemsUpdate(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({
|
||||
"id":"",
|
||||
"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];
|
||||
item.id= dataField['experTypeId-' + experTypeIndex];
|
||||
});
|
||||
|
||||
// 填充 itemName 数据
|
||||
Object.keys(dataField).forEach(key => {
|
||||
if (key.startsWith('itemName-')) {
|
||||
debugger
|
||||
|
||||
const parts = key.split('-');
|
||||
const experTypeIndex = parts[1];
|
||||
const itemIndex = parts[2];
|
||||
const itemNum = parseInt(itemIndex);
|
||||
const itemName = dataField[key];
|
||||
const id = dataField['itemId-' + experTypeIndex + '-' + itemNum];
|
||||
|
||||
// 找到对应的试验项并添加试验项内容
|
||||
items[experTypeIndex - 1].item.push({
|
||||
"id":id,
|
||||
"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,});
|
||||
|
|
@ -688,6 +752,7 @@ function generateHeaders(data) {
|
|||
// firstLevelHeader.textContent = `${item.experTypeName} - ${item.amount}`;
|
||||
firstLevelHeader.innerHTML=`
|
||||
${item.experTypeName} - ${item.amount}
|
||||
<input type="hidden" class="layui-input" id="experTypeId-${counter}" name="experTypeId-${counter}" value="${item.id}">
|
||||
<input type="hidden" class="layui-input " id="experTypeName-${counter}" name="experTypeName-${counter}" value="${item.experTypeName}" />
|
||||
<input type="hidden" class="layui-input " id="amount-${counter}" name="amount-${counter}" readonly value="${item.amount}" />
|
||||
</div>`;
|
||||
|
|
@ -699,6 +764,7 @@ function generateHeaders(data) {
|
|||
secondLevelHeader.classList.add('center-aligned');
|
||||
secondLevelHeader.innerHTML=`
|
||||
${subItem.itemName}
|
||||
<input type="hidden" class="layui-input" id="itemId-${counter}-${totalCols}" name="itemId-${counter}-${totalCols}" value="${subItem.id}" >
|
||||
<input type="hidden" class="layui-input" id="itemName-${counter}-${totalCols}" name="itemName-${counter}-${totalCols}" value="${subItem.itemName}" >
|
||||
`
|
||||
// secondLevelHeader.textContent = subItem.itemName;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
let form, layer, table, tableIns,idParam,customNumParam;
|
||||
let pageNum = 1, limitSize = 10; // 默认第一页,分页数量为10
|
||||
|
||||
var pers = checkPermission();
|
||||
|
||||
function setParams(params) {
|
||||
idParam = JSON.parse(params).id;
|
||||
customNumParam = JSON.parse(params).customNum;
|
||||
|
|
@ -141,15 +143,25 @@ function initTable(dataList, limit, page) {
|
|||
templet: function (d) {
|
||||
var html = '';
|
||||
let search ="";
|
||||
let edit = "";
|
||||
|
||||
var experId = d.experId;
|
||||
var sampleId = d.sampleId;
|
||||
var devTypeCode = d.devTypeCode;
|
||||
|
||||
if(d.status != "待试验"){
|
||||
search="<a class=\"layui-icon layui-icon-search\" title='查看' style=\"color: blue;\" onclick=\"checkData('" + d.experId + "','" + d.sampleId + "','"+ d.devTypeCode+"')\"></a>";
|
||||
search = buttonCheck(experId,sampleId,devTypeCode, "", pers);
|
||||
// search="<a class=\"layui-icon layui-icon-search\" title='查看' style=\"color: blue;\" onclick=\"checkData('" + d.experId + "','" + d.sampleId + "','"+ d.devTypeCode+"')\"></a>";
|
||||
}
|
||||
if (d.status == "待试验" || d.status == "待提交" || d.status == "审阅不通过" || d.status == "审核不通过" || d.status == "审批不通过") {
|
||||
let edit="<a class=\"layui-icon layui-icon-edit\" title='编制' style=\"color: blue;\" onclick=\"addData('" + d.experId + "','" + d.sampleId + "','"+ d.devTypeCode+"')\"></a>";
|
||||
html=search+edit;
|
||||
// edit="<a class=\"layui-icon layui-icon-edit\" title='编制' style=\"color: blue;\" onclick=\"addData('" + d.experId + "','" + d.sampleId + "','"+ d.devTypeCode+"')\"></a>";
|
||||
if (experId!=null && experId!='null') {
|
||||
edit=buttonEditTest(experId,sampleId,devTypeCode, "sys:experimentalTest:edit", pers);
|
||||
}else{
|
||||
html=search;
|
||||
edit=buttonAdd(experId,sampleId,devTypeCode, "sys:experimentalTest:add", pers);
|
||||
}
|
||||
}
|
||||
html = search+edit;
|
||||
return html;
|
||||
}
|
||||
},
|
||||
|
|
@ -248,6 +260,15 @@ function reloadData() {
|
|||
}
|
||||
|
||||
// 查看
|
||||
function buttonCheck(experId,sampleId,devTypeCode, permission, pers){
|
||||
if(permission != ""){
|
||||
if ($.inArray(permission, pers) < 0) {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
var btn=$("<a class=\"layui-icon layui-icon-search\" title='查看' style=\"color: blue;\" onclick=\"checkData('" + experId + "','" + sampleId + "','"+ devTypeCode+"')\"></a>");
|
||||
return btn.prop("outerHTML");
|
||||
}
|
||||
function checkData(experId,sampleId,devTypeCode) {
|
||||
let param = {
|
||||
'experId': experId,
|
||||
|
|
@ -259,6 +280,24 @@ function checkData(experId,sampleId,devTypeCode) {
|
|||
}
|
||||
|
||||
// 试验新增、修改
|
||||
function buttonEditTest(experId,sampleId,devTypeCode, permission, pers){
|
||||
if(permission != ""){
|
||||
if ($.inArray(permission, pers) < 0) {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
var btn=$("<a class=\"layui-icon layui-icon-edit\" title='编制' style=\"color: blue;\" onclick=\"addData('" + experId + "','" + sampleId + "','"+ devTypeCode+"')\"></a>");
|
||||
return btn.prop("outerHTML");
|
||||
}
|
||||
function buttonAdd(experId,sampleId,devTypeCode, permission, pers){
|
||||
if(permission != ""){
|
||||
if ($.inArray(permission, pers) < 0) {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
var btn= $("<a class=\"layui-icon layui-icon-edit\" title='新增' style=\"color: blue;\" onclick=\"addData('" + experId + "','" + sampleId + "','"+ devTypeCode+"')\"></a>");
|
||||
return btn.prop("outerHTML");
|
||||
}
|
||||
function addData(experId,sampleId,devTypeCode) {
|
||||
let title = '新增试验'
|
||||
if (experId!=null && experId!='null') {
|
||||
|
|
|
|||
|
|
@ -3,6 +3,8 @@ let pageNum = 1, limitSize = 10; // 默认第一页,分页数量为10
|
|||
|
||||
let temp_table_list = []; // 临时保存每页的所有数据
|
||||
let temp_all_list = []; // 临时保存所有选中的数据
|
||||
var pers = checkPermission();
|
||||
|
||||
layui.use(['form', 'layer', 'table', 'laydate'], function () {
|
||||
form = layui.form;
|
||||
layer = layui.layer;
|
||||
|
|
@ -127,7 +129,11 @@ function initTable(dataList, limit, page) {
|
|||
},*/
|
||||
{title: "操作", unresize: true, width: 300, align: "center",
|
||||
templet: function (d) {
|
||||
return '<a href="#" class="layui-icon layui-icon-set-sm" style="color: blue;cursor:pointer;" title="试验" onclick="testClick(\'' + d.id + '\',\''+d.customNum+'\')"></a>';
|
||||
var id = d.id;
|
||||
var customNum = d.customNum
|
||||
var edit = buttonTest(id,customNum, "sys:experimentalTest:query", pers);
|
||||
return edit;
|
||||
//return '<a href="#" class="layui-icon layui-icon-set-sm" style="color: blue;cursor:pointer;" title="试验" onclick="testClick(\'' + d.id + '\',\''+d.customNum+'\')"></a>';
|
||||
}
|
||||
},
|
||||
],
|
||||
|
|
@ -247,14 +253,24 @@ function reloadData() {
|
|||
pages(pageNum, limitSize);
|
||||
}
|
||||
|
||||
// 试验标准新增、修改
|
||||
// 试验验详情查询
|
||||
function buttonTest(id,customNum, permission, pers){
|
||||
if(permission != ""){
|
||||
if ($.inArray(permission, pers) < 0) {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
//return '<a href="#" class="layui-icon layui-icon-set-sm" style="color: blue;cursor:pointer;" title="试验" onclick="testClick(\'' + d.id + '\',\''+d.customNum+'\')"></a>';
|
||||
var btn = $("<button class='layui-btn layui-btn-xs' title='试验' onclick='testClick(\"" + id +"\",\"" + customNum +"\")'><i class='layui-icon layui-icon-set-sm'></i></button>");
|
||||
return btn.prop("outerHTML");
|
||||
}
|
||||
function testClick(id,customNum) {
|
||||
let title = '试验'
|
||||
let param = {
|
||||
'id': id,
|
||||
'customNum':customNum
|
||||
}
|
||||
openIframeMax("testList", title, "child/testList.html", '100%', '100%', param);
|
||||
openIframeMaxRefresh("testList", title, "child/testList.html", '100%', '100%', param);
|
||||
}
|
||||
|
||||
function getDevSelected() {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
let form, layer, table, tableIns;
|
||||
let pageNum = 1, limitSize = 10; // 默认第一页,分页数量为10
|
||||
|
||||
var pers = checkPermission();
|
||||
layui.use(['form', 'layer', 'table', 'laydate'], function () {
|
||||
form = layui.form;
|
||||
layer = layui.layer;
|
||||
|
|
@ -70,9 +72,15 @@ function initTable(dataList, limit, page) {
|
|||
templet: function (d) {
|
||||
|
||||
let html = '';
|
||||
let del="<a class=\"layui-icon layui-icon-delete\" style='cursor:pointer;' title='删除' onclick=\"delData('" + d.id + "')\"></a>"
|
||||
let edit="<a class=\"layui-icon layui-icon-edit\" style='cursor:pointer;' title='修改' onclick=\"addData('" + d.id + "')\"></a>";
|
||||
let search="<a class=\"layui-icon layui-icon-search\" style='cursor:pointer;' title='查看' onclick=\"checkData('" + d.id + "')\"></a>";
|
||||
let id = d.id;
|
||||
|
||||
var edit = buttonEdit(id, "sys:experimentStandard:edit", pers);
|
||||
var search = buttonSearch(id, "", pers);
|
||||
var del = buttonDel(id, "sys:experimentStandard:del", pers);
|
||||
|
||||
// let del="<a class=\"layui-icon layui-icon-delete\" style='cursor:pointer;' title='删除' onclick=\"delData('" + d.id + "')\"></a>"
|
||||
// let edit="<a class=\"layui-icon layui-icon-edit\" style='cursor:pointer;' title='修改' onclick=\"addData('" + d.id + "')\"></a>";
|
||||
// let search="<a class=\"layui-icon layui-icon-search\" style='cursor:pointer;' title='查看' onclick=\"checkData('" + d.id + "')\"></a>";
|
||||
html=search+edit+del;
|
||||
return html;
|
||||
}
|
||||
|
|
@ -122,6 +130,15 @@ function reloadData() {
|
|||
}
|
||||
|
||||
// 试验标准新增、修改
|
||||
function buttonEdit(id, permission, pers){
|
||||
if(permission != ""){
|
||||
if ($.inArray(permission, pers) < 0) {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
var btn = $("<button class='layui-btn layui-btn-xs' title='编辑' onclick='addData(\"" + id +"\")'><i class='layui-icon layui-icon-edit'></i></button>");
|
||||
return btn.prop("outerHTML");
|
||||
}
|
||||
function addData(id) {
|
||||
let title = '新增试验标准'
|
||||
if (id) {
|
||||
|
|
@ -134,6 +151,16 @@ function addData(id) {
|
|||
}
|
||||
|
||||
// 查看试验标准
|
||||
function buttonSearch(id, permission, pers){
|
||||
if(permission != ""){
|
||||
if ($.inArray(permission, pers) < 0) {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
var btn = $("<button class='layui-btn layui-btn-xs' title='查看' onclick='checkData(\"" + id +"\")'><i class='layui-icon layui-icon-search'></i></button>");
|
||||
return btn.prop("outerHTML");
|
||||
}
|
||||
function checkData(id) {
|
||||
let param = {
|
||||
'id': id
|
||||
|
|
@ -142,6 +169,17 @@ function checkData(id) {
|
|||
}
|
||||
|
||||
/*删除用户*/
|
||||
|
||||
function buttonDel(id, permission, pers){
|
||||
if(permission != ""){
|
||||
if ($.inArray(permission, pers) < 0) {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
var btn = $("<button class='layui-btn layui-btn-xs' title='编辑' onclick='delData(\""+id+"\")'><i class='layui-icon layui-icon-delete'></i></button>");
|
||||
return btn.prop("outerHTML");
|
||||
}
|
||||
|
||||
function delData(id) {
|
||||
layer.confirm("确定删除吗?", {
|
||||
move: false
|
||||
|
|
|
|||
|
|
@ -184,3 +184,37 @@ function openIframeMax(id, title, content, width, height, params) {
|
|||
// 弹窗打开后立即调用 layer.full
|
||||
// layer.full(layerIndex);
|
||||
}
|
||||
|
||||
//关闭后刷新页面
|
||||
function openIframeMaxRefresh(id, title, content, width, height, params) {
|
||||
let layerIndex = layer.open({
|
||||
id: id,
|
||||
type: 2,
|
||||
title: ['<div style="border-left: 3px solid #00377A;color:#00377A;font-size:18px;display: flex;letter-spacing:1px;align-items: center;height: 20px;padding: 0 10px;font-weight: bold;">' + title + '</div>', 'font-size:16px;background-color:#f0f0f0;display: flex;align-items: center;'],
|
||||
content: content,
|
||||
shade: 0.3,
|
||||
shadeClose: false,
|
||||
area: [width, height],
|
||||
maxmin: true,
|
||||
move: false,
|
||||
success: function () {
|
||||
let iframeWin = window["layui-layer-iframe" + layerIndex];
|
||||
// console.log(params)
|
||||
iframeWin.setParams(JSON.stringify(params));
|
||||
},
|
||||
cancel:function () {
|
||||
// 视频监控-历史回放关闭前回调
|
||||
if(params.videoMonitor){
|
||||
let iframeWin = window["layui-layer-iframe" + layerIndex];
|
||||
iframeWin.clickLogout();
|
||||
}
|
||||
},end:function () {
|
||||
reloadData()
|
||||
}
|
||||
});
|
||||
// console.log(layer)
|
||||
// layer.max(layerIndex)
|
||||
|
||||
// 弹窗打开后立即调用 layer.full
|
||||
// layer.full(layerIndex);
|
||||
}
|
||||
|
|
@ -11,6 +11,7 @@
|
|||
<script src="../../../../js/openIframe.js"></script>
|
||||
<script src="../../../../js/my/aes.js"></script>
|
||||
<script src="../../../../js/ajaxRequest.js"></script>
|
||||
<script src="../../../../js/my/permission.js"></script>
|
||||
<title>试验</title>
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
<script src="../../../js/openIframe.js"></script>
|
||||
<script src="../../../js/my/aes.js"></script>
|
||||
<script src="../../../js/ajaxRequest.js"></script>
|
||||
<script type="text/javascript" src="../../../js/my/permission.js"></script>
|
||||
<title>试验管理</title>
|
||||
</head>
|
||||
<body>
|
||||
|
|
@ -45,7 +46,7 @@
|
|||
<div class="layui-inline btns">
|
||||
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm btn-1" permission="sys:experimental:query" onclick="query(1)">查询
|
||||
</button>
|
||||
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2"
|
||||
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2" permission="sys:experimentalTest:commitCheckTestData"
|
||||
onclick="commitCheckTestData()">
|
||||
<div class="layout" style="justify-content: space-around;">
|
||||
<p>审查</p></div>
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@
|
|||
<script src="../../../js/openIframe.js"></script>
|
||||
<script src="../../../js/my/aes.js"></script>
|
||||
<script src="../../../js/ajaxRequest.js"></script>
|
||||
<script type="text/javascript" src="../../../js/my/permission.js"></script>
|
||||
<title>试验标准管理</title>
|
||||
</head>
|
||||
<body>
|
||||
|
|
@ -28,7 +29,7 @@
|
|||
<div class="layui-inline btns">
|
||||
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm btn-1" permission="sys:experimentStandard:query" onclick="query(1)">查询
|
||||
</button>
|
||||
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2"
|
||||
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2" permission="sys:experimentStandard:add"
|
||||
onclick="addData(null)">
|
||||
<div class="layout" style="justify-content: space-around;"><img
|
||||
src="../../../img/form/add_icon3.png">
|
||||
|
|
|
|||
Loading…
Reference in New Issue