diff --git a/tashow-feign/tashow-product-api/src/main/java/com/tashow/cloud/productapi/enums/ErrorCodeConstants.java b/tashow-feign/tashow-product-api/src/main/java/com/tashow/cloud/productapi/enums/ErrorCodeConstants.java index 2a9cc9b..03389a8 100644 --- a/tashow-feign/tashow-product-api/src/main/java/com/tashow/cloud/productapi/enums/ErrorCodeConstants.java +++ b/tashow-feign/tashow-product-api/src/main/java/com/tashow/cloud/productapi/enums/ErrorCodeConstants.java @@ -27,5 +27,8 @@ public interface ErrorCodeConstants { ErrorCode PROD_WEIGHT_RANGE_PRICES_NOT_EXISTS = new ErrorCode(10015, "体重区间价格不存在"); ErrorCode SHOP_DETAIL_NOT_EXISTS = new ErrorCode(10016, "店铺信息不存在"); ErrorCode SKU_NOT_EXISTS = new ErrorCode(10017, "单品SKU不存在"); - ErrorCode SKU_SERVICE_DELIVER_NOT_EXISTS = new ErrorCode(10016, "服务交付方式不存在"); + ErrorCode SKU_SERVICE_DELIVER_NOT_EXISTS = new ErrorCode(10018, "服务交付方式不存在"); + ErrorCode SKU_SERVICE_MATERIAL_NOT_EXISTS = new ErrorCode(10019, "服务物料详情不存在"); + ErrorCode SKU_SERVICES_FORM_NOT_EXISTS = new ErrorCode(10021, "商品SKU扩展服务表单不存在"); + ErrorCode SKU_SERVICE_TRANSPORT_NOT_EXISTS = new ErrorCode(10022, "服务遗体运输不存在"); } diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServiceMaterialController.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServiceMaterialController.java new file mode 100644 index 0000000..e5ec813 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServiceMaterialController.java @@ -0,0 +1,97 @@ +package com.tashow.cloud.product.controller; + +import com.tashow.cloud.product.dto.SkuServiceMaterialDO; +import com.tashow.cloud.product.service.SkuServiceMaterialService; +import com.tashow.cloud.product.vo.skuservicematerial.SkuServiceMaterialPageReqVO; +import com.tashow.cloud.product.vo.skuservicematerial.SkuServiceMaterialRespVO; +import com.tashow.cloud.product.vo.skuservicematerial.SkuServiceMaterialSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.tashow.cloud.common.pojo.PageParam; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.CommonResult; +import com.tashow.cloud.common.util.object.BeanUtils; +import static com.tashow.cloud.common.pojo.CommonResult.success; + +import com.tashow.cloud.excel.excel.core.util.ExcelUtils; + +import com.tashow.cloud.web.apilog.core.annotation.ApiAccessLog; +import static com.tashow.cloud.web.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 服务物料详情") +@RestController +@RequestMapping("/tz/sku-service-material") +@Validated +public class SkuServiceMaterialController { + + @Resource + private SkuServiceMaterialService skuServiceMaterialService; + + @PostMapping("/create") + @Operation(summary = "创建服务物料详情") + @PreAuthorize("@ss.hasPermission('tz:sku-service-material:create')") + public CommonResult createSkuServiceMaterial(@Valid @RequestBody SkuServiceMaterialSaveReqVO createReqVO) { + return success(skuServiceMaterialService.createSkuServiceMaterial(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新服务物料详情") + @PreAuthorize("@ss.hasPermission('tz:sku-service-material:update')") + public CommonResult updateSkuServiceMaterial(@Valid @RequestBody SkuServiceMaterialSaveReqVO updateReqVO) { + skuServiceMaterialService.updateSkuServiceMaterial(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除服务物料详情") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('tz:sku-service-material:delete')") + public CommonResult deleteSkuServiceMaterial(@RequestParam("id") Long id) { + skuServiceMaterialService.deleteSkuServiceMaterial(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得服务物料详情") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('tz:sku-service-material:query')") + public CommonResult getSkuServiceMaterial(@RequestParam("id") Long id) { + SkuServiceMaterialDO skuServiceMaterial = skuServiceMaterialService.getSkuServiceMaterial(id); + return success(BeanUtils.toBean(skuServiceMaterial, SkuServiceMaterialRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得服务物料详情分页") + @PreAuthorize("@ss.hasPermission('tz:sku-service-material:query')") + public CommonResult> getSkuServiceMaterialPage(@Valid SkuServiceMaterialPageReqVO pageReqVO) { + PageResult pageResult = skuServiceMaterialService.getSkuServiceMaterialPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, SkuServiceMaterialRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出服务物料详情 Excel") + @PreAuthorize("@ss.hasPermission('tz:sku-service-material:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportSkuServiceMaterialExcel(@Valid SkuServiceMaterialPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = skuServiceMaterialService.getSkuServiceMaterialPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "服务物料详情.xls", "数据", SkuServiceMaterialRespVO.class, + BeanUtils.toBean(list, SkuServiceMaterialRespVO.class)); + } + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServiceTransportController.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServiceTransportController.java new file mode 100644 index 0000000..85af9ae --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServiceTransportController.java @@ -0,0 +1,96 @@ +package com.tashow.cloud.product.controller; + +import com.tashow.cloud.product.dto.SkuServiceTransportDO; +import com.tashow.cloud.product.service.SkuServiceTransportService; +import com.tashow.cloud.product.vo.skuservicetransport.SkuServiceTransportPageReqVO; +import com.tashow.cloud.product.vo.skuservicetransport.SkuServiceTransportRespVO; +import com.tashow.cloud.product.vo.skuservicetransport.SkuServiceTransportSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.tashow.cloud.common.pojo.PageParam; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.CommonResult; +import com.tashow.cloud.common.util.object.BeanUtils; +import static com.tashow.cloud.common.pojo.CommonResult.success; + +import com.tashow.cloud.excel.excel.core.util.ExcelUtils; + +import com.tashow.cloud.web.apilog.core.annotation.ApiAccessLog; +import static com.tashow.cloud.web.apilog.core.enums.OperateTypeEnum.*; + +@Tag(name = "管理后台 - 服务遗体运输") +@RestController +@RequestMapping("/tz/sku-service-transport") +@Validated +public class SkuServiceTransportController { + + @Resource + private SkuServiceTransportService skuServiceTransportService; + + @PostMapping("/create") + @Operation(summary = "创建服务遗体运输") + @PreAuthorize("@ss.hasPermission('tz:sku-service-transport:create')") + public CommonResult createSkuServiceTransport(@Valid @RequestBody SkuServiceTransportSaveReqVO createReqVO) { + return success(skuServiceTransportService.createSkuServiceTransport(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新服务遗体运输") + @PreAuthorize("@ss.hasPermission('tz:sku-service-transport:update')") + public CommonResult updateSkuServiceTransport(@Valid @RequestBody SkuServiceTransportSaveReqVO updateReqVO) { + skuServiceTransportService.updateSkuServiceTransport(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除服务遗体运输") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('tz:sku-service-transport:delete')") + public CommonResult deleteSkuServiceTransport(@RequestParam("id") Long id) { + skuServiceTransportService.deleteSkuServiceTransport(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得服务遗体运输") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('tz:sku-service-transport:query')") + public CommonResult getSkuServiceTransport(@RequestParam("id") Long id) { + SkuServiceTransportDO skuServiceTransport = skuServiceTransportService.getSkuServiceTransport(id); + return success(BeanUtils.toBean(skuServiceTransport, SkuServiceTransportRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得服务遗体运输分页") + @PreAuthorize("@ss.hasPermission('tz:sku-service-transport:query')") + public CommonResult> getSkuServiceTransportPage(@Valid SkuServiceTransportPageReqVO pageReqVO) { + PageResult pageResult = skuServiceTransportService.getSkuServiceTransportPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, SkuServiceTransportRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出服务遗体运输 Excel") + @PreAuthorize("@ss.hasPermission('tz:sku-service-transport:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportSkuServiceTransportExcel(@Valid SkuServiceTransportPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = skuServiceTransportService.getSkuServiceTransportPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "服务遗体运输.xls", "数据", SkuServiceTransportRespVO.class, + BeanUtils.toBean(list, SkuServiceTransportRespVO.class)); + } + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServicesFormController.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServicesFormController.java new file mode 100644 index 0000000..c12a803 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/controller/SkuServicesFormController.java @@ -0,0 +1,96 @@ +package com.tashow.cloud.product.controller; + +import com.tashow.cloud.product.dto.SkuServicesFormDO; +import com.tashow.cloud.product.service.SkuServicesFormService; +import com.tashow.cloud.product.vo.skuservicesform.SkuServicesFormPageReqVO; +import com.tashow.cloud.product.vo.skuservicesform.SkuServicesFormRespVO; +import com.tashow.cloud.product.vo.skuservicesform.SkuServicesFormSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.tashow.cloud.common.pojo.PageParam; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.CommonResult; +import com.tashow.cloud.common.util.object.BeanUtils; +import static com.tashow.cloud.common.pojo.CommonResult.success; + +import com.tashow.cloud.excel.excel.core.util.ExcelUtils; + +import com.tashow.cloud.web.apilog.core.annotation.ApiAccessLog; +import static com.tashow.cloud.web.apilog.core.enums.OperateTypeEnum.*; + +@Tag(name = "管理后台 - 商品SKU扩展服务表单") +@RestController +@RequestMapping("/tz/sku-services-form") +@Validated +public class SkuServicesFormController { + + @Resource + private SkuServicesFormService skuServicesFormService; + + @PostMapping("/create") + @Operation(summary = "创建商品SKU扩展服务表单") + @PreAuthorize("@ss.hasPermission('tz:sku-services-form:create')") + public CommonResult createSkuServicesForm(@Valid @RequestBody SkuServicesFormSaveReqVO createReqVO) { + return success(skuServicesFormService.createSkuServicesForm(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新商品SKU扩展服务表单") + @PreAuthorize("@ss.hasPermission('tz:sku-services-form:update')") + public CommonResult updateSkuServicesForm(@Valid @RequestBody SkuServicesFormSaveReqVO updateReqVO) { + skuServicesFormService.updateSkuServicesForm(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除商品SKU扩展服务表单") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('tz:sku-services-form:delete')") + public CommonResult deleteSkuServicesForm(@RequestParam("id") Long id) { + skuServicesFormService.deleteSkuServicesForm(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得商品SKU扩展服务表单") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('tz:sku-services-form:query')") + public CommonResult getSkuServicesForm(@RequestParam("id") Long id) { + SkuServicesFormDO skuServicesForm = skuServicesFormService.getSkuServicesForm(id); + return success(BeanUtils.toBean(skuServicesForm, SkuServicesFormRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得商品SKU扩展服务表单分页") + @PreAuthorize("@ss.hasPermission('tz:sku-services-form:query')") + public CommonResult> getSkuServicesFormPage(@Valid SkuServicesFormPageReqVO pageReqVO) { + PageResult pageResult = skuServicesFormService.getSkuServicesFormPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, SkuServicesFormRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出商品SKU扩展服务表单 Excel") + @PreAuthorize("@ss.hasPermission('tz:sku-services-form:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportSkuServicesFormExcel(@Valid SkuServicesFormPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = skuServicesFormService.getSkuServicesFormPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "商品SKU扩展服务表单.xls", "数据", SkuServicesFormRespVO.class, + BeanUtils.toBean(list, SkuServicesFormRespVO.class)); + } + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServiceMaterialDO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServiceMaterialDO.java new file mode 100644 index 0000000..45d94ea --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServiceMaterialDO.java @@ -0,0 +1,51 @@ +package com.tashow.cloud.product.dto; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO; + +/** + * 服务物料详情 DO + * + * @author 芋道源码 + */ +@TableName("tz_sku_service_material") +@KeySequence("tz_sku_service_material_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SkuServiceMaterialDO extends BaseDO { + + /** + * 服务物料的唯一标识符 + */ + @TableId + private Long id; + /** + * 关联的扩展服务ID + */ + private Long serviceId; + /** + * 名称 + */ + private String name; + /** + * 描述 + */ + private String describe; + /** + * 创建时间 + */ + private LocalDateTime createdAt; + /** + * 最后更新时间 + */ + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServiceTransportDO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServiceTransportDO.java new file mode 100644 index 0000000..83dd492 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServiceTransportDO.java @@ -0,0 +1,67 @@ +package com.tashow.cloud.product.dto; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO; + +/** + * 服务遗体运输 DO + * + * @author 芋道源码 + */ +@TableName("tz_sku_service_transport") +@KeySequence("tz_sku_service_transport_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SkuServiceTransportDO extends BaseDO { + + /** + * 服务遗体运输唯一标识符 + */ + @TableId + private Long id; + /** + * 关联的扩展服务ID + */ + private Long serviceId; + /** + * 联系人 + */ + private String contacts; + /** + * 详细地址 + */ + private String address; + /** + * 省 + */ + private String province; + /** + * 市 + */ + private String city; + /** + * 区 + */ + private String area; + /** + * 电话号码 + */ + private String tel; + /** + * 创建时间 + */ + private LocalDateTime createdAt; + /** + * 最后更新时间 + */ + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServicesFormDO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServicesFormDO.java new file mode 100644 index 0000000..df30fcd --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/dto/SkuServicesFormDO.java @@ -0,0 +1,55 @@ +package com.tashow.cloud.product.dto; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO; + +/** + * 商品SKU扩展服务表单 DO + * + * @author 芋道源码 + */ +@TableName("tz_sku_services_form") +@KeySequence("tz_sku_services_form_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SkuServicesFormDO extends BaseDO { + + /** + * 扩展服务的唯一标识符 + */ + @TableId + private Long id; + /** + * 表单名称 + */ + private String name; + /** + * 关联的商品SKU ID + */ + private Long skuId; + /** + * 服务名称 + */ + private String serviceName; + /** + * 是否启用该服务 + */ + private Boolean isEnabled; + /** + * 创建时间 + */ + private LocalDateTime createdAt; + /** + * 最后更新时间 + */ + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServiceMaterialMapper.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServiceMaterialMapper.java new file mode 100644 index 0000000..ecba405 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServiceMaterialMapper.java @@ -0,0 +1,20 @@ +package com.tashow.cloud.product.mapper; + +import java.util.*; + +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.mybatis.mybatis.core.query.LambdaQueryWrapperX; +import com.tashow.cloud.mybatis.mybatis.core.mapper.BaseMapperX; +import com.tashow.cloud.product.dto.SkuServiceMaterialDO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 服务物料详情 Mapper + * + * @author 芋道源码 + */ +@Mapper +public interface SkuServiceMaterialMapper extends BaseMapperX { + + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServiceTransportMapper.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServiceTransportMapper.java new file mode 100644 index 0000000..68e2181 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServiceTransportMapper.java @@ -0,0 +1,20 @@ +package com.tashow.cloud.product.mapper; + +import java.util.*; + +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.mybatis.mybatis.core.query.LambdaQueryWrapperX; +import com.tashow.cloud.mybatis.mybatis.core.mapper.BaseMapperX; +import com.tashow.cloud.product.dto.SkuServiceTransportDO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 服务遗体运输 Mapper + * + * @author 芋道源码 + */ +@Mapper +public interface SkuServiceTransportMapper extends BaseMapperX { + + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServicesFormMapper.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServicesFormMapper.java new file mode 100644 index 0000000..8ab0e02 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/mapper/SkuServicesFormMapper.java @@ -0,0 +1,20 @@ +package com.tashow.cloud.product.mapper; + +import java.util.*; + +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.mybatis.mybatis.core.query.LambdaQueryWrapperX; +import com.tashow.cloud.mybatis.mybatis.core.mapper.BaseMapperX; +import com.tashow.cloud.product.dto.SkuServicesFormDO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 商品SKU扩展服务表单 Mapper + * + * @author 芋道源码 + */ +@Mapper +public interface SkuServicesFormMapper extends BaseMapperX { + + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServiceMaterialService.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServiceMaterialService.java new file mode 100644 index 0000000..16be043 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServiceMaterialService.java @@ -0,0 +1,57 @@ +package com.tashow.cloud.product.service; + +import java.util.*; + +import com.tashow.cloud.product.dto.SkuServiceMaterialDO; +import com.tashow.cloud.product.vo.skuservicematerial.SkuServiceMaterialPageReqVO; +import com.tashow.cloud.product.vo.skuservicematerial.SkuServiceMaterialSaveReqVO; +import jakarta.validation.*; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.PageParam; + +/** + * 服务物料详情 Service 接口 + * + * @author 芋道源码 + */ +public interface SkuServiceMaterialService { + + /** + * 创建服务物料详情 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createSkuServiceMaterial(@Valid SkuServiceMaterialSaveReqVO createReqVO); + + /** + * 更新服务物料详情 + * + * @param updateReqVO 更新信息 + */ + void updateSkuServiceMaterial(@Valid SkuServiceMaterialSaveReqVO updateReqVO); + + /** + * 删除服务物料详情 + * + * @param id 编号 + */ + void deleteSkuServiceMaterial(Long id); + + /** + * 获得服务物料详情 + * + * @param id 编号 + * @return 服务物料详情 + */ + SkuServiceMaterialDO getSkuServiceMaterial(Long id); + + /** + * 获得服务物料详情分页 + * + * @param pageReqVO 分页查询 + * @return 服务物料详情分页 + */ + PageResult getSkuServiceMaterialPage(SkuServiceMaterialPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServiceTransportService.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServiceTransportService.java new file mode 100644 index 0000000..709badd --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServiceTransportService.java @@ -0,0 +1,57 @@ +package com.tashow.cloud.product.service; + +import java.util.*; + +import com.tashow.cloud.product.dto.SkuServiceTransportDO; +import com.tashow.cloud.product.vo.skuservicetransport.SkuServiceTransportPageReqVO; +import com.tashow.cloud.product.vo.skuservicetransport.SkuServiceTransportSaveReqVO; +import jakarta.validation.*; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.PageParam; + +/** + * 服务遗体运输 Service 接口 + * + * @author 芋道源码 + */ +public interface SkuServiceTransportService { + + /** + * 创建服务遗体运输 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createSkuServiceTransport(@Valid SkuServiceTransportSaveReqVO createReqVO); + + /** + * 更新服务遗体运输 + * + * @param updateReqVO 更新信息 + */ + void updateSkuServiceTransport(@Valid SkuServiceTransportSaveReqVO updateReqVO); + + /** + * 删除服务遗体运输 + * + * @param id 编号 + */ + void deleteSkuServiceTransport(Long id); + + /** + * 获得服务遗体运输 + * + * @param id 编号 + * @return 服务遗体运输 + */ + SkuServiceTransportDO getSkuServiceTransport(Long id); + + /** + * 获得服务遗体运输分页 + * + * @param pageReqVO 分页查询 + * @return 服务遗体运输分页 + */ + PageResult getSkuServiceTransportPage(SkuServiceTransportPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServicesFormService.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServicesFormService.java new file mode 100644 index 0000000..780efd9 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/SkuServicesFormService.java @@ -0,0 +1,57 @@ +package com.tashow.cloud.product.service; + +import java.util.*; + +import com.tashow.cloud.product.dto.SkuServicesFormDO; +import com.tashow.cloud.product.vo.skuservicesform.SkuServicesFormPageReqVO; +import com.tashow.cloud.product.vo.skuservicesform.SkuServicesFormSaveReqVO; +import jakarta.validation.*; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.PageParam; + +/** + * 商品SKU扩展服务表单 Service 接口 + * + * @author 芋道源码 + */ +public interface SkuServicesFormService { + + /** + * 创建商品SKU扩展服务表单 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createSkuServicesForm(@Valid SkuServicesFormSaveReqVO createReqVO); + + /** + * 更新商品SKU扩展服务表单 + * + * @param updateReqVO 更新信息 + */ + void updateSkuServicesForm(@Valid SkuServicesFormSaveReqVO updateReqVO); + + /** + * 删除商品SKU扩展服务表单 + * + * @param id 编号 + */ + void deleteSkuServicesForm(Long id); + + /** + * 获得商品SKU扩展服务表单 + * + * @param id 编号 + * @return 商品SKU扩展服务表单 + */ + SkuServicesFormDO getSkuServicesForm(Long id); + + /** + * 获得商品SKU扩展服务表单分页 + * + * @param pageReqVO 分页查询 + * @return 商品SKU扩展服务表单分页 + */ + PageResult getSkuServicesFormPage(SkuServicesFormPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServiceMaterialServiceImpl.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServiceMaterialServiceImpl.java new file mode 100644 index 0000000..86eea11 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServiceMaterialServiceImpl.java @@ -0,0 +1,76 @@ +package com.tashow.cloud.product.service.impl; + +import com.tashow.cloud.product.dto.SkuServiceMaterialDO; +import com.tashow.cloud.product.mapper.SkuServiceMaterialMapper; +import com.tashow.cloud.product.service.SkuServiceMaterialService; +import com.tashow.cloud.product.vo.skuservicematerial.SkuServiceMaterialPageReqVO; +import com.tashow.cloud.product.vo.skuservicematerial.SkuServiceMaterialSaveReqVO; +import com.tashow.cloud.productapi.enums.ErrorCodeConstants; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.PageParam; +import com.tashow.cloud.common.util.object.BeanUtils; + + +import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception; + +/** + * 服务物料详情 Service 实现类 + * + * @author 芋道源码 + */ +@Service +@Validated +public class SkuServiceMaterialServiceImpl implements SkuServiceMaterialService { + + @Resource + private SkuServiceMaterialMapper skuServiceMaterialMapper; + + @Override + public Long createSkuServiceMaterial(SkuServiceMaterialSaveReqVO createReqVO) { + // 插入 + SkuServiceMaterialDO skuServiceMaterial = BeanUtils.toBean(createReqVO, SkuServiceMaterialDO.class); + skuServiceMaterialMapper.insert(skuServiceMaterial); + // 返回 + return skuServiceMaterial.getId(); + } + + @Override + public void updateSkuServiceMaterial(SkuServiceMaterialSaveReqVO updateReqVO) { + // 校验存在 + validateSkuServiceMaterialExists(updateReqVO.getId()); + // 更新 + SkuServiceMaterialDO updateObj = BeanUtils.toBean(updateReqVO, SkuServiceMaterialDO.class); + skuServiceMaterialMapper.updateById(updateObj); + } + + @Override + public void deleteSkuServiceMaterial(Long id) { + // 校验存在 + validateSkuServiceMaterialExists(id); + // 删除 + skuServiceMaterialMapper.deleteById(id); + } + + private void validateSkuServiceMaterialExists(Long id) { + if (skuServiceMaterialMapper.selectById(id) == null) { + throw exception(ErrorCodeConstants.SKU_SERVICE_MATERIAL_NOT_EXISTS); + } + } + + @Override + public SkuServiceMaterialDO getSkuServiceMaterial(Long id) { + return skuServiceMaterialMapper.selectById(id); + } + + @Override + public PageResult getSkuServiceMaterialPage(SkuServiceMaterialPageReqVO pageReqVO) { + return null; + } + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServiceTransportServiceImpl.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServiceTransportServiceImpl.java new file mode 100644 index 0000000..267667d --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServiceTransportServiceImpl.java @@ -0,0 +1,74 @@ +package com.tashow.cloud.product.service.impl; + +import com.tashow.cloud.product.dto.SkuServiceTransportDO; +import com.tashow.cloud.product.mapper.SkuServiceTransportMapper; +import com.tashow.cloud.product.service.SkuServiceTransportService; +import com.tashow.cloud.product.vo.skuservicetransport.SkuServiceTransportPageReqVO; +import com.tashow.cloud.product.vo.skuservicetransport.SkuServiceTransportSaveReqVO; +import com.tashow.cloud.productapi.enums.ErrorCodeConstants; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.PageParam; +import com.tashow.cloud.common.util.object.BeanUtils; +import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception; + +/** + * 服务遗体运输 Service 实现类 + * + * @author 芋道源码 + */ +@Service +@Validated +public class SkuServiceTransportServiceImpl implements SkuServiceTransportService { + + @Resource + private SkuServiceTransportMapper skuServiceTransportMapper; + + @Override + public Long createSkuServiceTransport(SkuServiceTransportSaveReqVO createReqVO) { + // 插入 + SkuServiceTransportDO skuServiceTransport = BeanUtils.toBean(createReqVO, SkuServiceTransportDO.class); + skuServiceTransportMapper.insert(skuServiceTransport); + // 返回 + return skuServiceTransport.getId(); + } + + @Override + public void updateSkuServiceTransport(SkuServiceTransportSaveReqVO updateReqVO) { + // 校验存在 + validateSkuServiceTransportExists(updateReqVO.getId()); + // 更新 + SkuServiceTransportDO updateObj = BeanUtils.toBean(updateReqVO, SkuServiceTransportDO.class); + skuServiceTransportMapper.updateById(updateObj); + } + + @Override + public void deleteSkuServiceTransport(Long id) { + // 校验存在 + validateSkuServiceTransportExists(id); + // 删除 + skuServiceTransportMapper.deleteById(id); + } + + private void validateSkuServiceTransportExists(Long id) { + if (skuServiceTransportMapper.selectById(id) == null) { + throw exception(ErrorCodeConstants.SKU_SERVICE_TRANSPORT_NOT_EXISTS); + } + } + + @Override + public SkuServiceTransportDO getSkuServiceTransport(Long id) { + return skuServiceTransportMapper.selectById(id); + } + + @Override + public PageResult getSkuServiceTransportPage(SkuServiceTransportPageReqVO pageReqVO) { + return null; + } + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServicesFormServiceImpl.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServicesFormServiceImpl.java new file mode 100644 index 0000000..c07951d --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/service/impl/SkuServicesFormServiceImpl.java @@ -0,0 +1,73 @@ + package com.tashow.cloud.product.service.impl; + +import com.tashow.cloud.product.dto.SkuServicesFormDO; +import com.tashow.cloud.product.mapper.SkuServicesFormMapper; +import com.tashow.cloud.product.service.SkuServicesFormService; +import com.tashow.cloud.product.vo.skuservicesform.SkuServicesFormPageReqVO; +import com.tashow.cloud.product.vo.skuservicesform.SkuServicesFormSaveReqVO; +import com.tashow.cloud.productapi.enums.ErrorCodeConstants; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; +import java.util.*; +import com.tashow.cloud.common.pojo.PageResult; +import com.tashow.cloud.common.pojo.PageParam; +import com.tashow.cloud.common.util.object.BeanUtils; +import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception; + +/** + * 商品SKU扩展服务表单 Service 实现类 + * + * @author 芋道源码 + */ +@Service +@Validated +public class SkuServicesFormServiceImpl implements SkuServicesFormService { + + @Resource + private SkuServicesFormMapper skuServicesFormMapper; + + @Override + public Long createSkuServicesForm(SkuServicesFormSaveReqVO createReqVO) { + // 插入 + SkuServicesFormDO skuServicesForm = BeanUtils.toBean(createReqVO, SkuServicesFormDO.class); + skuServicesFormMapper.insert(skuServicesForm); + // 返回 + return skuServicesForm.getId(); + } + + @Override + public void updateSkuServicesForm(SkuServicesFormSaveReqVO updateReqVO) { + // 校验存在 + validateSkuServicesFormExists(updateReqVO.getId()); + // 更新 + SkuServicesFormDO updateObj = BeanUtils.toBean(updateReqVO, SkuServicesFormDO.class); + skuServicesFormMapper.updateById(updateObj); + } + + @Override + public void deleteSkuServicesForm(Long id) { + // 校验存在 + validateSkuServicesFormExists(id); + // 删除 + skuServicesFormMapper.deleteById(id); + } + + private void validateSkuServicesFormExists(Long id) { + if (skuServicesFormMapper.selectById(id) == null) { + throw exception(ErrorCodeConstants.SKU_SERVICES_FORM_NOT_EXISTS); + } + } + + @Override + public SkuServicesFormDO getSkuServicesForm(Long id) { + return skuServicesFormMapper.selectById(id); + } + + @Override + public PageResult getSkuServicesFormPage(SkuServicesFormPageReqVO pageReqVO) { + return null; + } + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialPageReqVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialPageReqVO.java new file mode 100644 index 0000000..f9ab5d2 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialPageReqVO.java @@ -0,0 +1,33 @@ +package com.tashow.cloud.product.vo.skuservicematerial; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.tashow.cloud.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.tashow.cloud.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 服务物料详情分页 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class SkuServiceMaterialPageReqVO extends PageParam { + + @Schema(description = "关联的扩展服务ID", example = "21102") + private Long serviceId; + + @Schema(description = "名称", example = "王五") + private String name; + + @Schema(description = "描述") + private String describe; + + @Schema(description = "创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialRespVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialRespVO.java new file mode 100644 index 0000000..686d682 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialRespVO.java @@ -0,0 +1,39 @@ +package com.tashow.cloud.product.vo.skuservicematerial; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 服务物料详情 Response VO") +@Data +@ExcelIgnoreUnannotated +public class SkuServiceMaterialRespVO { + + @Schema(description = "服务物料的唯一标识符", requiredMode = Schema.RequiredMode.REQUIRED, example = "21371") + @ExcelProperty("服务物料的唯一标识符") + private Long id; + + @Schema(description = "关联的扩展服务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21102") + @ExcelProperty("关联的扩展服务ID") + private Long serviceId; + + @Schema(description = "名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @ExcelProperty("名称") + private String name; + + @Schema(description = "描述") + @ExcelProperty("描述") + private String describe; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + @ExcelProperty("最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialSaveReqVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialSaveReqVO.java new file mode 100644 index 0000000..e359a44 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicematerial/SkuServiceMaterialSaveReqVO.java @@ -0,0 +1,34 @@ +package com.tashow.cloud.product.vo.skuservicematerial; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 服务物料详情新增/修改 Request VO") +@Data +public class SkuServiceMaterialSaveReqVO { + + @Schema(description = "服务物料的唯一标识符", requiredMode = Schema.RequiredMode.REQUIRED, example = "21371") + private Long id; + + @Schema(description = "关联的扩展服务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21102") + @NotNull(message = "关联的扩展服务ID不能为空") + private Long serviceId; + + @Schema(description = "名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @NotEmpty(message = "名称不能为空") + private String name; + + @Schema(description = "描述") + private String describe; + + @Schema(description = "创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormPageReqVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormPageReqVO.java new file mode 100644 index 0000000..5c74dd1 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormPageReqVO.java @@ -0,0 +1,36 @@ +package com.tashow.cloud.product.vo.skuservicesform; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.tashow.cloud.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.tashow.cloud.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 商品SKU扩展服务表单分页 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class SkuServicesFormPageReqVO extends PageParam { + + @Schema(description = "表单名称", example = "赵六") + private String name; + + @Schema(description = "关联的商品SKU ID", example = "20020") + private Long skuId; + + @Schema(description = "服务名称", example = "芋艿") + private String serviceName; + + @Schema(description = "是否启用该服务") + private Boolean isEnabled; + + @Schema(description = "创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormRespVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormRespVO.java new file mode 100644 index 0000000..4eaf73b --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormRespVO.java @@ -0,0 +1,43 @@ +package com.tashow.cloud.product.vo.skuservicesform; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 商品SKU扩展服务表单 Response VO") +@Data +@ExcelIgnoreUnannotated +public class SkuServicesFormRespVO { + + @Schema(description = "扩展服务的唯一标识符", requiredMode = Schema.RequiredMode.REQUIRED, example = "24347") + @ExcelProperty("扩展服务的唯一标识符") + private Long id; + + @Schema(description = "表单名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六") + @ExcelProperty("表单名称") + private String name; + + @Schema(description = "关联的商品SKU ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "20020") + @ExcelProperty("关联的商品SKU ID") + private Long skuId; + + @Schema(description = "服务名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") + @ExcelProperty("服务名称") + private String serviceName; + + @Schema(description = "是否启用该服务", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("是否启用该服务") + private Boolean isEnabled; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + @ExcelProperty("最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormSaveReqVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormSaveReqVO.java new file mode 100644 index 0000000..54217f3 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicesform/SkuServicesFormSaveReqVO.java @@ -0,0 +1,39 @@ +package com.tashow.cloud.product.vo.skuservicesform; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 商品SKU扩展服务表单新增/修改 Request VO") +@Data +public class SkuServicesFormSaveReqVO { + + @Schema(description = "扩展服务的唯一标识符", requiredMode = Schema.RequiredMode.REQUIRED, example = "24347") + private Long id; + + @Schema(description = "表单名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六") + @NotEmpty(message = "表单名称不能为空") + private String name; + + @Schema(description = "关联的商品SKU ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "20020") + @NotNull(message = "关联的商品SKU ID不能为空") + private Long skuId; + + @Schema(description = "服务名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") + @NotEmpty(message = "服务名称不能为空") + private String serviceName; + + @Schema(description = "是否启用该服务", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "是否启用该服务不能为空") + private Boolean isEnabled; + + @Schema(description = "创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportPageReqVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportPageReqVO.java new file mode 100644 index 0000000..bad96b1 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportPageReqVO.java @@ -0,0 +1,45 @@ +package com.tashow.cloud.product.vo.skuservicetransport; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.tashow.cloud.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.tashow.cloud.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 服务遗体运输分页 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class SkuServiceTransportPageReqVO extends PageParam { + + @Schema(description = "关联的扩展服务ID", example = "1035") + private Long serviceId; + + @Schema(description = "联系人") + private String contacts; + + @Schema(description = "详细地址") + private String address; + + @Schema(description = "省") + private String province; + + @Schema(description = "市") + private String city; + + @Schema(description = "区") + private String area; + + @Schema(description = "电话号码") + private String tel; + + @Schema(description = "创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportRespVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportRespVO.java new file mode 100644 index 0000000..62bd713 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportRespVO.java @@ -0,0 +1,55 @@ +package com.tashow.cloud.product.vo.skuservicetransport; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 服务遗体运输 Response VO") +@Data +@ExcelIgnoreUnannotated +public class SkuServiceTransportRespVO { + + @Schema(description = "服务遗体运输唯一标识符", requiredMode = Schema.RequiredMode.REQUIRED, example = "5277") + @ExcelProperty("服务遗体运输唯一标识符") + private Long id; + + @Schema(description = "关联的扩展服务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1035") + @ExcelProperty("关联的扩展服务ID") + private Long serviceId; + + @Schema(description = "联系人", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("联系人") + private String contacts; + + @Schema(description = "详细地址", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("详细地址") + private String address; + + @Schema(description = "省") + @ExcelProperty("省") + private String province; + + @Schema(description = "市") + @ExcelProperty("市") + private String city; + + @Schema(description = "区") + @ExcelProperty("区") + private String area; + + @Schema(description = "电话号码", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("电话号码") + private String tel; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + @ExcelProperty("最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportSaveReqVO.java b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportSaveReqVO.java new file mode 100644 index 0000000..31ae035 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/java/com/tashow/cloud/product/vo/skuservicetransport/SkuServiceTransportSaveReqVO.java @@ -0,0 +1,48 @@ +package com.tashow.cloud.product.vo.skuservicetransport; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 服务遗体运输新增/修改 Request VO") +@Data +public class SkuServiceTransportSaveReqVO { + + @Schema(description = "服务遗体运输唯一标识符", requiredMode = Schema.RequiredMode.REQUIRED, example = "5277") + private Long id; + + @Schema(description = "关联的扩展服务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1035") + @NotNull(message = "关联的扩展服务ID不能为空") + private Long serviceId; + + @Schema(description = "联系人", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "联系人不能为空") + private String contacts; + + @Schema(description = "详细地址", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "详细地址不能为空") + private String address; + + @Schema(description = "省") + private String province; + + @Schema(description = "市") + private String city; + + @Schema(description = "区") + private String area; + + @Schema(description = "电话号码", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "电话号码不能为空") + private String tel; + + @Schema(description = "创建时间") + private LocalDateTime createdAt; + + @Schema(description = "最后更新时间") + private LocalDateTime updatedAt; + +} \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServiceMaterialMapper.xml b/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServiceMaterialMapper.xml new file mode 100644 index 0000000..a2f79be --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServiceMaterialMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServiceTransportMapper.xml b/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServiceTransportMapper.xml new file mode 100644 index 0000000..bab926a --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServiceTransportMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServicesFormMapper.xml b/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServicesFormMapper.xml new file mode 100644 index 0000000..0137281 --- /dev/null +++ b/tashow-module/tashow-module-product/src/main/resources/mapper/product/SkuServicesFormMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file