填报测试更改

This commit is contained in:
王兴凯 2026-08-26 18:15:12 +08:00
parent bcdce8f368
commit 43fc39451f
49 changed files with 464 additions and 534 deletions

View File

@ -27,7 +27,7 @@
v-model:value="sourceValue"
placeholder="请输入修改依据"
:rows="5"
:maxlength="500"
:maxlength="160"
show-count
/>
</a-form-item>

View File

@ -869,7 +869,7 @@ watch(
params.sttp = params.sttpMap;
}
tabsConfig.value = handleTabs({ ...params });
debugger
let value = tabsConfig.value.find((item: any) => item.default);
currentActiveKey.value = value?.key;

View File

@ -25,6 +25,9 @@
:columns="columns"
:list-url="getOperationLogList"
:transform-data="customTransform"
:searchParams="{
sort: sort
}"
>
<template #action="{ record }">
<a-button
@ -100,7 +103,8 @@ const visible = computed({
set: (val) => emit("update:open", val),
});
useDraggable(visible, { boundary: true, resetOnOpen: true });
const sort = ref<any>([{field: "operateTime", dir: "desc"}]
);
const basicSearchRef = ref();
const tableRef = ref();
@ -160,6 +164,14 @@ const columns = computed<any[]>(() => [
sort: true,
},
{
key: "remark",
title: "操作详情",
dataIndex: "remark",
visible: true,
ellipsis: true,
width: 160,
},
{
key: "source",
title: "来源依据",
@ -167,13 +179,7 @@ const columns = computed<any[]>(() => [
visible: true,
ellipsis: true,
},
{
key: "remark",
title: "备注",
dataIndex: "remark",
visible: true,
ellipsis: true,
},
{
key: "action",
title: "操作",

View File

@ -21,7 +21,6 @@
v-model:value="ttpwr.max"
:min="0"
placeholder="最大装机"
@change="handleChange"
/>
</a-form-item-rest>
</template>
@ -75,7 +74,7 @@
</template>
<template #actions>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button :loading="btnLoading" @click="exportBtn">导出</a-button>
<a-button @click="customFilterBtn">自定义筛选列</a-button>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
@ -246,12 +245,13 @@ const searchList: any = computed(() => [
}
]);
const handleChange = (value: any) => {
if (ttpwr.value.min > value) {
message.warning('最小装机容量不能大于最大装机容量');
ttpwr.value.max = null;
}
};
//
// const handleBlur = () => {
// if (ttpwr.value.min > ttpwr.value.max) {
// message.warning('');
// // ttpwr.value.max = null;
// }
// };
const handleRangeClick = (value: any) => {
jcdt.value = {
min: dayjs(value.value[0]).format('YYYY-MM-DD HH:mm:ss'),
@ -266,6 +266,16 @@ const disabledEndDate = (current: Dayjs) => {
};
const onSearchFinish = (values: any) => {
//
if (
ttpwr.value.min != null &&
ttpwr.value.max != null &&
ttpwr.value.min > ttpwr.value.max
) {
message.warning('最小装机容量不能大于最大装机容量');
ttpwr.value.max = null;
return;
}
values.ttpwr = ttpwr.value;
if (jcdt.value?.min) {
values.jcdt.min = dayjs(jcdt.value.min).format('YYYY-MM-DD') + ' 00:00:00';
@ -313,9 +323,18 @@ const handleReset = () => {
emit('reset', initSearchData);
};
//
const clearStcd = () => {
if (basicSearchRef.value?.formData) {
basicSearchRef.value.formData.rstcd = '';
}
searchData.value = { ...searchData.value, rstcd: null };
};
defineExpose({
btnLoading,
searchData
searchData,
clearStcd
});
onMounted(() => {

View File

@ -10,9 +10,12 @@
<div>
<p style="color: red; margin-bottom: 8px">请输入删除依据以继续删除操作</p>
<a-textarea
style="margin-bottom: 8px"
v-model:value="dataSource"
placeholder="请输入删除依据"
:rows="4"
:maxlength="160"
show-count
/>
</div>
</a-modal>

View File

@ -10,7 +10,7 @@
<a-form
ref="formRef"
:model="formData"
:label-col="{ span: 8 }"
:label-col="{ span: 7 }"
:wrapper-col="{ span: 16 }"
:rules="formRules"
class="max-h-[70vh] overflow-y-auto pr-4"
@ -197,11 +197,7 @@
<a-col :span="24"><div class="form-group-title">水文</div></a-col>
<a-col :span="12">
<a-form-item
label="坝址以上流域面积(km²)"
:labelCol="{ span: 10 }"
name="nrupar"
>
<a-form-item label="坝址以上流域面积(km²)" name="nrupar">
<a-input-number
v-model:value="formData.nrupar"
placeholder="请输入"
@ -211,11 +207,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="距河源距离(km)"
:labelCol="{ span: 10 }"
name="dstcrvr"
>
<a-form-item label="距河源距离(km)" name="dstcrvr">
<a-input-number
v-model:value="formData.dstcrvr"
placeholder="请输入"
@ -225,11 +217,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="多年平均降雨量(mm)"
:labelCol="{ span: 10 }"
name="avyrp"
>
<a-form-item label="多年平均降雨量(mm)" name="avyrp">
<a-input-number
v-model:value="formData.avyrp"
placeholder="请输入"
@ -239,11 +227,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="多年平均年径流量(亿m³)"
:labelCol="{ span: 10 }"
name="avw"
>
<a-form-item label="多年平均年径流量(亿m³)" name="avw">
<a-input-number
v-model:value="formData.avw"
placeholder="请输入"
@ -252,11 +236,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq"
>
<a-form-item label="多年平均流量(m³/s)" name="avq">
<a-input-number
v-model:value="formData.avq"
placeholder="请输入"
@ -265,11 +245,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="1月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq01"
>
<a-form-item label="1月多年平均流量(m³/s)" name="avq01">
<a-input-number
v-model:value="formData.avq01"
placeholder="请输入"
@ -279,11 +255,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="2月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq02"
>
<a-form-item label="2月多年平均流量(m³/s)" name="avq02">
<a-input-number
v-model:value="formData.avq02"
placeholder="请输入"
@ -293,11 +265,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="3月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq03"
>
<a-form-item label="3月多年平均流量(m³/s)" name="avq03">
<a-input-number
v-model:value="formData.avq03"
placeholder="请输入"
@ -307,11 +275,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="4月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq04"
>
<a-form-item label="4月多年平均流量(m³/s)" name="avq04">
<a-input-number
v-model:value="formData.avq04"
placeholder="请输入"
@ -321,11 +285,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="5月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq05"
>
<a-form-item label="5月多年平均流量(m³/s)" name="avq05">
<a-input-number
v-model:value="formData.avq05"
placeholder="请输入"
@ -335,11 +295,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="6月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq06"
>
<a-form-item label="6月多年平均流量(m³/s)" name="avq06">
<a-input-number
v-model:value="formData.avq06"
placeholder="请输入"
@ -349,11 +305,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="7月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq07"
>
<a-form-item label="7月多年平均流量(m³/s)" name="avq07">
<a-input-number
v-model:value="formData.avq07"
placeholder="请输入"
@ -363,11 +315,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="8月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq08"
>
<a-form-item label="8月多年平均流量(m³/s)" name="avq08">
<a-input-number
v-model:value="formData.avq08"
placeholder="请输入"
@ -377,11 +325,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="9月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq09"
>
<a-form-item label="9月多年平均流量(m³/s)" name="avq09">
<a-input-number
v-model:value="formData.avq09"
placeholder="请输入"
@ -391,11 +335,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="10月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq10"
>
<a-form-item label="10月多年平均流量(m³/s)" name="avq10">
<a-input-number
v-model:value="formData.avq10"
placeholder="请输入"
@ -405,11 +345,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="11月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq11"
>
<a-form-item label="11月多年平均流量(m³/s)" name="avq11">
<a-input-number
v-model:value="formData.avq11"
placeholder="请输入"
@ -419,11 +355,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="12月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq12"
>
<a-form-item label="12月多年平均流量(m³/s)" name="avq12">
<a-input-number
v-model:value="formData.avq12"
placeholder="请输入"
@ -433,11 +365,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="实测最大流量(m³/s)"
:labelCol="{ span: 10 }"
name="obmxq"
>
<a-form-item label="实测最大流量(m³/s)" name="obmxq">
<a-input-number
v-model:value="formData.obmxq"
placeholder="请输入"
@ -446,11 +374,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="实测最小流量(m³/s)"
:labelCol="{ span: 10 }"
name="obmnq"
>
<a-form-item label="实测最小流量(m³/s)" name="obmnq">
<a-input-number
v-model:value="formData.obmnq"
placeholder="请输入"
@ -459,11 +383,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="调查历史最大流量(m³/s)"
:labelCol="{ span: 10 }"
name="hmxq"
>
<a-form-item label="调查历史最大流量(m³/s)" name="hmxq">
<a-input-number
v-model:value="formData.hmxq"
placeholder="请输入"
@ -472,11 +392,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="设计入库洪水流量(m³/s)"
:labelCol="{ span: 10 }"
name="dsnfqfrq"
>
<a-form-item label="设计入库洪水流量(m³/s)" name="dsnfqfrq">
<a-input-number
v-model:value="formData.dsnfqfrq"
placeholder="请输入"
@ -485,20 +401,12 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="设计洪水重现期(年)"
:labelCol="{ span: 10 }"
name="dsrcin"
>
<a-form-item label="设计洪水重现期(年)" name="dsrcin">
<a-input v-model:value="formData.dsrcin" placeholder="请输入" />
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="校核入库洪水流量(m³/s)"
:labelCol="{ span: 10 }"
name="ckfqfqr"
>
<a-form-item label="校核入库洪水流量(m³/s)" name="ckfqfqr">
<a-input-number
v-model:value="formData.ckfqfqr"
placeholder="请输入"
@ -507,20 +415,12 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="校核洪水重现期(年)"
:labelCol="{ span: 10 }"
name="chrcin"
>
<a-form-item label="校核洪水重现期(年)" name="chrcin">
<a-input v-model:value="formData.chrcin" placeholder="请输入" />
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="实测最大洪量(三天)(亿m³)"
:labelCol="{ span: 10 }"
name="obmxw3"
>
<a-form-item label="实测最大洪量(三天)(亿m³)" name="obmxw3">
<a-input-number
v-model:value="formData.obmxw3"
placeholder="请输入"
@ -529,11 +429,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="设计洪量(三天)(亿m³)"
:labelCol="{ span: 10 }"
name="dsw3"
>
<a-form-item label="设计洪量(三天)(亿m³)" name="dsw3">
<a-input-number
v-model:value="formData.dsw3"
placeholder="请输入"
@ -542,11 +438,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="校核洪量(三天)(亿m³)"
:labelCol="{ span: 10 }"
name="ckw3"
>
<a-form-item label="校核洪量(三天)(亿m³)" name="ckw3">
<a-input-number
v-model:value="formData.ckw3"
placeholder="请输入"
@ -555,11 +447,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="多年平均输沙量(万t)"
:labelCol="{ span: 10 }"
name="avsd"
>
<a-form-item label="多年平均输沙量(万t)" name="avsd">
<a-input-number
v-model:value="formData.avsd"
placeholder="请输入"
@ -568,11 +456,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="多年平均含沙量(kg/m³)"
:labelCol="{ span: 10 }"
name="avs"
>
<a-form-item label="多年平均含沙量(kg/m³)" name="avs">
<a-input-number
v-model:value="formData.avs"
placeholder="请输入"
@ -581,11 +465,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="实测最大含沙量(kg/m³)"
:labelCol="{ span: 10 }"
name="obmxs"
>
<a-form-item label="实测最大含沙量(kg/m³)" name="obmxs">
<a-input-number
v-model:value="formData.obmxs"
placeholder="请输入"
@ -598,11 +478,7 @@
<a-col :span="24"><div class="form-group-title">水库</div></a-col>
<a-col :span="12">
<a-form-item
label="校核洪水位(m)"
:labelCol="{ span: 10 }"
name="ckflz"
>
<a-form-item label="校核洪水位(m)" name="ckflz">
<a-input-number
v-model:value="formData.ckflz"
placeholder="请输入"
@ -612,11 +488,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="设计洪水位(m)"
:labelCol="{ span: 10 }"
name="dsflz"
>
<a-form-item label="设计洪水位(m)" name="dsflz">
<a-input-number
v-model:value="formData.dsflz"
placeholder="请输入"
@ -626,11 +498,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="正常蓄水位(m)"
:labelCol="{ span: 10 }"
name="normz"
>
<a-form-item label="正常蓄水位(m)" name="normz">
<a-input-number
v-model:value="formData.normz"
placeholder="请输入"
@ -640,11 +508,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="防洪高水位(m)"
:labelCol="{ span: 10 }"
name="uzfc"
>
<a-form-item label="防洪高水位(m)" name="uzfc">
<a-input-number
v-model:value="formData.uzfc"
placeholder="请输入"
@ -654,11 +518,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="防洪限制水位(m)"
:labelCol="{ span: 10 }"
name="fsltdz"
>
<a-form-item label="防洪限制水位(m)" name="fsltdz">
<a-input-number
v-model:value="formData.fsltdz"
placeholder="请输入"
@ -668,11 +528,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="年消落水位(m)"
:labelCol="{ span: 10 }"
name="ydownz"
>
<a-form-item label="年消落水位(m)" name="ydownz">
<a-input-number
v-model:value="formData.ydownz"
placeholder="请输入"
@ -682,7 +538,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="死水位(m)" :labelCol="{ span: 10 }" name="ddz">
<a-form-item label="死水位(m)" name="ddz">
<a-input-number
v-model:value="formData.ddz"
placeholder="请输入"
@ -692,11 +548,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="正常蓄水位水库面积(km²)"
name="nrzar"
:labelCol="{ span: 10 }"
>
<a-form-item label="正常蓄水位水库面积(km²)" name="nrzar">
<a-input-number
v-model:value="formData.nrzar"
placeholder="请输入"
@ -706,11 +558,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="回水长度(km)"
:labelCol="{ span: 10 }"
name="bcklen"
>
<a-form-item label="回水长度(km)" name="bcklen">
<a-input-number
v-model:value="formData.bcklen"
placeholder="请输入"
@ -720,11 +568,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="总库容(亿m³)"
:labelCol="{ span: 10 }"
name="ttcp"
>
<a-form-item label="总库容(亿m³)" name="ttcp">
<a-input-number
v-model:value="formData.ttcp"
placeholder="请输入"
@ -734,11 +578,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="正常蓄水位以下库容(亿m³)"
:labelCol="{ span: 10 }"
name="nmzcp"
>
<a-form-item label="正常蓄水位以下库容(亿m³)" name="nmzcp">
<a-input-number
v-model:value="formData.nmzcp"
placeholder="请输入"
@ -747,11 +587,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="防洪库容(亿m³)"
:labelCol="{ span: 10 }"
name="fldcp"
>
<a-form-item label="防洪库容(亿m³)" name="fldcp">
<a-input-number
v-model:value="formData.fldcp"
placeholder="请输入"
@ -760,11 +596,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="调节库容(亿m³)"
:labelCol="{ span: 10 }"
name="actcp"
>
<a-form-item label="调节库容(亿m³)" name="actcp">
<a-input-number
v-model:value="formData.actcp"
placeholder="请输入"
@ -773,11 +605,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="死库容(亿m³)"
:labelCol="{ span: 10 }"
name="ddcp"
>
<a-form-item label="死库容(亿m³)" name="ddcp">
<a-input-number
v-model:value="formData.ddcp"
placeholder="请输入"
@ -786,7 +614,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="库容系数(%)" :labelCol="{ span: 10 }" name="cpsc">
<a-form-item label="库容系数(%)" name="cpsc">
<a-input-number
v-model:value="formData.cpsc"
placeholder="请输入"
@ -795,7 +623,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="调节性能" :labelCol="{ span: 10 }" name="rgcp">
<a-form-item label="调节性能" name="rgcp">
<a-select
v-model:value="formData.rgcp"
placeholder="请选择调节性能"
@ -817,11 +645,7 @@
>
<a-col :span="12">
<a-form-item
label="设计洪水位时最大下泄流量(m³/s)"
:labelCol="{ span: 12 }"
name="dsflzmxq"
>
<a-form-item label="设计洪水位时最大下泄流量(m³/s)" name="dsflzmxq">
<a-input-number
v-model:value="formData.dsflzmxq"
placeholder="请输入"
@ -832,22 +656,18 @@
<a-col :span="12">
<a-form-item
label="设计洪水位时最大下泄流量相应下游水位(m)"
:labelCol="{ span: 14 }"
:labelCol="{ span: 9.5 }"
name="dsflzxyz"
>
<a-input-number
v-model:value="formData.dsflzxyz"
placeholder="请输入"
style="width: 100%"
style="width: 93%"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="校核洪水位时最大下泄流量(m³/s)"
:labelCol="{ span: 12 }"
name="ckflzmxq"
>
<a-form-item label="校核洪水位时最大下泄流量(m³/s)" name="ckflzmxq">
<a-input-number
v-model:value="formData.ckflzmxq"
placeholder="请输入"
@ -858,22 +678,18 @@
<a-col :span="12">
<a-form-item
label="校核洪水位时最大下泄流量相应下游水位(m)"
:labelCol="{ span: 14 }"
name="ckflzxyz"
:labelCol="{ span: 9.5 }"
>
<a-input-number
v-model:value="formData.ckflzxyz"
placeholder="请输入"
style="width: 100%"
style="width: 93%"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="枯水期调节流量(m³/s)"
:labelCol="{ span: 12 }"
name="ksqadjq"
>
<a-form-item label="枯水期调节流量(m³/s)" name="ksqadjq">
<a-input-number
v-model:value="formData.ksqadjq"
placeholder="请输入"
@ -882,11 +698,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="枯水期调节流量相应下游水位(m)"
:labelCol="{ span: 12 }"
name="ksqxyz"
>
<a-form-item label="枯水期调节流量相应下游水位(m)" name="ksqxyz">
<a-input-number
v-model:value="formData.ksqxyz"
placeholder="请输入"
@ -895,11 +707,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item
label="发电最大引用流量(m³/s)"
:labelCol="{ span: 12 }"
name="gemaxrq"
>
<a-form-item label="发电最大引用流量(m³/s)" name="gemaxrq">
<a-input-number
v-model:value="formData.gemaxrq"
placeholder="请输入"
@ -910,13 +718,13 @@
<a-col :span="12">
<a-form-item
label="发电最大引用流量相应下游水位(m)"
:labelCol="{ span: 12 }"
:labelCol="{ span: 9.5 }"
name="mxgeqxyz"
>
<a-input-number
v-model:value="formData.mxgeqxyz"
placeholder="请输入"
style="width: 100%"
style="width: 96%"
/>
</a-form-item>
</a-col>
@ -1158,7 +966,10 @@ const fieldLabelOverrides: Record<string, string> = {
reachcd: '所在河段',
bldsttCode: '建设状态',
rgcp: '调节性能',
dmtp: '坝型'
dmtp: '坝型',
addvcd: '所在位置',
hycd: '所属公司',
topHycd: '所属集团'
};
Object.assign(fieldLabelMap, fieldLabelOverrides);
@ -1169,7 +980,17 @@ const selectOptionsMap: Record<string, () => any[]> = {
addvcd: () => addvcdOptions.value,
bldsttCode: () => bldsttCodeOptions.value,
rgcp: () => rgcpNameOptions.value,
dvtp: () => props.dvtpList || []
dvtp: () => props.dvtpList || [],
hycd: () =>
(props.hycdList || []).map(item => ({
value: item.hycd,
label: item.hynm
})),
topHycd: () =>
(props.topHynmList || []).map(item => ({
value: item.hycd,
label: item.hynm
}))
};
const resolveSelectLabel = (field: string, value: any): string => {
@ -1300,7 +1121,7 @@ watch(
continue;
const isSelect = !!selectOptionsMap[key];
const oldDisplay = isSelect
? (originalLabels.value[key] ?? resolveSelectLabel(key, oldNorm))
? originalLabels.value[key] ?? resolveSelectLabel(key, oldNorm)
: oldNorm === null
? '空'
: String(oldNorm);
@ -1390,7 +1211,10 @@ const handleConfirmSubmit = async (source: string) => {
try {
let res: any;
// select label engInfo
const appendSelectLabels = (engInfo: Record<string, any>, fields: string[]) => {
const appendSelectLabels = (
engInfo: Record<string, any>,
fields: string[]
) => {
for (const field of fields) {
const labelField = selectLabelFieldMap[field];
if (labelField) {
@ -1424,7 +1248,10 @@ const handleConfirmSubmit = async (source: string) => {
}
engInfo[item.field] = val;
});
appendSelectLabels(engInfo, changeOrder.value.map(c => c.field));
appendSelectLabels(
engInfo,
changeOrder.value.map(c => c.field)
);
res = await updatePowerInfo({
engInfo,
source: source.trim()

View File

@ -153,9 +153,9 @@ const isEdit = ref(true);
const operationLogVisible = ref(false);
const dvtpList = ref<any[]>([
{ label: '堤坝式', value: '0' },
{ label: '引水式', value: '1' },
{ label: '混合式', value: '2' }
{ label: '堤坝式', value: '1' },
{ label: '引水式', value: '2' },
{ label: '混合式', value: '3' }
]);
//
const dateRender = ({ text }: { text: string }) => {
@ -163,6 +163,12 @@ const dateRender = ({ text }: { text: string }) => {
const date = dayjs(text);
return date.isValid() ? date.format('YYYY-MM-DD') : '-';
};
// ×1010
const ttpwrRender = ({ text }: { text: any }) => {
if (text === null || text === undefined || text === '-') return '-';
const num = Number(text);
return isNaN(num) ? text : (num / 10).toFixed(2);
};
//
const columnMetaMap: Record<string, any> = {
@ -230,7 +236,7 @@ const columnMetaMap: Record<string, any> = {
ksqxyz: { width: 250, sort: true },
gemaxrq: { width: 190, sort: true },
mxgeqxyz: { width: 260, sort: true },
ttpwr: { width: 120, sort: true, ellipsis: true },
ttpwr: { width: 120, sort: true, ellipsis: true, customRender: ttpwrRender },
gncnt: { width: 130, sort: true, ellipsis: true },
gntp: { width: 150, sort: true, ellipsis: true },
grntpwr: { width: 130, sort: true, ellipsis: true },
@ -495,6 +501,10 @@ const handleEditSuccess = () => {
//
const handleDelete = (record: any) => {
deleteModalRef.value?.open(record, () => {
const rvcd = searchRef.value?.searchData?.rvcd ?? 'all';
searchRef.value?.clearStcd?.(); //
currentSearchParams.value = { ...currentSearchParams.value, rstcd: null };
shuJuTianBaoStore.getEngOption(rvcd, 'rvcd');
initTable(currentSearchParams.value);
});
};

View File

@ -11,7 +11,7 @@
>
<template #actions>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button @click="exportBtn" :loading="exportLoading">导出</a-button>
</template>
</BasicSearch>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -3,7 +3,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -77,11 +77,11 @@
<a-input-number v-model:value="formData.inv" placeholder="请输入" :precision="4" style="width: 100%" />
</a-form-item>
</a-col>
<a-col :span="8">
<!-- <a-col :span="8">
<a-form-item label="放流孔结构形式" name="flkjg">
<a-input v-model:value="formData.flkjg" placeholder="请输入" style="width: 100%" />
</a-form-item>
</a-col>
</a-col> -->
<a-col :span="8">
<a-form-item label="最大泄放流量(m³/s)" name="flkq">
<a-input-number v-model:value="formData.flkq" placeholder="请输入" :precision="2" style="width: 100%" />
@ -97,9 +97,16 @@
<a-input v-model:value="formData.assessMethod" placeholder="请输入考核方式" style="width: 100%" />
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="备注" name="remark">
<a-input v-model:value="formData.remark" placeholder="请输入备注" style="width: 100%" />
<a-col :span="24">
<a-form-item label="备注" name="remark" :label-col="{ flex: '0 0 160px' }" :wrapper-col="{ flex: 'auto' }">
<a-textarea
v-model:value="formData.remark"
placeholder="请输入备注"
:maxlength="160"
:rows="3"
show-count
style="width: 100%"
/>
</a-form-item>
</a-col>
</a-row>
@ -152,7 +159,7 @@ const fieldLabelMap: Record<string, string> = {
stcd: '设施编码', stnm: '设施名称', sttp: '设施类型', stlc: '站址/位置',
baseId: '水电基地', rstcd: '所属电站', lgtd: '经度(°)', lttd: '纬度(°)',
elev: '高程(m)', swdt: '开工日期', jcdt: '建成日期', bldsttCode: '建设状态',
inv: '投资(亿元)', flkjg: '放流孔结构形式', flkq: '最大泄放流量(m³/s)',
inv: '投资(亿元)', flkq: '最大泄放流量(m³/s)',
minFlow: '最小下泄生态流量(m³/s)', assessMethod: '考核方式', remark: '备注'
};

View File

@ -3,7 +3,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -3,7 +3,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -235,7 +235,7 @@ const handleAdd = () => {
editVisible.value = true;
};
//
//
const handleSeeEdit = () => {
operationLogVisible.value = true;
};

View File

@ -49,7 +49,8 @@
:key="item.value"
:label="item.label"
:value="item.value"
>{{ item.label }}</a-select-option>
>{{ item.label }}</a-select-option
>
</a-select>
</a-form-item>
</a-col>
@ -64,12 +65,22 @@
</a-col>
<a-col :span="12">
<a-form-item label="经度(°)" name="lgtd">
<a-input-number v-model:value="formData.lgtd" placeholder="请输入" :precision="6" style="width: 100%" />
<a-input-number
v-model:value="formData.lgtd"
placeholder="请输入"
:precision="6"
style="width: 100%"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="纬度(°)" name="lttd">
<a-input-number v-model:value="formData.lttd" placeholder="请输入" :precision="6" style="width: 100%" />
<a-input-number
v-model:value="formData.lttd"
placeholder="请输入"
:precision="6"
style="width: 100%"
/>
</a-form-item>
</a-col>
<a-col :span="12">
@ -86,7 +97,8 @@
:key="item.value"
:label="item.label"
:value="item.value"
>{{ item.label }}</a-select-option>
>{{ item.label }}</a-select-option
>
</a-select>
</a-form-item>
</a-col>
@ -105,7 +117,8 @@
:key="item.value"
:label="item.label"
:value="item.value"
>{{ item.label }}</a-select-option>
>{{ item.label }}</a-select-option
>
</a-select>
</a-form-item>
</a-col>
@ -120,6 +133,18 @@
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="监测方式" name="mway">
<a-select
v-model:value="formData.mway"
placeholder="请选择监测方式"
allow-clear
>
<a-select-option :value="1">人工</a-select-option>
<a-select-option :value="2">自动</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="类别" name="dtinType">
<a-select
@ -147,19 +172,8 @@
:key="item.value"
:label="item.label"
:value="item.value"
>{{ item.label }}</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="监测方式" name="mway">
<a-select
v-model:value="formData.mway"
placeholder="请选择监测方式"
allow-clear
>
<a-select-option :value="1">人工</a-select-option>
<a-select-option :value="2">自动</a-select-option>
>{{ item.label }}</a-select-option
>
</a-select>
</a-form-item>
</a-col>
@ -325,7 +339,7 @@ watch(
continue;
const isSelect = !!selectOptionsMap[key];
const oldDisplay = isSelect
? (originalLabels.value[key] ?? resolveSelectLabel(key, oldNorm))
? originalLabels.value[key] ?? resolveSelectLabel(key, oldNorm)
: oldNorm === null
? '空'
: String(oldNorm);
@ -390,27 +404,27 @@ watch(
);
// record code
watch(
[baseNameOptions, engInfoOptions, sttpOptions, wwqtgOptions],
() => {
const original = originalRecord.value;
if (!original || Object.keys(original).length === 0) return;
const labels: Record<string, string> = {};
for (const key in original) {
if (selectOptionsMap[key]) {
labels[key] = resolveOriginalLabel(key);
}
watch([baseNameOptions, engInfoOptions, sttpOptions, wwqtgOptions], () => {
const original = originalRecord.value;
if (!original || Object.keys(original).length === 0) return;
const labels: Record<string, string> = {};
for (const key in original) {
if (selectOptionsMap[key]) {
labels[key] = resolveOriginalLabel(key);
}
originalLabels.value = labels;
}
);
originalLabels.value = labels;
});
const loadEngOptions = async (baseId?: string) => {
engLoading.value = true;
try {
const params = baseId ? { baseId } : {};
const res = await getEngInfoDropdown(params);
engInfoOptions.value = (res.data || []).map((item: any) => ({ label: item.ennm, value: item.stcd }));
engInfoOptions.value = (res.data || []).map((item: any) => ({
label: item.ennm,
value: item.stcd
}));
} catch (error) {
console.error('获取电站列表失败:', error);
} finally {
@ -451,14 +465,17 @@ const loadDropdownData = () => {
// store computed
};
watch(() => formData.value?.baseId, (newBaseId) => {
// record record watch
if (isInitLoading.value) {
return;
watch(
() => formData.value?.baseId,
newBaseId => {
// record record watch
if (isInitLoading.value) {
return;
}
formData.value.rstcd = undefined;
loadEngOptions(newBaseId || undefined);
}
formData.value.rstcd = undefined;
loadEngOptions(newBaseId || undefined);
});
);
watch(
() => props.open,

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -87,7 +87,7 @@ const columns = ref<any[]>([
title: '水质站站码',
dataIndex: 'stcd',
visible: true,
width: 150,
width: 180,
fixed: 'left',
ellipsis: true
},

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -99,7 +99,7 @@ const columns = ref<any[]>([
title: '设施类型',
dataIndex: 'sttpName',
visible: true,
width: 100,
width: 160,
ellipsis: true
},
{
@ -107,7 +107,7 @@ const columns = ref<any[]>([
title: '站址',
dataIndex: 'stlc',
visible: true,
width: 160,
width: 180,
ellipsis: true
},
{

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -10,7 +10,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -3,7 +3,7 @@
<template #actions>
<a-button @click="hideBtn">{{ isHide ? '展开' : '隐藏' }}</a-button>
<a-button type="primary" @click="handleAdd">新增</a-button>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
</template>
</BasicSearch>
</template>

View File

@ -57,7 +57,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button danger :disabled="!selectedCount" @click="batchDelete"
>批量删除</a-button
>

View File

@ -59,7 +59,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button :loading="exportLoading" @click="exportBtn">导出</a-button>
</template>
</BasicSearch>

View File

@ -80,7 +80,7 @@ const tableScrollY = ref<string | number>(0);
const currentSearchParams = ref<any>({});
const exportLoading = ref(false);
//
//
const operationLogVisible = ref(false);
// TODO:
const operationTableName = 'SD_RPIMNFISH_R';
@ -236,7 +236,7 @@ const initTable = (values: any) => {
tableRef.value.getList(params);
};
//
//
const handleSeeEdit = () => {
operationLogVisible.value = true;
};

View File

@ -63,7 +63,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button
v-if="showBatchDelete"
danger

View File

@ -601,7 +601,7 @@ const handleBatchDelete = () => {
);
};
//
//
const handleSeeEdit = () => {
operationLogVisible.value = true;
};

View File

@ -61,7 +61,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button
v-if="showBatchDelete"
danger

View File

@ -346,7 +346,7 @@ const handleBatchDelete = () => {
);
};
//
//
const handleSeeEdit = () => {
operationLogVisible.value = true;
};

View File

@ -61,7 +61,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button
v-if="showBatchDelete"
danger

View File

@ -310,7 +310,7 @@ const handleBatchDelete = () => {
);
};
//
//
const handleSeeEdit = () => {
operationLogVisible.value = true;
};

View File

@ -63,7 +63,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button danger :disabled="!selectedCount" @click="batchDelete"
>批量删除</a-button
>

View File

@ -501,7 +501,7 @@ const handleBatchDelete = () => {
);
};
//
//
const handleSeeEdit = () => {
operationLogVisible.value = true;
};

View File

@ -63,7 +63,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button
v-if="showBatchDelete"
danger

View File

@ -503,7 +503,7 @@ const handleEditSuccess = () => {
initTable(currentSearchParams.value);
};
//
//
const handleSeeEdit = () => {
operationLogVisible.value = true;
};

View File

@ -57,7 +57,7 @@
</a-form-item-rest>
</template>
<template #actions>
<a-button type="primary" @click="seeEdit">查看修改</a-button>
<a-button type="primary" @click="seeEdit">查看操作日志</a-button>
<a-button danger :disabled="!selectedCount" @click="batchDelete"
>批量删除</a-button
>

View File

@ -14,7 +14,7 @@ VITE_APP_BASE_URL = 'http://localhost:8093'
VITE_APP_BASE_URL = 'http://10.84.111.235:8093'
# 李林
# VITE_APP_BASE_URL = 'http://10.84.111.25:8093'
# VITE_APP_BASE_URL = 'http://10.84.111.211:8093'
## 开发环境 附件服务地址
VITE_APP_ATTACHMENT_URL = 'https://211.99.26.225:12125'
## 生产环境 附件服务地址

View File

@ -186,13 +186,13 @@ const moreSelectConfig = computed(() => ({
minWidth: '240px'
}));
/** 日期范围选择器isShow 控制整个组件显隐,隐藏时仍使用 tagValue 计算的默认区间 */
/** 日期范围选择器:自动站按天(YYYY-MM-DD),人工站按年(YYYY)isShow 控制整个组件显隐,隐藏时仍使用 tagValue 计算的默认区间 */
const scopeDateConfig = computed(() => ({
show: moduleConfig.value?.isShow !== 0,
value: [defaultDateRange.value[0], defaultDateRange.value[1]] as any,
picker: 'date' as const,
format: 'YYYY-MM-DD',
width: '215px'
value: [dateRange.value[0], dateRange.value[1]] as any,
picker: (mway.value === '1' ? 'year' : 'date') as const,
format: mway.value === '1' ? 'YYYY' : 'YYYY-MM-DD',
width: mway.value === '1' ? '170px' : '215px'
}));
// ==================== ====================
@ -216,6 +216,7 @@ const buildOption = () => {
indicators.value.forEach((ind, index) => {
const name = ind.unit ? `${ind.name}(${ind.unit})` : ind.name;
const isManual = mway.value === '1';
legendData.push(name);
const selIdx = selected.value.indexOf(name);
@ -253,16 +254,20 @@ const buildOption = () => {
seriesList.push({
name,
type: 'line',
type: isManual ? 'bar' : 'line',
yAxisIndex: index,
smooth: true,
showSymbol: (params: any) => {
const iv = Math.max(0, Math.ceil(xData.value.length / 9) - 1);
return iv === 0 ? true : params.dataIndex % (iv + 1) === 0;
},
symbol: 'circle',
symbolSize: 2,
connectNulls: true,
...(isManual
? {}
: {
smooth: true,
showSymbol: (params: any) => {
const iv = Math.max(0, Math.ceil(xData.value.length / 9) - 1);
return iv === 0 ? true : params.dataIndex % (iv + 1) === 0;
},
symbol: 'circle',
symbolSize: 2,
connectNulls: true
}),
itemStyle: { color: yAxisColor },
data: echartsData.value[index] || []
});
@ -299,7 +304,9 @@ const buildOption = () => {
if (!params?.length) return '';
const item = rawDataList.value[params[0].dataIndex];
const fullTime = item?.tm
? dayjs(item.tm).format('YYYY-MM-DD HH:mm')
? dayjs(item.tm).format(
mway.value === '1' ? 'YYYY' : 'YYYY-MM-DD HH:mm'
)
: params[0].name;
let html = `<div style="margin-bottom:4px">${fullTime}</div>`;
params.forEach((p: any) => {
@ -588,7 +595,9 @@ const fetchChartData = async () => {
}));
xData.value = dataSource.map((item: any) =>
item.name ? dayjs(item.name).format('HH:mm') : '--'
item.name
? dayjs(item.name).format(mway.value === '1' ? 'YYYY' : 'HH:mm')
: '--'
);
// : echartsData[i] = i
@ -632,19 +641,25 @@ const fetchChartData = async () => {
// ==================== ====================
/** SidePanelItem @update-values */
const onUpdateValues = (payload: any) => {
const onUpdateValues = async (payload: any) => {
// value selectedNodeExtra
if (payload.moreSelect) {
const node = payload.selectedNodeExtra || {};
const isSameStation = payload.moreSelect === selectValue.value?.id;
selectValue.value = {
value: node.title || selectValue.value?.value,
id: payload.moreSelect,
opt: node.title ? { ...node } : selectValue.value?.opt
};
fetchChartData();
// fetchStationList
if (!isSameStation) {
// moreSelect v-model
await nextTick();
fetchChartData();
}
}
//
//
if (
payload.scopeDate &&
Array.isArray(payload.scopeDate) &&
@ -653,8 +668,18 @@ const onUpdateValues = (payload: any) => {
const d0 = dayjs(payload.scopeDate[0]);
const d1 = dayjs(payload.scopeDate[1]);
if (d0.isValid() && d1.isValid()) {
dateRange.value = [d0, d1];
fetchChartData();
const newRange: [Dayjs, Dayjs] =
mway.value === '1'
? [d0.startOf('year'), d1.endOf('year')]
: [d0, d1];
//
if (
!newRange[0].isSame(dateRange.value[0]) ||
!newRange[1].isSame(dateRange.value[1])
) {
dateRange.value = newRange;
fetchChartData();
}
}
}
};
@ -677,9 +702,18 @@ watch(stcd, newStcd => {
}
});
/** 监听 mway → 刷新测站列表 + 重建图表 */
/** 监听 mway → 重置日期范围 + 刷新测站列表 + 重建图表 */
watch(mway, () => {
destroyChart();
// 3
if (mway.value === '1') {
dateRange.value = [
dayjs().subtract(2, 'year').startOf('year'),
dayjs().endOf('year')
];
} else {
dateRange.value = [defaultDateRange.value[0], defaultDateRange.value[1]];
}
nextTick(() => {
fetchStationList();
});

View File

@ -21,7 +21,6 @@
v-model:value="ttpwr.max"
:min="0"
placeholder="最大装机"
@change="handleChange"
/>
</a-form-item-rest>
</template>
@ -242,12 +241,6 @@ const searchList: any = computed(() => [
}
]);
const handleChange = (value: any) => {
if (ttpwr.value.min > value) {
message.warning('最小装机容量不能大于最大装机容量');
ttpwr.value.max = null;
}
};
const handleRangeClick = (value: any) => {
jcdt.value = {
min: dayjs(value.value[0]).format('YYYY-MM-DD HH:mm:ss'),
@ -262,6 +255,15 @@ const disabledEndDate = (current: Dayjs) => {
};
const onSearchFinish = (values: any) => {
if (
ttpwr.value.min != null &&
ttpwr.value.max != null &&
ttpwr.value.min > ttpwr.value.max
) {
message.warning('最小装机容量不能大于最大装机容量');
ttpwr.value.max = null;
return;
}
values.ttpwr = ttpwr.value;
if (jcdt.value?.min) {
values.jcdt.min = dayjs(jcdt.value.min).format('YYYY-MM-DD') + ' 00:00:00';

View File

@ -10,7 +10,7 @@
<a-form
ref="formRef"
:model="formData"
:label-col="{ span: 8 }"
:label-col="{ span: 7 }"
:wrapper-col="{ span: 16 }"
:rules="formRules"
class="max-h-[70vh] overflow-y-auto pr-4"
@ -19,7 +19,7 @@
<!-- ===== 概述 ===== -->
<a-col :span="24"><div class="form-group-title">概述</div></a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="电站名称" name="ennm">
<a-input
v-model:value="formData.ennm"
@ -28,7 +28,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="基地" name="baseId">
<a-select
v-model:value="formData.baseId"
@ -48,7 +48,7 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="所在位置" name="addvcd">
<a-select
v-model:value="formData.addvcd"
@ -67,7 +67,7 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="详细地址" name="stlc">
<a-input
v-model:value="formData.stlc"
@ -75,7 +75,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="所在河段" name="reachcd">
<a-select
v-model:value="formData.reachcd"
@ -95,7 +95,7 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="所属公司" name="hycd">
<a-select
v-model:value="formData.hycd"
@ -114,7 +114,7 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="所属集团" name="topHycd">
<a-select
v-model:value="formData.topHycd"
@ -133,7 +133,7 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="建设状态" name="bldsttCode">
<a-select
v-model:value="formData.bldsttCode"
@ -149,7 +149,7 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="建设时间" name="jcdt">
<a-date-picker
v-model:value="formData.jcdt"
@ -160,7 +160,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="第一台机组投产时间" name="piodt">
<a-date-picker
v-model:value="formData.piodt"
@ -171,7 +171,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="全部机组投产时间" name="aiodt">
<a-date-picker
v-model:value="formData.aiodt"
@ -186,10 +186,10 @@
<!-- ===== 水文 ===== -->
<a-col :span="24"><div class="form-group-title">水文</div></a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="坝址以上流域面积(km²)"
:labelCol="{ span: 10 }"
name="nrupar"
>
<a-input-number
@ -200,10 +200,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="距河源距离(km)"
:labelCol="{ span: 10 }"
name="dstcrvr"
>
<a-input-number
@ -214,10 +214,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="多年平均降雨量(mm)"
:labelCol="{ span: 10 }"
name="avyrp"
>
<a-input-number
@ -228,10 +228,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="多年平均年径流量(亿m³)"
:labelCol="{ span: 10 }"
name="avw"
>
<a-input-number
@ -241,10 +241,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq"
>
<a-input-number
@ -254,10 +254,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="1月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq01"
>
<a-input-number
@ -268,10 +268,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="2月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq02"
>
<a-input-number
@ -282,10 +282,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="3月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq03"
>
<a-input-number
@ -296,10 +296,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="4月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq04"
>
<a-input-number
@ -310,10 +310,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="5月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq05"
>
<a-input-number
@ -324,10 +324,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="6月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq06"
>
<a-input-number
@ -338,10 +338,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="7月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq07"
>
<a-input-number
@ -352,10 +352,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="8月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq08"
>
<a-input-number
@ -366,10 +366,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="9月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq09"
>
<a-input-number
@ -380,10 +380,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="10月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq10"
>
<a-input-number
@ -394,10 +394,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="11月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq11"
>
<a-input-number
@ -408,10 +408,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="12月多年平均流量(m³/s)"
:labelCol="{ span: 10 }"
name="avq12"
>
<a-input-number
@ -422,10 +422,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="实测最大流量(m³/s)"
:labelCol="{ span: 10 }"
name="obmxq"
>
<a-input-number
@ -435,10 +435,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="实测最小流量(m³/s)"
:labelCol="{ span: 10 }"
name="obmnq"
>
<a-input-number
@ -448,10 +448,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="调查历史最大流量(m³/s)"
:labelCol="{ span: 10 }"
name="hmxq"
>
<a-input-number
@ -461,10 +461,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="设计入库洪水流量(m³/s)"
:labelCol="{ span: 10 }"
name="dsnfqfrq"
>
<a-input-number
@ -474,19 +474,19 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="设计洪水重现期(年)"
:labelCol="{ span: 10 }"
name="dsrcin"
>
<a-input v-model:value="formData.dsrcin" placeholder="请输入" />
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="校核入库洪水流量(m³/s)"
:labelCol="{ span: 10 }"
name="ckfqfqr"
>
<a-input-number
@ -496,19 +496,19 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="校核洪水重现期(年)"
:labelCol="{ span: 10 }"
name="chrcin"
>
<a-input v-model:value="formData.chrcin" placeholder="请输入" />
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="实测最大洪量(三天)(亿m³)"
:labelCol="{ span: 10 }"
name="obmxw3"
>
<a-input-number
@ -518,10 +518,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="设计洪量(三天)(亿m³)"
:labelCol="{ span: 10 }"
name="dsw3"
>
<a-input-number
@ -531,10 +531,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="校核洪量(三天)(亿m³)"
:labelCol="{ span: 10 }"
name="ckw3"
>
<a-input-number
@ -544,10 +544,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="多年平均输沙量(万t)"
:labelCol="{ span: 10 }"
name="avsd"
>
<a-input-number
@ -557,10 +557,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="多年平均含沙量(kg/m³)"
:labelCol="{ span: 10 }"
name="avs"
>
<a-input-number
@ -570,10 +570,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="实测最大含沙量(kg/m³)"
:labelCol="{ span: 10 }"
name="obmxs"
>
<a-input-number
@ -587,10 +587,10 @@
<!-- ===== 水库 ===== -->
<a-col :span="24"><div class="form-group-title">水库</div></a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="校核洪水位(m)"
:labelCol="{ span: 10 }"
name="ckflz"
>
<a-input-number
@ -601,10 +601,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="设计洪水位(m)"
:labelCol="{ span: 10 }"
name="dsflz"
>
<a-input-number
@ -615,10 +615,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="正常蓄水位(m)"
:labelCol="{ span: 10 }"
name="normz"
>
<a-input-number
@ -629,10 +629,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="防洪高水位(m)"
:labelCol="{ span: 10 }"
name="uzfc"
>
<a-input-number
@ -643,10 +643,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="防洪限制水位(m)"
:labelCol="{ span: 10 }"
name="fsltdz"
>
<a-input-number
@ -657,10 +657,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="年消落水位(m)"
:labelCol="{ span: 10 }"
name="ydownz"
>
<a-input-number
@ -671,8 +671,8 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="死水位(m)" :labelCol="{ span: 10 }" name="ddz">
<a-col :span="12">
<a-form-item label="死水位(m)" name="ddz">
<a-input-number
v-model:value="formData.ddz"
placeholder="请输入"
@ -681,11 +681,11 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="正常蓄水位水库面积(km²)"
name="nrzar"
:labelCol="{ span: 10 }"
>
<a-input-number
v-model:value="formData.nrzar"
@ -695,10 +695,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="回水长度(km)"
:labelCol="{ span: 10 }"
name="bcklen"
>
<a-input-number
@ -709,10 +709,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="总库容(亿m³)"
:labelCol="{ span: 10 }"
name="ttcp"
>
<a-input-number
@ -723,10 +723,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="正常蓄水位以下库容(亿m³)"
:labelCol="{ span: 10 }"
name="nmzcp"
>
<a-input-number
@ -736,10 +736,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="防洪库容(亿m³)"
:labelCol="{ span: 10 }"
name="fldcp"
>
<a-input-number
@ -749,10 +749,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="调节库容(亿m³)"
:labelCol="{ span: 10 }"
name="actcp"
>
<a-input-number
@ -762,10 +762,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="死库容(亿m³)"
:labelCol="{ span: 10 }"
name="ddcp"
>
<a-input-number
@ -775,8 +775,8 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="库容系数(%)" :labelCol="{ span: 10 }" name="cpsc">
<a-col :span="12">
<a-form-item label="库容系数(%)" name="cpsc">
<a-input-number
v-model:value="formData.cpsc"
placeholder="请输入"
@ -784,8 +784,8 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="调节性能" :labelCol="{ span: 10 }" name="rgcp">
<a-col :span="12">
<a-form-item label="调节性能" name="rgcp">
<a-select
v-model:value="formData.rgcp"
placeholder="请选择调节性能"
@ -806,10 +806,10 @@
><div class="form-group-title">下泄流量及相应下游水位</div></a-col
>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="设计洪水位时最大下泄流量(m³/s)"
:labelCol="{ span: 12 }"
name="dsflzmxq"
>
<a-input-number
@ -819,23 +819,23 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="设计洪水位时最大下泄流量相应下游水位(m)"
:labelCol="{ span: 14 }"
:labelCol="{ span: 9.5 }"
name="dsflzxyz"
>
<a-input-number
v-model:value="formData.dsflzxyz"
placeholder="请输入"
style="width: 100%"
style="width: 93%"
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="校核洪水位时最大下泄流量(m³/s)"
:labelCol="{ span: 12 }"
name="ckflzmxq"
>
<a-input-number
@ -845,23 +845,23 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="校核洪水位时最大下泄流量相应下游水位(m)"
:labelCol="{ span: 14 }"
:labelCol="{ span: 9.5 }"
name="ckflzxyz"
>
<a-input-number
v-model:value="formData.ckflzxyz"
placeholder="请输入"
style="width: 100%"
style="width: 93%"
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="枯水期调节流量(m³/s)"
:labelCol="{ span: 12 }"
name="ksqadjq"
>
<a-input-number
@ -871,10 +871,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="枯水期调节流量相应下游水位(m)"
:labelCol="{ span: 12 }"
name="ksqxyz"
>
<a-input-number
@ -884,10 +884,10 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="发电最大引用流量(m³/s)"
:labelCol="{ span: 12 }"
name="gemaxrq"
>
<a-input-number
@ -897,16 +897,16 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item
label="发电最大引用流量相应下游水位(m)"
:labelCol="{ span: 12 }"
:labelCol="{ span: 9.5 }"
name="mxgeqxyz"
>
<a-input-number
v-model:value="formData.mxgeqxyz"
placeholder="请输入"
style="width: 100%"
style="width: 96%"
/>
</a-form-item>
</a-col>
@ -916,7 +916,7 @@
><div class="form-group-title">工程效益指标</div></a-col
>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="装机容量(万kW)" name="ttpwr">
<a-input-number
v-model:value="formData.ttpwr"
@ -926,7 +926,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="装机台数(台)" name="gncnt">
<a-input-number
v-model:value="formData.gncnt"
@ -935,12 +935,12 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="容量构成(台*MW)" name="gntp">
<a-input v-model:value="formData.gntp" placeholder="请输入" />
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="保证出力(MW)" name="grntpwr">
<a-input-number
v-model:value="formData.grntpwr"
@ -950,7 +950,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="多年平均年发电量(亿kW·h)" name="yrge">
<a-input-number
v-model:value="formData.yrge"
@ -959,7 +959,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="年利用小时数(h)" name="ushr">
<a-input-number
v-model:value="formData.ushr"
@ -968,7 +968,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="机组综合出力系数" name="k">
<a-input-number
v-model:value="formData.k"
@ -981,7 +981,7 @@
<!-- ===== 大坝 ===== -->
<a-col :span="24"><div class="form-group-title">大坝</div></a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="坝型" name="dmtp">
<a-input
v-model:value="formData.dmtp"
@ -990,7 +990,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="坝顶高程(m)" name="dmcrel">
<a-input-number
v-model:value="formData.dmcrel"
@ -1000,7 +1000,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="最大坝高(m)" name="mxdmhg">
<a-input-number
v-model:value="formData.mxdmhg"
@ -1010,7 +1010,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="坝顶长度(m)" name="dmlen">
<a-input-number
v-model:value="formData.dmlen"
@ -1024,7 +1024,7 @@
<!-- ===== 其他 ===== -->
<a-col :span="24"><div class="form-group-title">其他</div></a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="单独年发电量(亿kW·h)" name="sgyge">
<a-input-number
v-model:value="formData.sgyge"
@ -1033,7 +1033,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="联合年发电量(亿kW·h)" name="unyge">
<a-input-number
v-model:value="formData.unyge"
@ -1042,7 +1042,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="利用落差(m)" name="gap">
<a-input-number
v-model:value="formData.gap"
@ -1051,7 +1051,7 @@
/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item label="开发方式" name="dvtp">
<a-select
v-model:value="formData.dvtp"
@ -1100,7 +1100,7 @@
v-model:value="sourceValue"
placeholder="请输入修改依据"
:rows="5"
:maxlength="500"
:maxlength="150"
show-count
/>
</a-form-item>

View File

@ -134,9 +134,9 @@ const hycdLoading = ref(false);
const isEdit = ref(true);
const dvtpList = ref<any[]>([
{ label: '堤坝式', value: '0' },
{ label: '引水式', value: '1' },
{ label: '混合式', value: '2' }
{ label: '堤坝式', value: '1' },
{ label: '引水式', value: '2' },
{ label: '混合式', value: '3' }
]);
//
const dateRender = ({ text }: { text: string }) => {
@ -144,7 +144,12 @@ const dateRender = ({ text }: { text: string }) => {
const date = dayjs(text);
return date.isValid() ? date.format('YYYY-MM-DD') : '-';
};
// ×1010
const ttpwrRender = ({ text }: { text: any }) => {
if (text === null || text === undefined || text === '-') return '-';
const num = Number(text);
return isNaN(num) ? text : (num / 10).toFixed(2);
};
//
const columnMetaMap: Record<string, any> = {
stnm: { width: 150, fixed: 'left', sort: true, ellipsis: true },
@ -211,7 +216,7 @@ const columnMetaMap: Record<string, any> = {
ksqxyz: { width: 250, sort: true },
gemaxrq: { width: 190, sort: true },
mxgeqxyz: { width: 260, sort: true },
ttpwr: { width: 120, sort: true, ellipsis: true },
ttpwr: { width: 120, sort: true, ellipsis: true,customRender: ttpwrRender },
gncnt: { width: 130, sort: true, ellipsis: true },
gntp: { width: 150, sort: true, ellipsis: true },
grntpwr: { width: 130, sort: true, ellipsis: true },