From 25835dde83a66dcf135226134fe9f70a2c3bb289 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期二, 10 十二月 2024 18:07:51 +0800 Subject: [PATCH] 镜架管理 --- manage/src/main/java/com/jilongda/manage/service/impl/TModelServiceImpl.java | 63 +++++++++++++++++++++++++++++++ 1 files changed, 63 insertions(+), 0 deletions(-) diff --git a/manage/src/main/java/com/jilongda/manage/service/impl/TModelServiceImpl.java b/manage/src/main/java/com/jilongda/manage/service/impl/TModelServiceImpl.java index d348641..d0e2ee2 100644 --- a/manage/src/main/java/com/jilongda/manage/service/impl/TModelServiceImpl.java +++ b/manage/src/main/java/com/jilongda/manage/service/impl/TModelServiceImpl.java @@ -1,10 +1,24 @@ package com.jilongda.manage.service.impl; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.jilongda.common.basic.PageInfo; +import com.jilongda.manage.mapper.TBrandMapper; +import com.jilongda.manage.mapper.TSupplierMapper; +import com.jilongda.manage.model.TBrand; import com.jilongda.manage.model.TModel; import com.jilongda.manage.mapper.TModelMapper; +import com.jilongda.manage.model.TSupplier; +import com.jilongda.manage.query.TModelQuery; import com.jilongda.manage.service.TModelService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jilongda.manage.vo.TBrandVO; +import com.jilongda.manage.vo.TModelVO; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; /** * <p> @@ -17,4 +31,53 @@ @Service public class TModelServiceImpl extends ServiceImpl<TModelMapper, TModel> implements TModelService { + @Autowired + private TBrandMapper brandMapper; + @Autowired + private TSupplierMapper supplierMapper; + + @Override + public Boolean upAndDown(String name, Integer status) { + List<TModel> models = this.baseMapper.selectList(Wrappers.lambdaQuery(TModel.class) + .eq(TModel::getName,name)); + models.stream().filter(Objects::nonNull).forEach(model -> model.setStatus(status)); + return this.updateBatchById(models); + } + + @Override + public Boolean upAndDownColor(String name, String color, Integer status) { + TModel model = this.baseMapper.selectOne(Wrappers.lambdaQuery(TModel.class) + .eq(TModel::getName,name) + .eq(TModel::getColor,color) + .last("LIMIT1 ")); + if (Objects.nonNull(model)){ + model.setStatus(status); + return this.updateById(model); + } + return false; + } + + @Override + public PageInfo<TModelVO> pageList(TModelQuery query) { + PageInfo<TModelVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); + List<TModelVO> list = this.baseMapper.pageList(query,pageInfo); + List<Integer> brandIds = list.stream().map(TModel::getBrandId).collect(Collectors.toList()); + List<Integer> supplierIds= list.stream().map(TModel::getSupplierId).collect(Collectors.toList()); + List<TBrand> tBrands = brandMapper.selectList(Wrappers.lambdaQuery(TBrand.class) + .in(TBrand::getId, brandIds)); + List<TSupplier> tSuppliers = supplierMapper.selectList(Wrappers.lambdaQuery(TSupplier.class) + .in(TSupplier::getId, supplierIds)); + for (TModelVO modelVO : list) { + TBrand tBrand = tBrands.stream().filter(brand -> brand.getId().equals(modelVO.getBrandId())).findFirst().orElse(null); + if(Objects.nonNull(tBrand)){ + modelVO.setBrandName(tBrand.getName()); + } + TSupplier tSupplier = tSuppliers.stream().filter(supplier -> supplier.getId().equals(modelVO.getSupplierId())).findFirst().orElse(null); + if(Objects.nonNull(tSupplier)){ + modelVO.setSupplierName(tSupplier.getName()); + } + } + pageInfo.setRecords(list); + return pageInfo; + } } -- Gitblit v1.7.1