8 Commits

Author SHA1 Message Date
guanj
54f336ab45 修改现场问题 2026-05-21 09:37:58 +08:00
39093641d8 用能系统功能调整 2025-07-24 11:40:23 +08:00
guanj
c88484caf7 修改现场问题 2025-07-16 18:10:24 +08:00
GGJ
bb7eb039b5 修改 监测指标数据质量统计字段名称 2025-04-21 13:33:40 +08:00
GGJ
b317bf9c7d Merge branch 'master' of http://192.168.1.22:3000/root/HB_PMS3.0_WEB 2025-04-18 15:15:09 +08:00
GGJ
0a521bdcb7 配置超高压生产嵌入系统 2025-04-18 15:15:00 +08:00
263cd764f3 1.主网台账修改 2025-03-21 16:20:25 +08:00
a04bb33206 1.主配网测点数据重算功能bug
2.监督计划新增校验
2025-03-21 08:58:54 +08:00
53 changed files with 53278 additions and 32168 deletions

20941
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -8,12 +8,14 @@
"dev": "vue-cli-service serve", "dev": "vue-cli-service serve",
"dev-zoom": "cross-env VUE_APP_ZOOM=1 vue-cli-service serve", "dev-zoom": "cross-env VUE_APP_ZOOM=1 vue-cli-service serve",
"dev-cgyqr": "cross-env VUE_APP_MODE=cgyqr vue-cli-service serve", "dev-cgyqr": "cross-env VUE_APP_MODE=cgyqr vue-cli-service serve",
"dev-hbqr": "cross-env VUE_APP_MODE=cgyqr VUE_APP_HB=hbqr vue-cli-service serve", "dev-cgyqr1": "cross-env VUE_APP_MODE=cgyqr VUE_APP_KEY=scqr vue-cli-service serve",
"dev-hbqr": "cross-env VUE_APP_MODE=cgyqr VUE_APP_HB=hbqr VUE_APP_KEY=scqr vue-cli-service serve",
"dev-jbqr": "cross-env VUE_APP_MODE=jbqr vue-cli-service serve", "dev-jbqr": "cross-env VUE_APP_MODE=jbqr vue-cli-service serve",
"build": "vue-cli-service build", "build": "vue-cli-service build",
"build-zoom": "cross-env VUE_APP_ZOOM=1 vue-cli-service build", "build-zoom": "cross-env VUE_APP_ZOOM=1 vue-cli-service build",
"build-hbqr": "cross-env VUE_APP_MODE=cgyqr VUE_APP_HB=hbqr vue-cli-service build", "build-hbqr": "cross-env VUE_APP_MODE=cgyqr VUE_APP_HB=hbqr VUE_APP_KEY=scqr vue-cli-service build",
"build-cgyqr": "cross-env VUE_APP_MODE=cgyqr vue-cli-service build", "build-cgyqr": "cross-env VUE_APP_MODE=cgyqr vue-cli-service build",
"build-cgyqr1": "cross-env VUE_APP_MODE=cgyqr VUE_APP_KEY=scqr vue-cli-service build",
"build-jbqr": "cross-env VUE_APP_MODE=jbqr vue-cli-service build", "build-jbqr": "cross-env VUE_APP_MODE=jbqr vue-cli-service build",
"preview": "node build/index.js --preview", "preview": "node build/index.js --preview",
"deploy-18": "cross-env VUE_APP_ZOOM=1 vue-cli-service build && ./upload_script/upload_18.sh" "deploy-18": "cross-env VUE_APP_ZOOM=1 vue-cli-service build && ./upload_script/upload_18.sh"

View File

@@ -52,7 +52,7 @@ export default {
} }
}, 10000) }, 10000)
}, },
mounted() { async mounted() {
// 处理笔记本系统默认系统比例为150%带来的布局影响 // 处理笔记本系统默认系统比例为150%带来的布局影响
if (process.env.VUE_APP_ZOOM) { if (process.env.VUE_APP_ZOOM) {
const m = this.detectZoom() const m = this.detectZoom()
@@ -90,6 +90,11 @@ export default {
window.addEventListener('beforeunload', e => this.beforeunloadHandler(e)) window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
window.addEventListener('unload', e => this.unloadHandler(e)) window.addEventListener('unload', e => this.unloadHandler(e))
window.addEventListener('resize', this.handleResizeEcharts) window.addEventListener('resize', this.handleResizeEcharts)
let response = await fetch('/')
let MqttUrl = response.headers.get('X-Mqtt-Url')
console.log("🚀 ~ mounted ~ MqttUrl:", MqttUrl)
localStorage.setItem('MqttUrl', MqttUrl)
}, },
// destroyed() { // destroyed() {
// window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e)) // window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e))

View File

@@ -72,21 +72,21 @@ export function getDicTree() {
} }
export function getDicTreeAdd(data) { export function getDicTreeAdd(data) {
return request({ return request({
url: '/system-boot/dic/add', url: '/system-boot/dictTree/add',
method: 'post', method: 'post',
data: data data: data
}) })
} }
export function getDicTreeUpdate(data) { export function getDicTreeUpdate(data) {
return request({ return request({
url: '/system-boot/dic/update', url: '/system-boot/dictTree/update',
method: 'put', method: 'put',
data: data data: data
}) })
} }
export function getDicTreeDelete(data) { export function getDicTreeDelete(data) {
return request({ return request({
url: '/system-boot/dic/delete', url: '/system-boot/dictTree/delete',
method: 'delete', method: 'delete',
params: data params: data
}) })

View File

@@ -15,6 +15,14 @@ export function heBeiToken(data) {
params: data, params: data,
}); });
} }
// /超高压嵌入token校验
export function productionManagementCheck(data) {
return request({
url: "/pqs-auth/judgeToken/productionManagementCheck",
method: "post",
params: data,
});
}
//登录获取token //登录获取token
export function login(data) { export function login(data) {
return request({ return request({

View File

@@ -3,8 +3,7 @@ import store from './store'
import NProgress from 'nprogress' // progress bar import NProgress from 'nprogress' // progress bar
import 'nprogress/nprogress.css' // progress bar style import 'nprogress/nprogress.css' // progress bar style
import getPageTitle from '@/utils/get-page-title' import getPageTitle from '@/utils/get-page-title'
import { logout } from '@/api/user.js' import { productionManagementCheck } from '@/api/user.js'
// NProgress.configure({ showSpinner: false }) // NProgress Configuration // NProgress.configure({ showSpinner: false }) // NProgress Configuration
// && from.path === '/agreement' && from.path === '/policy' // && from.path === '/agreement' && from.path === '/policy'
const whiteList = ['/login', '/agreement', '/policy'] // no redirect whitelist const whiteList = ['/login', '/agreement', '/policy'] // no redirect whitelist
@@ -19,7 +18,12 @@ const cgyList = [
'/Statistical-analysis/baselineLevelAssessment', '/Statistical-analysis/baselineLevelAssessment',
'/Statistical-analysis/substationBackgroundHarmonic', '/Statistical-analysis/substationBackgroundHarmonic',
'/Statistical-analysis/steadyStateIndicators', '/Statistical-analysis/steadyStateIndicators',
'/Statistical-analysis/transientIndicators' '/Statistical-analysis/transientIndicators',
'/harmonicWave/homePage',
'/harmonicWave/pointmonitoring',
'/harmonicWave/regionalmonitoring',
'/harmonicWave/comprehensiveanalysis',
'/harmonicWave/CVT'
] ]
// 免登录判断 // 免登录判断
import { sm2, encrypt } from '@/assets/commjs/sm2.js' import { sm2, encrypt } from '@/assets/commjs/sm2.js'
@@ -27,7 +31,11 @@ import { sm3Digest } from '@/assets/commjs/sm3'
import { setDictype, setSysConfig } from '@/utils/auth' import { setDictype, setSysConfig } from '@/utils/auth'
import { gongkey, CodeSr, heBeiToken, menulist, updateFirstPassword, dictypeData, getSysConfig } from '@/api/user' import { gongkey, CodeSr, heBeiToken, menulist, updateFirstPassword, dictypeData, getSysConfig } from '@/api/user'
let routerPath = '' let routerPath = ''
let flag = false
router.beforeEach(async (to, from, next) => { router.beforeEach(async (to, from, next) => {
console.log('🚀 ~ to:', to)
console.log('🚀 ~ getURLParameter ~ window.location.href:', window.location.href)
// start progress bar // start progress bar
// NProgress.start() // NProgress.start()
@@ -43,6 +51,10 @@ router.beforeEach(async (to, from, next) => {
// 超高压河北免登录功能 // 超高压河北免登录功能
if (process.env.VUE_APP_MODE === 'cgyqr') { if (process.env.VUE_APP_MODE === 'cgyqr') {
if (flag) {
flag = false
return next()
}
if (process.env.VUE_APP_HB == 'hbqr') { if (process.env.VUE_APP_HB == 'hbqr') {
// let data = JSON.parse(sessionStorage.getItem('userInfo1')) // let data = JSON.parse(sessionStorage.getItem('userInfo1'))
// if (data.userToken == sessionStorage.getItem('HB_TOKEN')) { // if (data.userToken == sessionStorage.getItem('HB_TOKEN')) {
@@ -54,7 +66,10 @@ router.beforeEach(async (to, from, next) => {
// window.sessionStorage.removeItem('cntoken') // window.sessionStorage.removeItem('cntoken')
// sessionStorage.setItem('HB_TOKEN', data.userToken) // sessionStorage.setItem('HB_TOKEN', data.userToken)
// setTimeout(() => { // setTimeout(() => {
proceed(to, from, next, 'cdf')
// console.log('🚀 ~ getURLParameter ~ url:', url)
proceed({ path: window.location.href.split('#')[1].split('&')[0] }, from, next, 'cdf')
// }, 10) // }, 10)
// } // }
@@ -86,9 +101,27 @@ router.beforeEach(async (to, from, next) => {
// name = res.data // name = res.data
// }) // })
// } // }
} else {
// const response = await fetch('/')
// const flag = response.headers.get('X-Xbqr')
let { accessToken, pathname } = getURLParameter('accessToken')
console.log('🚀 ~ accessToken:', accessToken, pathname)
// getURLParameter
if (accessToken) {
// 超高压嵌入 接受父应用传参
console.log('超高压嵌入')
productionManagementCheck({
token: accessToken
}).then(res => {
if (res.code == 'A0000') {
proceed({ path: pathname || to.path }, from, next, 'cdf1')
}
})
} else { } else {
proceed(to, from, next) proceed(to, from, next)
} }
}
// else { // else {
// //获取用户信息 // //获取用户信息
@@ -131,11 +164,54 @@ router.beforeEach(async (to, from, next) => {
} }
} }
}) })
// 解析 URL 参数
function getURLParameter(name) {
// 获取当前页面的 URL
const url = window.location.href
// console.log('🚀 ~ getURLParameter ~ url:', url)
// 使用 URL 对象解析 URL
const urlObj = new URL(url)
console.log('🚀 ~ getURLParameter ~ urlObj:', urlObj)
// 获取查询参数
const params = new URLSearchParams(urlObj.search)
console.log(params.get(name)) // 输出: 123
console.log('pathname', urlObj.pathname) // 输出: 123
// 获取 id 参数
return {
accessToken: params.get('accessToken'),
pathname: urlObj.pathname
}
}
function getURLParameterHb(name) {
// 获取当前页面的 URL
const url = window.location.href
// console.log('🚀 ~ getURLParameter ~ url:', url)
// 使用 URL 对象解析 URL
const urlObj = new URL(url)
console.log('🚀 ~ getURLParameter ~ urlObj:', urlObj)
// 获取查询参数
const params = new URLSearchParams(urlObj.search)
console.log(params.get(name)) // 输出: 123
console.log('pathname', urlObj.pathname) // 输出: 123
// 获取 id 参数
return {
accessToken: params.get('accessToken'),
pathname: urlObj.pathname
}
}
async function proceed(to, from, next, HB_NAME) { async function proceed(to, from, next, HB_NAME) {
// 打印当前 name 和 sessionStorage 中 cntoken 是否为空的日志
let name = HB_NAME || 'cdf' let name = HB_NAME || 'cdf'
// 检查 sessionStorage 中是否没有 cntoken
console.log('🚀 ~ proceed ~ name:', name, window.sessionStorage.getItem('cntoken') == null) console.log('🚀 ~ proceed ~ name:', name, window.sessionStorage.getItem('cntoken') == null)
// 定义默认密码
if (window.sessionStorage.getItem('cntoken') == null) { if (window.sessionStorage.getItem('cntoken') == null) {
// 初始化登录表单
let password = '@#001njcnpqs' let password = '@#001njcnpqs'
let loginjmForm = { let loginjmForm = {
username: '', username: '',
@@ -143,47 +219,69 @@ async function proceed(to, from, next, HB_NAME) {
grant_type: 'captcha', grant_type: 'captcha',
verifyCode: 0, verifyCode: 0,
imageCode: '' imageCode: ''
// 对 name 进行加密处理
} }
let username = encrypt(name) let username = encrypt(name)
// 设置登录表单的用户名
// 将应用高度存储到 sessionStorage 中
loginjmForm.username = username loginjmForm.username = username
// 调用 gongkey 函数获取公钥
window.sessionStorage.setItem('appheight', document.body.offsetHeight - 10) window.sessionStorage.setItem('appheight', document.body.offsetHeight - 10)
await gongkey({ loginName: username }).then(async response => { await gongkey({ loginName: username }).then(async response => {
window.publicKey = response.data window.publicKey = response.data
// 将公钥存储到全局变量和 localStorage 中
window.localStorage.setItem('publicKey', response.data) window.localStorage.setItem('publicKey', response.data)
var sm3Pwd = sm3Digest(password) var sm3Pwd = sm3Digest(password)
// 使用 SM3 算法对密码进行摘要处理
var jiamipassword = '' var jiamipassword = ''
// 使用 SM2 算法对密码进行加密
jiamipassword = sm2(sm3Pwd + '|' + password, publicKey, 0) jiamipassword = sm2(sm3Pwd + '|' + password, publicKey, 0)
loginjmForm.password = jiamipassword loginjmForm.password = jiamipassword
// 设置登录表单的加密密码
store store
// 调用 Vuex 的 login 方法进行登录
.dispatch('user/login', loginjmForm) .dispatch('user/login', loginjmForm)
.then(async response => { .then(async response => {
if (response.code === 'A0101' && response.message === '登录认证,密码失效,请重置') { if (response.code === 'A0101' && response.message === '登录认证,密码失效,请重置') {
// 如果登录响应需要重置密码
CodeSr().then(response => { CodeSr().then(response => {
// 调用 CodeSr 函数获取验证码图片
let blob = new Blob([response], { type: 'image/jpg' }) let blob = new Blob([response], { type: 'image/jpg' })
let url = window.URL.createObjectURL(blob) let url = window.URL.createObjectURL(blob)
}) })
} }
await store.dispatch('user/getInfo') await store.dispatch('user/getInfo')
// 获取用户信息
// 根据角色生成可访问的路线图 // 根据角色生成可访问的路线图
const accessRoutes = await store.dispatch('permission/generateRoutes') const accessRoutes = await store.dispatch('permission/generateRoutes')
// 动态添加可访问的路由 // 动态添加可访问的路由
setTimeout(() => { setTimeout(() => {
router.addRoutes(accessRoutes) router.addRoutes(accessRoutes)
if (response.code === 'A0000') { if (response.code === 'A0000') {
// 如果登录成功
loginjmForm.verifyCode = 0 loginjmForm.verifyCode = 0
// 重置验证码
SysConfig() SysConfig()
// 调用 SysConfig 函数进行系统配置
// cgyList.indexOf(to.path) !== -1 // cgyList.indexOf(to.path) !== -1
store.dispatch('user/getmenu').then(async response => { store.dispatch('user/getmenu').then(async response => {
await getmuen(response.data[0]) await getmuen(response.data[0])
router.push({ router.push({
path: cgyList.indexOf(to.path) !== -1 ? to.path : to.path //routerPath path: cgyList.indexOf(to.path) !== -1 ? to.path : to.path //routerPath
}) })
}) })
} }
if (process.env.VUE_APP_KEY == 'scqr') {
flag = true
next(to.path)
} else {
next() next()
}
}, 500) }, 500)
}) })
.catch(error => { .catch(error => {
@@ -194,10 +292,15 @@ async function proceed(to, from, next, HB_NAME) {
}) })
}) })
}) })
} else {
if (process.env.VUE_APP_KEY == 'scqr') {
flag = true
next(to.path)
} else { } else {
next() next()
} }
} }
}
function getmuen(data) { function getmuen(data) {
if (data.children.length == 0) { if (data.children.length == 0) {

View File

@@ -86,6 +86,37 @@ export const constantRoutes = [
component: () => import('@/views/cgy-harmonic-boot/UPHomePage'), component: () => import('@/views/cgy-harmonic-boot/UPHomePage'),
meta: { title: '信息概览', icon: 'user' } meta: { title: '信息概览', icon: 'user' }
}, },
// 生产管控
{
path: '/harmonicWave/pointmonitoring',
name: 'pointmonitoring',
component: () => import('@/views/cgy-harmonic-boot/line/pointmonitoring'),
meta: { title: '详细数据', icon: '' }
},
{
path: '/harmonicWave/regionalmonitoring',
name: 'regionalmonitoring',
component: () => import('@/views/cgy-harmonic-boot/region/regionalmonitoring'),
meta: { title: '告警统计', icon: '' }
},
{
path: '/harmonicWave/comprehensiveanalysis',
name: 'comprehensiveanalysis',
component: () => import('@/views/cgy-harmonic-boot/comper/comprehensiveanalysis'),
meta: { title: '综合分析', icon: '' }
},
{
path: '/harmonicWave/CVT',
name: 'CVT',
component: () => import('@/views/cgy-harmonic-boot/CVT'),
meta: { title: 'CVT台账管理', icon: '' }
},
{
path: '/harmonicWave/homePage',
name: 'homePage',
component: () => import('@/views/cgy-harmonic-boot/UPHomePage'),
meta: { title: '信息概览', icon: 'user' }
},
// 冀北嵌入 // 冀北嵌入
{ {
@@ -192,8 +223,8 @@ export const asyncRoutes = [
path: '/dashboard/index', path: '/dashboard/index',
name: 'index', name: 'index',
component: () => component: () =>
// import ("@/views/dashboard/index"), import ("@/views/dashboard/index"),
import('@/views/harmonic-boot/detailed/qypowerpollutionzs'), // import('@/views/harmonic-boot/detailed/qypowerpollutionzs'),
// import('@/views/energy-system/operationalCenter/airManageReadOnly.vue'), // import('@/views/energy-system/operationalCenter/airManageReadOnly.vue'),
meta: { title: '首页概览', icon: '', affix: true } meta: { title: '首页概览', icon: '', affix: true }
}, },

View File

@@ -163,9 +163,9 @@
overflow-y: auto; overflow-y: auto;
} }
.el-dialog__header { .el-dialog__header {
height: 36px; height: 55px;
padding: 0 20px; padding: 0 20px;
line-height: 36px; line-height: 55px;
background: $themeColor; background: $themeColor;
.el-dialog__title { .el-dialog__title {
font-size: 16px; font-size: 16px;

View File

@@ -154,9 +154,9 @@
overflow-y: auto; overflow-y: auto;
} }
.el-dialog__header { .el-dialog__header {
height: 36px; height: 55px;
padding: 0 20px; padding: 0 20px;
line-height: 36px; line-height: 55px;
background: $themeColor; background: $themeColor;
.el-dialog__title { .el-dialog__title {
font-size: 16px; font-size: 16px;

View File

@@ -970,9 +970,9 @@
} }
.el-dialog .el-dialog__header { .el-dialog .el-dialog__header {
height: 36px; height: 55px;
padding: 0 10px !important; padding: 0 10px !important;
line-height: 36px; line-height: 55px;
background: #034e4b !important; background: #034e4b !important;
} }

View File

@@ -916,9 +916,9 @@
} }
.el-dialog .el-dialog__header { .el-dialog .el-dialog__header {
height: 36px; height: 55px;
padding: 0 10px !important; padding: 0 10px !important;
line-height: 36px; line-height: 55px;
} }
.el-dialog .el-dialog__header .el-dialog__headerbtn { .el-dialog .el-dialog__header .el-dialog__headerbtn {
@@ -1130,9 +1130,9 @@
overflow-y: auto; overflow-y: auto;
} }
.el-dialog__header { .el-dialog__header {
height: 36px; height: 55px;
padding: 0 20px; padding: 0 20px;
line-height: 36px; line-height: 55px;
background: $themeColor; background: $themeColor;
.el-dialog__title { .el-dialog__title {
font-size: 16px; font-size: 16px;

View File

@@ -896,9 +896,9 @@
} }
.el-dialog .el-dialog__header { .el-dialog .el-dialog__header {
height: 36px; height: 55px;
padding: 0 10px !important; padding: 0 10px !important;
line-height: 36px; line-height: 55px;
background: #044267 !important; background: #044267 !important;
} }
@@ -1100,9 +1100,9 @@
overflow-y: auto; overflow-y: auto;
} }
.el-dialog__header { .el-dialog__header {
height: 36px; height: 55px;
padding: 0 20px; padding: 0 20px;
line-height: 36px; line-height: 55px;
background: $themeColor; background: $themeColor;
.el-dialog__title { .el-dialog__title {
font-size: 16px; font-size: 16px;

View File

@@ -7,10 +7,11 @@ import { CodeSr } from '@/api/user'
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8' axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
const service = axios.create({ const service = axios.create({
// baseURL: '/harmonicWaveApi',//超高压生产嵌入
// baseURL: '/PMS3/Application/third/aqcp-dnzl/harmonicWaveApi',//河北嵌入
baseURL: '/api', baseURL: '/api',
timeout: 150000 timeout: 150000
}) })
// service.interceptors.request.use( // service.interceptors.request.use(
// config => { // config => {
// if(config.url !=='/pqs-oauth2/oauth/token' || config.params.grant_type=='refresh_token'){ // if(config.url !=='/pqs-oauth2/oauth/token' || config.params.grant_type=='refresh_token'){

View File

@@ -615,21 +615,24 @@ export default {
//台区台账表头 //台区台账表头
tableHeaderMonitoring: [ tableHeaderMonitoring: [
// { prop: 'id', label: '监测点编号', width: 120 }, // { prop: 'id', label: '监测点编号', width: 120 },
{ prop: 'monitorObjectName', label: '监测对象名称', width: 250 },
{ prop: 'name', label: '测点名称', width: 220 }, { prop: 'name', label: '测点名称', width: 220 },
{ prop: 'monitorId', label: '测点编号', width: 220 },
{ prop: 'orgName', label: '组织机构名称', width: 170 }, { prop: 'orgName', label: '组织机构名称', width: 170 },
{ prop: 'operationName', label: '运维单位名称', width: 170 }, { prop: 'operationName', label: '运维单位名称', width: 170 },
{ prop: 'midStation', label: '变电站编号', width: 150 },
{ prop: 'powerrName', label: '变电站名称', width: 120 }, { prop: 'powerrName', label: '变电站名称', width: 120 },
//{ prop: "generatrixName", label: "母线名称", width: 120 },
{ prop: 'busId', label: '母线编号', width: 180 }, { prop: 'busId', label: '母线编号', width: 180 },
{ prop: 'lineName', label: '母线名称', width: 180 }, { prop: 'lineName', label: '母线名称', width: 180 },
// { prop: "lineId", label: "监测线路ID", width: 180 }, { prop: "lineNum", label: "装置接线序号", width: 180 },
{ prop: 'voltageLevel', label: '电压等级', width: 100 }, { prop: 'voltageLevel', label: '电压等级', width: 100 },
{ prop: 'monitorState', label: '监测点状态', width: 120 }, { prop: 'monitorState', label: '监测点状态', width: 120 },
{ prop: 'monitorObjectName', label: '监测对象名称', width: 250 },
{ prop: 'monitorType', label: '监测点类型', width: 120 }, { prop: 'monitorType', label: '监测点类型', width: 120 },
{ prop: 'minShortCircuitCapacity', label: '最小短路容量', width: 120 }, { prop: 'minShortCircuitCapacity', label: '最小短路容量', width: 120 },
{ prop: 'powerSupplyEqCapacity', label: '供电设备容量', width: 120 }, { prop: 'powerSupplyEqCapacity', label: '供电设备容量', width: 120 },
{ prop: 'userAgreementCapacity', label: '用户协议容量', width: 120 }, { prop: 'userAgreementCapacity', label: '用户协议容量', width: 120 },
{ prop: 'putDate', label: '投运日期', width: 120 },
{ {
prop: 'voltageDeviationUpperLimit', prop: 'voltageDeviationUpperLimit',
label: '电压偏差限值(上)', label: '电压偏差限值(上)',
@@ -1384,7 +1387,7 @@ export default {
form.pageSize = this.total form.pageSize = this.total
getAllMonitorPageList(form).then(res => { getAllMonitorPageList(form).then(res => {
this.$refs.Monitoringpoint.exportData({ this.$refs.Monitoringpoint.exportData({
filename: '监测点台账', // 文件名字 filename: '监测点台账'+new Date().getTime(), // 文件名字
sheetName: 'Sheet1', sheetName: 'Sheet1',
type: 'xlsx', //导出文件类型 xlsx 和 csv type: 'xlsx', //导出文件类型 xlsx 和 csv
useStyle: true, useStyle: true,

View File

@@ -25,7 +25,7 @@
:height="vh + 'px'" :height="vh + 'px'"
> >
<el-table-column prop="userName" label="登录用户" align="center"></el-table-column> <el-table-column prop="userName" label="登录用户" align="center"></el-table-column>
<el-table-column prop="ip" label="登录ip" align="center"></el-table-column> <el-table-column prop="ip" label="登录IP" align="center"></el-table-column>
<el-table-column prop="time" label="登录时间" align="center"></el-table-column> <el-table-column prop="time" label="登录时间" align="center"></el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination

View File

@@ -25,7 +25,7 @@
查询 查询
</el-button> </el-button>
<el-button type="primary" icon="el-icon-download">导出历史数据</el-button> <!-- <el-button type="primary" icon="el-icon-download">导出历史数据</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-col> </el-col>

View File

@@ -88,7 +88,7 @@ export default {
{ prop: 'effectiveAccessRate', label: '有效接入率(%)' }, { prop: 'effectiveAccessRate', label: '有效接入率(%)' },
{ prop: 'dataIntegrityRate', label: '数据完整率(%)' }, { prop: 'dataIntegrityRate', label: '数据完整率(%)' },
{ prop: 'indexIntegrityRate', label: '指标完整率(%)' }, { prop: 'indexIntegrityRate', label: '指标完整率(%)' },
{ prop: 'isUnusual', label: '数据是否异常' } { prop: 'isUnusual', label: '异常监测点数' }
], ],
qualitystatisticsData: [], qualitystatisticsData: [],
device: '', device: '',
@@ -154,13 +154,13 @@ export default {
//判断数据是否异常 //判断数据是否异常
cellStyle(row) { cellStyle(row) {
console.log(row) console.log(row)
if (row.columnIndex == 6) { // if (row.columnIndex == 6) {
if (row.row.isUnusual == 0) { // if (row.row.isUnusual == 0) {
row.row.isUnusual = '正常 ' // row.row.isUnusual = '正常 '
} else if (row.row.isUnusual == 1) { // } else if (row.row.isUnusual == 1) {
row.row.isUnusual = '异常' // row.row.isUnusual = '异常'
} // }
} // }
}, },
//导出 //导出
exportEvent() { exportEvent() {

View File

@@ -2024,12 +2024,22 @@ export default {
this.$refs.ruleform.validate(value => { this.$refs.ruleform.validate(value => {
// console.log(value); // console.log(value);
if (value == true) { if (value == true) {
if(this.ruleform.ifReleaseWarning == 1){
//需要提示预告警单不能为空
if(this.ruleform.workAlarmId == null || this.ruleform.workAlarmId == ''){
this.$message.warning("关联告预警单不可为空!");
return
}
}
this.$confirm('是否确认新增?', '提示', { this.$confirm('是否确认新增?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}) })
.then(() => { .then(() => {
addProblem(this.ruleform).then(res => { addProblem(this.ruleform).then(res => {
if (res.code == 'A0000') { if (res.code == 'A0000') {
this.$message({ this.$message({
@@ -2194,6 +2204,14 @@ export default {
this.$refs.ruleform.validate(value => { this.$refs.ruleform.validate(value => {
// console.log(value); // console.log(value);
if (value == true) { if (value == true) {
if(this.ruleform.ifReleaseWarning == 1){
//需要提示预告警单不能为空
if(this.ruleform.workAlarmId == null || this.ruleform.workAlarmId == ''){
this.$message.warning("关联告预警单不可为空!");
return
}
}
this.$confirm('是否确认修改?', '提示', { this.$confirm('是否确认修改?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',

View File

@@ -29,7 +29,7 @@
<el-col :span="24"> <el-col :span="24">
<div class="button" style="float: left"> <div class="button" style="float: left">
<el-button type="primary" icon="el-icon-circle-plus" @click="planAdditionFn">新增计划</el-button> <el-button type="primary" icon="el-icon-circle-plus" @click="planAdditionFn">新增计划</el-button>
<el-button type="primary" icon="el-icon-s-claim" @click="planReviewFn">提交审核</el-button> <!-- <el-button type="primary" icon="el-icon-s-claim" @click="planReviewFn">提交审核</el-button>-->
</div> </div>
<div class="button"> <div class="button">
@@ -667,7 +667,7 @@ export default {
//获取审核人列表 //获取审核人列表
getAuditUser() { getAuditUser() {
let param = {roleType: 3} let param = {roleType: 1}
getAuditUser(param).then(res => { getAuditUser(param).then(res => {
if (res && res.code === 'A0000') { if (res && res.code === 'A0000') {
this.auditUserList = res.data this.auditUserList = res.data

View File

@@ -1195,7 +1195,7 @@ export default {
//获取审核人列表 //获取审核人列表
getAuditUser() { getAuditUser() {
let param = {roleType: 3} let param = {roleType: 1}
getAuditUser(param).then(res => { getAuditUser(param).then(res => {
if (res && res.code === 'A0000') { if (res && res.code === 'A0000') {
this.auditUserList = res.data this.auditUserList = res.data

View File

@@ -6,9 +6,9 @@
<el-tab-pane label="普测计划管理" name="1" :style="'height:' + vh + 'px;'"> <el-tab-pane label="普测计划管理" name="1" :style="'height:' + vh + 'px;'">
<Planmanagement v-if="activeName == '1'"></Planmanagement> <Planmanagement v-if="activeName == '1'"></Planmanagement>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="普测计划审批" name="2" :style="'height:' + vh + 'px;'"> <!-- <el-tab-pane label="普测计划审批" name="2" :style="'height:' + vh + 'px;'">
<Planapproval v-if="activeName == '2'" ref="planapprovalRef" :son="planId"></Planapproval> <Planapproval v-if="activeName == '2'" ref="planapprovalRef" :son="planId"></Planapproval>
</el-tab-pane> </el-tab-pane>-->
<!-- <el-tab-pane label="普测结果管理" name="3" :style="'height:' + vh + 'px;'"> <!-- <el-tab-pane label="普测结果管理" name="3" :style="'height:' + vh + 'px;'">
<Resultsmanagement v-if="activeName == '3'"></Resultsmanagement> <Resultsmanagement v-if="activeName == '3'"></Resultsmanagement>
</el-tab-pane> </el-tab-pane>

View File

@@ -35,13 +35,13 @@
<influence v-if="activeName == '4'"></influence> <influence v-if="activeName == '4'"></influence>
</el-tab-pane> </el-tab-pane>
<!-- <el-tab-pane <el-tab-pane
label="详细数据表" label="详细数据表"
name="5" name="5"
:style="'height:' + vh + ';'" :style="'height:' + vh + ';'"
> >
<dataSheet v-if="activeName == '5'"></dataSheet> <dataSheet v-if="activeName == '5'"></dataSheet>
</el-tab-pane> --> </el-tab-pane>
</el-tabs> </el-tabs>
</el-col> </el-col>
</el-row> </el-row>

View File

@@ -539,7 +539,7 @@ export default {
} }
option1 = { option1 = {
title: { title: {
text: '变电站态超标数量', text: '变电站态超标数量',
left: 'center', left: 'center',
top: 10 top: 10
}, },
@@ -777,7 +777,7 @@ export default {
} }
option2 = { option2 = {
title: { title: {
text: '变电站态超标天数', text: '变电站态超标天数',
left: 'center', left: 'center',
top: 20 top: 20
}, },

View File

@@ -164,9 +164,10 @@ export default {
mounted() { mounted() {
this.deptId = JSON.parse(window.sessionStorage.getItem('Info')).deptId this.deptId = JSON.parse(window.sessionStorage.getItem('Info')).deptId
this.zoom = 1 / document.body.style.zoom this.zoom = 1 / document.body.style.zoom
this.$nextTick(() => {
this.setHeight() this.setHeight()
window.addEventListener('resize', this.setHeight) window.addEventListener('resize', this.setHeight)
this.$nextTick(() => {
this.getTemplateLists() this.getTemplateLists()
}) })
}, },
@@ -177,7 +178,7 @@ export default {
setHeight() { setHeight() {
this.zoom = 1 / document.body.style.zoom this.zoom = 1 / document.body.style.zoom
this.vh = window.sessionStorage.getItem('appheight') this.vh = window.sessionStorage.getItem('appheight')
this.vw = document.getElementById('app-main-in').offsetWidth this.vw = document.getElementById('app-main-in')?.offsetWidth
}, },
async getTemplateLists() { async getTemplateLists() {
await getTemplateByDept({ id: this.deptId }).then(res => { await getTemplateByDept({ id: this.deptId }).then(res => {

View File

@@ -24,8 +24,8 @@
</template> </template>
<script> <script>
import SteadyStateReport from "./components/SteadyStateReport.vue"; import SteadyStateReport from "./components/SteadyStateReport.vue";
import reportForm from "./components/reportForm"; import reportForm from "./components/reportForm.vue";
import StandingBook from "./components/StandingBook"; import StandingBook from "./components/StandingBook.vue";
export default { export default {
components: { SteadyStateReport, reportForm, StandingBook }, components: { SteadyStateReport, reportForm, StandingBook },
props: {}, props: {},

View File

@@ -5,52 +5,30 @@
</el-button> </el-button>
<el-form :inline="true" :model="formData" class="demo-form-inline"> <el-form :inline="true" :model="formData" class="demo-form-inline">
<el-form-item label="指标:"> <el-form-item label="指标:">
<el-select <el-select v-model="condition" multiple collapse-tags :multiple-limit="limit" filterable
v-model="condition" placeholder="请选择指标">
multiple
collapse-tags
:multiple-limit="limit"
filterable
placeholder="请选择指标"
>
<el-option-group v-for="group in options" :key="group.label" :label="group.label"> <el-option-group v-for="group in options" :key="group.label" :label="group.label">
<el-option <el-option v-for="item in group.options" :key="item.value" :label="item.label"
v-for="item in group.options" :value="item.value"></el-option>
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-option-group> </el-option-group>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="类型:"> <el-form-item label="类型:">
<el-select style="width: 150px" v-model="formData.valueType" placeholder="请选择类型"> <el-select style="width: 150px" v-model="formData.valueType" placeholder="请选择类型">
<el-option <el-option v-for="item in typeoptions" :key="item.value" :label="item.label"
v-for="item in typeoptions" :value="item.value"></el-option>
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="谐波:" v-show="xb"> <el-form-item label="谐波:" v-show="xb">
<el-select style="width: 120px" v-model="formData.harmonic" placeholder="请选择谐波"> <el-select style="width: 120px" v-model="formData.harmonic" placeholder="请选择谐波">
<el-option <el-option v-for="item in harmonicoptions" :key="item.value" :label="item.label"
v-for="item in harmonicoptions" :value="item.value"></el-option>
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item v-show="jxb" label="间谐波:"> <el-form-item v-show="jxb" label="间谐波:">
<el-select style="width: 120px" v-model="formData.inHarmonic" placeholder="请选择间谐波"> <el-select style="width: 120px" v-model="formData.inHarmonic" placeholder="请选择间谐波">
<el-option <el-option v-for="item in inharmonicoptions" :key="item.value" :label="item.label"
v-for="item in inharmonicoptions" :value="item.value"></el-option>
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@@ -63,19 +41,10 @@
<timeindex :interval="interval"></timeindex> <timeindex :interval="interval"></timeindex>
</el-form-item> --> </el-form-item> -->
</el-form> </el-form>
<el-row <el-row ref="tubiao" v-loading="loading" id="tubiao" :gutter="10"
ref="tubiao" :style="'overflow:scroll;height:' + rowvh + ';cursor:pointer;scrollbar-arrow-color:#302D30;'">
v-loading="loading" <el-col :span="24" v-for="(item, index) in list" :key="index"
id="tubiao" :style="index > 0 ? 'margin-top: 10px;height:' + vhh : 'margin-top: 0px;height:' + vhh">
:gutter="10"
:style="'overflow:scroll;height:' + rowvh + ';cursor:pointer;scrollbar-arrow-color:#302D30;'"
>
<el-col
:span="24"
v-for="(item, index) in list"
:key="index"
:style="index > 0 ? 'margin-top: 10px;height:' + vhh : 'margin-top: 0px;height:' + vhh"
>
<div ref="kk" :id="item.id" :style="`height:${vh};cursor:pointer;;`"></div> <div ref="kk" :id="item.id" :style="`height:${vh};cursor:pointer;;`"></div>
</el-col> </el-col>
</el-row> </el-row>
@@ -1816,8 +1785,18 @@ export default {
document.mozCancelFullScreen() document.mozCancelFullScreen()
} }
} }
} },
} // myTool: {
// show: true,
// title: '自定义扩展方法',
// icon: 'path://M213.333333 213.333333h640v426.666667l-213.333333 213.333333H213.333333V213.333333z m42.666667 42.666667v554.666667h366.933333l187.733334-187.733334V256H256z m426.666667 170.666667H384V384h298.666667v42.666667z m0 128H384v-42.666667h298.666667v42.666667z m-85.333334 128H384v-42.666667h213.333333v42.666667z',
// onclick: function () {
// }
// },
},
}, },
yAxis: [ yAxis: [
// (item.minValue - 0.5).toFixed(2) // (item.minValue - 0.5).toFixed(2)

View File

@@ -38,11 +38,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<timeindex <timeindex :id="id" ref="fff" :interval="interval" :pushForward="true"></timeindex>
:id="id"
ref="fff"
:interval="interval"
></timeindex>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" @click="querfromdata" icon="el-icon-search">查询</el-button> <el-button type="primary" @click="querfromdata" icon="el-icon-search">查询</el-button>
@@ -351,7 +347,7 @@ export default {
searchBeginTime: '', searchBeginTime: '',
searchEndTime: '' searchEndTime: ''
}, },
interval: 4, interval: 5,
device: 1, device: 1,
limit: 8, limit: 8,
limit2: 8, limit2: 8,
@@ -554,6 +550,8 @@ export default {
}, },
mounted() { mounted() {
this.vh = window.sessionStorage.getItem('appheight') - 120 this.vh = window.sessionStorage.getItem('appheight') - 120
this.$refs.fff.buttonShow=false
this.$refs.fff.interchange(5)
this.querfromdata() this.querfromdata()
}, },
methods: { methods: {
@@ -693,12 +691,10 @@ export default {
// this.formData.searchBeginTime = this.$refs.fff.timeValue[0]; // this.formData.searchBeginTime = this.$refs.fff.timeValue[0];
// this.formData.searchEndTime = this.$refs.fff.timeValue[1]; // this.formData.searchEndTime = this.$refs.fff.timeValue[1];
this.formData.searchBeginTime =this.$refs.fff.intervald == 5 this.formData.searchBeginTime =
? this.$refs.fff.DayTime this.$refs.fff.intervald == 5 ? this.$refs.fff.DayTime : this.$refs.fff.timeValue[0]
: this.$refs.fff.timeValue[0] this.formData.searchEndTime =
this.formData.searchEndTime =this.$refs.fff.intervald == 5 this.$refs.fff.intervald == 5 ? this.$refs.fff.DayTime : this.$refs.fff.timeValue[1]
? this.$refs.fff.DayTime
: this.$refs.fff.timeValue[1]
this.formData.condition = this.value this.formData.condition = this.value
this.formData.inHarmonics = this.inharmonic this.formData.inHarmonics = this.inharmonic
if (this.number == 111) { if (this.number == 111) {

File diff suppressed because it is too large Load Diff

View File

@@ -25,8 +25,10 @@ export default {
}, },
created() { created() {
if (process.env.VUE_APP_MODE === 'cgyqr') { if (process.env.VUE_APP_MODE === 'cgyqr') {
if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou() this.guanzhou()
} }
}
}, },
mounted() {}, mounted() {},
methods: { methods: {

View File

@@ -335,8 +335,10 @@ export default {
}, },
created() { created() {
if (process.env.VUE_APP_MODE === 'cgyqr') { if (process.env.VUE_APP_MODE === 'cgyqr') {
if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou() this.guanzhou()
} }
}
this.getIndexType() this.getIndexType()
//this.time() //this.time()
}, },

View File

@@ -1,6 +1,5 @@
<template> <template>
<div v-loading="loading" <div v-loading="loading" element-loading-text="数据加载中">
element-loading-text="数据加载中">
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form :inline="true" :model="formData" class="demo-form-inline"> <el-form :inline="true" :model="formData" class="demo-form-inline">
@@ -14,8 +13,7 @@
inactive-text="超高压" inactive-text="超高压"
inactive-color="#666666" inactive-color="#666666"
v-model="formData.monitorFlag" v-model="formData.monitorFlag"
> ></el-switch>
</el-switch>
</el-form-item> </el-form-item>
<el-form-item label="类型:"> <el-form-item label="类型:">
<el-select <el-select
@@ -34,14 +32,14 @@
name: item.name, name: item.name,
id: item.id, id: item.id,
code: item.code, code: item.code,
sort: item.sort, sort: item.sort
}" }"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="区域:"> <el-form-item label="区域:">
<el-select ref="select1" <el-select
ref="select1"
v-model="deptName" v-model="deptName"
placeholder="请选择所属部门区域" placeholder="请选择所属部门区域"
style="width: 100%" style="width: 100%"
@@ -81,10 +79,9 @@
code: item.code, code: item.code,
name: item.name, name: item.name,
id: item.id, id: item.id,
sort: item.sort, sort: item.sort
}" }"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="厂家:"> <el-form-item label="厂家:">
@@ -105,13 +102,12 @@
code: item.code, code: item.code,
name: item.name, name: item.name,
id: item.id, id: item.id,
sort: item.sort, sort: item.sort
}" }"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="干扰源:" style="display: none;"> <el-form-item label="干扰源:" style="display: none">
<el-select <el-select
v-model="formData.loadType" v-model="formData.loadType"
multiple multiple
@@ -129,10 +125,9 @@
code: item.code, code: item.code,
name: item.name, name: item.name,
id: item.id, id: item.id,
sort: item.sort, sort: item.sort
}" }"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@@ -151,17 +146,9 @@
</el-form> </el-form>
</el-col> </el-col>
</el-row> </el-row>
<el-tabs style="height:calc(100vh - 127px)" <el-tabs style="height: calc(100vh - 127px)" type="border-card" v-model="activeName" @tab-click="handleClick">
type="border-card"
v-model="activeName"
@tab-click="handleClick"
>
<el-tab-pane :lazy="false" label="数据完整性列表" name="tab1"> <el-tab-pane :lazy="false" label="数据完整性列表" name="tab1">
<dataintegrity <dataintegrity :classvalue="classt" :tableData="tableData" :loading="loading"></dataintegrity>
:classvalue="classt"
:tableData="tableData"
:loading="loading"
></dataintegrity>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :lazy="false" label="数据完整性图表" name="tab2"> <el-tab-pane :lazy="false" label="数据完整性图表" name="tab2">
<dataintegrityechart <dataintegrityechart
@@ -171,7 +158,6 @@
:timehuanbiValue="ping" :timehuanbiValue="ping"
:xdata="xdata" :xdata="xdata"
:ydata="ydata" :ydata="ydata"
ref="child" ref="child"
></dataintegrityechart> ></dataintegrityechart>
</el-tab-pane> </el-tab-pane>
@@ -179,23 +165,22 @@
</div> </div>
</template> </template>
<script> <script>
import { getappheight, getheight } from "@/assets/commjs/common"; import { getappheight, getheight } from '@/assets/commjs/common'
import { guanzhou } from '@/assets/commjs/token' import { guanzhou } from '@/assets/commjs/token'
import api1 from '@/api/pollution/pollution' import api1 from '@/api/pollution/pollution'
import { dicData } from "@/assets/commjs/dictypeData"; import { dicData } from '@/assets/commjs/dictypeData'
import api from "../../../api/integraliy/integraliy"; import api from '../../../api/integraliy/integraliy'
import timepicker from "@/views/cgy-components/TimePicker/index4"; import timepicker from '@/views/cgy-components/TimePicker/index4'
import dataintegrity from "@/views/cgy-components/dataintegrity"; import dataintegrity from '@/views/cgy-components/dataintegrity'
import dataintegrityechart from "@/views/cgy-components/dataintegrityechart"; import dataintegrityechart from '@/views/cgy-components/dataintegrityechart'
export default { export default {
name: "sjwzx", name: 'sjwzx',
components: { components: {
timepicker, timepicker,
dataintegrity, dataintegrity,
dataintegrityechart, dataintegrityechart
}, },
watch: {}, watch: {},
computed: {}, computed: {},
@@ -203,75 +188,75 @@ export default {
return { return {
formInline: {}, formInline: {},
loading: false, loading: false,
classt: "Power_Network", classt: 'Power_Network',
tablename: "tab1", tablename: 'tab1',
thb: false, thb: false,
eacjartflag: true, eacjartflag: true,
interval: 3, interval: 3,
treeData: [], treeData: [],
idArr: [], idArr: [],
defaultProps: { defaultProps: {
children: "children", children: 'children',
label: "name", label: 'name'
}, },
deptName: "全国", deptName: '全国',
deptIndex: "", deptIndex: '',
name: "sjwzx", name: 'sjwzx',
path: "/harmonic-boot/harmonic/getIntegrityData", path: '/harmonic-boot/harmonic/getIntegrityData',
asideheight: undefined, asideheight: undefined,
id: 1, id: 1,
title: "区域", title: '区域',
xdata: [], xdata: [],
ydata: [], ydata: [],
classvalue: 0, classvalue: 0,
activeName: "tab1", activeName: 'tab1',
treenode: "", treenode: '',
dataTree: "", dataTree: '',
voltageleve1: "", voltageleve1: '',
//电压等级 //电压等级
voltageleveloption: [], voltageleveloption: [],
terminal: "", terminal: '',
terminaloption: [], terminaloption: [],
interfere: "", interfere: '',
interfereoption: [], interfereoption: [],
classificationData: [], classificationData: [],
dictypeData: undefined, dictypeData: undefined,
deptIndex: "", deptIndex: '',
formData: { formData: {
//后面需要修改 //后面需要修改
deptIndex: "", deptIndex: '',
monitorFlag: 2, monitorFlag: 2,
powerFlag: 2, powerFlag: 2,
loadType: null, loadType: null,
manufacturer: null, manufacturer: null,
searchBeginTime: "", searchBeginTime: '',
searchEndTime: "", searchEndTime: '',
statisticalType: "", statisticalType: '',
scale: null, scale: null
}, },
periodBeginTime: "", periodBeginTime: '',
periodEndTime: "", periodEndTime: '',
timehuanbiValue: [], timehuanbiValue: [],
tableData: [], tableData: [],
ping: "", ping: '',
time: "", time: '',
quyuname: undefined, quyuname: undefined,
vh: null vh: null
}; }
}, },
created() { created() {
let data = window.sessionStorage.getItem("sysData"); let data = window.sessionStorage.getItem('sysData')
let yudata = eval("(" + data + ")"); let yudata = eval('(' + data + ')')
let str = yudata.dataReport.split(""); let str = yudata.dataReport.split('')
this.quyuname = str[1]; this.quyuname = str[1]
var info = window.sessionStorage.getItem("Info"); var info = window.sessionStorage.getItem('Info')
info = eval("(" + info + ")"); info = eval('(' + info + ')')
this.formData.deptIndex = info.deptId; this.formData.deptIndex = info.deptId
this.getAreaDept(); this.getAreaDept()
this.getclassificationData(); this.getclassificationData()
this.getVoltage(); this.getVoltage()
this.getManufacturer(); this.getManufacturer()
this.getLoadType(); this.getLoadType()
}, },
mounted() { mounted() {
this.vh = window.sessionStorage.getItem('appheight') - 120 this.vh = window.sessionStorage.getItem('appheight') - 120
@@ -282,10 +267,10 @@ export default {
let pathInfo = this.$router.resolve({ let pathInfo = this.$router.resolve({
path: '/algorithm/algorithm', path: '/algorithm/algorithm',
query: { query: {
name: name, name: name
} }
}) })
window.open(pathInfo.href, '算法帮助'); window.open(pathInfo.href, '算法帮助')
}, },
guanzhou() { guanzhou() {
var data = { var data = {
@@ -301,180 +286,175 @@ export default {
}, },
//切换统计类型 //切换统计类型
changeclasss(val) { changeclasss(val) {
this.classt = val.code; this.classt = val.code
}, },
//时间格式转化 //时间格式转化
dateFormat(dateData1, dateData2) { dateFormat(dateData1, dateData2) {
var timearr = []; var timearr = []
var date = new Date(dateData1); var date = new Date(dateData1)
var y = date.getFullYear(); var y = date.getFullYear()
var m = date.getMonth() + 1; var m = date.getMonth() + 1
m = m < 10 ? "0" + m : m; m = m < 10 ? '0' + m : m
var d = date.getDate(); var d = date.getDate()
d = d < 10 ? "0" + d : d; d = d < 10 ? '0' + d : d
var h = date.getHours(); var h = date.getHours()
h = h < 10 ? "0" + h : h; h = h < 10 ? '0' + h : h
var f = date.getMinutes(); var f = date.getMinutes()
f = f < 10 ? "0" + f : f; f = f < 10 ? '0' + f : f
var s = date.getSeconds(); var s = date.getSeconds()
s = s < 10 ? "0" + s : s; s = s < 10 ? '0' + s : s
this.formData.searchBeginTime = y + "-" + m + "-" + d; this.formData.searchBeginTime = y + '-' + m + '-' + d
timearr.push(this.formData.startTime); timearr.push(this.formData.startTime)
var date = new Date(dateData2); var date = new Date(dateData2)
var y = date.getFullYear(); var y = date.getFullYear()
var m = date.getMonth() + 1; var m = date.getMonth() + 1
m = m < 10 ? "0" + m : m; m = m < 10 ? '0' + m : m
var d = date.getDate(); var d = date.getDate()
d = d < 10 ? "0" + d : d; d = d < 10 ? '0' + d : d
var h = date.getHours(); var h = date.getHours()
h = h < 10 ? "0" + h : h; h = h < 10 ? '0' + h : h
var f = date.getMinutes(); var f = date.getMinutes()
f = f < 10 ? "0" + f : f; f = f < 10 ? '0' + f : f
var s = date.getSeconds(); var s = date.getSeconds()
s = s < 10 ? "0" + s : s; s = s < 10 ? '0' + s : s
this.formData.searchEndTime = y + "-" + m + "-" + d; this.formData.searchEndTime = y + '-' + m + '-' + d
timearr.push(this.formData.endTime); timearr.push(this.formData.endTime)
return timearr; return timearr
}, },
//部门绑定区域触发区域树节点 //部门绑定区域触发区域树节点
handleNodeClick(data, node) { handleNodeClick(data, node) {
this.deptName = data.name
this.deptName = data.name; this.$refs.select1.blur()
this.$refs.select1.blur(); this.deptId = data.id
this.deptId = data.id; this.formData.deptIndex = data.id
this.formData.deptIndex = data.id;
}, },
formatDate(date) { formatDate(date) {
date = new Date(Date.parse(date.replace(/-/g, '/'))) //转换成Data();
var y = date.getFullYear()
date = new Date(Date.parse(date.replace(/-/g, "/"))); //转换成Data(); var m = date.getMonth() + 1
m = m < 10 ? '0' + m : m
var y = date.getFullYear(); var d = date.getDate()
d = d < 10 ? '0' + d : d
var m = date.getMonth() + 1; return y + '-' + m + '-' + d
m = m < 10 ? "0" + m : m;
var d = date.getDate();
d = d < 10 ? "0" + d : d;
return y + "-" + m + "-" + d;
}, },
//2次组件触发事件 //2次组件触发事件
querfromdata(data, timehbValue, interval) { querfromdata(data, timehbValue, interval) {
this.interval = interval; this.interval = interval
this.loading = true; this.loading = true
if(this.$refs.fdf.intervald==3){ // if (this.$refs.fdf.intervald == 3) {
let timedate = this.$refs.fdf.timeValue[1] // let timedate = this.$refs.fdf.timeValue[1]
let timedate1 = timedate.split('-') // let timedate1 = timedate.split('-')
if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03' ){ // if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
let strTime = this.$refs.fdf.timeValue[0] // let strTime = this.$refs.fdf.timeValue[0]
let strTime1 = this.$refs.fdf.timeValue[1] // let strTime1 = this.$refs.fdf.timeValue[1]
let str1 = strTime.split('-') // let str1 = strTime.split('-')
let str2 = strTime1.split('-') // let str2 = strTime1.split('-')
var now = new Date() // var now = new Date()
let month = now.getMonth() // let month = now.getMonth()
if (month == 0) { // if (month == 0) {
month = 12 // month = 12
str1[0] = str1[0] - 1 // str1[0] = str1[0] - 1
str2[0] = str2[0] - 1 // str2[0] = str2[0] - 1
} // }
if (month < 10) { // if (month < 10) {
month = '0' + month // month = '0' + month
} // }
this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2] // this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12){ // this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
this.formData.searchEndTime = str2[0]+'-'+month+'-31' // // if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12){
}else{ // // this.formData.searchEndTime = str2[0]+'-'+month+'-31'
this.formData.searchEndTime = str2[0]+'-'+month+'-30' // // }else{
} // // this.formData.searchEndTime = str2[0]+'-'+month+'-30'
}else{ // // }
// } else {
// this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
// }
// } else if (this.$refs.fdf.intervald == 4) {
// let timedate = this.$refs.fdf.timeValue[1]
// let timedate1 = timedate.split('-')
// if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// // 获取前七天的日期
// var previousDates = []
// for (var i = 6; i >= 0; i--) {
// //var previousDate = new Date(currentDate);
// let strTime = this.$refs.fdf.timeValue[0]
// var currentDate = new Date(strTime)
// let previousDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// previousDate.setDate(currentDate.getDate() - i)
// previousDates.push(previousDate)
// }
// // 格式化日期
// var formattedDates = previousDates.map(function (date) {
// var year = date.getFullYear()
// var month = (date.getMonth() + 1).toString().padStart(2, '0')
// var day = date.getDate().toString().padStart(2, '0')
// let d = year + '-' + month + '-' + day
// // console.log("+++++++++++",d)
// // 输出前七天的日期数组
// return d
// })
// this.formData.searchBeginTime = formattedDates[0]
// this.formData.searchEndTime = formattedDates[formattedDates.length - 1]
// // console.log(formattedDates);
// } else {
// this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
// }
// } else if (this.$refs.fdf.intervald == 5) {
// let timedate = this.$refs.fdf.timeValue[1]
// let timedate1 = timedate.split('-')
// if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// let strTime = this.$refs.fdf.timeValue[0]
// let currentDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1)
// // 格式化日期字符串
// const formatDate = date => {
// const year = date.getFullYear()
// const month = String(date.getMonth() + 1).padStart(2, '0')
// const day = String(date.getDate()).padStart(2, '0')
// return `${year}-${month}-${day}`
// }
// let strTime2 = this.$refs.fdf.timeValue[1]
// let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g, '/')))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1)
// // 格式化日期字符串
// const formatDate2 = date => {
// const year = date.getFullYear()
// const month = String(date.getMonth() + 1).padStart(2, '0')
// const day = String(date.getDate()).padStart(2, '0')
// return `${year}-${month}-${day}`
// }
// // console.log('当前日期:', formatDate(new Date())); // 当前日期
// // console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
// this.formData.searchBeginTime = formatDate(currentDate)
// this.formData.searchEndTime = formatDate(currentDate2)
// } else {
// this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
// }
// //let estr = this.$refs.fff.timeValue[1]
// } else {
// this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
// }
this.formData.searchBeginTime = this.$refs.fdf.timeValue[0] this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
this.formData.searchEndTime = this.$refs.fdf.timeValue[1] this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
}
}else if(this.$refs.fdf.intervald==4){
let timedate = this.$refs.fdf.timeValue[1]
let timedate1 = timedate.split('-')
if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03' ){
// 获取前七天的日期
var previousDates = [];
for (var i = 6; i >= 0; i--) {
//var previousDate = new Date(currentDate);
let strTime = this.$refs.fdf.timeValue[0]
var currentDate = new Date(strTime);
let previousDate = new Date(Date.parse(strTime.replace(/-/g,"/")))
previousDate.setDate(currentDate.getDate() - i);
previousDates.push(previousDate);
}
// 格式化日期
var formattedDates = previousDates.map(function(date) {
var year = date.getFullYear();
var month = (date.getMonth() + 1).toString().padStart(2, '0');
var day = date.getDate().toString().padStart(2, '0');
let d = year + '-' + month + '-' + day;
// console.log("+++++++++++",d)
// 输出前七天的日期数组
return d
});
this.formData.searchBeginTime = formattedDates[0]
this.formData.searchEndTime = formattedDates[formattedDates.length-1]
// console.log(formattedDates);
}else{
this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
}
}else if(this.$refs.fdf.intervald==5){
let timedate = this.$refs.fdf.timeValue[1]
let timedate1 = timedate.split('-')
if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03' ){
let strTime = this.$refs.fdf.timeValue[0]
let currentDate = new Date(Date.parse(strTime.replace(/-/g,"/")))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1);
// 格式化日期字符串
const formatDate = (date) => {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
};
let strTime2 = this.$refs.fdf.timeValue[1]
let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g,"/")))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1);
// 格式化日期字符串
const formatDate2 = (date) => {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
};
// console.log('当前日期:', formatDate(new Date())); // 当前日期
// console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
this.formData.searchBeginTime = formatDate(currentDate)
this.formData.searchEndTime = formatDate(currentDate2)
}else {
this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
}
//let estr = this.$refs.fff.timeValue[1]
}else{
this.formData.searchBeginTime = this.$refs.fdf.timeValue[0]
this.formData.searchEndTime = this.$refs.fdf.timeValue[1]
}
// this.timeValue = data; // this.timeValue = data;
// this.timehuanbiValue = timehbValue; // this.timehuanbiValue = timehbValue;
// this.periodBeginTime = this.timehuanbiValue[0]; // this.periodBeginTime = this.timehuanbiValue[0];
@@ -483,28 +463,28 @@ export default {
// this.dateFormat(this.timeValue[0], this.timeValue[1]); // this.dateFormat(this.timeValue[0], this.timeValue[1]);
// this.time = // this.time =
// this.formData.searchBeginTime + "至" + this.formData.searchEndTime; // this.formData.searchBeginTime + "至" + this.formData.searchEndTime;
api.integrityData(this.formData).then((res) => { api.integrityData(this.formData).then(res => {
if (res.code == "A0000") { if (res.code == 'A0000') {
if (res.data.length == 0) { if (res.data.length == 0) {
this.tableData = []; this.tableData = []
} else { } else {
res.data.forEach((m) => { res.data.forEach(m => {
m.id = this.guid(); m.id = this.guid()
m.children.forEach((n) => { m.children.forEach(n => {
n.id = this.guid(); n.id = this.guid()
n.children.forEach((d) => { n.children.forEach(d => {
d.id = this.guid(); d.id = this.guid()
d.children.forEach((p) => { d.children.forEach(p => {
p.id = this.guid(); p.id = this.guid()
}); })
}); })
}); })
}); })
this.tableData = res.data; this.tableData = res.data
this.loading = false; this.loading = false
} }
} }
}); })
var data = { var data = {
deptIndex: this.formData.deptIndex, deptIndex: this.formData.deptIndex,
loadType: this.formData.loadType, loadType: this.formData.loadType,
@@ -516,173 +496,169 @@ export default {
scale: this.formData.scale, scale: this.formData.scale,
powerFlag: 2, powerFlag: 2,
periodBeginTime: this.periodBeginTime, periodBeginTime: this.periodBeginTime,
periodEndTime: this.periodEndTime, periodEndTime: this.periodEndTime
}; }
api.IntegrityIcon(data).then((res) => { api.IntegrityIcon(data).then(res => {
this.eacjartflag = true; this.eacjartflag = true
if (res.code == "A0000") { if (res.code == 'A0000') {
if (res.data.length == 0) { if (res.data.length == 0) {
this.xdata = [] this.xdata = []
this.ydata = [] this.ydata = []
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.child.dataintegrity(); this.$refs.child.dataintegrity()
}); })
this.loading = false; this.loading = false
} else { } else {
var data = res.data var data = res.data
data.sort((a, b) => { data.sort((a, b) => {
return a.type > b.type ? 1 : -1; return a.type > b.type ? 1 : -1
}) })
this.xdata = [] this.xdata = []
this.ydata = [] this.ydata = []
for (var i = 0; i < data.length; i++) { for (var i = 0; i < data.length; i++) {
this.xdata.push(data[i].type) this.xdata.push(data[i].type)
if (data[i].single == 3.14159) { if (data[i].single == 3.14159) {
this.ydata.push((data[i].single)) this.ydata.push(data[i].single)
} else { } else {
this.ydata.push((data[i].single).toFixed(2)) this.ydata.push(data[i].single.toFixed(2))
} }
} }
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.child.dataintegrity(); this.$refs.child.dataintegrity()
}); })
this.loading = false; this.loading = false
} }
} }
})
});
}, },
//标签切换 //标签切换
handleClick(tab, event) { handleClick(tab, event) {
this.tablename = tab.name; this.tablename = tab.name
this.activeName = tab.name; this.activeName = tab.name
if (tab.name == "tab1") { if (tab.name == 'tab1') {
this.thb = false; this.thb = false
this.eacjartflag = false; this.eacjartflag = false
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.child.dataintegrity(); this.$refs.child.dataintegrity()
}); })
} else if (tab.name == "tab2") { } else if (tab.name == 'tab2') {
this.thb = true; this.thb = true
this.eacjartflag = true; this.eacjartflag = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.child.dataintegrity(); this.$refs.child.dataintegrity()
}); })
} }
}, },
//开关触发 //开关触发
handleStatusChange(val) { handleStatusChange(val) {
this.formData.monitorFlag = val; this.formData.monitorFlag = val
//this.fiveTreeData() //this.fiveTreeData()
}, },
//获取区域 //获取区域
getAreaDept() { getAreaDept() {
api.getAreaDept().then((res) => { api.getAreaDept().then(res => {
if (res.code == "A0000") { if (res.code == 'A0000') {
var data = res.data; var data = res.data
data.forEach((element) => { data.forEach(element => {
this.idArr.push(element.id); this.idArr.push(element.id)
}); })
this.treeData = data; this.treeData = data
} }
}); })
}, },
//字典获取数据电压等级 //字典获取数据电压等级
getVoltage() { getVoltage() {
// debugger // debugger
var code = "Dev_Voltage_Stand"; var code = 'Dev_Voltage_Stand'
this.voltageleveloption = dicData(code, []); this.voltageleveloption = dicData(code, [])
this.formData.scale = this.voltageleveloption; this.formData.scale = this.voltageleveloption
}, },
//字典获取数据终端厂家 //字典获取数据终端厂家
getManufacturer() { getManufacturer() {
//debugger //debugger
var code = "Dev_Manufacturers"; var code = 'Dev_Manufacturers'
this.terminaloption = dicData(code, []); this.terminaloption = dicData(code, [])
this.formData.manufacturer = this.terminaloption; this.formData.manufacturer = this.terminaloption
}, },
//字典获取数据干扰源类型 //字典获取数据干扰源类型
getLoadType() { getLoadType() {
//debugger //debugger
var code = "Interference_Source"; var code = 'Interference_Source'
this.interfereoption = dicData(code, []); this.interfereoption = dicData(code, [])
this.formData.loadType = this.interfereoption; this.formData.loadType = this.interfereoption
}, },
//获取统计类型 //获取统计类型
getclassificationData() { getclassificationData() {
//debugger //debugger
var code = "Statistical_Type"; var code = 'Statistical_Type'
this.classificationData = dicData(code, ["Report_Type",'Load_Type']); this.classificationData = dicData(code, ['Report_Type', 'Load_Type'])
this.formData.statisticalType = this.classificationData[0]; this.formData.statisticalType = this.classificationData[0]
}, },
//获取数据完整性列表数据 //获取数据完整性列表数据
getQueryData() { getQueryData() {
var data = { var data = {
area: "0", area: '0',
comparison: 0, comparison: 0,
interference: [], interference: [],
manufacturer: [], manufacturer: [],
searchBeginTime: "", searchBeginTime: '',
searchEndTime: "", searchEndTime: '',
statisticalType: 0, statisticalType: 0,
voltageLevel: [], voltageLevel: []
}; }
}, },
guid() { guid() {
return "xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g, function (c) { return 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = (Math.random() * 16) | 0, var r = (Math.random() * 16) | 0,
v = c === "x" ? r : (r & 0x3) | 0x8; v = c === 'x' ? r : (r & 0x3) | 0x8
return v.toString(16); return v.toString(16)
}); })
}, },
//导出文件 //导出文件
exportExcel() { exportExcel() {
api.getExportIntegrityData(this.formData).then((res) => { api.getExportIntegrityData(this.formData).then(res => {
if (res.code == "A0000") { if (res.code == 'A0000') {
var path = res.data; var path = res.data
//window.location.href=('/api/harmonic-boot/integrity/exportIntegrityDataExcel?filePath='+path) //window.location.href=('/api/harmonic-boot/integrity/exportIntegrityDataExcel?filePath='+path)
this.getpath(path); this.getpath(path)
} }
}); })
}, },
getpath(path) { getpath(path) {
var fileName = path.substring(path.lastIndexOf("/") + 1, path.length); //获取文件名 var fileName = path.substring(path.lastIndexOf('/') + 1, path.length) //获取文件名
api.getExportIntegrityDataExcel(path).then((res) => { api.getExportIntegrityDataExcel(path).then(res => {
var blob = new Blob([res], { var blob = new Blob([res], {
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
}); //response是返回的数据对象 }) //response是返回的数据对象
var downloadElement = document.createElement("a"); var downloadElement = document.createElement('a')
var href = window.URL.createObjectURL(blob); //创建下载的链接 var href = window.URL.createObjectURL(blob) //创建下载的链接
downloadElement.href = href; downloadElement.href = href
downloadElement.setAttribute("download", fileName); downloadElement.setAttribute('download', fileName)
document.body.appendChild(downloadElement); document.body.appendChild(downloadElement)
downloadElement.click(); //点击下载 downloadElement.click() //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素 document.body.removeChild(downloadElement) //下载完成移除元素
window.URL.revokeObjectURL(href); //释放掉blob对象 window.URL.revokeObjectURL(href) //释放掉blob对象
}); })
}, },
rest() { rest() {
this.deptName = "全国"; this.deptName = '全国'
this.formData = { this.formData = {
deptIndex: "", deptIndex: '',
monitorFlag: 2, monitorFlag: 2,
loadType: null, loadType: null,
manufacturer: null, manufacturer: null,
searchBeginTime: "", searchBeginTime: '',
searchEndTime: "", searchEndTime: '',
statisticalType: "", statisticalType: '',
scale: null, scale: null
}; }
}, }
}, }
}; }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import url("../../../styles/common.less"); @import url('../../../styles/common.less');
.main { .main {
overflow: hidden; overflow: hidden;
} }

View File

@@ -31,8 +31,10 @@ export default {
}, },
created() { created() {
if (process.env.VUE_APP_MODE === 'cgyqr') { if (process.env.VUE_APP_MODE === 'cgyqr') {
if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou() this.guanzhou()
} }
}
}, },
mounted() { mounted() {

View File

@@ -614,118 +614,120 @@ export default {
this.interval = interval; this.interval = interval;
this.loading = true; this.loading = true;
this.timeValue = data; this.timeValue = data;
if(this.$refs.fhf.intervald==3){ // if(this.$refs.fhf.intervald==3){
let timedate = this.$refs.fhf.timeValue[1] // let timedate = this.$refs.fhf.timeValue[1]
let timedate1 = timedate.split('-') // let timedate1 = timedate.split('-')
if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03'){ // if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03'){
let strTime = this.$refs.fhf.timeValue[0] // let strTime = this.$refs.fhf.timeValue[0]
let strTime1 = this.$refs.fhf.timeValue[1] // let strTime1 = this.$refs.fhf.timeValue[1]
let str1 = strTime.split('-') // let str1 = strTime.split('-')
let str2 = strTime1.split('-') // let str2 = strTime1.split('-')
var now = new Date() // var now = new Date()
let month = now.getMonth() // let month = now.getMonth()
if (month == 0) { // if (month == 0) {
month = 12 // month = 12
str1[0] = str1[0] - 1 // str1[0] = str1[0] - 1
str2[0] = str2[0] - 1 // str2[0] = str2[0] - 1
} // }
if (month < 10) { // if (month < 10) {
month = '0' + month // month = '0' + month
} // }
this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2] // this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12){ // this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
this.formData.searchEndTime = str2[0]+'-'+month+'-31' // // if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12){
}else{ // // this.formData.searchEndTime = str2[0]+'-'+month+'-31'
this.formData.searchEndTime = str2[0]+'-'+month+'-30' // // }else{
} // // this.formData.searchEndTime = str2[0]+'-'+month+'-30'
}else{ // // }
// }else{
// this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
// }
// }else if(this.$refs.fhf.intervald==4){
// let timedate = this.$refs.fhf.timeValue[1]
// let timedate1 = timedate.split('-')
// if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03' ){
// // 获取前七天的日期
// var previousDates = [];
// for (var i = 6; i >= 0; i--) {
// //var previousDate = new Date(currentDate);
// let strTime = this.$refs.fhf.timeValue[0]
// var currentDate = new Date(strTime);
// let previousDate = new Date(Date.parse(strTime.replace(/-/g,"/")))
// previousDate.setDate(currentDate.getDate() - i);
// previousDates.push(previousDate);
// }
// // 格式化日期
// var formattedDates = previousDates.map(function(date) {
// var year = date.getFullYear();
// var month = (date.getMonth() + 1).toString().padStart(2, '0');
// var day = date.getDate().toString().padStart(2, '0');
// let d = year + '-' + month + '-' + day;
// //console.log("+++++++++++",d)
// // 输出前七天的日期数组
// return d
// });
// this.formData.searchBeginTime = formattedDates[0]
// this.formData.searchEndTime = formattedDates[formattedDates.length-1]
// // console.log(formattedDates);
// }else{
// this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
// }
// }else if(this.$refs.fhf.intervald==5){
// let timedate = this.$refs.fhf.timeValue[1]
// let timedate1 = timedate.split('-')
// if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03' ){
// let strTime = this.$refs.fhf.timeValue[0]
// let currentDate = new Date(Date.parse(strTime.replace(/-/g,"/")))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1);
// // 格式化日期字符串
// const formatDate = (date) => {
// const year = date.getFullYear();
// const month = String(date.getMonth() + 1).padStart(2, '0');
// const day = String(date.getDate()).padStart(2, '0');
// return `${year}-${month}-${day}`;
// };
// let strTime2 = this.$refs.fhf.timeValue[1]
// let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g,"/")))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1);
// // 格式化日期字符串
// const formatDate2 = (date) => {
// const year = date.getFullYear();
// const month = String(date.getMonth() + 1).padStart(2, '0');
// const day = String(date.getDate()).padStart(2, '0');
// return `${year}-${month}-${day}`;
// };
// // console.log('当前日期:', formatDate(new Date())); // 当前日期
// // console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
// this.formData.searchBeginTime = formatDate(currentDate)
// this.formData.searchEndTime = formatDate(currentDate2)
// }else {
// this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
// }
// //let estr = this.$refs.fff.timeValue[1]
// }else{
// this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
// }
this.formData.searchBeginTime = this.$refs.fhf.timeValue[0] this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
this.formData.searchEndTime = this.$refs.fhf.timeValue[1] this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
}
}else if(this.$refs.fhf.intervald==4){
let timedate = this.$refs.fhf.timeValue[1]
let timedate1 = timedate.split('-')
if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03' ){
// 获取前七天的日期
var previousDates = [];
for (var i = 6; i >= 0; i--) {
//var previousDate = new Date(currentDate);
let strTime = this.$refs.fhf.timeValue[0]
var currentDate = new Date(strTime);
let previousDate = new Date(Date.parse(strTime.replace(/-/g,"/")))
previousDate.setDate(currentDate.getDate() - i);
previousDates.push(previousDate);
}
// 格式化日期
var formattedDates = previousDates.map(function(date) {
var year = date.getFullYear();
var month = (date.getMonth() + 1).toString().padStart(2, '0');
var day = date.getDate().toString().padStart(2, '0');
let d = year + '-' + month + '-' + day;
//console.log("+++++++++++",d)
// 输出前七天的日期数组
return d
});
this.formData.searchBeginTime = formattedDates[0]
this.formData.searchEndTime = formattedDates[formattedDates.length-1]
// console.log(formattedDates);
}else{
this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
}
}else if(this.$refs.fhf.intervald==5){
let timedate = this.$refs.fhf.timeValue[1]
let timedate1 = timedate.split('-')
if(timedate1[2]=='01' || timedate1[2]=='02' || timedate1[2]=='03' ){
let strTime = this.$refs.fhf.timeValue[0]
let currentDate = new Date(Date.parse(strTime.replace(/-/g,"/")))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1);
// 格式化日期字符串
const formatDate = (date) => {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
};
let strTime2 = this.$refs.fhf.timeValue[1]
let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g,"/")))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1);
// 格式化日期字符串
const formatDate2 = (date) => {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
};
// console.log('当前日期:', formatDate(new Date())); // 当前日期
// console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
this.formData.searchBeginTime = formatDate(currentDate)
this.formData.searchEndTime = formatDate(currentDate2)
}else {
this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
}
//let estr = this.$refs.fff.timeValue[1]
}else{
this.formData.searchBeginTime = this.$refs.fhf.timeValue[0]
this.formData.searchEndTime = this.$refs.fhf.timeValue[1]
}
this.formData.pageSize = this.pageData.pageSize; this.formData.pageSize = this.pageData.pageSize;
this.formData.pageNum = this.pageData.pageNum; this.formData.pageNum = this.pageData.pageNum;
api2.lineOverLimit(this.formData).then((res) => { api2.lineOverLimit(this.formData).then((res) => {

View File

@@ -657,113 +657,114 @@ export default {
this.tableData = [] this.tableData = []
this.timeValue = data this.timeValue = data
//this.dateFormat(this.timeValue[0], this.timeValue[1]); //this.dateFormat(this.timeValue[0], this.timeValue[1]);
if (this.$refs.fkf.intervald == 3) { // if (this.$refs.fkf.intervald == 3) {
let timedate = this.$refs.fkf.timeValue[1] // let timedate = this.$refs.fkf.timeValue[1]
let timedate1 = timedate.split('-') // let timedate1 = timedate.split('-')
if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') { // if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
let strTime = this.$refs.fkf.timeValue[0] // let strTime = this.$refs.fkf.timeValue[0]
let strTime1 = this.$refs.fkf.timeValue[1] // let strTime1 = this.$refs.fkf.timeValue[1]
let str1 = strTime.split('-') // let str1 = strTime.split('-')
let str2 = strTime1.split('-') // let str2 = strTime1.split('-')
var now = new Date() // var now = new Date()
let month = now.getMonth() // let month = now.getMonth()
if (month == 0) { // if (month == 0) {
month = 12 // month = 12
str1[0] = str1[0] - 1 // str1[0] = str1[0] - 1
str2[0] = str2[0] - 1 // str2[0] = str2[0] - 1
} // }
if (month < 10) { // if (month < 10) {
month = '0' + month // month = '0' + month
} // }
this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2] // this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate() // this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
} else { // } else {
// this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
// }
// } else if (this.$refs.fkf.intervald == 4) {
// let timedate = this.$refs.fkf.timeValue[1]
// let timedate1 = timedate.split('-')
// if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// // 获取前七天的日期
// var previousDates = []
// for (var i = 6; i >= 0; i--) {
// //var previousDate = new Date(currentDate);
// let strTime = this.$refs.fkf.timeValue[0]
// var currentDate = new Date(strTime)
// let previousDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// previousDate.setDate(currentDate.getDate() - i)
// previousDates.push(previousDate)
// }
// // 格式化日期
// var formattedDates = previousDates.map(function (date) {
// var year = date.getFullYear()
// var month = (date.getMonth() + 1).toString().padStart(2, '0')
// var day = date.getDate().toString().padStart(2, '0')
// let d = year + '-' + month + '-' + day
// // console.log("+++++++++++",d)
// // 输出前七天的日期数组
// return d
// })
// this.formData.searchBeginTime = formattedDates[0]
// this.formData.searchEndTime = formattedDates[formattedDates.length - 1]
// // console.log(formattedDates);
// } else {
// this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
// }
// } else if (this.$refs.fkf.intervald == 5) {
// let timedate = this.$refs.fkf.timeValue[1]
// let timedate1 = timedate.split('-')
// if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// let strTime = this.$refs.fkf.timeValue[0]
// let currentDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1)
// // 格式化日期字符串
// const formatDate = date => {
// const year = date.getFullYear()
// const month = String(date.getMonth() + 1).padStart(2, '0')
// const day = String(date.getDate()).padStart(2, '0')
// return `${year}-${month}-${day}`
// }
// let strTime2 = this.$refs.fkf.timeValue[1]
// let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g, '/')))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1)
// // 格式化日期字符串
// const formatDate2 = date => {
// const year = date.getFullYear()
// const month = String(date.getMonth() + 1).padStart(2, '0')
// const day = String(date.getDate()).padStart(2, '0')
// return `${year}-${month}-${day}`
// }
// // console.log('当前日期:', formatDate(new Date())); // 当前日期
// // console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
// this.formData.searchBeginTime = formatDate(currentDate)
// this.formData.searchEndTime = formatDate(currentDate2)
// } else {
// this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
// }
// //let estr = this.$refs.fff.timeValue[1]
// } else {
// this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
// }
this.formData.searchBeginTime = this.$refs.fkf.timeValue[0] this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
this.formData.searchEndTime = this.$refs.fkf.timeValue[1] this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
}
} else if (this.$refs.fkf.intervald == 4) {
let timedate = this.$refs.fkf.timeValue[1]
let timedate1 = timedate.split('-')
if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// 获取前七天的日期
var previousDates = []
for (var i = 6; i >= 0; i--) {
//var previousDate = new Date(currentDate);
let strTime = this.$refs.fkf.timeValue[0]
var currentDate = new Date(strTime)
let previousDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
previousDate.setDate(currentDate.getDate() - i)
previousDates.push(previousDate)
}
// 格式化日期
var formattedDates = previousDates.map(function (date) {
var year = date.getFullYear()
var month = (date.getMonth() + 1).toString().padStart(2, '0')
var day = date.getDate().toString().padStart(2, '0')
let d = year + '-' + month + '-' + day
// console.log("+++++++++++",d)
// 输出前七天的日期数组
return d
})
this.formData.searchBeginTime = formattedDates[0]
this.formData.searchEndTime = formattedDates[formattedDates.length - 1]
// console.log(formattedDates);
} else {
this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
}
} else if (this.$refs.fkf.intervald == 5) {
let timedate = this.$refs.fkf.timeValue[1]
let timedate1 = timedate.split('-')
if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
let strTime = this.$refs.fkf.timeValue[0]
let currentDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1)
// 格式化日期字符串
const formatDate = date => {
const year = date.getFullYear()
const month = String(date.getMonth() + 1).padStart(2, '0')
const day = String(date.getDate()).padStart(2, '0')
return `${year}-${month}-${day}`
}
let strTime2 = this.$refs.fkf.timeValue[1]
let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g, '/')))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1)
// 格式化日期字符串
const formatDate2 = date => {
const year = date.getFullYear()
const month = String(date.getMonth() + 1).padStart(2, '0')
const day = String(date.getDate()).padStart(2, '0')
return `${year}-${month}-${day}`
}
// console.log('当前日期:', formatDate(new Date())); // 当前日期
// console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
this.formData.searchBeginTime = formatDate(currentDate)
this.formData.searchEndTime = formatDate(currentDate2)
} else {
this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
}
//let estr = this.$refs.fff.timeValue[1]
} else {
this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
}
var data = window.sessionStorage.getItem('Info') var data = window.sessionStorage.getItem('Info')
data = eval('(' + data + ')') data = eval('(' + data + ')')
this.formData.deptIndex = data.deptId this.formData.deptIndex = data.deptId

View File

@@ -891,112 +891,114 @@ export default {
this.tableData = [] this.tableData = []
this.timeValue = data this.timeValue = data
// this.dateFormat(this.timeValue[0], this.timeValue[1]); // this.dateFormat(this.timeValue[0], this.timeValue[1]);
if (this.$refs.fyf.intervald == 3) { // if (this.$refs.fyf.intervald == 3) {
let timedate = this.$refs.fyf.timeValue[1] // let timedate = this.$refs.fyf.timeValue[1]
let timedate1 = timedate.split('-') // let timedate1 = timedate.split('-')
if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') { // if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
let strTime = this.$refs.fyf.timeValue[0] // let strTime = this.$refs.fyf.timeValue[0]
let strTime1 = this.$refs.fyf.timeValue[1] // let strTime1 = this.$refs.fyf.timeValue[1]
let str1 = strTime.split('-') // let str1 = strTime.split('-')
let str2 = strTime1.split('-') // let str2 = strTime1.split('-')
var now = new Date() // var now = new Date()
let month = now.getMonth() // let month = now.getMonth()
if (month == 0) { // if (month == 0) {
month = 12 // month = 12
str1[0] = str1[0] - 1 // str1[0] = str1[0] - 1
str2[0] = str2[0] - 1 // str2[0] = str2[0] - 1
} // }
if (month < 10) { // if (month < 10) {
month = '0' + month // month = '0' + month
} // }
this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2] // this.formData.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate() // this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
} else { // } else {
// this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
// }
// } else if (this.$refs.fyf.intervald == 4) {
// let timedate = this.$refs.fyf.timeValue[1]
// let timedate1 = timedate.split('-')
// if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// // 获取前七天的日期
// var previousDates = []
// for (var i = 6; i >= 0; i--) {
// //var previousDate = new Date(currentDate);
// let strTime = this.$refs.fyf.timeValue[0]
// var currentDate = new Date(strTime)
// let previousDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// previousDate.setDate(currentDate.getDate() - i)
// previousDates.push(previousDate)
// }
// // 格式化日期
// var formattedDates = previousDates.map(function (date) {
// var year = date.getFullYear()
// var month = (date.getMonth() + 1).toString().padStart(2, '0')
// var day = date.getDate().toString().padStart(2, '0')
// let d = year + '-' + month + '-' + day
// // console.log("+++++++++++",d)
// // 输出前七天的日期数组
// return d
// })
// this.formData.searchBeginTime = formattedDates[0]
// this.formData.searchEndTime = formattedDates[formattedDates.length - 1]
// // console.log(formattedDates);
// } else {
// this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
// }
// } else if (this.$refs.fyf.intervald == 5) {
// let timedate = this.$refs.fyf.timeValue[1]
// let timedate1 = timedate.split('-')
// if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// let strTime = this.$refs.fyf.timeValue[0]
// let currentDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1)
// // 格式化日期字符串
// const formatDate = date => {
// const year = date.getFullYear()
// const month = String(date.getMonth() + 1).padStart(2, '0')
// const day = String(date.getDate()).padStart(2, '0')
// return `${year}-${month}-${day}`
// }
// let strTime2 = this.$refs.fyf.timeValue[1]
// let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g, '/')))
// // console.log('当前日期(中国标准时间):', currentDate);
// // console.log("++++",currentDate)
// // 向前推一天
// currentDate.setDate(currentDate.getDate() - 1)
// // 格式化日期字符串
// const formatDate2 = date => {
// const year = date.getFullYear()
// const month = String(date.getMonth() + 1).padStart(2, '0')
// const day = String(date.getDate()).padStart(2, '0')
// return `${year}-${month}-${day}`
// }
// // console.log('当前日期:', formatDate(new Date())); // 当前日期
// // console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
// this.formData.searchBeginTime = formatDate(currentDate)
// this.formData.searchEndTime = formatDate(currentDate2)
// } else {
// this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
// }
// //let estr = this.$refs.fff.timeValue[1]
// } else {
// this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
// this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
// }
this.formData.searchBeginTime = this.$refs.fyf.timeValue[0] this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
this.formData.searchEndTime = this.$refs.fyf.timeValue[1] this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
}
} else if (this.$refs.fyf.intervald == 4) {
let timedate = this.$refs.fyf.timeValue[1]
let timedate1 = timedate.split('-')
if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
// 获取前七天的日期
var previousDates = []
for (var i = 6; i >= 0; i--) {
//var previousDate = new Date(currentDate);
let strTime = this.$refs.fyf.timeValue[0]
var currentDate = new Date(strTime)
let previousDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
previousDate.setDate(currentDate.getDate() - i)
previousDates.push(previousDate)
}
// 格式化日期
var formattedDates = previousDates.map(function (date) {
var year = date.getFullYear()
var month = (date.getMonth() + 1).toString().padStart(2, '0')
var day = date.getDate().toString().padStart(2, '0')
let d = year + '-' + month + '-' + day
// console.log("+++++++++++",d)
// 输出前七天的日期数组
return d
})
this.formData.searchBeginTime = formattedDates[0]
this.formData.searchEndTime = formattedDates[formattedDates.length - 1]
// console.log(formattedDates);
} else {
this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
}
} else if (this.$refs.fyf.intervald == 5) {
let timedate = this.$refs.fyf.timeValue[1]
let timedate1 = timedate.split('-')
if (timedate1[2] == '01' || timedate1[2] == '02' || timedate1[2] == '03') {
let strTime = this.$refs.fyf.timeValue[0]
let currentDate = new Date(Date.parse(strTime.replace(/-/g, '/')))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1)
// 格式化日期字符串
const formatDate = date => {
const year = date.getFullYear()
const month = String(date.getMonth() + 1).padStart(2, '0')
const day = String(date.getDate()).padStart(2, '0')
return `${year}-${month}-${day}`
}
let strTime2 = this.$refs.fyf.timeValue[1]
let currentDate2 = new Date(Date.parse(strTime2.replace(/-/g, '/')))
// console.log('当前日期(中国标准时间):', currentDate);
// console.log("++++",currentDate)
// 向前推一天
currentDate.setDate(currentDate.getDate() - 1)
// 格式化日期字符串
const formatDate2 = date => {
const year = date.getFullYear()
const month = String(date.getMonth() + 1).padStart(2, '0')
const day = String(date.getDate()).padStart(2, '0')
return `${year}-${month}-${day}`
}
// console.log('当前日期:', formatDate(new Date())); // 当前日期
// console.log('向前推一天:', formatDate(currentDate)); // 一天前的日期
this.formData.searchBeginTime = formatDate(currentDate)
this.formData.searchEndTime = formatDate(currentDate2)
} else {
this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
}
//let estr = this.$refs.fff.timeValue[1]
} else {
this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
}
var data = window.sessionStorage.getItem('Info') var data = window.sessionStorage.getItem('Info')
data = eval('(' + data + ')') data = eval('(' + data + ')')
this.formData.deptIndex = data.deptId this.formData.deptIndex = data.deptId

View File

@@ -17,28 +17,30 @@
</div> </div>
</template> </template>
<script> <script>
import onlineData from "@/views/cgy-harmonic-boot/monitor/onlineData"; import onlineData from '@/views/cgy-harmonic-boot/monitor/onlineData'
import terminalmessage from "@/views/cgy-harmonic-boot/runmange/terminalmessage"; import terminalmessage from '@/views/cgy-harmonic-boot/runmange/terminalmessage'
import devicemessage from "@/views/cgy-harmonic-boot/runmange/devicemessage"; import devicemessage from '@/views/cgy-harmonic-boot/runmange/devicemessage'
import integralitytable from "@/views/cgy-harmonic-boot/area/integralitytable"; import integralitytable from '@/views/cgy-harmonic-boot/area/integralitytable'
import api1 from '@/api/pollution/pollution' import api1 from '@/api/pollution/pollution'
export default { export default {
components: { components: {
onlineData, onlineData,
devicemessage, devicemessage,
terminalmessage, terminalmessage,
integralitytable, integralitytable
}, },
data() { data() {
return { return {
activeName: 'first', activeName: 'first',
vh: null vh: null
}; }
}, },
created() { created() {
if (process.env.VUE_APP_MODE === 'cgyqr') { if (process.env.VUE_APP_MODE === 'cgyqr') {
if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou() this.guanzhou()
} }
}
}, },
mounted() { mounted() {
this.vh = window.sessionStorage.getItem('appheight') - 12 + 'px' this.vh = window.sessionStorage.getItem('appheight') - 12 + 'px'
@@ -60,8 +62,8 @@ export default {
// console.log(tab, event); // console.log(tab, event);
this.activeName = tab.name this.activeName = tab.name
} }
}, }
}; }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.pa10 { .pa10 {

View File

@@ -37,8 +37,11 @@ export default {
}, },
created() { created() {
if (process.env.VUE_APP_MODE === 'cgyqr') { if (process.env.VUE_APP_MODE === 'cgyqr') {
// this.guanzhou()
if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou() this.guanzhou()
} }
}
}, },
mounted() {}, mounted() {},
methods: { methods: {

View File

@@ -1,6 +1,5 @@
<template> <template>
<div v-loading="loading" <div v-loading="loading" element-loading-text="数据加载中">
element-loading-text="数据加载中">
<el-form :inline="true" :model="formInline" class="demo-form-inline"> <el-form :inline="true" :model="formInline" class="demo-form-inline">
<el-form-item label="类型:" style="display: none"> <el-form-item label="类型:" style="display: none">
<el-select <el-select
@@ -19,19 +18,13 @@
name: item.name, name: item.name,
id: item.id, id: item.id,
code: item.code, code: item.code,
sort: item.sort, sort: item.sort
}" }"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="区域:"> <el-form-item label="区域:">
<el-select <el-select ref="selectTree1" v-model="deptName" placeholder="请选择所属部门区域" style="width: 100%">
ref="selectTree1"
v-model="deptName"
placeholder="请选择所属部门区域"
style="width: 100%"
>
<el-option :value="deptIndex" style="height: auto"> <el-option :value="deptIndex" style="height: auto">
<el-tree <el-tree
ref="tree" ref="tree"
@@ -68,10 +61,9 @@
code: item.code, code: item.code,
name: item.name, name: item.name,
id: item.id, id: item.id,
sort: item.sort, sort: item.sort
}" }"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="干扰源:" style="display: none"> <el-form-item label="干扰源:" style="display: none">
@@ -92,10 +84,9 @@
code: item.code, code: item.code,
name: item.name, name: item.name,
id: item.id, id: item.id,
sort: item.sort, sort: item.sort
}" }"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="通讯状态:"> <el-form-item label="通讯状态:">
@@ -111,8 +102,7 @@
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="终端状态:"> <el-form-item label="终端状态:">
@@ -128,50 +118,45 @@
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" size="small" icon="el-icon-search" @click="queryDataInfo">查询</el-button>
type="primary"
size="small"
icon="el-icon-search"
@click="queryDataInfo"
>查询</el-button
>
</el-form-item> </el-form-item>
<el-form-item style="float: right;"> <el-form-item style="float: right">
<span>在线率60% <span style="color:red;font-weight: bold;">&ensp;&ensp;&ensp;</span> 60%在线率90% <span style="color:rgb(255, 174, 0);font-weight: bold;">&ensp;&ensp;&ensp;</span> 90%在线率 <span style="color:green;font-weight: bold;"></span> </span> <span>
在线率60%
<span style="color: red; font-weight: bold">&ensp;&ensp;&ensp;</span>
60%在线率90%
<span style="color: rgb(255, 174, 0); font-weight: bold">&ensp;&ensp;&ensp;</span>
90%在线率
<span style="color: green; font-weight: bold"></span>
</span>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="20" style="margin-top: 0%"> <el-row :gutter="20" style="margin-top: 0%">
<el-col :span="24"> <el-col :span="24">
<terminalmessagetable <terminalmessagetable :tableData="tableData" :classvalue="classt"></terminalmessagetable>
:tableData="tableData"
:classvalue="classt"
></terminalmessagetable>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
</template> </template>
<script> <script>
import { getappheight, getheight } from "@/assets/commjs/common"; import { getappheight, getheight } from '@/assets/commjs/common'
import { guanzhou } from "@/assets/commjs/token"; import { guanzhou } from '@/assets/commjs/token'
import api1 from "@/api/pollution/pollution"; import api1 from '@/api/pollution/pollution'
import timepicker from "@/views/cgy-components/TimePicker/index4"; import timepicker from '@/views/cgy-components/TimePicker/index4'
import { dicData } from "../../../assets/commjs/dictypeData"; import { dicData } from '../../../assets/commjs/dictypeData'
import api from "../../../api/integraliy/integraliy"; import api from '../../../api/integraliy/integraliy'
import Table from "../../components/teble/index"; import Table from '../../components/teble/index'
import Pagination from "../../components/pagination/index"; import Pagination from '../../components/pagination/index'
import terminalmessagetable from "@/views/cgy-components/terminalmessagetable"; import terminalmessagetable from '@/views/cgy-components/terminalmessagetable'
export default { export default {
components: { components: {
timepicker, timepicker,
terminalmessagetable, terminalmessagetable
// onlinerateechart // onlinerateechart
}, },
watch: {}, watch: {},
@@ -180,54 +165,52 @@ export default {
return { return {
formInline: {}, formInline: {},
loading: false, loading: false,
classt: "Power_Network", classt: 'Power_Network',
asideheight: undefined, asideheight: undefined,
id: 1, id: 1,
copent: 0, copent: 0,
title: "电网拓扑", title: '电网拓扑',
xdata: [ xdata: [
"江苏省", '江苏省',
"江西省", '江西省',
"安徽省", '安徽省',
"湖北省", '湖北省',
"浙江省", '浙江省',
"湖南省", '湖南省',
"广东省", '广东省',
"福建省", '福建省',
"海南省", '海南省',
"四川省", '四川省',
"青海省", '青海省',
"河北省", '河北省'
],
ydata: [
92.6, 25.9, 39.0, 26.4, 28.7, 90.7, 75.6, 82.2, 48.7, 58.8, 16.0, 32.3,
], ],
ydata: [92.6, 25.9, 39.0, 26.4, 28.7, 90.7, 75.6, 82.2, 48.7, 58.8, 16.0, 32.3],
classvalue: 0, classvalue: 0,
activeName: "tab1", activeName: 'tab1',
panindexOptions: [], panindexOptions: [],
formData: { formData: {
//后面需要修改 //后面需要修改
serverName: "harmonic-boot", serverName: 'harmonic-boot',
searchBeginTime:'2023-04-01', searchBeginTime: '',
searchEndTime:'2023-04-11', searchEndTime: '',
deptIndex: "", deptIndex: '',
monitorFlag: 2, monitorFlag: 2,
powerFlag: 2, powerFlag: 2,
loadType: [], loadType: [],
manufacturer: [], manufacturer: [],
statisticalType: "", statisticalType: '',
scale: [], scale: [],
comFlag: [0, 1], comFlag: [0, 1],
runFlag: [0, 1, 2], runFlag: [0, 1, 2]
}, },
deptId: "", deptId: '',
deptName: "全国", deptName: '全国',
deptIndex: "", deptIndex: '',
treeData: [], treeData: [],
idArr: [], idArr: [],
defaultProps: { defaultProps: {
children: "children", children: 'children',
label: "name", label: 'name'
}, },
//统计类型 //统计类型
classificationData: [], classificationData: [],
@@ -239,136 +222,171 @@ export default {
interfereoption: [], interfereoption: [],
//通讯状态 //通讯状态
communicationstatus: [ communicationstatus: [
{ value: 0, label: "中断" }, { value: 0, label: '中断' },
{ value: 1, label: "正常" }, { value: 1, label: '正常' }
], ],
//终端状态 //终端状态
terminalstatus: [ terminalstatus: [
{ value: 0, label: "投运" }, { value: 0, label: '投运' },
{ value: 1, label: "热备用" }, { value: 1, label: '热备用' },
{ value: 2, label: "停运" }, { value: 2, label: '停运' }
], ],
classt: "Power_Network", classt: 'Power_Network',
tableData: [], tableData: []
}; }
}, },
created() { created() {
var info = window.sessionStorage.getItem("Info"); var info = window.sessionStorage.getItem('Info')
info = eval("(" + info + ")"); info = eval('(' + info + ')')
this.formData.deptIndex = info.deptId; this.formData.deptIndex = info.deptId
this.getAreaDept(); this.getAreaDept()
this.getclassificationData(); this.getclassificationData()
this.getVoltage(); this.getVoltage()
this.getManufacturer(); this.getManufacturer()
this.getLoadType(); this.getLoadType()
}, },
mounted() { mounted() {
// this.asideheight = getappheight(); // this.asideheight = getappheight();
this.queryDataInfo(); this.queryDataInfo()
}, },
methods: { methods: {
guanzhou() { guanzhou() {
var data = { var data = {
token: this.$route.query.token, token: this.$route.query.token
};
api1.guanzhou(data).then((res) => {
if (res.code == "A0000") {
return;
} else {
this.$router.push("/error/massege/403");
} }
}); api1.guanzhou(data).then(res => {
if (res.code == 'A0000') {
return
} else {
this.$router.push('/error/massege/403')
}
})
}, },
//切换统计类型 //切换统计类型
changeclasss(val) { changeclasss(val) {
this.classt = val.code; this.classt = val.code
}, },
//部门绑定区域触发区域树节点 //部门绑定区域触发区域树节点
handleNodeClick(data, node) { handleNodeClick(data, node) {
this.deptName = data.name; this.deptName = data.name
this.$refs.selectTree1.blur(); this.$refs.selectTree1.blur()
this.deptId = data.id; this.deptId = data.id
this.formData.deptIndex = data.id; this.formData.deptIndex = data.id
}, },
//2次组件触发事件 //2次组件触发事件
querfromdata(data) { querfromdata(data) {
this.timeValue = data; this.timeValue = data
// alert("父组件条件查询触发方法" + this.timeValue); // alert("父组件条件查询触发方法" + this.timeValue);
}, },
handleClick(tab, event) { handleClick(tab, event) {
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.child.onlinerateechart(); this.$refs.child.onlinerateechart()
}); })
}, },
changePageNum(data) { changePageNum(data) {
this.pageData.pageNum = data; this.pageData.pageNum = data
// alert("父组件当前页" + this.pageData.pageNum); // alert("父组件当前页" + this.pageData.pageNum);
}, },
changePageSize(data) { changePageSize(data) {
this.pageData.pageSize = data; this.pageData.pageSize = data
//alert("父组件当前条数" + this.pageData.pageSize); //alert("父组件当前条数" + this.pageData.pageSize);
}, },
//查询触发方法 //查询触发方法
queryDataInfo() { queryDataInfo() {
this.loading = true; console.log(123, this.getSearchTimeRange())
api.getRuntimeData(this.formData).then((res) => { this.formData.searchBeginTime = this.getSearchTimeRange().searchBeginTime
if (res.code == "A0000") { this.formData.searchEndTime = this.getSearchTimeRange().searchEndTime
this.loading = true
api.getRuntimeData(this.formData).then(res => {
if (res.code == 'A0000') {
if (res.data.length == 0) { if (res.data.length == 0) {
this.tableData = []; this.tableData = []
this.loading = false; this.loading = false
} else { } else {
this.tableData = res.data; this.tableData = res.data
this.loading = false; this.loading = false
} }
} }
}); })
}, },
//获取区域 //获取区域
getAreaDept() { getAreaDept() {
api.getAreaDept().then((res) => { api.getAreaDept().then(res => {
if (res.code == "A0000") { if (res.code == 'A0000') {
var data = res.data; var data = res.data
data.forEach((element) => { data.forEach(element => {
this.idArr.push(element.id); this.idArr.push(element.id)
}); })
this.treeData = data; this.treeData = data
} }
}); })
}, },
//字典获取数据电压等级 //字典获取数据电压等级
getVoltage() { getVoltage() {
var code = "Dev_Voltage_Stand"; var code = 'Dev_Voltage_Stand'
this.voltageleveloption = dicData(code, []); this.voltageleveloption = dicData(code, [])
//this.formData.scale = this.voltageleveloption; //this.formData.scale = this.voltageleveloption;
}, },
//字典获取数据终端厂家 //字典获取数据终端厂家
getManufacturer() { getManufacturer() {
var code = "Dev_Manufacturers"; var code = 'Dev_Manufacturers'
this.terminaloption = dicData(code, []); this.terminaloption = dicData(code, [])
this.formData.manufacturer = this.terminaloption; this.formData.manufacturer = this.terminaloption
}, },
//字典获取数据干扰源类型 //字典获取数据干扰源类型
getLoadType() { getLoadType() {
var code = "Interference_Source"; var code = 'Interference_Source'
this.interfereoption = dicData(code, []); this.interfereoption = dicData(code, [])
this.formData.loadType = this.interfereoption; this.formData.loadType = this.interfereoption
}, },
//获取统计类型 //获取统计类型
getclassificationData() { getclassificationData() {
var code = "Statistical_Type"; var code = 'Statistical_Type'
this.classificationData = dicData(code, [ this.classificationData = dicData(code, ['Report_Type', 'Voltage_Level', 'Load_Type', 'Manufacturer'])
"Report_Type", this.formData.statisticalType = this.classificationData[0]
"Voltage_Level",
"Load_Type",
"Manufacturer"
]);
this.formData.statisticalType = this.classificationData[0];
}, },
getSearchTimeRange() {
const now = new Date()
const currentYear = now.getFullYear()
const currentMonth = now.getMonth() // 0-11
const currentDate = now.getDate()
let searchBeginTime, searchEndTime
if (currentDate === 1) {
// 如果是1号返回上个月1号到上个月最后一天
// 上个月的第一天
const lastMonthFirstDay = new Date(currentYear, currentMonth - 1, 1)
searchBeginTime = this.formatDate(lastMonthFirstDay)
// 上个月的最后一天当前月的第0天就是上个月的最后一天
const lastMonthLastDay = new Date(currentYear, currentMonth, 0)
searchEndTime = this.formatDate(lastMonthLastDay)
} else {
// 如果不是1号返回当月1号到当前时间
const monthFirstDay = new Date(currentYear, currentMonth, 1)
searchBeginTime = this.formatDate(monthFirstDay)
searchEndTime = this.formatDate(now)
}
return {
searchBeginTime,
searchEndTime
}
}, },
};
// 辅助函数:格式化日期为 YYYY-MM-DD
formatDate(date) {
const year = date.getFullYear()
const month = String(date.getMonth() + 1).padStart(2, '0')
const day = String(date.getDate()).padStart(2, '0')
return `${year}-${month}-${day}`
}
}
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import url("../../../styles/common.less"); @import url('../../../styles/common.less');
.main { .main {
overflow: hidden; overflow: hidden;

View File

@@ -1100,8 +1100,8 @@ export default {
voltageLevelArr: [], voltageLevelArr: [],
/**母线类型 */ /**母线类型 */
busBarType: [ busBarType: [
{ name: '实际母线', value: 0 }, { name: '实际母线', value: 1 },
{ name: '虚拟母线', value: 1 } { name: '虚拟母线', value: 0 }
], ],
/**监测点详情 */ /**监测点详情 */
monitorPointDetail: { monitorPointDetail: {

View File

@@ -202,14 +202,14 @@
type="danger" type="danger"
size="small" size="small"
v-if="scope.row.type === 1" v-if="scope.row.type === 1"
style="color: red" style="color: #008000"
>开机策略</el-tag >开机策略</el-tag
> >
<el-tag <el-tag
type="primary" type="primary"
size="small" size="small"
v-if="scope.row.type === 2" v-if="scope.row.type === 2"
style="color: green" style="color: #991717"
>关机策略</el-tag >关机策略</el-tag
> >
</template> </template>
@@ -256,7 +256,7 @@
}}</span> }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <!-- <el-table-column
width="150" width="150"
align="center" align="center"
prop="wind" prop="wind"
@@ -268,7 +268,7 @@
}}</span> }}</span>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column align="center" prop="sjfw" label="涉及范围" > <el-table-column align="center" prop="sjfw" label="涉及范围" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="scope.row.sjfw==0" @click="confingview(scope.row)" type="primary" size="mini">配置</el-button> <el-button v-if="scope.row.sjfw==0" @click="confingview(scope.row)" type="primary" size="mini">配置</el-button>
<el-button v-if="scope.row.sjfw==1" type="primary" size="mini">查看</el-button> <el-button v-if="scope.row.sjfw==1" type="primary" size="mini">查看</el-button>
@@ -283,12 +283,18 @@
>查看</el-button >查看</el-button
> >
<el-button <el-button
v-if="scope.row.status === 0"
type="primary" type="primary"
size="mini" size="mini"
@click="edit(scope.row.id)" @click="edit(scope.row.id)"
>修改</el-button >修改</el-button
> >
<el-button
v-if="scope.row.status === 1"
type="primary"
@click="stopAirStrategy(scope.row.id)"
size="mini"
>停止</el-button
>
<!-- <el-button <!-- <el-button
v-if="scope.row.status !== 1" v-if="scope.row.status !== 1"
type="primary" type="primary"
@@ -303,20 +309,14 @@
size="mini" size="mini"
>执行</el-button >执行</el-button
> >
<el-button
v-if="scope.row.status === 1"
type="primary"
@click="stopAirStrategy(scope.row.id)"
size="mini"
>停止</el-button
>-->
<el-button <el-button
v-if="scope.row.status === 2" v-if="scope.row.status === 2"
@click="querydata(scope.row)" @click="querydata(scope.row)"
type="primary" type="primary"
size="mini" size="mini"
>趋势查看 >趋势查看
</el-button> </el-button>-->
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@@ -1330,64 +1330,7 @@ export default {
this.get_bodyHeight(); this.get_bodyHeight();
this.connectMqtt(); this.connectMqtt();
this.globalMqtt.ws.on("connect", (e) => {
this.$message.success("连接mqtt服务器成功!");
console.log("mqtt客户端已连接....");
this.globalMqtt.ws.subscribe("/platform/devack/#");
});
this.globalMqtt.ws.on("error", (error) => {
console.log("mqtt连接失败...", error);
this.mqtt.end();
});
this.globalMqtt.ws.on("close", function () {
console.log("mqtt客户端已断开连接.....");
});
let index = 0;
this.globalMqtt.ws.on("message", (topic, message) => {
let that = this;
if (message) {
let json = JSON.parse(message);
if (json.code === 200) {
if (json.param.action === "ACInMode") {
this.$message.success("内机模式调节成功!");
} else if (json.param.action === "ACInSpeed") {
this.$message.success("内机风速调节成功!");
} else if (json.param.action === "ACInSetTmp") {
this.$message.success("内机温度调节成功!");
} else if (json.param.action === "ACInStat") {
this.$message.success("内机开关机操作成功!");
} else {
this.$message.success("操作成功!");
}
window.setTimeout(function () {
that.getStatisTemplateById();
}, 10000);
} else {
this.$message.error(json.msg);
if (this.userIndex === json.userId) {
this.mqttSendCount++;
if (this.mqttSendCount > 2) {
return;
} else {
this.globalMqtt.ws.publish(
"/platform/devcmd/v1/" + this.devInfo.ndid,
JSON.stringify(this.mqttSendMsg)
);
}
console.log("错误+++进行重发" + this.mqttSendCount);
}
}
this.buttonDisable = false;
}
console.log("收到消息:" + topic + message);
});
//如果别的页面路由过来的进行路由参数处理 //如果别的页面路由过来的进行路由参数处理
}, },
@@ -1411,11 +1354,13 @@ export default {
} }
}, },
methods: { methods: {
connectMqtt() { async connectMqtt() {
this.globalMqtt.ws = {};
let this_ = this
this_.globalMqtt.ws = {};
let mqttWs = null; let mqttWs = null;
let userName = this.$store.state.user.userInfo.loginName; let userName = this_.$store.state.user.userInfo.loginName;
const options = { const options = {
qos: 2, qos: 2,
clean: true, clean: true,
@@ -1424,9 +1369,73 @@ export default {
username: "t_user", username: "t_user",
password: "njcnpqs", password: "njcnpqs",
}; };
const url = "wss://pqmcn.com:8087/mqtt"; const url = localStorage.getItem('MqttUrl') == 'null'
mqttWs = mqtt.connect(url, options); ? 'ws://192.168.1.24:8085/mqtt'
this.globalMqtt.setWs(mqttWs); : localStorage.getItem('MqttUrl')
console.log("🚀 ~ connectMqtt ~ url:", url)
mqttWs =await mqtt.connect(url, options);
this_.globalMqtt.setWs(mqttWs);
this_.globalMqtt.ws.on("connect", (e) => {
this_.$message.success("连接mqtt服务器成功!");
console.log("mqtt客户端已连接....");
this_.globalMqtt.ws.subscribe("/platform/devack/#");
});
this_.globalMqtt.ws.on("error", (error) => {
console.log("mqtt连接失败...", error);
this.mqtt.end();
});
this_.globalMqtt.ws.on("close", function () {
console.log("mqtt客户端已断开连接.....");
});
this_.globalMqtt.ws.on("message", (topic, message) => {
let that = this;
if (message) {
let json = JSON.parse(message);
if (json.code === 200) {
if (json.param.action === "ACInMode") {
this_.$message.success("内机模式调节成功!");
} else if (json.param.action === "ACInSpeed") {
this_.$message.success("内机风速调节成功!");
} else if (json.param.action === "ACInSetTmp") {
this_.$message.success("内机温度调节成功!");
} else if (json.param.action === "ACInStat") {
this_.$message.success("内机开关机操作成功!");
} else {
this_.$message.success("操作成功!");
}
window.setTimeout(function () {
that.getStatisTemplateById();
}, 10000);
} else {
this_.$message.error(json.msg);
if (this_.userIndex === json.userId) {
this_.mqttSendCount++;
if (this_.mqttSendCount > 2) {
return;
} else {
this_.globalMqtt.ws.publish(
"/platform/devcmd/v1/" + this.devInfo.ndid,
JSON.stringify(this.mqttSendMsg)
);
}
console.log("错误+++进行重发" + this.mqttSendCount);
}
}
this_.buttonDisable = false;
}
console.log("收到消息:" + topic + message);
});
}, },
//子节点树点击事件 //子节点树点击事件
getTreeText(data, level) { getTreeText(data, level) {
@@ -2009,7 +2018,7 @@ window.echartsArr.push(myChart);
switchChange(item, type) { switchChange(item, type) {
console.log(item); console.log(item);
console.log(type); console.log(type);
console.log(this.devInfo.ndid);
let msg = { let msg = {
mid: 1, mid: 1,
@@ -2025,10 +2034,14 @@ window.echartsArr.push(myChart);
}, },
}; };
this.globalMqtt.ws.publish( let topic = "/platform/devcmd/v1/" + this.devInfo.ndid;
"/platform/devcmd/v1/" + this.devInfo.ndid, console.log(topic);
JSON.stringify(msg) this.globalMqtt.ws.publish(topic, JSON.stringify(msg), { qos: 0 }, (err) => {
); if (err) console.error("发送失败:", err);
else console.log("发送成功");
})
this.mqttSendMsg = msg; this.mqttSendMsg = msg;
this.mqttSendCount = 0; this.mqttSendCount = 0;

View File

@@ -264,7 +264,7 @@ export default {
//获取审核人列表 //获取审核人列表
getAuditUser() { getAuditUser() {
let param = {roleType: 3} let param = {roleType: 1}
getAuditUser(param).then(res => { getAuditUser(param).then(res => {
if (res && res.code === 'A0000') { if (res && res.code === 'A0000') {
this.auditUserList = res.data this.auditUserList = res.data

View File

@@ -51,7 +51,9 @@ export default {
}; };
}, },
created() { created() {
if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou() this.guanzhou()
}
}, },
mounted() { mounted() {

View File

@@ -69,7 +69,7 @@
</el-form-item> </el-form-item>
<el-form-item style="float: right;margin-right: 50px"> <el-form-item style="float: right;margin-right: 50px">
<el-button :disabled="store.params.dataType === '01'" type="primary" @click="reCalUpload(activeName)"> <el-button :disabled="store.params.dataType === '01'" type="primary" @click="reCalUpload('1')">
{{ storeList[activeName].label + '重新计算' }} {{ storeList[activeName].label + '重新计算' }}
</el-button> </el-button>
</el-form-item> </el-form-item>
@@ -605,7 +605,7 @@ export default {
let dateMonth = this.store.params.searchBeginTime.substring(0, 7) let dateMonth = this.store.params.searchBeginTime.substring(0, 7)
//月 //月
request request
.get('/prepare-boot/dimGlobal/reCalMonthUploadAlgorithm?statisticDate=' + dateMonth + '&type=' + type) .get('/prepare-boot/dimGlobal/reCalMonthUploadAlgorithm?statisticDate=' + dateMonth + '&type=1')
.then(res => { .then(res => {
if (res && res.code === 'A0000') { if (res && res.code === 'A0000') {
this.$message({ this.$message({
@@ -617,7 +617,7 @@ export default {
}) })
} else { } else {
request request
.get('/prepare-boot/dimGlobal/reCalUploadAlgorithm?statisticDate=' + this.store.params.searchBeginTime + '&type=' + type) .get('/prepare-boot/dimGlobal/reCalUploadAlgorithm?statisticDate=' + this.store.params.searchBeginTime + '&type=1')
.then(res => { .then(res => {
if (res && res.code === 'A0000') { if (res && res.code === 'A0000') {
this.$message({ this.$message({

View File

@@ -48,7 +48,9 @@ export default {
} }
}, },
created() { created() {
if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou() this.guanzhou()
}
}, },
mounted() { mounted() {
this.setHeight() this.setHeight()

View File

@@ -75,7 +75,9 @@ export default {
}; };
}, },
created() { created() {
this.guanzhou(); if (process.env.VUE_APP_KEY != 'scqr') {
this.guanzhou()
}
}, },
mounted() {}, mounted() {},
methods: { methods: {

View File

@@ -10,7 +10,7 @@
<el-button @click="queryData()" type="primary" size="mini" style="margin-left:1%;" icon="el-icon-search">查询</el-button> --> <el-button @click="queryData()" type="primary" size="mini" style="margin-left:1%;" icon="el-icon-search">查询</el-button> -->
<el-form :inline="true" :model="form" class="demo-form-inline"> <el-form :inline="true" :model="form" class="demo-form-inline">
<el-form-item> <el-form-item>
<el-button @click="AddTypeClick" type="primary" icon="el-icon-plus">新增字典类型</el-button> <el-button @click="AddTypeClick" type="primary" icon="el-icon-plus">新增字典类型</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-select <el-select

View File

@@ -605,7 +605,7 @@ export default {
/**电压等级选项 */ /**电压等级选项 */
voltageLevelArr: [], voltageLevelArr: [],
/**母线类型 */ /**母线类型 */
busBarType: [{ name: "实际母线", value: 0 }, { name: "虚拟母线", value: 1 },], busBarType: [{ name: "实际母线", value: 1 }, { name: "虚拟母线", value: 0 },],
/**监测点详情 */ /**监测点详情 */
monitorPointDetail: { monitorPointDetail: {
/**行业类型 */ /**行业类型 */

View File

@@ -18,7 +18,7 @@ module.exports = {
// publicPath: 'https://fuphoenixes.github.io/example/dist/', // publicPath: 'https://fuphoenixes.github.io/example/dist/',
//publicPath: "./", //publicPath: "./",
// publicPath: process.env.VUE_APP_PATH, // publicPath: process.env.VUE_APP_PATH,
publicPath: process.env.NODE_ENV === 'development' ? './' : process.env.VUE_APP_MODE == 'jbqr' ? './' : '/', publicPath: './', //process.env.NODE_ENV === 'development' ? './' : process.env.VUE_APP_MODE == 'jbqr' ? './' : '/',
outputDir: 'dist', outputDir: 'dist',
assetsDir: 'static', assetsDir: 'static',
// lintOnSave: process.env.NODE_ENV === 'development', // lintOnSave: process.env.NODE_ENV === 'development',
@@ -37,9 +37,9 @@ module.exports = {
'/api': { '/api': {
// target: 'http://18028358809.gnway.cc', //hsw // target: 'http://18028358809.gnway.cc', //hsw
// target: 'http://192.168.120.210:10215', //hsw // target: 'http://192.168.120.210:10215', //hsw
target: 'http://192.168.1.29:10215', //超高压 // target: 'http://192.168.1.28:10215', //超高压
// target: "'https://pqmcn.com:8092/api", //治理 // target: "'https://pqmcn.com:8092/api", //治理
// target: 'http://192.168.1.24:10215', // 河北 target: 'http://192.168.1.67:10215', // 河北
// target: "http://192.168.1.31:10215", // 海南 // target: "http://192.168.1.31:10215", // 海南
// target: "http://192.168.1.29:10215", // 冀北 // target: "http://192.168.1.29:10215", // 冀北
changeOrigin: true, changeOrigin: true,