|
|
@@ -213,15 +213,20 @@ pub async fn u_list(
|
|
|
Ok(uid) => uid,
|
|
|
Err(_) => return Json(DataBack { errcode: 2000, errmsg: Some("鉴权失败: token失效".to_string()), data: None })
|
|
|
};
|
|
|
-
|
|
|
+ // if (u.ids.as_ref()).is_none_or(|d|{d.is_empty()}){
|
|
|
+ // return Json(DataBack { errcode: 2000, errmsg: Some("请选择用户".to_string()), data: None });
|
|
|
+ // }
|
|
|
let (page,size) = if let Some(p)=u.page {(p.page,p.size)} else {(1,20)};
|
|
|
let mut params: SqliteParams = vec![];
|
|
|
|
|
|
match state.db_lite.query_rows(
|
|
|
- format!("select u.id, u.uname, u.nickname, strftime('%s', u.lastlogin)*1000, strftime('%s', u.createtime)*1000 from user u where isdelete=0{}{} limit ? offset ?",
|
|
|
+ format!("select u.id, u.uname, u.nickname, strftime('%s', u.lastlogin)*1000, strftime('%s', u.createtime)*1000 from user u where isdelete=0{}{}{} limit ? offset ?",
|
|
|
if let Some(ref filter) = u.nickname {params.push(Box::new(filter.clone())); " and u.nickname like ?"} else {""},
|
|
|
if let Some(ref filter) = u.group {params.push(Box::new(filter.clone())); " and u.group like ?"} else {""},
|
|
|
- // if let Some(ref filter) = u.ids {params.extend(filter.clone()); " and u.group like ?"} else {""}
|
|
|
+ if let Some(ref filter) = u.ids {
|
|
|
+ if filter.is_empty(){String::new()}
|
|
|
+ else{let mut uids=Vec::new();for i in filter{ uids.push("?");params.push(Box::new(*i));};format!( " and u.id in ({})",uids.join(","))}
|
|
|
+ } else {String::new()}
|
|
|
).as_str(),
|
|
|
rusqlite::params_from_iter({params.push(Box::new(size));params.push(Box::new(size*(page-1)));params}) , |r| {
|
|
|
Ok(Uedit{
|