前端接口对接

This commit is contained in:
pengyb 2024-08-21 19:52:53 +08:00
parent 899d81bb1c
commit f6417a0845
4 changed files with 288 additions and 94 deletions

View File

@ -63,27 +63,6 @@
<button class="layui-btn layui-btn-sm layui-btn-primary" lay-event="set">取消</button> <button class="layui-btn layui-btn-sm layui-btn-primary" lay-event="set">取消</button>
</script> </script>
<!-- 新增杆塔弹窗 -->
<script type="text/html" id="gmDetail">
<form class="layui-form" onsubmit="return false" style="width: 90%;height: 90%;padding: 10px;">
<div class="layui-form-item">
<div class="layui-inline" style="margin-left: 0%; ">
<label class="layui-form-label" style="width:100px;">
<i class="tip-required" style="color: red;font-size: 20px">*</i>杆塔名称:</label>
<div class="layui-input-inline">
<input type="text" name="gmName" id="gmName" class="layui-input"
lay-verify="required" maxlength="200" placeholder="请填写杆塔名称" style="width: 350px">
</div>
</div>
</div>
<div style="width: 90%;height: 60px;display: flex;align-items: center;justify-content: flex-end;margin-top: 20px;">
<button class="layui-btn layui-btn-sm layui-btn-primary" style="">取消</button>
<button class="layui-btn layui-btn-sm layui-btn-normal" style="margin-right: 20px;">确定</button>
</div>
</form>
</script>
<div class="detail-content"> <div class="detail-content">
<div class="header"> <div class="header">
@ -157,6 +136,8 @@
</div> </div>
<div class="layui-tab-item" > <div class="layui-tab-item" >
<form class="layui-form" onsubmit="return false" style="margin-left: 20px;"> <form class="layui-form" onsubmit="return false" style="margin-left: 20px;">
<input id="proId" type="hidden">
<input id="proName" type="hidden">
<div class="form-group" style="margin-top: 0.5%"> <div class="form-group" style="margin-top: 0.5%">
<div class="layui-inline"> <div class="layui-inline">
<div class="layui-input-inline"> <div class="layui-input-inline">
@ -207,15 +188,15 @@
<div class="form-group" style="margin-top: 0.5%"> <div class="form-group" style="margin-top: 0.5%">
<div class="layui-inline"> <div class="layui-inline">
<div class="layui-input-inline"> <div class="layui-input-inline">
<input id="search3" type="text" class="layui-input" placeholder="杆塔,护线员姓名" > <input id="userName" type="text" class="layui-input" placeholder="护线员姓名" >
</div> </div>
</div> </div>
<button class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="queryUser"> <button class="layui-btn layui-btn-sm layui-btn-normal" onclick="queryClick2()">
<i class="layui-icon layui-icon-search"></i> <i class="layui-icon layui-icon-search"></i>
查询 查询
</button> </button>
<button class="layui-btn layui-btn-sm layui-btn-primary" lay-submit lay-filter="resetUser"> <button class="layui-btn layui-btn-sm layui-btn-primary" onclick="resetClick2()">
<i class="layui-icon layui-icon-refresh"></i> <i class="layui-icon layui-icon-refresh"></i>
重置 重置
</button> </button>

View File

@ -0,0 +1,151 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>护线员考勤</title>
<script src="../../../plugs/jquery/jquery-3.6.0.min.js"></script>
<script src="../../../js/public/jq.js"></script>
<script src="../../../js/public/public.js"></script>
<script src="../../../js/public/public_utils.js"></script>
<script src="../../../js/public/aescbc.js"></script>
<script src="../../../plugs/layui2.7.6/layui.js"></script>
<link href="../../../plugs/layui2.7.6/css/layui.css" rel="stylesheet">
<!-- <script src="../../../util/Interceptor.js"></script> -->
<!--业务js-->
<!-- css -->
<link type="text/css" media="screen" href="../../../css/formAdd.css" rel="stylesheet">
</head>
<body>
<form class="layui-form" onsubmit="return false" style="display: none;margin: 10px 0 10px 26px;">
<input id="proId" type="hidden">
<input id="proName" type="hidden">
<input id="gtId" type="hidden">
<input id="gtName" type="hidden">
<input id="projectId" type="hidden">
<input id="projectName" type="hidden">
<div class="form-group" style="margin-top: 0.5%">
<div class="layui-inline">
<div class="layui-input-inline">
<input id="keyWord" name="keyWord" type="text" class="layui-input" placeholder="请输入杆塔或工程名称" >
</div>
</div>
<button class="layui-btn layui-btn-sm layui-btn-normal" onclick="queryClick()">
<i class="layui-icon layui-icon-search"></i>
</button>
</div>
</form>
<div style="width: 90%;height: 90%;margin-left: 5%;overflow: auto;border: 1px solid #E9E9E9;">
<div class="select-box">
<input type="text" name="taskSourceId" id="taskSourceId" class="layui-input" placeholder="请选择" readonly autocomplete="off" style="width: 90%;cursor: pointer;">
</div>
</div>
<button id="closeBt" class="layui-btn layui-btn-primary layui-border-blue" style="position: fixed;left: 67%;top: 92%;background-color: #ffffff">取消</button>
<button id="submitBt" type="button" class="layui-btn" style="position: fixed;left: 81%;top: 92%;">保存</button>
<script>
let dropdown;
layui.use(['element', 'layer', 'form', 'element','laypage'], function(){
dropdown = layui.dropdown;
$("#closeBt").click(function () {
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
});
init()
$("#submitBt").click(function(){
var gtTwoId = $("#taskSourceId").attr("stationId");
var gtTwoName = $("#taskSourceId").val();
if(!gtTwoName){
layer.msg("请选择杆塔", { icon: 0 });
return;
}
var gtId = $("#gtId").val();
var proId = $("#proId").val();
var proName = $("#proName").val();
var proIds = $("#projectId").val();
var proNames = $("#projectName").val();
$.ajax({
type: 'POST',
url: PATH_URL + '/lineProject/insertGtRel',
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
gtId: gtId,
proId: proId,
proName: proName,
gtTwoId: gtTwoId,
gtTwoName: gtTwoName,
proIds: proIds,
proNames: proNames
}),
success: function (data) {
if(data.code == 200){
parent.layer.msg("关联成功", { icon: 1 });
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
// reloading();
}else{
layer.alert(data.msg);
}
},
error: function (XMLHttpRequest, textStatus, e) {
layer.close(loadingMsg);
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
})
})
// function queryClick(){
// init();
// }
function setData(gtId,gtName,proId,proName){
$("#gtId").val(gtId);
$("#gtName").val(gtName);
$("#proId").val(proId);
$("#proName").val(proName);
}
function init(){
var keyWord = $("#keyWord").val();
$.ajax({
type: 'POST',
url: PATH_URL + '/homePageSelect/getPowerList', // 请求地址
data: {
keyWord: keyWord,
gtId: $("#gtId").val(),
proId: $("#proId").val()
}, //获取提交的表单字段
success: function (data) {
dropdown.render({
elem: '#taskSourceId',
accordion: true,
data: data.data,
click: function(item){
console.log("item:", item)
if(item.level == '3'){
$("#taskSourceId").val(`${item.title}`);
$("#taskSourceId").attr("stationId", item.id);
$("#projectId").val(`${item.pid}`);
$("#projectName").val(`${item.projectName}`);
}
},
});
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
top.layer.close(addLoadingMsg); //再执行关闭
}
});
}
</script>
</body>
</html>

View File

@ -39,40 +39,7 @@ layui.use(['form','layer','table','element'], function () {
return false; // 阻止表单跳转。如果需要表单跳转,去掉这段即可。 return false; // 阻止表单跳转。如果需要表单跳转,去掉这段即可。
}); });
initStaffTable();
//人员信息
//initStaffTable()
// 触发submit提交 按钮点击或者表单被执行提交时触发
form.on('submit(queryUser)', function (data) {
console.log("搜索")
// 对表格进行重载。id 即 table表格的id
table.reload('staffTable', {
// //设定异步数据接口的额外参数
page:{curr : 1}
,where: data.field
})
return false; // 阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
form.on('submit(resetUser)', function () {
console.log("重置")
$('#search1').val('');
$('#search2').val('');
let obj = {
search1:'',
search2:''
}
// 对表格进行重载。id 即 table表格的id
table.reload('staffTable', {
// //设定异步数据接口的额外参数
page:{curr : 1}
,where: obj
})
return false; // 阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
form.render();
}); });
//杆塔信息搜索 //杆塔信息搜索
function queryClick1(){ function queryClick1(){
@ -106,6 +73,9 @@ function resetClick1(){
} }
}) })
} }
//新增杆塔 //新增杆塔
function addClick1(){ function addClick1(){
var height = '80%'; var height = '80%';
@ -275,8 +245,11 @@ function importData1(){
function setData(data){ function setData(data){
$("#proId").val(data.proId);
$("#proName").val(data.proName);
var proName = data.proName; var proName = data.proName;
if(proName.length > 10){ if(proName.length > 8){
proName = proName.substring(0, 8) + '...' proName = proName.substring(0, 8) + '...'
} }
$("#proName").text(proName); $("#proName").text(proName);
@ -285,7 +258,13 @@ function setData(data){
$(".isTwo").text(data.isTwo == '0'? '单回路': '双回路'); $(".isTwo").text(data.isTwo == '0'? '单回路': '双回路');
$("#powerNum").text(data.powerNum); $("#powerNum").text(data.powerNum);
$("#lineNum").text(data.lineNum); $("#lineNum").text(data.lineNum);
$("#lineProName").text(data.proName);
var proName1 = data.proName;
if(proName1.length > 50){
proName1 = proName1.substring(0, 50) + '...'
}
$("#lineProName").text(proName1);
$("#lineProName").attr('title', data.proName);
$("#yjName").text(data.fgsName + ' / ' + data.yjName); $("#yjName").text(data.fgsName + ' / ' + data.yjName);
$("#volLevel").text(data.volLevel + 'kV'); $("#volLevel").text(data.volLevel + 'kV');
@ -356,13 +335,14 @@ function initGmTableTwo(){
field: '', field: '',
align: 'center', align: 'center',
templet: function(d){ templet: function(d){
console.log("sssss:", d.gtTwoName) var gtTwoName = d.gtTwoName;
let isTwo = d.isTwo; var gtId = d.gtId;
let html; var gtName = d.gtName;
if(isTwo == '0' || isTwo == 0){ var gtTwoId = d.gtTwoId;
html = '<span>单回路</span>' if(gtTwoName == 'null' || gtTwoName == null){
html = `<button class="layui-btn layui-btn-sm layui-bg-orange" onclick="setUpGt('${ gtId }', '${ gtName }')">设置</button>`
}else{ }else{
html = '<span>双回路</span>' html = `<button class="layui-btn layui-btn-sm layui-btn-primary" onclick="cancelGt('${ gtId }', '${ gtTwoId }')">取消</button>`
} }
// 返回模板内容 // 返回模板内容
return html; return html;
@ -374,36 +354,105 @@ function initGmTableTwo(){
} }
}); });
} }
//设置杆塔
function setUpGt(gtId, gtName){
var height = '98%';
var width = '30%';
var index = parent.layer.open({
title: ['选择双回路杆塔', 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'setUpGt.html',
area: [width, height],
maxmin: false,
success: function (layero, index) {
// //打开页面成功时执行
var myIframe = parent.window[layero.find('iframe')[0]['name']];
var proId = $("#proId").val();
var proName = $("#proName").val();
//getTaskSource()为子页面的方法
myIframe.setData(gtId,gtName,proId,proName);
},
yes: function (index, layero) {
// //提交子页面时执行
// // 获取弹出层中的form表单元素
// var formSubmit = layer.getChildFrame('form', index);
// var submited = formSubmit.find('button')[0];
// // 触发点击事件,会对表单进行验证,验证成功则提交表单,失败则返回错误信息
// // var myIframe = window[layero.find('iframe')[0]['name']];
// // myIframe.selectCheck(); //aaa()为子页面的方法
// submited.click();
// example.ajax.reload(); // 刷新页面
},
end: function(){
initGmTableTwo();
}
});
}
//取消设置
function cancelGt(gtId, gtTwoId){
var index = layer.confirm("确认取消吗?", { icon: 0 }, function(){
$.ajax({
type: 'POST',
url: PATH_URL + '/lineProject/delGtRelId',
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
gtId: gtId,
gtTwoId: gtTwoId
}),
success: function (data) {
if(data.code == 200){
parent.layer.msg("取消成功", { icon: 1 });
layer.close(index);
initGmTableTwo();
}else{
layer.alert(data.msg);
}
},
error: function (XMLHttpRequest, textStatus, e) {
layer.close(loadingMsg);
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
})
}
//杆塔信息搜索
function queryClick2(){
// 对表格进行重载。id 即 table表格的id
table.reload('layui_table2', {
// //设定异步数据接口的额外参数
page:{curr : 1}
,where: {
'userName': $("#userName").val()
}
})
}
function addGm(){ //重置
var height = '42%'; function resetClick2(){
var width = '38%'; //重置
var index = layer.open({ $('#userName').val("");
title: [`选择工程、杆塔 `, 'color:#3B70A1;background-color:#fff;font-size:20px'], table.reload('layui_table2', {
type: 1, where: {
content: $("#gmDetail").html(), 'userName': '',
closeBtn: 1, }
area: [width, height], })
success: function (layero, index) { }
},
cancel: function(index, layero){//关闭
console.log(3)
layer.close(index);
},
});
}
// 渲染人员表格 // 渲染人员表格
function initStaffTable(){ function initStaffTable(){
table.render({ table.render({
id: 'layui_table2',
elem: '#staffTable', elem: '#staffTable',
// url: "/sys/achievement", url: PATH_URL + "/personbase/getList",
page: true, where: {
},
page: true, //开启分页
method:'post',
skin: 'line', // 表格样式 skin: 'line', // 表格样式
cols: [[ cols: [[
{ {
@ -415,15 +464,17 @@ function initStaffTable(){
align: 'center', align: 'center',
type: 'numbers' type: 'numbers'
}, },
{field:'name', title: '姓 名',align: 'center',width:100}, {field:'userName', title: '姓 名',align: 'center',width:100},
{field:'idCard', title: '身份证号',align: 'center',}, {field:'idNumber', title: '身份证号',align: 'center',},
{field:'phone', title: '联系电话',align: 'center',width:120}, {field:'tel', title: '联系电话',align: 'center',width:120},
{field:'line', title: '管辖线路名称',align: 'center',width:350}, {field:'proName', title: '管辖线路名称',align: 'center',width:350},
{field:'area', title: '范围、基数',align: 'center',width:350}, {field:'gtName', title: '范围、基数',align: 'center',width:350},
{field:'startTime', title: '协议起始日期',align: 'center',width:140}, {field:'startTime', title: '协议起始日期',align: 'center',width:140},
{field:'endTime', title: '协议终止日期',align: 'center',width:140} {field:'endTime', title: '协议终止日期',align: 'center',width:140}
]], ]],
data: tableData2 done: function(res,curr,count){
//checkPermission();
}
}); });
} }
@ -481,4 +532,15 @@ function exportData1() {
+ "&type=" + type + "&type=" + type
+ "&proId=" + proId + "&proId=" + proId
+ "&proName=" + parentData.proName + "&proName=" + parentData.proName
}
//导出人员信息
function exportData() {
// let search1 = $('#search1').val();
// let search2 = $('#search2').val();
window.location.href = oiPlanUrl + "/monthlyPlanSubmission/export?token=" + token;
} }

View File

@ -165,7 +165,7 @@ function checkView(vo) {
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
data: JSON.stringify({"proId": vo.proId}), data: JSON.stringify({"proId": vo.proId}),
success: function (data) { success: function (data) {
console.log("data:", data) console.log("ssadsad:", data)
var index = layer.open({ var index = layer.open({