运费设置业务类 添加相关方法
This commit is contained in:
parent
ac98be5c09
commit
7a00de8aa9
@ -27,8 +27,8 @@ public class ShopStoreSameCityTransportBaseDTO implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty(value = "店铺同城快递基础运费设置")
|
||||
ShopStoreSameCityTransportBase shopStoreSameCityTransportBase;
|
||||
ShopStoreSameCityTransportBase transportBase;
|
||||
|
||||
@ApiModelProperty(value = "店铺同城快递运费设置(起送条件+优惠条件)")
|
||||
public List<ShopStoreSameCityTransport> shopStoreSameCityTransportList;
|
||||
public List<ShopStoreSameCityTransport> transportList;
|
||||
}
|
||||
|
||||
@ -9,6 +9,7 @@
|
||||
package com.suisung.mall.shop.store.service;
|
||||
|
||||
import com.suisung.mall.common.api.CommonResult;
|
||||
import com.suisung.mall.common.modules.store.ShopStoreSameCityTransportBase;
|
||||
import com.suisung.mall.common.pojo.dto.ShopStoreSameCityTransportBaseDTO;
|
||||
|
||||
public interface ShopStoreSameCityTransportBaseService {
|
||||
@ -32,4 +33,12 @@ public interface ShopStoreSameCityTransportBaseService {
|
||||
* @return
|
||||
*/
|
||||
ShopStoreSameCityTransportBaseDTO getDetailById(Long storeId);
|
||||
|
||||
|
||||
/**
|
||||
* 保存同城配送基础设置(存在更新,不存在新增)
|
||||
* @param shopStoreSameCityTransportBase
|
||||
* @return
|
||||
*/
|
||||
Boolean saveOrUpdateShopStoreSameCityTransportBase(ShopStoreSameCityTransportBase shopStoreSameCityTransportBase);
|
||||
}
|
||||
|
||||
@ -23,4 +23,12 @@ public interface ShopStoreSameCityTransportService {
|
||||
* @return
|
||||
*/
|
||||
List<ShopStoreSameCityTransport> selectShopStoreSameCityTransportList(Long transportBaseId);
|
||||
|
||||
/**
|
||||
* 保存同城配送扩展设置列表(存在就更新,不存在就新增)
|
||||
* @param transportBaseId
|
||||
* @param transportList
|
||||
* @return 成功的记录数
|
||||
*/
|
||||
Integer saveOrUpdateShopStoreSameCityTransportList(Long transportBaseId, List<ShopStoreSameCityTransport> transportList);
|
||||
}
|
||||
|
||||
@ -82,79 +82,127 @@ import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser;
|
||||
@Service
|
||||
public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreActivityBaseMapper, ShopStoreActivityBase> implements ShopStoreActivityBaseService {
|
||||
|
||||
@Autowired
|
||||
private ShopProductIndexService shopProductIndexService;
|
||||
|
||||
@Autowired
|
||||
private ShopActivityMarketingHistoryService shopActivityMarketingHistoryService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreBaseService shopStoreBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopBaseActivityTypeService shopBaseActivityTypeService;
|
||||
|
||||
@Autowired
|
||||
private UserInfoService userInfoService;
|
||||
|
||||
@Autowired
|
||||
private AccountService accountService;
|
||||
|
||||
@Autowired
|
||||
private ShopUserVoucherService userVoucherService;
|
||||
|
||||
@Autowired
|
||||
private ShopActivityCutpriceHistoryService shopActivityCutpriceHistoryService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreActivityBaseService shopStoreActivityBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopActivityCutpriceService shopActivityCutpriceService;
|
||||
|
||||
@Autowired
|
||||
private ShopProductItemService shopProductItemService;
|
||||
|
||||
@Autowired
|
||||
private ShopBaseCurrencyService shopBaseCurrencyService;
|
||||
|
||||
@Autowired
|
||||
private ShopProductImageService shopProductImageService;
|
||||
|
||||
@Autowired
|
||||
private ShopProductBaseService shopProductBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopActivityLotteryHistoryService shopActivityLotteryHistoryService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreActivityItemService shopStoreActivityItemService;
|
||||
|
||||
@Autowired
|
||||
private ShopActivityGroupbuyStoreHistoryService activityGroupbuyStoreHistoryService;
|
||||
|
||||
@Autowired
|
||||
private ShopActivityGroupbookingService shopActivityGroupbookingService;
|
||||
|
||||
@Autowired
|
||||
private ShopBaseStateCodeService shopBaseStateCodeService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreActivityCodeService shopStoreActivityCodeService;
|
||||
|
||||
@Autowired
|
||||
private ShopOrderDataService shopOrderDataService;
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(ShopStoreActivityBaseServiceImpl.class);
|
||||
@Autowired
|
||||
ShopOrderBaseService shopOrderBaseService;
|
||||
|
||||
@Autowired
|
||||
ShopUserVoucherService shopUserVoucherService;
|
||||
|
||||
@Autowired
|
||||
private ShopProductIndexService shopProductIndexService;
|
||||
@Autowired
|
||||
private ShopActivityMarketingHistoryService shopActivityMarketingHistoryService;
|
||||
@Autowired
|
||||
private ShopStoreBaseService shopStoreBaseService;
|
||||
@Autowired
|
||||
private ShopBaseActivityTypeService shopBaseActivityTypeService;
|
||||
@Autowired
|
||||
private UserInfoService userInfoService;
|
||||
@Autowired
|
||||
private AccountService accountService;
|
||||
@Autowired
|
||||
private ShopUserVoucherService userVoucherService;
|
||||
@Autowired
|
||||
private ShopActivityCutpriceHistoryService shopActivityCutpriceHistoryService;
|
||||
@Autowired
|
||||
private ShopStoreActivityBaseService shopStoreActivityBaseService;
|
||||
@Autowired
|
||||
private ShopActivityCutpriceService shopActivityCutpriceService;
|
||||
@Autowired
|
||||
private ShopProductItemService shopProductItemService;
|
||||
@Autowired
|
||||
private ShopBaseCurrencyService shopBaseCurrencyService;
|
||||
@Autowired
|
||||
private ShopProductImageService shopProductImageService;
|
||||
@Autowired
|
||||
private ShopProductBaseService shopProductBaseService;
|
||||
@Autowired
|
||||
private ShopActivityLotteryHistoryService shopActivityLotteryHistoryService;
|
||||
@Autowired
|
||||
private ShopStoreActivityItemService shopStoreActivityItemService;
|
||||
@Autowired
|
||||
private ShopActivityGroupbuyStoreHistoryService activityGroupbuyStoreHistoryService;
|
||||
@Autowired
|
||||
private ShopActivityGroupbookingService shopActivityGroupbookingService;
|
||||
@Autowired
|
||||
private ShopBaseStateCodeService shopBaseStateCodeService;
|
||||
@Autowired
|
||||
private ShopStoreActivityCodeService shopStoreActivityCodeService;
|
||||
@Autowired
|
||||
private ShopOrderDataService shopOrderDataService;
|
||||
@Autowired
|
||||
private AccountBaseConfigService accountBaseConfigService;
|
||||
|
||||
private static Logger logger = LoggerFactory.getLogger(ShopStoreActivityBaseServiceImpl.class);
|
||||
/**
|
||||
* 返回随机金额数组 (分为单位)
|
||||
*
|
||||
* @param money (元为单位)
|
||||
* @param num
|
||||
* @return
|
||||
*/
|
||||
public static List<Integer> randMoney(BigDecimal money, Integer num) {
|
||||
|
||||
// 只有一个人直接返回
|
||||
if (num == 1) return Collections.singletonList(NumberUtil.mul(money, 100).intValue());
|
||||
|
||||
money = NumberUtil.mul(money, 100); // 将元转成分(小数计算有误差,随机数也都是整数)
|
||||
BigDecimal rest_money = money; // 初始化,剩余钱的变量
|
||||
Integer average = NumberUtil.div(rest_money, num, 0).intValue(); // 求出均分情况下,每人的红包值
|
||||
List<Integer> arr = new ArrayList<>();
|
||||
|
||||
if (ObjectUtil.compare(average, 1) < 0) {
|
||||
// 钱不够所有人分
|
||||
return Stream.generate(() -> 0).limit(num).collect(Collectors.toList());
|
||||
} else if (ObjectUtil.compare(average, 1) == 0) {
|
||||
// 所有人*均分这笔钱(钱数只够这么分的)
|
||||
for (Integer i = 0; i < num; i++) {
|
||||
arr.add(average);
|
||||
}
|
||||
} else {
|
||||
// 每个人随机分配
|
||||
for (int i = 0; i < num; i++) {
|
||||
BigDecimal range_money = NumberUtil.div(rest_money, (num - i), 0);
|
||||
Integer rand_money = RandomUtil.randomInt(1, range_money.intValue());
|
||||
arr.add(rand_money);
|
||||
rest_money = NumberUtil.sub(rest_money, rand_money); // 获取剩下的钱
|
||||
}
|
||||
}
|
||||
|
||||
int arr_sum = 0; // 保存数组和
|
||||
if (CollUtil.isNotEmpty(arr)) {
|
||||
// 随机分配,会调用此方法将剩余的钱分掉,此数组为随机分配后的结果
|
||||
arr_sum = arr.stream().mapToInt(Integer::intValue).sum(); // 统计随机分配已经分配了总钱数
|
||||
} else {
|
||||
// 初始化每个人的数组,兼容下边循环处理部分
|
||||
arr = Stream.generate(() -> 0).limit(num).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
BigDecimal add_money = NumberUtil.sub(money, arr_sum);
|
||||
// 如果总钱数和之前随机分配的数组的总和差值为0,就说明随机分配已经将钱全部分出去了,就不需要再*均分配处理了
|
||||
if (ObjectUtil.compare(add_money, BigDecimal.ZERO) == 0) {
|
||||
return arr;
|
||||
}
|
||||
|
||||
// 先把剩余的能均分的部分均分一下,然后若再有剩余,则从前到后,注意分配
|
||||
// 如果之前有随机分配,则是将剩余的钱*均追加入随机分配的值里
|
||||
Integer avg_add_money = NumberUtil.div(add_money, num, 0).intValue();
|
||||
arr = arr.stream().map(s -> s + avg_add_money).collect(Collectors.toList());
|
||||
// 分配后,求和,用于修正最后剩余的零钱
|
||||
arr_sum = arr.stream().mapToInt(Integer::intValue).sum();
|
||||
// 如果还有剩余,这部分说明每人一分都不够,就从头开始没人一分的分下去,直到分完为止
|
||||
BigDecimal odd_money = NumberUtil.sub(money, arr_sum, 0);
|
||||
int i = 0;
|
||||
while (ObjectUtil.compare(odd_money, BigDecimal.ONE) >= 0) {
|
||||
arr.set(i, arr.get(i) + 1); // 每人加1分钱
|
||||
odd_money = NumberUtil.sub(odd_money, 1); // 剩余的金额,每分掉一个人,就减1分钱
|
||||
if (i == num) {
|
||||
i = 0;
|
||||
} else {
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
return arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* 取得活动相关产品信息
|
||||
@ -1439,7 +1487,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
pulse_reduction_again.put("type_id", activity_row.get("activity_type_id"));
|
||||
pulse_reduction_again.put("reduceAgainMoney", max_reduction_again);
|
||||
|
||||
if (true || single_product_flag) {
|
||||
if (true) {
|
||||
if (CollUtil.isNotEmpty(activity_require_item_id_row)) {
|
||||
List<Long> item_ids = items.stream().map(s -> Convert.toLong(s.get("item_id"))).distinct().collect(Collectors.toList());
|
||||
|
||||
@ -1498,7 +1546,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
pulse_multple.put("type_id", activity_row.get("activity_type_id"));
|
||||
pulse_multple.put("give_enable", false);
|
||||
|
||||
if (true || single_product_flag) {
|
||||
if (true) {
|
||||
if (CollUtil.isNotEmpty(activity_require_item_id_row)) {
|
||||
List<Long> item_ids = items.stream().map(s -> Convert.toLong(s.get("item_id"))).distinct().collect(Collectors.toList());
|
||||
|
||||
@ -1574,7 +1622,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
discount.forEach(dis -> {
|
||||
Long iid = Convert.toLong(dis.get("item_id"));
|
||||
Integer dis_item_quantity = Convert.toInt(dis.get("rate"));
|
||||
Integer cart_quantity = (Integer) cart_item_info_row.get(iid);
|
||||
Integer cart_quantity = cart_item_info_row.get(iid);
|
||||
|
||||
discountMap.put(iid, dis);
|
||||
|
||||
@ -1717,7 +1765,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
Map pulse_manhui = new HashMap();
|
||||
pulse_manhui.put("actId", activity_id);
|
||||
pulse_manhui.put("actName", activity_row.get("activity_title"));
|
||||
if (true || single_product_flag) {
|
||||
if (true) {
|
||||
if (CollUtil.isNotEmpty(activity_require_item_id_row)) {
|
||||
List<Long> item_ids = items.stream().map(s -> Convert.toLong(s.get("item_id"))).distinct().collect(Collectors.toList());
|
||||
|
||||
@ -2729,7 +2777,6 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
return data;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public CommonResult saveLotteryItem() {
|
||||
Map data = new HashMap();
|
||||
@ -2776,7 +2823,6 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
return CommonResult.success();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Map listItem() {
|
||||
|
||||
@ -4120,45 +4166,6 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map getGiftbag(Integer activity_id) {
|
||||
Map data = new HashMap();
|
||||
|
||||
if (CheckUtil.isNotEmpty(activity_id)) {
|
||||
ShopStoreActivityBase shopStoreActivityBase = shopStoreActivityBaseService.get(activity_id);
|
||||
|
||||
data = Convert.toMap(Object.class, Object.class, shopStoreActivityBase);
|
||||
|
||||
if (shopStoreActivityBase != null) {
|
||||
ShopStoreBase shopStoreBase = shopStoreBaseService.get(shopStoreActivityBase.getStore_id());
|
||||
|
||||
|
||||
cn.hutool.json.JSONObject activity_rule = JSONUtil.parseObj(shopStoreActivityBase.getActivity_rule());
|
||||
BigDecimal giftbag_amount = Convert.toBigDecimal(activity_rule.get("giftbag_amount"), BigDecimal.ZERO);
|
||||
List<Map> discount = ObjectUtil.defaultIfNull((List<Map>) activity_rule.get("discount"), new ArrayList<>());
|
||||
|
||||
List<Long> fold_item_ids = new ArrayList<>();
|
||||
Map<Long, Map> discountMap = new HashMap<>();
|
||||
|
||||
discount.forEach(dis -> {
|
||||
Long iid = Convert.toLong(dis.get("item_id"));
|
||||
fold_item_ids.add(iid);
|
||||
discountMap.put(iid, dis);
|
||||
});
|
||||
|
||||
List<Map> item = shopProductItemService.getItem(fold_item_ids);
|
||||
|
||||
data.put("item", item);
|
||||
data.put("store_is_selfsupport", shopStoreBase.getStore_is_selfsupport());
|
||||
data.put("store_name", shopStoreBase.getStore_name());
|
||||
data.put("play_amount", giftbag_amount);
|
||||
|
||||
data.put("activity_rule", Convert.toMap(Object.class, Object.class, activity_rule));
|
||||
}
|
||||
}
|
||||
return data;
|
||||
}
|
||||
|
||||
/*
|
||||
@Override
|
||||
public boolean settleActivityVoucherPrize() {
|
||||
@ -4251,77 +4258,43 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
}
|
||||
*/
|
||||
|
||||
@Override
|
||||
public Map getGiftbag(Integer activity_id) {
|
||||
Map data = new HashMap();
|
||||
|
||||
/**
|
||||
* 返回随机金额数组 (分为单位)
|
||||
*
|
||||
* @param money (元为单位)
|
||||
* @param num
|
||||
* @return
|
||||
*/
|
||||
public static List<Integer> randMoney(BigDecimal money, Integer num) {
|
||||
if (CheckUtil.isNotEmpty(activity_id)) {
|
||||
ShopStoreActivityBase shopStoreActivityBase = shopStoreActivityBaseService.get(activity_id);
|
||||
|
||||
// 只有一个人直接返回
|
||||
if (num == 1) return Collections.singletonList(NumberUtil.mul(money, 100).intValue());
|
||||
data = Convert.toMap(Object.class, Object.class, shopStoreActivityBase);
|
||||
|
||||
money = NumberUtil.mul(money, 100); // 将元转成分(小数计算有误差,随机数也都是整数)
|
||||
BigDecimal rest_money = money; // 初始化,剩余钱的变量
|
||||
Integer average = NumberUtil.div(rest_money, num, 0).intValue(); // 求出均分情况下,每人的红包值
|
||||
List<Integer> arr = new ArrayList<>();
|
||||
if (shopStoreActivityBase != null) {
|
||||
ShopStoreBase shopStoreBase = shopStoreBaseService.get(shopStoreActivityBase.getStore_id());
|
||||
|
||||
if (ObjectUtil.compare(average, 1) < 0) {
|
||||
// 钱不够所有人分
|
||||
return Stream.generate(() -> 0).limit(num).collect(Collectors.toList());
|
||||
} else if (ObjectUtil.compare(average, 1) == 0) {
|
||||
// 所有人*均分这笔钱(钱数只够这么分的)
|
||||
for (Integer i = 0; i < num; i++) {
|
||||
arr.add(average);
|
||||
}
|
||||
} else {
|
||||
// 每个人随机分配
|
||||
for (int i = 0; i < num; i++) {
|
||||
BigDecimal range_money = NumberUtil.div(rest_money, (num - i), 0);
|
||||
Integer rand_money = RandomUtil.randomInt(1, range_money.intValue());
|
||||
arr.add(rand_money);
|
||||
rest_money = NumberUtil.sub(rest_money, rand_money); // 获取剩下的钱
|
||||
|
||||
cn.hutool.json.JSONObject activity_rule = JSONUtil.parseObj(shopStoreActivityBase.getActivity_rule());
|
||||
BigDecimal giftbag_amount = Convert.toBigDecimal(activity_rule.get("giftbag_amount"), BigDecimal.ZERO);
|
||||
List<Map> discount = ObjectUtil.defaultIfNull((List<Map>) activity_rule.get("discount"), new ArrayList<>());
|
||||
|
||||
List<Long> fold_item_ids = new ArrayList<>();
|
||||
Map<Long, Map> discountMap = new HashMap<>();
|
||||
|
||||
discount.forEach(dis -> {
|
||||
Long iid = Convert.toLong(dis.get("item_id"));
|
||||
fold_item_ids.add(iid);
|
||||
discountMap.put(iid, dis);
|
||||
});
|
||||
|
||||
List<Map> item = shopProductItemService.getItem(fold_item_ids);
|
||||
|
||||
data.put("item", item);
|
||||
data.put("store_is_selfsupport", shopStoreBase.getStore_is_selfsupport());
|
||||
data.put("store_name", shopStoreBase.getStore_name());
|
||||
data.put("play_amount", giftbag_amount);
|
||||
|
||||
data.put("activity_rule", Convert.toMap(Object.class, Object.class, activity_rule));
|
||||
}
|
||||
}
|
||||
|
||||
int arr_sum = 0; // 保存数组和
|
||||
if (CollUtil.isNotEmpty(arr)) {
|
||||
// 随机分配,会调用此方法将剩余的钱分掉,此数组为随机分配后的结果
|
||||
arr_sum = arr.stream().mapToInt(Integer::intValue).sum(); // 统计随机分配已经分配了总钱数
|
||||
} else {
|
||||
// 初始化每个人的数组,兼容下边循环处理部分
|
||||
arr = Stream.generate(() -> 0).limit(num).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
BigDecimal add_money = NumberUtil.sub(money, arr_sum);
|
||||
// 如果总钱数和之前随机分配的数组的总和差值为0,就说明随机分配已经将钱全部分出去了,就不需要再*均分配处理了
|
||||
if (ObjectUtil.compare(add_money, BigDecimal.ZERO) == 0) {
|
||||
return arr;
|
||||
}
|
||||
|
||||
// 先把剩余的能均分的部分均分一下,然后若再有剩余,则从前到后,注意分配
|
||||
// 如果之前有随机分配,则是将剩余的钱*均追加入随机分配的值里
|
||||
Integer avg_add_money = NumberUtil.div(add_money, num, 0).intValue();
|
||||
arr = arr.stream().map(s -> s + avg_add_money).collect(Collectors.toList());
|
||||
// 分配后,求和,用于修正最后剩余的零钱
|
||||
arr_sum = arr.stream().mapToInt(Integer::intValue).sum();
|
||||
// 如果还有剩余,这部分说明每人一分都不够,就从头开始没人一分的分下去,直到分完为止
|
||||
BigDecimal odd_money = NumberUtil.sub(money, arr_sum, 0);
|
||||
int i = 0;
|
||||
while (ObjectUtil.compare(odd_money, BigDecimal.ONE) >= 0) {
|
||||
arr.set(i, arr.get(i) + 1); // 每人加1分钱
|
||||
odd_money = NumberUtil.sub(odd_money, 1); // 剩余的金额,每分掉一个人,就减1分钱
|
||||
if (i == num) {
|
||||
i = 0;
|
||||
} else {
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
return arr;
|
||||
return data;
|
||||
}
|
||||
|
||||
@Transactional
|
||||
@ -4420,7 +4393,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
JSONObject rule_row = (JSONObject) rule.get(total_id);
|
||||
List<Long> item = Convert.toList(Long.class, rule_row.get("item"));
|
||||
|
||||
item.remove(item.indexOf(item_id));
|
||||
item.remove(item_id);
|
||||
rule_row.put("item", item);
|
||||
|
||||
Map data = new HashMap();
|
||||
@ -4856,9 +4829,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
|
||||
List<Long> item = Convert.toList(Long.class, activity_row.get("item_id"));
|
||||
|
||||
if (item.contains(item_id)) {
|
||||
item.remove(item_id);
|
||||
}
|
||||
item.remove(item_id);
|
||||
|
||||
ShopStoreActivityBase activityBase = new ShopStoreActivityBase();
|
||||
activityBase.setActivity_id(activity_id);
|
||||
@ -4893,9 +4864,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
JSONObject buy = (JSONObject) requirement.get("buy");
|
||||
List<Long> item = Convert.toList(Long.class, buy.get("item"));
|
||||
|
||||
if (item.contains(item_id)) {
|
||||
item.remove(item_id);
|
||||
}
|
||||
item.remove(item_id);
|
||||
|
||||
buy.put("item", item);
|
||||
ShopStoreActivityBase activityBase = new ShopStoreActivityBase();
|
||||
@ -4995,8 +4964,8 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
private List<Long> checkItem(List<Long> item_ids, Map activity) {
|
||||
QueryWrapper<ShopStoreActivityItem> itemQueryWrapper = new QueryWrapper<>();
|
||||
itemQueryWrapper.in("item_id", item_ids)
|
||||
.le("activity_item_starttime", (Date) activity.get("activity_endtime"))
|
||||
.ge("activity_item_endtime", (Date) activity.get("activity_starttime"));
|
||||
.le("activity_item_starttime", activity.get("activity_endtime"))
|
||||
.ge("activity_item_endtime", activity.get("activity_starttime"));
|
||||
List<ShopStoreActivityItem> item_row = shopStoreActivityItemService.find(itemQueryWrapper);
|
||||
|
||||
List<Long> item_id_row = item_row.stream().map(s -> s.getItem_id()).distinct().collect(Collectors.toList());
|
||||
@ -5079,7 +5048,7 @@ public class ShopStoreActivityBaseServiceImpl extends BaseServiceImpl<ShopStoreA
|
||||
}
|
||||
|
||||
if (!item_id_row.contains(itemId)) {
|
||||
if (!addItem(activity_id, Arrays.asList(itemId), data)) {
|
||||
if (!addItem(activity_id, Collections.singletonList(itemId), data)) {
|
||||
throw new ApiException(I18nUtil._("修改活动商品信息失败!"));
|
||||
}
|
||||
}
|
||||
|
||||
@ -99,109 +99,75 @@ import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser;
|
||||
@Service
|
||||
public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMapper, ShopStoreBase> implements ShopStoreBaseService {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(ShopStoreBaseServiceImpl.class);
|
||||
private static List<Map> StoreFilterOptData;
|
||||
@Autowired
|
||||
private ShopPlantformSubsiteService shopPlantformSubsiteService;
|
||||
|
||||
@Autowired
|
||||
private InvoicingCustomerLevelService invoicingCustomerLevelService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreConfigService shopStoreConfigService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreProductTagService shopStoreProductTagService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreTransportTypeService shopStoreTransportTypeService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreEmployeeRightsBaseService shopStoreEmployeeRightsBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopProductIndexService shopProductIndexService;
|
||||
|
||||
@Autowired
|
||||
private ShopProductIndexMapper shopProductIndexMapper;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreEmployeeRightsGroupService shopStoreEmployeeRightsGroupService;
|
||||
|
||||
@Autowired
|
||||
private ShopBaseProductTagService shopBaseProductTagService;
|
||||
|
||||
@Autowired
|
||||
private ShopBaseStoreGradeService shopBaseStoreGradeService;
|
||||
|
||||
@Autowired
|
||||
private InvoicingWarehouseBaseService invoicingWarehouseBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreBaseMapper shopStoreBaseMapper;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreAnalyticsService shopStoreAnalyticsService;
|
||||
|
||||
@Autowired
|
||||
private AccountBaseConfigService accountBaseConfigService;
|
||||
|
||||
@Autowired
|
||||
private UserInfoService userInfoService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreInfoService shopStoreInfoService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreActivityBaseService shopStoreActivityBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopProductBaseService shopProductBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreBaseService shopStoreBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopBaseStoreCategoryService shopBaseStoreCategoryService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreProductCategoryService productCategoryService;
|
||||
|
||||
@Autowired
|
||||
private ShopUserFavoritesStoreService userFavoritesStoreService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreCompanyService shopStoreCompanyService;
|
||||
|
||||
@Autowired
|
||||
private CmsService cmsService;
|
||||
|
||||
@Autowired
|
||||
private AccountService accountService;
|
||||
|
||||
@Autowired
|
||||
private PayService payService;
|
||||
|
||||
@Autowired
|
||||
private ShopStoreEmployeeService shopStoreEmployeeService;
|
||||
|
||||
@Autowired
|
||||
private ShopDistributionPlantformUserService shopDistributionPlantformUserService;
|
||||
|
||||
@Autowired
|
||||
private ShopUserFavoritesStoreService shopUserFavoritesStoreService;
|
||||
|
||||
@Autowired
|
||||
private ShopPageBaseService shopPageBaseService;
|
||||
|
||||
@Autowired
|
||||
private ShopPageModuleService shopPageModuleService;
|
||||
|
||||
@Autowired
|
||||
private ThreadPoolExecutor executor;
|
||||
|
||||
private static Logger logger = LoggerFactory.getLogger(ShopStoreBaseServiceImpl.class);
|
||||
|
||||
private static List<Map> StoreFilterOptData;
|
||||
|
||||
/**
|
||||
* 读取分页列表
|
||||
*
|
||||
@ -1315,7 +1281,7 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMappe
|
||||
public CommonResult step() {
|
||||
|
||||
Map row = new HashMap();
|
||||
List<Map> items = cmsService.getFixArticle(1008l);
|
||||
List<Map> items = cmsService.getFixArticle(1008L);
|
||||
row.put("items", items);
|
||||
|
||||
UserDto user = getCurrentUser();
|
||||
@ -1356,7 +1322,7 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMappe
|
||||
} else {
|
||||
|
||||
BigDecimal waiting_payment_amount = Convert.toBigDecimal(accountBaseConfigService.getConfig("reg_seller_fee"));
|
||||
if (waiting_payment_amount != null && false) {
|
||||
if (false) {
|
||||
|
||||
PayUserResource userResource = payService.getPayUserResource(user_id);
|
||||
BigDecimal user_money = userResource.getUser_money();
|
||||
@ -2710,7 +2676,7 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMappe
|
||||
|
||||
Optional<ShopStoreInfo> infoOpl = store_info_rows.stream().filter(s -> ObjectUtil.equal(s.getStore_id(), store_id)).findFirst();
|
||||
ShopStoreInfo info = infoOpl.orElseGet(ShopStoreInfo::new);
|
||||
Long store_end_time = Convert.toLong(item.get("store_end_time"), 0l);
|
||||
Long store_end_time = Convert.toLong(item.get("store_end_time"), 0L);
|
||||
|
||||
item.put("store_start_time", info.getStore_start_time());
|
||||
item.put("store_end_time", DateUtil.date(store_end_time));
|
||||
@ -2847,7 +2813,7 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl<ShopStoreBaseMappe
|
||||
*/
|
||||
@Override
|
||||
public ShopStoreBase storeBase(Integer store_id) {
|
||||
if(store_id==null ||store_id<=0){
|
||||
if (store_id == null || store_id <= 0) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@ -63,7 +63,7 @@ public class ShopStoreMediaServiceImpl extends BaseServiceImpl<ShopStoreMediaMap
|
||||
@Override
|
||||
public void saveMedia(MediaDTO mediaDTO, UserDto user) {
|
||||
|
||||
Long gallery_id = getParameter("gallery_id", 0l);
|
||||
Long gallery_id = getParameter("gallery_id", 0L);
|
||||
String gallery_type = getParameter("gallery_type", "image");
|
||||
|
||||
if (user.isStore()) {
|
||||
|
||||
@ -52,7 +52,7 @@ public class ShopStorePrinterLogServiceImpl extends BaseServiceImpl<ShopStorePri
|
||||
continue;
|
||||
}
|
||||
|
||||
add(record);
|
||||
add(record);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -60,7 +60,7 @@ public class ShopStorePrinterModelServiceImpl extends BaseServiceImpl<ShopStoreP
|
||||
public CommonResult addNewShopStorePrinterModel(ShopStorePrinterModel record) {
|
||||
// 判断有没有权限删除
|
||||
UserDto user = getCurrentUser();
|
||||
if (user==null) {
|
||||
if (user == null) {
|
||||
return CommonResult.failed("用户信息异常!");
|
||||
}
|
||||
|
||||
@ -87,7 +87,7 @@ public class ShopStorePrinterModelServiceImpl extends BaseServiceImpl<ShopStoreP
|
||||
|
||||
// 判断有没有权限删除
|
||||
UserDto user = getCurrentUser();
|
||||
if (user==null) {
|
||||
if (user == null) {
|
||||
return CommonResult.failed("用户信息异常!");
|
||||
}
|
||||
|
||||
|
||||
@ -27,15 +27,15 @@ public class ShopStorePrinterRegionServiceImpl extends BaseServiceImpl<ShopStore
|
||||
queryWrapper.like("region", keyword);
|
||||
}
|
||||
queryWrapper.orderByAsc("region_id");
|
||||
return lists(queryWrapper,pageNum,pageSize);
|
||||
return lists(queryWrapper, pageNum, pageSize);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public CommonResult shopStorePrinterRegionList(Integer count) {
|
||||
QueryWrapper<ShopStorePrinterRegion> queryWrapper= new QueryWrapper<>();
|
||||
QueryWrapper<ShopStorePrinterRegion> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.orderByAsc("region_id");
|
||||
if (count != null || count > 0) {
|
||||
queryWrapper.last("limit " + count);
|
||||
if (count != null || count > 0) {
|
||||
queryWrapper.last("limit " + count);
|
||||
}
|
||||
List<ShopStorePrinterRegion> recordList = find(queryWrapper);
|
||||
|
||||
@ -46,7 +46,7 @@ public class ShopStorePrinterRegionServiceImpl extends BaseServiceImpl<ShopStore
|
||||
public CommonResult addNewShopStorePrinterRegion(ShopStorePrinterRegion record) {
|
||||
// 判断有没有权限删除
|
||||
UserDto user = getCurrentUser();
|
||||
if (user==null) {
|
||||
if (user == null) {
|
||||
return CommonResult.failed("用户信息异常!");
|
||||
}
|
||||
|
||||
@ -56,11 +56,11 @@ public class ShopStorePrinterRegionServiceImpl extends BaseServiceImpl<ShopStore
|
||||
QueryWrapper<ShopStorePrinterRegion> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("region", record.getRegion());
|
||||
ShopStorePrinterRegion existRecord = getOne(queryWrapper);
|
||||
if (existRecord!=null && existRecord.getRegion_id() > 0) {
|
||||
if (existRecord != null && existRecord.getRegion_id() > 0) {
|
||||
return CommonResult.success("打票机型号已添加,请勿重复操作");
|
||||
}
|
||||
|
||||
if (add(record)){
|
||||
if (add(record)) {
|
||||
return CommonResult.success();
|
||||
}
|
||||
|
||||
@ -72,24 +72,24 @@ public class ShopStorePrinterRegionServiceImpl extends BaseServiceImpl<ShopStore
|
||||
|
||||
// 判断有没有权限删除
|
||||
UserDto user = getCurrentUser();
|
||||
if (user==null) {
|
||||
if (user == null) {
|
||||
return CommonResult.failed("用户信息异常!");
|
||||
}
|
||||
|
||||
|
||||
if (record==null|| record.getRegion_id()<=0){
|
||||
if (record == null || record.getRegion_id() <= 0) {
|
||||
return CommonResult.failed("记录不存在!");
|
||||
}
|
||||
|
||||
record.setUpdated_by(user.getId());
|
||||
record.setUpdated_at(new Date());
|
||||
|
||||
if(record.getRegion_id()<=0 || StrUtil.isBlank(record.getRegion())){
|
||||
if (record.getRegion_id() <= 0 || StrUtil.isBlank(record.getRegion())) {
|
||||
return CommonResult.failed("缺少必要参数!");
|
||||
}
|
||||
|
||||
boolean success =updateById(record);
|
||||
if (success){
|
||||
boolean success = updateById(record);
|
||||
if (success) {
|
||||
return CommonResult.success();
|
||||
}
|
||||
|
||||
@ -102,17 +102,17 @@ public class ShopStorePrinterRegionServiceImpl extends BaseServiceImpl<ShopStore
|
||||
|
||||
// 判断有没有权限删除
|
||||
UserDto user = getCurrentUser();
|
||||
if (user==null) {
|
||||
if (user == null) {
|
||||
return CommonResult.failed("用户信息异常!");
|
||||
}
|
||||
|
||||
ShopStorePrinterRegion record = getById(region_id);
|
||||
if(record.getRegion_id()<=0){
|
||||
if (record.getRegion_id() <= 0) {
|
||||
return CommonResult.failed("记录不存在,无法删除!");
|
||||
}
|
||||
|
||||
boolean success = remove(region_id);
|
||||
if(success){
|
||||
if (success) {
|
||||
return CommonResult.success();
|
||||
}
|
||||
|
||||
|
||||
@ -2,7 +2,6 @@ package com.suisung.mall.shop.store.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
@ -213,7 +212,7 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
updateWrapper.set("website_url", record.getWebsite_url());
|
||||
if (existRecord.getStatus() == null || !ConstantError.Enable.equals(existRecord.getStatus())) {
|
||||
updateWrapper.set("status", ConstantError.Disable2);
|
||||
}else {
|
||||
} else {
|
||||
updateWrapper.set("status", ConstantError.Enable);
|
||||
}
|
||||
|
||||
@ -243,14 +242,14 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
if (existRecord2 == null || existRecord2.getPrinter_id() <= 0) {
|
||||
// 打印机从未加入到厂家到情况,往厂商添加打印机
|
||||
// 格式:"922441475#r6ZXPvHH#核销柜台";
|
||||
Pair<Boolean,String> retPair = feieUtil.addPrinter(String.format("%s#%s#%s", record.getPrinter_sn(), record.getPrinter_key(), record.getPrinter_name()));
|
||||
Pair<Boolean, String> retPair = feieUtil.addPrinter(String.format("%s#%s#%s", record.getPrinter_sn(), record.getPrinter_key(), record.getPrinter_name()));
|
||||
if (retPair.getFirst()) {
|
||||
updateWrapper.set("flag", ConstantError.Enable);
|
||||
updateWrapper.set("status",ConstantError.Enable);
|
||||
updateWrapper.set("status", ConstantError.Enable);
|
||||
} else {
|
||||
msg = msg + ",但打印机绑定未成功,请检查打印机编号和密钥是否填写正确。";
|
||||
updateWrapper.set("flag", ConstantError.Disable2);
|
||||
updateWrapper.set("status",ConstantError.Disable2);
|
||||
updateWrapper.set("status", ConstantError.Disable2);
|
||||
}
|
||||
|
||||
// 解绑之前的打印机
|
||||
@ -276,7 +275,7 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
|
||||
// 判断有没有权限
|
||||
UserDto user = getCurrentUser();
|
||||
if (user==null || !user.isStore()) {
|
||||
if (user == null || !user.isStore()) {
|
||||
return CommonResult.failed("无权操作!");
|
||||
}
|
||||
|
||||
@ -289,14 +288,14 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
if (ConstantError.Enable.equals(status)) {
|
||||
// 向厂家新增打印机
|
||||
// 格式:"922441475#r6ZXPvHH#核销柜台";
|
||||
Pair<Boolean,String> retPair = feieUtil.addPrinter(String.format("%s#%s#%s", record.getPrinter_sn(), record.getPrinter_key(), record.getPrinter_name()));
|
||||
Pair<Boolean, String> retPair = feieUtil.addPrinter(String.format("%s#%s#%s", record.getPrinter_sn(), record.getPrinter_key(), record.getPrinter_name()));
|
||||
if (!retPair.getFirst()) {
|
||||
return CommonResult.failed(retPair.getSecond());
|
||||
}
|
||||
} else {
|
||||
status = ConstantError.Disable2;
|
||||
// 向厂家解绑打印机
|
||||
boolean success = feieUtil.delPrinter(record.getPrinter_sn());
|
||||
boolean success = feieUtil.delPrinter(record.getPrinter_sn());
|
||||
if (!success) {
|
||||
return CommonResult.failed("打印机解绑定未成功,操作失败。");
|
||||
}
|
||||
@ -304,7 +303,7 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
|
||||
// 更改的状态和现有的状态一样,直接
|
||||
if (status.equals(record.getStatus())) {
|
||||
return CommonResult.success(null,"已操作成功!");
|
||||
return CommonResult.success(null, "已操作成功!");
|
||||
}
|
||||
|
||||
UpdateWrapper<ShopStorePrinter> updateWrapper = new UpdateWrapper<>();
|
||||
@ -313,7 +312,7 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
updateWrapper.set("flag", status);
|
||||
|
||||
if (update(updateWrapper)) {
|
||||
return CommonResult.success(null,"操作成功!");
|
||||
return CommonResult.success(null, "操作成功!");
|
||||
}
|
||||
|
||||
return CommonResult.failed("操作失败!");
|
||||
@ -324,7 +323,7 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
|
||||
// 判断有没有权限
|
||||
UserDto user = getCurrentUser();
|
||||
if (user==null || !user.isStore()) {
|
||||
if (user == null || !user.isStore()) {
|
||||
return CommonResult.failed("无权操作!");
|
||||
}
|
||||
|
||||
@ -358,7 +357,6 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Boolean printShopStoreOrder(String orderId) {
|
||||
logger.info("#### 调用飞鹅打票机的打印操作开始 ####");
|
||||
|
||||
@ -12,6 +12,7 @@ import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.suisung.mall.common.api.CommonResult;
|
||||
import com.suisung.mall.common.domain.UserDto;
|
||||
import com.suisung.mall.common.modules.store.ShopStoreBase;
|
||||
import com.suisung.mall.common.modules.store.ShopStoreSameCityTransport;
|
||||
import com.suisung.mall.common.modules.store.ShopStoreSameCityTransportBase;
|
||||
@ -21,18 +22,21 @@ import com.suisung.mall.shop.store.mapper.ShopStoreSameCityTransportBaseMapper;
|
||||
import com.suisung.mall.shop.store.service.ShopStoreBaseService;
|
||||
import com.suisung.mall.shop.store.service.ShopStoreSameCityTransportBaseService;
|
||||
import com.suisung.mall.shop.store.service.ShopStoreSameCityTransportService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser;
|
||||
|
||||
@Service
|
||||
public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl<ShopStoreSameCityTransportBaseMapper, ShopStoreSameCityTransportBase> implements ShopStoreSameCityTransportBaseService {
|
||||
|
||||
@Autowired
|
||||
@Resource
|
||||
private ShopStoreSameCityTransportService shopStoreSameCityTransportService;
|
||||
|
||||
@Autowired
|
||||
@Resource
|
||||
private ShopStoreBaseService shopStoreBaseService;
|
||||
|
||||
/**
|
||||
@ -42,7 +46,19 @@ public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl<S
|
||||
*/
|
||||
@Override
|
||||
public CommonResult ShopStoreSameCityTransportBaseDetail() {
|
||||
return null;
|
||||
// 判断有没有权限
|
||||
UserDto user = getCurrentUser();
|
||||
if (user == null || !user.isStore()) {
|
||||
return CommonResult.failed("无权限操作!");
|
||||
}
|
||||
|
||||
Long storeId = Convert.toLong(user.getStore_id());
|
||||
ShopStoreSameCityTransportBaseDTO retDTO = getDetailById(storeId);
|
||||
if (retDTO == null) {
|
||||
return CommonResult.failed("商家未设置店铺地址,请先设置店铺地址!");
|
||||
}
|
||||
|
||||
return CommonResult.success(retDTO);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -53,7 +69,31 @@ public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl<S
|
||||
*/
|
||||
@Override
|
||||
public CommonResult saveOrUpdateSameCityTransport(ShopStoreSameCityTransportBaseDTO shopStoreSameCityTransportBaseDTO) {
|
||||
return null;
|
||||
// 判断有没有权限
|
||||
UserDto user = getCurrentUser();
|
||||
if (user == null || !user.isStore()) {
|
||||
return CommonResult.failed("无权限操作!");
|
||||
}
|
||||
|
||||
Integer userId = user.getId();
|
||||
|
||||
if (shopStoreSameCityTransportBaseDTO == null || shopStoreSameCityTransportBaseDTO.getTransportBase() == null) {
|
||||
return CommonResult.failed("参数有误");
|
||||
}
|
||||
|
||||
ShopStoreSameCityTransportBase transportBase = shopStoreSameCityTransportBaseDTO.getTransportBase();
|
||||
transportBase.setUpdated_by(userId);
|
||||
// 新增或更新同城配送基础设置
|
||||
boolean success = saveOrUpdateShopStoreSameCityTransportBase(transportBase);
|
||||
|
||||
// 新增或更新同城配送扩展设置列表
|
||||
shopStoreSameCityTransportService.saveOrUpdateShopStoreSameCityTransportList(transportBase.getTransport_base_id(), shopStoreSameCityTransportBaseDTO.getTransportList());
|
||||
|
||||
if (success) {
|
||||
CommonResult.success();
|
||||
}
|
||||
|
||||
return CommonResult.failed("操作失败!");
|
||||
}
|
||||
|
||||
/**
|
||||
@ -68,6 +108,7 @@ public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl<S
|
||||
return null;
|
||||
}
|
||||
|
||||
// 店铺基本信息
|
||||
ShopStoreBase shopStoreBase = shopStoreBaseService.storeBase(storeId.intValue());
|
||||
if (shopStoreBase == null) {
|
||||
return null;
|
||||
@ -76,24 +117,58 @@ public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl<S
|
||||
QueryWrapper<ShopStoreSameCityTransportBase> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("store_id", storeId);
|
||||
queryWrapper.orderByAsc("transport_base_id");
|
||||
ShopStoreSameCityTransportBase shopStoreSameCityTransportBase = getOne(queryWrapper);
|
||||
if (shopStoreSameCityTransportBase == null) {
|
||||
shopStoreSameCityTransportBase = new ShopStoreSameCityTransportBase();
|
||||
shopStoreSameCityTransportBase.setStore_id(storeId);
|
||||
ShopStoreSameCityTransportBase transportBase = getOne(queryWrapper);
|
||||
if (transportBase == null) {
|
||||
transportBase = new ShopStoreSameCityTransportBase();
|
||||
transportBase.setStore_id(storeId);
|
||||
|
||||
// 获取店铺的地址和经纬度
|
||||
shopStoreSameCityTransportBase.setStore_address(StrUtil.removeAll(shopStoreBase.getStore_area(),"/") + shopStoreBase.getStore_address());
|
||||
shopStoreSameCityTransportBase.setStore_longitude(Convert.toBigDecimal(shopStoreBase.getStore_longitude()));
|
||||
shopStoreSameCityTransportBase.setStore_latitude(Convert.toBigDecimal(shopStoreBase.getStore_latitude()));
|
||||
// 没有记录时,指定默认值
|
||||
transportBase.setArea_type(1);
|
||||
transportBase.setBasis(1);
|
||||
transportBase.setDistance_base(5);
|
||||
transportBase.setWeight_base(5);
|
||||
transportBase.setDelivery_base_fee(BigDecimal.valueOf(5));
|
||||
transportBase.setDistance_increase_km(1);
|
||||
transportBase.setDistance_increase_fee(BigDecimal.valueOf(1));
|
||||
transportBase.setWeight_increase_kg(1);
|
||||
transportBase.setWeight_increase_fee(BigDecimal.valueOf(1));
|
||||
|
||||
// 从 shop_store_base 表获取店铺的地址和经纬度
|
||||
transportBase.setStore_address(StrUtil.removeAll(shopStoreBase.getStore_area(), "/") + shopStoreBase.getStore_address());
|
||||
transportBase.setStore_longitude(Convert.toBigDecimal(shopStoreBase.getStore_longitude()));
|
||||
transportBase.setStore_latitude(Convert.toBigDecimal(shopStoreBase.getStore_latitude()));
|
||||
}
|
||||
|
||||
ShopStoreSameCityTransportBaseDTO shopStoreSameCityTransportBaseDTO = new ShopStoreSameCityTransportBaseDTO();
|
||||
shopStoreSameCityTransportBaseDTO.setShopStoreSameCityTransportBase(shopStoreSameCityTransportBase);
|
||||
shopStoreSameCityTransportBaseDTO.setTransportBase(transportBase);
|
||||
|
||||
// 多个店铺同城快递运费设置(起送条件+优惠条件)
|
||||
List<ShopStoreSameCityTransport> shopStoreSameCityTransportList = shopStoreSameCityTransportService.selectShopStoreSameCityTransportList(shopStoreSameCityTransportBase.getTransport_base_id());
|
||||
shopStoreSameCityTransportBaseDTO.setShopStoreSameCityTransportList(shopStoreSameCityTransportList);
|
||||
List<ShopStoreSameCityTransport> transportList = shopStoreSameCityTransportService.selectShopStoreSameCityTransportList(transportBase.getTransport_base_id());
|
||||
shopStoreSameCityTransportBaseDTO.setTransportList(transportList);
|
||||
|
||||
return shopStoreSameCityTransportBaseDTO;
|
||||
}
|
||||
|
||||
public Boolean saveOrUpdateShopStoreSameCityTransportBase(ShopStoreSameCityTransportBase transportBase) {
|
||||
if (transportBase == null || transportBase.getStore_id() == null || transportBase.getStore_id() <= 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
QueryWrapper<ShopStoreSameCityTransportBase> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("store_id", transportBase.getStore_id());
|
||||
ShopStoreSameCityTransportBase transportBaseExist = getOne(queryWrapper);
|
||||
if (transportBase == null) {
|
||||
// 新增记录
|
||||
transportBase.setCreated_by(transportBase.getUpdated_by());
|
||||
return save(transportBase);
|
||||
}
|
||||
|
||||
Long transportBaseId = transportBase.getTransport_base_id();
|
||||
if (transportBaseId == null || transportBase.getTransport_base_id() <= 0) {
|
||||
transportBase.setTransport_base_id(transportBaseExist.getTransport_base_id());
|
||||
}
|
||||
|
||||
// 更新记录
|
||||
return updateById(transportBase);
|
||||
}
|
||||
}
|
||||
|
||||
@ -32,7 +32,7 @@ public class ShopStoreSameCityTransportServiceImpl extends BaseServiceImpl<ShopS
|
||||
*/
|
||||
@Override
|
||||
public List<ShopStoreSameCityTransport> selectShopStoreSameCityTransportList(Long transportBaseId) {
|
||||
if (transportBaseId == null||transportBaseId <= 0) {
|
||||
if (transportBaseId == null || transportBaseId <= 0) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@ -42,10 +42,46 @@ public class ShopStoreSameCityTransportServiceImpl extends BaseServiceImpl<ShopS
|
||||
queryWrapper.orderByAsc("transport_id");
|
||||
|
||||
List<ShopStoreSameCityTransport> shopStoreSameCityTransportList = list(queryWrapper);
|
||||
if(CollectionUtil.isEmpty(shopStoreSameCityTransportList)){
|
||||
if (CollectionUtil.isEmpty(shopStoreSameCityTransportList)) {
|
||||
shopStoreSameCityTransportList = Collections.emptyList();
|
||||
}
|
||||
|
||||
return shopStoreSameCityTransportList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存同城配送扩展设置列表(存在就更新,不存在就新增)
|
||||
*
|
||||
* @param transportBaseId
|
||||
* @param transportList
|
||||
* @return 成功的记录数
|
||||
*/
|
||||
@Override
|
||||
public Integer saveOrUpdateShopStoreSameCityTransportList(Long transportBaseId, List<ShopStoreSameCityTransport> transportList) {
|
||||
if (CollectionUtil.isEmpty(transportList) || transportBaseId == null || transportBaseId <= 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int count = 0;
|
||||
for (ShopStoreSameCityTransport transport : transportList) {
|
||||
if (transport == null || transport.getTransport_id() == null || transport.getTransport_id() <= 0) {
|
||||
transport.setTransport_base_id(transportBaseId);
|
||||
if (save(transport)) {
|
||||
count += 1;
|
||||
}
|
||||
} else {
|
||||
if (transport.getTransport_base_id() == null || transport.getTransport_base_id() <= 0) {
|
||||
transport.setTransport_base_id(transportBaseId);
|
||||
}
|
||||
|
||||
if (updateById(transport)) {
|
||||
count += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user