package com.ruoyi.management.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.ruoyi.common.core.utils.page.BeanUtils;
|
import com.ruoyi.common.core.utils.page.PageDTO;
|
import com.ruoyi.common.security.utils.SecurityUtils;
|
import com.ruoyi.management.domain.SlGoodsShelf;
|
import com.ruoyi.management.domain.SlStoreManagement;
|
import com.ruoyi.management.domain.dto.GoodsShelfDTO;
|
import com.ruoyi.management.domain.dto.GoodsShelfQuery;
|
import com.ruoyi.management.domain.dto.SlGoodsShelfDTO;
|
import com.ruoyi.management.domain.dto.SlGoodsShelfQuery;
|
import com.ruoyi.management.domain.vo.SlGoodsShelfVO;
|
import com.ruoyi.management.mapper.SlGoodsShelfMapper;
|
import com.ruoyi.management.service.SlGoodsShelfService;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.ruoyi.management.service.SlStoreManagementService;
|
import com.ruoyi.system.api.domain.SysUser;
|
import com.ruoyi.system.api.feignClient.SysUserClient;
|
import org.springframework.stereotype.Service;
|
import org.springframework.util.StringUtils;
|
|
import javax.annotation.Resource;
|
import java.util.HashSet;
|
import java.util.List;
|
import java.util.Set;
|
import java.util.stream.Collectors;
|
|
/**
|
* <p>
|
* 货架表 服务实现类
|
* </p>
|
*
|
* @author hjl
|
* @since 2024-06-25
|
*/
|
@Service
|
public class SlGoodsShelfServiceImpl extends ServiceImpl<SlGoodsShelfMapper, SlGoodsShelf> implements SlGoodsShelfService {
|
|
@Resource
|
private SlStoreManagementService SlStoreManagementService;
|
|
@Resource
|
private SysUserClient sysUserClient;
|
|
|
@Override
|
public PageDTO<SlGoodsShelfVO> getGoodsShelfList(SlGoodsShelfQuery slGoodsShelfQuery) {
|
Long userid = SecurityUtils.getUserId();
|
SysUser data = sysUserClient.getSysUser(userid).getData();
|
|
LambdaQueryWrapper<SlStoreManagement> wrapper= Wrappers.lambdaQuery();
|
if(slGoodsShelfQuery.getStoreManagementName()!=null&& !slGoodsShelfQuery.getStoreManagementName().isEmpty()){
|
wrapper.like(SlStoreManagement::getStoreManagementName,slGoodsShelfQuery.getStoreManagementName());
|
}
|
if (data.getRoleType()!=1){
|
wrapper.eq(SlStoreManagement::getStoreManagementGrade,data.getRoleType());
|
}
|
wrapper.eq(SlStoreManagement::getDelFlag,0);
|
List<SlStoreManagement> page1 = SlStoreManagementService.list(wrapper);
|
Set<Long> slStoreManagementIdList = null;
|
slStoreManagementIdList = page1.stream().map(SlStoreManagement::getId)
|
.collect(Collectors.toSet());
|
|
|
Page<SlGoodsShelf> page = new Page<>(slGoodsShelfQuery.getPageCurr(), slGoodsShelfQuery.getPageSize());
|
LambdaQueryWrapper< SlGoodsShelf> wrapper1= Wrappers.lambdaQuery();
|
if (StringUtils.hasLength(slGoodsShelfQuery.getGoodsShelfName())){
|
wrapper1.like(SlGoodsShelf::getGoodsShelfName,slGoodsShelfQuery.getGoodsShelfName());
|
}
|
if (slGoodsShelfQuery.getStoreManagementNumber()!=null){
|
wrapper1.eq(SlGoodsShelf::getStoreManagementNumber,slGoodsShelfQuery.getStoreManagementNumber());
|
}
|
if(slGoodsShelfQuery.getStoreManagementName()!=null&&slGoodsShelfQuery.getStoreManagementName()!="") {
|
if (slStoreManagementIdList.size() > 0) {
|
wrapper1.in(SlGoodsShelf::getStoreManagementId, slStoreManagementIdList);
|
} else {
|
slStoreManagementIdList=new HashSet<>();
|
slStoreManagementIdList.add(0L);
|
wrapper1.in(SlGoodsShelf::getStoreManagementId, slStoreManagementIdList);
|
}
|
}
|
wrapper1.eq( SlGoodsShelf::getDelFlag,0);
|
wrapper1.orderByDesc(SlGoodsShelf::getCreateTime);
|
Page<SlGoodsShelf> page2 = this.page(page, wrapper1);
|
|
PageDTO<SlGoodsShelfVO> SlGoodsShelfDTO = PageDTO.of(page2, SlGoodsShelfVO.class);
|
List<SlGoodsShelfVO> list2 = SlGoodsShelfDTO.getList();
|
for(SlGoodsShelfVO list:list2){
|
SlStoreManagement byId = SlStoreManagementService.getById(list.getStoreManagementId());
|
if (byId!=null){
|
list.setStoreManagementName(byId.getStoreManagementName());
|
list.setProvinceName(byId.getProvinceName());
|
list.setProvinceCode(byId.getProvinceCode());
|
list.setCityName(byId.getCityName());
|
list.setCityCode(byId.getCityCode());
|
list.setCountyName(byId.getCountyName());
|
list.setCountyCode(byId.getCountyCode());
|
list.setTownCode(byId.getTownCode());
|
list.setTownName(byId.getTownName());
|
}
|
}
|
return SlGoodsShelfDTO;
|
|
}
|
|
@Override
|
public void addSlGoodsShelf(SlGoodsShelfDTO slGoodsShelfDTO) {
|
if (slGoodsShelfDTO.getId()==null){
|
SlGoodsShelf slGoodsShelf=new SlGoodsShelf();
|
slGoodsShelf.setGoodsShelfName(slGoodsShelfDTO.getGoodsShelfName());
|
slGoodsShelf.setStoreManagementId(slGoodsShelfDTO.getStoreManagementId());
|
slGoodsShelf.setStoreManagementNumber(slGoodsShelfDTO.getStoreManagementNumber());
|
this.save(slGoodsShelf);
|
}else{
|
SlGoodsShelf slGoodsShelf = this.getById(slGoodsShelfDTO.getId());
|
if (slGoodsShelfDTO.getGoodsShelfName()!=null){
|
slGoodsShelf.setGoodsShelfName(slGoodsShelfDTO.getGoodsShelfName());
|
}
|
if (slGoodsShelfDTO.getStoreManagementNumber()!=null){
|
slGoodsShelf.setStoreManagementNumber(slGoodsShelfDTO.getStoreManagementNumber());
|
}
|
if (slGoodsShelfDTO.getStoreManagementId()!=null){
|
slGoodsShelf.setStoreManagementId(slGoodsShelfDTO.getStoreManagementId());
|
}
|
this.updateById(slGoodsShelf);
|
}
|
}
|
|
@Override
|
public SlGoodsShelfVO getSlGoodsShelfOne(Long id) {
|
SlGoodsShelf byId1 = this.getById(id);
|
SlGoodsShelfVO slGoodsShelfVO=new SlGoodsShelfVO();
|
BeanUtils.copyProperties(byId1,slGoodsShelfVO.getClass());
|
slGoodsShelfVO.setGoodsShelfName(byId1.getGoodsShelfName());
|
SlStoreManagement byId = SlStoreManagementService.getById(byId1.getStoreManagementId());
|
slGoodsShelfVO.setStoreManagementId(byId1.getStoreManagementId());
|
slGoodsShelfVO.setStoreManagementName(byId.getStoreManagementName());
|
slGoodsShelfVO.setStoreManagementNumber(byId.getStoreManagementNumber());
|
slGoodsShelfVO.setProvinceName(byId.getProvinceName());
|
slGoodsShelfVO.setProvinceCode(byId.getProvinceCode());
|
slGoodsShelfVO.setCityName(byId.getCityName());
|
slGoodsShelfVO.setCityCode(byId.getCityCode());
|
slGoodsShelfVO.setCountyName(byId.getCountyName());
|
slGoodsShelfVO.setCountyCode(byId.getCountyCode());
|
slGoodsShelfVO.setTownCode(byId.getTownCode());
|
slGoodsShelfVO.setTownName(byId.getTownName());
|
|
return slGoodsShelfVO;
|
}
|
|
@Override
|
public List<SlGoodsShelf> wfanzGoodsShelfList(GoodsShelfQuery goodsShelfQuery) {
|
LambdaQueryWrapper< SlGoodsShelf> wrapper1= Wrappers.lambdaQuery();
|
wrapper1.eq(SlGoodsShelf::getStoreManagementId,goodsShelfQuery.getStoreManagementId());
|
wrapper1.eq(SlGoodsShelf::getStoreManagementNumber,goodsShelfQuery.getStoreManagementNumber());
|
wrapper1.eq( SlGoodsShelf::getDelFlag,0);
|
wrapper1.orderByDesc(SlGoodsShelf::getCreateTime);
|
List<SlGoodsShelf> page2 = this.list(wrapper1);
|
return page2;
|
}
|
|
@Override
|
public void fanzGoodsShelfList(GoodsShelfDTO goodsShelfDTO) {
|
for(GoodsShelfDTO.ShelfDTO g:goodsShelfDTO.getShelfDTOS()){
|
SlGoodsShelf slGoodsShelf = this.getById(g.getId());
|
slGoodsShelf.setImgId(goodsShelfDTO.getImgId());
|
slGoodsShelf.setIsStoreManagement(2);
|
slGoodsShelf.setZbX(g.getZbX());
|
slGoodsShelf.setZbY(g.getZbY());
|
slGoodsShelf.setWidth(g.getWidth());
|
slGoodsShelf.setHeight(g.getHeight());
|
this.updateById(slGoodsShelf);
|
}
|
|
}
|
|
@Override
|
public List<SlGoodsShelf> getStoreManagementimgSheif(GoodsShelfDTO goodsShelfDTO) {
|
LambdaQueryWrapper< SlGoodsShelf> wrapper1= Wrappers.lambdaQuery();
|
wrapper1.eq(SlGoodsShelf::getImgId,goodsShelfDTO.getImgId());
|
wrapper1.eq(SlGoodsShelf::getIsStoreManagement,2);
|
wrapper1.eq( SlGoodsShelf::getDelFlag,0);
|
wrapper1.orderByDesc(SlGoodsShelf::getCreateTime);
|
List<SlGoodsShelf> page2 = this.list(wrapper1);
|
return page2;
|
}
|
|
@Override
|
public List<SlGoodsShelf> getGoodsSheManagementlfList(SlGoodsShelfQuery slGoodsShelfQuery) {
|
LambdaQueryWrapper< SlGoodsShelf> wrapper1= Wrappers.lambdaQuery();
|
if (slGoodsShelfQuery.getStoreManagementId()!=null){
|
wrapper1.eq(SlGoodsShelf::getStoreManagementId,slGoodsShelfQuery.getStoreManagementId());
|
}
|
if (slGoodsShelfQuery.getStoreManagementNumber()!=null){
|
wrapper1.eq(SlGoodsShelf::getStoreManagementNumber,slGoodsShelfQuery.getStoreManagementNumber());
|
}
|
wrapper1.eq( SlGoodsShelf::getDelFlag,0);
|
wrapper1.orderByDesc(SlGoodsShelf::getCreateTime);
|
List<SlGoodsShelf> page2 = this.list(wrapper1);
|
return page2;
|
}
|
}
|