Add endpoint to get sales_person for current user
This commit is contained in:
parent
42ebce15e8
commit
bd887cfd7b
12 changed files with 108 additions and 5 deletions
|
|
@ -45,7 +45,7 @@ pub async fn get_all_bookings<RestState: RestStateDef>(
|
|||
pub async fn get_by_week<RestState: RestStateDef>(
|
||||
rest_state: State<RestState>,
|
||||
Extension(context): Extension<Context>,
|
||||
Path((calendar_week, year)): Path<(i32, u32)>,
|
||||
Path((year, calendar_week)): Path<(u32, u8)>,
|
||||
) -> Response {
|
||||
error_handler(
|
||||
(async {
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ pub fn generate_route<RestState: RestStateDef>() -> Router<RestState> {
|
|||
.route("/:id/user", get(get_sales_person_user::<RestState>))
|
||||
.route("/:id/user", post(set_sales_person_user::<RestState>))
|
||||
.route("/:id/user", delete(delete_sales_person_user::<RestState>))
|
||||
.route("/current", get(get_sales_person_current_user::<RestState>))
|
||||
}
|
||||
|
||||
pub async fn get_all_sales_persons<RestState: RestStateDef>(
|
||||
|
|
@ -184,3 +185,24 @@ pub async fn delete_sales_person_user<RestState: RestStateDef>(
|
|||
.await,
|
||||
)
|
||||
}
|
||||
|
||||
pub async fn get_sales_person_current_user<RestState: RestStateDef>(
|
||||
rest_state: State<RestState>,
|
||||
Extension(context): Extension<Context>,
|
||||
) -> Response {
|
||||
error_handler(
|
||||
(async {
|
||||
let sales_person = rest_state
|
||||
.sales_person_service()
|
||||
.get_sales_person_current_user(context.into())
|
||||
.await?
|
||||
.map(|sales_person| SalesPersonTO::from(&sales_person));
|
||||
|
||||
Ok(Response::builder()
|
||||
.status(200)
|
||||
.body(Body::new(serde_json::to_string(&sales_person).unwrap()))
|
||||
.unwrap())
|
||||
})
|
||||
.await,
|
||||
)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue