3 Commits

Author SHA1 Message Date
jiangyinzhi 95d50a991d 填报增加字段 2026-04-13 16:23:45 +08:00
jiangyinzhi 7c9827baee 增加区县公司 2026-04-01 17:26:44 +08:00
jiangyinzhi d883b51b0d 修改 2025-12-25 09:28:02 +08:00
30 changed files with 290 additions and 104 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
ENV = 'development'
# 定义变量
VUE_APP_CITY_TYPE = ''
VUE_APP_CITY_TYPE = 'ah'
# 开发环境接口调用前缀
# VUE_APP_BASE_API = '/dev-api'
+1 -1
View File
@@ -6,7 +6,7 @@ NODE_ENV=production
# 测试0 生产1
VUE_APP_ENV = '1'
# 定义变量
VUE_APP_CITY_TYPE = 'cq'
VUE_APP_CITY_TYPE = 'ah'
# base api
VUE_APP_BASE_API = ''
+3 -3
View File
@@ -35,7 +35,7 @@ const LoadingInstance = {
function myAxios(axiosConfig, customOptions) {
const service = axios.create({
baseURL: axiosConfig.type ? '' : baseURLs, // 设置统一的请求前缀
timeout: 20000, // 设置统一的超时时长
timeout: 30000, // 设置统一的超时时长
});
// 自定义配置
@@ -143,8 +143,8 @@ function httpErrorStatusHandle(error) {
// console.log(router,'114');
// router.push('/login')
// eslint-disable-next-line no-case-declarations
let pathName = sessionStorage.getItem('path')
router.push(pathName)
// let pathName = sessionStorage.getItem('path')
// router.push(pathName)
break;
case 403: message = '您没有权限操作!'; break;
case 404: message = `请求地址出错: ${error.response.config.url}`; break; // 在正确域名下
+10
View File
@@ -29,6 +29,16 @@ export function getOrgList() {
})
}
// 地区公司
export function cityTree(data) {
return myAxios({
url: `${sx}/energy-effcicency-net-service/nxzdPCodeYcControllerNet/cityTree`, //后端接口路由
method: 'post',
data
})
}
//获取用户信息
export function getUserInfo(params) {
return myAxios({
+3 -3
View File
@@ -5,16 +5,16 @@ if (process.env.NODE_ENV === 'development') {
// 测试环境
// baseURL = 'http://172.29.69.38:28083/' //后端ip和端口
// baseURL = 'http://192.168.1.116:28083/' //测试后端ip和端口
baseURL = 'http://172.29.69.38:19012/' //测试后端ip和端口
baseURL = 'http://172.29.106.250:19012/' //测试后端ip和端口
} else {
// 生产环境
// baseURL = '' // 本地 打包以后只需要空路径就行
// baseURL = '/proxy-ah' //安徽 打包以后的路径
baseURL = '/proxy-ah' //安徽 打包以后的路径
// baseURL = '/proxy-nx' //宁夏 打包以后的路径
// baseURL = '/proxy-xj' //新疆 打包以后的路径
// baseURL = '/proxy-sx' //山西 打包以后的路径
baseURL = '/proxy-cq' //重庆 打包以后的路径
// baseURL = '/proxy-cq' //重庆 打包以后的路径
}
+1 -1
View File
@@ -10,7 +10,7 @@ module.exports = {
*/
sidebarLogo: true,
menuExclude: [],
downloadUrl: `${process.env.VUE_APP_BASE_API}/proxy-cq/file/minio/download/`,
downloadUrl: `${process.env.VUE_APP_BASE_API}/proxy-ah/file/minio/download/`,
uploadUrl: `${process.env.VUE_APP_BASE_API}/file/minio/upload/`,
statusCode: {
SUCCESS: 0
@@ -114,6 +114,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='energyReport'){
return
}
const res = await getLoginCustomerAPI()
// console.log(res.data.customerId);
if (res.code == 0) {
+4
View File
@@ -626,6 +626,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='energyReport'){
return
}
const res = await getLoginCustomerAPI()
// console.log(res.data.customerId);
if (res.code == 0) {
@@ -716,6 +716,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='energyReport'){
return
}
const res = await getLoginCustomerAPI()
// console.log(res.data.customerId);
if (res.code == 0) {
+5 -1
View File
@@ -156,7 +156,7 @@
</div>
</div>
<div class="manage-start-text">
在建筑用能管理方面,贵单位{{ EnergyReportInfo.energyPlatform }}能源管控平台<span v-if="!(EnergyReportInfo.platformFeatures.split('')[0] == '未'||EnergyReportInfo.platformFeatures == '无')">,平台的功能包括具备{{ EnergyReportInfo.platformFeatures }}功能</span>。
在建筑用能管理方面,贵单位{{ EnergyReportInfo.energyPlatform }}能源管控平台<span v-if="!(EnergyReportInfo.platformFeatures&&(EnergyReportInfo.platformFeatures.split('')[0] == '未'||EnergyReportInfo.platformFeatures == '无'))">,平台的功能包括具备{{ EnergyReportInfo.platformFeatures }}功能</span>。
<span v-if="!(EnergyReportInfo.useEnergy == '无')">
使用能源({{ EnergyReportInfo.useEnergy }})已经具备分项计量功能,用能单位能源计量器具配备{{ EnergyReportInfo.meterComplete }}。
</span>
@@ -264,6 +264,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='energyReport'){
return
}
const res = await getLoginCustomerAPI()
// console.log(res.data.customerId);
if (res.code == 0) {
+14 -7
View File
@@ -26,9 +26,12 @@
<!-- <van-dropdown-menu class="timeSelect" v-if="timeSelectShow" >
<van-dropdown-item v-model="yearVal" :options="yearList" @change="handelChangeTime" />
</van-dropdown-menu> -->
<div class="detail2-right-top-reset" @click="generateReport" v-if="timeSelectShow">
<div class="detail2-right-top-reset" @click="generateReport(false)" v-if="timeSelectShow">
重新生成
</div>
<div class="detail2-right-top-reset" @click="generateReport(true)" v-if="timeSelectShow&&isCq">
刷新
</div>
</div>
<div class="detail2-right-bottom">
{{userCode}}:
@@ -212,6 +215,9 @@ export default {
res ='|' + this.EnergyReportInfo.buildType.split('/')[0]
}
return '公共机构'+res
},
isCq(){
return process.env.VUE_APP_CITY_TYPE=='cq'
}
},
@@ -224,8 +230,8 @@ export default {
created() {
this.level = sessionStorage.getItem('level')
this.getEnergyReportInfo()
this.doDebounce = debounce(function () {
this.getGenerateReport()
this.doDebounce = debounce(function (flag) {
this.getGenerateReport(flag)
}, 5000, true)
},
methods: {
@@ -423,13 +429,14 @@ export default {
this.$router.push({path: '/energyReport'})
},
// 重新生成
generateReport(){
this.doDebounce()
generateReport(flag){
this.doDebounce(flag)
},
async getGenerateReport() {
async getGenerateReport(flag) {
let data = {
customerId: this.energyData.customerId,
taskId: this.energyData.taskId
taskId: this.energyData.taskId,
refresh: flag
}
this.$toast.loading({
duration: 0, // 持续展示 toast
+6 -1
View File
@@ -164,7 +164,7 @@ export default {
this.signed = sessionStorage.getItem('signed')
const obj = JSON.parse(sessionStorage.getItem('tidCid'))
if(obj.item && obj.item.isState) {
if(obj&&obj.item && obj.item.isState) {
this.isState = obj.item.isState
}
@@ -181,6 +181,7 @@ export default {
computed: {
...mapState('report', ['EnergyReportInfo']),
levelShow() {
// 客户经理 2
if(this.$store.getters.userLevel != 2) {
return false
}
@@ -268,6 +269,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='energyReport'){
return
}
const res = await getLoginCustomerAPI()
// console.log(res.data.customerId);
if (res.code == 0) {
+30 -2
View File
@@ -114,6 +114,7 @@ import {
editEnergyEquip,
} from '@/api/energyConsumption'
import { dataMode } from '@/views/facilityManage/common.js'
import { getYearList } from "@/api/energyConsumption.js";
export default {
name: 'TaskFilling',
components: {
@@ -623,12 +624,39 @@ export default {
clearData() {
this.item = {}
},
//获取能耗数据
async getDataInit() {
const id = JSON.parse(sessionStorage.getItem("tidCid")).customerId;
const data = {
customerId: id,
pageNum: 1,
pageSize: 10,
};
return new Promise((resolve, reject) => {
getYearList(data).then((res) => {
let {code, data} = res
if (code == 0) {
resolve(data.list)
}
})
})
},
//提交页面信息
saveAllInfo() {
async saveAllInfo() {
const city = process.env.VUE_APP_CITY_TYPE=='cq'
const must = this.iconList&&this.iconList.some(ele => ele.typeId == '1'||ele.typeId=='8'||ele.typeId=='9')&&this.iconList.some(ele => ele.typeId=='3')&&this.iconList.some(ele => ele.typeId=='4')
// )&&ele.typeId=='3'&&ele.typeId=='4'}
console.log(city, must ,this.iconList, 'lllllllllllllllllll')
let yearList = await this.getDataInit()
let noWaterList = yearList.filter(ele => {return !ele.useWater })
console.log(noWaterList, 'yearList')
if(city&&noWaterList.length>0){
this.$notify({
message: '能耗信息数据里的用水量必填',
duration: 1000,
type: 'warning'
})
return
}
if(!must&&city){
this.$notify({
message: '主要用能设备空调至少填一个、照明系统与配电系统必填',
@@ -43,30 +43,29 @@
disabled
/>
<!-- 所属区域 -->
<!-- 供电公司 -->
<van-field
v-model="powerCompanyName"
readonly
required
label="供电公司"
placeholder="请输入"
disabled
/>
<!-- 区县公司 -->
<van-field
v-model="provOrgName"
is-link
readonly
required
label="所属区域"
label="区县公司"
placeholder="请选择"
@click="provOrgNoShow = true"
/>
<!-- 供电公司 -->
<van-field
v-model="powerCompanyName"
is-link
readonly
required
label="供电公司"
placeholder="请选择"
@click="handelClickPowerCompany"
/>
<!-- 社会信用代码 -->
<van-field
@@ -195,12 +194,12 @@
@finish="onFinish"
/>
</van-popup>
<!-- 所属区域 -->
<!-- 区县公司 -->
<van-popup v-model="provOrgNoShow" round position="bottom">
<van-cascader
:field-names="orgFieldNames"
v-model="customer.provOrgNo"
title="请选择所属区域"
title="请选择区县公司"
:options="provOrgList"
:props="backList"
@close="provOrgNoShow = false"
@@ -209,7 +208,7 @@
/>
</van-popup>
<!-- 供电公司 -->
<van-popup v-model="powerCompanyShow" round position="bottom">
<!-- <van-popup v-model="powerCompanyShow" round position="bottom">
<van-picker
v-model="customer.powerCompany"
show-toolbar
@@ -217,7 +216,7 @@
@cancel="powerCompanyShow = false"
@confirm="onConfirmPowerCompanyShow"
/>
</van-popup>
</van-popup> -->
<van-popup v-model="yearShow" round position="bottom">
<van-datetime-picker
@@ -273,7 +272,7 @@
<script>
// import Header from "@/components/headerNew";
import { Notify } from 'vant'
import { getCode, getOrgList } from '@/api/common.js'
import { getCode, cityTree } from '@/api/common.js'
import { customerEdit, getSingleInfo } from '@/api/customer.js'
import Loading from '@/components/loading'
import VanPickerNew from '@/components/vanPickerNew'
@@ -386,7 +385,7 @@ export default {
value: 'code',
children: 'child',
},
//自定义所属区域字段名称
//自定义区县公司字段名称
orgFieldNames: {
text: 'codeName',
pCode: 'pcodeValue',
@@ -400,11 +399,11 @@ export default {
customerTypeShow: false,
//客户类型弹框数据
customerTypeList: [],
//所属区域中文展示
//区县公司中文展示
provOrgName: '',
//所属区域弹框展示
//区县公司弹框展示
provOrgNoShow: false,
//所属区域弹框数据
//区县公司弹框数据
provOrgList: [],
//错误提示
errorMessage: '',
@@ -426,7 +425,7 @@ export default {
},
created() {
this.getOrg()
this.powerList()
// this.powerList()
},
mounted() {
this.getPersonData()
@@ -565,8 +564,8 @@ export default {
this.customer = res.data
this.customer.customerType = res.data.customerType
this.customer.consNo = res.data.consNo
this.customer.provOrgNo = res.data.orgNo
this.provOrgName = res.data.orgName
this.customer.provOrgNo = res.data.consOrgNo
this.provOrgName = res.data.consOrgName
this.customer.powerCompany = res.data.powerCompany
this.getCustomerType()
this.powerList()
@@ -619,7 +618,7 @@ export default {
},
//查询地区
async getOrg() {
const res = await getOrgList()
const res = await cityTree()
if (res.code === 0) {
this.provOrgList = res.data
this.backList = res.data
@@ -646,9 +645,11 @@ export default {
},
async onFinish1({ selectedOptions }) {
const data = await this.getCheckboxInfo(selectedOptions)
this.customer.orgNo = data.codeValue
this.customer.consOrgNo = data.codeValue
this.customer.provOrgNo = data.codeValue
this.customer.provinceNo = selectedOptions[0].codeValue
this.customer.powerCompany = selectedOptions[0].codeValue
this.powerCompanyName = selectedOptions[0].codeName
this.provOrgName = data.codeName
this.provOrgNoShow = false
},
@@ -704,7 +705,7 @@ export default {
},
//客户类型点击确认
customerTypeSure() {},
//所属区域点击确认
//区县公司点击确认
provOrgSure() {},
},
}
@@ -998,6 +998,10 @@ export default {
// ele.disabled = false
// }
// })
}else{
this.showData.buildType1 = this.option[i].text
this.mainActiveIndex = i
}
}
@@ -1273,27 +1277,34 @@ export default {
.then((res) => {
if (res.code == 0) {
let arr = []
console.log(select, 'ss', res.data);
this.mainActiveIndex = 0
res.data.forEach((v, i) => {
if(v.code == select) this.mainActiveIndex = i
const list = v.child.map((ele) => {
let list = []
if(v.child){
list = v.child.map((ele) => {
return {
text: ele.name,
id: ele.code,
pCode: ele.pCode
}
})
}
arr.push({
text: v.name,
value: v.code,
children: list,
disabled: select!=5&&!(v.code == select)
children: list||[],
disabled: select!=6&&!(v.code == select)
})
})
console.log(arr, 'arrooo', this.option);
this.option = arr
}
})
.catch(() => {
console.log('shibai');
this.$toast('失败')
})
},
+42 -13
View File
@@ -287,6 +287,7 @@ import { getCurrentPersonInfoAPI } from "@/api/customerIformation.js";
import { getCode } from '@/api/common.js'
import Year from '@/views/facilityManage/common-vue/year.vue'
import {debounce} from '@/utils/common.js'
import { Dialog, Notify } from 'vant';
// import Loading from '@/components/loading'
export default {
@@ -503,6 +504,32 @@ export default {
// 任务信息填报
async filling(item) {
this.setCurrentTidCidPersonInfo(item)
const that = this
const res = await getCurrentPersonInfoAPI(item.customerId)
if (res.code == 0) {
this.creditCode = res.data.creditCode
if(!res.data.creditCode||res.data.creditCode=='null'||!res.data.contactName||res.data.contactName=='null'||!res.data.contactPhone||res.data.contactPhone=='null'){
Dialog.confirm({
title: '提示',
message: '请前往配置信息页面,填写用户基本信息',
beforeClose: async (action, done) => {
if (action === 'confirm') {
that.archivalInformation();
done();
}else {
done();
}
}
})
return
}
} else {
this.$notify({
type: 'danger',
message: res.msg
})
}
if (item.type == '01') {
this.$router.push({
name: 'TaskFilling'
@@ -520,19 +547,6 @@ export default {
})
} else {
sessionStorage.removeItem('enterpriseId')
try {
const res = await getCurrentPersonInfoAPI(item.customerId)
if (res.code == 0) {
this.creditCode = res.data.creditCode
} else {
this.$notify({
type: 'danger',
message: res.msg
})
}
} catch (error) {
console.log(error);
}
this.$router.push({
name: 'acquisition',
params: {
@@ -542,6 +556,21 @@ export default {
}
}
},
//获取当前页面信息
getPathInfo() {
let currentPath = {}
currentPath.path = this.$route.path
currentPath.name = '客户信息填报'
this.$store.commit('path/SET_PATH', currentPath)
sessionStorage.setItem('goPage', JSON.stringify(currentPath))
},
// 档案信息
archivalInformation() {
this.getPathInfo()
console.log('/archivalinformation');
this.$router.push('/archivalinformation')
},
// 能效诊断跳转
nengxiaozd(item) {
this.setCurrentTidCidPersonInfo(item)
+2 -2
View File
@@ -17,8 +17,8 @@
}}
</div>
<div class="list-item-div">
<img src="@/assets/orgName.png" alt="" />所属区域:
{{ personDetail.orgName }}
<img src="@/assets/orgName.png" alt="" />区县公司:
{{ personDetail.consOrgName }}
</div>
<div class="list-item-div list-item-display" style="overflow: unset;">
<img src="@/assets/contactName.png" alt="" /> 联系人:
+8 -2
View File
@@ -387,6 +387,7 @@ export default {
newVal.forEach(v => {
if (v) {
this.listValue.push(v.value)
this.listValue = [...new Set(this.listValue)]
}
})
}
@@ -691,6 +692,7 @@ export default {
let aaa = commonEnergySystemArr[i].replace('0', '') - 1;
this.result.push(this.list[aaa])
}
this.result = [...new Set(this.result)]
}
//能源计量见着数据处理
if(res.data.primaryEnergyMeterType.indexOf('0')>-1){
@@ -788,6 +790,11 @@ export default {
this.list.push({ name: v.name, value: v.value })
})
if(this.ifEnterpriseId === ''){
this.result=[]
this.result.push(this.list[0])
}
}
},
@@ -803,8 +810,7 @@ export default {
this.$toast('通用能源系统必须有配电系统')
return
}
console.log(this.listValue2, 'this.listValue2', this.list);
return
console.log(this.listValue2, 'this.listValue2', this.listValue);
if( this.listValue2.indexOf("01") === -1){
this.$toast('一级计量必须有勾选电')
return
@@ -1,9 +1,9 @@
<template>
<div class="list">
<van-form ref="detailForm" @submit="handelClickSave">
<!-- <div class="list-upload" v-if="(type == 1||type == 2) && $store.getters.imageRecognition">
<div class="list-upload" v-if="(type == 1||type == 2) && $store.getters.imageRecognition">
<btn-uploader type="filePic" :value="filePic" @afterRead="afterRead" @delImg="delImg" @onUpload="onUpload" />
</div> -->
</div>
<div class="container" v-if="type == 1">
<div class="inputStyle">
<van-cell-group>
@@ -28,7 +28,11 @@
<van-field label="设备生产日期" v-model="form.produceDate" required :rules="[{ required: true }]" placeholder="请选择设备生产日期" input-align="right" is-link readonly @click="datePicker = true" />
<van-field v-input.num v-model="form.cumulativeRunHours" required :rules="[{ required: true }]" type="number" label="累计运行小时数" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.num v-model="form.dieoutNum" type="number" label="淘汰设备数量" placeholder="请输入" required :rules="[{ required: true }]" label-width="200" input-align="right"/>
</van-cell-group>
<van-field v-input.float v-model="form.saveElectricity" type="number" label="预期年节电量(千瓦时)" placeholder="请输入" label-width="220" input-align="right"/>
<van-field v-input.float v-model="form.carbonEmissionFactor" type="number" label="区域碳排放因子" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form.carbonReduction" type="number" label="预期减碳量(TCO₂)" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form.centralAirConditionerCop" type="number" label="集中式空调机组平均COP" placeholder="请输入" label-width="200" input-align="right"/>
</van-cell-group>
<van-cell class="img-box box1" title="设备外观" :required="$store.getters.cityType"/>
<Uploader type="exteriorImage1" :value="exteriorImage1" @afterRead="afterRead1" @delImg="delImg1" @onUpload="onUpload1" />
<div class="tips tipImage" v-if="$store.getters.cityType&&form.exteriorImage.length<1">请上传设备外观照片</div>
@@ -51,7 +55,7 @@
<!-- 设备类型选择 -->
<div class="inputStyle">
<van-cell-group>
<van-field v-model="formColumns.refrigeTypeName" label="设备类型1" required :rules="[{ required: true }]" input-align="right" is-link placeholder="请选择" @click="handelClickHeatingShow('jzlx', 80000001016,'refrigeTypeName','refrigeType','lqt' )" readonly />
<van-field v-model="formColumns.refrigeTypeName" label="设备类型" required :rules="[{ required: true }]" input-align="right" is-link placeholder="请选择" @click="handelClickHeatingShow('jzlx', 80000001016,'refrigeTypeName','refrigeType','lqt' )" readonly />
<!-- <van-cell title="设备类型" is-link :value="form.refrigeTypeName" @click="showPicker = true" readonly /> -->
<van-field v-model="form.model" label="设备型号" required :rules="[{ required: true },{pattern:/^.{2,30}$/, message:'2≤型号长度≤30'}]" input-align="right" maxlength="30" placeholder="请输入设备型号"/>
<van-field v-model="refrigeNum" v-input.numNo0 label="数量(台)" readonly type="number" required :rules="[{ required: true }]" input-align="right" placeholder="自动计算" />
@@ -104,6 +108,9 @@
<van-field label="设备生产日期" v-model="form1.produceDate" required :rules="[{ required: true }]" placeholder="请选择设备生产日期" input-align="right" is-link readonly @click="datePicker = true" />
<van-field v-input.num v-model="form1.cumulativeRunHours" required :rules="[{ required: true }]" type="number" label="累计运行小时数" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.num v-model="form1.dieoutNum" type="number" label="淘汰设备数量" placeholder="请输入" required :rules="[{ required: true }]" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form1.saveElectricity" type="number" label="预期年节电量(千瓦时)" placeholder="请输入" label-width="220" input-align="right"/>
<van-field v-input.float v-model="form1.carbonEmissionFactor" type="number" label="区域碳排放因子" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form1.carbonReduction" type="number" label="预期减碳量(TCO₂)" placeholder="请输入" label-width="200" input-align="right"/>
</van-cell-group>
<van-cell class="img-box box1" title="设备外观" :required="$store.getters.cityType"/>
<Uploader type="exteriorImage1" :value="exteriorImage1" @afterRead="afterRead1" @delImg="delImg1" @onUpload="onUpload1" />
@@ -240,7 +247,11 @@ export default {
equipEfficiency: '',
produceDate:'',
cumulativeRunHours: '',
dieoutNum: ''
dieoutNum: '',
saveElectricity: '',
carbonEmissionFactor:'',
carbonReduction:'',
centralAirConditionerCop:'',
},
form1: {
equipId:'',
@@ -264,7 +275,11 @@ export default {
equipEfficiency: '',
produceDate:'',
cumulativeRunHours: '',
dieoutNum: ''
dieoutNum: '',
saveElectricity: '',
carbonEmissionFactor:'',
carbonReduction:'',
},
formColumns: {
refrigeType: "",
@@ -868,6 +883,18 @@ export default {
exteriorImage: "", //设备外观
tagImage: "", //设备铭牌
markImage: "", //设备能效标识
loadFactor: '',
runHours:'',
runDays: '',
coldPerArea: '',
equipEfficiency: '',
produceDate:'',
cumulativeRunHours: '',
dieoutNum: '',
saveElectricity: '',
carbonEmissionFactor:'',
carbonReduction:'',
centralAirConditionerCop:'',
};
this.form1 = {
equipId:'',
@@ -882,6 +909,18 @@ export default {
exteriorImage: "", //设备外观
tagImage: "", //设备铭牌
markImage: "", //设备能效标识
loadFactor: '',
runHours:'',
runDays: '',
heatPerArea: '',
equipEfficiency: '',
produceDate:'',
cumulativeRunHours: '',
dieoutNum: '',
saveElectricity: '',
carbonEmissionFactor:'',
carbonReduction:'',
};
this.formColumns = {
refrigeType: "",
@@ -28,6 +28,9 @@
<van-field v-input.float v-model="form.maxNeed" required :rules="[{ required: true}]" label="最大需量(kW)" type="number" input-align="right" placeholder="请输入" @input="changeTips" />
<div class="tips" v-if="tips0">最大需量≤总额定容量</div>
<van-field v-input.allFloat v-model="form.penaltyAmount" required :rules="[{ required: true}]" label="上一年累计度力调电费的惩罚金额(元)" type="number" label-width="220" input-align="right" placeholder="请输入" />
<van-field v-input.float v-model="form.saveElectricity" type="number" label="预期年节电量(千瓦时)" placeholder="请输入" label-width="220" input-align="right"/>
<van-field v-input.float v-model="form.carbonEmissionFactor" type="number" label="区域碳排放因子" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form.carbonReduction" type="number" label="预期减碳量(TCO₂)" placeholder="请输入" label-width="200" input-align="right"/>
<Whether :value="formColumns.chargingName" feildName="charging" title="是否安装新能源充电桩" @onConfirmTrueFalse="onConfirmTrueFalse" />
@@ -259,6 +262,9 @@ export default {
produceDate:'',
equipEfficiency: '',
dieoutNum: '',
saveElectricity: '',
carbonEmissionFactor:'',
carbonReduction:'',
},
//页面展示的中文名称
formColumns: {
@@ -9,7 +9,10 @@
<van-field v-model="form.runDays" v-input.maxYearDay label="年平均运行时间(天)" type="number" required :rules="[{ required: true }]" label-width="220" input-align="right" placeholder="请输入" />
<van-field v-model="form.coldPerArea" v-input.float label="单位面积冷量(kw/平方米)" type="number" required :rules="[{ required: true }]" label-width="220" input-align="right" placeholder="请输入" />
<!-- <van-field v-input.num v-model="form.dieoutNum" type="number" label="淘汰设备数量" placeholder="请输入" required :rules="[{ required: true }]" label-width="200" input-align="right"/> -->
</van-cell-group>
<van-field v-input.float v-model="form.saveElectricity" type="number" label="预期年节电量(千瓦时)" placeholder="请输入" label-width="220" input-align="right"/>
<van-field v-input.float v-model="form.carbonEmissionFactor" type="number" label="区域碳排放因子" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form.carbonReduction" type="number" label="预期减碳量(TCO₂)" placeholder="请输入" label-width="200" input-align="right"/>
</van-cell-group>
</div>
<!-- <div class="bottom"><van-button type="primary" block>保存</van-button></div> -->
</div>
@@ -29,7 +32,10 @@ export default {
runHours:'',
runDays: '',
coldPerArea: '',
dieoutNum: ''
dieoutNum: '',
saveElectricity: '',
carbonEmissionFactor:'',
carbonReduction:'',
},
eqid: '',
@@ -1,11 +1,11 @@
<template>
<div class="multipleAir">
<!-- <div class="list-upload" v-if="$store.getters.imageRecognition">
<div class="list-upload" v-if="$store.getters.imageRecognition">
<btnUploader type="filePic" :value="filePic"
@afterRead="afterRead1"
@delImg="delImg1"
@onUpload="onUpload1" />
</div> -->
</div>
<div class="focusItem">
<div class="inputStyle">
<van-cell-group>
@@ -43,6 +43,10 @@
<van-field label="设备能效等级" v-model="form.equipEfficiencyName" required :rules="[{ required: true }]" placeholder="请选择设备能效等级" input-align="right" is-link readonly @click="handelClickOptionShow('equipEfficiency')" />
<van-field v-input.num v-model="form.cumulativeRunHours" required :rules="[{ required: true }]" type="number" label="累计运行小时数" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.num v-model="form.dieoutNum" type="number" label="淘汰设备数量" placeholder="请输入" required :rules="[{ required: true }]" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form.saveElectricity" type="number" label="预期年节电量(千瓦时)" placeholder="请输入" label-width="220" input-align="right"/>
<van-field v-input.float v-model="form.carbonEmissionFactor" type="number" label="区域碳排放因子" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form.carbonReduction" type="number" label="预期减碳量(TCO₂)" placeholder="请输入" label-width="200" input-align="right"/>
<van-field v-input.float v-model="form.multiAirConditionerCop" type="number" label="多联式空调机组平均COP" placeholder="请输入" label-width="200" input-align="right"/>
</van-cell-group>
<div v-if="form.refrigeNum">
<van-cell class="img-box box1" style="padding:10px 15px;" title="设备外观" :required="$store.getters.cityType"/>
@@ -181,7 +185,11 @@ export default {
equipEfficiency: '',
cumulativeRunHours: '',
produceDate:'',
dieoutNum: ''
dieoutNum: '',
saveElectricity: '',
carbonEmissionFactor:'',
carbonReduction:'',
multiAirConditionerCop:''
},
/**
@@ -150,6 +150,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='fullreport'){
return
}
const res = await getLoginCustomerAPI()
if (res.code == 0) {
localStorage.setItem('reportCustomerId', res.data.customerId)
@@ -146,6 +146,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='fullreport'){
return
}
const res = await getLoginCustomerAPI()
if (res.code == 0) {
localStorage.setItem('reportCustomerId', res.data.customerId)
@@ -74,6 +74,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='fullreport'){
return
}
const res = await getLoginCustomerAPI()
if (res.code == 0) {
localStorage.setItem('reportCustomerId', res.data.customerId)
@@ -165,6 +165,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='fullreport'){
return
}
const res = await getLoginCustomerAPI()
if (res.code == 0) {
localStorage.setItem('reportCustomerId', res.data.customerId)
@@ -184,6 +184,10 @@ export default {
async getLoginCustomer() {
this.loading2 = true
try {
let reportCustomerId = localStorage.getItem('reportCustomerId')
if(reportCustomerId&&this.$route.name=='fullreport'){
return
}
const res = await getLoginCustomerAPI()
if (res.code == 0) {
localStorage.setItem('reportCustomerId', res.data.customerId)
+1 -14
View File
@@ -300,6 +300,7 @@ export default {
const res = await getLoginCustomerAPI()
// console.log(res.data.customerId);
if (res.code == 0) {
localStorage.setItem('reportCustomerId', res.data.customerId)
const data = {
customerId: res.data.customerId,
ai: sessionStorage.getItem('saikey')
@@ -324,20 +325,6 @@ export default {
sessionStorage.setItem('signIdtwo', res.data.id)
this.EnergyReportInfo = res.data
this.setEnergyReportInfo(res.data)
if (res.data.energySituationRadar) {
this.radarOption.radar.indicator = JSON.parse(
res.data.energySituationRadar
)['indicator']
this.radarOption.series[0].data = []
this.radarOption.series[0].data.push(
JSON.parse(res.data.energySituationRadar)['seriesData'][0].dataList
)
this.createRadarChart()
} else {
this.radarOption.radar.indicator = []
this.radarOption.series[0].data = []
this.createRadarChart()
}
} else {
Notify({ type: 'danger', message: res.msg })
}
+14 -7
View File
@@ -31,9 +31,12 @@
<van-dropdown-item v-model="value1" :options="option1" />
</van-dropdown-menu> -->
<div class="detail2-right-top-reset" @click="generateReport" v-if="isLevel">
<div class="detail2-right-top-reset" @click="generateReport(false)" v-if="isLevel">
重新生成
</div>
<div class="detail2-right-top-reset" @click="generateReport(true)" v-if="isLevel&&isCq">
刷新
</div>
</div>
<div class="detail2-right-bottom">
{{userCode}}: <div>{{ EnergyReportInfo.consNo }}</div>
@@ -237,6 +240,9 @@ export default {
taskType() {
return this.$route.params.item? this.$route.params.item.taskType: 0
},
isCq(){
return process.env.VUE_APP_CITY_TYPE=='cq'
}
},
beforeRouteEnter(to, from, next) {
@@ -252,8 +258,8 @@ export default {
// },
created() {
this.userLevel()
this.doDebounce = debounce(function () {
this.getGenerateReport()
this.doDebounce = debounce(function (flag) {
this.getGenerateReport(flag)
}, 5000, true)
},
mounted() {
@@ -436,14 +442,15 @@ export default {
this.option1 = arr
},
// 重新生成
generateReport(){
this.doDebounce()
generateReport(flag){
this.doDebounce(flag)
},
async getGenerateReport() {
async getGenerateReport(flag) {
let data = {
customerId:
this.$route.params.customerId || JSON.parse(sessionStorage.getItem('tidCid')).customerId,
taskId: this.$route.params.taskId|| JSON.parse(sessionStorage.getItem('tidCid')).taskId
taskId: this.$route.params.taskId|| JSON.parse(sessionStorage.getItem('tidCid')).taskId,
refresh: flag
}
// this.$toast('正在重新生成,请稍后...')
this.$toast.loading({
+2 -2
View File
@@ -133,14 +133,14 @@ module.exports = {
"/admin": {
// target: "http://121.28.84.19:9004",
target: "http://172.29.69.38:19012",
target: "http://172.29.106.250:19012",
changeOrigin: true,
pathRewrite: {
"^/admin": "",
},
}, "/energy-effcicency-net-service": {
// target: "http://121.28.84.19:9004",
target: "http://172.29.69.38:19012",
target: "http://172.29.106.250:19012",
changeOrigin: true,
pathRewrite: {
"^/energy-effcicency-net-service": "",