懒羊羊
2023-08-30 1ac2bc1590406d9babec036e154d8d08f34a6aa1
提交 | 用户 | 时间
1ac2bc 1 package cn.stylefeng.guns.modular.zsx.bs.productBomChildInfo.service.impl;
2
3 import cn.stylefeng.guns.base.pojo.page.LayuiPageFactory;
4 import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
5 import cn.stylefeng.guns.modular.zsx.bs.productBomChildInfo.entity.ProductBomChildInfo;
6 import cn.stylefeng.guns.modular.zsx.bs.productBomChildInfo.mapper.ProductBomChildInfoMapper;
7 import cn.stylefeng.guns.modular.zsx.bs.productBomChildInfo.model.params.ProductBomChildInfoParam;
8 import cn.stylefeng.guns.modular.zsx.bs.productBomChildInfo.model.result.ProductBomChildInfoResult;
9 import  cn.stylefeng.guns.modular.zsx.bs.productBomChildInfo.service.ProductBomChildInfoService;
10 import cn.stylefeng.roses.core.util.ToolUtil;
11 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
12 import com.baomidou.mybatisplus.core.metadata.IPage;
13 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
14 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
15 import org.springframework.stereotype.Service;
16
17 import java.io.Serializable;
18 import java.util.List;
19
20 /**
21  * <p>
22  * 基础BOM 服务实现类
23  * </p>
24  *
25  * @author ruimin
26  * @since 2023-08-24
27  */
28 @Service
29 public class ProductBomChildInfoServiceImpl extends ServiceImpl<ProductBomChildInfoMapper, ProductBomChildInfo> implements ProductBomChildInfoService {
30
31     @Override
32     public void add(ProductBomChildInfoParam param){
33         ProductBomChildInfo entity = getEntity(param);
34         this.save(entity);
35     }
36
37     @Override
38     public void delete(ProductBomChildInfoParam param){
39         this.removeById(getKey(param));
40     }
41
42     @Override
43     public void update(ProductBomChildInfoParam param){
44         ProductBomChildInfo oldEntity = getOldEntity(param);
45         ProductBomChildInfo newEntity = getEntity(param);
46         ToolUtil.copyProperties(newEntity, oldEntity);
47         this.updateById(newEntity);
48     }
49
50     @Override
51     public ProductBomChildInfoResult findBySpec(ProductBomChildInfoParam param){
52         return null;
53     }
54
55     @Override
56     public List<ProductBomChildInfoResult> findListBySpec(ProductBomChildInfoParam param){
57         return null;
58     }
59
60     @Override
61     public LayuiPageInfo findPageBySpec(ProductBomChildInfoParam param){
62         Page pageContext = getPageContext();
63         IPage page = this.baseMapper.customPageList(pageContext, param);
64         return LayuiPageFactory.createPageInfo(page);
65     }
66
67     @Override
68     public void deleteBomChildByBomCode(String bomCode) {
69         this.baseMapper.delete(new QueryWrapper<ProductBomChildInfo>().eq("bom_code",bomCode));
70     }
71
72     private Serializable getKey(ProductBomChildInfoParam param){
73         return param.getId();
74     }
75
76     private Page getPageContext() {
77         return LayuiPageFactory.defaultPage();
78     }
79
80     private ProductBomChildInfo getOldEntity(ProductBomChildInfoParam param) {
81         return this.getById(getKey(param));
82     }
83
84     private ProductBomChildInfo getEntity(ProductBomChildInfoParam param) {
85         ProductBomChildInfo entity = new ProductBomChildInfo();
86         ToolUtil.copyProperties(param, entity);
87         return entity;
88     }
89
90 }