feat: individual discounts creation form

feat: individual discounts deletion
fix: discounts mapping from db
This commit is contained in:
Sérgio Salgado 2021-07-22 17:19:45 +01:00 committed by Josh Harvey
parent 07f15db851
commit 768b5a30e1
8 changed files with 435 additions and 19 deletions

View file

@ -1,5 +1,6 @@
const db = require('./db')
const uuid = require('uuid')
const _ = require('lodash/fp')
function getAvailablePromoCodes () {
const sql = `SELECT * FROM coupons WHERE soft_deleted=false`
@ -28,12 +29,23 @@ function getNumberOfAvailablePromoCodes () {
function getAvailableIndividualDiscounts () {
const sql = `SELECT * from individual_discounts WHERE soft_deleted=false`
return db.any(sql)
return db.any(sql).then(res => _.map(it => ({
id: it.id,
idType: it.identification,
value: it.value,
discount: it.discount,
softDeleted: it.soft_deleted
}), res))
}
function createIndividualDiscount (idType, value, discount) {
const idTypes = {
phone: 'phone',
idNumber: 'id_number'
}
const sql = `INSERT INTO individual_discounts (id, identification, value, discount) VALUES ($1, $2, $3, $4) RETURNING *`
return db.one(sql, [uuid.v4(), idType, value, discount])
return db.one(sql, [uuid.v4(), idTypes[idType], value, discount])
}
function deleteIndividualDiscount (id) {