店铺信息获取bug修复
This commit is contained in:
parent
59590ef2da
commit
b7963b1972
@ -271,10 +271,14 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMappe
|
||||
Integer store_category_id = Convert.toInt(s.get("store_category_id"));
|
||||
Integer store_grade_id = Convert.toInt(s.get("store_grade_id"));
|
||||
|
||||
Optional<ShopStoreInfo> shopStoreInfos = store_info_rows.stream().filter(r -> r.equals(ObjectUtil.equal(r.getStore_id(), store_id))).findFirst();
|
||||
Optional<ShopStoreInfo> shopStoreInfos = store_info_rows.stream().filter(r -> ObjectUtil.equal(r.getStore_id(), store_id)).findFirst();
|
||||
if (shopStoreInfos.isPresent()) {
|
||||
ShopStoreInfo shopStoreInfo = shopStoreInfos.orElseGet(ShopStoreInfo::new);
|
||||
Map map = Convert.toMap(Object.class, Object.class, shopStoreInfo);
|
||||
// 店铺是否自配送?
|
||||
// s.put("is_delivery_self", s.getOrDefault("is_delivery_self", CommonConstant.Disable2));
|
||||
// // 店铺内部配送费
|
||||
// s.put("shopping_fee_inner", s.getOrDefault("shopping_fee_inner", 0));
|
||||
s.putAll(map);
|
||||
}
|
||||
|
||||
@ -285,9 +289,6 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMappe
|
||||
Optional<ShopBaseStoreGrade> baseStoreGrades = base_store_grade_rows.stream().filter(h -> ObjectUtil.equal(h.getStore_grade_id(), store_grade_id)).findFirst();
|
||||
ShopBaseStoreGrade grade = baseStoreGrades.orElseGet(ShopBaseStoreGrade::new);
|
||||
s.put("store_grade_name", grade.getStore_grade_name());
|
||||
|
||||
// 店铺是否自配送?
|
||||
s.put("is_delivery_self", s.getOrDefault("is_delivery_self", CommonConstant.Disable2));
|
||||
});
|
||||
}
|
||||
|
||||
@ -2505,7 +2506,8 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMappe
|
||||
|
||||
// 店铺内部配送费
|
||||
info.setShopping_fee_inner(Convert.toInt(getParameter("shopping_fee_inner", 0)));
|
||||
info.setIs_delivery_self(Convert.toInt(getParameter("is_delivery_self", 0)));
|
||||
info.setIs_delivery_self(Convert.toInt(getParameter("is_delivery_self", 2)));
|
||||
// log.info("店铺内部配送费和是否自配送: {},{}", info.getShopping_fee_inner(), info.getIs_delivery_self());
|
||||
|
||||
// 百度坐标系BD09经纬度 转出 火星坐标系GCJ02经纬度 (因为数据库保存的经纬度统一是GCJ02经纬度,所以需要转换 )
|
||||
base = bd09ToGcj02Gps(base);
|
||||
|
||||
@ -2320,7 +2320,7 @@ public class ShopUserCartServiceImpl extends BaseServiceImpl<ShopUserCartMapper,
|
||||
|
||||
// 店铺的打包费
|
||||
// logger.info("开始确认店铺打包费");
|
||||
BigDecimal packingFee = getStorePackingFee(storeId, isVirtualOrder, Convert.toInt(storeInfo.get("delivery_type_id"))); // 商家打包费
|
||||
BigDecimal packingFee = getStorePackingFee(storeId, isVirtualOrder); // 商家打包费
|
||||
storeInfo.put("packing_fee", packingFee);
|
||||
|
||||
storeInfo.put("productMoney", 0);
|
||||
@ -3143,38 +3143,34 @@ public class ShopUserCartServiceImpl extends BaseServiceImpl<ShopUserCartMapper,
|
||||
* 根据条件获取店铺的打包费
|
||||
*
|
||||
* @param storeId 店铺ID
|
||||
* @param isVirtualOrder 是否为同城配送
|
||||
* @param deliveryTypeId
|
||||
* @param isVirtualOrder 是否为虚拟商品
|
||||
* @return 打包费金额
|
||||
*/
|
||||
private BigDecimal getStorePackingFee(Integer storeId, Boolean isVirtualOrder, Integer deliveryTypeId) {
|
||||
// logger.info("确认店铺打包费参数:storeId{} isVirtualOrder{}", storeId, isVirtualOrder);
|
||||
// 获取店铺基础打包费
|
||||
BigDecimal packingFee = shopStoreBaseService.getStorePackingFee(storeId);
|
||||
// logger.info("店铺ID为{},同城配送,收取打包费{}元", storeId, packingFee);
|
||||
|
||||
// 如果打包费为空或小于等于0,直接返回0
|
||||
if (CheckUtil.isEmpty(packingFee)) {
|
||||
private BigDecimal getStorePackingFee(Integer storeId, Boolean isVirtualOrder) {
|
||||
// 参数校验
|
||||
if (storeId == null) {
|
||||
logger.warn("获取店铺打包费失败:店铺ID为空");
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
|
||||
// deliveryTypeId = deliveryTypeId == null ? StateCode.DELIVERY_TYPE_SAME_CITY : deliveryTypeId;
|
||||
// 获取店铺基础打包费
|
||||
BigDecimal packingFee = shopStoreBaseService.getStorePackingFee(storeId);
|
||||
|
||||
// 只有同城配送才收取打包费
|
||||
// if (Boolean.FALSE.equals(isVirtualOrder)
|
||||
// && deliveryTypeId != null && (deliveryTypeId.intValue() == StateCode.DELIVERY_TYPE_SAME_CITY)
|
||||
// || deliveryTypeId.intValue() == StateCode.DELIVERY_TYPE_IN_STORE_SERVICE) {
|
||||
// logger.debug("店铺ID,同城配送,符合收取打包费{}元", storeId, packingFee);
|
||||
// return packingFee;
|
||||
// }
|
||||
|
||||
if (Boolean.FALSE.equals(isVirtualOrder)) {
|
||||
logger.debug("店铺ID,同城配送,符合收取打包费{}元", storeId, packingFee);
|
||||
return packingFee;
|
||||
// 如果打包费为空或小于等于0,直接返回0
|
||||
if (packingFee == null || packingFee.compareTo(BigDecimal.ZERO) <= 0) {
|
||||
logger.debug("店铺ID为{},打包费为{}元,不收取打包费", storeId, packingFee);
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
|
||||
// 虚拟商品不收取打包费
|
||||
return BigDecimal.ZERO;
|
||||
if (Boolean.TRUE.equals(isVirtualOrder)) {
|
||||
logger.debug("店铺ID为{},虚拟商品订单,不收取打包费", storeId);
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
|
||||
logger.debug("店铺ID为{},实体商品订单,收取打包费{}元", storeId, packingFee);
|
||||
return packingFee;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.suisung.mall.shop.store.mapper.ShopStoreInfoMapper">
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
*
|
||||
</sql>
|
||||
|
||||
<select id="getStoreInfoById" resultType="Map">
|
||||
SELECT
|
||||
<include refid="Base_Column_List"/>
|
||||
FROM
|
||||
shop_store_info
|
||||
WHERE
|
||||
store_id = #{store_id}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue
Block a user