Add: --last (or -l) to tasks list for listing only last task
This commit is contained in:
parent
effdbb778a
commit
0e8e12b453
@ -39,6 +39,12 @@ pub fn build_cli() -> App<'static, 'static> {
|
||||
.value_name("PROJECT")
|
||||
.help("Provides a project to list tasks from")
|
||||
.takes_value(true),
|
||||
)
|
||||
.arg(
|
||||
Arg::with_name("last")
|
||||
.short("l")
|
||||
.long("last")
|
||||
.help("List last task only")
|
||||
),
|
||||
)
|
||||
.subcommand(
|
||||
|
@ -41,9 +41,10 @@ fn main() {
|
||||
projects.get(&config_file);
|
||||
}
|
||||
|
||||
// gst tasks [--project]
|
||||
// gst tasks [--project] [--last]
|
||||
("tasks", Some(_matches)) => {
|
||||
console::info("List of tasks");
|
||||
let last = _matches.occurrences_of("last");
|
||||
let project = _matches.value_of("project")
|
||||
.unwrap_or("0").trim().parse()
|
||||
.expect("Type a number!");
|
||||
@ -51,7 +52,7 @@ fn main() {
|
||||
data: Vec::new(),
|
||||
error: "".to_string(),
|
||||
};
|
||||
tasks.get(&config_file, project);
|
||||
tasks.get(&config_file, project, last);
|
||||
}
|
||||
|
||||
// gst stamps [--last]
|
||||
|
@ -40,7 +40,7 @@ pub struct Tasks {
|
||||
}
|
||||
|
||||
impl Tasks {
|
||||
pub fn get(&self, config_file: &PathBuf, project: u32) {
|
||||
pub fn get(&self, config_file: &PathBuf, project: u32, last: u64) {
|
||||
// Config
|
||||
let mut default_config = config::Config::default();
|
||||
let config = default_config.parse(&config_file);
|
||||
@ -65,6 +65,7 @@ impl Tasks {
|
||||
projectid=task.project_id,
|
||||
id=task.id,
|
||||
name=task.name);
|
||||
if last != 0 { break; }
|
||||
},
|
||||
// Otherwise but 0, print only task with that project.id
|
||||
_ => {
|
||||
@ -73,6 +74,7 @@ impl Tasks {
|
||||
projectid=task.project_id,
|
||||
id=task.id,
|
||||
name=task.name);
|
||||
if last != 0 { break; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user