Commit 87c34b6d by wangweidong

土工优化

parent 9fcc95ab
......@@ -233,10 +233,10 @@ public class CollectUtil {
}
if (listTwo.size()>0){
dataList.add(getDataVO("液限含水率",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率"));
dataList.add(getDataVO("液限",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率"));
}
if (listFour.size()>0){
dataList.add(getDataVO("塑限含水率",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率"));
dataList.add(getDataVO("塑限",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率"));
}
......@@ -410,10 +410,10 @@ public class CollectUtil {
}
if (listTwo.size()>0){
dataList.add(getDataVO("液限含水率",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率"));
dataList.add(getDataVO("液限",listTwo.get(listTwo.size()-1),gcbh,sampleCode,"界限含水率"));
}
if (listFour.size()>0){
dataList.add(getDataVO("塑限含水率",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率"));
dataList.add(getDataVO("塑限",listFour.get(listFour.size()-1),gcbh,sampleCode,"界限含水率"));
}
}
......
......@@ -84,7 +84,7 @@ public class SheetMoreSingleOperation implements Operation {
}
SoilExperimentVO vo = voList.get(i);
XSSFSheet sheet = xssfWorkbook.getSheetAt(nextSample);
xssfWorkbook.setSheetName(nextSample,vo.getSampleCode());
xssfWorkbook.setSheetName(nextSample,vo.getSiteNo());
Map<String,String> myMapReplace = Maps.newHashMap(mapReplace) ;
doExcelFill(vo,myMapReplace,sheet);
......
......@@ -9,6 +9,7 @@ import net.jodah.expiringmap.ExpiringMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.net.InetSocketAddress;
import java.util.HashMap;
public class ServerHandler extends ChannelInboundHandlerAdapter {
......@@ -17,8 +18,6 @@ public class ServerHandler extends ChannelInboundHandlerAdapter {
public void channelRead(ChannelHandlerContext ctx, Object msg) {
try {
String oid = ctx.channel().id().asLongText();
ByteBuf buf = (ByteBuf) msg; byte[] req = new byte[buf.readableBytes()];
buf.readBytes(req);
String body = new String(req, "UTF-8");
......@@ -56,9 +55,7 @@ public class ServerHandler extends ChannelInboundHandlerAdapter {
@Override
public void channelReadComplete(ChannelHandlerContext ctx) throws Exception {
ChannelId channelId = ctx.channel().id();
String text = channelId.asLongText();
ChannelHandlerContext handlerContext = ctx.read();
String content = handlerContext.toString();
System.out.println("服务端接收数据完毕..");
ctx.flush();
}
......
......@@ -1573,48 +1573,10 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
public boolean parseTxt(MultipartFile smbFile, CollectDataType request) {
try {
List<SoilExperimentCollectData> dataList= CollectUtil.txt2String(smbFile.getInputStream());
if (CollectionUtils.isNotEmpty(dataList)){
List<SoilItem> saveSoilItemList = new ArrayList<>();
List<SoilItem> updateSoilItemList = new ArrayList<>();
String testMethod = null;
for (SoilExperimentCollectData collectData:dataList) {
collectData.setExpId(request.getExpId());
if ("试验方法".equals(collectData.getName())){
if (StringUtils.isNotBlank(testMethod)){
continue;
}
testMethod = collectData.getTestValue();
continue;
}
SoilItem item = new SoilItem();
item.setName(collectData.getName());
item.setTestValue(collectData.getTestValue());
item.setExperimentId(request.getExpId());
item.setUnit(collectData.getUnit());
saveSoilItemList.add(item);
}
if (CollectionUtils.isNotEmpty(saveSoilItemList)){
soilItemService.remove(Condition.create().eq("experiment_id",request.getExpId()));
soilItemService.saveBatch(saveSoilItemList);
}
if (CollectionUtils.isNotEmpty(updateSoilItemList)){
soilItemService.updateBatchById(updateSoilItemList);
}
if (StringUtils.isNotBlank(testMethod)){
SoilExperiment experiment = new SoilExperiment();
experiment.setTestMethod(testMethod);
experiment.setId(request.getExpId());
super.updateById(experiment);
}
return soilExperimentCollectDataService.saveBatch(dataList);
}
}catch (Exception e){
try {
return parseTxtByIO(smbFile.getInputStream(),request);
} catch (IOException e) {
e.printStackTrace();
}
return false;
......@@ -1853,7 +1815,7 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
"APPENDIX "+sample.getSiteNo()+" "+testEnglish);
try {
HSSFWorkbookUtil.replaceModel(replaceMap,xssfWorkbook);
HSSFWorkbookUtil.insertImageSelf(xssfWorkbook,fileMap,0,3,41,9,0,3,10,42);
HSSFWorkbookUtil.insertImageSelf(xssfWorkbook,fileMap,0,3,41,9,0,3,10,41);
}catch (Exception e){
logger.error("generateExcelReport错误"+e.getMessage());
}
......@@ -2242,15 +2204,29 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
}
@Override
public boolean parseTxt(SmbFile smbFile, CollectDataType request) {
public boolean parseTxtByIO(InputStream io,CollectDataType request){
List<SoilExperimentCollectData> dataList= CollectUtil.txt2String(io);
try {
List<SoilExperimentCollectData> dataList= CollectUtil.txt2String(smbFile.getInputStream());
if (CollectionUtils.isNotEmpty(dataList)){
List<SoilItem> saveSoilItemList = new ArrayList<>();
List<SoilItem> updateSoilItemList = new ArrayList<>();
String testMethod = null;
Set<String> nameSet = new HashSet<>();
for (SoilExperimentCollectData collectData:dataList){
if (StringUtils.isNotBlank(collectData.getName())){
nameSet.add(collectData.getName());
}
}
List<SoilItem> itemList = soilItemService.list(Condition.create().setSqlSelect("id,name,experiment_id").eq("experiment_id",request.getExpId()).in("name",nameSet));
Map<String,SoilItem> soilItemMap = new HashMap<>();
for (SoilItem item : itemList) {
soilItemMap.put(item.getExperimentId()+item.getName(),item);
}
for (SoilExperimentCollectData collectData:dataList) {
collectData.setEquipName(request.getEquipName());
collectData.setLabNum(request.getLabNum());
......@@ -2267,21 +2243,29 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
continue;
}
if (soilItemMap.containsKey(request.getExpId()+collectData.getName())){
SoilItem item = new SoilItem();
item.setName(collectData.getName());
item.setTestValue(collectData.getTestValue());
item.setExperimentId(request.getExpId());
item.setUnit(collectData.getUnit());
item.setId(soilItemMap.get(request.getExpId()+collectData.getName()).getId());
updateSoilItemList.add(item);
}else{
SoilItem item = new SoilItem();
item.setName(collectData.getName());
item.setTestValue(collectData.getTestValue());
item.setExperimentId(request.getExpId());
item.setUnit(collectData.getUnit());
saveSoilItemList.add(item);
}
}
if (CollectionUtils.isNotEmpty(saveSoilItemList)){
soilItemService.remove(Condition.create().eq("experiment_id",request.getExpId()));
soilItemService.saveBatch(saveSoilItemList);
}
// if (CollectionUtils.isNotEmpty(updateSoilItemList)){
// soilItemService.updateBatchById(updateSoilItemList);
// }
if (CollectionUtils.isNotEmpty(updateSoilItemList)){
soilItemService.updateBatchById(updateSoilItemList);
}
if (StringUtils.isNotBlank(testMethod)){
SoilExperiment experiment = new SoilExperiment();
experiment.setTestMethod(testMethod);
......@@ -2292,7 +2276,26 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
return soilExperimentCollectDataService.saveBatch(dataList);
}
}catch (Exception e){
logger.error("parseTxt失败,原因:"+e.getMessage());
logger.error("parseTxtByIO解析错误"+e.getMessage(),e);
}finally {
try {
io.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return false;
}
@Override
public boolean parseTxt(SmbFile smbFile, CollectDataType request) {
try {
return parseTxtByIO(smbFile.getInputStream(),request);
} catch (IOException e) {
e.printStackTrace();
}
return false;
......
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