UNPKG

7.3 kBMarkdownView Raw
1# WorkPlayerAPI
2
3[![npm version](https://img.shields.io/npm/v/workplayerapi.svg?style=flat-square)](https://www.npmjs.org/package/workplayerapi)
4[![install size](https://packagephobia.now.sh/badge?p=workplayerapi)](https://packagephobia.now.sh/result?p=workplayerapi)
5
6API para encapsulamento de chamadas REST para o projeto Work Player da Kyros Tecnologias.
7
8## Instalando
9
10Usando npm:
11
12```bash
13$ npm install workplayerapi
14```
15
16Usando bower:
17
18```bash
19$ bower install workplayerapi
20```
21
22Usando yarn:
23
24```bash
25$ yarn add workplayerapi
26```
27
28## Classes
29
30### Card
31
32```js
33import { Card } from 'workplayerapi/classes/Card';
34
35let obj = {};
36// Criando novo Card
37let card = new Card(obj);
38
39console.log(card.cardId); // Number
40console.log(card.skillId); // Number
41console.log(card.skillName); // String
42console.log(card.skillDescription); // String
43console.log(card.cardName); // String
44console.log(card.cardDescription); // String
45console.log(card.url); // String
46console.log(card.attributeDefinitionList); // String
47```
48
49### Player
50
51```js
52import { Player } from 'workplayerapi/classes/Player';
53
54let obj = {};
55// Criando novo Player
56let player = new Player(obj);
57
58console.log(player.id); // Number
59console.log(player.name); // String
60console.log(player.birthdate); // String
61console.log(player.zipcode); // String
62console.log(player.email); // String
63console.log(player.cellphone); // String
64console.log(player.landline); // String
65console.log(player.documentNumber); // String
66console.log(player.city); // String
67console.log(player.department); // String
68console.log(player.departmentId); // Number
69console.log(player.function); // String
70console.log(player.functionId); // Number
71console.log(player.team); // String
72console.log(player.teamId); // Number
73```
74
75### User
76
77```js
78import { User } from 'workplayerapi/classes/User';
79
80let obj = {};
81// Criando novo User
82let user = new User(obj);
83
84console.log(user.userId); // Number
85console.log(user.username); // String
86console.log(user.name); // String
87console.log(user.displayName); // String
88console.log(user.companyId); // Number
89console.log(user.companyName); // String
90console.log(user.email); // String
91```
92
93### Task
94
95```js
96import { Task } from 'workplayerapi/classes/Task';
97
98let obj = {};
99// Criando nova Task
100let task = new Task(obj);
101
102console.log(task.id); // Number
103console.log(task.projectId); // Number
104console.log(task.name); // String
105console.log(task.description); // String
106console.log(task.duration); // Number
107console.log(task.startedAt); // Number
108console.log(task.expectedAt); // Number
109console.log(task.finalizedAt); // Number
110console.log(task.createdAt); // Number
111console.log(task.createdBy); // String
112console.log(task.updatedBy); // String
113console.log(task.status); // String
114console.log(task.card); // Card
115```
116
117## Validações
118
119### E-mail
120
121```js
122import { validateEmail } from 'workplayerapi/global/validators';
123
124let email = 'kimr@kyros.com.br';
125
126// Passando o e-mail
127if (validateEmail(email)) console.log('E-mail é válido!');
128else console.log('E-mail é inválido');
129```
130
131### Senha
132
133```js
134import { validatePassword } from 'workplayerapi/global/validators';
135
136let password = 'kimr@kyros.com.br';
137
138// Passando a senha
139if (validatePassword(password)) console.log('Senha é válida!');
140else console.log('Senha é inválida');
141```
142
143### Usuário autenticado
144
145```js
146import { setToken } from 'workplayerapi/config/logged';
147
148// Pegar o token persistido com o Redux
149let token = 'token';
150
151setToken(token);
152```
153
154## Serviços
155
156### User
157Requisições que retornam um objeto do tipo User ou que trabalham com tal.
158
159#### Login
160
161```js
162import { makeLogin } from 'workplayerapi/routes/login';
163
164let email = 'kimr@kyros.com.br';
165let senha = 'password';
166
167// Passando o e-mail e senha
168makeLogin(email, senha)
169 .then((result) => {
170 if (result.login_success) {
171 console.log(JSON.stringify(result.user));
172 console.log(JSON.stringify(result.token));
173 }
174 else console.log(JSON.stringify(result.message));
175});
176```
177
178### Players
179Requisições que retornam um objeto do tipo Player ou que trabalham com tal.
180
181#### Get all players
182
183```js
184import { getAllPlayers } from 'workplayerapi/routes/player';
185
186// Passar todos os filtros necessários diretamente pela função
187// Caso algum filtro não seja necessário, passar com valor 'null'
188let departmentId = 1;
189let teamId = 1;
190let name = 'Kim';
191let pageSize = 10;
192let page = 2;
193let email = 'kimr@kyros.com.br';
194let functionId = 1;
195
196getAllPlayers(departmentId, teamId, name, pageSize, page, email, functionId)
197 .then((result) => console.log(JSON.stringify(result)));
198```
199
200### Cards
201Requisições que retornam um objeto do tipo Card ou que trabalham com tal.
202
203#### Get my card's deck
204
205```js
206import { getMyDeck } from 'workplayerapi/routes/cards';
207
208// Ao chamar este serviço será retornado um deck (uma lista de cards)
209
210getMyDeck()
211 .then((result) => {
212 // Aqui retornará uma mensagem pronta avisando o usuário que seu deck está vazio
213 if (result.deck === null) console.log(JSON.stringify(result.message));
214 else console.log(JSON.stringify(result.deck));
215});
216```
217
218### Tasks
219Requisições que retornam um objeto do tipo Task ou que trabalham com tal.
220
221#### Get all tasks
222
223```js
224import { getTasks } from 'workplayerapi/routes/tasks';
225
226// Ao chamar este serviço será retornado uma lista de tasks
227
228getTasks()
229 .then((result) => {
230 // Aqui retornará uma mensagem pronta avisando o usuário que não possui mais tasks
231 if (result.tasks === null) console.log(JSON.stringify(result.message));
232 else console.log(JSON.stringify(result.tasks));
233});
234```
235
236#### Finalize a task
237
238```js
239import { checkOutTask } from 'workplayerapi/routes/tasks';
240
241// Passar o id da task como parâmetro
242let id = 1866;
243
244checkOutTask(id)
245 .then((result) => {
246 if (result.taskId === null) console.log(JSON.stringify(result.message));
247 else console.log('Task ' + result.taskName + ' fished successfully!');
248});
249```
250
251#### suspend a task
252
253```js
254import { suspendTask } from 'workplayerapi/routes/tasks';
255
256// Passar o id da task e o motivo como parâmetros
257let id = 1866;
258let reason = '';
259
260suspendTask(id, reason)
261 .then((result) => {
262 if (result.taskId === null) console.log(JSON.stringify(result.message));
263 else console.log('Task ' + result.taskName + ' suspended successfully!');
264});
265```
266
267#### Return a task
268
269```js
270import { giveBackTask } from 'workplayerapi/routes/tasks';
271
272// Passar o id da task e o motivo como parâmetros
273let id = 1866;
274let reason = '';
275
276giveBackTask(id, reason)
277 .then((result) => {
278 if (result.taskId === null) console.log(JSON.stringify(result.message));
279 else console.log('Task ' + result.taskName + ' returned successfully!');
280});
281```
282
283###### NOTA
284A API está sendo construída aos poucos, portanto qualquer dúvida ou caso seja encontrado algum bug, reportar na seção de Issues.
285
286## Autor
287
288Kim Ruan Lopes - Kyros Tecnologias
289
290## Lisença
291
292MIT