|
@@ -10,15 +10,9 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="开始" class="!mb-0 ml-2">
|
|
|
- <el-date-picker v-model="val1" @change="BeginChange(val1)" type="month" value-format="YYYY-MM"
|
|
|
- placeholder="选择日期">
|
|
|
- </el-date-picker>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="结束" class="!mb-0">
|
|
|
- <el-date-picker v-model="value2" @change="EndChange(value2)" type="month" value-format="YYYY-MM"
|
|
|
- placeholder="选择日期">
|
|
|
- </el-date-picker>
|
|
|
+ <el-form-item label="选择时间">
|
|
|
+ <el-date-picker v-model="pickerVal" type="monthrange" value-format="YYYY-MM" range-separator="至"
|
|
|
+ start-placeholder="开始时间" end-placeholder="结束时间" />
|
|
|
</el-form-item>
|
|
|
<el-form-item class="!mb-0">
|
|
|
<el-button type="primary" @click="addform">查询</el-button>
|
|
@@ -44,88 +38,108 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <el-dialog v-model="centerDialogVisible" title="风电场性能分析报告" width="50%" center :before-close="handleClose"
|
|
|
- style="padding: 15px 40px;">
|
|
|
- <div id="pdfDom">
|
|
|
- <!-- <h3 style="font-weight: bolder; font-size: 18px; color: black;text-aling:center">风电场性能分析报告</h3> -->
|
|
|
- <p>
|
|
|
- <span class="ml-5" style="width: 500px;">场站: {{ nbdata.name }}</span>
|
|
|
- <span class="ml-77">风机型号: {{ nbdata.model }}</span>
|
|
|
- </p>
|
|
|
- <p>
|
|
|
- <span class="ml-5">风机数量: {{ nbdata.quantity }}</span>
|
|
|
- <span class="ml-87">装机容量(MW): {{ nbdata.capacity }}</span>
|
|
|
- </p>
|
|
|
- <p>
|
|
|
- <span class="ml-5">报告生成日期: {{ time }}</span>
|
|
|
- <span class="ml-70">数据分析周期: {{ eltime }}</span>
|
|
|
- </p>
|
|
|
- <h3 style="font-weight: bolder; font-size: 18px; color: black">概述:</h3>
|
|
|
+ <el-dialog custom-class="windLifeDialog" v-model="centerDialogVisible" width="50%" center
|
|
|
+ :before-close="handleClose" style="padding: 15px 40px;">
|
|
|
+ <div id="pdfDom" :class="!theme ? 'block' : 'white'"
|
|
|
+ :style="!theme ? 'background-color: #040c0b' : 'background-color: #fff'">
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;text-aling:center;margin-bottom: 20px;text-align: center"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">风电场性能分析报告</h3>
|
|
|
+ <div style="margin-bottom: 20px">
|
|
|
+ <p>
|
|
|
+ <span class="ml-5" style="width: 500px;">场站: {{ nbdata.name }}</span>
|
|
|
+ <span class="ml-77">风机型号: {{ nbdata.model }}</span>
|
|
|
+ </p>
|
|
|
+ <p>
|
|
|
+ <span class="ml-5">风机数量: {{ nbdata.quantity }}</span>
|
|
|
+ <span class="ml-87">装机容量(MW): {{ nbdata.capacity }}</span>
|
|
|
+ </p>
|
|
|
+ <p>
|
|
|
+ <span class="ml-5">报告生成日期: {{ time }}</span>
|
|
|
+ <span class="ml-70">数据分析周期: {{ eltime }}</span>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;margin-bottom: 10px"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">概述:</h3>
|
|
|
<p class="ml-7">
|
|
|
报告基于曲线偏差率、静态偏差对风、容量系数、停机时长、分别对场站{{ nbdata.quantity }}台风机进行了性能分析,其中有{{wtcount}}台风机指标严重异常,信息如下:
|
|
|
</p>
|
|
|
- <h3 style="font-weight: bolder; font-size: 18px; color: black">
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;margin: 10px 0"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">
|
|
|
1、曲线偏差率
|
|
|
</h3>
|
|
|
- <p class="ml-7">
|
|
|
- 曲线偏差率对不同风速区间的实际功率和保证功率做偏差率分析,高偏差率表明存在需要进一步调查潜在问题,偏差率负值表明实际功率低于保证功率
|
|
|
- </p>
|
|
|
-
|
|
|
- <el-table :data="curve" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
- <el-table-column prop="section" align="center" label="风速区间" width="180" />
|
|
|
- <el-table-column prop="module" align="center" label="偏差率" />
|
|
|
- <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
- <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
- </el-table>
|
|
|
- <h3 style="font-weight: bolder; font-size: 18px; color: black">
|
|
|
+ <div class="warn-table">
|
|
|
+ <p class="ml-7">
|
|
|
+ 曲线偏差率对不同风速区间的实际功率和保证功率做偏差率分析,高偏差率表明存在需要进一步调查潜在问题,偏差率负值表明实际功率低于保证功率
|
|
|
+ </p>
|
|
|
+ <el-table :data="curve" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
+ <el-table-column prop="section" align="center" label="风速区间" width="180" />
|
|
|
+ <el-table-column prop="module" align="center" label="偏差率" />
|
|
|
+ <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
+ <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;margin: 10px 0"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">
|
|
|
2、静态偏航对风
|
|
|
</h3>
|
|
|
- <p class="ml-7">
|
|
|
- 静态偏航对风指风机的叶片与风向之间的偏差,偏差角度过大表明对风存在问题,以下为5-10m风速区间的对风误差
|
|
|
- </p>
|
|
|
- <el-table :data="staticwind" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
- <el-table-column prop="section" align="center" label="严重程度" width="180" />
|
|
|
- <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
- <!-- <el-table-column prop="amount1" label="风机数量" /> -->
|
|
|
- <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
- </el-table>
|
|
|
- <h3 style="font-weight: bolder; font-size: 18px; color: black">
|
|
|
+ <div class="warn-table">
|
|
|
+ <p class="ml-7">
|
|
|
+ 静态偏航对风指风机的叶片与风向之间的偏差,偏差角度过大表明对风存在问题,以下为5-10m风速区间的对风误差
|
|
|
+ </p>
|
|
|
+ <el-table :data="staticwind" :span-method="objectSpanMethod" border
|
|
|
+ style="width: 100%; margin-top: 20px">
|
|
|
+ <el-table-column prop="section" align="center" label="严重程度" width="180" />
|
|
|
+ <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
+ <!-- <el-table-column prop="amount1" label="风机数量" /> -->
|
|
|
+ <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;margin: 10px 0"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">
|
|
|
3、容量系数
|
|
|
</h3>
|
|
|
- <p class="ml-7">
|
|
|
- 容量系数是风机发电量能力的指标,数值越低,说明发电效率越低
|
|
|
- </p>
|
|
|
- <el-table :data="mrlxs" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
- <el-table-column prop="section" align="center" label="容量系数" width="180" />
|
|
|
- <!-- <el-table-column prop="name" label="偏差率" /> -->
|
|
|
- <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
- <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
- </el-table>
|
|
|
- <h3 style="font-weight: bolder; font-size: 18px; color: black">
|
|
|
+ <div class="warn-table">
|
|
|
+ <p class="ml-7">
|
|
|
+ 容量系数是风机发电量能力的指标,数值越低,说明发电效率越低
|
|
|
+ </p>
|
|
|
+ <el-table :data="mrlxs" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
+ <el-table-column prop="section" align="center" label="容量系数" width="180" />
|
|
|
+ <!-- <el-table-column prop="name" label="偏差率" /> -->
|
|
|
+ <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
+ <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;margin: 10px 0"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">
|
|
|
4、桨距角
|
|
|
</h3>
|
|
|
- <p class="ml-7">
|
|
|
- 桨距角分析并网开桨和停机收桨,并网状态下桨距角趋近于0度最优,停机状态下桨距角趋近于90度最优
|
|
|
- </p>
|
|
|
- <el-table :data="blade" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
- <el-table-column prop="section" align="center" label="桨距角" width="180" />
|
|
|
- <!-- <el-table-column prop="name" label="偏差率" /> -->
|
|
|
- <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
- <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
- </el-table>
|
|
|
- <h3 style="font-weight: bolder; font-size: 18px; color: black">
|
|
|
+ <div class="warn-table">
|
|
|
+ <p class="ml-7">
|
|
|
+ 桨距角分析并网开桨和停机收桨,并网状态下桨距角趋近于0度最优,停机状态下桨距角趋近于90度最优
|
|
|
+ </p>
|
|
|
+ <el-table :data="blade" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
+ <el-table-column prop="section" align="center" label="桨距角" width="180" />
|
|
|
+ <!-- <el-table-column prop="name" label="偏差率" /> -->
|
|
|
+ <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
+ <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;margin: 10px 0"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">
|
|
|
5、停机时间
|
|
|
</h3>
|
|
|
- <p class="ml-7">
|
|
|
- 小风速下停机时间越长反应出低风速风机切入不及时,暴风天气不停机反应出风机切出不及时
|
|
|
- </p>
|
|
|
- <el-table :data="stoptime" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
- <el-table-column prop="section" align="center" label="风速区间" width="180" />
|
|
|
+ <div class="warn-table">
|
|
|
+ <p class="ml-7">
|
|
|
+ 小风速下停机时间越长反应出低风速风机切入不及时,暴风天气不停机反应出风机切出不及时
|
|
|
+ </p>
|
|
|
+ <el-table :data="stoptime" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px">
|
|
|
+ <el-table-column prop="section" align="center" label="风速区间" width="180" />
|
|
|
|
|
|
- <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
- <el-table-column prop="remark" align="center" label="累计时间(min)" />
|
|
|
- <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
- </el-table>
|
|
|
+ <el-table-column prop="wtidcount" align="center" label="风机数量" />
|
|
|
+ <el-table-column prop="remark" align="center" label="累计时间(min)" />
|
|
|
+ <el-table-column prop="windturbine" align="center" label="风机编号" />
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
<!-- <h3 style="font-weight: bolder; font-size: 18px; color: black">
|
|
|
5、损失电量
|
|
|
</h3>
|
|
@@ -143,7 +157,8 @@
|
|
|
<el-table-column prop="amount1" align="center" label="风机数量" />
|
|
|
<el-table-column prop="amount2" align="center" label="风机编号" />
|
|
|
</el-table> -->
|
|
|
- <h3 style="font-weight: bolder; font-size: 18px; color: black">
|
|
|
+ <h3 style="font-weight: bolder; font-size: 18px;margin: 10px 0"
|
|
|
+ :style="!theme ? 'color: #fff' : 'color: #000'">
|
|
|
结论及建议
|
|
|
</h3>
|
|
|
<p class="ml-7">
|
|
@@ -177,6 +192,7 @@
|
|
|
useStore
|
|
|
} from 'vuex';
|
|
|
|
|
|
+ const pickerVal = ref([]);
|
|
|
const curve = ref([]);
|
|
|
const mrlxs = ref([]);
|
|
|
const blade = ref([]);
|
|
@@ -207,15 +223,15 @@
|
|
|
/**场站 */
|
|
|
const stationList = ref([]);
|
|
|
const funGetStation = async () => {
|
|
|
- const res = await request.get("/base/station");
|
|
|
+ const res = await httpRequest.get("/base/station");
|
|
|
stationList.value = res.data;
|
|
|
};
|
|
|
/**查询表格数据 */
|
|
|
const tableData = ref();
|
|
|
const station = ref("");
|
|
|
const addform = async () => {
|
|
|
- const res = await request.get(
|
|
|
- `/report/list?station=${station.value}&st=${val1.value}&et=${value2.value}`
|
|
|
+ const res = await httpRequest.get(
|
|
|
+ `/report/list?station=${station.value}&st=${pickerVal.value[0]}&et=${pickerVal.value[1]}`
|
|
|
);
|
|
|
|
|
|
// res.data.forEach((ele)=>{
|
|
@@ -244,7 +260,7 @@
|
|
|
time.value = row.time;
|
|
|
// console.log(index, row)
|
|
|
centerDialogVisible.value = true;
|
|
|
- const res = await request.get(
|
|
|
+ const res = await httpRequest.get(
|
|
|
`/report/info?station=${row.station}&date=${row.time}`
|
|
|
);
|
|
|
nbdata.value = res.data.station;
|
|
@@ -266,23 +282,6 @@
|
|
|
hjcount.value = res.data.hjcount;
|
|
|
};
|
|
|
|
|
|
- const getTime1 = (val) => {
|
|
|
- //时间戳处理,val=1是默认开始时间(当前月第一天),val=2是默认结束时间(今天)
|
|
|
- var date = new Date();
|
|
|
- var year = date.getFullYear(),
|
|
|
- month = date.getMonth() + 1,
|
|
|
- day = date.getDate();
|
|
|
- month >= 1 && month <= 9 ? (month = "0" + month) : "";
|
|
|
- day >= 0 && day <= 9 ? (day = "0" + day) : "";
|
|
|
- var begin = year + "-" + '05';
|
|
|
- var end = year + "-" + month;
|
|
|
- if (val == 1) {
|
|
|
- return begin;
|
|
|
- } else if (val == 2) {
|
|
|
- return end;
|
|
|
- }
|
|
|
- };
|
|
|
-
|
|
|
const handleClose = (() => {
|
|
|
reset();
|
|
|
centerDialogVisible.value = false;
|
|
@@ -314,8 +313,6 @@
|
|
|
onMounted(() => {
|
|
|
funGetStation();
|
|
|
theme.value = store.state.theme
|
|
|
- val1.value = getTime1(1);
|
|
|
- value2.value = getTime1(2);
|
|
|
tableHeight.value = window.innerHeight - 210 + 'px'
|
|
|
addform()
|
|
|
});
|