Commit b3bcc2a2 by wangweidong

土工平台修改

parent 99537cad
...@@ -10,7 +10,7 @@ import org.slf4j.LoggerFactory; ...@@ -10,7 +10,7 @@ import org.slf4j.LoggerFactory;
public class PngReportHandle implements ICollectHandler { public class PngReportHandle implements ICollectHandler {
protected final Logger logger = LoggerFactory.getLogger(PngReportHandle.class); protected static final Logger logger = LoggerFactory.getLogger(PngReportHandle.class);
@Override @Override
public Boolean process(CollectDataType request, ISoilExperimentService soilExperimentService) { public Boolean process(CollectDataType request, ISoilExperimentService soilExperimentService) {
...@@ -69,12 +69,18 @@ public class PngReportHandle implements ICollectHandler { ...@@ -69,12 +69,18 @@ public class PngReportHandle implements ICollectHandler {
public static SmbFile[] getShareFiles(String url) throws Exception { public static SmbFile[] getShareFiles(String url) {
try {
SmbFile file = new SmbFile(url); SmbFile file = new SmbFile(url);
if(file.exists()){ if(file.exists()){
SmbFile[] files = file.listFiles(); SmbFile[] files = file.listFiles();
return files; return files;
} }
}catch (Exception e){
logger.error("共享文件获取失败的原因是:"+e.getMessage());
}
return null; return null;
} }
......
...@@ -3,12 +3,14 @@ package com.patzn.cloud.service.lims.common; ...@@ -3,12 +3,14 @@ package com.patzn.cloud.service.lims.common;
import com.aspose.cells.SaveFormat; import com.aspose.cells.SaveFormat;
import com.aspose.cells.Workbook; import com.aspose.cells.Workbook;
import com.baomidou.mybatisplus.toolkit.CollectionUtils; import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.commons.toolkit.DateUtils;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import java.io.File; import java.io.File;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.util.Date;
import java.util.List; import java.util.List;
public class AsposeUtil { public class AsposeUtil {
...@@ -20,21 +22,26 @@ public class AsposeUtil { ...@@ -20,21 +22,26 @@ public class AsposeUtil {
FileOutputStream fileOutputStream=null; FileOutputStream fileOutputStream=null;
FileOutputStream fileOut=null; FileOutputStream fileOut=null;
try { try {
logger.error("mergeWork----------1");
for (Workbook book:workbooksList) { for (Workbook book:workbooksList) {
workbook.combine(book); workbook.combine(book);
} }
logger.error("mergeWork----------2");
File tempFile = File.createTempFile(name+"pre",".xlsx"); File tempFile = File.createTempFile(DateUtils.toYearMonthDayEasy(new Date())+"shiyan",".xlsx");
logger.error("mergeWork----------3");
fileOut =new FileOutputStream(tempFile); fileOut =new FileOutputStream(tempFile);
logger.error("mergeWork----------4");
workbook.save(fileOut, SaveFormat.XLSX); workbook.save(fileOut, SaveFormat.XLSX);
logger.error("mergeWork----------5");
XSSFWorkbook workbookOk = new XSSFWorkbook(tempFile); XSSFWorkbook workbookOk = new XSSFWorkbook(tempFile);
workbookOk.setActiveSheet(0); workbookOk.setActiveSheet(0);
workbookOk.removeSheetAt(workbookOk.getNumberOfSheets()-1); workbookOk.removeSheetAt(workbookOk.getNumberOfSheets()-1);
logger.error("mergeWork----------6");
File file = File.createTempFile(name,".xlsx"); File file = File.createTempFile(DateUtils.toYearMonthDayEasy(new Date())+name,".xlsx");
logger.error("mergeWork----------7");
fileOutputStream=new FileOutputStream(file); fileOutputStream=new FileOutputStream(file);
workbookOk.write(fileOutputStream); workbookOk.write(fileOutputStream);
fileOut.flush(); fileOut.flush();
......
...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.toolkit.CollectionUtils; ...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.service.lims.collect.statics.StaticsData; import com.patzn.cloud.service.lims.collect.statics.StaticsData;
import com.patzn.cloud.service.soil.entity.SoilExperimentCollectData; import com.patzn.cloud.service.soil.entity.SoilExperimentCollectData;
import com.patzn.cloud.service.soil.vo.SoilExperimentCollectDataVO; import com.patzn.cloud.service.soil.vo.SoilExperimentCollectDataVO;
import org.apache.commons.lang.math.NumberUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import java.io.*; import java.io.*;
...@@ -13,10 +14,10 @@ import java.util.List; ...@@ -13,10 +14,10 @@ import java.util.List;
public class CollectUtil { public class CollectUtil {
public static void main(String[] args) { public static void main(String[] args) {
File file = new File("D://三轴压缩S-10r.txt"); File file = new File("D://界限含水率(联合测定)S-1.txt");
try { try {
FileInputStream io = new FileInputStream(file); FileInputStream io = new FileInputStream(file);
txt2String(io); txt2StringWuxing(io);
}catch (Exception e){ }catch (Exception e){
} }
...@@ -133,9 +134,104 @@ public class CollectUtil { ...@@ -133,9 +134,104 @@ public class CollectUtil {
} }
} }
else if (s.contains("试样编号")){ else if (s.contains("试样编号")){
if (!sampleCode.equals("")&&!"".equals(gcbh)){ if (!sampleCode.equals("")&&!"".equals(gcbh)){
System.out.println(sampleCode); System.out.println(sampleCode);
if (listOne.size()>1){
String name = listOne.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("锥深".equals(name)){
for (int i = 1; i <listOne.size() ; i++) {
String valueChile = listOne.get(i);
if (!NumberUtils.isNumber(valueChile)){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listTwo.size()>1){
String name = listTwo.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("盒号".equals(name)){
for (int i = 1; i <listTwo.size() ; i++) {
String valueChile = listTwo.get(i);
if (valueChile.contains("%")){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listThree.size()>1){
String name = listThree.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("湿土重".equals(name)){
for (int i = 1; i <listThree.size() ; i++) {
String valueChile = listThree.get(i);
if (!NumberUtils.isNumber(valueChile)){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listFour.size()>1){
String name = listFour.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("干土重".equals(name)){
for (int i = 1; i <listFour.size() ; i++) {
String valueChile = listFour.get(i);
if (!NumberUtils.isNumber(valueChile)){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listTwo.size()>0){ if (listTwo.size()>0){
dataList.add(getDataVO("液限含水率",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率")); dataList.add(getDataVO("液限含水率",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率"));
} }
...@@ -143,11 +239,8 @@ public class CollectUtil { ...@@ -143,11 +239,8 @@ public class CollectUtil {
dataList.add(getDataVO("塑限含水率",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率")); dataList.add(getDataVO("塑限含水率",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率"));
} }
System.out.println(listOne);
System.out.println(listTwo);
System.out.println(listThree);
System.out.println(listFour);
System.out.println(listFive);
} }
String [] sampleCodes = s.split("┃"); String [] sampleCodes = s.split("┃");
...@@ -223,6 +316,98 @@ public class CollectUtil { ...@@ -223,6 +316,98 @@ public class CollectUtil {
System.out.println(sampleCode); System.out.println(sampleCode);
if (!"".equals(sampleCode)&&!"".equals(gcbh)){ if (!"".equals(sampleCode)&&!"".equals(gcbh)){
if (listOne.size()>1){
String name = listOne.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("锥深".equals(name)){
for (int i = 1; i <listOne.size() ; i++) {
String valueChile = listOne.get(i);
if (!NumberUtils.isNumber(valueChile)){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listTwo.size()>1){
String name = listTwo.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("盒号".equals(name)){
for (int i = 1; i <listTwo.size() ; i++) {
String valueChile = listTwo.get(i);
if (valueChile.contains("%")){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listThree.size()>1){
String name = listThree.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("湿土重".equals(name)){
for (int i = 1; i <listThree.size() ; i++) {
String valueChile = listThree.get(i);
if (!NumberUtils.isNumber(valueChile)){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listFour.size()>1){
String name = listFour.get(0);
if (StringUtils.isNotBlank(name)){
name = name.replace(" ","");
if ("干土重".equals(name)){
for (int i = 1; i <listFour.size() ; i++) {
String valueChile = listFour.get(i);
if (!NumberUtils.isNumber(valueChile)){
continue;
}
String nameChild = name+i;
SoilExperimentCollectDataVO collectData = new SoilExperimentCollectDataVO();
collectData.setName(nameChild);
collectData.setTestValue(valueChile);
collectData.setEntrustCode(gcbh);
collectData.setSiteNo(sampleCode);
collectData.setExpName("界限含水率");
dataList.add(collectData);
}
}
}
}
if (listTwo.size()>0){ if (listTwo.size()>0){
dataList.add(getDataVO("液限含水率",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率")); dataList.add(getDataVO("液限含水率",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率"));
...@@ -230,11 +415,6 @@ public class CollectUtil { ...@@ -230,11 +415,6 @@ public class CollectUtil {
if (listFour.size()>0){ if (listFour.size()>0){
dataList.add(getDataVO("塑限含水率",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率")); dataList.add(getDataVO("塑限含水率",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率"));
} }
System.out.println(listOne);
System.out.println(listTwo);
System.out.println(listThree);
System.out.println(listFour);
System.out.println(listFive);
} }
...@@ -242,6 +422,10 @@ public class CollectUtil { ...@@ -242,6 +422,10 @@ public class CollectUtil {
} }
for (SoilExperimentCollectDataVO dataVO : dataList) {
System.out.println(dataVO.getEntrustCode()+dataVO.getSiteNo()+dataVO.getName()+dataVO.getTestValue());
}
return dataList; return dataList;
} }
......
...@@ -734,6 +734,14 @@ public class SoilExperimentController extends ServiceController { ...@@ -734,6 +734,14 @@ public class SoilExperimentController extends ServiceController {
@ApiOperation(value = "界限含水率(联合测定)采集文件批量上传", notes = "附件批量上传")
@PostMapping("/upload_water_jiexian_collect/{entrustId}")
public RestResult<Boolean> uploadWaterJieXianCollect(@PathVariable("entrustId") Long entrustId, MultipartFile httpServletRequest) {
return success(soilExperimentService.uploadWaterJieXianCollect(httpServletRequest, entrustId,getAccount()));
}
@ApiOperation(value = "力学采集文件批量上传", notes = "附件批量上传") @ApiOperation(value = "力学采集文件批量上传", notes = "附件批量上传")
@PostMapping("/upload_dynamics_collect/{entrustId}") @PostMapping("/upload_dynamics_collect/{entrustId}")
public RestResult<Boolean> uploadDynamicsCollect(@PathVariable("entrustId") Long entrustId, MultipartHttpServletRequest httpServletRequest) { public RestResult<Boolean> uploadDynamicsCollect(@PathVariable("entrustId") Long entrustId, MultipartHttpServletRequest httpServletRequest) {
......
...@@ -108,6 +108,9 @@ public interface ISoilExperimentService extends IBaseService<SoilExperiment> { ...@@ -108,6 +108,9 @@ public interface ISoilExperimentService extends IBaseService<SoilExperiment> {
boolean uploadDynamicsCollect(MultipartHttpServletRequest httpServletRequest, Long entrustId, Account account); boolean uploadDynamicsCollect(MultipartHttpServletRequest httpServletRequest, Long entrustId, Account account);
boolean uploadWaterJieXianCollect(MultipartFile httpServletRequest, Long entrustId, Account account);
SoilExpReport seniorTestReport(Long id, Account account); SoilExpReport seniorTestReport(Long id, Account account);
Page<SoilExperimentVO> pageCheckStatistics(Page<SoilExperimentVO> page, SoilExperimentVO soilExperiment); Page<SoilExperimentVO> pageCheckStatistics(Page<SoilExperimentVO> page, SoilExperimentVO soilExperiment);
......
...@@ -629,46 +629,62 @@ public class SoilExpReportServiceImpl extends BaseServiceImpl<SoilExpReportMappe ...@@ -629,46 +629,62 @@ public class SoilExpReportServiceImpl extends BaseServiceImpl<SoilExpReportMappe
@Override @Override
public SoilExpReport generateAppendix(Long id, Account account) { public SoilExpReport generateAppendix(Long id, Account account) {
logger.error("开始生成附录generateAppendix-----");
RestAssert.fail(null == id ,"请选择要生成的报告"); RestAssert.fail(null == id ,"请选择要生成的报告");
logger.error("1-----------------");
List<SoilExpReportRelExp> reportRelExpList = soilExpReportRelExpService.list(Condition.create().eq("exp_report_id",id)); List<SoilExpReportRelExp> reportRelExpList = soilExpReportRelExpService.list(Condition.create().eq("exp_report_id",id));
logger.error("2-----------------");
if (CollectionUtils.isEmpty(reportRelExpList)){ if (CollectionUtils.isEmpty(reportRelExpList)){
RestAssert.fail("该项目报告不含有项目!!"); RestAssert.fail("该项目报告不含有项目!!");
} }
logger.error("3-----------------");
List<Long> expIdsList = reportRelExpList.stream().map(r->{ List<Long> expIdsList = reportRelExpList.stream().map(r->{
return r.getExpId(); return r.getExpId();
}).collect(Collectors.toList()); }).collect(Collectors.toList());
logger.error("4-----------------");
SoilExpReport soilExpReport = getById(id); SoilExpReport soilExpReport = getById(id);
logger.error("5-----------------");
List<SoilAppendix> appendixList = soilAppendixService.list(Condition.create().in("exp_id",expIdsList)); List<SoilAppendix> appendixList = soilAppendixService.list(Condition.create().in("exp_id",expIdsList));
logger.error("6-----------------");
List<Workbook> bookList = new ArrayList<>(); List<Workbook> bookList = new ArrayList<>();
logger.error("List<Workbook> bookList = new ArrayList<>();-----");
Workbook workbook =null; Workbook workbook =null;
XSSFWorkbook xssfWorkbook = HSSFWorkbookUtil.getWorkbookByIO(ossClient.download(soilExpReport.getObjectKey())); XSSFWorkbook xssfWorkbook = HSSFWorkbookUtil.getWorkbookByIO(ossClient.download(soilExpReport.getObjectKey()));
logger.error("7-----------------");
if (null !=xssfWorkbook){ if (null !=xssfWorkbook){
try { try {
workbook = new Workbook(exportToExcelInputStream(xssfWorkbook)); workbook = new Workbook(exportToExcelInputStream(xssfWorkbook));
logger.error("8-----------------");
}catch (Exception e){ }catch (Exception e){
logger.error(" workbook = new Workbook(exportToExcelInputStream(xssfWorkbook));"+e.getMessage()); logger.error(" workbook = new Workbook(exportToExcelInputStream(xssfWorkbook));"+e.getMessage());
} }
} }
logger.error("9-----------------");
for (SoilAppendix appendix:appendixList) { for (SoilAppendix appendix:appendixList) {
try { try {
logger.error("10-----------------");
Workbook book = new Workbook(ossClient.download(appendix.getObjectKey())); Workbook book = new Workbook(ossClient.download(appendix.getObjectKey()));
if (null!=book){ if (null!=book){
logger.error("11-----------------");
bookList.add(book); bookList.add(book);
} }
logger.error("12-----------------");
}catch (Exception e){ }catch (Exception e){
logger.error(" Workbook book = new Workbook(ossClient.download(appendix.getObjectKey()));;"+e.getMessage()); logger.error(" Workbook book = new Workbook(ossClient.download(appendix.getObjectKey()));;"+e.getMessage());
} }
logger.error("13-----------------");
} }
if (CollectionUtils.isNotEmpty(bookList)) { if (CollectionUtils.isNotEmpty(bookList)) {
try { try {
logger.error("14-----------------");
File allFileName = AsposeUtil.mergeWork(soilExpReport.getExpName(), workbook, bookList); File allFileName = AsposeUtil.mergeWork(soilExpReport.getExpName(), workbook, bookList);
logger.error("15-----------------");
OssFileResult result = ossClient.upload(allFileName); OssFileResult result = ossClient.upload(allFileName);
soilExpReport.setAppendixKey(result.getObjectKey()); soilExpReport.setAppendixKey(result.getObjectKey());
if (updateById(soilExpReport)) { if (updateById(soilExpReport)) {
...@@ -681,6 +697,8 @@ public class SoilExpReportServiceImpl extends BaseServiceImpl<SoilExpReportMappe ...@@ -681,6 +697,8 @@ public class SoilExpReportServiceImpl extends BaseServiceImpl<SoilExpReportMappe
} }
}else{
RestAssert.fail("改报告不含有附录请确认!");
} }
return null; return null;
......
...@@ -1634,33 +1634,22 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap ...@@ -1634,33 +1634,22 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
checkChongSuMap.put(name,1); checkChongSuMap.put(name,1);
} }
} }
List<SoilExperimentVO> newVOList = new ArrayList<>(); List<SoilExperimentVO> newVOList = new ArrayList<>();
Map<String,SoilExperimentVO> newChongSuMap = new HashMap<>(); Map<String,SoilExperimentVO> newChongSuMap = new HashMap<>();
for (SoilExperimentVO vo:voList) { for (SoilExperimentVO vo:voList) {
String name = vo.getName().replace("-重塑","")+vo.getSampleCode(); String name = vo.getName().replace("-重塑","")+vo.getSampleCode();
if (!vo.getName().contains("重塑")){ if (!vo.getName().contains("重塑")){
newVOList.add(vo); newVOList.add(vo);
}else{ }else{
Integer num = checkChongSuMap.get(name); Integer num = checkChongSuMap.get(name);
if (null==num||num == 1) { if (null==num||num == 1) {
newVOList.add(vo); newVOList.add(vo);
} }
newChongSuMap.put(vo.getName()+vo.getSampleCode(),vo); newChongSuMap.put(vo.getName()+vo.getSampleCode(),vo);
} }
} }
voList = newVOList; voList = newVOList;
List<SoilItem> saveNewItemList = new ArrayList<>(); List<SoilItem> saveNewItemList = new ArrayList<>();
for (SoilExperimentVO vo:voList) { for (SoilExperimentVO vo:voList) {
SoilExperimentVO chongSu = newChongSuMap.get(vo.getName()+"-重塑"+vo.getSampleCode()); SoilExperimentVO chongSu = newChongSuMap.get(vo.getName()+"-重塑"+vo.getSampleCode());
if (null!=chongSu){ if (null!=chongSu){
...@@ -1673,17 +1662,10 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap ...@@ -1673,17 +1662,10 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
} }
} }
} }
for (SoilItem item : saveNewItemList) { for (SoilItem item : saveNewItemList) {
soilItemList.add(item); soilItemList.add(item);
} }
} }
Map<Long,List<SoilItem>> expItemMap = new HashMap<>(); Map<Long,List<SoilItem>> expItemMap = new HashMap<>();
for (SoilItem item:soilItemList) { for (SoilItem item:soilItemList) {
if (!expItemMap.containsKey(item.getExperimentId())){ if (!expItemMap.containsKey(item.getExperimentId())){
...@@ -2865,6 +2847,26 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap ...@@ -2865,6 +2847,26 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public boolean uploadWaterJieXianCollect(MultipartFile file, Long entrustId, Account account) {
RestAssert.fail(null == entrustId,"请选则委托单ID");
SoilEntrust entrust = soilEntrustService.getById(entrustId);
List<SoilExperimentVO> voList = baseMapper.selectByEntrustId(entrustId);
if (CollectionUtils.isEmpty(voList)){
RestAssert.fail("检测项目不存在");
}
parseWuxingTxt(file,entrust,voList);
return true;
}
@Transactional(rollbackFor = Exception.class)
@Override
public SoilExpReport seniorTestReport(Long id, Account account) { public SoilExpReport seniorTestReport(Long id, Account account) {
RestAssert.fail(null == id ,"请选择高级试验!"); RestAssert.fail(null == id ,"请选择高级试验!");
List<SoilExpRelOriginalRecord> relOriginalRecordList = soilExpRelOriginalRecordService.list(Condition.create().eq("exp_id",id).last(" LIMIT 1 ")); List<SoilExpRelOriginalRecord> relOriginalRecordList = soilExpRelOriginalRecordService.list(Condition.create().eq("exp_id",id).last(" LIMIT 1 "));
...@@ -3555,6 +3557,54 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap ...@@ -3555,6 +3557,54 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
return false; return false;
} }
public boolean parseWuxingTxt(MultipartFile smbFile, SoilEntrust entrust, List<SoilExperimentVO> voList) {
try {
List<SoilExperimentCollectDataVO> dataList= CollectUtil.txt2StringWuxing(smbFile.getInputStream());
if (CollectionUtils.isEmpty(dataList)){
RestAssert.fail("采集文件类型不匹配");
return false;
}
for (SoilExperimentCollectDataVO collectDataVO : dataList) {
RestAssert.fail(StringUtils.isBlank(collectDataVO.getEntrustCode()),"委托编号不能为空!");
RestAssert.fail(StringUtils.isBlank(collectDataVO.getSiteNo()),"现场编号不能为空!");
RestAssert.fail(StringUtils.isBlank(collectDataVO.getExpName()),"试验项目名称不能为空!");
RestAssert.fail(StringUtils.isBlank(collectDataVO.getName()),"指标名称不能为空!");
RestAssert.fail(StringUtils.isBlank(collectDataVO.getTestValue()),"指标值不能为空!");
RestAssert.fail(collectDataVO.getEntrustCode().equals(entrust.getEntrustCode()),"委托编号不匹配!");
}
if (CollectionUtils.isNotEmpty(voList)){
List<SoilItem> saveSoilItemList = new ArrayList<>();
for (SoilExperimentCollectDataVO dataVO:dataList) {
for (SoilExperimentVO vo : voList) {
if (vo.getSiteNo().equals(dataVO.getSiteNo())&&vo.getName().equals(dataVO.getExpName())){
SoilItem item = new SoilItem();
item.setStatus(0);
item.setProgress(0);
item.setName(dataVO.getName());
item.setTestValue(dataVO.getTestValue());
item.setExperimentId(vo.getId());
item.setUnit(dataVO.getUnit());
saveSoilItemList.add(item);
break;
}
}
}
if (CollectionUtils.isNotEmpty(saveSoilItemList)){
soilItemService.saveBatch(saveSoilItemList);
}
return true;
}
}catch (Exception e){
logger.error("parseWuxingTxt失败,原因:"+e.getMessage());
e.printStackTrace();
}
return false;
}
@Override @Override
public boolean parseWuxingTxt(SmbFile smbFile, CollectDataType request) { public boolean parseWuxingTxt(SmbFile smbFile, CollectDataType request) {
......
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