購物車管理模組

2022-08-14 21:21:19 字數 2593 閱讀 2633

查詢使用者id和產品id號,如果還沒加購物車,則設為選中狀態,並新增乙個,已經加入了就使購買數量加1,同時對庫存和購買數量作聯動校驗,最後記得更新到資料庫中。

@autowired

@autowired

//投入乙個商品到購物車

public serverresponseadd(integer userid,integer count,integer productid)

if(cart==null)else

cartvo cartvo=this.getcartvolimit(userid);

return serverresponse.createbysuccess(cartvo);

}

這裡封裝了乙個bigdecimal類,用於計算加減乘除的運算,相比原生的類,這個可以保證浮點操作的精度最佳,

//獲取使用者的乙個購物車列表 並對庫存和購買數量做聯動校驗

public cartvo getcartvolimit(int userid)else

cartproductvo.setquantity(buylimitcount);

//計算總價

}

數量的操作都必須對庫存進行檢查,並注意更新庫存。

public serverresponse update(integer userid,integer count,integer productid)

if(cart!=

null)

cartvo cartvolimit = getcartvolimit(userid);//判斷庫存是否足夠

return serverresponse.createbysuccess(cartvolimit);

}public serverresponse deleteproduct(integer userid,string productids)

cartvo cartvolimit = getcartvolimit(userid);//判斷庫存是否足夠

return serverresponse.createbysuccess(cartvolimit);

}

delete from mmall_cart

where user_id=#

and product_id in

"productidlist" index="index"

item="item"

open="(" separator=","

close=")">

#if>

delete>

//全選

//全反選

//單獨選 通過productid判斷選中產品

//單獨反選

public serverresponseselectorunselect(integer userid,integer checked,integer productid)

//查詢當前使用者的購物車裡面的購買數量

public serverresponsegetcartproductcount(integer userid)

}

"checkedoruncheckedbyuserid" parametertype="map" >

update mmall_cart

set checked=#,

update_time = now()

where user_id=#

and product_id=#

if>

/*注意!如果user_id的查詢結果不存在 sum()就會返回null 要麼返回值改為integer 由service層處理 要麼直接mybatis報錯 這裡用內建函式轉換*/

select nullif(sum(quantity),0) as count from mmall_cart where user_id=#

select>

後台管理介面 購物車模組

上級目錄 購物車模組 具體返回字段意思參見cart購物車表 返回狀態碼 無 productid,商品id count,購物車中商品數量 carttotalprice 1119840.0,所有購物車商品記錄 總和 allchecked true,是否處於全選狀態,會根據是否有記錄處於未被選中狀態自動判...

購物車模組的開發

需求分析 實現乙個購物城模組,並具有電商平台的功能,比如新增商品,刪除商品,顯示當前購物車中的商品列表,在列表上單選 單反選,全選 全不選等 專案使用mvc的設計,首先是cartcontroller類 public class cartcontroller return icartservice.a...

19 購物車模組 加入購物車功能開發

購物車功能的開發是使用者在前端將商品加入到購物車中的操作,加入的時候分兩種情況,一種是商品已經在購物車裡面了,如果使用者再新增,我們只要增加對應的數量即可 第二種是原來購物車不存在該商品,我們要將該商品新增到購物車中。1 介面編寫 新建cartcontroller類 新增商品到購物車 新增商品到購物...