diff --git a/hx-ai-intelligent/src/App.vue b/hx-ai-intelligent/src/App.vue index 9c90247..1b31526 100644 --- a/hx-ai-intelligent/src/App.vue +++ b/hx-ai-intelligent/src/App.vue @@ -48,169 +48,24 @@ height: 100%; } } - // :deep(.ant-menu-item), - // :deep(.ant-menu-submenu-title) { - // &:not(.ant-menu-item-selected) { - // // &:not(.ant-menu-item-active) { - // .anticon { - // color: rgb(141, 150, 163); - // } - // } - // } - // :deep(.ns-content) { - // // padding-top: 80px !important; - // } - // #app { - // width: 100%; - // height: 100%; - // } - - // :deep(.ant-menu-title-content) { - // background: unset !important; - // z-index: 9 !important; - // } - // :deep(.ns-left-menu) { - // .ant-menu-item-selected { - // // color: #fff !important; - // background: @primary-color; - // border-radius: 12px; - // // height: 40px; - // // line-height: 40px; - // padding: 5px @ns-gap; - // position: relative; - // a { - // color: @white !important; - // } - // } - - // .ant-menu-item-active, - // .ant-submenu-item-active { - // // color: rgba(@primary-color, 0.1) !important; - // } - // } - - // :deep(.ant-menu-light.ant-menu-horizontal > .ant-menu-item:hover) { - // // background: @primary-color; - // } - // // :deep(.ant-menu-inline .ant-menu-submenu-title) { - // // color: rgba(255, 255, 255, 0.9) !important; - // // } - // :deep(.ns-left-menu .ant-layout-sider-children .ant-menu-sub.ant-menu-inline) { - // // position: relative; - // // &::before { - // // display: flex; - // // width: 2px; - // // height: calc(100% - 40px); - // // position: absolute; - // // top: 20px; - // // left: 20px; - // // content: ''; - // // background-color: rgba(255, 255, 255, 0.2); - // // } - // } - - // //*************************含tab的 list列表样式 */ - // :deep(.tabListTable) { - // .ns-table-title { - // text-align: left; - // height: 46px; - // line-height: 46px; - // font-size: 18px; - // font-weight: bold; - // user-select: text; - // padding-left: 16px; - // background: #fff; - // width: calc(100% + 32px); - // margin-left: -16px; - // } - // .tabs-list { - // overflow: visible !important; - // } - // .ant-tabs-nav { - // width: calc(100% + 32px); - // margin-left: -16px !important; - // background: #fff; - // } - // .ant-tabs-nav-wrap { - // padding: 0 16px; - // } - // } - - // //*********************详情页返回修改 */ - // :deep(.nsDetailView) { - // min-height: 100%; - // height: 100%; - // .ns-detail-content { - // padding: 0px 24px; - // border-top: 16px solid #e5ebf0; - // } - // .ant-descriptions-item-label { - // color: rgba(0, 0, 0, 0.5); - // font-family: PingFang SC; - // font-size: 14px; - // } - // .ant-descriptions-item-content { - // color: rgba(0, 0, 0, 0.95); - // font-family: PingFang SC; - // font-size: 14px; - // } - // .ant-descriptions-title { - // &::after { - // content: ''; - // width: 75px; - // height: 7px; - // display: block; - // background: linear-gradient(90deg, #537fff 0%, #fff 82.67%); - // margin-left: 2px; - // margin-top: -2px; - // } - // } - - // .ant-descriptions-row > th, - // .ant-descriptions-row > td { - // padding-bottom: 8px; - // } - // .ns-page-header { - // margin-bottom: 0 !important; - // padding-top: 7px !important; - // padding-bottom: 7px !important; - // width: calc(100% + 32px); - // margin-left: -16px; - // .title { - // cursor: pointer; - // font-size: 18px !important; - // } - // } - // .ant-descriptions-header { - // margin: 16px 0 16px 0 !important; - - // .ant-descriptions-title { - // line-height: 16px; - // font-size: 16px; - // } - // } - // } - - // :deep(.ns-detail .ant-descriptions-header .descriptions-title) { - // &:after { - // content: ''; - // width: 75px; - // height: 7px; - // display: block; - // background: linear-gradient(90deg, @primary-color 0%, #fff 82.67%); - // margin-left: 2px; - // margin-top: -2px; - // } - // } - // :deep(.ant-descriptions-header .descriptions-title) { - // &:after { - // content: ''; - // width: 75px; - // height: 7px; - // display: block; - // background: linear-gradient(90deg, @primary-color 0%, #fff 82.67%); - // margin-left: 2px; - // margin-top: -2px; - // } - // } + :deep(.ant-tree-node-content-wrapper) { + overflow: hidden; + text-overflow: ellipsis; + text-wrap: nowrap; + } + :deep(.ns-table-search) { + .ns-flexv2-form { + .ns-operate { + text-align: left; + margin-left: 0; + .ant-btn { + margin: 0; + margin-right: 6px; + } + } + } + .ns-form-body { + max-width: 1000px; + } + } diff --git a/hx-ai-intelligent/src/api/carbonEmissionFactorLibrary.ts b/hx-ai-intelligent/src/api/carbonEmissionFactorLibrary.ts index aaad9c2..5d666ad 100644 --- a/hx-ai-intelligent/src/api/carbonEmissionFactorLibrary.ts +++ b/hx-ai-intelligent/src/api/carbonEmissionFactorLibrary.ts @@ -31,4 +31,8 @@ export enum quickCalculation { creat = '/carbon-smart/api/carbon/energy/correlation/creat', update = '/carbon-smart/api/carbon/energy/correlation/update', del = '/carbon-smart/api/carbon/energy/correlation/del', +} +// 碳排管理-碳排统计接口 +export enum carbonEmission { + carbonEmissionStatistics = '/carbon-smart/api/carbon/energy/correlation/carbonEmissionStatistics', } \ No newline at end of file diff --git a/hx-ai-intelligent/src/api/monitor.ts b/hx-ai-intelligent/src/api/monitor.ts new file mode 100644 index 0000000..62f5064 --- /dev/null +++ b/hx-ai-intelligent/src/api/monitor.ts @@ -0,0 +1,13 @@ +export enum deviceMonitor { + // getTableList = '/carbon/emission/factor/queryCarbonFactorPage', + // addNewData = '/carbon/emission/factor/creatOrUpdate', + // editUser = '/carbon-smart/api/user/edit', + // frozen = '/carbon-smart/api/user/frozen', + // resetPwd = '/carbon-smart/api/user/resetPwd', + // del = '/carbon-smart/api/user/del', + // batchDel = '/carbon-smart/api/user/batchDel', + // getCarbonFactorTree = '/carbon/emission/type/getCarbonFactorTree', + // queryDeptTree = '/carbon-smart/api/user/queryDeptTree', + // queryUserPerList = '/carbon-smart/api/user/queryUserPerList', + getDeviceGraph = '/carbon-smart/api/monitor/getDeviceGraph', +} diff --git a/hx-ai-intelligent/src/components/ns-steps.vue b/hx-ai-intelligent/src/components/ns-steps.vue new file mode 100644 index 0000000..d55f6fd --- /dev/null +++ b/hx-ai-intelligent/src/components/ns-steps.vue @@ -0,0 +1,107 @@ + + + + diff --git a/hx-ai-intelligent/src/icon/gaojingguanli.svg b/hx-ai-intelligent/src/icon/gaojingguanli.svg index 23227d7..ef3dd02 100644 --- a/hx-ai-intelligent/src/icon/gaojingguanli.svg +++ b/hx-ai-intelligent/src/icon/gaojingguanli.svg @@ -1,12 +1 @@ - - - - + \ No newline at end of file diff --git a/hx-ai-intelligent/src/icon/gaojingtonglan.svg b/hx-ai-intelligent/src/icon/gaojingtonglan.svg new file mode 100644 index 0000000..0407a0a --- /dev/null +++ b/hx-ai-intelligent/src/icon/gaojingtonglan.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/hx-ai-intelligent/src/icon/status-0.svg b/hx-ai-intelligent/src/icon/status-0.svg new file mode 100644 index 0000000..d05487a --- /dev/null +++ b/hx-ai-intelligent/src/icon/status-0.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/hx-ai-intelligent/src/icon/status-1.svg b/hx-ai-intelligent/src/icon/status-1.svg new file mode 100644 index 0000000..7ded55c --- /dev/null +++ b/hx-ai-intelligent/src/icon/status-1.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/hx-ai-intelligent/src/icon/status-2.svg b/hx-ai-intelligent/src/icon/status-2.svg new file mode 100644 index 0000000..5e24ea9 --- /dev/null +++ b/hx-ai-intelligent/src/icon/status-2.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/hx-ai-intelligent/src/icon/status-3.svg b/hx-ai-intelligent/src/icon/status-3.svg new file mode 100644 index 0000000..3dcdc39 --- /dev/null +++ b/hx-ai-intelligent/src/icon/status-3.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/hx-ai-intelligent/src/icon/status-4.svg b/hx-ai-intelligent/src/icon/status-4.svg new file mode 100644 index 0000000..08e2ae4 --- /dev/null +++ b/hx-ai-intelligent/src/icon/status-4.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/hx-ai-intelligent/src/router/alarmManagement.ts b/hx-ai-intelligent/src/router/alarmManagement.ts index dd930f3..f9d7428 100644 --- a/hx-ai-intelligent/src/router/alarmManagement.ts +++ b/hx-ai-intelligent/src/router/alarmManagement.ts @@ -15,7 +15,6 @@ const alarmManagement = { { path: 'index', name: 'alarmOverviewIndex', - // component: () => import('/nerv-lib/saas/view/menuManage/index.vue'), component: () => import('/@/view/alarmManagement/alarmOverview/index.vue'), meta: { title: '告警总览', @@ -26,16 +25,15 @@ const alarmManagement = { ], }, { - path: 'equipmentAlarm ', + path: 'equipmentAlarm', name: 'EquipmentAlarm', meta: { title: '设备告警', hideChildren: true, icon: 'gaojingguanli' }, component: Base, - redirect: { name: 'equipmentAlarmIndex' }, + redirect: { name: 'EquipmentAlarmIndex' }, children: [ { path: 'index', - name: 'equipmentAlarmIndex', - // component: () => import('/nerv-lib/saas/view/menuManage/index.vue'), + name: 'EquipmentAlarmIndex', component: () => import('/@/view/alarmManagement/equipmentAlarm/index.vue'), meta: { title: '设备告警', @@ -55,11 +53,34 @@ const alarmManagement = { { path: 'index', name: 'alarmSettingsIndex', - // component: () => import('/nerv-lib/saas/view/menuManage/index.vue'), component: () => import('/@/view/alarmManagement/alarmSettings/index.vue'), meta: { title: '告警设置', keepAlive: true, + operates: [ + { title: '设备告警新增', code: 'equipmentAlarmAdd' }, + { title: '设备告警导入', code: 'equipmentAlarmImport' }, + { title: '设备告警导出', code: 'equipmentAlarmExports' }, + { title: '设备告警删除', code: 'equipmentAlarmDel' }, + { title: '设备告警编辑', code: 'equipmentAlarmEdit' }, + { title: '能源告警新增', code: 'energyAlarmAdd' }, + { title: '能源告警导入', code: 'energyAlarmImport' }, + { title: '能源告警导出', code: 'energyAlarmExports' }, + { title: '能源告警删除', code: 'energyAlarmDel' }, + { title: '能源告警编辑', code: 'energyAlarmEdit' }, + { title: '设备告警规则新增', code: 'configureEquipmentAlarmAdd' }, + { title: '设备告警规则导入', code: 'configureEquipmentAlarmImport' }, + { title: '设备告警规则导出', code: 'configureEquipmentAlarmExports' }, + { title: '设备告警规则批量删除', code: 'configureEquipmentAlarmDels' }, + { title: '设备告警规则编辑', code: 'configureEquipmentAlarmEdit' }, + { title: '设备告警规则删除', code: 'configureEquipmentAlarmDel' }, + { title: '能源告警规则新增', code: 'configureEnergyAlarmAdd' }, + { title: '能源告警规则导入', code: 'configureEnergyAlarmImport' }, + { title: '能源告警规则导出', code: 'configureEnergyAlarmExports' }, + { title: '能源告警规则批量删除', code: 'configureEnergyAlarmDels' }, + { title: '能源告警规则编辑', code: 'configureEnergyAlarmEdit' }, + { title: '能源告警规则删除', code: 'configureEnergyAlarmDel' }, + ], // backApi: [], }, }, diff --git a/hx-ai-intelligent/src/router/organizationManage.ts b/hx-ai-intelligent/src/router/organizationManage.ts index e02f7c4..6b5a52e 100644 --- a/hx-ai-intelligent/src/router/organizationManage.ts +++ b/hx-ai-intelligent/src/router/organizationManage.ts @@ -31,7 +31,6 @@ const organizationManage = { { title: '重置密码', code: 'userCodeReset' }, { title: '删除', code: 'userDelete' }, ], - // backApi: [], }, }, ], @@ -50,7 +49,16 @@ const organizationManage = { meta: { title: '部门/权限', keepAlive: true, - // backApi: [], + operates: [ + { title: '新增部门', code: 'authorityDeptAdd' }, + { title: '新增子部门', code: 'authorityDeptSonAdd' }, + { title: '删除部门', code: 'authorityDeptDelete' }, + { title: '编辑部门', code: 'authorityDeptEdit' }, + { title: '新增角色', code: 'authorityRoleAdd' }, + { title: '新增子角色', code: 'authorityRoleSonAdd' }, + { title: '删除角色', code: 'authorityRoleDelete' }, + { title: '编辑角色', code: 'authorityRoleEdit' }, + ], }, }, ], diff --git a/hx-ai-intelligent/src/view/alarmManagement/alarmOverview/index.vue b/hx-ai-intelligent/src/view/alarmManagement/alarmOverview/index.vue index 4793714..a26556e 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/alarmOverview/index.vue +++ b/hx-ai-intelligent/src/view/alarmManagement/alarmOverview/index.vue @@ -20,7 +20,7 @@
- +
@@ -45,7 +45,7 @@ import * as echarts from 'echarts'; defineOptions({ - name: 'alarmOverview', // 与页面路由name一致缓存才可生效 + name: 'alarmOverviewIndex', // 与页面路由name一致缓存才可生效 }); const info = ref({}); @@ -134,13 +134,13 @@ itemGap: 30, // 这里可以调整图例项之间的间距,单位为像素 }, ], - toolbox: { - show: true, - feature: { - restore: {}, - saveAsImage: {}, - }, - }, + // toolbox: { + // show: true, + // feature: { + // restore: {}, + // saveAsImage: {}, + // }, + // }, calculable: true, xAxis: [ { diff --git a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/energyAlarm/configureEnergyAlarms.vue b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/energyAlarm/configureEnergyAlarms.vue index 02a3b8e..79bc3cf 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/energyAlarm/configureEnergyAlarms.vue +++ b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/energyAlarm/configureEnergyAlarms.vue @@ -106,7 +106,7 @@ headerActions: [ { label: '新增', - name: 'RoleTypeAdd', + name: 'configureEnergyAlarmAdd', type: 'primary', handle: () => { editConfigureEnergyAlarms.value.toggle(null, configureEnergyAlarmsData.value); @@ -114,7 +114,7 @@ }, { label: '导入', - name: 'groupImport', + name: 'configureEnergyAlarmImport', type: 'primary', extra: { // api: props.postImportApi, // 导入接口名 @@ -131,7 +131,7 @@ }, { label: '导出', - name: 'groupExports', + name: 'configureEnergyAlarmExports', type: 'primary', handle: () => { doWnload('/hx-ai-intelligent/asset/file/whiteListUser.xlsx'); @@ -140,7 +140,7 @@ { label: '批量删除', type: 'primary', - name: 'userBatchDel', + name: 'configureEnergyAlarmDels', confirm: true, dynamicDisabled: (data: any) => { return data.list.length === 0; @@ -205,7 +205,7 @@ actions: [ { label: '编辑', - name: 'FeedBackDetail', + name: 'configureEnergyAlarmEdit', dynamicParams: ['uuid', 'appealType'], handle: (data: any) => { editConfigureEnergyAlarms.value.toggle(data, configureEnergyAlarmsData.value); @@ -213,7 +213,7 @@ }, { label: '删除', - name: 'FeedBackDetail', + name: 'configureEnergyAlarmDel', dynamicParams: ['uuid', 'appealType'], confirm: true, handle: (data: any) => { diff --git a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/configureDeviceAlarms.vue b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/configureDeviceAlarms.vue index bcb9426..6f92f87 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/configureDeviceAlarms.vue +++ b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/configureDeviceAlarms.vue @@ -11,6 +11,9 @@ }" @click="clickSwitch({ enableRules: record.enableRules, record: record })" /> + @@ -79,7 +82,7 @@ headerActions: [ { label: '新增', - name: 'RoleTypeAdd', + name: 'configureEquipmentAlarmAdd', type: 'primary', handle: () => { editConfigureDeviceAlarms.value.toggle(null, configureDeviceAlarmsData.value); @@ -87,7 +90,7 @@ }, { label: '导入', - name: 'groupImport', + name: 'configureEquipmentAlarmImport', type: 'primary', extra: { // api: props.postImportApi, // 导入接口名 @@ -104,7 +107,7 @@ }, { label: '导出', - name: 'groupExports', + name: 'configureEquipmentAlarmExports', type: 'primary', handle: () => { doWnload('/hx-ai-intelligent/asset/file/whiteListUser.xlsx'); @@ -112,7 +115,7 @@ }, { label: '批量删除', - name: 'groupTemDownload', + name: 'configureEquipmentAlarmDels', type: 'primary', confirm: true, dynamicDisabled: (data: any) => { @@ -177,7 +180,7 @@ actions: [ { label: '编辑', - name: 'FeedBackDetail', + name: 'configureEquipmentAlarmEdit', dynamicParams: ['uuid', 'appealType'], handle: (data: any) => { editConfigureDeviceAlarms.value.toggle(data, configureDeviceAlarmsData); @@ -185,7 +188,7 @@ }, { label: '删除', - name: 'FeedBackDetail', + name: 'configureEquipmentAlarmDel', dynamicParams: ['uuid', 'appealType'], confirm: true, handle: (data: any) => { diff --git a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/editConfigureDeviceAlarm.vue b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/editConfigureDeviceAlarm.vue index 2ccca11..f44bf69 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/editConfigureDeviceAlarm.vue +++ b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/equipmentAlarm/editConfigureDeviceAlarm.vue @@ -235,8 +235,8 @@ }; //取值类型 const qzOptions = ref([ - { value: 1, label: '实时值', code: '1' }, - { value: 2, label: '平均值', code: '2' }, + { value: 1, label: '实时值' }, + { value: 2, label: '平均值' }, ]); //逻辑 const ljOptions = ref([ @@ -331,6 +331,7 @@ infoObject.value.alarmList = infoObject.value.hxAlarmRuleLogicList || []; delete infoObject.value.hxAlarmRuleLogicList; infoObject.value.deviceType = selectDevice; + infoObject.value.valueType = infoObject.value.valueType.value; infoObject.value.ruleType = infoObject.value.ruleType + ''; } }); diff --git a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/index.vue b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/index.vue index 6f59342..83fc3a1 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/index.vue +++ b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/index.vue @@ -126,7 +126,7 @@ import { ExclamationCircleOutlined } from '@ant-design/icons-vue'; export default { - name: 'AlarmSettings', + name: 'AlarmSettingsIndex', components: { editeEquipmentAlarm, configureDeviceAlarms, diff --git a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/notificationManagement/index.vue b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/notificationManagement/index.vue index fd33883..74a5db0 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/notificationManagement/index.vue +++ b/hx-ai-intelligent/src/view/alarmManagement/alarmSettings/notificationManagement/index.vue @@ -44,7 +44,7 @@ width: 5px; height: 15px; background: inherit; - background-color: rgba(251, 156, 67, 1); + background-color: #2778ff; border: none; border-radius: 5px; -moz-box-shadow: none; @@ -66,6 +66,9 @@ :scroll="{ x: 800, y: 700 }" :pagination="pagination"> - diff --git a/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/status.vue b/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/status.vue index d6cb122..9ec1b01 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/status.vue +++ b/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/status.vue @@ -8,16 +8,81 @@ :cancel="handleClose" placement="right" @close="handleClose"> - 状态 + + Content of Tab Pane 1 + + + + + + + diff --git a/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/ts/config.ts b/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/ts/config.ts index 8adc472..8d4092f 100644 --- a/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/ts/config.ts +++ b/hx-ai-intelligent/src/view/alarmManagement/equipmentAlarm/ts/config.ts @@ -130,18 +130,10 @@ export const notificationtableConfig = (look: any, status: any) => { ], }, }, - { - field: 'provider', - label: '告警标题', - component: 'NsInput', - componentProps: { - placeholder: '请输入告警标题关键字', - }, - }, { field: 'provider', label: '错误码', - component: 'NsInputApi', + component: 'NsInput', componentProps: { placeholder: '请输入告警错误码', }, diff --git a/hx-ai-intelligent/src/view/carbonEmissionManage/carbonEmissionStatistics/carbonEmissions/index copy.vue b/hx-ai-intelligent/src/view/carbonEmissionManage/carbonEmissionStatistics/carbonEmissions/index copy.vue deleted file mode 100644 index c205a2d..0000000 --- a/hx-ai-intelligent/src/view/carbonEmissionManage/carbonEmissionStatistics/carbonEmissions/index copy.vue +++ /dev/null @@ -1,179 +0,0 @@ - - - - - diff --git a/hx-ai-intelligent/src/view/carbonEmissionManage/carbonEmissionStatistics/carbonEmissions/index.vue b/hx-ai-intelligent/src/view/carbonEmissionManage/carbonEmissionStatistics/carbonEmissions/index.vue index be5bf5b..9298666 100644 --- a/hx-ai-intelligent/src/view/carbonEmissionManage/carbonEmissionStatistics/carbonEmissions/index.vue +++ b/hx-ai-intelligent/src/view/carbonEmissionManage/carbonEmissionStatistics/carbonEmissions/index.vue @@ -1,13 +1,13 @@