24282 1 жил өмнө
parent
commit
f0b9d2b591
19 өөрчлөгдсөн 398 нэмэгдсэн , 203 устгасан
  1. 24 23
      sd-business/src/main/java/com/sd/business/controller/sku/SkuController.java
  2. 0 52
      sd-business/src/main/java/com/sd/business/controller/sku/SkuSpecController.java
  3. 19 0
      sd-business/src/main/java/com/sd/business/controller/sku/SkuSpecLinkController.java
  4. 8 0
      sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuDto.java
  5. 19 0
      sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuSpecDto.java
  6. 17 0
      sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuSpecLinkDto.java
  7. 17 0
      sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuSpecLinkSelectDto.java
  8. 6 0
      sd-business/src/main/java/com/sd/business/entity/sku/po/Sku.java
  9. 53 0
      sd-business/src/main/java/com/sd/business/entity/sku/po/SkuSpecLink.java
  10. 17 0
      sd-business/src/main/java/com/sd/business/entity/sku/vo/SkuSpecLinkVo.java
  11. 16 0
      sd-business/src/main/java/com/sd/business/mapper/sku/SkuSpecLinkMapper.java
  12. 15 14
      sd-business/src/main/java/com/sd/business/service/sku/SkuService.java
  13. 17 0
      sd-business/src/main/java/com/sd/business/service/sku/SkuSpecLinkService.java
  14. 0 29
      sd-business/src/main/java/com/sd/business/service/sku/SkuSpecService.java
  15. 120 14
      sd-business/src/main/java/com/sd/business/service/sku/impl/SkuServiceImpl.java
  16. 21 0
      sd-business/src/main/java/com/sd/business/service/sku/impl/SkuSpecLinkServiceImpl.java
  17. 0 47
      sd-business/src/main/java/com/sd/business/service/sku/impl/SkuSpecServiceImpl.java
  18. 5 0
      sd-business/src/main/resources/mapper/sku/SkuSpecLinkMapper.xml
  19. 24 24
      sd-framework/src/main/java/com/sd/framework/util/sql/Sql.java

+ 24 - 23
sd-business/src/main/java/com/sd/business/controller/sku/SkuController.java

@@ -2,6 +2,7 @@ package com.sd.business.controller.sku;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.sd.business.entity.sku.dto.SkuDto;
 import com.sd.business.entity.sku.dto.SkuSelectDto;
 import com.sd.business.entity.sku.vo.SkuVo;
 import com.sd.business.service.sku.SkuService;
@@ -43,28 +44,28 @@ public class SkuController {
         return skuService.detail(dto.getId());
     }
 
-//    /**
-//     * sku新增
-//     */
-//    @PostMapping("/add")
-//    public void add(@RequestBody SkuDto dto) {
-//        skuService.add(dto);
-//    }
-//
-//    /**
-//     * sku编辑
-//     */
-//    @PostMapping("/edit")
-//    public void edit(@RequestBody SkuDto dto) {
-//        skuService.edit(dto);
-//    }
-//
-//    /**
-//     * sku删除
-//     */
-//    @PostMapping("/delete")
-//    public void delete(@RequestBody BaseSelectDto dto) {
-//        skuService.delete(dto.getId());
-//    }
+    /**
+     * sku新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody SkuDto dto) {
+        skuService.add(dto);
+    }
+
+    /**
+     * sku编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody SkuDto dto) {
+        skuService.edit(dto);
+    }
+
+    /**
+     * sku删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        skuService.delete(dto.getId());
+    }
 
 }

+ 0 - 52
sd-business/src/main/java/com/sd/business/controller/sku/SkuSpecController.java

@@ -1,14 +1,5 @@
 package com.sd.business.controller.sku;
 
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.common.core.domain.BaseSelectDto;
-import com.sd.business.entity.sku.dto.SkuSpecDto;
-import com.sd.business.entity.sku.dto.SkuSpecSelectDto;
-import com.sd.business.entity.sku.vo.SkuSpecVo;
-import com.sd.business.service.sku.SkuSpecService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -25,47 +16,4 @@ import org.springframework.web.bind.annotation.RestController;
 @RequestMapping("/skuSpec")
 public class SkuSpecController {
 
-    @Autowired
-    private SkuSpecService skuSpecService;
-
-    /**
-     * sku规格分页
-     */
-    @PostMapping("/page")
-    public Page<SkuSpecVo> page(@RequestBody SkuSpecSelectDto dto) {
-        return skuSpecService.getPage(dto);
-    }
-
-    /**
-     * sku规格明细
-     */
-    @PostMapping("/detail")
-    public SkuSpecVo detail(@RequestBody BaseSelectDto dto) {
-        return skuSpecService.detail(dto.getId());
-    }
-
-    /**
-     * sku规格新增
-     */
-    @PostMapping("/add")
-    public void add(@RequestBody SkuSpecDto dto) {
-        skuSpecService.add(dto);
-    }
-
-    /**
-     * sku规格编辑
-     */
-    @PostMapping("/edit")
-    public void edit(@RequestBody SkuSpecDto dto) {
-        skuSpecService.edit(dto);
-    }
-
-    /**
-     * sku规格删除
-     */
-    @PostMapping("/delete")
-    public void delete(@RequestBody BaseSelectDto dto) {
-        skuSpecService.delete(dto.getId());
-    }
-
 }

+ 19 - 0
sd-business/src/main/java/com/sd/business/controller/sku/SkuSpecLinkController.java

@@ -0,0 +1,19 @@
+package com.sd.business.controller.sku;
+
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * sku规格关联 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-12-04
+ */
+@RestController
+@RequestMapping("/skuSpecLink")
+public class SkuSpecLinkController {
+
+}

+ 8 - 0
sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuDto.java

@@ -4,6 +4,10 @@ import com.sd.business.entity.sku.po.Sku;
 import lombok.Getter;
 import lombok.Setter;
 
+import javax.validation.Valid;
+import javax.validation.constraints.NotEmpty;
+import java.util.List;
+
 /**
  * sku新增编辑入参实体
  *
@@ -14,4 +18,8 @@ import lombok.Setter;
 @Setter
 public class SkuDto extends Sku {
 
+    @Valid
+    @NotEmpty(message = "规格列表不能为空")
+    private List<SkuSpecDto> skuSpecList;
+
 }

+ 19 - 0
sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuSpecDto.java

@@ -1,9 +1,14 @@
 package com.sd.business.entity.sku.dto;
 
 import com.sd.business.entity.sku.po.SkuSpec;
+import com.sd.business.entity.sku.po.SkuSpecLink;
 import lombok.Getter;
 import lombok.Setter;
 
+import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
 /**
  * sku规格新增编辑入参实体
  *
@@ -14,4 +19,18 @@ import lombok.Setter;
 @Setter
 public class SkuSpecDto extends SkuSpec {
 
+    /**
+     * 包材
+     */
+    @NotNull(message = "包材列表不能为空")
+    @Valid
+    private List<SkuSpecLink> packagingMaterialList;
+
+    /**
+     * 快递
+     */
+    @NotNull(message = "快递列表不能为空")
+    @Valid
+    private List<SkuSpecLink> expressPackingList;
+
 }

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuSpecLinkDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.sku.dto;
+
+import com.sd.business.entity.sku.po.SkuSpecLink;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * sku规格关联新增编辑入参实体
+ *
+ * @author
+ * @since 2023-12-04
+ */
+@Getter
+@Setter
+public class SkuSpecLinkDto extends SkuSpecLink {
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuSpecLinkSelectDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.sku.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * sku规格关联列表查询入参实体
+ *
+ * @author
+ * @since 2023-12-04
+ */
+@Getter
+@Setter
+public class SkuSpecLinkSelectDto extends BaseSelectDto {
+
+}

+ 6 - 0
sd-business/src/main/java/com/sd/business/entity/sku/po/Sku.java

@@ -5,6 +5,9 @@ import com.ruoyi.common.core.domain.BasePo;
 import lombok.Getter;
 import lombok.Setter;
 
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
 /**
  * <p>
  * sku
@@ -31,6 +34,7 @@ public class Sku extends BasePo {
     /**
      * 类型 0非集团SKU 1集团SKU
      */
+    @NotNull(message = "类型不能为空")
     private Integer type;
 
     /**
@@ -51,11 +55,13 @@ public class Sku extends BasePo {
     /**
      * 群组品号
      */
+    @NotBlank(message = "群组品号不能为空")
     private String code;
 
     /**
      * 名称
      */
+    @NotBlank(message = "名称不能为空")
     private String name;
 
     /**

+ 53 - 0
sd-business/src/main/java/com/sd/business/entity/sku/po/SkuSpecLink.java

@@ -0,0 +1,53 @@
+package com.sd.business.entity.sku.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.DecimalMin;
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+
+/**
+ * <p>
+ * sku规格关联
+ * </p>
+ *
+ * @author
+ * @since 2023-12-04
+ */
+@Getter
+@Setter
+@TableName("sku_spec_link")
+public class SkuSpecLink extends BasePo {
+
+    /**
+     * sku id
+     */
+    private Long skuId;
+
+    /**
+     * sku规格id
+     */
+    private Long skuSpecId;
+
+    /**
+     * bom规格id
+     */
+    @NotNull(message = "bom规格id不能为空")
+    private Long bomSpecId;
+
+    /**
+     * 关联类型 1包材 2快递包装
+     */
+    private Integer type;
+
+    /**
+     * 数量
+     */
+    @NotNull(message = "数量不能为空")
+    @DecimalMin(value = "0.01", message = "必须大于0")
+    private BigDecimal quantity;
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/sku/vo/SkuSpecLinkVo.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.sku.vo;
+
+import com.sd.business.entity.sku.po.SkuSpecLink;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * sku规格关联列表查询返回值实体
+ *
+ * @author
+ * @since 2023-12-04
+ */
+@Getter
+@Setter
+public class SkuSpecLinkVo extends SkuSpecLink {
+
+}

+ 16 - 0
sd-business/src/main/java/com/sd/business/mapper/sku/SkuSpecLinkMapper.java

@@ -0,0 +1,16 @@
+package com.sd.business.mapper.sku;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sd.business.entity.sku.po.SkuSpecLink;
+
+/**
+ * <p>
+ * sku规格关联 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-12-04
+ */
+public interface SkuSpecLinkMapper extends BaseMapper<SkuSpecLink> {
+
+}

+ 15 - 14
sd-business/src/main/java/com/sd/business/service/sku/SkuService.java

@@ -2,6 +2,7 @@ package com.sd.business.service.sku;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.service.BaseService;
+import com.sd.business.entity.sku.dto.SkuDto;
 import com.sd.business.entity.sku.dto.SkuSelectDto;
 import com.sd.business.entity.sku.po.Sku;
 import com.sd.business.entity.sku.vo.SkuVo;
@@ -27,19 +28,19 @@ public interface SkuService extends BaseService<Sku> {
      */
     SkuVo detail(Long id);
 
-//    /**
-//     * sku新增
-//     */
-//    void add(SkuDto dto);
-//
-//    /**
-//     * sku编辑
-//     */
-//    void edit(SkuDto dto);
-//
-//    /**
-//     * sku删除
-//     */
-//    void delete(Long id);
+    /**
+     * sku新增
+     */
+    void add(SkuDto dto);
+
+    /**
+     * sku编辑
+     */
+    void edit(SkuDto dto);
+
+    /**
+     * sku删除
+     */
+    void delete(Long id);
 
 }

+ 17 - 0
sd-business/src/main/java/com/sd/business/service/sku/SkuSpecLinkService.java

@@ -0,0 +1,17 @@
+package com.sd.business.service.sku;
+
+import com.ruoyi.common.core.service.BaseService;
+import com.sd.business.entity.sku.po.SkuSpecLink;
+
+
+/**
+ * <p>
+ * sku规格关联 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-12-04
+ */
+public interface SkuSpecLinkService extends BaseService<SkuSpecLink> {
+
+}

+ 0 - 29
sd-business/src/main/java/com/sd/business/service/sku/SkuSpecService.java

@@ -1,11 +1,7 @@
 package com.sd.business.service.sku;
 
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.service.BaseService;
-import com.sd.business.entity.sku.dto.SkuSpecDto;
-import com.sd.business.entity.sku.dto.SkuSpecSelectDto;
 import com.sd.business.entity.sku.po.SkuSpec;
-import com.sd.business.entity.sku.vo.SkuSpecVo;
 
 
 /**
@@ -18,29 +14,4 @@ import com.sd.business.entity.sku.vo.SkuSpecVo;
  */
 public interface SkuSpecService extends BaseService<SkuSpec> {
 
-    /**
-     * sku规格分页
-     */
-    Page<SkuSpecVo> getPage(SkuSpecSelectDto dto);
-
-    /**
-     * sku规格明细
-     */
-    SkuSpecVo detail(Long id);
-
-    /**
-     * sku规格新增
-     */
-    void add(SkuSpecDto dto);
-
-    /**
-     * sku规格编辑
-     */
-    void edit(SkuSpecDto dto);
-
-    /**
-     * sku规格删除
-     */
-    void delete(Long id);
-
 }

+ 120 - 14
sd-business/src/main/java/com/sd/business/service/sku/impl/SkuServiceImpl.java

@@ -1,27 +1,34 @@
 package com.sd.business.service.sku.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.domain.BaseIdPo;
 import com.sd.business.entity.artwork.po.ArtworkLibrary;
+import com.sd.business.entity.sku.dto.SkuDto;
 import com.sd.business.entity.sku.dto.SkuSelectDto;
+import com.sd.business.entity.sku.dto.SkuSpecDto;
 import com.sd.business.entity.sku.po.Sku;
 import com.sd.business.entity.sku.po.SkuSpec;
+import com.sd.business.entity.sku.po.SkuSpecLink;
 import com.sd.business.entity.sku.vo.SkuSpecVo;
 import com.sd.business.entity.sku.vo.SkuVo;
 import com.sd.business.mapper.sku.SkuMapper;
 import com.sd.business.service.sku.SkuService;
+import com.sd.business.service.sku.SkuSpecLinkService;
 import com.sd.business.service.sku.SkuSpecService;
 import com.sd.framework.util.Assert;
 import com.sd.framework.util.sql.Sql;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 
 /**
@@ -38,6 +45,9 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements SkuSe
     @Autowired
     private SkuSpecService skuSpecService;
 
+    @Autowired
+    private SkuSpecLinkService skuSpecLinkService;
+
     @Override
     public Page<SkuVo> getPage(SkuSelectDto dto) {
 
@@ -102,22 +112,118 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements SkuSe
                 .list();
         vo.setSkuSpecList(skuSpecList);
 
+        // 复制包材和快递包材
+        //Sql.create(SkuSpecLinkVo.class)
+        //        .selectAll(SkuSpecLink.class)
+        //        .selectAs()
+
         return vo;
     }
 
-//    @Override
-//    public void add(SkuDto dto) {
-//        save(dto);
-//    }
-//
-//    @Override
-//    public void edit(SkuDto dto) {
-//        updateById(dto);
-//    }
-//
-//    @Override
-//    public void delete(Long id) {
-//        removeById(id);
-//    }
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void add(SkuDto dto) {
+
+        // 保存sku
+        dto.setSource(1);
+        save(dto);
+
+        // 保存sku规格
+        List<SkuSpec> skuSpecList = dto.getSkuSpecList().stream()
+                .peek(item -> item.setSkuId(dto.getId()))
+                .map(item -> (SkuSpec) item)
+                .collect(Collectors.toList());
+        skuSpecService.saveBatch(skuSpecList);
+
+        // 保存sku规格关联快递和包材
+        List<SkuSpecLink> skuSpecLinkList = createSkuSpecLink(dto.getSkuSpecList());
+        skuSpecLinkService.saveBatch(skuSpecLinkList);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void edit(SkuDto dto) {
+        Long skuId = dto.getId();
+        List<SkuSpecDto> skuSpecDtoList = dto.getSkuSpecList();
+
+        // 编辑sku
+        updateById(dto);
+
+        // 编辑sku规格
+        editSkuSpecList(skuId, skuSpecDtoList);
+
+        // 编辑sku规格关联快递和包材
+        editSkuSpecLinkList(skuId, skuSpecDtoList);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void delete(Long id) {
+        removeById(id);
+        skuSpecService.remove(q -> q.eq(SkuSpec::getSkuId, id));
+        skuSpecLinkService.remove(q -> q.eq(SkuSpecLink::getSkuId, id));
+    }
+
+    /**
+     * 创建sku规格关联快递和包材
+     */
+    private List<SkuSpecLink> createSkuSpecLink(List<SkuSpecDto> skuSpecDtoList) {
+        return skuSpecDtoList.stream().flatMap(item -> {
+
+            List<SkuSpecLink> packagingMaterialList = item.getPackagingMaterialList();
+            for (SkuSpecLink skuSpecLink : packagingMaterialList) {
+                skuSpecLink.setSkuId(item.getSkuId());
+                skuSpecLink.setSkuSpecId(item.getId());
+                skuSpecLink.setType(1);
+            }
+
+            List<SkuSpecLink> expressPackingList = item.getExpressPackingList();
+            for (SkuSpecLink skuSpecLink : expressPackingList) {
+                skuSpecLink.setSkuId(item.getSkuId());
+                skuSpecLink.setSkuSpecId(item.getId());
+                skuSpecLink.setType(2);
+            }
+
+            return Stream.concat(packagingMaterialList.stream(), expressPackingList.stream());
+        }).collect(Collectors.toList());
+    }
+
+    /**
+     * 编辑sku规格
+     */
+    private void editSkuSpecList(Long skuId, List<SkuSpecDto> skuSpecDtoList) {
+        List<Long> skuSpecIdList = skuSpecDtoList.stream().map(SkuSpec::getId)
+                .filter(ObjectUtil::isNotNull).collect(Collectors.toList());
+
+        skuSpecService.remove(q -> q
+                .eq(SkuSpec::getSkuId, skuId)
+                .notIn(ObjectUtil.isNotEmpty(skuSpecIdList), BaseIdPo::getId, skuSpecIdList));
+
+        List<SkuSpec> skuSpecList = skuSpecDtoList.stream()
+                .peek(item -> item.setSkuId(skuId))
+                .map(item -> (SkuSpec) item)
+                .collect(Collectors.toList());
+        skuSpecService.saveOrUpdateBatch(skuSpecList);
+    }
+
+    /**
+     * 编辑sku规格关联快递和包材
+     */
+    private void editSkuSpecLinkList(Long skuId, List<SkuSpecDto> skuSpecDtoList) {
+        List<Long> skuSpecLinkIdList = skuSpecDtoList.stream()
+                .flatMap(item -> Stream.concat(
+                        item.getPackagingMaterialList().stream(),
+                        item.getExpressPackingList().stream()))
+                .map(BaseIdPo::getId)
+                .filter(ObjectUtil::isNotNull)
+                .collect(Collectors.toList());
+
+        skuSpecLinkService.remove(q -> q
+                .eq(SkuSpecLink::getSkuId, skuId)
+                .notIn(ObjectUtil.isNotEmpty(skuSpecLinkIdList), BaseIdPo::getId, skuSpecLinkIdList));
+
+        List<SkuSpecLink> skuSpecLinkList = createSkuSpecLink(skuSpecDtoList);
+        skuSpecLinkService.saveOrUpdateBatch(skuSpecLinkList);
+    }
 
 }

+ 21 - 0
sd-business/src/main/java/com/sd/business/service/sku/impl/SkuSpecLinkServiceImpl.java

@@ -0,0 +1,21 @@
+package com.sd.business.service.sku.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sd.business.entity.sku.po.SkuSpecLink;
+import com.sd.business.mapper.sku.SkuSpecLinkMapper;
+import com.sd.business.service.sku.SkuSpecLinkService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * sku规格关联 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-12-04
+ */
+@Service
+public class SkuSpecLinkServiceImpl extends ServiceImpl<SkuSpecLinkMapper, SkuSpecLink> implements SkuSpecLinkService {
+
+}

+ 0 - 47
sd-business/src/main/java/com/sd/business/service/sku/impl/SkuSpecServiceImpl.java

@@ -1,15 +1,9 @@
 package com.sd.business.service.sku.impl;
 
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.sd.business.entity.sku.dto.SkuSpecDto;
-import com.sd.business.entity.sku.dto.SkuSpecSelectDto;
 import com.sd.business.entity.sku.po.SkuSpec;
-import com.sd.business.entity.sku.vo.SkuSpecVo;
 import com.sd.business.mapper.sku.SkuSpecMapper;
 import com.sd.business.service.sku.SkuSpecService;
-import com.sd.framework.util.Assert;
-import com.sd.framework.util.sql.Sql;
 import org.springframework.stereotype.Service;
 
 
@@ -24,45 +18,4 @@ import org.springframework.stereotype.Service;
 @Service
 public class SkuSpecServiceImpl extends ServiceImpl<SkuSpecMapper, SkuSpec> implements SkuSpecService {
 
-    @Override
-    public Page<SkuSpecVo> getPage(SkuSpecSelectDto dto) {
-
-        Page<SkuSpecVo> page = Sql.create(SkuSpecVo.class)
-                .selectAll(SkuSpec.class)
-                .from(SkuSpec.class)
-                .orderByDesc(SkuSpec::getId)
-                .page(dto);
-
-        return page;
-    }
-
-    @Override
-    public SkuSpecVo detail(Long id) {
-
-        SkuSpecVo vo = Sql.create(SkuSpecVo.class)
-                .selectAll(SkuSpec.class)
-                .from(SkuSpec.class)
-                .eq(SkuSpec::getId, id)
-                .one();
-
-        Assert.notNull(vo, "未知数据");
-
-        return vo;
-    }
-
-    @Override
-    public void add(SkuSpecDto dto) {
-        save(dto);
-    }
-
-    @Override
-    public void edit(SkuSpecDto dto) {
-        updateById(dto);
-    }
-
-    @Override
-    public void delete(Long id) {
-        removeById(id);
-    }
-
 }

+ 5 - 0
sd-business/src/main/resources/mapper/sku/SkuSpecLinkMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sd.business.mapper.sku.SkuSpecLinkMapper">
+
+</mapper>

+ 24 - 24
sd-framework/src/main/java/com/sd/framework/util/sql/Sql.java

@@ -38,6 +38,30 @@ public class Sql<T> {
         return new Select<>(new Sql<>(cls));
     }
 
+    /**
+     * 获取表名
+     */
+    protected static String getTableName(Class<?> cls) {
+        return tableNameMap.computeIfAbsent(cls, itemCls -> {
+            Annotation[] annotations = itemCls.getAnnotations();
+            TableName tableName = null;
+            for (Annotation annotation : annotations) {
+                if (annotation instanceof TableName) {
+                    tableName = (TableName) annotation;
+                    break;
+                }
+            }
+            String tableNameStr = null;
+            if (tableName != null) {
+                tableNameStr = tableName.value();
+            }
+            if (StrUtil.isBlank(tableNameStr)) {
+                tableNameStr = StrUtil.toUnderlineCase(itemCls.getSimpleName());
+            }
+            return tableNameStr;
+        });
+    }
+
     protected String getTableAlias(Class<?> cls) {
         return tableAliasMap.computeIfAbsent(cls, itemCls -> "t" + (tableAliasMap.size() + 1));
     }
@@ -66,28 +90,4 @@ public class Sql<T> {
                 CollectionUtil.join(fromList, StringPool.EMPTY);
     }
 
-    /**
-     * 获取表名
-     */
-    protected static String getTableName(Class<?> cls) {
-        return tableNameMap.computeIfAbsent(cls, itemCls -> {
-            Annotation[] annotations = itemCls.getAnnotations();
-            TableName tableName = null;
-            for (Annotation annotation : annotations) {
-                if (annotation instanceof TableName) {
-                    tableName = (TableName) annotation;
-                    break;
-                }
-            }
-            String tableNameStr = null;
-            if (tableName != null) {
-                tableNameStr = tableName.value();
-            }
-            if (StrUtil.isBlank(tableNameStr)) {
-                tableNameStr = StrUtil.toUnderlineCase(itemCls.getSimpleName());
-            }
-            return tableNameStr;
-        });
-    }
-
 }