k94314517
2023-09-11 bbde15ef91014818c747eda0a5fc7303426b4d1f
基础字段
已添加1个文件
已修改6个文件
409 ■■■■■ 文件已修改
server/company/src/main/java/com/doumee/api/business/CategoryController.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/company/src/main/java/com/doumee/api/business/GoodsController.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/dao/business/model/dto/BatchDisableDTO.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/CategoryService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/GoodsService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/company/src/main/java/com/doumee/api/business/CategoryController.java
@@ -38,6 +38,15 @@
        return ApiResponse.success(categoryService.create(category));
    }
    @PreventRepeat
    @ApiOperation("企业新建分类")
    @PostMapping("/companyCreate")
    @RequiresPermissions("business:category:create")
    public ApiResponse companyCreate(@RequestBody Category category) {
        return ApiResponse.success(categoryService.companyCreate(category));
    }
    @ApiOperation("根据ID删除")
    @GetMapping("/delete/{id}")
    @RequiresPermissions("business:category:delete")
@@ -64,6 +73,14 @@
    @RequiresPermissions("business:category:update")
    public ApiResponse updateById(@RequestBody Category category) {
        categoryService.updateById(category);
        return ApiResponse.success(null);
    }
    @ApiOperation("企业根据ID修改")
    @PostMapping("/companyUpdateById")
    @RequiresPermissions("business:category:update")
    public ApiResponse companyUpdateById(@RequestBody Category category) {
        categoryService.companyUpdateById(category);
        return ApiResponse.success(null);
    }
@@ -108,4 +125,11 @@
        return ApiResponse.success(categoryService.findListForGoods(goodsId));
    }
    @ApiOperation("企业选择分类列表 - H5")
    @PostMapping("/companyFindList")
    public ApiResponse<List<Category>> companyFindList (@RequestBody Category category) {
        return ApiResponse.success(categoryService.companyFindList(category));
    }
}
server/company/src/main/java/com/doumee/api/business/GoodsController.java
@@ -6,6 +6,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.Goods;
import com.doumee.dao.business.model.dto.BatchDisableDTO;
import com.doumee.dao.business.model.dto.GoodCreatePlatRequest;
import com.doumee.dao.business.model.dto.GoodsRequest;
import com.doumee.service.business.GoodsService;
@@ -41,6 +42,17 @@
    public ApiResponse create(@RequestBody Goods goods) {
        return ApiResponse.success(goodsService.create(goods));
    }
    @PreventRepeat
    @ApiOperation("企业新建商品")
    @PostMapping("/companyCreate")
    @RequiresPermissions("business:goods:create")
    public ApiResponse companyCreate(@RequestBody Goods goods) {
        return ApiResponse.success(goodsService.companyCreate(goods));
    }
    @PreventRepeat
    @ApiOperation("从平台选择商品")
    @PostMapping("/createPlat")
@@ -75,6 +87,14 @@
    @RequiresPermissions("business:goods:update")
    public ApiResponse updateById(@RequestBody Goods goods) {
        goodsService.updateById(goods);
        return ApiResponse.success(null);
    }
    @ApiOperation("企业根据ID修改")
    @PostMapping("/companyUpdateById")
    @RequiresPermissions("business:goods:update")
    public ApiResponse companyUpdateById(@RequestBody Goods goods) {
        goodsService.companyUpdateById(goods);
        return ApiResponse.success(null);
    }
@@ -118,6 +138,13 @@
        return ApiResponse.success(null);
    }
    @ApiOperation("批量修改状态")
    @PostMapping("/batchUpdateDisableById")
    @RequiresPermissions("business:category:update")
    public ApiResponse<String> batchUpdateDisableById(@RequestBody BatchDisableDTO batchDisableDTO) {
        return ApiResponse.success(goodsService.batchUpdateDisableById(batchDisableDTO));
    }
    @ApiOperation("列表 - H5")
    @PostMapping("/list")
server/service/src/main/java/com/doumee/dao/business/model/dto/BatchDisableDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
package com.doumee.dao.business.model.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2023/9/11 10:27
 */
@Data
public class BatchDisableDTO {
    @ApiModelProperty(value = "操作主键多个以,分割")
    private String ids;
    @ApiModelProperty(value = "操作分类:0=上架;1=下架")
    private Integer status;
}
server/service/src/main/java/com/doumee/service/business/CategoryService.java
@@ -20,6 +20,9 @@
     */
    Integer create(Category category);
    Integer companyCreate(Category category);
    /**
     * ä¸»é”®åˆ é™¤
     *
@@ -50,6 +53,7 @@
     */
    void updateById(Category category);
    void companyUpdateById(Category category);
    /**
     * æ‰¹é‡ä¸»é”®æ›´æ–°
     *
@@ -81,6 +85,7 @@
     */
    List<Category> findList(Category category);
    List<Category> companyFindList(Category category);
    /**
     * æŸ¥è¯¢ç±»åˆ«
     * @param goodsId
server/service/src/main/java/com/doumee/service/business/GoodsService.java
@@ -4,6 +4,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.Goods;
import com.doumee.dao.business.model.dto.BatchDisableDTO;
import com.doumee.dao.business.model.dto.GoodCreatePlatRequest;
import com.doumee.dao.business.model.dto.GoodsRequest;
import org.springframework.web.multipart.MultipartFile;
@@ -26,6 +27,8 @@
     * @return Integer
     */
    Integer create(Goods goods);
    Integer companyCreate(Goods goods);
    /**
     * ä¸»é”®åˆ é™¤
@@ -55,6 +58,7 @@
     */
    void updateById(Goods goods);
    void companyUpdateById(Goods goods);
    /**
     * æ‰¹é‡ä¸»é”®æ›´æ–°
     *
@@ -64,6 +68,8 @@
    void updateDisableById(Goods goods);
    String batchUpdateDisableById(BatchDisableDTO batchDisableDTO);
    /**
     * ä¸»é”®æŸ¥è¯¢
     *
server/service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
@@ -116,10 +116,55 @@
                cateBudgetMapper.insert(cateBudget);
            }
        }
        return category.getId();
    }
    @Override
    public Integer companyCreate(Category category) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(categoryMapper.selectCount(new QueryWrapper<Category>().eq("ISDELETED",Constants.ZERO)
                .eq("COMPANY_ID",user.getCompanyId()).eq("name",category.getName()))>0){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+category.getName()+"】已存在");
        };
        category.setStatus(Constants.ZERO);
        category.setCreateDate(new Date());
        category.setCreator(user.getId());
        category.setIsdeleted(Constants.ZERO);
        //处理拼音问题
        category.setPinyin(PinYinUtil.getFullSpell(category.getName()));
        category.setShortPinyin(PinYinUtil.getFirstSpell(category.getName()));
        categoryMapper.insert(category);
        List<CateParam> paramList = category.getParamList();
        if(!Objects.isNull(paramList)&&paramList.size()> Constants.ZERO){
            for (int i = 0; i < paramList.size(); i++) {
                CateParam cateParam = paramList.get(i);
                cateParam.setCreator(user.getId());
                cateParam.setCreateDate(new Date());
                cateParam.setIsdeleted(Constants.ZERO);
                cateParam.setSortnum(i+Constants.ONE);
                cateParam.setStatus(Constants.ZERO);
                cateParam.setCategoryId(category.getId());
                cateParamMapper.insert(cateParam);
            }
        }
        List<CateBudget>  budgetList = category.getBudgetList();
        if(!Objects.isNull(budgetList)&&budgetList.size()> Constants.ZERO){
            for (int i = 0; i < budgetList.size(); i++) {
                CateBudget cateBudget = budgetList.get(i);
                cateBudget.setCreator(user.getId());
                cateBudget.setCreateDate(new Date());
                cateBudget.setIsdeleted(Constants.ZERO);
                cateBudget.setSortnum(i+Constants.ONE);
                cateBudget.setStatus(Constants.ZERO);
                cateBudget.setCategoryId(category.getId());
                cateBudgetMapper.insert(cateBudget);
            }
        }
        return category.getId();
    }
    @Override
    public void deleteById(Integer id) {
@@ -209,6 +254,52 @@
//            }
//        }
        cateBudgetMapper.delete(new QueryWrapper<CateBudget>().eq("CATEGORY_ID",category.getId()));
        List<CateBudget>  budgetList = category.getBudgetList();
        if(!Objects.isNull(budgetList)&&budgetList.size()> Constants.ZERO){
            for (int i = 0; i < budgetList.size(); i++) {
                CateBudget cateBudget = budgetList.get(i);
                cateBudget.setCreator(user.getId());
                cateBudget.setCreateDate(new Date());
                cateBudget.setIsdeleted(Constants.ZERO);
                cateBudget.setSortnum(i+Constants.ONE);
                cateBudget.setStatus(Constants.ZERO);
                cateBudget.setCategoryId(category.getId());
                cateBudgetMapper.insert(cateBudget);
            }
        }
    }
    @Override
    public void companyUpdateById(Category category) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(categoryMapper.selectCount(new QueryWrapper<Category>().eq("ISDELETED",Constants.ZERO).ne("id",category.getId()).eq("name",category.getName()))>0){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+category.getName()+"】已存在");
        };
        category.setStatus(Constants.ZERO);
        category.setEditDate(new Date());
        category.setEditor(user.getId());
        category.setIsdeleted(Constants.ZERO);
        //处理拼音问题
        category.setPinyin(PinYinUtil.getFullSpell(category.getName()));
        category.setShortPinyin(PinYinUtil.getFirstSpell(category.getName()));
        categoryMapper.updateById(category);
        //处理属性配置
        cateParamMapper.delete(new QueryWrapper<CateParam>().eq("CATEGORY_ID",category.getId()));
        List<CateParam> paramList = category.getParamList();
        if(!Objects.isNull(paramList)&&paramList.size()> Constants.ZERO){
            for (int i = 0; i < paramList.size(); i++) {
                CateParam cateParam = paramList.get(i);
                cateParam.setCreator(user.getId());
                cateParam.setCreateDate(new Date());
                cateParam.setIsdeleted(Constants.ZERO);
                cateParam.setSortnum(i+Constants.ONE);
                cateParam.setStatus(Constants.ZERO);
                cateParam.setCategoryId(category.getId());
                cateParamMapper.insert(cateParam);
            }
        }
        cateBudgetMapper.delete(new QueryWrapper<CateBudget>().eq("CATEGORY_ID",category.getId()));
        List<CateBudget>  budgetList = category.getBudgetList();
        if(!Objects.isNull(budgetList)&&budgetList.size()> Constants.ZERO){
@@ -385,4 +476,29 @@
        QueryWrapper<Category> wrapper = new QueryWrapper<>(category);
        return categoryMapper.selectCount(wrapper);
    }
    /**********************************************************************************/
    @Override
    public List<Category> companyFindList(Category category) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        QueryWrapper<Category> wrapper = new QueryWrapper<>(category)
                .eq("STATUS",Constants.ZERO)
                .eq("COMPANY_ID",user.getCompanyId())
                .eq("ISDELETED",Constants.ZERO)
                .orderByAsc(" SORTNUM ");
        List<Category> list = categoryMapper.selectList(wrapper);
        String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode()
                + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode();
        for (Category c:list) {
            c.setPrefixUrl(prefixUrl);
            c.setBudgetList(cateBudgetMapper.selectList(new QueryWrapper<CateBudget>().eq("STATUS",Constants.ZERO).eq("CATEGORY_ID",c.getId()).orderByAsc(" SORTNUM ")));
            c.setParamList(cateParamMapper.selectList(new QueryWrapper<CateParam>().eq("STATUS",Constants.ZERO).eq("CATEGORY_ID",c.getId()).orderByAsc("SORTNUM")));
        }
        return list;
    }
}
server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
@@ -17,6 +17,7 @@
import com.doumee.dao.business.*;
import com.doumee.dao.business.join.GoodsJoinMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.model.dto.BatchDisableDTO;
import com.doumee.dao.business.model.dto.GoodCreatePlatRequest;
import com.doumee.dao.business.model.dto.GoodsRequest;
import com.doumee.service.business.GoodsService;
@@ -41,10 +42,7 @@
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.*;
/**
 * å•†å“ä¿¡æ¯è¡¨Service实现
@@ -74,6 +72,12 @@
    @Autowired
    private GoodsJoinMapper goodsJoinMapper;
    @Autowired
    private CateParamSelectMapper cateParamSelectMapper;
    @Autowired
    private BaseGoodsMapper baseGoodsMapper;
    @Override
@@ -171,13 +175,77 @@
                goodsParam.setCreator(user.getId());
                goodsParam.setCreateDate(new Date());
                goodsParam.setIsdeleted(Constants.ZERO);
                goodsParam.setSortnum(i+Constants.ONE);
                goodsParam.setStatus(Constants.ZERO);
                goodsParam.setSortnum(i+Constants.ONE);
                goodsParam.setGoodsId(goods.getId());
                goodsParamMapper.insert(goodsParam);
            }
        }
        return goods.getId();
    }
    @Override
    public Integer companyCreate(Goods goods) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(user.getType()==1){
            goods.setCompanyId(user.getCompanyId());
        }else{
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"当前登录用户类别错误,无法进行该操作");
        }
        if(goodsMapper.selectCount(new QueryWrapper<Goods>().eq("COMPANY_ID",user.getCompanyId()).eq("ISDELETED",Constants.ZERO).eq("name",goods.getName()))>0){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+goods.getName()+"】已存在");
        }
        goods.setStatus(Constants.ZERO);
        goods.setCreateDate(new Date());
        goods.setCreator(user.getId());
        goods.setIsdeleted(Constants.ZERO);
        //处理拼音问题
        goods.setPinyin(PinYinUtil.getFullSpell(goods.getName()));
        goods.setShortPinyin(PinYinUtil.getFirstSpell(goods.getName()));
        goodsMapper.insert(goods);
        List<Multifile> multifileList = goods.getMultifileList();
        if(!Objects.isNull(multifileList)&&multifileList.size()>Constants.ZERO){
            for (int i = 0; i < multifileList.size(); i++) {
                Multifile multifile = multifileList.get(i);
                multifile.setCreator(user.getId());
                multifile.setCreateDate(new Date());
                multifile.setIsdeleted(Constants.ZERO);
                multifile.setSortnum(i+Constants.ONE);
                multifile.setObjId(goods.getId());
                multifile.setType(Constants.ZERO);
                multifile.setObjType(Constants.ZERO);
                multifileMapper.insert(multifile);
            }
        }
        List<GoodsParam> goodsParamList = goods.getGoodsParamList();
        if(!Objects.isNull(goodsParamList)&&goodsParamList.size()>0){
            for (int i = 0; i < goodsParamList.size(); i++) {
                GoodsParam goodsParam = goodsParamList.get(i);
                goodsParam.setCreator(user.getId());
                goodsParam.setCreateDate(new Date());
                goodsParam.setIsdeleted(Constants.ZERO);
                goodsParam.setStatus(Constants.ZERO);
                goodsParam.setSortnum(i+Constants.ONE);
                goodsParam.setGoodsId(goods.getId());
                goodsParamMapper.insert(goodsParam);
                //存储 cate_param_select æŸ¥è¯¢æ˜¯å¦å·²å­˜åœ¨
                if(cateParamSelectMapper.selectCount(new QueryWrapper<CateParamSelect>()
                        .eq("PARAM_ID",goodsParam.getPramaId()).eq("NAME",goodsParam.getName()))<=Constants.ZERO){
                    CateParamSelect cateParamSelect = new CateParamSelect();
                    cateParamSelect.setCreator(user.getId());
                    cateParamSelect.setCreateDate(new Date());
                    cateParamSelect.setName(goodsParam.getVal());
                    cateParamSelect.setIsdeleted(Constants.ZERO);
                    cateParamSelect.setStatus(Constants.ZERO);
                    cateParamSelect.setParamId(goodsParam.getPramaId());
                    cateParamSelect.setCategoryId(goods.getCategoryId());
                    cateParamSelect.setStatus(Constants.ZERO);
                    cateParamSelectMapper.insert(cateParamSelect);
                };
            }
        }
        return goods.getId();
    }
@@ -251,6 +319,73 @@
        }
    }
    @Override
    public void companyUpdateById(Goods goods) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(user.getType()==1){
            goods.setCompanyId(user.getCompanyId());
        }else{
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"当前登录用户类别错误,无法进行该操作");
        }
        if(goodsMapper.selectCount(new QueryWrapper<Goods>().eq("COMPANY_ID",user.getCompanyId()).eq("ISDELETED",Constants.ZERO).ne("id",goods.getId()).eq("name",goods.getName()))>0){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+goods.getName()+"】已存在");
        };
        goods.setStatus(Constants.ZERO);
        goods.setEditDate(new Date());
        goods.setEditor(user.getId());
        goods.setIsdeleted(Constants.ZERO);
        //处理拼音问题
        goods.setPinyin(PinYinUtil.getFullSpell(goods.getName()));
        goods.setShortPinyin(PinYinUtil.getFirstSpell(goods.getName()));
        goodsMapper.updateById(goods);
        multifileMapper.delete(new QueryWrapper<Multifile>().eq("OBJ_ID",goods.getId()));
        List<Multifile> multifileList = goods.getMultifileList();
        if(!Objects.isNull(multifileList)&&multifileList.size()>Constants.ZERO){
            for (int i = 0; i < multifileList.size(); i++) {
                Multifile multifile = multifileList.get(i);
                multifile.setCreator(user.getId());
                multifile.setCreateDate(new Date());
                multifile.setIsdeleted(Constants.ZERO);
                multifile.setSortnum(i+Constants.ONE);
                multifile.setObjId(goods.getId());
                multifile.setType(Constants.ZERO);
                multifile.setObjType(Constants.ZERO);
                multifileMapper.insert(multifile);
            }
        }
        goodsParamMapper.delete(new QueryWrapper<GoodsParam>().eq("GOODS_ID",goods.getId()));
        List<GoodsParam> goodsParamList = goods.getGoodsParamList();
        if(!Objects.isNull(goodsParamList)&&goodsParamList.size()>0){
            for (int i = 0; i < goodsParamList.size(); i++) {
                GoodsParam goodsParam = goodsParamList.get(i);
                goodsParam.setCreator(user.getId());
                goodsParam.setCreateDate(new Date());
                goodsParam.setIsdeleted(Constants.ZERO);
                goodsParam.setSortnum(i+Constants.ONE);
                goodsParam.setStatus(Constants.ZERO);
                goodsParam.setGoodsId(goods.getId());
                goodsParamMapper.insert(goodsParam);
                //存储 cate_param_select æŸ¥è¯¢æ˜¯å¦å·²å­˜åœ¨
                if(cateParamSelectMapper.selectCount(new QueryWrapper<CateParamSelect>()
                        .eq("PARAM_ID",goodsParam.getPramaId()).eq("NAME",goodsParam.getName()))<=Constants.ZERO){
                    CateParamSelect cateParamSelect = new CateParamSelect();
                    cateParamSelect.setCreator(user.getId());
                    cateParamSelect.setCreateDate(new Date());
                    cateParamSelect.setName(goodsParam.getVal());
                    cateParamSelect.setIsdeleted(Constants.ZERO);
                    cateParamSelect.setStatus(Constants.ZERO);
                    cateParamSelect.setParamId(goodsParam.getPramaId());
                    cateParamSelect.setCategoryId(goods.getCategoryId());
                    cateParamSelect.setStatus(Constants.ZERO);
                    cateParamSelectMapper.insert(cateParamSelect);
                };
            }
        }
    }
    @Override
    public void updateByIdInBatch(List<Goods> goodss) {
        if (CollectionUtils.isEmpty(goodss)) {
@@ -265,11 +400,68 @@
    @Override
    public void updateDisableById(Goods goods) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        Goods dbGoods = goodsMapper.selectById(goods.getId());
        if(Objects.isNull(dbGoods)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY);
        }
        //拉式商品 ä¸” ä¸Šæž¶æ—¶ï¼Œéœ€è¦é™åˆ¶ å¹³å°å•†å“æ˜¯å¦å·²ä¸‹æž¶
        if(dbGoods.getType().equals(Constants.goodsType.PULL)&&goods.getStatus().equals(Constants.ZERO)){
            BaseGoods baseGoods = baseGoodsMapper.selectById(dbGoods.getGoodsId());
            if(Objects.isNull(baseGoods)){
                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到平台商品信息");
            }
            if(!baseGoods.getStatus().equals(Constants.ZERO)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"平台商品已下架,无法上架");
            }
        }
        goods.setEditDate(new Date());
        goods.setEditor(user.getId());
        goodsMapper.updateById(goods);
    }
    /**
     * æ‰¹é‡ä¸Šä¸‹æž¶
     * @param batchDisableDTO
     * @return
     */
    @Override
    public String batchUpdateDisableById(BatchDisableDTO batchDisableDTO) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(StringUtils.isBlank(batchDisableDTO.getIds())){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"请选择对应的商品进行该操作");
        }
        if(!(batchDisableDTO.getStatus().equals(Constants.ZERO)||batchDisableDTO.getStatus().equals(Constants.ONE))){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"操作类型错误");
        }
        Integer okNum = 0;
        Integer errNum = 0;
        List<String> goodsList  = Arrays.asList(batchDisableDTO.getIds().split(","));
        for (String goodsId:goodsList) {
            Goods dbGoods = goodsMapper.selectById(goodsId);
            if(Objects.isNull(dbGoods)){
                errNum++;
                continue;
            }
            //拉式商品 ä¸” ä¸Šæž¶æ—¶ï¼Œéœ€è¦é™åˆ¶ å¹³å°å•†å“æ˜¯å¦å·²ä¸‹æž¶
            if(dbGoods.getType().equals(Constants.goodsType.PULL)&&batchDisableDTO.getStatus().equals(Constants.ZERO)){
                BaseGoods baseGoods = baseGoodsMapper.selectById(dbGoods.getGoodsId());
                if(Objects.isNull(baseGoods)||!baseGoods.getStatus().equals(Constants.ZERO)){
                    errNum++;
                    continue;
                }
            }
            dbGoods.setEditDate(new Date());
            dbGoods.setEditor(user.getId());
            dbGoods.setStatus(batchDisableDTO.getStatus());
            goodsMapper.updateById(dbGoods);
            okNum++;
        }
        return "更新成功数量("+okNum+");更新失败数量("+errNum+")";
    }
    @Override
    public Goods findById(Integer id) {
        Goods goods = goodsMapper.selectById(id);