1- use crate ::
2- errors:: AppError ;
3- use diesel:: prelude:: * ;
41use super :: {
5- models:: { Group , NewGroup , SearchGroup } ,
2+ models:: { Group , GroupFilter , NewGroup } ,
63 schema:: groups,
74 schema:: groups:: dsl:: * ,
85} ;
6+ use crate :: errors:: AppError ;
7+ use diesel:: prelude:: * ;
98pub fn create_group ( conn : & mut SqliteConnection , new_group : & NewGroup ) -> Result < Group , AppError > {
109 diesel:: insert_into ( groups:: table)
1110 . values ( new_group)
@@ -18,7 +17,6 @@ pub fn find_group_by_name(
1817 conn : & mut SqliteConnection ,
1918 group_name : & str ,
2019) -> Result < Option < Group > , AppError > {
21-
2220 let group = groups
2321 . select ( Group :: as_select ( ) )
2422 . filter ( groups:: name. eq ( group_name) )
@@ -30,7 +28,6 @@ pub fn find_group_by_id(
3028 conn : & mut SqliteConnection ,
3129 group_id : i32 ,
3230) -> Result < Option < Group > , AppError > {
33-
3431 let group = groups
3532 . select ( Group :: as_select ( ) )
3633 . filter ( groups:: id. eq ( group_id) )
@@ -39,11 +36,7 @@ pub fn find_group_by_id(
3936 Ok ( group)
4037}
4138
42- pub fn mark_group_as_primary (
43- conn : & mut SqliteConnection ,
44- group_id : i32 ,
45- ) -> Result < ( ) , AppError > {
46-
39+ pub fn mark_group_as_primary ( conn : & mut SqliteConnection , group_id : i32 ) -> Result < ( ) , AppError > {
4740 diesel:: update ( groups:: table)
4841 . filter ( groups:: id. eq ( group_id) )
4942 . set ( groups:: is_primary. eq ( true ) )
@@ -61,10 +54,9 @@ pub fn mark_group_as_non_primary(conn: &mut SqliteConnection) -> Result<(), AppE
6154
6255pub fn select_groups (
6356 conn : & mut SqliteConnection ,
64- search_input : SearchGroup ,
57+ search_input : GroupFilter ,
6558 limit : i64 ,
6659) -> Result < Vec < Group > , diesel:: result:: Error > {
67-
6860 // 使用 into_boxed() 来对查询进行类型擦除
6961 let mut base_query = groups. limit ( limit) . select ( Group :: as_select ( ) ) . into_boxed ( ) ;
7062
@@ -113,7 +105,6 @@ pub fn increase_group_reference_count(
113105 conn : & mut SqliteConnection ,
114106 group_id : i32 ,
115107) -> Result < ( ) , AppError > {
116-
117108 diesel:: update ( groups:: table. find ( group_id) )
118109 . set ( groups:: reference_count. eq ( groups:: reference_count + 1 ) )
119110 . execute ( conn) ?;
@@ -125,7 +116,6 @@ pub fn decrease_group_reference_count(
125116 conn : & mut SqliteConnection ,
126117 group_id : i32 ,
127118) -> Result < ( ) , AppError > {
128-
129119 diesel:: update ( groups:: table. find ( group_id) )
130120 . set ( groups:: reference_count. eq ( groups:: reference_count - 1 ) )
131121 . execute ( conn) ?;
@@ -147,4 +137,4 @@ impl Debug for Group {
147137 self . modify_time
148138 )
149139 }
150- }
140+ }
0 commit comments