This commit is contained in:
2026-06-01 10:44:08 +08:00
parent a91b6ab21f
commit b22431d3cb
12 changed files with 16 additions and 15 deletions
+3 -2
View File
@@ -2,13 +2,14 @@ import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
export default defineConfig({
export default defineConfig(({ mode }) => ({
plugins: [vue()],
resolve: {
alias: {
'@': resolve(__dirname, 'src'),
},
},
base: mode === 'development' ? '/' : '/static/',
build: {
outDir: '../static',
emptyOutDir: true,
@@ -22,4 +23,4 @@ export default defineConfig({
},
},
},
})
}))
+1 -1
View File
@@ -85,7 +85,7 @@ class DatabaseManager:
async def create_tables(self):
"""创建数据库表"""
from models.database import Base
from shared.models.database import Base
try:
async with self.engine.begin() as conn:
@@ -1 +1 @@
import{E as e,_ as t,t as n,y as r}from"./index-DkoUSxK0.js";var i={};function a(n,i){return e(),r(`div`,null,[...i[0]||=[t(`div`,{class:`page-header`},[t(`h1`,{class:`page-title`},`设计体系`),t(`p`,{class:`page-subtitle`},`迁移中...`)],-1)]])}var o=n(i,[[`render`,a]]);export{o as default};
import{E as e,_ as t,t as n,y as r}from"./index-B-OcU2wj.js";var i={};function a(n,i){return e(),r(`div`,null,[...i[0]||=[t(`div`,{class:`page-header`},[t(`h1`,{class:`page-title`},`设计体系`),t(`p`,{class:`page-subtitle`},`迁移中...`)],-1)]])}var o=n(i,[[`render`,a]]);export{o as default};
@@ -1 +1 @@
import{E as e,b as t,t as n,y as r}from"./index-DkoUSxK0.js";var i={};function a(n,i){return e(),r(`div`,null,[...i[0]||=[t(`<div class="hero-section" data-v-a374362f><h1 class="hero-title" data-v-a374362f>Gemold 模具制造管理系统</h1><p class="hero-subtitle" data-v-a374362f>智能模具设计与制造一体化平台,从零件分析到模具生成,全流程数字化解决方案</p></div><div class="features-grid" data-v-a374362f><div class="feature-card" data-v-a374362f><div class="feature-icon" data-v-a374362f>◈</div><h3 class="feature-title" data-v-a374362f>MoldInsight</h3><p class="feature-desc" data-v-a374362f>智能模具分析引擎,支持 STP/STEP 文件解析、分模设计、CAM 刀路规划</p></div><div class="feature-card" data-v-a374362f><div class="feature-icon" data-v-a374362f>⊞</div><h3 class="feature-title" data-v-a374362f>进销存管理</h3><p class="feature-desc" data-v-a374362f>产品管理、采购销售、库存管理、财务管理,一站式 ERP 解决方案</p></div><div class="feature-card" data-v-a374362f><div class="feature-icon" data-v-a374362f>⚙</div><h3 class="feature-title" data-v-a374362f>AI 驱动</h3><p class="feature-desc" data-v-a374362f>AI 分型面检测、模具方案评分、智能设计建议,提升设计效率</p></div></div>`,2)]])}var o=n(i,[[`render`,a],[`__scopeId`,`data-v-a374362f`]]);export{o as default};
import{E as e,b as t,t as n,y as r}from"./index-B-OcU2wj.js";var i={};function a(n,i){return e(),r(`div`,null,[...i[0]||=[t(`<div class="hero-section" data-v-a374362f><h1 class="hero-title" data-v-a374362f>Gemold 模具制造管理系统</h1><p class="hero-subtitle" data-v-a374362f>智能模具设计与制造一体化平台,从零件分析到模具生成,全流程数字化解决方案</p></div><div class="features-grid" data-v-a374362f><div class="feature-card" data-v-a374362f><div class="feature-icon" data-v-a374362f>◈</div><h3 class="feature-title" data-v-a374362f>MoldInsight</h3><p class="feature-desc" data-v-a374362f>智能模具分析引擎,支持 STP/STEP 文件解析、分模设计、CAM 刀路规划</p></div><div class="feature-card" data-v-a374362f><div class="feature-icon" data-v-a374362f>⊞</div><h3 class="feature-title" data-v-a374362f>进销存管理</h3><p class="feature-desc" data-v-a374362f>产品管理、采购销售、库存管理、财务管理,一站式 ERP 解决方案</p></div><div class="feature-card" data-v-a374362f><div class="feature-icon" data-v-a374362f>⚙</div><h3 class="feature-title" data-v-a374362f>AI 驱动</h3><p class="feature-desc" data-v-a374362f>AI 分型面检测、模具方案评分、智能设计建议,提升设计效率</p></div></div>`,2)]])}var o=n(i,[[`render`,a],[`__scopeId`,`data-v-a374362f`]]);export{o as default};
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{E as e,O as t,P as n,S as r,_ as i,a,f as o,k as s,l as c,m as l,n as u,o as d,t as f,v as p,y as m}from"./index-DkoUSxK0.js";var h={class:`login-container`},g={class:`login-card`},_={class:`form-group`},v={class:`form-group`},y={key:0,class:`form-error`},b=[`disabled`],x=f(r({__name:`LoginView`,setup(r){let f=c(),x=s({username:``,password:``,error:``,loading:!1}),S=async()=>{x.error=``,x.loading=!0;try{let e=await d(`/api/auth/login`,{method:`POST`,body:JSON.stringify({username:x.username,password:x.password})});a(e.access_token,e.user),u(`登录成功`,`success`),f.push(`/`)}catch(e){x.error=e.message||`登录失败`}finally{x.loading=!1}};return(r,a)=>(e(),m(`div`,h,[i(`div`,g,[a[4]||=i(`div`,{class:`login-header`},[i(`div`,{class:`login-logo`},`G`),i(`h1`,{class:`login-title`},`Gemold`),i(`p`,{class:`login-subtitle`},`模具制造管理系统`)],-1),i(`form`,{onSubmit:l(S,[`prevent`])},[i(`div`,_,[a[2]||=i(`label`,{class:`form-label`},`用户名`,-1),t(i(`input`,{"onUpdate:modelValue":a[0]||=e=>x.username=e,type:`text`,class:`form-input`,placeholder:`请输入用户名`,required:``},null,512),[[o,x.username]])]),i(`div`,v,[a[3]||=i(`label`,{class:`form-label`},`密码`,-1),t(i(`input`,{"onUpdate:modelValue":a[1]||=e=>x.password=e,type:`password`,class:`form-input`,placeholder:`请输入密码`,required:``},null,512),[[o,x.password]])]),x.error?(e(),m(`div`,y,n(x.error),1)):p(``,!0),i(`button`,{type:`submit`,class:`btn btn-primary w-full mt-4`,disabled:x.loading},n(x.loading?`登录中...`:`登录`),9,b)],32)])]))}}),[[`__scopeId`,`data-v-792eed9c`]]);export{x as default};
import{E as e,O as t,P as n,S as r,_ as i,a,f as o,k as s,l as c,m as l,n as u,o as d,t as f,v as p,y as m}from"./index-B-OcU2wj.js";var h={class:`login-container`},g={class:`login-card`},_={class:`form-group`},v={class:`form-group`},y={key:0,class:`form-error`},b=[`disabled`],x=f(r({__name:`LoginView`,setup(r){let f=c(),x=s({username:``,password:``,error:``,loading:!1}),S=async()=>{x.error=``,x.loading=!0;try{let e=await d(`/api/auth/login`,{method:`POST`,body:JSON.stringify({username:x.username,password:x.password})});a(e.access_token,e.user),u(`登录成功`,`success`),f.push(`/`)}catch(e){x.error=e.message||`登录失败`}finally{x.loading=!1}};return(r,a)=>(e(),m(`div`,h,[i(`div`,g,[a[4]||=i(`div`,{class:`login-header`},[i(`div`,{class:`login-logo`},`G`),i(`h1`,{class:`login-title`},`Gemold`),i(`p`,{class:`login-subtitle`},`模具制造管理系统`)],-1),i(`form`,{onSubmit:l(S,[`prevent`])},[i(`div`,_,[a[2]||=i(`label`,{class:`form-label`},`用户名`,-1),t(i(`input`,{"onUpdate:modelValue":a[0]||=e=>x.username=e,type:`text`,class:`form-input`,placeholder:`请输入用户名`,required:``},null,512),[[o,x.username]])]),i(`div`,v,[a[3]||=i(`label`,{class:`form-label`},`密码`,-1),t(i(`input`,{"onUpdate:modelValue":a[1]||=e=>x.password=e,type:`password`,class:`form-input`,placeholder:`请输入密码`,required:``},null,512),[[o,x.password]])]),x.error?(e(),m(`div`,y,n(x.error),1)):p(``,!0),i(`button`,{type:`submit`,class:`btn btn-primary w-full mt-4`,disabled:x.loading},n(x.loading?`登录中...`:`登录`),9,b)],32)])]))}}),[[`__scopeId`,`data-v-792eed9c`]]);export{x as default};
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{E as e,_ as t,t as n,y as r}from"./index-DkoUSxK0.js";var i={};function a(n,i){return e(),r(`div`,null,[...i[0]||=[t(`div`,{class:`page-header`},[t(`h1`,{class:`page-title`},`灰度发布与回滚`),t(`p`,{class:`page-subtitle`},`迁移中...`)],-1)]])}var o=n(i,[[`render`,a]]);export{o as default};
import{E as e,_ as t,t as n,y as r}from"./index-B-OcU2wj.js";var i={};function a(n,i){return e(),r(`div`,null,[...i[0]||=[t(`div`,{class:`page-header`},[t(`h1`,{class:`page-title`},`灰度发布与回滚`),t(`p`,{class:`page-subtitle`},`迁移中...`)],-1)]])}var o=n(i,[[`render`,a]]);export{o as default};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -61,8 +61,8 @@
} catch (e) {}
})();
</script>
<script type="module" crossorigin src="/assets/index-DkoUSxK0.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-CpCSYLtb.css">
<script type="module" crossorigin src="/static/assets/index-B-OcU2wj.js"></script>
<link rel="stylesheet" crossorigin href="/static/assets/index-CpCSYLtb.css">
</head>
<body>
<div id="app">