diff --git a/src/service/apiurl.js b/src/service/apiurl.js
index bf2f3db..435b23c 100644
--- a/src/service/apiurl.js
+++ b/src/service/apiurl.js
@@ -106,12 +106,17 @@ const apiurl = {
shuikuBasicinfo: {
detail: service + "/attResBase/list",
update: service + "/attResBase/update",
- getFile: service + "/attResBase/file/get"
+ getFile: service + "/attResBase/file/get",
+ mangeFile: service + '/screen/manageHouseImg/get',
},
buildInfo: {
detail: service + "/attResBuilding/info",
update: service + "/attResBuilding/update",
},
+ skhj: {
+ detail: service + '/reservoirDemarcationInfo/get',
+ list: service + '/propertyCertificate/list',
+ },
kr: {
list: service + "/stZvarlB/list",
save: service + "/stZvarlB/insert",
diff --git a/src/views/Home/MapCtrl/Pops/QSYDW.js b/src/views/Home/MapCtrl/Pops/QSYDW.js
index 5d71888..9ec345c 100644
--- a/src/views/Home/MapCtrl/Pops/QSYDW.js
+++ b/src/views/Home/MapCtrl/Pops/QSYDW.js
@@ -6,7 +6,7 @@ import moment from "moment"
function QSYDW({ id, data, dispatch }) {
console.log(data);
- const url = "http://223.75.53.141:9100/gs-hsz"
+ const url = "http://223.75.53.141:9100/gs-ss"
const width = 500;
const closePop = () => {
diff --git a/src/views/Home/MapCtrl/Pops/YHJMH.js b/src/views/Home/MapCtrl/Pops/YHJMH.js
index a58ee5b..6b925a5 100644
--- a/src/views/Home/MapCtrl/Pops/YHJMH.js
+++ b/src/views/Home/MapCtrl/Pops/YHJMH.js
@@ -6,7 +6,7 @@ import moment from "moment"
function YHJMH({ id, data, dispatch }) {
console.log(data);
- const url = "http://223.75.53.141:9100/gs-hsz"
+ const url = "http://223.75.53.141:9100/gs-ss"
const width = 500;
const closePop = () => {
dispatch.runtime.closeFeaturePop(id);
diff --git a/src/views/Home/components/Business/SiGuan/components/ReservoirDemarcation/index.less b/src/views/Home/components/Business/SiGuan/components/ReservoirDemarcation/index.less
index 7ae1b41..31a39aa 100644
--- a/src/views/Home/components/Business/SiGuan/components/ReservoirDemarcation/index.less
+++ b/src/views/Home/components/Business/SiGuan/components/ReservoirDemarcation/index.less
@@ -82,11 +82,14 @@
.label {
font-size: 14px;
color: #fff;
+ white-space: nowrap;
}
.value {
font-size: 14px;
color: #00D8FF;
+ white-space: nowrap;
+
}
}
}
diff --git a/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/Demarcation.js b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/Demarcation.js
new file mode 100644
index 0000000..387edb3
--- /dev/null
+++ b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/Demarcation.js
@@ -0,0 +1,218 @@
+import React, { useState, useEffect } from 'react';
+import { Descriptions,Image,Table,Button } from 'antd';
+import { PaperClipOutlined} from '@ant-design/icons';
+import apiurl from '@/service/apiurl';
+import { httpget } from '@/utils/request';
+import { download } from '@/utils/tools';
+import PdfView from '@/views/Home/components/UI/PdfView';
+const MainBuildingInfo = () => {
+ // 不动产
+ const columns = [
+ { title: '序号', key: 'id', dataIndex: 'id', width: 60, align: "center", render: (v, r, i) => {i+ 1} },
+ { title: '名称', key: 'name', dataIndex: 'name' },
+ { title: '面积(万亩)', key: 'area', dataIndex: 'area' },
+ { title: '描述', key: 'area', dataIndex: 'area' },
+ {
+ title: '附件', key: 'files', dataIndex: 'files',
+ render: (v, r) =>
+ },
+ ]
+ const [data, setData] = useState({})
+ const [managementFiles, setManagementFiles] = useState([]);
+ const [protectionFiles, setProtectionFiles] = useState([]);
+ const [propertyFiles, setPropertyFiles] = useState([]);
+ const [propertyData, setPropertyData] = useState([])
+ const [pdfInfo, setPdfInfo] = useState({ visible: false, title: '', fileId: '' });
+ const [imagePreview, setImagePreview] = useState({ visible: false, src: '' });
+ const commonLabelStyle = {
+ width: '200px',
+ textAlign: 'right',
+ };
+
+ const descriptionStyle = {
+ marginBottom: '20px',
+ };
+
+ const getDescriptionsProps = (title) => ({
+ title: {title},
+ column: 3,
+ bordered: true,
+ size: 'small',
+ className: 'engineering-descriptions',
+ labelStyle: commonLabelStyle,
+ style: descriptionStyle,
+ });
+
+ const getData = async () => {
+ try {
+ const res = await httpget(apiurl.sq.qys.projectAndWater.skhj.detail)
+ if (res.code == 200) {
+ // 处理三个附件字段
+ const processFiles = (files) => {
+ if (files && Array.isArray(files)) {
+ return files.map(file => ({
+ uid: file.fileId,
+ name: file.fileName,
+ status: 'done',
+ url: `/gunshiApp/ss/reservoirDemarcationInfo/file/download/${file.fileId}`,
+ response: { data: file }
+ }));
+ }
+ return [];
+ };
+ setManagementFiles(processFiles(res.data.managementScopeAreaFiles));
+ setProtectionFiles(processFiles(res.data.protectionScopeFiles));
+ setPropertyFiles(processFiles(res.data.propertyCertificateAreaFiles));
+ setData(res.data)
+ }
+ } catch (error) {
+ console.log(error);
+ }
+ }
+
+ const handlePreviewFile = (file) => {
+ const fileData = file.response?.data || {
+ fileName: file.name,
+ fileId: file.uid
+ };
+ handlePreview({ files: [fileData] });
+ }
+
+ const handlePreview = (item) => {
+ const file = item?.files?.[0];
+ if (!file || !file.fileName) return;
+ const fileName = file.fileName;
+ const fileId = file.fileId;
+ const extension = fileName.split('.').pop().toLowerCase();
+ const downloadUrl = `/gunshiApp/ss/propertyCertificate/file/download/${fileId}`;
+ if (['jpg', 'jpeg', 'png', 'gif', 'bmp'].includes(extension)) {
+ setImagePreview({
+ visible: true,
+ src: downloadUrl
+ });
+ } else if (extension === 'pdf') {
+ setPdfInfo({
+ visible: true,
+ title: fileName,
+ fileId: fileId
+ });
+ } else {
+ download(downloadUrl)
+ }
+ };
+ const getPropertyList = async () => {
+ try {
+ const res = await httpget(apiurl.sq.qys.projectAndWater.skhj.list)
+ if (res.code == 200) {
+ setPropertyData(res.data)
+ }
+ } catch (error) {
+ console.log(error);
+ }
+ }
+
+ useEffect(() => {
+ getData()
+ getPropertyList()
+ }, [])
+
+
+ return (
+
+
+ {data.managementScopeArea || '-'}
+ {data.managementScopeAreaExplain || '-'}
+
+ {managementFiles.map(file => (
+
+
+
{
+ handlePreviewFile(file)
+ }}
+ >
+ {file.name}
+
+
+
+ ))}
+
+ {data.protectionScopeArea || '-'}
+ {data.protectionScopeAreaExplain || '-'}
+
+ {protectionFiles.map(file => (
+
+
+
{
+ handlePreviewFile(file)
+ }}
+ >
+ {file.name}
+
+
+
+ ))}
+
+ {data.totalUseArea || '-'}
+ {data.totalUseAreaExplain || '-'}
+
+ {propertyFiles.map(file => (
+
+
+
{
+ handlePreviewFile(file)
+ }}
+ >
+ {file.name}
+
+
+
+ ))}
+
+
+
+
+
+ {/* PDF Viewer */}
+ {pdfInfo.visible && (
+
setPdfInfo({ ...pdfInfo, visible: false })}
+ title={pdfInfo.title}
+ fileId={pdfInfo.fileId}
+ url="/gunshiApp/ss/propertyCertificate/file/download/"
+ />
+ )}
+
+ {/* Image Preview */}
+
+ {
+ setImagePreview({ ...imagePreview, visible: value });
+ },
+ }}
+ />
+
+
+ );
+};
+
+export default MainBuildingInfo;
diff --git a/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/MainBuildingInfo.js b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/MainBuildingInfo.js
index 0ba2398..368b394 100644
--- a/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/MainBuildingInfo.js
+++ b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/MainBuildingInfo.js
@@ -32,58 +32,70 @@ const MainBuildingInfo = ({data={}}) => {
{/* 主坝 */}
{info.mainType || '-'}
+ {info.mainFoundation || '-'}
{info.mainCrestElevation || '-'}
{info.mainCrestLength || '-'}
{info.mainCrestWidth || '-'}
{info.mainMaxHeight || '-'}
+ {info.mainTopOfWaveBarrierElevation || '-'}
+ {info.mainFoundControlType || '-'}
{/* 副坝 */}
{info.auxType || '-'}
+ {info.auxFoundation || '-'}
{info.auxCrestElevation || '-'}
{info.auxCrestLength || '-'}
{info.auxCrestWidth || '-'}
{info.auxMaxHeight || '-'}
+ {info.auxHeartWallCrestElevation || '-'}
+ {info.auxFoundControlType || '-'}
{/* 溢洪道 */}
{info.spillwayType || '-'}
- {info.spillwayCrestType || '-'}
- {info.spillwayFoundation || '-'}
- {info.spillwayCrestElevation || '-'}
- {info.spillwayNetWidth || '-'}
+ {info.spillwayFoundation || '-'}
{info.spillwayEnergyDissipation || '-'}
- {info.spillwayCheckFloodDischarge || '-'}
- {info.spillwayDesignFloodDischarge || '-'}
- {info.spillwayScouringDischarge || '-'}
+ {info.spillwayInBottomElevation || '-'}
+ {info.spillwayBottomWidth || '-'}
+ {info.spillwayCanalDepth || '-'}
+ {info.spillwayMaxDischarge || '-'}
+ {info.spillwayZeroMaxDischarge || '-'}
- {/* 灌溉发电洞 */}
-
- {info.irrigationType || '-'}
- {info.irrigationLiningType || '-'}
- {info.irrigationFoundation || '-'}
- {info.irrigationInletElevation || '-'}
- {info.irrigationCrossSection || '-'}
- {info.irrigationLength || '-'}
- {info.irrigationDesignFlow || '-'}
- {info.irrigationGateType || '-'}
- {info.irrigationHoistType || '-'}
+
+
+ {info.mwaterType || '-'}
+ {info.mwaterCrossSection || '-'}
+ {info.mwaterInletElevation || '-'}
+ {info.mwaterLength || '-'}
+ {info.mwaterDesignFlow || '-'}
+ {info.mwaterLiningType || '-'}
- {/* 放空洞 */}
-
- {info.emptyingType || '-'}
- {info.emptyingLiningType || '-'}
- {info.emptyingFoundation || '-'}
- {info.emptyingInletElevation || '-'}
- {info.emptyingCrossSection || '-'}
- {info.emptyingLength || '-'}
- {info.emptyingDesignFlow || '-'}
- {info.emptyingGateType || '-'}
- {info.emptyingHoistType || '-'}
+
+
+ {info.awaterType || '-'}
+ {info.awaterFoundation || '-'}
+ {info.awaterCrossSection || '-'}
+ {info.awaterThick || '-'}
+ {info.awaterInletElevation || '-'}
+ {info.awaterLength || '-'}
+ {info.awaterMaxFlow || '-'}
+ {info.awaterLiningType || '-'}
+
+
+
+ {info.waterConveyanceType || '-'}
+ {info.waterConveyanceFoundation || '-'}
+ {info.waterConveyanceCrossSection || '-'}
+ {info.waterConveyanceThick || '-'}
+ {info.waterConveyanceInletElevation || '-'}
+ {info.waterConveyanceLength || '-'}
+ {info.waterConveyanceMaxFlow || '-'}
+ {info.waterConveyanceLiningType || '-'}
);
diff --git a/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/RunningInfo.js b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/RunningInfo.js
new file mode 100644
index 0000000..7f173d2
--- /dev/null
+++ b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/components/RunningInfo.js
@@ -0,0 +1,67 @@
+import React, { useState, useEffect } from 'react';
+import { Descriptions, Image } from 'antd';
+import { httpget } from '@/utils/request';
+import apiurl from '@/service/apiurl';
+import { config } from '@/config';
+const BasicInfo = ({ data }) => {
+ const [fileList, setFileList] = useState([]) //上传文件列表
+ // 获取管理用房图片
+ const getManagePic = async () => {
+ try {
+ const result = await httpget(apiurl.sq.qys.projectAndWater.shuikuBasicinfo.mangeFile)
+ if (result.code == 200) {
+ const files = result.data?.files || [];
+ if (files.length > 0) {
+ const newFiles = files.map(item => ({
+ filePath: item.filePath,
+ fileId: item.fileId
+ }))
+ setFileList(newFiles)
+ }
+ }
+ } catch (error) {
+ console.log(error);
+ }
+ }
+
+ useEffect(() => {
+ getManagePic()
+ }, [])
+
+ return (
+
+
+ {data?.competentDepartment}
+ {data?.managementUnit}
+ {data?.chargePerson}
+ {data?.regSn}
+ {data?.regTime}
+ {data?.issuingAuthority}
+ {data?.issuingTime}
+ {data?.managementHousing}
+
+
+ {
+ fileList.length > 0 ?
+ fileList.map(item =>
+
+
) : null
+ }
+
+
+
+
+ );
+};
+
+export default BasicInfo;
diff --git a/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/index.js b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/index.js
index c2a9217..e4389aa 100644
--- a/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/index.js
+++ b/src/views/Home/components/Business/SiQuan/components/ModalComponents/EngineeringElements/index.js
@@ -5,6 +5,8 @@ import BasicInfo from './components/BasicInfo';
import MainFeatureParams from './components/MainFeatureParams';
import MainBuildingInfo from './components/MainBuildingInfo';
import CapacityCurve from './components/CapacityCurve';
+import RunningInfo from './components/RunningInfo'
+import Demarcation from './components/Demarcation'
import XlCurve from './components/XlCurve';
import { httpget,httppost } from '@/utils/request';
import apiurl from '@/service/apiurl';
@@ -21,6 +23,8 @@ const EngineeringElements = ({ data }) => {
{ label: '工程基础信息', value: 'basic' },
{ label: '主要特征参数', value: 'params' },
{ label: '主要建筑物信息', value: 'buildings' },
+ { label: '运行管理信息', value: 'running' },
+ { label: '水库划界信息', value: 'demarcation' },
{ label: '水库库容曲线', value: 'capacity-curve' },
{ label: '水库泄流曲线', value: 'discharge-curve' },
];
@@ -73,6 +77,10 @@ const EngineeringElements = ({ data }) => {
return ;
case 'buildings':
return ;
+ case 'running':
+ return ;
+ case 'demarcation':
+ return ;
case 'capacity-curve':
return ;
case 'discharge-curve':