Commit 9907e6b0 authored by Bernardo Sunderhus's avatar Bernardo Sunderhus

adicionando hora default ao cadastrar tarefa

parent 89759c84
{ {
"name": "siscon-cli", "name": "siscon-cli",
"version": "0.0.1", "version": "0.0.2",
"description": "siscon-cli", "description": "siscon-cli",
"main": "./siscon-cli.js", "main": "./siscon-cli.js",
"bin": { "bin": {
......
...@@ -46,6 +46,14 @@ export async function describeTask (): Promise<string> { ...@@ -46,6 +46,14 @@ export async function describeTask (): Promise<string> {
return response.description return response.description
} }
function timeToString (time: number) {
const hours = Math.floor(time / 60)
const hoursStr = hours ? hours + 'h' : ''
const minutes = time % 60
const minutesStr = minutes ? minutes + 'min' : ''
return `${hoursStr}${(hours && minutes) ? ' ' : ''}${minutesStr}`
}
export async function timeTask (time: number) { export async function timeTask (time: number) {
const totalHours = Math.floor(time / 60) const totalHours = Math.floor(time / 60)
const totalMinutes = time % 60 const totalMinutes = time % 60
...@@ -53,7 +61,8 @@ export async function timeTask (time: number) { ...@@ -53,7 +61,8 @@ export async function timeTask (time: number) {
const response = await prompt({ const response = await prompt({
type: 'input', type: 'input',
name: 'string', name: 'string',
message: `Tempo gasto na tarefa, até o máximo de ${chalk.underline.bold.italic.blue(`${totalHours}h ${totalMinutes}min`)}:`, default: timeToString(time),
message: `Tempo gasto na tarefa:`,
validate: (input => { validate: (input => {
if (!input.trim()) return chalk.red('Tempo é obrigatório') if (!input.trim()) return chalk.red('Tempo é obrigatório')
const [, hours] = input.match(/(\d*)h/) || [undefined, 0] const [, hours] = input.match(/(\d*)h/) || [undefined, 0]
......
...@@ -18,9 +18,7 @@ const Table: any = require('cli-table') ...@@ -18,9 +18,7 @@ const Table: any = require('cli-table')
export default async function saida (dominio: Domain, ultimoRegistro: RegistroPonto, registro: RegistroPonto, ucRegistrarPonto: UcRegistrarPonto) { export default async function saida (dominio: Domain, ultimoRegistro: RegistroPonto, registro: RegistroPonto, ucRegistrarPonto: UcRegistrarPonto) {
if (!(await prompt(exit)).exit) return if (!(await prompt(exit)).exit) return
let timeElapsedInMinutes = Math.floor(moment(registro._DataRegistro).diff(ultimoRegistro._DataRegistro) / (1000 * 60)) let timeElapsedInMinutes = Math.floor(moment(registro._DataRegistro).diff(ultimoRegistro._DataRegistro) / (1000 * 60))
const hours = Math.floor(timeElapsedInMinutes / 60) console.log(`${chalk.cyan('!')} Ponto de entrada realizado à ${cyan.underline.bold.italic(timeToString(timeElapsedInMinutes))}`)
const minutes = timeElapsedInMinutes % 60
console.log(`${chalk.cyan('!')} Ponto de entrada realizado à ${blue.underline.bold.italic(hours + 'h ' + minutes + 'min')}`)
const spinner = makeSpinner() const spinner = makeSpinner()
const tabelaRegistros = new Table({head: ['Projeto', 'Tarefa', 'Descrição', 'Tempo']}) const tabelaRegistros = new Table({head: ['Projeto', 'Tarefa', 'Descrição', 'Tempo']})
try { try {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment