From 1d6c4bdf5b9dc5789694b14b8270d602108a146e Mon Sep 17 00:00:00 2001 From: Jack <46790855@qq.com> Date: Mon, 25 Nov 2024 00:27:31 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=90=E8=B4=B9=E8=AE=BE=E7=BD=AE=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E7=B1=BB=20=E6=B7=BB=E5=8A=A0=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/store/ShopStorePrinter.java | 6 ++ .../modules/store/ShopStorePrinterLog.java | 6 ++ .../modules/store/ShopStorePrinterModel.java | 6 ++ .../modules/store/ShopStorePrinterRegion.java | 6 ++ .../store/ShopStorePrinterTemplate.java | 6 ++ .../store/ShopStoreSameCityTransport.java | 6 ++ .../store/ShopStoreSameCityTransportBase.java | 6 ++ .../ShopStoreSameCityTransportBaseDTO.java | 20 +++++++ ...pStoreSameCityTransportBaseController.java | 21 ++++--- ...ShopStoreSameCityTransportBaseService.java | 7 ++- .../ShopStoreSameCityTransportService.java | 3 +- ...StoreSameCityTransportBaseServiceImpl.java | 57 ++++++++++++++----- ...ShopStoreSameCityTransportServiceImpl.java | 40 ++++++++++--- 13 files changed, 157 insertions(+), 33 deletions(-) diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinter.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinter.java index b6cd92a1..5dd39260 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinter.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinter.java @@ -3,11 +3,13 @@ package com.suisung.mall.common.modules.store; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; @@ -75,9 +77,13 @@ public class ShopStorePrinter implements Serializable { @ApiModelProperty(value = "更新用户ID") private Integer updated_by; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "新增时间") private Date created_at; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "修改时间") private Date updated_at; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterLog.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterLog.java index cbbc91aa..a6596010 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterLog.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterLog.java @@ -3,6 +3,7 @@ package com.suisung.mall.common.modules.store; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; @@ -10,6 +11,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; @@ -85,9 +87,13 @@ public class ShopStorePrinterLog implements Serializable { @ApiModelProperty(value = "更新用户ID") private Integer updated_by; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "新增时间") private Date created_at; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "修改时间") private Date updated_at; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterModel.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterModel.java index 22984e57..cb5c7894 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterModel.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterModel.java @@ -3,11 +3,13 @@ package com.suisung.mall.common.modules.store; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; @@ -57,9 +59,13 @@ public class ShopStorePrinterModel implements Serializable { @ApiModelProperty(value = "更新用户ID") private Integer updated_by; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "新增时间") private Date created_at; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "修改时间") private Date updated_at; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterRegion.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterRegion.java index 3c080572..76c4feda 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterRegion.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterRegion.java @@ -3,11 +3,13 @@ package com.suisung.mall.common.modules.store; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; @@ -48,9 +50,13 @@ public class ShopStorePrinterRegion implements Serializable { @ApiModelProperty(value = "更新用户ID") private Integer updated_by; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "新增时间") private Date created_at; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "修改时间") private Date updated_at; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterTemplate.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterTemplate.java index b5e83145..0f0ec493 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterTemplate.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterTemplate.java @@ -3,11 +3,13 @@ package com.suisung.mall.common.modules.store; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; @@ -60,9 +62,13 @@ public class ShopStorePrinterTemplate implements Serializable { @ApiModelProperty(value = "更新用户ID") private Integer updated_by; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "新增时间") private Date created_at; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "修改时间") private Date updated_at; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransport.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransport.java index fc7f17b2..d36504b1 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransport.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransport.java @@ -11,11 +11,13 @@ package com.suisung.mall.common.modules.store; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.math.BigDecimal; @@ -74,9 +76,13 @@ public class ShopStoreSameCityTransport implements Serializable { @ApiModelProperty(value = "更新用户ID") private Integer updated_by; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "新增时间") private Date created_at; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "修改时间") private Date updated_at; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransportBase.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransportBase.java index 4bd2b59d..9e06cfab 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransportBase.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStoreSameCityTransportBase.java @@ -11,11 +11,13 @@ package com.suisung.mall.common.modules.store; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.math.BigDecimal; @@ -89,9 +91,13 @@ public class ShopStoreSameCityTransportBase implements Serializable { @ApiModelProperty(value = "更新用户ID") private Integer updated_by; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "新增时间") private Date created_at; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty(value = "修改时间") private Date updated_at; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/pojo/dto/ShopStoreSameCityTransportBaseDTO.java b/mall-common/src/main/java/com/suisung/mall/common/pojo/dto/ShopStoreSameCityTransportBaseDTO.java index acef7ebe..2c593ea8 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/pojo/dto/ShopStoreSameCityTransportBaseDTO.java +++ b/mall-common/src/main/java/com/suisung/mall/common/pojo/dto/ShopStoreSameCityTransportBaseDTO.java @@ -31,4 +31,24 @@ public class ShopStoreSameCityTransportBaseDTO implements Serializable { @ApiModelProperty(value = "店铺同城快递运费设置(起送条件+优惠条件)") public List transportList; + + public void rebuildTransportList() { + if (this.transportBase == null || this.transportList.isEmpty()) { + return; + } + + for (ShopStoreSameCityTransport transport : this.transportList) { + transport.setTransport_base_id(this.transportBase.getTransport_base_id()); + transport.setUpdated_by(this.transportBase.getUpdated_by()); + transport.setUpdated_at(this.transportBase.getUpdated_at()); + + if (transport.getCreated_by() == null) { + transport.setCreated_by(transport.getUpdated_by()); + } + + if (transport.getCreated_at() == null) { + transport.setCreated_at(transport.getUpdated_at()); + } + } + } } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreSameCityTransportBaseController.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreSameCityTransportBaseController.java index 81b7ce48..960b7be4 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreSameCityTransportBaseController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreSameCityTransportBaseController.java @@ -1,20 +1,21 @@ package com.suisung.mall.shop.store.controller.admin; +import cn.hutool.json.JSONUtil; import com.suisung.mall.common.api.CommonResult; import com.suisung.mall.common.modules.store.ShopStorePrinter; +import com.suisung.mall.common.modules.store.ShopStoreSameCityTransportBase; +import com.suisung.mall.common.pojo.dto.ShopStoreSameCityTransportBaseDTO; +import com.suisung.mall.common.utils.JsonUtil; import com.suisung.mall.shop.store.service.ShopStorePrinterService; import com.suisung.mall.shop.store.service.ShopStoreSameCityTransportBaseService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -@Api(tags = "门店打票机打印业务") +@Api(tags = "同城配送运费设置控制器") @RestController @RequestMapping("/admin/shop/store/same-city-transport") public class ShopStoreSameCityTransportBaseController { @@ -22,10 +23,16 @@ public class ShopStoreSameCityTransportBaseController { @Resource private ShopStoreSameCityTransportBaseService transportBaseService; - @ApiOperation(value = "同城配送运费设置详情", notes = "同城配送运费设置详情") + @ApiOperation(value = "获取同城配送运费设置详情", notes = "获取同城配送运费设置详情") @RequestMapping(value = "/detail", method = {RequestMethod.GET}) - public CommonResult shopStorePrinterDetail() { + public CommonResult shopStoreSameCityTransportBaseDetail() { return transportBaseService.ShopStoreSameCityTransportBaseDetail(); } + @ApiOperation(value = "保存(新增或修改)同城配送运费设置", notes = "保存(新增或修改)同城配送运费设置") + @RequestMapping(value = "/save", method = {RequestMethod.POST}) + public CommonResult shopStoreSameCityTransportBaseSettingDetail(@RequestBody(required = true) String requestBody) { + ShopStoreSameCityTransportBaseDTO params = JsonUtil.json2object(requestBody, ShopStoreSameCityTransportBaseDTO.class); + return transportBaseService.saveOrUpdateSameCityTransport(params); + } } \ No newline at end of file diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportBaseService.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportBaseService.java index a8a0f94f..1c57b571 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportBaseService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportBaseService.java @@ -11,17 +11,20 @@ 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; +import org.springframework.data.util.Pair; public interface ShopStoreSameCityTransportBaseService { /** * 获取同城配送设置详情信息 + * * @return */ CommonResult ShopStoreSameCityTransportBaseDetail(); /** * 保存或更新同城配送各项设置 + * * @param shopStoreSameCityTransportBaseDTO * @return */ @@ -29,6 +32,7 @@ public interface ShopStoreSameCityTransportBaseService { /** * 根据店铺 Id 获取同城配送设置详情信息 + * * @param storeId * @return */ @@ -37,8 +41,9 @@ public interface ShopStoreSameCityTransportBaseService { /** * 保存同城配送基础设置(存在更新,不存在新增) + * * @param shopStoreSameCityTransportBase * @return */ - Boolean saveOrUpdateShopStoreSameCityTransportBase(ShopStoreSameCityTransportBase shopStoreSameCityTransportBase); + Pair saveOrUpdateShopStoreSameCityTransportBase(ShopStoreSameCityTransportBase shopStoreSameCityTransportBase); } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportService.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportService.java index 405d4da7..a3c6865d 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreSameCityTransportService.java @@ -26,9 +26,8 @@ public interface ShopStoreSameCityTransportService { /** * 保存同城配送扩展设置列表(存在就更新,不存在就新增) - * @param transportBaseId * @param transportList * @return 成功的记录数 */ - Integer saveOrUpdateShopStoreSameCityTransportList(Long transportBaseId, List transportList); + Integer saveOrUpdateShopStoreSameCityTransportList(List transportList); } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportBaseServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportBaseServiceImpl.java index 3c1add7f..904b3d40 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportBaseServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportBaseServiceImpl.java @@ -25,6 +25,7 @@ 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.data.util.Pair; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -76,12 +77,12 @@ public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl pair = saveOrUpdateShopStoreSameCityTransportBase(transportBase); // 新增或更新同城配送扩展设置列表 - shopStoreSameCityTransportService.saveOrUpdateShopStoreSameCityTransportList(transportBase.getTransport_base_id(), shopStoreSameCityTransportBaseDTO.getTransportList()); + shopStoreSameCityTransportBaseDTO.setTransportBase(transportBase); + shopStoreSameCityTransportBaseDTO.rebuildTransportList(); + shopStoreSameCityTransportService.saveOrUpdateShopStoreSameCityTransportList(shopStoreSameCityTransportBaseDTO.getTransportList()); - if (success) { - CommonResult.success(); + if (pair.getFirst()>0) { + return CommonResult.success(null, pair.getSecond()); } - return CommonResult.failed("操作失败!"); + return CommonResult.failed(pair.getSecond()); } /** @@ -160,26 +163,50 @@ public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl saveOrUpdateShopStoreSameCityTransportBase(ShopStoreSameCityTransportBase transportBase) { if (transportBase == null || transportBase.getStore_id() == null || transportBase.getStore_id() <= 0) { - return false; + return Pair.of(0L, "缺少店铺Id必要参数!"); + } + + if (transportBase.getDistance_base() == null || transportBase.getDistance_base() <= 0) { + return Pair.of(0L, "请输入距离!"); + } + + if (transportBase.getWeight_base() == null || transportBase.getWeight_base() <= 0) { + return Pair.of(0L, "请输入重量!"); + } + + if (transportBase.getDelivery_base_fee() == null || BigDecimal.ZERO.compareTo(transportBase.getDelivery_base_fee()) >= 0) { + return Pair.of(0L, "请输入配送运费!"); } QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("store_id", transportBase.getStore_id()); ShopStoreSameCityTransportBase transportBaseExist = getOne(queryWrapper); - if (transportBase == null) { + if (transportBaseExist == null) { // 新增记录 transportBase.setCreated_by(transportBase.getUpdated_by()); - return save(transportBase); + if (save(transportBase)) { + // 应返回自增id + transportBaseExist = getOne(queryWrapper); + transportBase.setTransport_base_id(transportBaseExist.getTransport_base_id()); + return Pair.of(transportBaseExist.getTransport_base_id(), "添加成功!"); + } else { + return Pair.of(0L, "添加失败!"); + } } + // 记录已经存在就直接更新 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); + if (updateById(transportBase)) { + return Pair.of(transportBase.getTransport_base_id(), "更新成功!"); + } else { + return Pair.of(0L, "更新失败!"); + } } } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportServiceImpl.java index b97753f6..43ae0b5e 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreSameCityTransportServiceImpl.java @@ -15,14 +15,18 @@ import com.suisung.mall.common.modules.store.ShopStoreSameCityTransport; import com.suisung.mall.core.web.service.impl.BaseServiceImpl; import com.suisung.mall.shop.store.mapper.ShopStoreSameCityTransportMapper; import com.suisung.mall.shop.store.service.ShopStoreSameCityTransportService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.util.Collections; import java.util.List; @Service public class ShopStoreSameCityTransportServiceImpl extends BaseServiceImpl implements ShopStoreSameCityTransportService { + private static final Logger logger = LoggerFactory.getLogger(ShopStoreSameCityTransportServiceImpl.class); /** * 根据同城配送基础配置自增 Id 获取同城配送扩展设置列表 @@ -52,28 +56,48 @@ public class ShopStoreSameCityTransportServiceImpl extends BaseServiceImpl transportList) { - if (CollectionUtil.isEmpty(transportList) || transportBaseId == null || transportBaseId <= 0) { + public Integer saveOrUpdateShopStoreSameCityTransportList(List transportList) { + if (CollectionUtil.isEmpty(transportList)) { + logger.error("缺少必要参数!"); return 0; } int count = 0; for (ShopStoreSameCityTransport transport : transportList) { + if(transport.getTransport_base_id()==null||transport.getTransport_base_id()<=0){ + logger.error("缺少 transport_base_id 必要参数!"); + continue; + } + // 检验参数完整性 + if (transport.getArea_type() == null) { + transport.setArea_type(1);//业务分类:1-圆半径;2-多边形 + } + + if (transport.getMax_delivery_radius() == null || transport.getMax_delivery_radius() <= 0) { + logger.error("缺少配送范围,忽略保存!"); + continue; + } + // 未选起送金额条件,起送金额为0 + if (transport.getMin_delivery_amount_type() == null && transport.getMin_delivery_amount() != null) { + transport.setMin_delivery_amount(BigDecimal.ZERO); + } + + // 未选减免的金额条件,减免的金额为0 + if ((transport.getDelivery_discount_type() == null || transport.getMin_delivery_discount_amount() == null) && transport.getDelivery_discount() != null) { + transport.setDelivery_discount(BigDecimal.ZERO); + } + 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; }