Compare commits
11 Commits
15e1be00af
...
39093641d8
| Author | SHA1 | Date | |
|---|---|---|---|
| 39093641d8 | |||
|
|
c88484caf7 | ||
| bb7eb039b5 | |||
| b317bf9c7d | |||
| 0a521bdcb7 | |||
| 263cd764f3 | |||
| a04bb33206 | |||
| f4a22dbed1 | |||
| 566949569a | |||
| 52a0b67f96 | |||
| 50573bb748 |
@@ -8,12 +8,14 @@
|
||||
"dev": "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-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",
|
||||
"build": "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-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",
|
||||
"preview": "node build/index.js --preview",
|
||||
"deploy-18": "cross-env VUE_APP_ZOOM=1 vue-cli-service build && ./upload_script/upload_18.sh"
|
||||
|
||||
@@ -47,3 +47,11 @@ export function queryByLineId(data) {
|
||||
params: data
|
||||
})
|
||||
}
|
||||
// 执行算法
|
||||
export function measurementPointExecutorByHour(data) {
|
||||
return request({
|
||||
url: '/prepare-boot/executor/measurementPointExecutorByHour',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
@@ -72,21 +72,21 @@ export function getDicTree() {
|
||||
}
|
||||
export function getDicTreeAdd(data) {
|
||||
return request({
|
||||
url: '/system-boot/dic/add',
|
||||
url: '/system-boot/dictTree/add',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
export function getDicTreeUpdate(data) {
|
||||
return request({
|
||||
url: '/system-boot/dic/update',
|
||||
url: '/system-boot/dictTree/update',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
export function getDicTreeDelete(data) {
|
||||
return request({
|
||||
url: '/system-boot/dic/delete',
|
||||
url: '/system-boot/dictTree/delete',
|
||||
method: 'delete',
|
||||
params: data
|
||||
})
|
||||
|
||||
@@ -8,6 +8,16 @@ export function getAllMonitorPageList(data) {
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getAllMainUserPageList(data) {
|
||||
return request({
|
||||
url: '/device-boot/pms/monitor/getAllMainUserPageList',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 新增牵引站信息
|
||||
export function addMonitor(data) {
|
||||
return request({
|
||||
|
||||
@@ -51,3 +51,11 @@ export function objType(data) {
|
||||
params: data
|
||||
})
|
||||
}
|
||||
|
||||
export function objTypeStatis(data) {
|
||||
return request({
|
||||
url: '/device-boot/monitorStatistics/objTypeStatis',
|
||||
method: 'post',
|
||||
params: data
|
||||
})
|
||||
}
|
||||
|
||||
@@ -15,6 +15,14 @@ export function heBeiToken(data) {
|
||||
params: data,
|
||||
});
|
||||
}
|
||||
// /超高压嵌入token校验
|
||||
export function productionManagementCheck(data) {
|
||||
return request({
|
||||
url: "/pqs-auth/judgeToken/productionManagementCheck",
|
||||
method: "post",
|
||||
params: data,
|
||||
});
|
||||
}
|
||||
//登录获取token
|
||||
export function login(data) {
|
||||
return request({
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
v-show="!collapse"
|
||||
class="sidebar-title"
|
||||
:style="{ fontSize: settings.layout === 'layout1' && settings.title.length >= 8 ? '14px' : '24px'}"
|
||||
>{{ settings.title }} </h1>
|
||||
>{{ settings.title }} <span style="font-size: 14px">(v1.0.0)</span> </h1>
|
||||
</transition>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -3,8 +3,7 @@ import store from './store'
|
||||
import NProgress from 'nprogress' // progress bar
|
||||
import 'nprogress/nprogress.css' // progress bar style
|
||||
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
|
||||
// && from.path === '/agreement' && from.path === '/policy'
|
||||
const whiteList = ['/login', '/agreement', '/policy'] // no redirect whitelist
|
||||
@@ -19,7 +18,12 @@ const cgyList = [
|
||||
'/Statistical-analysis/baselineLevelAssessment',
|
||||
'/Statistical-analysis/substationBackgroundHarmonic',
|
||||
'/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'
|
||||
@@ -27,7 +31,11 @@ import { sm3Digest } from '@/assets/commjs/sm3'
|
||||
import { setDictype, setSysConfig } from '@/utils/auth'
|
||||
import { gongkey, CodeSr, heBeiToken, menulist, updateFirstPassword, dictypeData, getSysConfig } from '@/api/user'
|
||||
let routerPath = ''
|
||||
let flag = false
|
||||
router.beforeEach(async (to, from, next) => {
|
||||
console.log('🚀 ~ to:', to)
|
||||
console.log('🚀 ~ getURLParameter ~ window.location.href:', window.location.href)
|
||||
|
||||
// start progress bar
|
||||
// NProgress.start()
|
||||
|
||||
@@ -43,6 +51,10 @@ router.beforeEach(async (to, from, next) => {
|
||||
// 超高压河北免登录功能
|
||||
|
||||
if (process.env.VUE_APP_MODE === 'cgyqr') {
|
||||
if (flag) {
|
||||
flag = false
|
||||
return next()
|
||||
}
|
||||
if (process.env.VUE_APP_HB == 'hbqr') {
|
||||
// let data = JSON.parse(sessionStorage.getItem('userInfo1'))
|
||||
// if (data.userToken == sessionStorage.getItem('HB_TOKEN')) {
|
||||
@@ -54,7 +66,10 @@ router.beforeEach(async (to, from, next) => {
|
||||
// window.sessionStorage.removeItem('cntoken')
|
||||
// sessionStorage.setItem('HB_TOKEN', data.userToken)
|
||||
// setTimeout(() => {
|
||||
proceed(to, from, next, 'cdf')
|
||||
|
||||
// console.log('🚀 ~ getURLParameter ~ url:', url)
|
||||
|
||||
proceed({ path: window.location.href.split('#')[1].split('&')[0] }, from, next, 'cdf')
|
||||
// }, 10)
|
||||
// }
|
||||
|
||||
@@ -86,9 +101,27 @@ router.beforeEach(async (to, from, next) => {
|
||||
// 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 {
|
||||
proceed(to, from, next)
|
||||
}
|
||||
}
|
||||
|
||||
// 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) {
|
||||
// 打印当前 name 和 sessionStorage 中 cntoken 是否为空的日志
|
||||
let name = HB_NAME || 'cdf'
|
||||
// 检查 sessionStorage 中是否没有 cntoken
|
||||
console.log('🚀 ~ proceed ~ name:', name, window.sessionStorage.getItem('cntoken') == null)
|
||||
// 定义默认密码
|
||||
if (window.sessionStorage.getItem('cntoken') == null) {
|
||||
// 初始化登录表单
|
||||
let password = '@#001njcnpqs'
|
||||
let loginjmForm = {
|
||||
username: '',
|
||||
@@ -143,47 +219,69 @@ async function proceed(to, from, next, HB_NAME) {
|
||||
grant_type: 'captcha',
|
||||
verifyCode: 0,
|
||||
imageCode: ''
|
||||
// 对 name 进行加密处理
|
||||
}
|
||||
let username = encrypt(name)
|
||||
// 设置登录表单的用户名
|
||||
|
||||
// 将应用高度存储到 sessionStorage 中
|
||||
loginjmForm.username = username
|
||||
// 调用 gongkey 函数获取公钥
|
||||
window.sessionStorage.setItem('appheight', document.body.offsetHeight - 10)
|
||||
await gongkey({ loginName: username }).then(async response => {
|
||||
window.publicKey = response.data
|
||||
// 将公钥存储到全局变量和 localStorage 中
|
||||
window.localStorage.setItem('publicKey', response.data)
|
||||
|
||||
var sm3Pwd = sm3Digest(password)
|
||||
// 使用 SM3 算法对密码进行摘要处理
|
||||
var jiamipassword = ''
|
||||
// 使用 SM2 算法对密码进行加密
|
||||
jiamipassword = sm2(sm3Pwd + '|' + password, publicKey, 0)
|
||||
loginjmForm.password = jiamipassword
|
||||
// 设置登录表单的加密密码
|
||||
|
||||
store
|
||||
// 调用 Vuex 的 login 方法进行登录
|
||||
.dispatch('user/login', loginjmForm)
|
||||
.then(async response => {
|
||||
if (response.code === 'A0101' && response.message === '登录认证,密码失效,请重置') {
|
||||
// 如果登录响应需要重置密码
|
||||
CodeSr().then(response => {
|
||||
// 调用 CodeSr 函数获取验证码图片
|
||||
let blob = new Blob([response], { type: 'image/jpg' })
|
||||
let url = window.URL.createObjectURL(blob)
|
||||
})
|
||||
}
|
||||
await store.dispatch('user/getInfo')
|
||||
// 获取用户信息
|
||||
// 根据角色生成可访问的路线图
|
||||
const accessRoutes = await store.dispatch('permission/generateRoutes')
|
||||
// 动态添加可访问的路由
|
||||
setTimeout(() => {
|
||||
router.addRoutes(accessRoutes)
|
||||
if (response.code === 'A0000') {
|
||||
// 如果登录成功
|
||||
loginjmForm.verifyCode = 0
|
||||
// 重置验证码
|
||||
SysConfig()
|
||||
// 调用 SysConfig 函数进行系统配置
|
||||
// cgyList.indexOf(to.path) !== -1
|
||||
store.dispatch('user/getmenu').then(async response => {
|
||||
await getmuen(response.data[0])
|
||||
|
||||
router.push({
|
||||
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()
|
||||
}
|
||||
}, 500)
|
||||
})
|
||||
.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 {
|
||||
next()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getmuen(data) {
|
||||
if (data.children.length == 0) {
|
||||
|
||||
@@ -86,6 +86,37 @@ export const constantRoutes = [
|
||||
component: () => import('@/views/cgy-harmonic-boot/UPHomePage'),
|
||||
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',
|
||||
name: 'index',
|
||||
component: () =>
|
||||
// import ("@/views/dashboard/index"),
|
||||
import('@/views/harmonic-boot/detailed/qypowerpollutionzs'),
|
||||
import ("@/views/dashboard/index"),
|
||||
// import('@/views/harmonic-boot/detailed/qypowerpollutionzs'),
|
||||
// import('@/views/energy-system/operationalCenter/airManageReadOnly.vue'),
|
||||
meta: { title: '首页概览', icon: '', affix: true }
|
||||
},
|
||||
|
||||
@@ -7,10 +7,11 @@ import { CodeSr } from '@/api/user'
|
||||
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
|
||||
|
||||
const service = axios.create({
|
||||
// baseURL: '/harmonicWaveApi',//超高压生产嵌入
|
||||
// baseURL: '/PMS3/Application/third/aqcp-dnzl/harmonicWaveApi',//河北嵌入
|
||||
baseURL: '/api',
|
||||
timeout: 150000
|
||||
})
|
||||
|
||||
// service.interceptors.request.use(
|
||||
// config => {
|
||||
// if(config.url !=='/pqs-oauth2/oauth/token' || config.params.grant_type=='refresh_token'){
|
||||
|
||||
@@ -615,21 +615,24 @@ export default {
|
||||
//台区台账表头
|
||||
tableHeaderMonitoring: [
|
||||
// { prop: 'id', label: '监测点编号', width: 120 },
|
||||
{ prop: 'monitorObjectName', label: '监测对象名称', width: 250 },
|
||||
|
||||
{ prop: 'name', label: '测点名称', width: 220 },
|
||||
{ prop: 'monitorId', label: '测点编号', width: 220 },
|
||||
{ prop: 'orgName', label: '组织机构名称', width: 170 },
|
||||
{ prop: 'operationName', label: '运维单位名称', width: 170 },
|
||||
{ prop: 'midStation', label: '变电站编号', width: 150 },
|
||||
{ prop: 'powerrName', label: '变电站名称', width: 120 },
|
||||
//{ prop: "generatrixName", label: "母线名称", width: 120 },
|
||||
{ prop: 'busId', 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: 'monitorState', label: '监测点状态', width: 120 },
|
||||
{ prop: 'monitorObjectName', label: '监测对象名称', width: 250 },
|
||||
{ prop: 'monitorType', label: '监测点类型', width: 120 },
|
||||
{ prop: 'minShortCircuitCapacity', label: '最小短路容量', width: 120 },
|
||||
{ prop: 'powerSupplyEqCapacity', label: '供电设备容量', width: 120 },
|
||||
{ prop: 'userAgreementCapacity', label: '用户协议容量', width: 120 },
|
||||
{ prop: 'putDate', label: '投运日期', width: 120 },
|
||||
{
|
||||
prop: 'voltageDeviationUpperLimit',
|
||||
label: '电压偏差限值(上)',
|
||||
@@ -1384,7 +1387,7 @@ export default {
|
||||
form.pageSize = this.total
|
||||
getAllMonitorPageList(form).then(res => {
|
||||
this.$refs.Monitoringpoint.exportData({
|
||||
filename: '监测点台账', // 文件名字
|
||||
filename: '监测点台账'+new Date().getTime(), // 文件名字
|
||||
sheetName: 'Sheet1',
|
||||
type: 'xlsx', //导出文件类型 xlsx 和 csv
|
||||
useStyle: true,
|
||||
|
||||
@@ -22,35 +22,6 @@
|
||||
children: 'children'
|
||||
}"></el-cascader>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="监测点状态:">
|
||||
<el-select v-model="ruleForm.monitorState" placeholder="请选择" clearable class="select">
|
||||
<el-option clearable v-for="item in monitorStateList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="上送网公司监测点:">
|
||||
<el-select v-model="ruleForm.isUpToGrid" placeholder="请选择" clearable class="select">
|
||||
<el-option label="是" value="1"></el-option>
|
||||
<el-option label="否" value="0"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="上送标识:" v-if="flag == 1">
|
||||
<el-select v-model="ruleForm.isUploadHead" placeholder="请选择" clearable style="width: 120px">
|
||||
<el-option label="未上送" value="0"></el-option>
|
||||
<el-option label="已上送" value="1"></el-option>
|
||||
<el-option label="取消上送" value="2"></el-option>
|
||||
<el-option label="待重新上送" value="3"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="上送标识:" v-if="flag == 0">
|
||||
<el-select v-model="ruleForm.monitorUploadStatus" placeholder="请选择" clearable style="width: 120px">
|
||||
<el-option label="未上送" value="0"></el-option>
|
||||
<el-option label="已上送" value="1"></el-option>
|
||||
<el-option label="取消上送" value="2"></el-option>
|
||||
<el-option label="待重新上送" value="3"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<!-- <el-button type="primary" icon="el-icon-download" class="pms">PMS获取数据</el-button>
|
||||
<el-button type="primary" icon="el-icon-upload2" class="ml10" @click="upload">PMS数据上传</el-button> -->
|
||||
@@ -59,26 +30,13 @@
|
||||
>重置</el-button
|
||||
> -->
|
||||
<el-button type="primary" icon="el-icon-download" @click="exportEvent">导出</el-button>
|
||||
<el-button v-if="flag == 1" type="primary" icon="el-icon-upload2" @click="Submission">
|
||||
网公司上送
|
||||
</el-button>
|
||||
<el-button v-if="flag == 0" type="primary" icon="el-icon-upload2" @click="LedgerSubmission">
|
||||
网公司上送
|
||||
</el-button>
|
||||
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
|
||||
<template>
|
||||
<span>
|
||||
<el-button type="primary" size="mini" class="ml10" icon="el-icon-plus" @click="addFn">新增</el-button>
|
||||
<el-button type="primary" size="mini" class="ml10" icon="el-icon-edit" @click="modifyFn">
|
||||
修改
|
||||
</el-button>
|
||||
<el-button type="primary" size="mini" class="ml10" icon="el-icon-delete" @click="deleteFn">
|
||||
删除
|
||||
</el-button>
|
||||
</span>
|
||||
|
||||
<vxe-table stripe :data="UserData" :height="height" border :row-config="{ isCurrent: true, isHover: true }"
|
||||
size="mini" ref="Monitoringpoint" style="width: 100%" v-loading="isLoading"
|
||||
header-cell-class-name="table_header" @checkbox-change="handleSelectionChange" class="mt10"
|
||||
@@ -88,48 +46,7 @@
|
||||
<vxe-table-column v-for="(item, index) in tableHeaderMonitoring" align="center" :field="item.prop"
|
||||
:title="item.label" :min-width="item.width" :key="index" :formatter="formFilter"
|
||||
:show-overflow="true"></vxe-table-column>
|
||||
<vxe-table-column v-if="flag == 1" align="center" field="isUploadHead" fixed="right" title="上送标识"
|
||||
min-width="150" :show-overflow="true">
|
||||
<template slot-scope="scope">
|
||||
<el-tag type="primary" size="small" style="color: #409eff; background: #ecf5ff"
|
||||
v-if="scope.row.isUploadHead == 0">
|
||||
未上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #67c23a; background: #f0f9eb"
|
||||
v-if="scope.row.isUploadHead == 1">
|
||||
已上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #909399; background: #f4f4f5"
|
||||
v-if="scope.row.isUploadHead == 2">
|
||||
取消上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: orange; background: #f4f4f5"
|
||||
v-if="scope.row.isUploadHead == 3">
|
||||
待重新上送
|
||||
</el-tag>
|
||||
</template>
|
||||
</vxe-table-column>
|
||||
<vxe-table-column v-else align="center" field="monitorUploadStatus" fixed="right" title="上送标识"
|
||||
min-width="150" :show-overflow="true">
|
||||
<template slot-scope="scope">
|
||||
<el-tag type="primary" size="small" style="color: #409eff; background: #ecf5ff"
|
||||
v-if="scope.row.monitorUploadStatus == 0">
|
||||
未上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #67c23a; background: #f0f9eb"
|
||||
v-if="scope.row.monitorUploadStatus == 1">
|
||||
已上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #909399; background: #f4f4f5"
|
||||
v-if="scope.row.monitorUploadStatus == 2">
|
||||
取消上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: orange; background: #f4f4f5"
|
||||
v-if="scope.row.monitorUploadStatus == 3">
|
||||
待重新上送
|
||||
</el-tag>
|
||||
</template>
|
||||
</vxe-table-column>
|
||||
|
||||
</vxe-table>
|
||||
<el-pagination background align="right" @size-change="handleSizeChange"
|
||||
@current-change="handleCurrentChange" :current-page="ruleForm.pageNum"
|
||||
@@ -137,23 +54,17 @@
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" class="mt10"></el-pagination>
|
||||
</template>
|
||||
|
||||
<!-- <PMS_Data
|
||||
:PMSobtain="PMSobtain"
|
||||
:title="title"
|
||||
@Close="Close"
|
||||
:Data="UserData"
|
||||
:Name="tableHeaderMonitoring"
|
||||
></PMS_Data> -->
|
||||
|
||||
|
||||
<!-- 新增/修改 -->
|
||||
<el-dialog :close-on-click-modal="false" :title="title" :visible.sync="addinformation"
|
||||
:before-close="handleClose" width="50%" height="80%">
|
||||
<el-form :inline="true" :model="form" ref="rulesform" label-width="170px" :rules="rules" class="form">
|
||||
<el-form-item label="监测点编号:" class="mt10">
|
||||
<el-form-item label="用户编号:" class="mt10">
|
||||
<el-input v-model="form.id" placeholder="不填写默认生成自动编号" clearable :disabled="disabled"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="监测点名称:" prop="name" class="mt10">
|
||||
<el-input v-model="form.name" clearable placeholder="请输入监测点名称"></el-input>
|
||||
<el-form-item label="用户名称:" prop="name" class="mt10">
|
||||
<el-input v-model="form.name" clearable placeholder="请输入用户名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="orgName" class="mt10" label="组织机构名称:" :rules="{
|
||||
required: true,
|
||||
@@ -197,14 +108,14 @@
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="监测点状态:" prop="monitorState" class="mt10">
|
||||
<el-select v-model="form.monitorState" clearable placeholder="请选择监测点状态">
|
||||
<el-form-item label="用户状态:" prop="monitorState" class="mt10">
|
||||
<el-select v-model="form.monitorState" clearable placeholder="请选择用户状态">
|
||||
<el-option v-for="item in monitorStateList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="监测点类型:" prop="monitorType" class="mt10">
|
||||
<el-select v-model="form.monitorType" clearable placeholder="请选择监测点类型">
|
||||
<el-form-item label="用户类型:" prop="monitorType" class="mt10">
|
||||
<el-select v-model="form.monitorType" clearable placeholder="请选择用户类型">
|
||||
<el-option v-for="item in monitorTypeList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
@@ -345,8 +256,8 @@
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否是上送网公司监测点:" prop="isUpToGrid" class="mt10">
|
||||
<el-select v-model="form.isUpToGrid" clearable placeholder="请选择是否是上送网公司监测点">
|
||||
<el-form-item label="是否是上送网公司用户:" prop="isUpToGrid" class="mt10">
|
||||
<el-select v-model="form.isUpToGrid" clearable placeholder="请选择是否是上送网公司用户">
|
||||
<el-option v-for="item in whether" :key="item.id" :label="item.label"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
@@ -383,7 +294,7 @@ import {
|
||||
getTerminalSelectList,
|
||||
getPowerClientList,
|
||||
getPowerGenerationUserList,
|
||||
getAllMonitorPageList,
|
||||
getAllMainUserPageList,
|
||||
addMonitor,
|
||||
updateMonitor,
|
||||
delMonitor,
|
||||
@@ -491,7 +402,7 @@ export default {
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
name: [{ required: true, message: '请输入监测点名称', trigger: 'blur' }],
|
||||
name: [{ required: true, message: '请输入用户名称', trigger: 'blur' }],
|
||||
fieldStation: [{ required: true, message: '请输入新能源场', trigger: 'blur' }],
|
||||
// valueTitle: [
|
||||
// { required: true, message: "请输入组织机构名称", trigger:["blur",'change']},
|
||||
@@ -518,8 +429,8 @@ export default {
|
||||
}
|
||||
],
|
||||
voltageLevel: [{ required: true, message: '请选择电压等级', trigger: 'change' }],
|
||||
monitorState: [{ required: true, message: '请选择监测点状态', trigger: 'change' }],
|
||||
monitorType: [{ required: true, message: '请选择监测点类型', trigger: 'change' }],
|
||||
monitorState: [{ required: true, message: '请选择用户状态', trigger: 'change' }],
|
||||
monitorType: [{ required: true, message: '请选择用户类型', trigger: 'change' }],
|
||||
pt1: [
|
||||
{ required: true, message: '请输入pt1', trigger: 'blur' },
|
||||
{ pattern: /^[0-9]*$/, message: '只可以输入数字', trigger: 'blur' }
|
||||
@@ -599,7 +510,7 @@ export default {
|
||||
isUpToGrid: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择是否是上送网公司监测点',
|
||||
message: '请选择是否是上送网公司用户',
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
@@ -614,39 +525,18 @@ export default {
|
||||
monitorTagList: [],
|
||||
//台区台账表头
|
||||
tableHeaderMonitoring: [
|
||||
// { prop: 'id', label: '监测点编号', width: 120 },
|
||||
// { prop: 'id', label: '用户编号', width: 120 },
|
||||
{ prop: 'monitorObjectName', label: '监测对象名称', width: 250 },
|
||||
|
||||
{ prop: 'orgName', label: '组织机构名称', width: 170 },
|
||||
{ prop: 'operationName', label: '运维单位名称', width: 170 },
|
||||
{ prop: 'powerrName', label: '变电站名称', width: 120 },
|
||||
//{ prop: "generatrixName", label: "母线名称", width: 120 },
|
||||
{ prop: 'busId', label: '母线编号', width: 180 },
|
||||
|
||||
{ prop: 'lineName', label: '母线名称', width: 180 },
|
||||
// { prop: "lineId", label: "监测线路ID", width: 180 }
|
||||
{ prop: 'name', label: '测点名称', width: 220 },
|
||||
|
||||
{ prop: 'voltageLevel', label: '电压等级', width: 100 },
|
||||
{ prop: 'monitorState', label: '监测点状态', width: 120 },
|
||||
{ prop: 'monitorType', label: '监测点类型', width: 120 },
|
||||
{ prop: 'minShortCircuitCapacity', label: '最小短路容量', width: 120 },
|
||||
{ prop: 'powerSupplyEqCapacity', label: '供电设备容量', width: 120 },
|
||||
{ prop: 'userAgreementCapacity', label: '用户协议容量', width: 120 },
|
||||
{
|
||||
prop: 'voltageDeviationUpperLimit',
|
||||
label: '电压偏差限值(上)',
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
prop: 'voltageDeviationLowerLimit',
|
||||
label: '电压偏差限值(下)',
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
prop: 'potentialTransFormerType',
|
||||
label: '电压互感器类型',
|
||||
width: 170
|
||||
},
|
||||
{ prop: 'neutralGroundingMode', label: '中性点接地方式', width: 170 },
|
||||
|
||||
{
|
||||
prop: 'isSpecialSupplyElectricity',
|
||||
label: '是否用户专线',
|
||||
@@ -658,14 +548,9 @@ export default {
|
||||
// { prop: "monitorObjectId", label: "监测对象编号", width:170 },
|
||||
|
||||
{ prop: 'tradeCode', label: '行业分类', width: 170 },
|
||||
{ prop: 'statisticalInterval', label: '统计间隔(min)', width: 140 },
|
||||
{ prop: 'terminalCode', label: '关联的监测终端编号', width: 190 },
|
||||
{ prop: 'devIp', label: '监测终端IP', width: 150 },
|
||||
{ prop: 'terminalWiringMethod', label: '监测终端接线方式', width: 160 },
|
||||
|
||||
{ prop: 'fieldStation', label: '新能源场', width: 120 },
|
||||
{ prop: 'tractionId', label: '关联牵引站编号', width: 190 },
|
||||
{ prop: 'isUpToGrid', label: '是否是上送网公司', width: 160 }
|
||||
// { prop: "status", label: "数据状态", width:100 },
|
||||
|
||||
],
|
||||
whether: [
|
||||
{
|
||||
@@ -739,10 +624,10 @@ export default {
|
||||
TerminalNo: [], //关联的监测终端编号
|
||||
voltageLevelList: [], //电压等级
|
||||
industryType: [], //行业分类
|
||||
monitorStateList: [], //监测点状态
|
||||
monitorTypeList: [], //监测点标签
|
||||
MonitoringPointType: [], //监测点类型
|
||||
MonitoringPointTypes: [], //监测点类型
|
||||
monitorStateList: [], //用户状态
|
||||
monitorTypeList: [], //用户标签
|
||||
MonitoringPointType: [], //用户类型
|
||||
MonitoringPointTypes: [], //用户类型
|
||||
potentialTransFormerTypeList: [], //电压互感器类型
|
||||
neutralGroundingModeList: [], //中性点接地方式
|
||||
|
||||
@@ -849,23 +734,23 @@ export default {
|
||||
getclassificationData() {
|
||||
//电压等级
|
||||
this.voltageLevelList = dicData('Dev_Voltage', [])
|
||||
//监测点状态
|
||||
//用户状态
|
||||
this.monitorStateList = dicData('Line_State', [])
|
||||
|
||||
//监测点标签
|
||||
//用户标签
|
||||
this.monitorTypeList = dicData('Line_Type', [])
|
||||
//电压互感器类型
|
||||
this.potentialTransFormerTypeList = dicData('Voltage_Transformer', [])
|
||||
//中性点接地方式
|
||||
this.neutralGroundingModeList = dicData('Neutral_Point', [])
|
||||
//监测点标签
|
||||
//用户标签
|
||||
this.monitorTagList = dicData('Monitoring_Labels', [])
|
||||
//监测终端接线方式
|
||||
this.terminalWiringMethodList = dicData('Dev_Connect', [])
|
||||
//行业分类
|
||||
this.industryType = dicData('industry_type', [])
|
||||
|
||||
// 监测点类型
|
||||
// 用户类型
|
||||
queryTree({}).then(res => {
|
||||
if (res && res.code == `A0000`) {
|
||||
this.MonitoringPointType = this.getTreeData(res.data)
|
||||
@@ -926,7 +811,7 @@ export default {
|
||||
} else {
|
||||
this.ruleForm.objType = ''
|
||||
}
|
||||
getAllMonitorPageList(this.ruleForm).then(res => {
|
||||
getAllMainUserPageList(this.ruleForm).then(res => {
|
||||
this.isLoading = false
|
||||
this.UserData = res.data.records
|
||||
this.total = res.data.total
|
||||
@@ -1160,7 +1045,7 @@ export default {
|
||||
this.disabled = false
|
||||
this.modify = false
|
||||
this.add = true
|
||||
this.title = '新增主网监测点台帐'
|
||||
this.title = '新增主网用户台帐'
|
||||
this.addinformation = true
|
||||
// this.getData();
|
||||
},
|
||||
@@ -1212,7 +1097,7 @@ export default {
|
||||
},
|
||||
handleClose() {
|
||||
this.addinformation = false
|
||||
if (this.title == '新增主网监测点台帐') {
|
||||
if (this.title == '新增主网用户台帐') {
|
||||
this.$refs.Operation.form.valueTitle = ''
|
||||
this.$refs.Organization.form.valueTitle = ''
|
||||
}
|
||||
@@ -1224,7 +1109,7 @@ export default {
|
||||
this.modify = true
|
||||
this.add = false
|
||||
|
||||
this.title = '修改主网监测点台帐'
|
||||
this.title = '修改主网用户台帐'
|
||||
if (this.$refs.Monitoringpoint.getCheckboxRecords().length != 1) {
|
||||
this.$message({
|
||||
showClose: true,
|
||||
@@ -1383,9 +1268,9 @@ export default {
|
||||
let form = JSON.parse(JSON.stringify(this.ruleForm))
|
||||
form.pageNum = 1
|
||||
form.pageSize = this.total
|
||||
getAllMonitorPageList(form).then(res => {
|
||||
getAllMainUserPageList(form).then(res => {
|
||||
this.$refs.Monitoringpoint.exportData({
|
||||
filename: '监测点台账', // 文件名字
|
||||
filename: '用户台账', // 文件名字
|
||||
sheetName: 'Sheet1',
|
||||
type: 'xlsx', //导出文件类型 xlsx 和 csv
|
||||
useStyle: true,
|
||||
@@ -1416,7 +1301,7 @@ export default {
|
||||
let flagState = true
|
||||
if (this.$refs.Monitoringpoint.getCheckboxRecords().length == 0) {
|
||||
return this.$message({
|
||||
message: '请选择监测点!',
|
||||
message: '请选择用户!',
|
||||
type: 'warning'
|
||||
})
|
||||
}
|
||||
@@ -1474,18 +1359,18 @@ export default {
|
||||
})
|
||||
} else if (flag == false) {
|
||||
return this.$message({
|
||||
message: '所选监测点与监测对象不符合,请重新选择!',
|
||||
message: '所选用户与监测对象不符合,请重新选择!',
|
||||
type: 'warning'
|
||||
})
|
||||
} else if (isUpToGrid == false) {
|
||||
return this.$message({
|
||||
message: '所选监测点存在非上送网公司监测点!',
|
||||
message: '所选用户存在非上送网公司用户!',
|
||||
type: 'warning'
|
||||
})
|
||||
} else if (flagState == false) {
|
||||
return this.$message({
|
||||
type: 'warning',
|
||||
message: '请选择运行状态的监测点进行上送!'
|
||||
message: '请选择运行状态的用户进行上送!'
|
||||
})
|
||||
}
|
||||
// this.objTypeVisible = true
|
||||
@@ -1511,7 +1396,7 @@ export default {
|
||||
|
||||
if (isUpToGrid && flagState) {
|
||||
if (this.$refs.Monitoringpoint.getCheckboxRecords().length == 0) {
|
||||
this.$confirm('是否上送全部监测点?', '提示', {
|
||||
this.$confirm('是否上送全部用户?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
@@ -1553,13 +1438,13 @@ export default {
|
||||
}
|
||||
} else if (isUpToGrid == false) {
|
||||
return this.$message({
|
||||
message: '所选监测点存在非上送网公司监测点!',
|
||||
message: '所选用户存在非上送网公司用户!',
|
||||
type: 'warning'
|
||||
})
|
||||
} else if (flagState == false) {
|
||||
return this.$message({
|
||||
type: 'warning',
|
||||
message: '请选择运行状态的监测点进行上送!'
|
||||
message: '请选择运行状态的用户进行上送!'
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
@@ -23,24 +23,18 @@
|
||||
v-loading="isLoading"
|
||||
header-cell-class-name="table_header"
|
||||
>
|
||||
<vxe-table-column
|
||||
field="prop0"
|
||||
title=""
|
||||
align="center"
|
||||
min-width="250"
|
||||
show-overflow="true"
|
||||
></vxe-table-column>
|
||||
|
||||
<vxe-table-colgroup align="center" v-for="(item, index) in tableHeaderPower" :title="item.label">
|
||||
|
||||
|
||||
<vxe-table-column
|
||||
v-for="(val, index) in item.children"
|
||||
v-for="(val, index) in tableHeaderPower"
|
||||
align="center"
|
||||
:field="val.prop"
|
||||
:title="val.label"
|
||||
:min-width="val.width"
|
||||
:show-overflow="true"
|
||||
></vxe-table-column>
|
||||
</vxe-table-colgroup>
|
||||
|
||||
</vxe-table>
|
||||
</template>
|
||||
</div>
|
||||
@@ -48,7 +42,7 @@
|
||||
|
||||
<script>
|
||||
// import bus from "@/assets/js/eventBus";
|
||||
import { objType } from '@/api/hbaccountoperation/setInformation'
|
||||
import { objType, objTypeStatis } from '@/api/hbaccountoperation/setInformation'
|
||||
import Area from '@/views/components/Area/Area.vue'
|
||||
import { dicData } from '@/assets/commjs/dictypeData'
|
||||
|
||||
@@ -95,20 +89,9 @@ export default {
|
||||
//查询母线信息
|
||||
Power() {
|
||||
this.isLoading = true
|
||||
|
||||
this.tableHeaderPower = []
|
||||
this.busData = []
|
||||
objType(this.ruleForm).then(res => {
|
||||
this.tableHeaderPower = [
|
||||
{
|
||||
label: '用户分类',
|
||||
children: []
|
||||
},
|
||||
{
|
||||
label: '典型用户分类',
|
||||
children: []
|
||||
}
|
||||
]
|
||||
|
||||
objTypeStatis(this.ruleForm).then(res => {
|
||||
let data = res.data
|
||||
let result = data[0].reduce(
|
||||
(acc, item) => {
|
||||
@@ -121,23 +104,17 @@ export default {
|
||||
},
|
||||
[[]]
|
||||
)
|
||||
result[0].shift()
|
||||
result[0].push('合计')
|
||||
|
||||
|
||||
Array.from(result[0]).forEach((char, i) => {
|
||||
this.tableHeaderPower[0].children.push({
|
||||
prop: `prop${i + 1}`,
|
||||
label: char,
|
||||
width: char.length > 9 ? 250 : 130
|
||||
})
|
||||
})
|
||||
result[1].push('合计')
|
||||
Array.from(result[1]).forEach((char, i) => {
|
||||
this.tableHeaderPower[1].children.push({
|
||||
prop: `prop${result[0].length + i + 1}`,
|
||||
this.tableHeaderPower.push({
|
||||
prop: `prop${i}`,
|
||||
label: char,
|
||||
width: char.length > 9 ? 250 : 130
|
||||
})
|
||||
})
|
||||
this.tableHeaderPower[0].width = 350
|
||||
console.log(this.tableHeaderPower)
|
||||
|
||||
data.shift()
|
||||
data.forEach((item, ind) => {
|
||||
@@ -147,6 +124,9 @@ export default {
|
||||
this.busData[ind][`prop${i}`] = char
|
||||
})
|
||||
})
|
||||
console.log(this.busData)
|
||||
|
||||
|
||||
this.isLoading = false
|
||||
})
|
||||
},
|
||||
|
||||
@@ -88,7 +88,7 @@ export default {
|
||||
{ prop: 'effectiveAccessRate', label: '有效接入率(%)' },
|
||||
{ prop: 'dataIntegrityRate', label: '数据完整率(%)' },
|
||||
{ prop: 'indexIntegrityRate', label: '指标完整率(%)' },
|
||||
{ prop: 'isUnusual', label: '数据是否异常' }
|
||||
{ prop: 'isUnusual', label: '异常监测点数' }
|
||||
],
|
||||
qualitystatisticsData: [],
|
||||
device: '',
|
||||
@@ -154,13 +154,13 @@ export default {
|
||||
//判断数据是否异常
|
||||
cellStyle(row) {
|
||||
console.log(row)
|
||||
if (row.columnIndex == 6) {
|
||||
if (row.row.isUnusual == 0) {
|
||||
row.row.isUnusual = '正常 '
|
||||
} else if (row.row.isUnusual == 1) {
|
||||
row.row.isUnusual = '异常'
|
||||
}
|
||||
}
|
||||
// if (row.columnIndex == 6) {
|
||||
// if (row.row.isUnusual == 0) {
|
||||
// row.row.isUnusual = '正常 '
|
||||
// } else if (row.row.isUnusual == 1) {
|
||||
// row.row.isUnusual = '异常'
|
||||
// }
|
||||
// }
|
||||
},
|
||||
//导出
|
||||
exportEvent() {
|
||||
|
||||
@@ -2024,12 +2024,22 @@ export default {
|
||||
this.$refs.ruleform.validate(value => {
|
||||
// console.log(value);
|
||||
if (value == true) {
|
||||
if(this.ruleform.ifReleaseWarning == 1){
|
||||
//需要提示预告警单不能为空
|
||||
if(this.ruleform.workAlarmId == null || this.ruleform.workAlarmId == ''){
|
||||
this.$message.warning("关联告预警单不可为空!");
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
this.$confirm('是否确认新增?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
|
||||
|
||||
addProblem(this.ruleform).then(res => {
|
||||
if (res.code == 'A0000') {
|
||||
this.$message({
|
||||
@@ -2194,6 +2204,14 @@ export default {
|
||||
this.$refs.ruleform.validate(value => {
|
||||
// console.log(value);
|
||||
if (value == true) {
|
||||
if(this.ruleform.ifReleaseWarning == 1){
|
||||
//需要提示预告警单不能为空
|
||||
if(this.ruleform.workAlarmId == null || this.ruleform.workAlarmId == ''){
|
||||
this.$message.warning("关联告预警单不可为空!");
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
this.$confirm('是否确认修改?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<el-col :span="24">
|
||||
<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-s-claim" @click="planReviewFn">提交审核</el-button>
|
||||
<!-- <el-button type="primary" icon="el-icon-s-claim" @click="planReviewFn">提交审核</el-button>-->
|
||||
</div>
|
||||
<div class="button">
|
||||
|
||||
@@ -667,7 +667,7 @@ export default {
|
||||
|
||||
//获取审核人列表
|
||||
getAuditUser() {
|
||||
let param = {roleType: 3}
|
||||
let param = {roleType: 1}
|
||||
getAuditUser(param).then(res => {
|
||||
if (res && res.code === 'A0000') {
|
||||
this.auditUserList = res.data
|
||||
|
||||
@@ -1195,7 +1195,7 @@ export default {
|
||||
|
||||
//获取审核人列表
|
||||
getAuditUser() {
|
||||
let param = {roleType: 3}
|
||||
let param = {roleType: 1}
|
||||
getAuditUser(param).then(res => {
|
||||
if (res && res.code === 'A0000') {
|
||||
this.auditUserList = res.data
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
<el-tab-pane label="普测计划管理" name="1" :style="'height:' + vh + 'px;'">
|
||||
<Planmanagement v-if="activeName == '1'"></Planmanagement>
|
||||
</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>
|
||||
</el-tab-pane>
|
||||
</el-tab-pane>-->
|
||||
<!-- <el-tab-pane label="普测结果管理" name="3" :style="'height:' + vh + 'px;'">
|
||||
<Resultsmanagement v-if="activeName == '3'"></Resultsmanagement>
|
||||
</el-tab-pane>
|
||||
|
||||
@@ -35,13 +35,13 @@
|
||||
<influence v-if="activeName == '4'"></influence>
|
||||
</el-tab-pane>
|
||||
|
||||
<!-- <el-tab-pane
|
||||
<el-tab-pane
|
||||
label="详细数据表"
|
||||
name="5"
|
||||
:style="'height:' + vh + ';'"
|
||||
>
|
||||
<dataSheet v-if="activeName == '5'"></dataSheet>
|
||||
</el-tab-pane> -->
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
@@ -539,7 +539,7 @@ export default {
|
||||
}
|
||||
option1 = {
|
||||
title: {
|
||||
text: '变电站稳态超标数量',
|
||||
text: '变电站暂态超标数量',
|
||||
left: 'center',
|
||||
top: 10
|
||||
},
|
||||
@@ -777,7 +777,7 @@ export default {
|
||||
}
|
||||
option2 = {
|
||||
title: {
|
||||
text: '变电站稳态超标天数',
|
||||
text: '变电站暂态超标天数',
|
||||
left: 'center',
|
||||
top: 20
|
||||
},
|
||||
|
||||
@@ -38,11 +38,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<timeindex
|
||||
:id="id"
|
||||
ref="fff"
|
||||
:interval="interval"
|
||||
></timeindex>
|
||||
<timeindex :id="id" ref="fff" :interval="interval" :pushForward="true"></timeindex>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="querfromdata" icon="el-icon-search">查询</el-button>
|
||||
@@ -351,7 +347,7 @@ export default {
|
||||
searchBeginTime: '',
|
||||
searchEndTime: ''
|
||||
},
|
||||
interval: 4,
|
||||
interval: 5,
|
||||
device: 1,
|
||||
limit: 8,
|
||||
limit2: 8,
|
||||
@@ -554,6 +550,8 @@ export default {
|
||||
},
|
||||
mounted() {
|
||||
this.vh = window.sessionStorage.getItem('appheight') - 120
|
||||
this.$refs.fff.buttonShow=false
|
||||
this.$refs.fff.interchange(5)
|
||||
this.querfromdata()
|
||||
},
|
||||
methods: {
|
||||
@@ -693,12 +691,10 @@ export default {
|
||||
|
||||
// this.formData.searchBeginTime = this.$refs.fff.timeValue[0];
|
||||
// this.formData.searchEndTime = this.$refs.fff.timeValue[1];
|
||||
this.formData.searchBeginTime =this.$refs.fff.intervald == 5
|
||||
? this.$refs.fff.DayTime
|
||||
: this.$refs.fff.timeValue[0]
|
||||
this.formData.searchEndTime =this.$refs.fff.intervald == 5
|
||||
? this.$refs.fff.DayTime
|
||||
: this.$refs.fff.timeValue[1]
|
||||
this.formData.searchBeginTime =
|
||||
this.$refs.fff.intervald == 5 ? this.$refs.fff.DayTime : this.$refs.fff.timeValue[0]
|
||||
this.formData.searchEndTime =
|
||||
this.$refs.fff.intervald == 5 ? this.$refs.fff.DayTime : this.$refs.fff.timeValue[1]
|
||||
this.formData.condition = this.value
|
||||
this.formData.inHarmonics = this.inharmonic
|
||||
if (this.number == 111) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -43,14 +43,8 @@
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="CVT型号:" v-show="condition.includes('40')">
|
||||
<!-- <el-cascader
|
||||
v-model="cvt"
|
||||
:options="cvtList"
|
||||
:props="{ expandTrigger: 'hover' }"
|
||||
clearable
|
||||
filterable
|
||||
></el-cascader> -->
|
||||
<!-- <el-form-item label="CVT型号:" v-show="condition.includes('40')">
|
||||
|
||||
<el-select v-model="cvt" value-key="value" clearable filterable placeholder="请选择CVT型号">
|
||||
<el-option
|
||||
v-for="item in cvtList"
|
||||
@@ -59,7 +53,7 @@
|
||||
:value="item"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form-item> -->
|
||||
<el-form-item v-show="jxb" label="间谐波次数:">
|
||||
<el-select v-model="formData.inHarmonic" placeholder="请选择间谐波">
|
||||
<el-option
|
||||
|
||||
@@ -12,15 +12,17 @@
|
||||
执行日期:
|
||||
<el-date-picker
|
||||
v-model="time"
|
||||
type="daterange"
|
||||
type="datetimerange"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
format="yyyy-MM-dd HH:mm:ss"
|
||||
:picker-options="pickerOptions"
|
||||
:clearable="false"
|
||||
></el-date-picker>
|
||||
</div>
|
||||
<el-button type="primary" @click="handleClose">执 行</el-button>
|
||||
<el-button type="primary" @click="execute">执 行</el-button>
|
||||
</div>
|
||||
<el-input placeholder="输入关键字检索" v-model="filterText" style="margin-bottom: 10px" clearable>
|
||||
<i slot="prefix" class="el-input__icon el-icon-search"></i>
|
||||
@@ -56,12 +58,14 @@
|
||||
<script>
|
||||
import api from '@/api/harmonic/onlineData'
|
||||
import { dicData } from '@/assets/commjs/dictypeData'
|
||||
import { measurementPointExecutorByHour } from '@/api/CVT/index.js'
|
||||
export default {
|
||||
components: {},
|
||||
props: {},
|
||||
data() {
|
||||
return {
|
||||
time: [new Date(), new Date()],
|
||||
time: [],
|
||||
// value1: [new Date(2000, 10, 10, 10, 10), new Date(2000, 10, 11, 10, 10)],
|
||||
dialogVisible: false,
|
||||
checkedarr: [],
|
||||
fiveData: [],
|
||||
@@ -79,7 +83,14 @@ export default {
|
||||
scale: null
|
||||
},
|
||||
filterText: '',
|
||||
fiveData: []
|
||||
fiveData: [],
|
||||
fatherID: [],
|
||||
pickerOptions: {
|
||||
disabledDate(time) {
|
||||
return time.getTime() > Date.now() - 8.64e6
|
||||
// 或者return time.getTime() > Date.now();
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -100,8 +111,23 @@ export default {
|
||||
this.chuli()
|
||||
}
|
||||
})
|
||||
// 获取年份
|
||||
const year = new Date().getFullYear()
|
||||
// 获取月份(注意:getMonth 返回值是 0 - 11,所以要加 1),并确保是两位数
|
||||
const month = String(new Date().getMonth() + 1).padStart(2, '0')
|
||||
// 获取日期,并确保是两位数
|
||||
const day = String(new Date().getDate()).padStart(2, '0')
|
||||
// 获取小时,并确保是两位数
|
||||
const hours = String(new Date().getHours()).padStart(2, '0')
|
||||
// 获取分钟,并确保是两位数
|
||||
const minutes = String(new Date().getMinutes()).padStart(2, '0')
|
||||
// 获取秒数,并确保是两位数
|
||||
const seconds = String(new Date().getSeconds()).padStart(2, '0')
|
||||
|
||||
this.time = [`${year}-${month}-${day} 00:00:00`, `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`]
|
||||
},
|
||||
chuli() {
|
||||
this.fatherID = []
|
||||
var data = this.fiveData
|
||||
var arr = []
|
||||
data.forEach(item => {
|
||||
@@ -128,8 +154,10 @@ export default {
|
||||
if (arr[0].children[0].children[0].children.length > 0) {
|
||||
arr.forEach(m => {
|
||||
m.icon = 'el-icon-menu'
|
||||
this.fatherID.push(m.id)
|
||||
m.children.forEach(n => {
|
||||
n.icon = 'el-icon-share'
|
||||
this.fatherID.push(n.id)
|
||||
n.children.forEach(d => {
|
||||
d.icon = 'el-icon-s-flag'
|
||||
d.children.forEach((f, i) => {
|
||||
@@ -148,8 +176,10 @@ export default {
|
||||
} else if (arr[0].children[0].children[0].children.length == 0) {
|
||||
arr.forEach(m => {
|
||||
m.icon = 'el-icon-menu'
|
||||
this.fatherID.push(m.id)
|
||||
m.children.forEach(n => {
|
||||
n.icon = 'el-icon-share'
|
||||
this.fatherID.push(n.id)
|
||||
n.children.forEach((d, i) => {
|
||||
d.icon = 'el-icon-warning'
|
||||
d.name = i + 1 + '_' + d.name
|
||||
@@ -169,9 +199,7 @@ export default {
|
||||
|
||||
window.sessionStorage.setItem('tree', this.tree)
|
||||
this.expandID.push(this.currentNode)
|
||||
this.$nextTick(() => {
|
||||
this.$refs.menuTree.setCurrentKey(this.currentNode)
|
||||
})
|
||||
|
||||
//初始化触发默认点击方法
|
||||
//alert('初始1')
|
||||
this.$emit('chushiData', this.currentNode, this.treeMenuData)
|
||||
@@ -179,6 +207,7 @@ export default {
|
||||
|
||||
renderContent(h, { node, data, store }) {
|
||||
this.onlinename = node.label
|
||||
|
||||
return (
|
||||
<span style="flex: 1; display: flex; align-items: center; justify-content: space-between; padding-right: 8px;">
|
||||
<span class="span-ellipsis">
|
||||
@@ -191,11 +220,28 @@ export default {
|
||||
</span>
|
||||
)
|
||||
},
|
||||
// 执行算法
|
||||
async execute() {
|
||||
if (this.$refs.menuTree.getCheckedKeys().length == 0) return this.$message.error('请选择监测点!')
|
||||
|
||||
let data = {
|
||||
beginTime: this.time[0],
|
||||
dataDate: '',
|
||||
endTime: this.time[1],
|
||||
fullChain: false,
|
||||
idList: this.$refs.menuTree.getCheckedKeys().filter(item => !this.fatherID.includes(item)),
|
||||
repair: true,
|
||||
tagNames: ['dataHarmRateVCvt']
|
||||
}
|
||||
await measurementPointExecutorByHour(data)
|
||||
this.$message.success('算法执行成功!')
|
||||
this.handleClose()
|
||||
},
|
||||
|
||||
// 关闭弹窗
|
||||
handleClose() {
|
||||
console.log(this.time)
|
||||
|
||||
this.dialogVisible = false
|
||||
this.$emit('close')
|
||||
},
|
||||
// 过滤树节点
|
||||
filterNode(value, data, node) {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<timeindex :id="1" ref="fff" :interval="3"></timeindex>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="筛选:" class="ml10">
|
||||
<el-input v-model="form.searchValue" placeholder="输入关键字搜索" style="width: 100%" clearable />
|
||||
<el-input v-model.trim="form.searchValue" placeholder="输入关键字搜索" style="width: 100%" clearable />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item class="ml10">
|
||||
@@ -218,10 +218,19 @@ export default {
|
||||
id: ''
|
||||
})
|
||||
let data = this.tables.filter(item => item.id == this.radioId)
|
||||
this.tables = this.tables.filter(item => {
|
||||
// 将 a 和 b 属性的值转换为字符串,然后检查是否包含目标值转换后的字符串
|
||||
return (
|
||||
String(item.cvtName).includes(String(this.form.searchValue)) ||
|
||||
String(item.cvtModel).includes(String(this.form.searchValue))
|
||||
)
|
||||
})
|
||||
data.length > 0
|
||||
? this.$refs.tableRef.setRadioRow(data[0])
|
||||
: this.$refs.tableRef.setRadioRow(this.tables[0])
|
||||
this.isLoading = false
|
||||
}).catch(() => {
|
||||
this.isLoading = false
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<timeindex :id="1" ref="fff" :interval="3"></timeindex>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="筛选:" class="ml10">
|
||||
<el-input v-model="form.searchValue" clearable placeholder="输入关键字搜索" style="width: 100%" />
|
||||
<el-input v-model.trim="form.searchValue" clearable placeholder="输入关键字搜索" style="width: 100%" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item class="ml10">
|
||||
@@ -23,7 +23,6 @@
|
||||
:row-config="{ isCurrent: true, isHover: true }"
|
||||
size="mini"
|
||||
ref="classification"
|
||||
|
||||
style="width: 100%"
|
||||
header-cell-class-name="table_header"
|
||||
>
|
||||
@@ -63,7 +62,7 @@
|
||||
<forms ref="formRef" @querfromdata="querfromdata" @showForm="showForm = false" v-if="showForm" />
|
||||
|
||||
<!-- 执行算法 -->
|
||||
<algorithm ref="algorithmRef" />
|
||||
<algorithm ref="algorithmRef" v-if="showAlgorithm" @close="showAlgorithm = false" />
|
||||
<!-- <el-pagination
|
||||
background
|
||||
align="right"
|
||||
@@ -89,6 +88,7 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
loading: false,
|
||||
showAlgorithm: false,
|
||||
form: {
|
||||
pageNum: 1,
|
||||
pageSize: 10000,
|
||||
@@ -183,7 +183,10 @@ export default {
|
||||
},
|
||||
// 执行算法
|
||||
handleAlgorithm() {
|
||||
this.showAlgorithm = true
|
||||
setTimeout(() => {
|
||||
this.$refs.algorithmRef.open()
|
||||
}, 100)
|
||||
},
|
||||
// 绑定监测点
|
||||
handleBind(index, row) {
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
>
|
||||
<el-form ref="form" :inline="true" :model="form" label-width="auto" :rules="rules" class="form">
|
||||
<el-form-item label="CVT名称:" prop="cvtName" style="width: 49%">
|
||||
<el-input v-model="form.cvtName" placeholder="请输入CVT名称" />
|
||||
<el-input v-model.trim="form.cvtName" placeholder="请输入CVT名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="CVT型号:" prop="cvtModel" style="width: 49%">
|
||||
<el-input v-model="form.cvtModel" placeholder="请输入CVT型号" />
|
||||
<el-input v-model.trim="form.cvtModel" placeholder="请输入CVT型号" />
|
||||
</el-form-item>
|
||||
<el-form-item v-for="item in frequency" :label="`${item}次:`" :prop="`h${item}`">
|
||||
<el-input type="number" v-model="form[`h${item}`]" @input="handleInput($event, `h${item}`)" />
|
||||
<el-input type="number" v-model.trim="form[`h${item}`]" @input="handleInput($event, `h${item}`)" />
|
||||
</el-form-item>
|
||||
|
||||
<!-- <el-form-item label="2次:" prop="h2">
|
||||
|
||||
@@ -25,8 +25,10 @@ export default {
|
||||
},
|
||||
created() {
|
||||
if (process.env.VUE_APP_MODE === 'cgyqr') {
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
|
||||
@@ -335,8 +335,10 @@ export default {
|
||||
},
|
||||
created() {
|
||||
if (process.env.VUE_APP_MODE === 'cgyqr') {
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
}
|
||||
this.getIndexType()
|
||||
//this.time()
|
||||
},
|
||||
@@ -542,19 +544,8 @@ export default {
|
||||
month = '0' + month
|
||||
}
|
||||
this.form.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
|
||||
if (
|
||||
month == 1 ||
|
||||
month == 3 ||
|
||||
month == 5 ||
|
||||
month == 7 ||
|
||||
month == 8 ||
|
||||
month == 10 ||
|
||||
month == 12
|
||||
) {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-31'
|
||||
} else {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
} else {
|
||||
this.form.searchBeginTime = this.$refs.fff.timeValue[0]
|
||||
this.form.searchEndTime = this.$refs.fff.timeValue[1]
|
||||
@@ -976,19 +967,8 @@ window.echartsArr.push(myChart2)
|
||||
month = '0' + month
|
||||
}
|
||||
this.form.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
|
||||
if (
|
||||
month == 1 ||
|
||||
month == 3 ||
|
||||
month == 5 ||
|
||||
month == 7 ||
|
||||
month == 8 ||
|
||||
month == 10 ||
|
||||
month == 12
|
||||
) {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-31'
|
||||
} else {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
} else {
|
||||
this.form.searchBeginTime = this.$refs.fff.timeValue[0]
|
||||
this.form.searchEndTime = this.$refs.fff.timeValue[1]
|
||||
@@ -1349,19 +1329,8 @@ window.echartsArr.push(myChart2)
|
||||
month = '0' + month
|
||||
}
|
||||
this.form.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
|
||||
if (
|
||||
month == 1 ||
|
||||
month == 3 ||
|
||||
month == 5 ||
|
||||
month == 7 ||
|
||||
month == 8 ||
|
||||
month == 10 ||
|
||||
month == 12
|
||||
) {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-31'
|
||||
} else {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
} else {
|
||||
this.form.searchBeginTime = this.$refs.fff.timeValue[0]
|
||||
this.form.searchEndTime = this.$refs.fff.timeValue[1]
|
||||
@@ -1571,19 +1540,8 @@ window.echartsArr.push(myChart2)
|
||||
month = '0' + month
|
||||
}
|
||||
this.form.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
|
||||
if (
|
||||
month == 1 ||
|
||||
month == 3 ||
|
||||
month == 5 ||
|
||||
month == 7 ||
|
||||
month == 8 ||
|
||||
month == 10 ||
|
||||
month == 12
|
||||
) {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-31'
|
||||
} else {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
} else {
|
||||
this.form.searchBeginTime = this.$refs.fff.timeValue[0]
|
||||
this.form.searchEndTime = this.$refs.fff.timeValue[1]
|
||||
@@ -1796,19 +1754,8 @@ window.echartsArr.push(myChart2)
|
||||
month = '0' + month
|
||||
}
|
||||
this.form.searchBeginTime = str1[0] + '-' + month + '-' + str1[2]
|
||||
if (
|
||||
month == 1 ||
|
||||
month == 3 ||
|
||||
month == 5 ||
|
||||
month == 7 ||
|
||||
month == 8 ||
|
||||
month == 10 ||
|
||||
month == 12
|
||||
) {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-31'
|
||||
} else {
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.form.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
} else {
|
||||
this.form.searchBeginTime = this.$refs.fff.timeValue[0]
|
||||
this.form.searchEndTime = this.$refs.fff.timeValue[1]
|
||||
|
||||
@@ -805,19 +805,9 @@ export default {
|
||||
month = '0' + month
|
||||
}
|
||||
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 + '-31'
|
||||
} else {
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
|
||||
} else {
|
||||
this.formData.searchBeginTime = this.$refs.timelist.timeValue[0]
|
||||
this.formData.searchEndTime = this.$refs.timelist.timeValue[1]
|
||||
|
||||
@@ -31,8 +31,10 @@ export default {
|
||||
},
|
||||
created() {
|
||||
if (process.env.VUE_APP_MODE === 'cgyqr') {
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
|
||||
@@ -676,19 +676,9 @@ export default {
|
||||
month = '0' + month
|
||||
}
|
||||
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 + '-31'
|
||||
} else {
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
|
||||
} else {
|
||||
this.formData.searchBeginTime = this.$refs.fkf.timeValue[0]
|
||||
this.formData.searchEndTime = this.$refs.fkf.timeValue[1]
|
||||
|
||||
@@ -910,19 +910,9 @@ export default {
|
||||
month = '0' + month
|
||||
}
|
||||
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 + '-31'
|
||||
} else {
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
|
||||
} else {
|
||||
this.formData.searchBeginTime = this.$refs.fyf.timeValue[0]
|
||||
this.formData.searchEndTime = this.$refs.fyf.timeValue[1]
|
||||
|
||||
@@ -17,28 +17,30 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import onlineData from "@/views/cgy-harmonic-boot/monitor/onlineData";
|
||||
import terminalmessage from "@/views/cgy-harmonic-boot/runmange/terminalmessage";
|
||||
import devicemessage from "@/views/cgy-harmonic-boot/runmange/devicemessage";
|
||||
import integralitytable from "@/views/cgy-harmonic-boot/area/integralitytable";
|
||||
import onlineData from '@/views/cgy-harmonic-boot/monitor/onlineData'
|
||||
import terminalmessage from '@/views/cgy-harmonic-boot/runmange/terminalmessage'
|
||||
import devicemessage from '@/views/cgy-harmonic-boot/runmange/devicemessage'
|
||||
import integralitytable from '@/views/cgy-harmonic-boot/area/integralitytable'
|
||||
import api1 from '@/api/pollution/pollution'
|
||||
export default {
|
||||
components: {
|
||||
onlineData,
|
||||
devicemessage,
|
||||
terminalmessage,
|
||||
integralitytable,
|
||||
integralitytable
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeName: 'first',
|
||||
vh: null
|
||||
};
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (process.env.VUE_APP_MODE === 'cgyqr') {
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.vh = window.sessionStorage.getItem('appheight') - 12 + 'px'
|
||||
@@ -60,8 +62,8 @@ export default {
|
||||
// console.log(tab, event);
|
||||
this.activeName = tab.name
|
||||
}
|
||||
},
|
||||
};
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.pa10 {
|
||||
|
||||
@@ -37,8 +37,11 @@ export default {
|
||||
},
|
||||
created() {
|
||||
if (process.env.VUE_APP_MODE === 'cgyqr') {
|
||||
// this.guanzhou()
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
|
||||
@@ -202,14 +202,14 @@
|
||||
type="danger"
|
||||
size="small"
|
||||
v-if="scope.row.type === 1"
|
||||
style="color: red"
|
||||
style="color: #008000"
|
||||
>开机策略</el-tag
|
||||
>
|
||||
<el-tag
|
||||
type="primary"
|
||||
size="small"
|
||||
v-if="scope.row.type === 2"
|
||||
style="color: green"
|
||||
style="color: #991717"
|
||||
>关机策略</el-tag
|
||||
>
|
||||
</template>
|
||||
@@ -256,7 +256,7 @@
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
<!-- <el-table-column
|
||||
width="150"
|
||||
align="center"
|
||||
prop="wind"
|
||||
@@ -268,7 +268,7 @@
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column align="center" prop="sjfw" label="涉及范围" >
|
||||
<el-table-column align="center" prop="sjfw" label="涉及范围" >
|
||||
<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==1" type="primary" size="mini">查看</el-button>
|
||||
@@ -283,12 +283,18 @@
|
||||
>查看</el-button
|
||||
>
|
||||
<el-button
|
||||
v-if="scope.row.status === 0"
|
||||
type="primary"
|
||||
size="mini"
|
||||
@click="edit(scope.row.id)"
|
||||
>修改</el-button
|
||||
>
|
||||
<el-button
|
||||
v-if="scope.row.status === 1"
|
||||
type="primary"
|
||||
@click="stopAirStrategy(scope.row.id)"
|
||||
size="mini"
|
||||
>停止</el-button
|
||||
>
|
||||
<!-- <el-button
|
||||
v-if="scope.row.status !== 1"
|
||||
type="primary"
|
||||
@@ -303,20 +309,14 @@
|
||||
size="mini"
|
||||
>执行</el-button
|
||||
>
|
||||
<el-button
|
||||
v-if="scope.row.status === 1"
|
||||
type="primary"
|
||||
@click="stopAirStrategy(scope.row.id)"
|
||||
size="mini"
|
||||
>停止</el-button
|
||||
>-->
|
||||
|
||||
<el-button
|
||||
v-if="scope.row.status === 2"
|
||||
@click="querydata(scope.row)"
|
||||
type="primary"
|
||||
size="mini"
|
||||
>趋势查看
|
||||
</el-button>
|
||||
</el-button>-->
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
@@ -1330,64 +1330,7 @@ export default {
|
||||
this.get_bodyHeight();
|
||||
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);
|
||||
});
|
||||
|
||||
//如果别的页面路由过来的进行路由参数处理
|
||||
},
|
||||
@@ -1412,10 +1355,11 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
connectMqtt() {
|
||||
this.globalMqtt.ws = {};
|
||||
let this_ = this
|
||||
this_.globalMqtt.ws = {};
|
||||
let mqttWs = null;
|
||||
|
||||
let userName = this.$store.state.user.userInfo.loginName;
|
||||
let userName = this_.$store.state.user.userInfo.loginName;
|
||||
const options = {
|
||||
qos: 2,
|
||||
clean: true,
|
||||
@@ -1424,9 +1368,69 @@ export default {
|
||||
username: "t_user",
|
||||
password: "njcnpqs",
|
||||
};
|
||||
const url = "wss://pqmcn.com:8087/mqtt";
|
||||
const url = "ws://192.168.1.24:8085/mqtt";
|
||||
mqttWs = mqtt.connect(url, options);
|
||||
this.globalMqtt.setWs(mqttWs);
|
||||
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) {
|
||||
@@ -2009,7 +2013,7 @@ window.echartsArr.push(myChart);
|
||||
switchChange(item, type) {
|
||||
console.log(item);
|
||||
console.log(type);
|
||||
console.log(this.devInfo.ndid);
|
||||
|
||||
|
||||
let msg = {
|
||||
mid: 1,
|
||||
@@ -2025,10 +2029,14 @@ window.echartsArr.push(myChart);
|
||||
},
|
||||
};
|
||||
|
||||
this.globalMqtt.ws.publish(
|
||||
"/platform/devcmd/v1/" + this.devInfo.ndid,
|
||||
JSON.stringify(msg)
|
||||
);
|
||||
let topic = "/platform/devcmd/v1/" + this.devInfo.ndid;
|
||||
console.log(topic);
|
||||
this.globalMqtt.ws.publish(topic, JSON.stringify(msg), { qos: 0 }, (err) => {
|
||||
if (err) console.error("发送失败:", err);
|
||||
else console.log("发送成功");
|
||||
})
|
||||
|
||||
|
||||
|
||||
this.mqttSendMsg = msg;
|
||||
this.mqttSendCount = 0;
|
||||
|
||||
@@ -264,7 +264,7 @@ export default {
|
||||
|
||||
//获取审核人列表
|
||||
getAuditUser() {
|
||||
let param = {roleType: 3}
|
||||
let param = {roleType: 1}
|
||||
getAuditUser(param).then(res => {
|
||||
if (res && res.code === 'A0000') {
|
||||
this.auditUserList = res.data
|
||||
|
||||
@@ -657,19 +657,9 @@ export default {
|
||||
month = '0' + month
|
||||
}
|
||||
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 + '-31'
|
||||
} else {
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-30'
|
||||
}
|
||||
|
||||
this.formData.searchEndTime = str2[0] + '-' + month + '-' + new Date(str2[0], month, 0).getDate()
|
||||
|
||||
} else {
|
||||
this.formData.searchBeginTime = this.$refs.timepg.timeValue[0]
|
||||
this.formData.searchEndTime = this.$refs.timepg.timeValue[1]
|
||||
|
||||
@@ -51,7 +51,9 @@ export default {
|
||||
};
|
||||
},
|
||||
created() {
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
</el-form-item>
|
||||
|
||||
<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 + '重新计算' }}
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
@@ -605,7 +605,7 @@ export default {
|
||||
let dateMonth = this.store.params.searchBeginTime.substring(0, 7)
|
||||
//月
|
||||
request
|
||||
.get('/prepare-boot/dimGlobal/reCalMonthUploadAlgorithm?statisticDate=' + dateMonth + '&type=' + type)
|
||||
.get('/prepare-boot/dimGlobal/reCalMonthUploadAlgorithm?statisticDate=' + dateMonth + '&type=1')
|
||||
.then(res => {
|
||||
if (res && res.code === 'A0000') {
|
||||
this.$message({
|
||||
@@ -617,7 +617,7 @@ export default {
|
||||
})
|
||||
} else {
|
||||
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 => {
|
||||
if (res && res.code === 'A0000') {
|
||||
this.$message({
|
||||
|
||||
@@ -48,7 +48,9 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.setHeight()
|
||||
|
||||
@@ -75,7 +75,9 @@ export default {
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.guanzhou();
|
||||
if (process.env.VUE_APP_KEY != 'scqr') {
|
||||
this.guanzhou()
|
||||
}
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<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-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>
|
||||
<el-select
|
||||
|
||||
@@ -18,7 +18,7 @@ module.exports = {
|
||||
// publicPath: 'https://fuphoenixes.github.io/example/dist/',
|
||||
//publicPath: "./",
|
||||
// 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',
|
||||
assetsDir: 'static',
|
||||
// lintOnSave: process.env.NODE_ENV === 'development',
|
||||
@@ -37,9 +37,9 @@ module.exports = {
|
||||
'/api': {
|
||||
// target: 'http://18028358809.gnway.cc', //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: 'http://192.168.1.24:10215', // 河北
|
||||
target: 'http://192.168.1.24:10215', // 河北
|
||||
// target: "http://192.168.1.31:10215", // 海南
|
||||
// target: "http://192.168.1.29:10215", // 冀北
|
||||
changeOrigin: true,
|
||||
|
||||
Reference in New Issue
Block a user