package org.jeecg.modules.base.service.impl;
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import org.jeecg.modules.base.entity.FactoryModel;
|
import org.jeecg.modules.base.entity.Warehouse;
|
import org.jeecg.modules.base.mapper.WarehouseClientMapper;
|
import org.jeecg.modules.base.mapper.WarehouseMapper;
|
import org.jeecg.modules.base.service.IWarehouseService;
|
import org.springframework.stereotype.Service;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.transaction.annotation.Transactional;
|
import java.io.Serializable;
|
import java.util.*;
|
|
/**
|
* @Description: 仓库
|
* @Author: jeecg-boot
|
* @Date: 2022-11-07
|
* @Version: V1.0
|
*/
|
@Service
|
public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper, Warehouse> implements IWarehouseService {
|
|
@Autowired
|
private WarehouseMapper warehouseMapper;
|
@Autowired
|
private WarehouseClientMapper warehouseClientMapper;
|
|
@Override
|
public Page<Map<String, Object>> getWarehouseList(Page<Map<String, Object>> page, Integer version, String enterpriseId) {
|
return page.setRecords(warehouseMapper.getWarehouseList(page,version,enterpriseId));
|
}
|
|
@Override
|
public Integer getInitVersion() {
|
List<Warehouse> usableVersionList = warehouseMapper.getUsableList();
|
Set<Integer> allVersionList = getVersionList();
|
if(CollectionUtils.isNotEmpty(usableVersionList)){
|
return usableVersionList.get(0).getVersion();
|
}else if(CollectionUtils.isNotEmpty(allVersionList)){
|
return allVersionList.stream().findFirst().get();
|
}
|
return null;
|
}
|
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public void delMain(String id) {
|
warehouseClientMapper.deleteByMainId(id);
|
warehouseMapper.deleteById(id);
|
}
|
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public void delBatchMain(Collection<? extends Serializable> idList) {
|
for(Serializable id:idList) {
|
warehouseClientMapper.deleteByMainId(id.toString());
|
warehouseMapper.deleteById(id);
|
}
|
}
|
|
@Override
|
public Set<Integer> getVersionList() {
|
Set<Integer> set = new TreeSet<Integer>(Comparator.reverseOrder());
|
set.addAll(warehouseMapper.getAllVersion());
|
return set;
|
}
|
|
@Override
|
public List<Warehouse> getLastUsableList() {
|
return warehouseMapper.getLastUsableList();
|
}
|
|
@Override
|
public List<Warehouse> getUsableList() {
|
return warehouseMapper.getUsableList();
|
}
|
|
@Override
|
public Map<String, Object> getNowAndLastUsableVersion() {
|
List<Warehouse> usableList = warehouseMapper.getUsableList();
|
List<Warehouse> lastUsableList = warehouseMapper.getLastUsableList();
|
Map<String,Object> map = new HashMap<>(2);
|
if(CollectionUtils.isNotEmpty(usableList)){
|
map.put("usableVersion",usableList.get(0).getVersion());
|
}
|
if(CollectionUtils.isNotEmpty(lastUsableList)){
|
map.put("lastUsableVersion",lastUsableList.get(0).getVersion());
|
}
|
return map;
|
}
|
|
@Override
|
public List<String> getVersionStatusByVersion(Integer version) {
|
return warehouseMapper.getVersionStatusByVersion(version);
|
}
|
|
|
}
|