SGGL_JT/SUBQHSE/FineUIPro.Web/indexProject.aspx

1190 lines
48 KiB
Plaintext
Raw Normal View History

2025-04-07 17:43:30 +08:00
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="indexProject.aspx.cs" Inherits="FineUIPro.Web.indexProject" Async="true" AsyncTimeout="360000" %>
<!DOCTYPE html>
<html>
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="initial-scale=scale,maximum-scale=scale,minimum-scale=scale,user-scalable=no" />
<title>QHSE管理数字化平台</title>
<%-- <link type="text/css" rel="stylesheet" href="~/res/css/default.css" />
<link rel="stylesheet" href="~/res/indexv1/iconfont/iconfont.css" />
<link rel="stylesheet" href="~/res/indexv1/css/index2.css" />--%>
2025-04-18 17:16:38 +08:00
<script src="./res/lib/flex.js"></script>
2025-04-08 15:27:55 +08:00
<link href="~/res/indexv2/assets/iconfont/iconfont.css" rel="stylesheet" />
2025-04-07 17:43:30 +08:00
<link href="~/res/indexv2/assets/css/video-7.15.0.min.css" rel="stylesheet" />
2025-04-08 15:27:55 +08:00
<link href="~/res/indexv2/assets/css/index7.css" rel="stylesheet" />
2025-04-07 17:43:30 +08:00
<link href="~/res/indexv2/assets/css/swiper.min.css" rel="stylesheet" />
2025-04-18 17:16:38 +08:00
<link href="~/res/homecss/common.css" rel="stylesheet" />
<link href="~/res/homecss/head.css?v3" rel="stylesheet" />
2025-04-08 15:27:55 +08:00
<style type="text/css">
html {
min-height: auto;
}
.sd-index1-body {
}
.f-widget-content {
border: none;
background: none;
}
body > .f-panel-border,  body > .f-panel-border > div  {
background: #ffffff;
}
2025-04-18 17:16:38 +08:00
[v-cloak] {
display: none;
}
2025-04-08 15:27:55 +08:00
</style>
<style type="text/css">
.f-tabstrip-header-clip {
width: 100%;
height: 35px;
}
.up-wrap {
height: 55px;
padding: 0 10px;
}
.item-s {
padding: 0;
margin: 0;
}
.f-btn .f-btn-text {
vertical-align: baseline !important;
2025-04-18 17:16:38 +08:00
color: #ffffff;
line-height: 1;
2025-04-08 15:27:55 +08:00
}
.f-state-hover {
background-color: transparent !important;
}
.bgbtn {
width: 100%;
border: none !important;
background-color: transparent !important;
padding: 0 !important;
2025-04-18 17:16:38 +08:00
color: #ffffff;
2025-04-08 15:27:55 +08:00
line-height: 1;
}
.activeClick {
font-weight: 800;
color: white !important;
}
.bgbtn .x-frame-ml, .bgbtn .x-frame-mc, .bgbtn .x-frame-mr,
.bgbtn .x-frame-tl, .bgbtn .x-frame-tc, .bgbtn .x-frame-tr,
.bgbtn .x-frame-bl, .bgbtn .x-frame-bc, .bgbtn .x-frame-br,
.bgbtn a:visited, .bgbtn .f-state-focus {
background-image: none;
background-color: transparent;
2025-04-18 17:16:38 +08:00
color: #ffffff;
2025-04-08 15:27:55 +08:00
}
.f-state-default, .f-widget-content .f-state-default, .f-widget-header .f-state-default {
background-image: none;
background-color: transparent;
}
.header .layui-nav {
padding: 0;
margin: 0;
}
.bgbtntop.f-btn.f-state-default .f-icon, .bgbtntop.f-btn.f-state-hover .f-icon, .bgbtntop.f-btn.f-state-focus .f-icon, .bgbtntop.f-btn.f-state-active .f-icon {
color: #37a6ff;
}
.activeClick .f-icon {
color: white !important;
}
.f-panel-title-text {
color: #1ab1ff;
}
.f-messagebox-notify {
background-color: #ffffff !important;
}
.f-panel, .f-widget-header, .f-tree-headerstyle .f-panel-body {
2025-04-18 17:16:38 +08:00
background-color: #001B35;
2025-04-08 15:27:55 +08:00
/* color: #fff;*/
border: none !important;
font-size: 14px !important;
height: 35px;
}
.f-menu-item-text, .f-tree-cell-text, .f-widget-content a, .f-qtip-content {
color: #1ab1ff;
}
.f-state-hover.f-tree-node a {
color: #37a6ff;
}
.f-corner-all {
background-color: #dfe4f1;
}
.f-state-hover.f-tree-node a {
color: #37a6ff;
}
.f-state-default, .f-widget-content .f-state-default, .f-widget-header .f-state-default {
border-color: transparent;
}
.f-tree-table .f-state-active, .f-widget-content .f-state-active, .f-widget-header .f-state-active {
2025-04-18 17:16:38 +08:00
background: #001B35;
2025-04-08 15:27:55 +08:00
}
.f-tabstrip-align-left .f-tab-header.f-first {
/*background-color: #dfe4f1;
color: #333;*/
border: none !important;
}
.top-li-item {
position: relative;
}
.top-li-item .f-btn-inner {
display: none;
}
.sd-header .sd-header-top .sd-header-top-right ul li span:nth-child(2n) {
margin-right: 0;
}
#Panel1_leftPanel_treeMenu .f-state-hover .f-icon {
color: #fff !important;
}
#Panel1_leftPanel_treeMenu .f-state-hover {
background: #99e7ff !important;
}
.sd-header-absolunt-top {
top: 10% !important;
font-size: 0.14rem !important;
}
.sd-header-absolunt-bottom {
top: 0.20292rem !important;
font-size: 0.1rem !important;
}
.projcet-select {
float: left;
height: 30px;
}
.projcet-select .f-state-focus,
.projcet-select .f-widget-content .f-state-focus,
.projcet-select .f-widget-header .f-state-focus {
/*background-color: #107f8b !important;*/
color: #fff;
}
.f-field-dropdownlist-wrap .f-field-textbox {
background-color: transparent;
}
.f-field-dropdownlist, .f-field-dropdownlist-pop {
background-color: #0E113C;
color: #1AB1FF !important;
/*color: #1ab1ff;*/
}
.f-field-dropdownlist-wrap .f-field-textbox {
/*width:auto;*/
border: none !important;
}
.f-grid-row-alt {
2025-04-18 17:16:38 +08:00
background-color: #001B35;
2025-04-08 15:27:55 +08:00
}
</style>
2025-04-07 17:43:30 +08:00
<style type="text/css">
.f-tabstrip-header-clip {
width: 100%;
height: 35px;
}
.f-messagebox-notify {
background-color: #ffffff !important;
}
.up-wrap {
height: 55px;
padding: 0 10px;
}
.f-messagebox-alert > .f-panel-bodyct {
background: #ffffff;
}
.item-s {
padding: 0;
}
.f-btn .f-btn-text {
vertical-align: baseline !important;
2025-04-18 17:16:38 +08:00
line-height: 1;
2025-04-07 17:43:30 +08:00
}
.f-state-hover {
background-color: transparent !important;
}
.bgbtn {
width: 100%;
border: none !important;
background-color: transparent !important;
2025-04-18 17:16:38 +08:00
color: #ffffff;
2025-04-07 17:43:30 +08:00
padding: 0 !important;
line-height: 1;
}
.activeClick {
font-weight: 800;
color: white !important;
}
.bgbtn .x-frame-ml, .bgbtn .x-frame-mc, .bgbtn .x-frame-mr,
.bgbtn .x-frame-tl, .bgbtn .x-frame-tc, .bgbtn .x-frame-tr,
.bgbtn .x-frame-bl, .bgbtn .x-frame-bc, .bgbtn .x-frame-br,
.bgbtn a:visited, .bgbtn .f-state-focus {
background-image: none;
background-color: transparent;
2025-04-18 17:16:38 +08:00
color: #ffffff;
2025-04-07 17:43:30 +08:00
}
.f-tree-table .f-state-active, .f-widget-content .f-state-active, .f-widget-header .f-state-active {
2025-04-18 17:16:38 +08:00
background: #001B35;
2025-04-07 17:43:30 +08:00
}
.f-state-default, .f-widget-content .f-state-default, .f-widget-header .f-state-default {
background-image: none;
background-color: transparent;
}
.f-widget-content {
background-color: transparent;
}
.header .layui-nav {
padding: 0;
margin: 0;
}
.bgbtntop.f-btn.f-state-default .f-icon, .bgbtntop.f-btn.f-state-hover .f-icon, .bgbtntop.f-btn.f-state-focus .f-icon, .bgbtntop.f-btn.f-state-active .f-icon {
color: #37a6ff;
}
.activeClick .f-icon {
color: white !important;
}
.f-panel, .f-widget-header, .f-tree-headerstyle .f-panel-body {
/*background-color: #dfe4f1;*/
2025-04-18 17:16:38 +08:00
background-color: #001B35;
2025-04-07 17:43:30 +08:00
/* color: #fff;*/
border: none !important;
font-size: 14px !important;
height: 35px;
}
.f-panel-title-text {
color: #1ab1ff;
}
.f-menu-item-text, .f-tree-cell-text, .f-widget-content a, .f-qtip-content {
color: #1ab1ff;
}
.f-corner-all {
background-color: transparent;
}
.f-state-hover.f-tree-node a {
color: #37a6ff;
}
.f-state-default, .f-widget-content .f-state-default, .f-widget-header .f-state-default {
border-color: transparent;
}
.f-tabstrip-align-left .f-tab-header.f-first {
/*background-color: #dfe4f1;*/
/* color: #fff;*/
border: none !important;
}
.header .layui-nav .layui-nav-item, .header .layui-nav .layui-nav-item a {
padding-left: 3px;
padding-right: 3px;
}
.titler {
font-size: smaller;
}
.projcet-select {
float: left;
height: 30px;
}
.projcet-select .f-state-focus,
.projcet-select .f-widget-content .f-state-focus,
.projcet-select .f-widget-header .f-state-focus {
/*background-color: #107f8b !important;*/
color: #fff;
}
.f-field-dropdownlist-wrap .f-field-textbox {
background-color: transparent;
}
.f-field-dropdownlist, .f-field-dropdownlist-pop {
background-color: #0E113C;
color: #1AB1FF !important;
/*color: #1ab1ff;*/
}
.f-field-dropdownlist-wrap .f-field-textbox {
/*width:auto;*/
border: none !important;
}
.header {
position: relative;
}
.header .item-pbig {
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
}
.item-pbig img {
height: 48px;
width: auto;
}
.sd-header2-center li > div {
width: 100%;
}
.top-li-item {
position: relative;
}
.top-li-item .f-btn-inner {
display: none;
}
.sd-header .sd-header-top .sd-header-top-right ul li span:nth-child(2n) {
margin-right: 0;
}
#Panel1_leftPanel_treeMenu .f-state-hover .f-icon {
color: #fff !important;
}
#Panel1_leftPanel_treeMenu .f-state-hover {
background: #99e7ff !important;
}
ul .f-state-hover {
/*background: #3baae3 !important;*/
color: #fff !important;
}
.White {
color: #1AB1FF;
}
::-webkit-scrollbar {
height: 0px;
}
.sd-header2 .sd-header2-left .sd-cname {
font-size: 0.14583rem;
font-weight: 600;
letter-spacing: .01042rem;
}
.sd-header2 .sd-header2-center ul li a.activeClick, .sd-header2 .sd-header2-center ul li a:hover {
color: #107f8b !important;
}
.sd-header2 .sd-header2-right ul li a:hover {
color: #fff !important;
background-image: none !important;
background-color: transparent !important;
}
.f-state-hover, .f-widget-content .f-state-hover, .f-widget-header .f-state-hover, .f-state-focus, .f-widget-content .f-state-focus, .f-widget-header .f-state-focus {
background: #001f36;
border: none;
}
.f-widget-content {
color: #ffffff;
border: none;
}
.f-panel > .f-panel-bodyct {
2025-04-18 17:16:38 +08:00
background: #001B35;
2025-04-07 17:43:30 +08:00
}
.f-grid-row-alt {
2025-04-18 17:16:38 +08:00
background-color: #001B35;
2025-04-07 17:43:30 +08:00
}
2025-04-08 15:27:55 +08:00
#Panel1_topPanel_ContentPanel1_drpProject-inputEl {
text-align: center !important;
2025-04-07 17:43:30 +08:00
}
2025-04-18 17:16:38 +08:00
.bgbtn3{
position:absolute;
height:100%;
width: 100%;
left: 0;
top:0;
}
.bgbtn2 {
padding: 0;
height: 100%;
line-height: 1;
font-size: 14px;
border: none;
}
2025-04-07 17:43:30 +08:00
</style>
</head>
<body class="wrap">
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server"></f:PageManager>
<f:Panel ID="Panel1" Layout="Region" ShowBorder="false" ShowHeader="false" runat="server">
<Items>
<f:ContentPanel ID="topPanel" CssClass="topregion" RegionPosition="Top" ShowBorder="false" ShowHeader="false" EnableCollapse="true" runat="server">
<%--头部 开始--%>
<f:ContentPanel ID="ContentPanel1" CssClass="bodyregion" ShowBorder="false" ShowHeader="false" runat="server">
2025-04-18 17:16:38 +08:00
<div id="app" class="container" style="background-color:#001B35;">
<header v-cloak>
<div class="nav-box" style="padding-left: 0.3rem;">
<div class="logo-img"></div>
<div class="refresh-img" @click="onRefresh"></div>
<div class="navs" style="justify-content: flex-end;">
<div :class="['nav', 'nav-l', navIdx==1?'nav-l-active':'']" @click="onSwitchMenu(1)">
<f:Button runat="server" CssClass="bgbtn" Text="人员管理" ID="btnPerson" OnClick="btnPerson_Click"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
</f:Button>
</div>
<div :class="['nav', 'nav-l', navIdx==2?'nav-l-active':'']" @click="onSwitchMenu(2)">
<f:Button runat="server" CssClass="bgbtn" Text="安全管理" ID="btnDigData" OnClick="btnHSSE_Click"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
</f:Button>
</div>
<div :class="['nav', 'nav-l', navIdx==3?'nav-l-active':'']" @click="onSwitchMenu(3)">
<f:Button runat="server" CssClass="bgbtn" Text="三年行动" OnClick="btnThreeYearAction_Click" OnClientClick="parent.removeActiveTab();"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="Button1">
</f:Button>
</div>
</div>
</div>
<div class="logo-tit" style="position: relative;">
建投公司智慧工地管理信息系统
<f:Button runat="server" CssClass="bgbtn3" EnablePostBack="true" OnClick="btnHome_Click"
EnableDefaultState="true" EnableDefaultCorner="false" ID="btnHome" OnClientClick="parent.removeActiveTab();">
</f:Button>
</div>
<div class="nav-box" style="padding-right: 0.3rem;">
<div class="navs" style="justify-content: flex-start;">
<div :class="['nav', 'nav-r', navIdx==4?'nav-r-active':'']" @click="onSwitchMenu(4)">
<f:Button runat="server" CssClass="bgbtn" Text="质量管理" ID="btnCQMS" OnClick="btnCQMS_Click"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
</f:Button>
</div>
<div :class="['nav', 'nav-r', navIdx==5?'nav-r-active':'']" @click="onSwitchMenu(5)">
<f:Button runat="server" CssClass="bgbtn" Text="设备管理" ID="btnDevice" OnClick="btnDevice_Click"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
</f:Button>
</div>
<div :class="['nav', 'nav-r', navIdx==6?'nav-r-active':'']" @click="onSwitchMenu(6)">
<f:Button runat="server" CssClass="bgbtn" Text="视频监控" OnClientClick="openVideo();"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnDigitalSite">
</f:Button>
</div>
</div>
<div class="timer">
<p><span>{{timer.city}}</span><span>{{timer.time}}</span></p>
<p><span>{{timer.date}}</span><span>{{timer.week}}</span></p>
</div>
</div>
<div class="set">
<div >
<f:DropDownBox runat="server" ID="drpProject" Label="" EmptyText="请从下拉表格中选择" MatchFieldWidth="false" LabelAlign="Right"
AutoPostBack="true" OnTextChanged="drpProject_SelectedIndexChanged" Width="200px">
<PopPanel>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" runat="server" DataIDField="ProjectId" DataTextField="ShortName"
DataKeyNames="ProjectId" AllowSorting="true" EnableColumnLines="true"
Hidden="true" Width="800px" Height="400px" PageSize="300">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:TextBox runat="server" ID="txtProjectName" EmptyText="按名称查询" FocusOnPageLoad="true"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="200px">
</f:TextBox>
<f:DropDownList runat="server" ID="drpUnit" AutoPostBack="true" OnSelectedIndexChanged="TextBox_TextChanged"></f:DropDownList>
<f:RadioButtonList runat="server" ID="ckState" Width="350px" ShowEmptyLabel="true"
AutoPostBack="true" OnSelectedIndexChanged="TextBox_TextChanged">
<f:RadioItem Text="全部" Value="0" />
<f:RadioItem Text="在建" Value="1" Selected="true" />
<f:RadioItem Text="停工" Value="2" />
<f:RadioItem Text="竣工" Value="3" />
</f:RadioButtonList>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="50px" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField Width="200px" ColumnID="UnitName" DataField="UnitId"
FieldType="String" HeaderText="所属单位" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="500px" ColumnID="ProjectName" DataField="ProjectName" EnableFilter="true"
FieldType="String" HeaderText="项目名称" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="dataload" Handler="onGridDataLoad" />
</Listeners>
</f:Grid>
</PopPanel>
</f:DropDownBox>
</div>
<div class="iconfont icon-nav07">
<a href="javascript:void(0);" style="color:#ffffff;" onclick="onToolSignOutClick()">退出</a>
</div>
<div class="iconfont icon-nav06">
<f:Button runat="server" CssClass="bgbtn2" OnClick="btnProjectSet_Click" Text="设置"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnSysSet" OnClientClick="parent.removeActiveTab();">
</f:Button>
</div>
<div class="iconfont icon-nav05">
<f:Button runat="server" CssClass="bgbtn2" OnClick="btnPersonal_Click"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="userName" OnClientClick="parent.removeActiveTab();">
</f:Button>
</div>
<div class="iconfont icon-nav08" @click="full">全屏</div>
</div>
</header>
</div>
2025-04-07 17:43:30 +08:00
</f:ContentPanel>
<%--头部 结束--%>
</f:ContentPanel>
<f:Panel ID="leftPanel" CssClass="leftregion" RegionPosition="Left" RegionSplit="true" RegionSplitWidth="3px"
ShowBorder="true" Width="250px" ShowHeader="true" Title="系统菜单"
EnableCollapse="false" Collapsed="false" Layout="Fit" runat="server">
<Tools>
<%--自定义展开折叠工具图标--%>
<f:Tool ID="leftPanelToolCollapse" runat="server" IconFont="ChevronCircleLeft"
EnablePostBack="false" ToolTip="展开/折叠" Hidden="true">
<Listeners>
<f:Listener Event="click" Handler="onLeftPanelToolCollapseClick" />
</Listeners>
</f:Tool>
<f:Tool ID="leftPanelToolGear" runat="server" IconFont="Gear" EnablePostBack="false" Hidden="true" ToolTip="设置">
<Menu runat="server" ID="menuSettings">
<f:MenuButton ID="btnExpandAll" Text="展开菜单" EnablePostBack="false" runat="server">
<Listeners>
<f:Listener Event="click" Handler="onExpandAllClick" />
</Listeners>
</f:MenuButton>
<f:MenuButton ID="btnCollapseAll" Text="折叠菜单" EnablePostBack="false" runat="server">
<Listeners>
<f:Listener Event="click" Handler="onCollapseAllClick" />
</Listeners>
</f:MenuButton>
<f:MenuSeparator runat="server">
</f:MenuSeparator>
<f:MenuButton runat="server" EnablePostBack="false" ID="MenuMode" Text="显示模式">
<Menu runat="server">
<Items>
<f:MenuCheckBox Text="普通模式" ID="MenuModeNormal" AttributeDataTag="normal" Checked="true" GroupName="MenuMode" runat="server">
</f:MenuCheckBox>
<f:MenuCheckBox Text="紧凑模式" ID="MenuModeCompact" AttributeDataTag="compact" GroupName="MenuMode" runat="server">
</f:MenuCheckBox>
<f:MenuCheckBox Text="大字体模式" ID="MenuModeLarge" AttributeDataTag="large" GroupName="MenuMode" runat="server">
</f:MenuCheckBox>
</Items>
<Listeners>
<f:Listener Event="checkchange" Handler="onMenuModeCheckChange" />
</Listeners>
</Menu>
</f:MenuButton>
<f:MenuButton EnablePostBack="false" Text="菜单样式" ID="MenuStyle" runat="server">
<Menu runat="server">
<Items>
<f:MenuCheckBox Text="智能树菜单" ID="MenuStyleTree" AttributeDataTag="tree" GroupName="MenuStyle" runat="server">
</f:MenuCheckBox>
<f:MenuCheckBox Text="智能树菜单(默认折叠)" ID="MenuStyleMiniModeTree" AttributeDataTag="tree_minimode" GroupName="MenuStyle" runat="server">
</f:MenuCheckBox>
<f:MenuCheckBox Text="树菜单" ID="MenuStylePlainTree" AttributeDataTag="plaintree" GroupName="MenuStyle" runat="server" Checked="true">
</f:MenuCheckBox>
<%-- <f:MenuCheckBox Text="手风琴+树菜单" ID="MenuStyleAccordion" AttributeDataTag="accordion" GroupName="MenuStyle" runat="server">
</f:MenuCheckBox>--%>
</Items>
<Listeners>
<f:Listener Event="checkchange" Handler="onMenuStyleCheckChange" />
</Listeners>
</Menu>
</f:MenuButton>
<f:MenuButton EnablePostBack="false" Text="语言" ID="MenuLang" runat="server">
<Menu ID="Menu2" runat="server">
<Items>
<f:MenuCheckBox Text="简体中文" ID="MenuLangZHCN" AttributeDataTag="zh_CN" Checked="true" GroupName="MenuLang" runat="server">
</f:MenuCheckBox>
</Items>
<Listeners>
<f:Listener Event="checkchange" Handler="onMenuLangCheckChange" />
</Listeners>
</Menu>
</f:MenuButton>
</Menu>
</f:Tool>
</Tools>
</f:Panel>
<f:TabStrip ID="mainTabStrip" CssClass="centerregion" RegionPosition="Center" ShowTabHeader="false"
ShowBorder="true" EnableTabCloseMenu="true" runat="server">
<Tabs>
<%--.f-tabstrip-noheader>.f-panel-header--%>
<f:Tab ID="Tab1" Title="首页" IconFont="Home" CssClass=".bgbtn"
EnableIFrame="true" IFrameUrl="~/common/mainProject.aspx" runat="server">
</f:Tab>
</Tabs>
<Tools>
<f:Tool runat="server" EnablePostBack="false" IconFont="Refresh" MarginRight="5" CssClass="tabtool" ToolTip="刷新本页" ID="toolRefresh">
<Listeners>
<f:Listener Event="click" Handler="onToolRefreshClick" />
</Listeners>
</f:Tool>
<f:Tool runat="server" EnablePostBack="false" IconFont="Share" MarginRight="5" CssClass="tabtool" ToolTip="在新标签页中打开" ID="toolNewWindow">
<Listeners>
<f:Listener Event="click" Handler="onToolNewWindowClick" />
</Listeners>
</f:Tool>
<f:Tool runat="server" EnablePostBack="false" IconFont="Expand" CssClass="tabtool" ToolTip="最大化" ID="toolMaximize" Hidden="true">
<Listeners>
<f:Listener Event="click" Handler="onToolMaximizeClick" />
</Listeners>
</f:Tool>
<f:Tool runat="server" EnablePostBack="false" IconFont="SignOut" Hidden="true"
CssClass="tabtool" ToolTip="注销" ID="toolSignOut">
<Listeners>
<f:Listener Event="click" Handler="onToolSignOutClick" />
</Listeners>
</f:Tool>
</Tools>
</f:TabStrip>
</Items>
</f:Panel>
<f:Window ID="windowCustomQuery" Title="自定义查询" Hidden="true" EnableIFrame="true" IFrameUrl="./SysManage/CustomQuery.aspx" ClearIFrameAfterClose="false"
runat="server" IsModal="true" Width="1200px" Height="620px" EnableClose="true"
EnableMaximize="true" EnableResize="false">
</f:Window>
<asp:XmlDataSource ID="XmlDataSource1" runat="server" EnableCaching="false"></asp:XmlDataSource>
<f:SimpleForm ID="SimpleForm1" runat="server" ShowBorder="true" ShowHeader="false" Hidden="true"
2025-04-08 15:27:55 +08:00
LabelWidth="80px" BodyPadding="5px" Width="350px">
<Items>
<f:HiddenField runat="server" ID="hfProjectCode"></f:HiddenField>
<f:HiddenField runat="server" ID="hfMonitorPW"></f:HiddenField>
2025-04-07 17:43:30 +08:00
</Items>
2025-04-08 15:27:55 +08:00
</f:SimpleForm>
2025-04-07 17:43:30 +08:00
</form>
<script type="text/javascript">
var mainTabStrip = '<%= mainTabStrip.ClientID %>'
var toolRefreshClientID = '<%= toolRefresh.ClientID %>';
var toolNewWindowClientID = '<%= toolNewWindow.ClientID %>';
var mainTabStripClientID = '<%= mainTabStrip.ClientID %>';
var windowCustomQueryClientID = '<%= windowCustomQuery.ClientID %>';
var MenuStyleClientID = '<%= MenuStyle.ClientID %>';
var MenuLangClientID = '<%= MenuLang.ClientID %>';
var topPanelClientID = '<%= topPanel.ClientID %>';
var leftPanelClientID = '<%= leftPanel.ClientID %>';
var leftPanelToolGearClientID = '<%= leftPanelToolGear.ClientID %>';
var leftPanelToolCollapseClientID = '<%= leftPanelToolCollapse.ClientID %>';
var tab1ClientID = '<%= Tab1.ClientID %>';
// 展开左侧面板
function expandLeftPanel() {
var leftPanel = F(leftPanelClientID);
// 获取左侧树控件实例
var leftMenuTree = leftPanel.items[0];
leftMenuTree.miniMode = false;
leftPanel.el.removeClass('minimodeinside');
leftPanel.setWidth(220);
F(leftPanelToolGearClientID).show();
F(leftPanelToolCollapseClientID).setIconFont('chevron-circle-left');
// 重新加载树菜单
leftMenuTree.loadData();
}
function onGridDataLoad(event) {
this.mergeColumns(['UnitName'], {
depends: true
});
}
// 展开左侧面板
function collapseLeftPanel() {
var leftPanel = F(leftPanelClientID);
// 获取左侧树控件实例
var leftMenuTree = leftPanel.items[0];
leftMenuTree.miniMode = true;
leftMenuTree.miniModePopWidth = 220;
leftPanel.el.addClass('minimodeinside');
leftPanel.setWidth(50);
F(leftPanelToolGearClientID).hide();
F(leftPanelToolCollapseClientID).setIconFont('chevron-circle-right');
// 重新加载树菜单
leftMenuTree.loadData();
}
// 自定义展开折叠工具图标
function onLeftPanelToolCollapseClick(event) {
var leftPanel = F(leftPanelClientID);
var menuStyle = F.cookie('MenuStyle_Pro') || 'tree';
if (menuStyle === 'tree' || menuStyle === 'tree_minimode') {
// 获取左侧树控件实例
var leftMenuTree = leftPanel.items[0];
// 设置 miniMode 模式
if (leftMenuTree.miniMode) {
expandLeftPanel();
} else {
collapseLeftPanel();
}
// 对左侧面板重新布局
leftPanel.doLayout();
} else {
leftPanel.toggleCollapse();
}
}
function myFunction() {
$('[id$="_toolRefresh"]').click();
}
// 点击展开菜单
function onExpandAllClick(event) {
var leftPanel = F(leftPanelClientID);
var firstChild = leftPanel.items[0];
if (firstChild.isType('tree')) {
// 左侧为树控件
firstChild.expandAll();
} else {
// 左侧为树控件+手风琴控件
var activePane = firstChild.getActivePane();
if (activePane) {
activePane.items[0].expandAll();
}
}
}
// 点击折叠菜单
function onCollapseAllClick(event) {
var leftPanel = F(leftPanelClientID);
var firstChild = leftPanel.items[0];
if (firstChild.isType('tree')) {
// 左侧为树控件
firstChild.collapseAll();
} else {
// 左侧为树控件+手风琴控件
var activePane = firstChild.getActivePane();
if (activePane) {
activePane.items[0].collapseAll();
}
}
}
function onSearchTrigger1Click(event) {
F.removeCookie('SearchText_Pro');
top.window.location.reload();
}
function onSearchTrigger2Click(event) {
F.cookie('SearchText_Pro', this.getValue(), {
expires: 100 // 单位:天
});
top.window.location.reload();
}
// 点击标题栏工具图标 - 刷新
function onToolRefreshClick(event) {
var mainTabStrip = F(mainTabStripClientID);
var activeTab = mainTabStrip.getActiveTab();
if (activeTab.iframe) {
var iframeWnd = activeTab.getIFrameWindow();
iframeWnd.location.reload();
}
}
// 点击标题栏工具图标 - 在新标签页中打开
function onToolNewWindowClick(event) {
var mainTabStrip = F(mainTabStripClientID);
var activeTab = mainTabStrip.getActiveTab();
if (activeTab.iframe) {
var iframeUrl = activeTab.getIFrameUrl();
iframeUrl = iframeUrl.replace(/\/mobile\/\?file=/ig, '/mobile/');
window.open(iframeUrl, '_blank');
}
}
// 点击标题栏工具图标 - 注销
function onToolSignOutClick(event) {
var bConfirmed = confirm('您确定要退出吗?');
if (bConfirmed) { window.open('login.aspx', '_top'); }
}
// 点击标题栏工具图标 - 最大化
function onToolMaximizeClick(event) {
var topPanel = F(topPanelClientID);
var leftPanel = F(leftPanelClientID);
var currentTool = this;
if (currentTool.iconFont.indexOf('expand') >= 0) {
topPanel.collapse();
currentTool.setIconFont('compress');
collapseLeftPanel();
} else {
topPanel.expand();
currentTool.setIconFont('expand');
expandLeftPanel();
}
}
// 添加示例标签页
// id 选项卡ID
// iframeUrl: 选项卡IFrame地址
// title 选项卡标题
// icon 选项卡图标
// createToolbar 创建选项卡前的回调函数接受tabOptions参数
// refreshWhenExist 添加选项卡时如果选项卡已经存在是否刷新内部IFrame
// iconFont 选项卡图标字体
function addExampleTab(tabOptions) {
if (typeof (tabOptions) === 'string') {
tabOptions = {
id: arguments[0],
iframeUrl: arguments[1],
title: arguments[2],
icon: arguments[3],
createToolbar: arguments[4],
refreshWhenExist: arguments[5],
iconFont: arguments[6]
};
}
F.addMainTab(F(mainTabStripClientID), tabOptions);
}
// 移除选中标签页
function removeActiveTab() {
var mainTabStrip = F(mainTabStripClientID);
var activeTab = mainTabStrip.getActiveTab();
if (activeTab) {
if (activeTab.id != tab1ClientID) {
activeTab.hide();
removeActiveTab();
}
}
}
// 获取当前激活选项卡的ID
function getActiveTabId() {
var mainTabStrip = F(mainTabStripClientID);
var activeTab = mainTabStrip.getActiveTab();
if (activeTab) {
return activeTab.id;
}
return '';
}
// 激活选项卡,并刷新其中的内容,示例:表格控件->杂项->在新标签页中打开(关闭后刷新父选项卡)
function activeTabAndRefresh(tabId) {
var mainTabStrip = F(mainTabStripClientID);
var targetTab = mainTabStrip.getTab(tabId);
if (targetTab) {
mainTabStrip.activeTab(targetTab);
targetTab.refreshIFrame();
}
}
// 点击标题栏工具图标 - 查看源代码
2025-04-08 15:27:55 +08:00
2025-04-18 17:16:38 +08:00
var videoURL = '<%=VideoURL %>'
2025-04-07 17:43:30 +08:00
function openVideo() {
if (videoURL) {
var username = $('#SimpleForm1_hfProjectCode-inputEl').val()
var password = $('#SimpleForm1_hfMonitorPW-inputEl').val();
$.post(videoURL + 'api/v1/login', {
username: username,
password: password,
url_token_only: true
}, function (data) {
var username = $('#<%= hfProjectCode.ClientID %>-inputEl').val()
var password = $('#<%= hfMonitorPW.ClientID %>-inputEl').val();
if (password != "") {
//window.open(videoURL + "#/screen?token=" + data.URLToken , '_blank');\
window.open(videoURL + "#/screen?username=" + username + "&password=" + password, '_blank');
} else {
alert("该项目未关联监控信息!");
}
});
}
else {
alert("您没有权限!");
}
}
// 激活选项卡,并刷新其中的内容,示例:表格控件->杂项->在新标签页中打开(关闭后更新父选项卡中的表格)
function activeTabAndUpdate(tabId, param1) {
var mainTabStrip = F(mainTabStripClientID);
var targetTab = mainTabStrip.getTab(tabId);
if (targetTab) {
mainTabStrip.activeTab(targetTab);
targetTab.getIFrameWindow().updatePage(param1);
}
}
// 通知框
function notify(msg) {
F.notify({
message: msg,
messageIcon: 'information',
target: '_top',
header: false,
displayMilliseconds: 3 * 1000,
positionX: 'center',
positionY: 'center'
});
}
// 点击菜单样式
function onMenuStyleCheckChange(event, item, checked) {
var menuStyle = item.getAttr('data-tag');
F.cookie('MenuStyle_Pro', menuStyle, {
expires: 100 // 单位:天
});
top.window.location.reload();
}
// 点击显示模式
function onMenuModeCheckChange(event, item, checked) {
var menuMode = item.getAttr('data-tag');
F.cookie('MenuMode_Pro', menuMode, {
expires: 100 // 单位:天
});
top.window.location.reload();
}
// 点击语言
function onMenuLangCheckChange(event, item, checked) {
var lang = item.getAttr('data-tag');
F.cookie('Language_Pro', lang, {
expires: 100 // 单位:天
});
top.window.location.reload();
}
// 点击标题栏工具图标 - 退出
function onSignOutClick(event) {
var bConfirmed = confirm('您确定要退出吗?');
if (bConfirmed) { window.close(); }
}
///个人信息
function onUserProfileClick() {
var windowUserProfile = F(windowUserProfileClientID);
windowUserProfile.show();
}
F.ready(function () {
$(".sd-header2-center li").click(function () {
var $item = $('.f-tabstrip-header')
$item.attr('style', ";display:block !important;")
});
$(".js-showTab-item").click(function () {
var $item = $('.f-tabstrip-header')
$item.attr('style', ";display:block !important;")
});
$(".js-hiddenTab-item").click(function () {
var $item = $('.f-tabstrip-header')
$item.attr('style', ";display:none !important;")
$(".bgbtn,.bgbtntop").removeClass("activeClick")
});
$(".bgbtn,.bgbtntop").click(function () {
// 切换下tab样式
var $this = $(this)
if (!$this.hasClass('activeClick')) {
if ($this.hasClass('bgbtn')) {
$(".bgbtn").removeClass('activeClick')
} else {
$(".bgbtntop").removeClass('activeClick')
}
$this.addClass('activeClick')
}
});
var mainTabStrip = F(mainTabStripClientID);
var leftPanel = F(leftPanelClientID);
var mainMenu = leftPanel.items[0];
// 初始化主框架中的树(或者Accordion+Tree)和选项卡互动,以及地址栏的更新
// treeMenu 主框架中的树控件实例,或者内嵌树控件的手风琴控件实例
// mainTabStrip 选项卡实例
// updateLocationHash: 切换Tab时是否更新地址栏Hash值
// refreshWhenExist 添加选项卡时如果选项卡已经存在是否刷新内部IFrame
// refreshWhenTabChange: 切换选项卡时是否刷新内部IFrame
F.initTreeTabStrip(mainMenu, mainTabStrip, true, false, false);
//var themeTitle = F.cookie('Theme_Pro_Title');
//var themeName = F.cookie('Theme_Pro');
//if (themeTitle) {
// F.removeCookie('Theme_Pro_Title');
// //notify('主题更改为:' + themeTitle + '' + themeName + '');
//}
var badge = $('#notification-badge');
var count = <%= BLL.WorkflowTodoitemsService.GetWorkflow_TodoItemCountByReceiver(this.CurrUser.UserId)%>;
if (count > 0) {
badge.text(count).show();
} else {
badge.hide();
}
});
</script>
<script type="text/javascript">
function initEvent() {
$('#selectAreaID').on('click', function () {
$('#selectAreaBoxID').show();
});
$('#selectAreaBoxID').on('click', ' .sd-select-box-item', function (e) {
var id = e.currentTarget.dataset.id;
$('#selectAreaBoxID').hide();
$('.sd-select-name').html($(this).html());
console.log('select id', id);
});
}
$('.sd-select-area').hover(function () {
$('#selectAreaBoxID').show();
}, function () {
$('#selectAreaBoxID').hide();
})
$(function () {
initEvent();
});
</script>
2025-04-18 17:16:38 +08:00
<script src="./res/lib/vue.min.js"></script>
<script>
new Vue({
el: "#app",
data() {
return {
navIdx: 0,
timer: {
date: "",
time: "",
city: "",
T: "15-26℃",
week: "",
},
};
},
mounted() {
setInterval(() => {
this.getLocation();
}, 1000);
document.addEventListener("fullscreenchange", function () {
if (document.fullscreenElement) {
console.log("进入全屏模式");
} else {
console.log("退出全屏模式");
}
});
},
methods: {
onSwitchMenu(idx) {
this.navIdx = idx;
},
onRefresh() {
alert("刷新");
},
full() {
if (document.fullscreenElement === null) {
console.log("当前不处于全屏模式");
this.openFullscreen()
} else {
console.log("当前处于全屏模式");
this.closeFullscreen()
}
},
getLocation() {
let date = new Date();
this.timer.time = `${date.getHours().toString().padStart(2, "0")}:${date.getMinutes().toString().padStart(2, "0")}:${date.getSeconds().toString().padStart(2, '0')}`;
this.timer.date = `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, "0")}-${date.getDate().toString().padStart(2, "0")}`;
this.timer.city = "北京市";
this.timer.week = "星期" + "日一二三四五六".charAt(date.getDay());
},
openFullscreen() {
let element = document.querySelector(".wrap")
if (element.requestFullscreen) {
element.requestFullscreen();
} else if (element.mozRequestFullScreen) { /* Firefox */
element.mozRequestFullScreen();
} else if (element.webkitRequestFullscreen) { /* Chrome, Safari & Opera */
element.webkitRequestFullscreen();
} else if (element.msRequestFullscreen) { /* IE/Edge */
element.msRequestFullscreen();
}
},
closeFullscreen() {
if (document.exitFullscreen) {
document.exitFullscreen();
} else if (document.mozCancelFullScreen) { /* Firefox */
document.mozCancelFullScreen();
} else if (document.webkitExitFullscreen) { /* Chrome, Safari and Opera */
document.webkitExitFullscreen();
} else if (document.msExitFullscreen) { /* IE/Edge */
document.msExitFullscreen();
}
}
}
});
</script>
2025-04-07 17:43:30 +08:00
</body>
</html>