use crate::{
commands::{Cli, Result},
jobber::JobberDelete,
print_tip,
};
use clap::Parser;
use color_print::cprintln;
#[derive(Parser, Debug)]
pub(crate) struct DeleteWorker {
id: String,
}
impl DeleteWorker {
pub(crate) fn run(&self, cli: &Cli) -> Result<()> {
let mut database = cli.open_database()?;
database.delete_worker(&self.id, true)?;
cli.close_database(database)?;
cprintln!("Successfully deleted worker <s>{}</>.", self.id);
print_tip!(cli);
print_tip!(cli, "Use <s>jobber undo</> to restore the worker.",);
print_tip!(
cli,
"Use <s>jobber list workers -d</> to list deleted workers."
);
Ok(())
}
}