package com.yuanchu.mom.service.impl;
|
|
import cn.hutool.core.util.ObjectUtil;
|
import com.alibaba.fastjson.JSONArray;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.yuanchu.mom.pojo.InsSample;
|
import com.yuanchu.mom.pojo.StandardProductList;
|
import com.yuanchu.mom.service.StandardProductListService;
|
import com.yuanchu.mom.mapper.StandardProductListMapper;
|
import lombok.AllArgsConstructor;
|
import org.springframework.stereotype.Service;
|
|
import java.math.BigDecimal;
|
import java.util.List;
|
import java.util.Objects;
|
import java.util.stream.Collectors;
|
|
/**
|
* @author Administrator
|
* @description 针对表【standard_product_list(标准树下的检验项目)】的数据库操作Service实现
|
* @createDate 2024-03-05 10:33:29
|
*/
|
@Service
|
@AllArgsConstructor
|
public class StandardProductListServiceImpl extends ServiceImpl<StandardProductListMapper, StandardProductList>
|
implements StandardProductListService {
|
|
private StandardProductListMapper standardProductListMapper;
|
|
@Override
|
public int upStandardProductList(StandardProductList list) {
|
return standardProductListMapper.updateById(list);
|
}
|
|
@Override
|
public int delStandardProduct(JSONArray list) {
|
return standardProductListMapper.deleteBatchIds(list);
|
}
|
|
@Override
|
public List<StandardProductList> selectStandardProductList(InsSample insSample) {
|
List<StandardProductList> list = standardProductListMapper.selectList(Wrappers.<StandardProductList>lambdaQuery().eq(StandardProductList::getStandardMethodListId, insSample.getStandardMethodListId()).eq(StandardProductList::getState, 1));
|
list = list.stream().filter(a -> {
|
try {
|
if(a.getSection()!=null && !Objects.equals(a.getSection(), "")){
|
if (a.getSection().contains("~")) {
|
String[] split = a.getSection().split("~");
|
return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(split[0])) > -1 && new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(split[1])) < 1;
|
} else if (a.getSection().contains("≥") || a.getSection().contains(">=")) {
|
String param = a.getSection().replace("≥", "").replace(">=","");
|
return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) > -1;
|
} else if (a.getSection().contains("≤") || a.getSection().contains("<=")) {
|
String param = a.getSection().replace("≤", "").replace("<=","");
|
return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) < 1;
|
} else if (a.getSection().contains(">")) {
|
String param = a.getSection().replace(">", "");
|
return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) > 0;
|
} else if (a.getSection().contains("<")) {
|
String param = a.getSection().replace("<", "");
|
return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) < 0;
|
} else if (a.getSection().contains("=")) {
|
String param = a.getSection().replace("=", "");
|
return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) == 0;
|
}
|
}
|
} catch (Exception ignored) {
|
return false;
|
}
|
return true;
|
}).collect(Collectors.toList());
|
return list;
|
}
|
|
@Override
|
public List<StandardProductList> selectStandardProductListByMethodId(Integer id) {
|
return standardProductListMapper.selectList(Wrappers.<StandardProductList>lambdaQuery().eq(StandardProductList::getStandardMethodListId, id));
|
}
|
}
|