提交 9495e71d authored 作者: zgy's avatar zgy

修改bug

上级 d003297b
......@@ -22,10 +22,7 @@ public interface TbCfCartRecordRDao extends BaseDao<TbCfCartRecordREntity> {
*/
int deleteItems(String[] cartRecordIds);
TbCfCartRecordREntity queryByItemId(@Param("itemId") String itemId,@Param("userId") String userId,@Param("itemSku") String itemSku);
TbCfCartRecordREntity querySkuAndUrl( @Param("itemSku") String itemSku, @Param("itemId") String itemId, @Param("sourceItemId") String sourceItemId, @Param("userId") String userId);
int queryItemNum(String userId);
TbCfCartRecordREntity queryByItemId(String itemId);
TbCfCartRecordREntity querySkuAndUrl(@Param("itemSku") String itemSku,@Param("sourceItemId") String sourceItemId);
}
......@@ -18,21 +18,19 @@ public interface TbCfItemDetailDao extends BaseDao<TbCfItemDetailEntity> {
/**
* 根据用户id获取购物车内物品
*
* @param userId
* @return
*/
List<TbCfCartItemDetailVo> getCartItemList(String userId, Integer checkFlag);
List<TbCfCartItemDetailVo> getCartItemList(String userId,Integer checkFlag);
/**
* 改变购物车的商品勾选状态
*
* @param cartRecordId
* @param checkFlag
* @return
*/
int changeItemState(String cartRecordId, Integer checkFlag);
int queryItemNum(String userId);
int changeState(@Param("ids") String[] ids, @Param("checkFlag") String checkFlag);
}
......@@ -101,11 +101,6 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
public Result addToCart(TbCfItemDetailVo tbCfItemDetailVo) throws InterruptedException, ExecutionException, TimeoutException {
String token = jwtTokenProvider.resolveToken(request);
TbCfUserInfoVo tbCfUserInfoVo = tokenManager.validate(token);
int itemCount = tbCfItemDetailDao.queryItemNum(tbCfUserInfoVo.getUserId());
System.out.println(itemCount);
if(itemCount>=99){
return new Result(ResultCodeEnum.ERROR.getCode()).setMessage("The shopping cart is full and needs to be cleaned!");
}
boolean flag = false;
if (tbCfItemDetailVo.getItemPrice() != null) {
int compare = tbCfItemDetailVo.getItemPrice().compareTo(BigDecimal.ZERO);
......@@ -115,26 +110,14 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
}
if (flag) {
//填充新商品必要信息
TbCfCartRecordREntity tbCfCartRecord = tbCfCartRecordRDao.querySkuAndUrl(tbCfItemDetailVo.getItemSku(),tbCfItemDetailVo.getItemId(), tbCfItemDetailVo.getSourceItemId(),tbCfUserInfoVo.getUserId());
if(tbCfItemDetailVo.getSourceItemId().equals("www.afrieshop.com")) {
if (tbCfCartRecord != null) {
tbCfItemDetailVo.setItemId(tbCfCartRecord.getItemId());
tbCfItemDetailVo.setItemNum(tbCfCartRecord.getItemNum() + tbCfItemDetailVo.getItemNum());
tbCfItemDetailVo.setCreateTime(new Date());
}else{
tbCfItemDetailVo.setItemId(tbCfItemDetailVo.getItemId());
tbCfItemDetailVo.setItemNum(tbCfItemDetailVo.getItemNum());
tbCfItemDetailVo.setCreateTime(new Date());
}
}else{
if (tbCfCartRecord != null) {
tbCfItemDetailVo.setItemId(tbCfCartRecord.getItemId());
tbCfItemDetailVo.setItemNum(tbCfCartRecord.getItemNum() + tbCfItemDetailVo.getItemNum());
tbCfItemDetailVo.setCreateTime(new Date());
}else{
tbCfItemDetailVo.setItemId(IdUtil.createIdbyUUID());
tbCfItemDetailVo.setCreateTime(new Date());
}
TbCfCartRecordREntity tbCfCartRecord = tbCfCartRecordRDao.querySkuAndUrl(tbCfItemDetailVo.getItemSku(), tbCfItemDetailVo.getSourceItemId());
if (tbCfCartRecord != null) {
tbCfItemDetailVo.setItemId(tbCfCartRecord.getItemId());
tbCfItemDetailVo.setItemNum(tbCfCartRecord.getItemNum() + tbCfItemDetailVo.getItemNum());
tbCfItemDetailVo.setCreateTime(new Date());
} else {
tbCfItemDetailVo.setItemId(IdUtil.createIdbyUUID());
tbCfItemDetailVo.setCreateTime(new Date());
}
//为商品分类,后面计算运费
TbCfExpressTemplateEntity expressTemplate = recognizeItemCategory(tbCfItemDetailVo.getItemTitle());
......@@ -143,20 +126,8 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
TbCfItemDetailEntity tbCfItemDetail = new TbCfItemDetailEntity();
BeanUtils.copyProperties(tbCfItemDetailVo, tbCfItemDetail);
//将商品加入购物车表
TbCfCartRecordREntity tbCfCartRecordREntity1 = tbCfCartRecordRDao.queryByItemId(tbCfItemDetailVo.getItemId(),tbCfUserInfoVo.getUserId(),tbCfItemDetailVo.getItemSku());
if (tbCfCartRecordREntity1!=null) {
TbCfCartRecordREntity tbCfCartRecordREntity = new TbCfCartRecordREntity();
tbCfCartRecordREntity.setCartRecordId(tbCfCartRecordREntity1.getCartRecordId());
tbCfCartRecordREntity.setItemId(tbCfItemDetailVo.getItemId());
tbCfCartRecordREntity.setCheckFlag(StateConstant.VALID);
tbCfCartRecordREntity.setEnableFlag(StateConstant.VALID);
tbCfCartRecordREntity.setUserId(tbCfCartRecordREntity1.getUserId());
tbCfCartRecordREntity.setCreateTime(new Date());
tbCfCartRecordREntity.setItemNum(tbCfItemDetailVo.getItemNum());
tbCfCartRecordRDao.update(tbCfCartRecordREntity);
tbCfItemDetailDao.update(tbCfItemDetail);
} else {
TbCfCartRecordREntity tbCfCartRecordREntity1 = tbCfCartRecordRDao.queryByItemId(tbCfItemDetailVo.getItemId());
if (tbCfCartRecordREntity1 == null) {
tbCfItemDetailDao.save(tbCfItemDetail);
TbCfCartRecordREntity tbCfCartRecordREntity = new TbCfCartRecordREntity();
tbCfCartRecordREntity.setCartRecordId(IdUtil.createIdbyUUID());
......@@ -169,6 +140,17 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
tbCfCartRecordREntity.setItemSku(tbCfItemDetailVo.getItemSku());
tbCfCartRecordREntity.setSourceItemId(tbCfItemDetailVo.getSourceItemId());
tbCfCartRecordRDao.save(tbCfCartRecordREntity);
} else {
tbCfItemDetailDao.update(tbCfItemDetail);
TbCfCartRecordREntity tbCfCartRecordREntity = new TbCfCartRecordREntity();
tbCfCartRecordREntity.setCartRecordId(tbCfCartRecordREntity1.getCartRecordId());
tbCfCartRecordREntity.setItemId(tbCfItemDetailVo.getItemId());
tbCfCartRecordREntity.setCheckFlag(StateConstant.VALID);
tbCfCartRecordREntity.setEnableFlag(StateConstant.VALID);
tbCfCartRecordREntity.setUserId(tbCfUserInfoVo.getUserId());
tbCfCartRecordREntity.setCreateTime(new Date());
tbCfCartRecordREntity.setItemNum(tbCfItemDetailVo.getItemNum());
tbCfCartRecordRDao.update(tbCfCartRecordREntity);
}
return new Result(ResultCodeEnum.SUCCESS.getDesc());
} else {
......@@ -176,6 +158,7 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
}
}
@Override
public Result insertItemDetail(TbCfItemDetailVo tbCfItemDetailVo) {
Result result = new Result();
......
......@@ -124,47 +124,28 @@
</delete>
<select id="querySkuAndUrl" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity">
select
`cart_record_id`,
`item_id`,
`user_id`,
`check_flag`,
`enable_flag`,
`create_time`,
`source_item_id`,
`item_sku`,
`item_num`
`cart_record_id`,
`item_id`,
`user_id`,
`check_flag`,
`enable_flag`,
`create_time`,
`source_item_id`,
`item_sku`,
`item_num`
from tb_cf_cart_record_r
where 1=1
and user_id=#{userId}
and enable_flag=1
<if test="itemSku != null and itemSku.trim() != ''">
and item_sku =#{itemSku}
</if>
<if test="sourceItemId != null and sourceItemId.trim() != ''">
and source_item_id=#{sourceItemId}
</if>
<if test="itemId != null and itemId.trim() != ''">
and item_id=#{itemId}
</if>
where item_sku =#{itemSku} and source_item_id=#{sourceItemId} and enable_flag=1
</select>
<select id="queryByItemId" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity">
select `cart_record_id`,
`item_id`,
`user_id`,
`check_flag`,
`enable_flag`,
`create_time`,
`source_item_id`,
`item_sku`,
`item_num` from tb_cf_cart_record_r where 1=1
and enable_flag=1
and user_id=#{userId}
and item_id =#{itemId}
<if test="itemSku != null and itemSku.trim() != ''">
and item_sku =#{itemSku}
</if>
`item_id`,
`user_id`,
`check_flag`,
`enable_flag`,
`create_time`,
`source_item_id`,
`item_sku`,
`item_num` from tb_cf_cart_record_r where item_id =#{itemId} and enable_flag=1
</select>
</mapper>
\ No newline at end of file
......@@ -149,7 +149,7 @@
<if test="shopUrl != null">`shop_url` = #{shopUrl},</if>
<if test="createTime != null">`create_time` = #{createTime}</if>
</set>
where item_id = #{itemId} and item_sku=#{itemSku}
where item_id = #{itemId}
</update>
<delete id="delete">
......@@ -163,26 +163,25 @@
</foreach>
</delete>
<!--获取用户购物车内商品-->
<select id="getCartItemList" resultType="com.diaoyun.zion.chinafrica.vo.TbCfCartItemDetailVo">
select t1.cart_record_id,t1.check_flag,t2.* from tb_cf_cart_record_r t1,tb_cf_item_detail t2 where
t1.item_id=t2.item_id
and t1.user_id=#{userId} and t2.item_price is not null
<if test="checkFlag != null">and t1.check_flag = #{checkFlag}</if>
and t1.enable_flag=1 order by t2.create_time desc
</select>
<!--获取用户购物车内商品-->
<select id="getCartItemList" resultType="com.diaoyun.zion.chinafrica.vo.TbCfCartItemDetailVo">
select t1.cart_record_id,t1.check_flag,t2.* from tb_cf_cart_record_r t1,tb_cf_item_detail t2 where t1.item_id=t2.item_id
and t1.user_id=#{userId} and t2.item_price is not null
<if test="checkFlag != null"> and t1.check_flag = #{checkFlag}</if>
and t1.enable_flag=1 order by t2.create_time desc
</select>
<!--改变购物车的商品勾选状态(旧版)-->
<update id="changeItemState">
<!--改变购物车的商品勾选状态-->
<update id="changeItemState">
update tb_cf_cart_record_r set check_flag=#{checkFlag} where cart_record_id=#{cartRecordId}
</update>
<!--改变购物车商品勾选状态(新版)-->
<update id="changeState">
update tb_cf_cart_record_r set check_flag=#{checkFlag} where cart_record_id in
<foreach item="id" collection="ids" open="(" separator="," close=")">
#{id}
</foreach>
</update>
<!--改变购物车商品勾选状态(新版)-->
<update id="changeState">
update tb_cf_cart_record_r set check_flag=#{checkFlag} where cart_record_id in
<foreach item="id" collection="ids" open="(" separator="," close=")">
#{id}
</foreach>
</update>
</mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论