Commit 79e8d1f2 by wangweidong

土工试验平台修改

parent 72a1200f
......@@ -405,4 +405,12 @@ public class SoilSampleController extends ServiceController {
return success(soilSampleService.takeSample(ids,getAccount()));
}
@ApiOperation(value = "扫码领样", notes = "扫码领样")
@PostMapping("/scan_take_sample")
public RestResult<Boolean> scanOperation(@RequestParam("sampleCode") String sampleCode) {
String type="扫码领样";
return success(soilSampleService.scanOperation(sampleCode,type,getAccount()));
}
}
......@@ -51,4 +51,6 @@ public interface ISoilSampleService extends IBaseService<SoilSample> {
boolean takeSample(Long[] ids, Account account);
Page<SoilSampleVO> pageByExp(Page<SoilSampleVO> page, SoilSampleVO soilSample);
boolean scanOperation(String sampleCode, String type, Account account);
}
......@@ -414,8 +414,10 @@ public class SoilSampleServiceImpl extends BaseServiceImpl<SoilSampleMapper, Soi
RestAssert.fail(ArrayUtils.isEmpty(ids),"请选择要领的检样样品");
List<SoilPrepare> prepareList = soilPrepareService.list(Condition.create().in("id",ids));
for (SoilPrepare soilPrepare:prepareList) {
RestAssert.fail(!soilPrepare.getStatus().equals(SoilPrepareStatusEnum.PREPARED),"请选择待领样的样品");
}
List<Long>sampleIdList = new ArrayList<>();
for (SoilPrepare prepare:prepareList) {
SoilExperiment experiment = new SoilExperiment();
experiment.setStatus(SoilExpStatusEnum.ALLOT);
......@@ -460,4 +462,24 @@ public class SoilSampleServiceImpl extends BaseServiceImpl<SoilSampleMapper, Soi
public Page<SoilSampleVO> pageByExp(Page<SoilSampleVO> page, SoilSampleVO soilSample) {
return page.setRecords(baseMapper.selectVOListByExp(page,soilSample));
}
@Transactional(rollbackFor = Exception.class)
@Override
public boolean scanOperation(String sampleCode, String type, Account account) {
RestAssert.fail(StringUtils.isBlank(sampleCode),"请扫码");
String [] codeArray = sampleCode.split("-");
if (codeArray.length!=2){
RestAssert.fail("编号有误!");
}
SoilSample sample = getOne(Condition.create().setSqlSelect("id").eq("sample_code",codeArray[0]).last("LIMIT 1"));
List<SoilPrepare> soilPrepareList = soilPrepareService.list(Condition.create().eq("sample_id",sample.getId()).eq("group_id",Long.parseLong(codeArray[1])));
if (CollectionUtils.isEmpty(soilPrepareList)){
return false;
}
Long [] sampleIds = new Long[soilPrepareList.size()];
for (int i = 0; i < soilPrepareList.size(); i++) {
sampleIds[i] = soilPrepareList.get(i).getId();
}
return takeSample(sampleIds,account);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment