清仓筛选
This commit is contained in:
parent
b03b59b22c
commit
0ee56aad24
@ -10,12 +10,12 @@
|
||||
<cargoProject FILE="$PROJECT_DIR$/bookkeeper/Cargo.toml" />
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="76b3b902-7a5c-4bcd-9c1b-8241d748fb44" name="更改" comment="Filter by name">
|
||||
<change afterPath="$PROJECT_DIR$/bookkeeper/deploy.ps1" afterDir="false" />
|
||||
<list default="true" id="76b3b902-7a5c-4bcd-9c1b-8241d748fb44" name="更改" comment="更新版本号和部署脚本">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/bookkeeper/Cargo.lock" beforeDir="false" afterPath="$PROJECT_DIR$/bookkeeper/Cargo.lock" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/bookkeeper/Cargo.toml" beforeDir="false" afterPath="$PROJECT_DIR$/bookkeeper/Cargo.toml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/bookkeeper/src/main.rs" beforeDir="false" afterPath="$PROJECT_DIR$/bookkeeper/src/main.rs" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/bookkeeper/templates/index.html.j2" beforeDir="false" afterPath="$PROJECT_DIR$/bookkeeper/templates/index.html.j2" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/bookkeeper/templates/nav.html.j2" beforeDir="false" afterPath="$PROJECT_DIR$/bookkeeper/templates/nav.html.j2" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
@ -154,7 +154,7 @@
|
||||
<workItem from="1735470376833" duration="16014000" />
|
||||
<workItem from="1735553493290" duration="16207000" />
|
||||
<workItem from="1736238929025" duration="646000" />
|
||||
<workItem from="1736239592084" duration="964000" />
|
||||
<workItem from="1736239592084" duration="1828000" />
|
||||
</task>
|
||||
<task id="LOCAL-00001" summary="Add bookkeeper">
|
||||
<option name="closed" value="true" />
|
||||
@ -244,7 +244,15 @@
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1736239284738</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="12" />
|
||||
<task id="LOCAL-00012" summary="更新版本号和部署脚本">
|
||||
<option name="closed" value="true" />
|
||||
<created>1736241063964</created>
|
||||
<option name="number" value="00012" />
|
||||
<option name="presentableId" value="LOCAL-00012" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1736241063964</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="13" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
@ -273,7 +281,8 @@
|
||||
<MESSAGE value="Release first version" />
|
||||
<MESSAGE value="Refine gain algorithm and some UI update" />
|
||||
<MESSAGE value="Filter by name" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="Filter by name" />
|
||||
<MESSAGE value="更新版本号和部署脚本" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="更新版本号和部署脚本" />
|
||||
</component>
|
||||
<component name="XSLT-Support.FileAssociations.UIState">
|
||||
<expand />
|
||||
|
||||
2
bookkeeper/Cargo.lock
generated
2
bookkeeper/Cargo.lock
generated
@ -423,7 +423,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "bookkeeper"
|
||||
version = "0.1.1"
|
||||
version = "0.1.2"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"entity",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "bookkeeper"
|
||||
version = "0.1.1"
|
||||
version = "0.1.2"
|
||||
edition = "2021"
|
||||
|
||||
[dependencies]
|
||||
|
||||
@ -57,8 +57,8 @@ impl sea_orm_rocket::Pool for SeaOrmPool {
|
||||
}
|
||||
}
|
||||
|
||||
#[get("/?<last>&<name>")]
|
||||
async fn index(conn: Connection<'_, Db>, last: Option<u32>, name: Option<&str>) -> Template {
|
||||
#[get("/?<last>&<name>&<is_done>")]
|
||||
async fn index(conn: Connection<'_, Db>, last: Option<u32>, name: Option<&str>, is_done: Option<bool>) -> Template {
|
||||
let mut partial = TE::find();
|
||||
|
||||
if let Some(last) = last {
|
||||
@ -69,6 +69,10 @@ async fn index(conn: Connection<'_, Db>, last: Option<u32>, name: Option<&str>)
|
||||
partial = partial.filter(transaction::Column::Name.eq(name));
|
||||
}
|
||||
|
||||
if let Some(done) = is_done {
|
||||
partial = partial.filter(transaction::Column::IsDone.eq(done));
|
||||
}
|
||||
|
||||
let rows: Vec<transaction::Model> = partial
|
||||
.order_by_desc(transaction::Column::Date)
|
||||
.order_by_desc(transaction::Column::Id)
|
||||
|
||||
@ -28,11 +28,11 @@
|
||||
{% if loop.index == 1 %}
|
||||
<td rowspan="{{ loop.length }}" style="vertical-align: middle;">{{ r.code|string|padLeft(6) }}</td>
|
||||
<td rowspan="{{ loop.length }}" style="vertical-align: middle;"><a href="/?name={{ r.name }}">{{ r.name }}</a></td>
|
||||
<td rowspan="{{ loop.length }}" style="vertical-align: middle;" class="{% if not r.is_done %}is-warning{% endif %}">{{ r.date }}</td>
|
||||
<td rowspan="{{ loop.length }}" style="vertical-align: middle;">{{ r.date }}</td>
|
||||
<td rowspan="{{ loop.length }}" style="vertical-align: middle;">{{ r.buy|float|round(4) }}</td>
|
||||
<td rowspan="{{ loop.length }}" style="vertical-align: middle;">{{ r.volume }}</td>
|
||||
<td rowspan="{{ loop.length }}" style="vertical-align: middle;">{{ r.net_buy|float|round(2) }}</td>
|
||||
<td>{{ p.date or "" }}</td>
|
||||
<td class="{% if not r.is_done %}is-warning{% endif %}">{{ p.date or "" }}</td>
|
||||
<td>{{ (p.sell or 0)|float|round(4) }}</td>
|
||||
<td>{{ p.volume or "" }}</td>
|
||||
<td>{{ (p.net_sell or 0)|float|round(2) }}</td>
|
||||
@ -65,24 +65,31 @@
|
||||
<tr>
|
||||
<td>{{ r.code|string|padLeft(6) }}</td>
|
||||
<td><a href="/?name={{ r.name }}">{{ r.name }}</a></td>
|
||||
<td class="is-warning">{{ r.date }}</td>
|
||||
<td>{{ r.date }}</td>
|
||||
<td>{{ r.buy|float|round(4) }}</td>
|
||||
<td>{{ r.volume }}</td>
|
||||
<td>{{ r.net_buy|float|round(2) }}</td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td>-</td>
|
||||
<td>-</td>
|
||||
<td class="is-warning"></td>
|
||||
<td class="is-warning"></td>
|
||||
<td class="is-warning"></td>
|
||||
<td class="is-warning"></td>
|
||||
<td class="is-warning">-</td>
|
||||
<td class="is-warning">-</td>
|
||||
<td><a row-id="{{ r.id }}" class="modify-row">改</a> <a row-id="{{ r.id }}" class="delete-row has-text-danger">删</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
<tr class="is-light" style="position: sticky; bottom: 0;">
|
||||
<td colspan="14" style="text-align: center"><a id="addEntry">添加</a><span> </span><a
|
||||
id="filterEntry">高级筛选</a></td>
|
||||
<td colspan="14" style="text-align: center">
|
||||
<a id="addEntry">添加</a>
|
||||
<span> </span>
|
||||
<a id="filterEntry">高级筛选</a>
|
||||
<span> </span>
|
||||
<a href="/?is_done=false">未清仓</a>
|
||||
<span> </span>
|
||||
<a href="/?is_done=true">已清仓</a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<nav class="navbar" role="navigation" aria-label="main navigation">
|
||||
<div id="navbarBasicExample" class="navbar-menu">
|
||||
<div class="navbar-start">
|
||||
<a class="navbar-item" href="/">Home</a>
|
||||
<a class="navbar-item" href="/">首页</a>
|
||||
<a class="navbar-item">Report</a>
|
||||
<!-- <div class="navbar-item has-dropdown is-hoverable">-->
|
||||
<!-- <a class="navbar-link">More</a>-->
|
||||
|
||||
Loading…
Reference in New Issue
Block a user