var express = require(‘express‘); var router = express.Router(); var models = require(‘../../models‘) router.post(‘/‘,async function(req,res,next){ var code = req.body.code;// 这里的code是 扫描进去的条形码 // 1.根据扫入的条形码 来搜索 Product表中,有没有这个商品 let product = await models.Product.findOne({ where:{ code:code, } }) // 2.如果Product表中没有这个商品,就返回 if(!product){ res.json({success:false,message:‘此商品不存在‘}) return; } // 3.如果Product表中有这个商品, // 就查询这个商品 在不在购物车Cart表中 created:不存在为true,存在false let [cart,created] = await models.Cart.findOrCreate({ where:{ productId:product.id, userId: 9/*req.decoded.user.id*/ }, // 如果这个商品不在购物车中的话, 就把这个商品添加进购物车 defaults:{ number:1, userId: 9 /*req.defaults.user.id*/, productId:product.id } }) // 4. 9.如果购物车表中 已经有这个商品存在 if(!created){ let cart = await models.Cart.findOne({ where:{productId:product.id} }) cart.increment(‘number‘)// 就把当前的商品数量 number增加1 return res.json({success:true,message:‘增加成功‘}) } res.json({success:true,message:‘添加成功‘,data:cart}) }) module.exports = router;
原文:https://www.cnblogs.com/cl1998/p/13170541.html