@@ -4,29 +4,67 @@ const Order = require("../models/orderModel");
44// const { sendToQueue } = require("../utils/sqs");
55const { v4 : uuidv4 } = require ( "uuid" ) ;
66
7+ const AWS = require ( 'aws-sdk' ) ;
8+
9+ const dynamodb = new AWS . DynamoDB . DocumentClient ( ) ;
10+ const ordersTable = "OrdersTable" ;
11+
12+
713exports . handler = async ( event ) => {
14+ try {
15+
16+ console . log ( 'Environment:' , process . env ) ;
17+
18+ const res = await dynamodb . get ( {
19+ TableName : ordersTable ,
20+ Key : { "id" : "3" }
21+ } ) . promise ( ) ;
22+
23+ console . log ( "res from get item:" , res ) ;
24+ console . log ( "item from res: " , res . Item ) ;
25+
26+ const newCount = res . Item . count + 1 ;
27+
28+ const res2 = await dynamodb . put ( {
29+ TableName : ordersTable ,
30+ Item : {
31+ "id" : "3" ,
32+ "count" : newCount
33+ }
34+ } ) . promise ( ) ;
35+
36+ console . log ( "res2 after update: " , res2 ) ;
37+
38+
39+ // await connectDB();
840
9- // console.log('Environment:', process.env );
41+ // const { customerName, items } = JSON.parse(event.body );
1042
11- await connectDB ( ) ;
43+ // const totalAmount = items.reduce((sum, item) => sum + item.price * item.quantity, 0 );
1244
13- const { customerName, items } = JSON . parse ( event . body ) ;
14-
15- const totalAmount = items . reduce ( ( sum , item ) => sum + item . price * item . quantity , 0 ) ;
16-
17- const order = new Order ( { orderId : uuidv4 ( ) , customerName, items, totalAmount } ) ;
18- await order . save ( ) ;
45+ // const order = new Order({ orderId: uuidv4(), customerName, items, totalAmount });
46+ // await order.save();
1947
20- console . log ( 'order-created:' , order ) ;
48+ // console.log('order-created:', order);
2149
22- // await setCache(`order:${order.orderId}`, order);
50+ // await setCache(`order:${order.orderId}`, order);
2351
24- // console.log('cache-set:', order);
52+ // console.log('cache-set:', order);
2553
26- // await sendToQueue({ orderId: order.orderId, status: "Pending" });
54+ // await sendToQueue({ orderId: order.orderId, status: "Pending" });
2755
28- return {
29- statusCode : 201 ,
30- body : JSON . stringify ( { message : "Order created" , orderId : order . orderId } ) ,
31- } ;
56+ return {
57+ statusCode : 201 ,
58+ body : JSON . stringify ( { message : "Order created" , orderId : order . orderId } ) ,
59+ } ;
60+ } catch ( e ) {
61+ console . log ( e ) ;
62+ return {
63+ statusCode : 500 ,
64+ body : JSON . stringify ( {
65+ event : event ,
66+ exception : e . toString ( )
67+ } )
68+ } ;
69+ }
3270} ;
0 commit comments