feat: 完成模拟交易闭环、App 与 A 股行情接入
Checks / verify (push) Failing after 9m52s

统一单入口 Go 工程与前端依赖目录,增加后台供应商配置、候选审核、计划预算、成交冲正、持仓复盘和站内通知。接入策略版本、Python 回测、可配置 A 股公开行情及 zap 文件轮转日志,补充迁移、契约与验证。
This commit is contained in:
2026-10-08 22:58:52 +08:00
parent bffdb3858b
commit 92329ddce2
145 changed files with 18593 additions and 587 deletions
+9
View File
@@ -0,0 +1,9 @@
import {useState} from "react"
import {Text,View} from "react-native"
import {Body,Button,ErrorMessage,Field,Panel,Screen,Title,styles} from "../src/components/ui"
import {useSession} from "../src/state/session"
export default function Login(){
const {login}=useSession();const [name,setName]=useState("");const [password,setPassword]=useState("");const [busy,setBusy]=useState(false);const [error,setError]=useState("")
async function submit(){if(busy)return;setBusy(true);setError("");try{await login(name,password);setPassword("")}catch(e){setError(e instanceof Error?e.message:"登录失败,请重试。")}finally{setBusy(false)}}
return <Screen><View style={{height:42}}/><Text style={styles.badge}>从依据出发</Text><Title>见势 · Veyra</Title><Body>看清机会,理解风险。{"\n"}让每一步投资决策都有迹可循。</Body><Panel accent><Text style={styles.subtitle}>开发环境登录</Text><Body>使用开发测试身份连接服务。正式手机号登录将在身份服务完成后开放。</Body></Panel><Field label="登录名" value={name} onChangeText={setName} autoCapitalize="none" autoCorrect={false} autoComplete="username" maxLength={64} editable={!busy}/><Field label="密码" value={password} onChangeText={setPassword} secureTextEntry autoComplete="current-password" maxLength={72} editable={!busy} returnKeyType="go" onSubmitEditing={()=>void submit()}/><ErrorMessage message={error}/><Button title="登录" busy={busy} disabled={!name.trim()||!password} onPress={()=>void submit()}/><Body>账户、计划与成交记录均由服务端保存。请勿使用数据库账号作为 App 登录身份。</Body></Screen>
}