Hua vor 2 Monaten
Ursprung
Commit
4470e84d33

+ 13 - 13
ruoyi-admin/libs/geo-maven.txt

@@ -1,42 +1,42 @@
 
 
-mvn install:install-file -Dfile=D:\libs\gt-api-18.1.jar -DartifactId=gt-api -DgroupId=libs -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-api-18.1.jar -DartifactId=gt-api -DgroupId=libs -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-main-18.1.jar -DartifactId=gt-main -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-main-18.1.jar -DartifactId=gt-main -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-referencing-18.1.jar -DartifactId=gt-referencing -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-referencing-18.1.jar -DartifactId=gt-referencing -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-opengis-18.1.jar -DartifactId=gt-opengis -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-opengis-18.1.jar -DartifactId=gt-opengis -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-shapefile-18.1.jar -DartifactId=gt-shapefile -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-shapefile-18.1.jar -DartifactId=gt-shapefile -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-data-18.1.jar -DartifactId=gt-data -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-data-18.1.jar -DartifactId=gt-data -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-geojson-18.1.jar -DartifactId=gt-geojson -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-geojson-18.1.jar -DartifactId=gt-geojson -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-sample-data-18.1.jar -DartifactId=gt-sample-data -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-sample-data-18.1.jar -DartifactId=gt-sample-data -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-epsg-hsql-18.1.jar -DartifactId=gt-epsg-hsql -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-epsg-hsql-18.1.jar -DartifactId=gt-epsg-hsql -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-property-18.1.jar -DartifactId=gt-property -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-property-18.1.jar -DartifactId=gt-property -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\gt-metadata-18.1.jar -DartifactId=gt-metadata -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\gt-metadata-18.1.jar -DartifactId=gt-metadata -DgroupId=org.geotools -Dversion=18.1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\wContour.jar -DartifactId=wContour -DgroupId=wContour -Dversion=1 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\wContour.jar -DartifactId=wContour -DgroupId=wContour -Dversion=1 -Dpackaging=jar
 
 
-mvn install:install-file -Dfile=D:\libs\jsr-275-1.0-beta-2.jar -DartifactId=jsr-275-1.0-beta -DgroupId=jsr-275-1.0-beta -Dversion=2 -Dpackaging=jar
+mvn install:install-file -Dfile=D:\shanghaimoxing\sh-model-platform\ruoyi-admin\libs\jsr-275-1.0-beta-2.jar -DartifactId=jsr-275-1.0-beta -DgroupId=jsr-275-1.0-beta -Dversion=2 -Dpackaging=jar
 
 
 

+ 2 - 2
ruoyi-ui/.env.development

@@ -10,8 +10,8 @@ VITE_APP_BASE_Title = '/sh'
 # 若依管理系统/生产环境
 VITE_APP_BASE_API = '/sh-api'
 VITE_APP_WEBSOCKET_PATH = '/websocket'
-# VITE_DEV_PATH = 'http://localhost:8082'
-VITE_DEV_PATH = 'http://192.168.2.104:8082'
+VITE_DEV_PATH = 'http://localhost:8082'
+# VITE_DEV_PATH = 'http://192.168.2.104:8082'   
 VITE_WS_BASE_URL = 'localhost:8082'
 # 是否在打包时开启压缩,支持 gzip 和 brotli
 VITE_BUILD_COMPRESS = gzip

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
ruoyi-ui/src/assets/icons/svg/dev.svg


+ 1 - 0
ruoyi-ui/src/assets/icons/svg/guanli.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1763778594927" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="19262" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M129 199v241h241V199H129z m-30-60h301c16.569 0 30 13.431 30 30v301c0 16.569-13.431 30-30 30H99c-16.569 0-30-13.431-30-30V169c0-16.569 13.431-30 30-30z" fill="#1296db" p-id="19263"></path><path d="M129 656v241h241V656H129z m-30-60h301c16.569 0 30 13.431 30 30v301c0 16.569-13.431 30-30 30H99c-16.569 0-30-13.431-30-30V626c0-16.569 13.431-30 30-30zM706.537 149.202L536.276 319.463l170.261 170.261 170.261-170.261-170.261-170.261z m21.213-63.64L940.438 298.25c11.715 11.716 11.715 30.71 0 42.426L727.75 553.364c-11.716 11.715-30.71 11.715-42.426 0L472.636 340.676c-11.715-11.716-11.715-30.71 0-42.426L685.324 85.562c11.716-11.715 30.71-11.715 42.426 0z" fill="#1296db" p-id="19264"></path><path d="M587 656v241h239V656H587z m-30-60h299c16.569 0 30 13.431 30 30v301c0 16.569-13.431 30-30 30H557c-16.569 0-30-13.431-30-30V626c0-16.569 13.431-30 30-30z" fill="#1296db" p-id="19265"></path></svg>

+ 1 - 0
ruoyi-ui/src/assets/icons/svg/jiankong.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1763778721478" class="icon" viewBox="0 0 1026 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="28575" xmlns:xlink="http://www.w3.org/1999/xlink" width="200.390625" height="200"><path d="M1025.125612 715.070651c0-2.148896-0.409313-4.195463-1.125612-6.139702L1024 0 0 0l0 1023.897672 1023.897672 0L1023.897672 721.210353C1024.716299 719.266114 1025.125612 717.219546 1025.125612 715.070651zM989.822324 34.177676l0 663.804137L827.017887 697.981813l-78.997502-93.732787c-8.083941-9.618867-23.433197-7.469971-28.549615 3.990806l-91.890876 202.507845L492.097132 471.52913c-5.832717-14.530629-26.503048-14.223643-31.926451 0.511642L313.738783 874.805236 170.683721 704.223843c-3.274508-3.888478-7.981613-6.139702-13.098031-6.139702L34.177676 698.084141 34.177676 34.177676 989.822324 34.177676zM34.177676 989.822324 34.177676 732.159488l115.52873 0 156.97172 187.158589c8.493255 10.02818 24.661137 7.265314 29.163585-5.116419l141.213151-388.540821L610.593385 860.581593c5.525732 13.916658 25.172779 14.4283 31.41481 0.716299l97.31428-214.377935 66.718097 79.09983c3.274508 3.888478 7.981613 6.037374 12.995703 6.037374l170.78605 0 0 257.662836L34.177676 989.719996z" p-id="28576" fill="#1296db"></path><path d="M290.100929 204.759069l443.695813 0c9.41421 0 17.088838-7.674628 17.088838-17.088838s-7.674628-17.088838-17.088838-17.088838L290.100929 170.581393c-9.41421 0-17.088838 7.674628-17.088838 17.088838S280.686719 204.759069 290.100929 204.759069z" p-id="28577" fill="#1296db"></path><path d="M290.100929 341.265114l443.695813 0c9.41421 0 17.088838-7.674628 17.088838-17.088838 0-9.41421-7.674628-17.088838-17.088838-17.088838L290.100929 307.087439c-9.41421 0-17.088838 7.674628-17.088838 17.088838C273.012092 333.692815 280.686719 341.265114 290.100929 341.265114z" p-id="28578" fill="#1296db"></path></svg>

+ 1 - 0
ruoyi-ui/src/assets/icons/svg/pingjia.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1763778949683" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="33769" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M490.816 698.133333a21.354667 21.354667 0 0 1-4.906667 2.986667l-176.938666 78.442667c-50.133333 19.797333-89.109333-18.773333-70.549334-69.802667l0.917334-2.176 84.138666-170.090667a21.333333 21.333333 0 0 1 3.434667-5.013333c0.896-1.493333 1.984-2.88 3.264-4.16l422.378667-422.4a64 64 0 0 1 90.496 0l75.434666 75.434667a64 64 0 0 1 0 90.517333L496.106667 694.250667a21.333333 21.333333 0 0 1-5.290667 3.882666z m-130.24-139.413333l-82.432 166.656c-5.461333 15.829333-0.234667 20.586667 14.336 14.826667l172.928-76.650667-104.832-104.832z m135.530667 75.178667l316.8-316.778667-105.6-105.6-316.8 316.8 105.6 105.6z m346.944-346.944l45.269333-45.269334a21.333333 21.333333 0 0 0 0-30.165333L812.885333 136.106667a21.333333 21.333333 0 0 0-30.165333 0L737.472 181.333333l105.6 105.6zM896 454.272a21.333333 21.333333 0 0 1 42.666667 0V789.333333a149.333333 149.333333 0 0 1-149.333334 149.333334H234.666667a149.333333 149.333333 0 0 1-149.333334-149.333334V234.666667a149.333333 149.333333 0 0 1 149.333334-149.333334h338.496a21.333333 21.333333 0 1 1 0 42.666667H234.666667a106.666667 106.666667 0 0 0-106.666667 106.666667v554.666666a106.666667 106.666667 0 0 0 106.666667 106.666667h554.666666a106.666667 106.666667 0 0 0 106.666667-106.666667V454.272z" fill="#1296db" p-id="33770"></path></svg>

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
ruoyi-ui/src/assets/icons/svg/zhuce.svg


+ 251 - 89
ruoyi-ui/src/views/shouye.vue

@@ -1,97 +1,256 @@
 <template>
-    <div style="height: 100vh;background-color: #dcecef;">
-        <img style="position: absolute;left: 2%;top: 3%;width: 58%;z-index: 100;height: 6%;"  src="@/assets/上海水务首页图片包/项目标题1.png" alt="">
-    <el-carousel 
-    :interval="4000" 
-    height="auto"
-    arrow="always"
-    autoplay>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海城区洪涝仿真模型.png" alt="">
-      </el-carousel-item>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/风暴潮模型.png" alt="">
-      </el-carousel-item>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/黄浦江水系水文分析预报数值模拟模型.png"
-             alt="">
-      </el-carousel-item>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/内涝.jpg" alt="">
-      </el-carousel-item>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海城区洪涝仿真模型.png" alt="">
-      </el-carousel-item>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/苏州河水系水情预报模型.png" alt="">
-      </el-carousel-item>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海市中心城区排水系统模型.png" alt="">
-      </el-carousel-item>
-      <el-carousel-item style="height: 80vh">
-        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/温带风暴潮预报模型.png" alt="">
-      </el-carousel-item>
-    </el-carousel>
-  </div>
-  <div style="position: absolute;height: 30vh;z-index: 100;top: 70%;width: 100%;">
-    <div style="display: flex;width: 98%;margin-left: 1%;">
-      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back1"
-           @click="pushto('platform/componentReg')">
-        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型注册管理</div>
-        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
-             src="@/assets/上海水务首页图片包/模型注册.png" alt="">
-      </div>
-      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back2"
-           @click="pushto('register/edtiModel')">
-        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型服务管理</div>
-        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
-             src="@/assets/上海水务首页图片包/模型服务管理.png" alt="">
-      </div>
-      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back1"
-           @click="pushto('standardization/modelUsing')">
-        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型标准化开发</div>
-        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
-             src="@/assets/上海水务首页图片包/模型标准化.png" alt="">
-      </div>
-      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back2"
-           @click="pushto('datamonitor/model_operation_monitoring')">
-        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型监控管理</div>
-        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
-             src="@/assets/上海水务首页图片包/模型监控.png" alt="">
-      </div>
-      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back1"
-           @click="pushto('evaluate/score')">
-        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型评价管理</div>
-        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
-             src="@/assets/上海水务首页图片包/模型评价.png" alt="">
-      </div>
+    <div style="height: 100vh;background-color: white;">
+    <div style="width: 100%;height: 7vh;padding-top: 1%;display: flex;align-items: center;" class="back1">
+        <img style="position: absolute;left: 1%;top:1%;width: 58%;z-index: 100;height:5%;"  src="@/assets/上海水务首页图片包/项目标题1.png" alt="">
+        <!-- <div style="margin-left: 1%;color: white;font-size: 2rem;">上海市水务海洋数字孪生模型服务管理系统</div> -->
+    </div>
+    <div style="display: flex;width: 98%;margin-left: 1%;margin-top: 0.5%;background-color: #F5F5F5;">
+        <div style="height: 50vh;width: 20%;background-color: rgb(236, 245, 255);display: flex;flex-direction: column;justify-content: space-between;">
+            <div style="display: flex;align-items: center;width: 100%;;height: 10vh;margin-top: 1%;" class="menu-item" @click="pushto('platform/componentReg')">
+                <!-- <el-icon style="margin-left: 5%;font-size: 1.5rem;"><Folder /></el-icon>    -->
+                <svg-icon icon-class="zhuce" style="margin-left: 5%;font-size: 1.5rem;" />
+                <div style="font-size: 2rem;color: #707070;margin-left: 5%;">模型注册管理</div>
+            </div>
+            <div style="display: flex;align-items: center;width: 100%;;height: 10vh;margin-top: 1%;" class="menu-item" @click="pushto('register/edtiModel')">
+                <svg-icon icon-class="guanli" style="margin-left: 5%;font-size: 1.5rem;" />
+                <div style="font-size: 2rem;color: #707070;margin-left: 5%;">模型服务管理</div>
+            </div>
+            <div style="display: flex;align-items: center;width: 100%;;height: 10vh;margin-top: 1%;" class="menu-item" @click="pushto('standardization/modelUsing')">
+                <svg-icon icon-class="dev" style="margin-left: 5%;font-size: 1.5rem;" />
+                <div style="font-size: 2rem;color: #707070;margin-left: 5%;">模型标准化开发</div>
+            </div>
+            <div style="display: flex;align-items: center;width: 100%;;height: 10vh;margin-top: 1%;" class="menu-item" @click="pushto('datamonitor/model_operation_monitoring')">
+                <svg-icon icon-class="jiankong" style="margin-left: 5%;font-size: 1.5rem;" />
+                <div style="font-size: 2rem;color: #707070;margin-left: 5%;">模型监控管理</div>
+            </div>
+            <div style="display: flex;align-items: center;width: 100%;;height: 10vh;margin-top: 1%;" class="menu-item" @click="pushto('evaluate/score')">
+                <svg-icon icon-class="pingjia" style="margin-left: 5%;font-size: 1.5rem;" />
+                <div style="font-size: 2rem;color: #707070;margin-left: 5%;">模型评价管理</div>
+            </div>
+        </div>
+        <el-carousel 
+        :interval="4000" 
+        height="auto"
+        style="width: 80%;height: 50vh;margin-left: 0.5%;border: 1px solid rgb(160, 207, 255);border-radius: 10px;"
+        arrow="always"
+        autoplay>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海城区洪涝仿真模型.png" alt="">
+            </el-carousel-item>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/风暴潮模型.png" alt="">
+            </el-carousel-item>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/黄浦江水系水文分析预报数值模拟模型.png"
+                    alt="">
+            </el-carousel-item>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/内涝.jpg" alt="">
+            </el-carousel-item>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海城区洪涝仿真模型.png" alt="">
+            </el-carousel-item>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/苏州河水系水情预报模型.png" alt="">
+            </el-carousel-item>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海市中心城区排水系统模型.png" alt="">
+            </el-carousel-item>
+            <el-carousel-item style="height: 50vh">
+                <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/温带风暴潮预报模型.png" alt="">
+            </el-carousel-item>
+        </el-carousel>
+    </div>
+    <div style="margin-top: 1%;height: 39vh;width: 98%;margin-left: 1%;display: flex;">
+        <div id="bt1" style="width: 50%;height: 100%;border: 1px solid rgb(160, 207, 255);border-radius: 10px;background-color: #F5F5F5;">
+
+        </div>
+        <div id="bt2" style="width: 50%;height: 100%;border: 1px solid rgb(160, 207, 255);border-radius: 10px;margin-left: 1%;background-color: #F5F5F5;">
 
+        </div>
     </div>
   </div>
 </template>
 <script setup>
 import {useRouter} from 'vue-router'
-
+import {onMounted} from 'vue';
+import {snailJobLine} from "@/api/service/timing.js";
+import * as echarts from 'echarts';
+import {getMdAllList } from "@/api/service/log.js";
 const router = useRouter()
-const carouseData = [
-  {
-    id: 1,
-    url: new URL('@/assets/上海水务首页图片包/风暴潮.png', import.meta.url).href
-  },
-  {
-    id: 2,
-    url: new URL('@/assets/上海水务首页图片包/风暴潮.png', import.meta.url).href
-  },
-  {
-    id: 3,
-    url: new URL('@/assets/上海水务首页图片包/风暴潮.png', import.meta.url).href
-  },
-]
 
 function pushto(routers) {
   router.push(routers);
 }
+function getLast7DaysRange() {
+  const end = new Date(); 
+  const start = new Date();
+  end.setDate(start.getDate() - 1);
+  start.setDate(end.getDate() - 7);
+  function formatDate(date) {
+    const year = date.getFullYear();
+    const month = String(date.getMonth() + 1).padStart(2, '0');
+    const day = String(date.getDate()).padStart(2, '0');
+    return `${year}-${month}-${day}`;
+  }
+
+  return {
+    start: formatDate(start),
+    end: formatDate(end)
+  };
+}
+async function getchart2(){
+    const last7Days = getLast7DaysRange();
+    var par = {
+        params:{
+            beginTime:last7Days.start,
+            endTime:last7Days.end,
+        }
+    }
+    await getMdAllList(par).then(res=>{
+            var dates = []
+            var counts = []
+            res.data.forEach(item=>{
+                item.total = 0
+                item.lineCharts.forEach(item1=>{
+                    item.total = item.total + item1.num
+                })
+            })
+            var y = []
+            var chartDom = document.getElementById('bt2');
+            var myChart = echarts.init(chartDom);
+            res.data.forEach(item=>{
+                var par = {
+                    name: item.mdName,
+                    value: item.total,
+                }
+                y.push(par)
+            })
+            console.log(res.data)
+            const option = {
+            title: {
+                text: '模型调用次数统计',
+                subtext: '',
+                left: 'center'
+            },
+            tooltip: {
+                trigger: 'item'
+            },
+            legend: {
+                orient: 'vertical',
+                left: 'right'
+            },
+            series: [
+                {
+                name: '',
+                type: 'pie',
+                radius: '50%',
+                data:y,
+                emphasis: {
+                        itemStyle: {
+                        shadowBlur: 10,
+                        shadowOffsetX: 0,
+                        shadowColor: 'rgba(0, 0, 0, 0.5)'
+                    }
+                }
+                }
+            ]
+        };
+        myChart.setOption(option)
+    })
+}
+async function getEchartData(){
+    await snailJobLine({type: 'MONTH'}).then(res=>{
+        console.log(res.data.map(item => item.createDt));
+        var datay = []
+        var data = []
+        let obj = {
+            name: '成功',
+            type: 'bar',
+            color:'#67C23A',
+            stack: '任务总量',
+            data: []
+        }
+        let obj1 = {
+            name: '失败',
+            type: 'bar',
+            color:'#F56C6C',
+            stack: '任务总量',
+            data: []
+        }
+        let obj2 = {
+            name: '停止',
+            type: 'bar',
+            color:'#E6A23C',
+            stack: '任务总量',
+            data: []
+        }
+        let obj3 = {
+            name: '取消',
+            type: 'bar',
+            color:'#909399',
+            stack: '任务总量',
+            data: []
+        }
+        res.data.forEach(item=>{
+            obj.data.push(item.success)
+            obj1.data.push(item.failNum)
+            obj2.data.push(item.stop)
+            obj3.data.push(item.cancel)
+        })
+        datay.push(obj)
+        datay.push(obj1)    
+        datay.push(obj2)
+        datay.push(obj3)
+        var chartDom = document.getElementById('bt1');
+        var myChart = echarts.init(chartDom);
+        const option = {
+        title: {
+            text: '模型调用成功率',
+            subtext: '',
+            left: 'center',
+            top: '2%',
+        },
+        // 提示框配置
+        tooltip: {
+            trigger: 'axis',
+            axisPointer: {
+                type: 'shadow'
+            },
+        },
+        // 图例配置
+        legend: {
+            top: '10%',
+        },
+        // 网格配置
+        grid: {
+            left: '3%',
+            right: '4%',
+            bottom: '3%',
+            containLabel: true
+        },
+        // X轴配置
+        xAxis: {
+            type: 'category',
+            data: res.data.map(item => item.createDt)
+        },
+        // Y轴配置
+        yAxis: {
+            type: 'value',
+            name: ''
+        },
+        // 系列配置 - 这里是堆叠的关键
+        series: datay
+    }
 
+    // 设置配置项并渲染图表
+    myChart.setOption(option)
+    })
+}
+onMounted(() => {
+  getEchartData()
+  getchart2()
+});
 </script>
 <!--
   //background-image:url('@/assets/上海水务首页图片包/浅蓝.png');
@@ -101,14 +260,7 @@ function pushto(routers) {
 <style scoped>
 
 .back1 {
-  background: linear-gradient(45deg, rgba(142, 197, 252, 1.000) 0.000%, rgba(141, 211, 255, 1.000) 25.000%, rgba(161, 216, 255, 1.000) 50.000%, rgba(193, 210, 255, 1.000) 75.000%, rgba(224, 195, 255, 1.000) 100.000%);
-  border-radius: 8px;
-  box-shadow: 0 16px 48px 16px rgba(0, 0, 0, .08), 0 12px 32px rgba(0, 0, 0, .12), 0 8px 16px -8px rgba(0, 0, 0, .16);
-  transition: transform .2s ease-in;
-}
-
-.back1:hover {
-  transform: translateY(-20px);
+  background-image:url('@/assets/images/title-background.png');
 }
 
 .back2 {
@@ -122,4 +274,14 @@ function pushto(routers) {
   transform: translateY(-20px);
   box-shadow: 0 0 6px rgba(0, 0, 0, .12);
 }
+.menu-item {
+    background-color: rgb(217, 236, 255);
+    border: 1px solid rgb(160, 207, 255);
+    border-radius: 10px;
+}
+
+.menu-item:hover {
+    background-color: rgb(160, 207, 255);
+    cursor: pointer;
+}
 </style>

+ 125 - 0
ruoyi-ui/src/views/shouye1.vue

@@ -0,0 +1,125 @@
+<template>
+    <div style="height: 100vh;background-color: #dcecef;">
+        <img style="position: absolute;left: 2%;top: 3%;width: 58%;z-index: 100;height: 6%;"  src="@/assets/上海水务首页图片包/项目标题1.png" alt="">
+    <el-carousel 
+    :interval="4000" 
+    height="auto"
+    arrow="always"
+    autoplay>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海城区洪涝仿真模型.png" alt="">
+      </el-carousel-item>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/风暴潮模型.png" alt="">
+      </el-carousel-item>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/黄浦江水系水文分析预报数值模拟模型.png"
+             alt="">
+      </el-carousel-item>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/内涝.jpg" alt="">
+      </el-carousel-item>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海城区洪涝仿真模型.png" alt="">
+      </el-carousel-item>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/苏州河水系水情预报模型.png" alt="">
+      </el-carousel-item>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/上海市中心城区排水系统模型.png" alt="">
+      </el-carousel-item>
+      <el-carousel-item style="height: 80vh">
+        <img style="height: 100%;width: 100%;" src="@/assets/上海水务首页图片包/温带风暴潮预报模型.png" alt="">
+      </el-carousel-item>
+    </el-carousel>
+  </div>
+  <div style="position: absolute;height: 30vh;z-index: 100;top: 70%;width: 100%;">
+    <div style="display: flex;width: 98%;margin-left: 1%;">
+      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back1"
+           @click="pushto('platform/componentReg')">
+        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型注册管理</div>
+        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
+             src="@/assets/上海水务首页图片包/模型注册.png" alt="">
+      </div>
+      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back2"
+           @click="pushto('register/edtiModel')">
+        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型服务管理</div>
+        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
+             src="@/assets/上海水务首页图片包/模型服务管理.png" alt="">
+      </div>
+      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back1"
+           @click="pushto('standardization/modelUsing')">
+        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型标准化开发</div>
+        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
+             src="@/assets/上海水务首页图片包/模型标准化.png" alt="">
+      </div>
+      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back2"
+           @click="pushto('datamonitor/model_operation_monitoring')">
+        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型监控管理</div>
+        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
+             src="@/assets/上海水务首页图片包/模型监控.png" alt="">
+      </div>
+      <div style="width: 25vw;height: 29vh;margin-left: 1%;cursor: pointer;" class="back1"
+           @click="pushto('evaluate/score')">
+        <div style="width: 100%;color: #dcecef;text-align: center;font-size: 1.5rem;margin-top:5%;">模型评价管理</div>
+        <img style="height: 80%;width: 80%;margin-left: 10%;margin-top: 2%;"
+             src="@/assets/上海水务首页图片包/模型评价.png" alt="">
+      </div>
+
+    </div>
+  </div>
+</template>
+<script setup>
+import {useRouter} from 'vue-router'
+
+const router = useRouter()
+const carouseData = [
+  {
+    id: 1,
+    url: new URL('@/assets/上海水务首页图片包/风暴潮.png', import.meta.url).href
+  },
+  {
+    id: 2,
+    url: new URL('@/assets/上海水务首页图片包/风暴潮.png', import.meta.url).href
+  },
+  {
+    id: 3,
+    url: new URL('@/assets/上海水务首页图片包/风暴潮.png', import.meta.url).href
+  },
+]
+
+function pushto(routers) {
+  router.push(routers);
+}
+
+</script>
+<!--
+  //background-image:url('@/assets/上海水务首页图片包/浅蓝.png');
+  //background-repeat: no-repeat;
+  //background-position: center center;
+ -->
+<style scoped>
+
+.back1 {
+  background: linear-gradient(45deg, rgba(142, 197, 252, 1.000) 0.000%, rgba(141, 211, 255, 1.000) 25.000%, rgba(161, 216, 255, 1.000) 50.000%, rgba(193, 210, 255, 1.000) 75.000%, rgba(224, 195, 255, 1.000) 100.000%);
+  border-radius: 8px;
+  box-shadow: 0 16px 48px 16px rgba(0, 0, 0, .08), 0 12px 32px rgba(0, 0, 0, .12), 0 8px 16px -8px rgba(0, 0, 0, .16);
+  transition: transform .2s ease-in;
+}
+
+.back1:hover {
+  transform: translateY(-20px);
+}
+
+.back2 {
+  background-image: url('@/assets/上海水务首页图片包/深蓝.png');
+  background-repeat: no-repeat;
+  background-position: center center;
+  transition: transform .2s ease-in;
+}
+
+.back2:hover {
+  transform: translateY(-20px);
+  box-shadow: 0 0 6px rgba(0, 0, 0, .12);
+}
+</style>

+ 1 - 1
ruoyi-ui/src/views/standardization/modeling/index.vue

@@ -349,7 +349,7 @@
           <template #default="{ node, data }">
             <span  style="justify-content: space-between;display: flex;width: 100%;align-items: center;" :draggable="true" @dragstart="onDragStart($event,data)">
               <div class="custom-tree-node">
-                   <svg-icon icon-class="model2" style="color: #eebe77;" v-if="data.nodeType=='MODEL'"/>
+                  <svg-icon icon-class="model2" style="color: #eebe77;" v-if="data.nodeType=='MODEL'"/>
                   <svg-icon icon-class="model" dstyle="color: #13E03B;" v-if="data.nodeType=='SERVICE'"/>
                   <svg-icon svg-icon icon-class="cate" style="color: red;" v-if="data.nodeType=='TREE'"/>
                 <span>{{ node.label }}</span>

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.