package com.vci.ubcs.system.service.impl;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.vci.ubcs.system.mapper.ValueRangeMapper;
|
import com.vci.ubcs.system.service.IValueRangeService;
|
import org.springblade.core.cache.utils.CacheUtil;
|
import org.springblade.core.log.exception.ServiceException;
|
import org.springblade.core.tool.utils.Func;
|
import com.vci.ubcs.system.entity.ValueRange;
|
import org.springframework.data.domain.Page;
|
import org.springframework.data.domain.PageImpl;
|
import org.springframework.data.domain.PageRequest;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.Date;
|
import java.util.List;
|
|
import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE;
|
|
/**
|
* (PlSysValueRange)表服务实现类
|
*
|
* @author makejava
|
* @since 2023-03-20 15:23:59
|
*/
|
@Service
|
public class ValueRangeServiceImpl extends ServiceImpl<ValueRangeMapper,ValueRange> implements IValueRangeService {
|
|
@Resource
|
private ValueRangeMapper valueRangeMapper;
|
|
/**
|
* 全查询
|
*
|
* @return 查询结果
|
*/
|
@Override
|
public List<ValueRange> queryByAll() {
|
return valueRangeMapper.selectList(null);
|
}
|
|
/**
|
* 分页查询
|
*
|
* @param valueRange 筛选条件
|
* @param pageRequest 分页对象
|
* @return 查询结果
|
*/
|
@Override
|
public Page<ValueRange> queryByPage(ValueRange valueRange, PageRequest pageRequest) {
|
long total = this.valueRangeMapper.count(valueRange);
|
return new PageImpl<>(this.valueRangeMapper.queryAllByLimit(valueRange, pageRequest), pageRequest, total);
|
}
|
|
/**
|
* 新增数据
|
*
|
* @param valueRange 实例对象
|
* @return 实例对象
|
*/
|
@Override
|
public boolean submit(ValueRange valueRange) {
|
//判断是否携带id
|
if(Func.isEmpty(valueRange.getId())){
|
//新增
|
ValueRange dbValueRange = this.getOne(Wrappers.<ValueRange>query().lambda()
|
.eq(ValueRange::getCombinationId,valueRange.getCombinationId())
|
.eq(ValueRange::getValue, valueRange.getValue()));
|
//同一组合方式下不能出现相同的取值范围
|
if(!Func.isEmpty(dbValueRange)){
|
throw new ServiceException("该组合方式下已存在相同取值范围!");
|
}
|
if(Func.isEmpty(valueRange.getCreateTime())){
|
valueRange.setCreateTime(new Date());
|
}
|
if(Func.isEmpty(valueRange.getUpdateTime())){
|
valueRange.setUpdateTime(new Date());
|
}
|
boolean temp = saveOrUpdate(valueRange);
|
return temp;
|
}else {
|
if(Func.isEmpty(valueRange.getUpdateTime())){
|
valueRange.setUpdateTime(new Date());
|
}
|
CacheUtil.clear(SYS_CACHE, Boolean.FALSE);
|
return saveOrUpdate(valueRange);
|
}
|
}
|
|
/**
|
* 通过主键删除数据
|
*
|
* @param ids 主键
|
* @return 是否成功
|
*/
|
@Override
|
public boolean deleteByIds(List<String> ids) {
|
boolean tenantTemp = this.removeBatchByIds(ids);
|
return tenantTemp;
|
}
|
|
/**
|
* 获取取值
|
*
|
* @return 是否成功
|
*/
|
@Override
|
public List<String> getByAllString(List<String> combinationIds) {
|
List<String> list = valueRangeMapper.queryByCombinationIds(combinationIds);
|
return list;
|
}
|
|
}
|