Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function logUsage(event, subject, data, callback) {
- console.log('EVENT', event)
- console.log('SUBJECT', subject)
- console.log('DATA', data)
- console.log('CALLBACK', callback)
- try {
- dynamoDbHelper.getItem(event.body.tableName, event.body.CustomerId)
- .then(result => {
- const time = moment().tz("America/Denver").format('MM/DD/YY hh:mm A');
- const logObject = {
- "TextType": subject,
- "ErrorMessage": data.errorMessage,
- "SentDate": time,
- "Success": data.success,
- "ToNumber": event.body.sendTo
- };
- if (Object.keys(result).length === 0) { // If there is no previously existing CustomerId then enter it in with its corresponding ticketId
- const ticketId = event.body.ticketId;
- dynamoDbHelper.putItem(event.body.tableName, {
- "CustomerId": event.body.CustomerId.CustomerId,
- "TicketIds": {
- [ticketId]: [logObject]
- }
- })
- } else { // if there is an existing Customer Id check if there is a ticketId in the logs that match the incoming ticketId
- const ticketId = event.body.ticketId;
- if (ticketId in result.Item.TicketIds) { // If there is a matching ticketId then update by adding a new log object
- dynamoDbHelper.updateItem(
- event.body.tableName,
- event.body.CustomerId,
- "SET #ticketIds.#ticketId = list_append(#ticketIds.#ticketId, :new)",
- { "#ticketIds": "TicketIds", "#ticketId": ticketId },
- {
- ":new": [logObject]
- },
- "UPDATED_NEW",
- ).then(result => {
- console.log('UPDATE ITEM RESULT INDEX.JS callback', result)
- }).catch(error => {
- console.log('UPDATE ITEM ERROR', error)
- })
- } else { // If there are no matching ticketIds then put a new ticket Id with its corresponding log
- const ticketId = event.body.ticketId;
- dynamoDbHelper.updateItem(
- event.body.tableName,
- event.body.CustomerId,
- "SET #ticketIds.#ticketId = :newTicketId",
- { "#ticketIds": "TicketIds", "#ticketId": ticketId },
- {
- ":newTicketId": [logObject]
- },
- "UPDATED_NEW"
- ).then(result => {
- console.log('UPDATE ITEM NO MATCHING TICKET ID', result)
- }).catch(error => {
- console.log('UPDATE ITEM 2 ERROR', error)
- })
- }
- }
- console.log('I got it right here')
- if (subject != null && data != null) {
- callback(null, event, text, subject)
- } else {
- callback(err)
- }
- })
- .catch(error => {
- console.log('LOG USAGE ERROR', error)
- })
- }
- catch (err) {
- return err
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement