Commit 7b48b052 by wangweidong

土工检测平台修改

parent 3a24991d
......@@ -565,4 +565,19 @@ public class SoilEntrustController extends ServiceController {
soilEntrustService.exportSoilPrepareRecord(ids,response,getAccount());
}
@ApiOperation(value = "收样位置委托分页列表", notes = "收样位置委托分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataType = "int"),
@ApiImplicitParam(name = RestConstants.PAGE_ROWS, value = "每页条数", required = true, paramType = "query", dataType = "int"),
@ApiImplicitParam(name = RestConstants.PAGE_SIDX, value = "排序字段", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataType = "String"),
})
@PostMapping("/page_receive_location_entrust")
public RestResult<Page<SoilEntrustVO>> getPageReceiveLocationEntrust(SoilEntrustVO soilEntrust) {
return success(soilEntrustService.pageReceiveLocationEntrust(getPage(), soilEntrust));
}
}
......@@ -86,7 +86,7 @@ public class SoilReceiveLocationController extends ServiceController {
@ApiOperation(value = "添加", notes = "添加一条数据")
@PostMapping("/")
public RestResult<Boolean> add(SoilReceiveLocation soilReceiveLocation) {
return success(soilReceiveLocationService.save(soilReceiveLocation));
return success(soilReceiveLocationService.saveLocation(soilReceiveLocation));
}
......
......@@ -474,4 +474,13 @@ public class SoilSampleController extends ServiceController {
}
@ApiOperation(value = "从存储位置移除试样", notes = "从存储位置移除试样")
@PostMapping("/remove_sample_from_location")
public RestResult<Boolean> removeSampleFromLocation(@RequestParam("ids")Long [] ids) {
return success(soilSampleService.removeSampleFromLocation(ids,getAccount()));
}
}
......@@ -86,4 +86,6 @@ public interface ISoilEntrustService extends IBaseService<SoilEntrust> {
void exportSoilPrepareRecord(Long[] ids, HttpServletResponse response, Account account);
List<SoilEntrustItemNumVO> listEntrustItemNum(SoilExperimentVO soilEntrust);
Page<SoilEntrustVO> pageReceiveLocationEntrust(Page<SoilEntrustVO> page, SoilEntrustVO soilEntrust);
}
......@@ -21,4 +21,6 @@ public interface ISoilReceiveLocationService extends IBaseService<SoilReceiveLoc
List<SoilReceiveLocation> list(SoilReceiveLocation soilReceiveLocation);
boolean saveLocation(SoilReceiveLocation soilReceiveLocation);
}
......@@ -29,4 +29,7 @@ public interface ISoilSampleOperationService extends IBaseService<SoilSampleOper
boolean recordSenderInfo(Long[] ids, Account account);
boolean recordMakerInfo(Set<Long> sampleIdSet, Account account);
boolean resetLocationBySampleIds(Long [] ids, Account account);
}
......@@ -70,4 +70,6 @@ public interface ISoilSampleService extends IBaseService<SoilSample> {
List<SoilSample> listByContractIdForPrepare(Long entrustId);
Map<String, Object> originalRecordDataBind(Long sampleId, Long modelId, Account account);
boolean removeSampleFromLocation(Long[] ids, Account account);
}
......@@ -985,6 +985,28 @@ public class SoilEntrustServiceImpl extends BaseServiceImpl<SoilEntrustMapper, S
return sampleList;
}
@Override
public Page<SoilEntrustVO> pageReceiveLocationEntrust(Page<SoilEntrustVO> page, SoilEntrustVO soilEntrust) {
RestAssert.fail(StringUtils.isBlank(soilEntrust.getReceiveLocation()),"请填写收样位置");
List<SoilSampleOperation> sampleOperationList = soilSampleOperationService.list(Condition.create().eq("receive_location",soilEntrust.getReceiveLocation()));
if (CollectionUtils.isEmpty(sampleOperationList)){
return page;
}
List<Long> sampleIds = sampleOperationList.stream().map(o->{
return o.getSampleId();
}).collect(Collectors.toList());
List<SoilSample> sampleList = soilSampleService.list(Condition.create().in("id",sampleIds));
if (CollectionUtils.isEmpty(sampleList)){
return page;
}
List<Long> entrustIds = sampleList.stream().map(s->{
return s.getEntrustId();
}).collect(Collectors.toList());
soilEntrust.setIdList(entrustIds);
return page.setRecords(baseMapper.selectVOList(page,soilEntrust));
}
@Transactional(rollbackFor = Exception.class)
@Override
......
......@@ -2,10 +2,13 @@ package com.patzn.cloud.service.lims.soil.service.impl;
import java.util.List;
import com.baomidou.mybatisplus.mapper.Condition;
import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.service.lims.soil.mapper.SoilReceiveLocationMapper;
import com.patzn.cloud.service.lims.soil.service.ISoilReceiveLocationService;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.soil.entity.SoilReceiveLocation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
......@@ -35,4 +38,21 @@ public class SoilReceiveLocationServiceImpl extends BaseServiceImpl<SoilReceiveL
public List<SoilReceiveLocation> list(SoilReceiveLocation soilReceiveLocation) {
return this.list(new EntityWrapper<>(soilReceiveLocation));
}
@Override
public boolean saveLocation(SoilReceiveLocation soilReceiveLocation) {
RestAssert.fail(StringUtils.isBlank(soilReceiveLocation.getCode()),"请填写位置编号");
RestAssert.fail(StringUtils.isBlank(soilReceiveLocation.getName()),"请填写收样位置");
int countName = super.count(Condition.create().eq("name",soilReceiveLocation.getName()));
if (countName>=0){
RestAssert.fail("收样位置重复");
}
int countCode = super.count(Condition.create().eq("code",soilReceiveLocation.getCode()));
if (countCode>=0){
RestAssert.fail("收样位置编号重复");
}
return save(soilReceiveLocation);
}
}
......@@ -71,4 +71,9 @@ public class SoilSampleOperationServiceImpl extends BaseServiceImpl<SoilSampleOp
operation.setMakeTime(new Date());
return super.update(operation, Condition.create().in("sample_id",sampleIdSet));
}
@Override
public boolean resetLocationBySampleIds(Long[] ids, Account account) {
return baseMapper.updateForSet("receive_location=NULL",Condition.create().in("sample_id",ids))>0;
}
}
......@@ -17,10 +17,7 @@ import com.patzn.cloud.service.lims.common.ExcelReader;
import com.patzn.cloud.service.lims.common.StringStaticDataUtils;
import com.patzn.cloud.service.lims.soil.service.*;
import com.patzn.cloud.service.soil.dto.SoilPrepareDTO;
import com.patzn.cloud.service.soil.entity.SoilAptitudeExp;
import com.patzn.cloud.service.soil.entity.SoilExperiment;
import com.patzn.cloud.service.soil.entity.SoilPrepare;
import com.patzn.cloud.service.soil.entity.SoilSample;
import com.patzn.cloud.service.soil.entity.*;
import com.patzn.cloud.service.lims.soil.mapper.SoilSampleMapper;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.soil.enums.SoilEntrustStatusEnum;
......@@ -110,6 +107,39 @@ public class SoilSampleServiceImpl extends BaseServiceImpl<SoilSampleMapper, Soi
return map;
}
@Transactional(rollbackFor = Exception.class)
@Override
public boolean removeSampleFromLocation(Long[] ids, Account account) {
RestAssert.fail(ArrayUtils.isEmpty(ids),"请选择要移除的试样");
soilSampleOperationService.resetLocationBySampleIds(ids,account);
List<SoilSampleOperation> operationList = soilSampleOperationService.list(Condition.create().in("sample_id",ids));
List<SoilSampleRecord> saveRecordList = new ArrayList<>();
List<SoilSample> sampleList = super.list(Condition.create().in("id",ids));
Map<Long,SoilSample> sampleMap = new HashMap<>();
for (SoilSample s:sampleList) {
sampleMap.put(s.getId(),s);
}
for (SoilSampleOperation operation:operationList) {
SoilSampleRecord sampleRecord = new SoilSampleRecord();
sampleRecord.setSampleId(operation.getSampleId());
sampleRecord.setRemark("在存储位置"+operation.getReceiveLocation()+"移除");
sampleRecord.setOperatorId(account.getUserId());
sampleRecord.setOperator(account.getUserName());
sampleRecord.setOrigin(sampleMap.get(operation.getSampleId()).getProgress().getDisplay());
sampleRecord.setTarget(sampleMap.get(operation.getSampleId()).getProgress().getDisplay());
sampleRecord.setType(0);
saveRecordList.add(sampleRecord);
}
if (CollectionUtils.isNotEmpty(saveRecordList)){
soilSampleRecordService.saveBatch(saveRecordList);
}
return true;
}
@Override
public boolean checkEntrustHaveSample(Long[] entrustIds) {
......
ALTER TABLE "public"."soil_sample"
ALTER TABLE "public"."soil_sample"
ALTER TABLE "public"."soil_sample"
ADD COLUMN "remark" varchar(255);
COMMENT ON COLUMN "public"."soil_sample"."remark" IS '备注';
\ No newline at end of file
COMMENT ON COLUMN "public"."soil_sample"."remark" IS '备注';
DROP INDEX "public"."fk_location_code";
DROP INDEX "public"."fk_location_name";
\ No newline at end of file
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