获取服务配置

This commit is contained in:
xuelijun
2025-08-15 18:27:57 +08:00
parent 7afa85b941
commit ce643990d8
26 changed files with 462 additions and 196 deletions

View File

@@ -2,12 +2,14 @@ package com.tashow.cloud.productapi.api.product.dto;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO;
import com.tashow.cloud.productapi.general.StringListTypeHandler;
import lombok.*;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.util.List;
/**
* 特殊日期附加费用规则 DO
@@ -42,13 +44,15 @@ public class ProdAdditionalFeeDatesDO extends BaseDO {
*/
private Integer dateType;
/**
* 自定义日期时间段JSON格式存储
* 自定义日期时间段
*/
private String customTimeSlots;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> customTimeSlots;
/**
* 指定日期JSON格式存储
* 指定日期
*/
private String specificDates;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> specificDates;
/**
* 收费方式0''固定金额'':1''基准价上浮
*/

View File

@@ -1,9 +1,12 @@
package com.tashow.cloud.productapi.api.product.dto;
import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO;
import com.tashow.cloud.productapi.general.StringListTypeHandler;
import lombok.*;
import java.math.BigDecimal;
import java.util.List;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -37,9 +40,10 @@ public class ProdAdditionalFeePeriodsDO extends BaseDO {
*/
private String name;
/**
* 特殊时段设置JSON格式存储
* 特殊时段设置
*/
private String specialTimeSlots;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> specialTimeSlots;
/**
* 收费方式0:'固定金额',1:'基准价上浮'
*/

View File

@@ -1,11 +1,15 @@
package com.tashow.cloud.productapi.api.product.dto;
import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO;
import com.tashow.cloud.productapi.general.StringListTypeHandler;
import lombok.*;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.List;
/**
* 商品紧急响应服务设置 DO
*
@@ -31,17 +35,20 @@ public class ProdEmergencyResponseDO extends BaseDO {
*/
private Long prodId;
/**
* 可响应时间段JSON格式存储
* 可响应时间段
*/
private String responseTimeSlots;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> responseTimeSlots;
/**
* 黑名自定义日期JSON格式存储
* 黑名自定义日期
*/
private String blacklistedDates;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> blacklistedDates;
/**
* 黑名单指定日期JSON格式存储
* 黑名单指定日期
*/
private String blackAppointDates;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> blackAppointDates;
/**
* 法定节假日是否开启0:关闭1开启
*/

View File

@@ -32,6 +32,11 @@ public class ProdEmergencyResponseIntervalsDO extends BaseDO {
* 关联的紧急响应服务配置ID
*/
private Long configId;
/**
* 商品ID
*/
private Long prodId;
/**
* 响应模式名称
*/
@@ -39,7 +44,7 @@ public class ProdEmergencyResponseIntervalsDO extends BaseDO {
/**
* 响应时间(小时)
*/
private Integer responseHours;
private BigDecimal responseHours;
/**
* 收费模式0固定收费 1浮动收费
*/

View File

@@ -1,11 +1,16 @@
package com.tashow.cloud.productapi.api.product.dto;
import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO;
import com.tashow.cloud.productapi.api.product.vo.prodreservationconfig.TimeBookVO;
import com.tashow.cloud.productapi.general.StringListTypeHandler;
import lombok.*;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.List;
/**
* 商品预约配置 DO
*
@@ -31,9 +36,10 @@ public class ProdReservationConfigDO extends BaseDO {
*/
private Long prodId;
/**
* 预约时段设置JSON格式存储
* 预约时段设置
*/
private String reservationTimeSlots;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> reservationTimeSlots;
/**
* 需提前多少小时预约
*/
@@ -46,6 +52,12 @@ public class ProdReservationConfigDO extends BaseDO {
* 是否允许更改预约时间 1可以 0不可以
*/
private Integer allowChange;
/**
* 时间段
*/
private Integer timeSlot;
/**
* 更改预约时间的时间规则如服务开始前1小时可更改
*/
@@ -55,9 +67,10 @@ public class ProdReservationConfigDO extends BaseDO {
*/
private Integer maxChangeTimes;
/**
* 黑名自定义日期JSON格式存储
* 黑名自定义日期
*/
private String blacklistedDates;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> blacklistedDates;
/**
* '是否开启黑名单自定义0关1开'
@@ -70,9 +83,11 @@ public class ProdReservationConfigDO extends BaseDO {
private Integer isBlackAppoint;
/**
* 黑名单指定日期JSON格式存储
* 黑名单指定日期
*/
private String blackAppointDates;
//private String blackAppointDates;
@TableField(typeHandler = StringListTypeHandler.class)
private List<String> blackAppointDates;
/**
* 法定节假日是否开启0:关闭1开启
*/
@@ -82,4 +97,22 @@ public class ProdReservationConfigDO extends BaseDO {
*/
private Integer blackWeekend;
/**
* 预约时间区间设置
*/
@TableField(exist=false)
private TimeBookVO timeBook;
public TimeBookVO getTimeBook() {
if (this.timeBook == null) {
this.timeBook = new TimeBookVO();
this.timeBook.setTimeSlot(this.timeSlot);
this.timeBook.setReservationTimeSlots(this.reservationTimeSlots);
}
return this.timeBook;
}
public void setTimeBook(TimeBookVO timeBook) {
this.timeBook = timeBook;
}
}

View File

@@ -41,7 +41,7 @@ public class ProdWeightRangePricesDO extends BaseDO {
*/
private BigDecimal price;
/**
* 是否启用该规则0否1是
* 是否收费0否1是
*/
private Integer isEnabled;

View File

@@ -10,6 +10,7 @@ import com.tashow.cloud.productapi.general.StringListTypeHandler;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@@ -41,22 +42,53 @@ public class ProdListVO {
*/
private String shopName;
/**
* 默认是1正常状态出售中, 0下架仓库中 2待审核
*/
private Integer status;
@Schema(description = "")
/**
* 是否置灰0否1是
*/
private Integer isProhibit;
/**
* 服务区域地址名称集合
*/
private List<String> areaNameList;
/**
* 紧急服务最快响应时间(小时)
*/
private BigDecimal responseHours;
/**
* 服务时段
*/
private BigDecimal reservationTimeSlots;
/**
* 还剩多少天
*/
private Long remainingDays;
/**
* 审核备注
*/
private String processNotes;
/**
* 删除时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date deleteTime;
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
/**
* 更新时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateTime;
}

View File

@@ -0,0 +1,71 @@
package com.tashow.cloud.productapi.api.product.vo.prod;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Schema(description = "商品服务配置 VO")
@Data
public class ProdRestoreListVO {
/**
* 产品ID
*/
@TableId
private Long prodId;
/**
* 商品名称
*/
private String prodName;
/**
* 分类名称
*/
private String categoryName;
/**
* 店铺id
*/
private Long shopId;
/**
* 店铺id
*/
private String shopName;
/**
* 服务区域地址名称集合
*/
private List<String> areaNameList;
/**
* 紧急服务最快响应时间(小时)
*/
private BigDecimal responseHours;
/**
* 服务时段
*/
private BigDecimal reservationTimeSlots;
/**
* 还剩多少天
*/
private Long remainingDays;
/**
* 删除时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date deleteTime;
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
}

View File

@@ -1,11 +1,13 @@
package com.tashow.cloud.productapi.api.product.vo.prod;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.tashow.cloud.productapi.api.product.vo.prodemergencyresponse.ProdEmergencyInfoVO;
import com.tashow.cloud.productapi.api.product.vo.prodserviceareas.ProdServiceAreasInfoVO;
import com.tashow.cloud.productapi.api.product.dto.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;
import java.util.List;
@Schema(description = "商品服务配置 VO")
@@ -15,6 +17,22 @@ public class ProdServiceVO {
@Schema(description = "产品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "6943")
private Long prodId;
@Schema(description = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
@Schema(description = "修改时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateTime;
@Schema(description = "新建人")
private String creator;
@Schema(description = "修改人")
private String updater;
@Schema(description = "分类名称")
private String categoryName;
@Schema(description = "是否开启服务区域配置0关1开")
private Integer regionSwitch;

View File

@@ -6,6 +6,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Schema(description = "管理后台 - 特殊时段附加费用规则 Response VO")
@Data
@@ -26,7 +27,7 @@ public class ProdAdditionalFeePeriodsRespVO {
@Schema(description = "特殊时段设置JSON格式存储", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("特殊时段设置JSON格式存储")
private String specialTimeSlots;
private List<String> specialTimeSlots;
@Schema(description = "收费方式0:'固定金额',1:'基准价上浮'", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("收费方式0:'固定金额',1:'基准价上浮'")

View File

@@ -6,6 +6,7 @@ import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Schema(description = "管理后台 - 特殊时段附加费用规则新增/修改 Request VO")
@Data
@@ -24,7 +25,7 @@ public class ProdAdditionalFeePeriodsSaveReqVO {
@Schema(description = "特殊时段设置JSON格式存储", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "特殊时段设置JSON格式存储不能为空")
private String specialTimeSlots;
private List<String> specialTimeSlots;
@Schema(description = "收费方式0:'固定金额',1:'基准价上浮'", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "收费方式0:'固定金额',1:'基准价上浮'不能为空")

View File

@@ -22,17 +22,17 @@ public class ProdEmergencyInfoVO {
*/
private Long prodId;
/**
* 可响应时间段JSON格式存储
* 可响应时间段
*/
private String responseTimeSlots;
private List<String> responseTimeSlots;
/**
* 黑名自定义日期JSON格式存储
* 黑名自定义日期
*/
private String blacklistedDates;
private List<String> blacklistedDates;
/**
* 黑名单指定日期JSON格式存储
* 黑名单指定日期
*/
private String blackAppointDates;
private List<String> blackAppointDates;
/**
* 法定节假日是否开启0:关闭1开启
*/

View File

@@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 商品紧急响应服务设置分页 Request VO")
@Data
@@ -17,14 +18,14 @@ public class ProdEmergencyResponsePageReqVO extends PageParam {
@Schema(description = "关联的商品ID", example = "29152")
private Long prodId;
@Schema(description = "可响应时间段JSON格式存储")
private String responseTimeSlots;
@Schema(description = "可响应时间段")
private List<String> responseTimeSlots;
@Schema(description = "黑名自定义日期JSON格式存储")
private String blacklistedDates;
@Schema(description = "黑名自定义日期")
private List<String> blacklistedDates;
@Schema(description = "黑名单指定日期JSON格式存储")
private String blackAppointDates;
@Schema(description = "黑名单指定日期")
private List<String> blackAppointDates;
@Schema(description = "法定节假日是否开启0:关闭1开启")
private Integer blackHappy;

View File

@@ -1,10 +1,13 @@
package com.tashow.cloud.productapi.api.product.vo.prodemergencyresponse;
import com.baomidou.mybatisplus.annotation.TableField;
import com.tashow.cloud.productapi.general.StringListTypeHandler;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 商品紧急响应服务设置新增/修改 Request VO")
@Data
@@ -17,14 +20,14 @@ public class ProdEmergencyResponseSaveReqVO {
@NotNull(message = "关联的商品ID不能为空")
private Long prodId;
@Schema(description = "可响应时间段JSON格式存储")
private String responseTimeSlots;
@Schema(description = "可响应时间段")
private List<String> responseTimeSlots;
@Schema(description = "黑名自定义日期JSON格式存储")
private String blacklistedDates;
@Schema(description = "黑名自定义日期")
private List<String>blacklistedDates;
@Schema(description = "黑名单指定日期JSON格式存储")
private String blackAppointDates;
@Schema(description = "黑名单指定日期")
private List<String> blackAppointDates;
@Schema(description = "法定节假日是否开启0:关闭1开启")
private Integer blackHappy;

View File

@@ -22,7 +22,7 @@ public class ProdEmergencyResponseIntervalsPageReqVO extends PageParam {
private String modeName;
@Schema(description = "响应时间(小时)")
private Integer responseHours;
private BigDecimal responseHours;
@Schema(description = "收费模式0固定收费 1浮动收费")
private Integer chargeMode;

View File

@@ -27,7 +27,7 @@ public class ProdEmergencyResponseIntervalsRespVO {
@Schema(description = "响应时间(小时)", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("响应时间(小时)")
private Integer responseHours;
private BigDecimal responseHours;
@Schema(description = "收费模式0固定收费 1浮动收费", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("收费模式0固定收费 1浮动收费")

View File

@@ -25,7 +25,7 @@ public class ProdEmergencyResponseIntervalsSaveReqVO {
@Schema(description = "响应时间(小时)", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "响应时间(小时)不能为空")
private Integer responseHours;
private BigDecimal responseHours;
@Schema(description = "收费模式0固定收费 1浮动收费", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "收费模式0固定收费 1浮动收费不能为空")

View File

@@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 商品预约配置分页 Request VO")
@Data
@@ -17,8 +18,8 @@ public class ProdReservationConfigPageReqVO extends PageParam {
@Schema(description = "关联的商品ID", example = "19369")
private Long prodId;
@Schema(description = "预约时段设置JSON格式存储")
private String reservationTimeSlots;
@Schema(description = "预约时段设置")
private List<String> reservationTimeSlots;
@Schema(description = "需提前多少小时预约")
private Integer advanceHours;
@@ -35,8 +36,8 @@ public class ProdReservationConfigPageReqVO extends PageParam {
@Schema(description = "允许更改预约时间的最大次数")
private Integer maxChangeTimes;
@Schema(description = "黑名自定义日期JSON格式存储")
private String blacklistedDates;
@Schema(description = "黑名自定义日期")
private List<String> blacklistedDates;
/**
* '是否开启黑名单自定义0关1开'
@@ -48,8 +49,8 @@ public class ProdReservationConfigPageReqVO extends PageParam {
*/
private Integer isBlackAppoint;
@Schema(description = "黑名单指定日期JSON格式存储")
private String blackAppointDates;
@Schema(description = "黑名单指定日期")
private List<String> blackAppointDates;
@Schema(description = "法定节假日是否开启0:关闭1开启")
private Boolean blackHappy;

View File

@@ -6,6 +6,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 商品预约配置 Response VO")
@Data
@@ -20,9 +21,9 @@ public class ProdReservationConfigRespVO {
@ExcelProperty("关联的商品ID")
private Long prodId;
@Schema(description = "预约时段设置JSON格式存储", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("预约时段设置JSON格式存储")
private String reservationTimeSlots;
@Schema(description = "预约时段设置", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("预约时段设置")
private List<String> reservationTimeSlots;
@Schema(description = "需提前多少小时预约", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("需提前多少小时预约")
@@ -44,9 +45,9 @@ public class ProdReservationConfigRespVO {
@ExcelProperty("允许更改预约时间的最大次数")
private Integer maxChangeTimes;
@Schema(description = "黑名自定义日期JSON格式存储")
@ExcelProperty("黑名自定义日期JSON格式存储")
private String blacklistedDates;
@Schema(description = "黑名自定义日期")
@ExcelProperty("黑名自定义日期")
private List<String> blacklistedDates;
/**
* '是否开启黑名单自定义0关1开'
@@ -58,9 +59,9 @@ public class ProdReservationConfigRespVO {
*/
private Integer isBlackAppoint;
@Schema(description = "黑名单指定日期JSON格式存储")
@ExcelProperty("黑名单指定日期JSON格式存储")
private String blackAppointDates;
@Schema(description = "黑名单指定日期")
@ExcelProperty("黑名单指定日期")
private List<String> blackAppointDates;
@Schema(description = "法定节假日是否开启0:关闭1开启")
@ExcelProperty("法定节假日是否开启0:关闭1开启")

View File

@@ -6,6 +6,7 @@ import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 商品预约配置新增/修改 Request VO")
@Data
@@ -18,9 +19,9 @@ public class ProdReservationConfigSaveReqVO {
@NotNull(message = "关联的商品ID不能为空")
private Long prodId;
@Schema(description = "预约时段设置JSON格式存储", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "预约时段设置JSON格式存储不能为空")
private String reservationTimeSlots;
@Schema(description = "预约时段设置", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "预约时段设置不能为空")
private List<String> reservationTimeSlots;
@Schema(description = "需提前多少小时预约", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "需提前多少小时预约不能为空")
@@ -40,8 +41,8 @@ public class ProdReservationConfigSaveReqVO {
@Schema(description = "允许更改预约时间的最大次数")
private Integer maxChangeTimes;
@Schema(description = "黑名自定义日期JSON格式存储")
private String blacklistedDates;
@Schema(description = "黑名自定义日期")
private List<String> blacklistedDates;
/**
* '是否开启黑名单自定义0关1开'
@@ -53,8 +54,8 @@ public class ProdReservationConfigSaveReqVO {
*/
private Integer isBlackAppoint;
@Schema(description = "黑名单指定日期JSON格式存储")
private String blackAppointDates;
@Schema(description = "黑名单指定日期")
private List<String> blackAppointDates;
@Schema(description = "法定节假日是否开启0:关闭1开启")
private Boolean blackHappy;

View File

@@ -0,0 +1,23 @@
package com.tashow.cloud.productapi.api.product.vo.prodreservationconfig;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
@Schema(description = "管理后台 - 商品预约配置 Response VO")
@Data
@ExcelIgnoreUnannotated
public class TimeBookVO {
/**
* 预约时段设置
*/
private List<String> reservationTimeSlots;
/**
* 时间段
*/
private Integer timeSlot;
}