1、优化UI

This commit is contained in:
weidong 2024-01-22 13:27:26 +08:00
parent 2bf0f1cb80
commit b55d396294
10 changed files with 92 additions and 43 deletions

View File

@ -10,14 +10,16 @@ import javax.servlet.http.HttpSession;
*/
public class BasicController {
public static int QUERY_ALL = -1;
int tenantId;
String loginRole;
public void initModel(Model m, HttpSession session)
{
String role = (String) session.getAttribute(SessionUtils.SESSION_ROLE);
int tenant_id = (int) session.getAttribute(SessionUtils.SESSION_TENANT_ID);
loginRole = (String) session.getAttribute(SessionUtils.SESSION_ROLE);
tenantId = (int) session.getAttribute(SessionUtils.SESSION_TENANT_ID);
m.addAttribute(SessionUtils.SESSION_CURRENT_USER, session.getAttribute(SessionUtils.SESSION_CURRENT_USER));
m.addAttribute(SessionUtils.SESSION_ROLE, role);
m.addAttribute(SessionUtils.SESSION_TENANT_ID, tenant_id);
m.addAttribute(SessionUtils.SESSION_ROLE, loginRole);
m.addAttribute(SessionUtils.SESSION_TENANT_ID, tenantId);
m.addAttribute(SessionUtils.SESSION_TENANT_NAME, session.getAttribute(SessionUtils.SESSION_TENANT_NAME));
}

View File

@ -1,5 +1,6 @@
package com.imdroid.beidou.controller;
import com.imdroid.beidou.common.Role;
import com.imdroid.beidou.entity.TenantMapper;
import com.imdroid.beidou.entity.Tenant;
import com.imdroid.secapi.client.RtcmClient;
@ -48,7 +49,15 @@ public class GnssDeviceController extends BasicController{
@RequestMapping("/page/gnss_dev_cfg")
public String gnssDevCfg(Model m, HttpSession session) {
initModel(m, session);
List<Tenant> tenants = tenantMapper.selectList(null);
List<Tenant> tenants;
if(loginRole.equals(Role.SUPER_ADMIN) || loginRole.equals(Role.ADMIN)) {
tenants = tenantMapper.selectList(null);
}
else{
QueryWrapper<Tenant> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("id", tenantId);
tenants = tenantMapper.selectList(queryWrapper);
}
m.addAttribute("tenant_list", tenants);
return "/page/gnss_dev_cfg";
@ -60,8 +69,16 @@ public class GnssDeviceController extends BasicController{
List<GnssGroup> gnssGroups = gnssGroupMapper.selectList(null);
List<GnssGroupCalc> gnssGroupCalcs = gnssGroupCalcMapper.selectList(null);
List<GnssGroupFwd> gnssGroupFwds = gnssGroupFwdMapper.selectList(null);
List<Tenant> tenants = tenantMapper.selectList(null);
List<Tenant> tenants;
if(loginRole.equals(Role.SUPER_ADMIN) || loginRole.equals(Role.ADMIN)) {
tenants = tenantMapper.selectList(null);
}
else{
QueryWrapper<Tenant> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("id", tenantId);
tenants = tenantMapper.selectList(queryWrapper);
}
m.addAttribute("tenant_list", tenants);
m.addAttribute("gnss_group_list", gnssGroups);
m.addAttribute("gnss_group_calc_list", gnssGroupCalcs);

View File

@ -3,6 +3,8 @@ package com.imdroid.beidou.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.query.MPJQueryWrapper;
import com.imdroid.beidou.entity.Tenant;
import com.imdroid.beidou.entity.TenantMapper;
import com.imdroid.beidou.service.CommonExcelService;
import com.imdroid.secapi.dto.GnssStatus;
import com.imdroid.secapi.dto.GnssStatusJoin;
@ -15,17 +17,21 @@ import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.List;
@Controller
public class GnssStatusController extends BasicController implements CommonExcelService<GnssStatus, GnssStatusJoin> {
@Autowired
GnssStatusMapper gnssStatusMapper;
@Autowired
TenantMapper tenantMapper;
/**** 推送页面 *****/
@RequestMapping("/page/gnss_status")
public String gnssStatus(Model m, HttpSession session) {
initModel(m, session);
List<Tenant> tenants = tenantMapper.selectList(null);
m.addAttribute("tenant_list", tenants);
return "/page/gnss_status";
}

View File

@ -75,7 +75,6 @@ public class LoginController {
Tenant tenant = tenantMapper.selectById(user.getTenantid());
SessionUtils.setCurrentUser(request, user, tenant);
//response.sendRedirect("/index"); //发这条没用会导致login.html收不到应答也跳转不了
HttpResult rsp = HttpResult.success(null);
return HttpResult.success(null);
}
}
@ -122,8 +121,8 @@ public class LoginController {
}
@RequestMapping(value = "/do_logout")
public void logout(HttpServletRequest request, HttpServletResponse response) throws IOException {
public String logout(HttpServletRequest request) throws IOException {
request.getSession().invalidate();
response.sendRedirect("/login");
return "/login";
}
}

View File

@ -53,6 +53,12 @@
"icon": "fa fa-gear",
"target": "_self",
"child": [
{
"title": "通用参数",
"href": "page/gnss_group_cfg",
"icon": "fa fa-minus",
"target": "_self"
},
{
"title": "设备参数",
"href": "page/gnss_dev_cfg",

View File

@ -67,7 +67,7 @@
<hr>
</dd>
<dd>
<a href="javascript:;" class="login-out">退出登录</a>
<a href="javascript:;" layuimini-content-href="do_logout" class="login-out">退出登录</a>
</dd>
</dl>
</li>
@ -150,12 +150,6 @@
maxTabNum: 20, // 最大的tab打开数量
};
miniAdmin.render(options);
$('.login-out').on("click", function () {
layer.msg('退出登录成功', function () {
window.location = 'login';
});
});
});
</script>
</body>

View File

@ -24,7 +24,7 @@
<input type="text" name="sl_deviceid" id="deviceid" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<div class="layui-inline" th:if="${role=='SUPER_ADMIN' || role=='ADMIN'}">
<label class="layui-form-label">所属部门</label>
<div class="layui-input-inline">
<select name="n_tenantid" id="n_tenantid" lay-search="">

View File

@ -36,7 +36,7 @@
<input type="text" name="project_id" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<div class="layui-inline" th:if="${role=='SUPER_ADMIN' || role=='ADMIN'}">
<label class="layui-form-label">所属部门</label>
<div class="layui-input-inline">
<select name="tenantname" id="tenantname" lay-search="">

View File

@ -34,19 +34,36 @@
</script>
<script type="text/html" id="toolbarTable">
<div class="layui-btn-container">
<div class="layui-btn-container" th:if="${role=='SUPER_ADMIN' || role=='ADMIN'}">
<button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add"> 添加 </button>
</div>
</script>
</div>
<script src="../lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script th:inline="none">
<script th:inline="javascript">
layui.use(['form', 'table'], function () {
var $ = layui.$,
form = layui.form,
table = layui.table;
var cfg_cols = [
{field: 'id', title: '组号', sort: true},
{field: 'work_cycle', title: '工作周期(分钟)'},
{field: 'active_time', title: '激活时长(分钟)'},
{field: 'active_offset', title: '偏置(分钟)'},
{field: 'rs_adv', title: '基准站提前时间(分钟)'},
{field: 'power_mode', title: '功耗模式',templet: "<div>{{d.power_mode==0?'低功耗':'普通'}}</div>"},
{field: 'device_num', title: '关联设备数'},
{title: '操作', toolbar: '#currentTableBar', align: "center"}
];
if([[${role}]] != "ADMIN" && [[${role}]] != "SUPER_ADMIN") {
cfg_cols[3].hide = true;
cfg_cols[4].hide = true;
cfg_cols[7].hide = true;
}
/**
** 基本参数组
**/
@ -55,16 +72,9 @@
url: '/gnss/group/list',
toolbar: '#toolbarTable',
defaultToolbar: [],
cols: [[
{field: 'id', title: '组号', sort: true},
{field: 'work_cycle', title: '工作周期(分钟)'},
{field: 'active_time', title: '激活时长(分钟)'},
{field: 'active_offset', title: '偏置(分钟)'},
{field: 'rs_adv', title: '基准站提前时间(分钟)'},
{field: 'power_mode', title: '功耗模式',templet: "<div>{{d.power_mode==0?'低功耗':'普通'}}</div>"},
{field: 'device_num', title: '关联设备数'},
{title: '操作', toolbar: '#currentTableBar', align: "center"}
]],
cols: [
cfg_cols
],
limit: 10,
page: true,
skin: 'line'
@ -131,23 +141,29 @@
/**
** 解算参数组
**/
var cfg2_cols = [
{field: 'id', title: '组号', sort: true},
{field: 'filter_hour', title: '滤波周期(小时)'},
{field: 'xy_threshold', title: '水平异常门限(mm)'},
{field: 'z_threshold', title: '垂直异常门限(mm)'},
{field: 'auto_filter', title: '自适应滤波', templet: "<div>{{d.auto_filter==1?'启用':'禁用'}}</div>"},
{field: 'filter_min_hour', title: '最小滤波周期'},
{field: 'auto_threshold', title: '触发门限(mm)'},
{field: 'auto_upload', title: '自动补传', templet: "<div>{{d.auto_upload==1?'启用':'禁用'}}</div>"},
{field: 'device_num', title: '关联设备数'},
{title: '操作', toolbar: '#currentTableBar', align: "center"}
];
if([[${role}]] != "ADMIN" && [[${role}]] != "SUPER_ADMIN") {
cfg2_cols[9].hide = true;
}
table.render({
elem: '#calcParaTableId',
url: '/gnss/group/list_calc',//假数据
toolbar: '#toolbarTable',
defaultToolbar: [],
cols: [[
{field: 'id', title: '组号', sort: true},
{field: 'filter_hour', title: '滤波周期(小时)'},
{field: 'xy_threshold', title: '水平异常门限(mm)'},
{field: 'z_threshold', title: '垂直异常门限(mm)'},
{field: 'auto_filter', title: '自适应滤波', templet: "<div>{{d.auto_filter==1?'启用':'禁用'}}</div>"},
{field: 'filter_min_hour', title: '最小滤波周期'},
{field: 'auto_threshold', title: '触发门限(mm)'},
{field: 'auto_upload', title: '自动补传', templet: "<div>{{d.auto_upload==1?'启用':'禁用'}}</div>"},
{field: 'device_num', title: '关联设备数'},
{title: '操作', toolbar: '#currentTableBar', align: "center"}
]],
cols: [
cfg2_cols
],
limit: 10,
page: true,
skin: 'line'

View File

@ -24,6 +24,15 @@
<input type="text" name="sl_d.deviceid" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline" th:if="${role=='SUPER_ADMIN' || role=='ADMIN'}">
<label class="layui-form-label">所属部门</label>
<div class="layui-input-inline">
<select name="n_tenantid" id="n_tenantid" lay-search="">
<option value="">全部</option>
<option th:each="item : ${tenant_list}" th:text="${item.name}" th:value="${item.id}"></option>
</select>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">状态</label>
<div class="layui-input-inline">