|
@@ -5,12 +5,18 @@ import cn.vber.common.core.service.SampleService;
|
|
|
import cn.vber.common.core.utils.DateUtils;
|
|
import cn.vber.common.core.utils.DateUtils;
|
|
|
import cn.vber.common.core.utils.MapstructUtils;
|
|
import cn.vber.common.core.utils.MapstructUtils;
|
|
|
import cn.vber.common.core.utils.StringUtils;
|
|
import cn.vber.common.core.utils.StringUtils;
|
|
|
|
|
+import cn.vber.common.mybatis.core.mapper.BaseMapperPlus;
|
|
|
import cn.vber.common.mybatis.core.page.TableDataInfo;
|
|
import cn.vber.common.mybatis.core.page.TableDataInfo;
|
|
|
import cn.vber.common.mybatis.core.page.PageQuery;
|
|
import cn.vber.common.mybatis.core.page.PageQuery;
|
|
|
import cn.vber.common.satoken.utils.LoginHelper;
|
|
import cn.vber.common.satoken.utils.LoginHelper;
|
|
|
|
|
+import cn.vber.experiment.domain.ExperimentSample;
|
|
|
import cn.vber.experiment.domain.SampleFlow;
|
|
import cn.vber.experiment.domain.SampleFlow;
|
|
|
|
|
+import cn.vber.experiment.domain.vo.ExperimentSampleVo;
|
|
|
|
|
+import cn.vber.experiment.domain.vo.ExperimentVo;
|
|
|
import cn.vber.experiment.domain.vo.SampleFlowVo;
|
|
import cn.vber.experiment.domain.vo.SampleFlowVo;
|
|
|
import cn.vber.experiment.enums.SampleStatusEnum;
|
|
import cn.vber.experiment.enums.SampleStatusEnum;
|
|
|
|
|
+import cn.vber.experiment.mapper.ExperimentMapper;
|
|
|
|
|
+import cn.vber.experiment.mapper.ExperimentSampleMapper;
|
|
|
import cn.vber.experiment.mapper.SampleFlowMapper;
|
|
import cn.vber.experiment.mapper.SampleFlowMapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
@@ -40,6 +46,8 @@ public class SampleServiceImpl implements ISampleService, SampleService {
|
|
|
|
|
|
|
|
private final SampleMapper baseMapper;
|
|
private final SampleMapper baseMapper;
|
|
|
private final SampleFlowMapper flowMapper;
|
|
private final SampleFlowMapper flowMapper;
|
|
|
|
|
+ private final ExperimentSampleMapper experimentSampleMapper;
|
|
|
|
|
+ private final ExperimentMapper experimentMapper;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 查询实验样本
|
|
* 查询实验样本
|
|
@@ -193,6 +201,26 @@ public class SampleServiceImpl implements ISampleService, SampleService {
|
|
|
return sample;
|
|
return sample;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public ExperimentVo queryExperimentBySampleId(Long id) {
|
|
|
|
|
+ Sample sample = baseMapper.selectById(id);
|
|
|
|
|
+ if (sample == null) {
|
|
|
|
|
+ throw new ServiceException("查询样本不存在");
|
|
|
|
|
+ }
|
|
|
|
|
+ if (!Objects.equals(sample.getSampleStatus(), SampleStatusEnum.EXPERIMENTING.getStatus())) {
|
|
|
|
|
+ throw new ServiceException("样本状态错误");
|
|
|
|
|
+ }
|
|
|
|
|
+ ExperimentSample experimentSample = experimentSampleMapper.selectList(new LambdaQueryWrapper<ExperimentSample>()
|
|
|
|
|
+ .eq(ExperimentSample::getSampleId, id)).get(0);
|
|
|
|
|
+ if (experimentSample == null) {
|
|
|
|
|
+ throw new ServiceException("样本未加入实验");
|
|
|
|
|
+ }
|
|
|
|
|
+ ExperimentVo experimentVo = experimentMapper.selectVoById(experimentSample.getExperimentId());
|
|
|
|
|
+ List<ExperimentSampleVo> sampleList = experimentSampleMapper.selectVoList(new LambdaQueryWrapper<ExperimentSample>().eq(ExperimentSample::getExperimentId, experimentSample.getExperimentId()));
|
|
|
|
|
+ experimentVo.setSampleList(sampleList);
|
|
|
|
|
+ return experimentVo;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public String selectNameById(long id) {
|
|
public String selectNameById(long id) {
|
|
|
return baseMapper.selectById(id).getSampleName();
|
|
return baseMapper.selectById(id).getSampleName();
|