提交 07a0de74 authored 作者: luojie's avatar luojie

修复订单物流查询,优化购物车

上级 b1ee38af
...@@ -3,6 +3,9 @@ package com.diaoyun.zion.chinafrica.dao; ...@@ -3,6 +3,9 @@ package com.diaoyun.zion.chinafrica.dao;
import com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity; import com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity;
import com.diaoyun.zion.master.dao.BaseDao; import com.diaoyun.zion.master.dao.BaseDao;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* 购物车记录表Dao * 购物车记录表Dao
...@@ -19,5 +22,7 @@ public interface TbCfCartRecordRDao extends BaseDao<TbCfCartRecordREntity> { ...@@ -19,5 +22,7 @@ public interface TbCfCartRecordRDao extends BaseDao<TbCfCartRecordREntity> {
*/ */
int deleteItems(String[] cartRecordIds); int deleteItems(String[] cartRecordIds);
TbCfCartRecordREntity queryByItemId(String itemId);
TbCfCartRecordREntity querySkuAndUrl(@Param("itemSku") String itemSku,@Param("sourceItemId") String sourceItemId);
} }
...@@ -66,4 +66,5 @@ public interface TbCfOrderDao extends BaseDao<TbCfOrderEntity> { ...@@ -66,4 +66,5 @@ public interface TbCfOrderDao extends BaseDao<TbCfOrderEntity> {
* @return * @return
*/ */
String getOrdersId(String orderId, String itemId); String getOrdersId(String orderId, String itemId);
} }
...@@ -37,7 +37,18 @@ public class TbCfCartRecordREntity implements Serializable { ...@@ -37,7 +37,18 @@ public class TbCfCartRecordREntity implements Serializable {
* 创建时间 * 创建时间
*/ */
private Date createTime; private Date createTime;
/**
* 商品链接
*/
private String sourceItemId;
/**
* 商品SKU
*/
private String itemSku;
/**
* 商品SKU
*/
private Integer itemNum;
/** /**
* 设置:购物车记录id * 设置:购物车记录id
*/ */
...@@ -111,4 +122,28 @@ public class TbCfCartRecordREntity implements Serializable { ...@@ -111,4 +122,28 @@ public class TbCfCartRecordREntity implements Serializable {
public void setCreateTime(Date createTime) { public void setCreateTime(Date createTime) {
this.createTime = createTime; this.createTime = createTime;
} }
public String getSourceItemId() {
return sourceItemId;
}
public void setSourceItemId(String sourceItemId) {
this.sourceItemId = sourceItemId;
}
public String getItemSku() {
return itemSku;
}
public void setItemSku(String itemSku) {
this.itemSku = itemSku;
}
public Integer getItemNum() {
return itemNum;
}
public void setItemNum(Integer itemNum) {
this.itemNum = itemNum;
}
} }
...@@ -248,4 +248,5 @@ public class TbCfItemDetailEntity implements Serializable { ...@@ -248,4 +248,5 @@ public class TbCfItemDetailEntity implements Serializable {
public void setCreateTime(Date createTime) { public void setCreateTime(Date createTime) {
this.createTime = createTime; this.createTime = createTime;
} }
} }
...@@ -6,6 +6,7 @@ import com.diaoyun.zion.chinafrica.dao.TbCfItemDetailDao; ...@@ -6,6 +6,7 @@ import com.diaoyun.zion.chinafrica.dao.TbCfItemDetailDao;
import com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity; import com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity;
import com.diaoyun.zion.chinafrica.entity.TbCfExpressTemplateEntity; import com.diaoyun.zion.chinafrica.entity.TbCfExpressTemplateEntity;
import com.diaoyun.zion.chinafrica.entity.TbCfItemDetailEntity; import com.diaoyun.zion.chinafrica.entity.TbCfItemDetailEntity;
import com.diaoyun.zion.chinafrica.service.TbCfCartRecordRService;
import com.diaoyun.zion.chinafrica.service.TbCfItemDetailService; import com.diaoyun.zion.chinafrica.service.TbCfItemDetailService;
import com.diaoyun.zion.chinafrica.vo.TbCfCartItemDetailVo; import com.diaoyun.zion.chinafrica.vo.TbCfCartItemDetailVo;
import com.diaoyun.zion.chinafrica.vo.TbCfItemDetailVo; import com.diaoyun.zion.chinafrica.vo.TbCfItemDetailVo;
...@@ -98,7 +99,15 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService { ...@@ -98,7 +99,15 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
String token = jwtTokenProvider.resolveToken(request); String token = jwtTokenProvider.resolveToken(request);
TbCfUserInfoVo tbCfUserInfoVo = tokenManager.validate(token); TbCfUserInfoVo tbCfUserInfoVo = tokenManager.validate(token);
//填充新商品必要信息 //填充新商品必要信息
fillItemInfo(tbCfItemDetailVo); 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()); TbCfExpressTemplateEntity expressTemplate = recognizeItemCategory(tbCfItemDetailVo.getItemTitle());
tbCfItemDetailVo.setItemCategory(expressTemplate.getTemplateId()); tbCfItemDetailVo.setItemCategory(expressTemplate.getTemplateId());
...@@ -106,15 +115,32 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService { ...@@ -106,15 +115,32 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
TbCfItemDetailEntity tbCfItemDetail= new TbCfItemDetailEntity(); TbCfItemDetailEntity tbCfItemDetail= new TbCfItemDetailEntity();
BeanUtils.copyProperties(tbCfItemDetailVo,tbCfItemDetail); BeanUtils.copyProperties(tbCfItemDetailVo,tbCfItemDetail);
//将商品加入购物车表 //将商品加入购物车表
tbCfItemDetailDao.save(tbCfItemDetail); TbCfCartRecordREntity tbCfCartRecordREntity1 = tbCfCartRecordRDao.queryByItemId(tbCfItemDetailVo.getItemId());
TbCfCartRecordREntity tbCfCartRecordREntity = new TbCfCartRecordREntity(); if(tbCfCartRecordREntity1 == null ){
tbCfCartRecordREntity.setCartRecordId(IdUtil.createIdbyUUID()); tbCfItemDetailDao.save(tbCfItemDetail);
tbCfCartRecordREntity.setCheckFlag(StateConstant.VALID); TbCfCartRecordREntity tbCfCartRecordREntity = new TbCfCartRecordREntity();
tbCfCartRecordREntity.setEnableFlag(StateConstant.VALID); tbCfCartRecordREntity.setCartRecordId(IdUtil.createIdbyUUID());
tbCfCartRecordREntity.setItemId(tbCfItemDetailVo.getItemId()); tbCfCartRecordREntity.setCheckFlag(StateConstant.VALID);
tbCfCartRecordREntity.setUserId(tbCfUserInfoVo.getUserId()); tbCfCartRecordREntity.setEnableFlag(StateConstant.VALID);
tbCfCartRecordREntity.setCreateTime(new Date()); tbCfCartRecordREntity.setItemId(tbCfItemDetailVo.getItemId());
tbCfCartRecordRDao.save(tbCfCartRecordREntity); tbCfCartRecordREntity.setUserId(tbCfUserInfoVo.getUserId());
tbCfCartRecordREntity.setCreateTime(new Date());
tbCfCartRecordREntity.setItemNum(tbCfItemDetailVo.getItemNum());
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()); return new Result(ResultCodeEnum.SUCCESS.getDesc());
} }
...@@ -151,15 +177,6 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService { ...@@ -151,15 +177,6 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
return result; return result;
} }
/**
* 填充新商品必要信息
* @param tbCfItemDetailVo
*/
private void fillItemInfo(TbCfItemDetailVo tbCfItemDetailVo) {
tbCfItemDetailVo.setItemId(IdUtil.createIdbyUUID());
tbCfItemDetailVo.setCreateTime(new Date());
}
/** /**
* 获取运费模板(包含分类) * 获取运费模板(包含分类)
* *
......
...@@ -106,6 +106,10 @@ public class TbCfCartItemDetailVo implements Serializable { ...@@ -106,6 +106,10 @@ public class TbCfCartItemDetailVo implements Serializable {
@ApiModelProperty("商品品名") @ApiModelProperty("商品品名")
private String descripitionName; private String descripitionName;
@ApiModelProperty("订单商品状态")
private String orderStatus;
public String getOrdersId() { public String getOrdersId() {
return ordersId; return ordersId;
} }
...@@ -304,4 +308,12 @@ public class TbCfCartItemDetailVo implements Serializable { ...@@ -304,4 +308,12 @@ public class TbCfCartItemDetailVo implements Serializable {
public void setCheckFlag(Integer checkFlag) { public void setCheckFlag(Integer checkFlag) {
this.checkFlag = checkFlag; this.checkFlag = checkFlag;
} }
public String getOrderStatus() {
return orderStatus;
}
public void setOrderStatus(String orderStatus) {
this.orderStatus = orderStatus;
}
} }
...@@ -181,6 +181,7 @@ public class TbCfOrderVo implements Serializable { ...@@ -181,6 +181,7 @@ public class TbCfOrderVo implements Serializable {
private Integer enableFlag; private Integer enableFlag;
public String getOrdersId() { public String getOrdersId() {
return ordersId; return ordersId;
} }
......
...@@ -10,6 +10,9 @@ ...@@ -10,6 +10,9 @@
<result property="checkFlag" column="check_flag"/> <result property="checkFlag" column="check_flag"/>
<result property="enableFlag" column="enable_flag"/> <result property="enableFlag" column="enable_flag"/>
<result property="createTime" column="create_time"/> <result property="createTime" column="create_time"/>
<result property="sourceItemId" column="source_item_id"/>
<result property="itemSku" column="item_sku"/>
<result property="itemNum" column="item_num"/>
</resultMap> </resultMap>
<select id="queryObject" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity"> <select id="queryObject" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity">
...@@ -19,7 +22,10 @@ ...@@ -19,7 +22,10 @@
`user_id`, `user_id`,
`check_flag`, `check_flag`,
`enable_flag`, `enable_flag`,
`create_time` `create_time`,
`item_num`,
`item_sku`,
`source_item_id`
from tb_cf_cart_record_r from tb_cf_cart_record_r
where cart_record_id = #{id} where cart_record_id = #{id}
</select> </select>
...@@ -30,7 +36,10 @@ ...@@ -30,7 +36,10 @@
`user_id`, `user_id`,
`check_flag`, `check_flag`,
`enable_flag`, `enable_flag`,
`create_time` `create_time`,
`item_num`,
`item_sku`,
`source_item_id`
from tb_cf_cart_record_r from tb_cf_cart_record_r
WHERE 1=1 WHERE 1=1
<if test="name != null and name.trim() != ''"> <if test="name != null and name.trim() != ''">
...@@ -64,19 +73,29 @@ ...@@ -64,19 +73,29 @@
`user_id`, `user_id`,
`check_flag`, `check_flag`,
`enable_flag`, `enable_flag`,
`create_time`) `create_time`,
`item_num`,
`item_sku`,
`source_item_id`)
values( values(
#{cartRecordId}, #{cartRecordId},
#{itemId}, #{itemId},
#{userId}, #{userId},
#{checkFlag}, #{checkFlag},
#{enableFlag}, #{enableFlag},
#{createTime}) #{createTime},
#{itemNum},
#{itemSku},
#{sourceItemId})
</insert> </insert>
<update id="update" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity"> <update id="update" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity">
update tb_cf_cart_record_r update tb_cf_cart_record_r
<set> <set>
<if test="itemNum != null">`item_num` = #{itemNum}, </if>
<if test="sourceItemId != null">`source_item_id` = #{sourceItemId}, </if>
<if test="itemSku != null">`item_sku` = #{itemSku}, </if>
<if test="itemId != null">`item_id` = #{itemId}, </if> <if test="itemId != null">`item_id` = #{itemId}, </if>
<if test="userId != null">`user_id` = #{userId}, </if> <if test="userId != null">`user_id` = #{userId}, </if>
<if test="checkFlag != null">`check_flag` = #{checkFlag}, </if> <if test="checkFlag != null">`check_flag` = #{checkFlag}, </if>
...@@ -103,5 +122,29 @@ ...@@ -103,5 +122,29 @@
#{cartRecordId} #{cartRecordId}
</foreach> </foreach>
</delete> </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`
from tb_cf_cart_record_r
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 item_id =#{itemId} and enable_flag=1
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -271,6 +271,7 @@ ...@@ -271,6 +271,7 @@
o.coupon_id, o.coupon_id,
o.coupon_title, o.coupon_title,
o.coupon_price, o.coupon_price,
o.order_status,
o.fee, o.fee,
o.tax, o.tax,
o.pay_id, o.pay_id,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论