· 4 years ago · Mar 31, 2021, 04:24 PM
1router.post('/', async (req, res) => {
2 //create an item
3 const table = table_names.items;
4 const { item_name, item_description, item_rarity, item_sell_price,
5 item_buy_price} = req.body;
6
7 if(!Number.isInteger(item_sell_price) || !Number.isInteger(item_buy_price)){
8 const msg_err = {
9 msg: 'Los valores ingresados para los precios no son válidos',
10 code: '1'
11 }
12 res.send(msg_err);
13 }
14
15 //validate name does not contain any number
16 if(/\d/.test(item_name)){
17 const msg_err = {
18 msg: 'Los nombres no pueden contener números',
19 code: '1'
20 }
21 res.send(msg_err);
22 }
23
24
25 const data_name = {
26 item_name: item_name
27 }
28
29 //ask if this item with this name exists
30 const allName = await db.GetByParameter(table, data_name);
31 if (allName.length) {
32 const msg_err = {
33 msg: 'El item cone este nombre ya existe',
34 code: '1'
35 }
36 res.send(msg_err)
37 return;
38 }
39
40 //validate rarity option
41
42 //validate price
43 if(item_buy_price < 0 || item_sell_price < 0){
44 const err_msg = {
45 msg: 'Porfavor ingrese un precio de venta o compra válido',
46 code: '1'
47 };
48 res.send(err_msg);
49 }
50
51
52 item_sell_price = parseInt(item_sell_price);
53 item_buy_price = parseInt(item_buy_price);
54 const data = {
55 item_name,
56 item_sell_price,
57 item_buy_price,
58 item_description,
59 item_rarity
60 }
61
62
63});