|
@@ -709,7 +709,7 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
InputStream fileInputStream = null;
|
|
InputStream fileInputStream = null;
|
|
InputStreamReader inputStreamReader = null;
|
|
InputStreamReader inputStreamReader = null;
|
|
BufferedReader bufferedReader = null;
|
|
BufferedReader bufferedReader = null;
|
|
- File file = null;
|
|
|
|
|
|
+// File file = null;
|
|
try {
|
|
try {
|
|
//2.解析仿真文件
|
|
//2.解析仿真文件
|
|
//time
|
|
//time
|
|
@@ -762,58 +762,100 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
}
|
|
}
|
|
String[] split = line.split(",");
|
|
String[] split = line.split(",");
|
|
|
|
|
|
|
|
+ ////添加异常捕获,非正常数据默认为0
|
|
try {
|
|
try {
|
|
- time_list.add(Double.valueOf(split[1]));
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[1]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ time_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ time_list.add(Double.valueOf(split[1]));
|
|
|
|
+ }
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
time_list.add(0D);
|
|
time_list.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
- lateral_velocity_list.add(Double.valueOf(split[6]));
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[6]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ lateral_velocity_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ lateral_velocity_list.add(Double.valueOf(split[6]));
|
|
|
|
+ }
|
|
|
|
+
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
lateral_velocity_list.add(0D);
|
|
lateral_velocity_list.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
try {
|
|
try {
|
|
- longitudinal_velocity_list.add(Double.valueOf(split[7]));
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[7]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ longitudinal_velocity_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ longitudinal_velocity_list.add(Double.valueOf(split[7]));
|
|
|
|
+ }
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
longitudinal_velocity_list.add(0D);
|
|
longitudinal_velocity_list.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
- lateral_acceleration.add(Double.valueOf(split[8]));
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[8]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ lateral_acceleration.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ lateral_acceleration.add(Double.valueOf(split[8]));
|
|
|
|
+ }
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
lateral_acceleration.add(0D);
|
|
lateral_acceleration.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
try {
|
|
try {
|
|
- longitudinal_acceleration_list.add(Double.valueOf(split[9]));
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[9]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ longitudinal_acceleration_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ longitudinal_acceleration_list.add(Double.valueOf(split[9]));
|
|
|
|
+ }
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
longitudinal_acceleration_list.add(0D);
|
|
longitudinal_acceleration_list.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
try {
|
|
try {
|
|
- steeting_wheel_list.add(Double.valueOf(split[12]));//steering_angle
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[12]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ steeting_wheel_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ steeting_wheel_list.add(Double.valueOf(split[12]));//steering_angle
|
|
|
|
+ }
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
steeting_wheel_list.add(0D);
|
|
steeting_wheel_list.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
try {
|
|
try {
|
|
- yawrate_list.add(Double.valueOf(split[13]));
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[13]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ yawrate_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ yawrate_list.add(Double.valueOf(split[13]));
|
|
|
|
+ }
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
yawrate_list.add(0D);
|
|
yawrate_list.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
try {
|
|
try {
|
|
- lane_offset_list.add(Double.valueOf(split[27]));//lane_center_offset
|
|
|
|
|
|
+ Double aDouble = Double.valueOf(split[27]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ lane_offset_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ lane_offset_list.add(Double.valueOf(split[27]));//lane_center_offset
|
|
|
|
+ }
|
|
}catch (NumberFormatException e){
|
|
}catch (NumberFormatException e){
|
|
lane_offset_list.add(0D);
|
|
lane_offset_list.add(0D);
|
|
}
|
|
}
|
|
|
|
|
|
-// brake_list.add(Double.valueOf(split[7])); ///TODO 没有
|
|
|
|
-// throttle_list.add(Double.valueOf(split[7]));///TODO 没有
|
|
|
|
|
|
+// brake_list.add(Double.valueOf(split[])); ///TODO 没有
|
|
|
|
+// throttle_list.add(Double.valueOf(split[]));///TODO 没有
|
|
|
|
|
|
}
|
|
}
|
|
//里程
|
|
//里程
|
|
@@ -912,9 +954,9 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
if(bufferedReader != null){
|
|
if(bufferedReader != null){
|
|
bufferedReader.close();
|
|
bufferedReader.close();
|
|
}
|
|
}
|
|
- if(file != null ){
|
|
|
|
|
|
+ /*if(file != null ){
|
|
file.delete();
|
|
file.delete();
|
|
- }
|
|
|
|
|
|
+ }*/
|
|
}catch (IOException e){
|
|
}catch (IOException e){
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
|
|
|
|
@@ -2833,12 +2875,12 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
|
|
|
|
String id = param.getId();
|
|
String id = param.getId();
|
|
if(StringUtil.isEmpty(id)){
|
|
if(StringUtil.isEmpty(id)){
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE,"工作名称不能为空");
|
|
|
|
|
|
+ return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE,"工作id不能为空");
|
|
}
|
|
}
|
|
|
|
|
|
SimulationManualProjectPo po = simulationProjectMapper.selectProjectBaseById(param);
|
|
SimulationManualProjectPo po = simulationProjectMapper.selectProjectBaseById(param);
|
|
- if(StringUtil.isEmpty(id)){
|
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE,"工作名称不能为空");
|
|
|
|
|
|
+ if(po == null){
|
|
|
|
+ return new ResponseBodyVO(ResponseBodyVO.Response.SERVER_FAILURE,"没有查到工作信息");
|
|
}
|
|
}
|
|
|
|
|
|
List<ScenePackageSubListVO> scenePackageSubListVOS = simulationProjectMapper.selectSubSceneByPid(po.getScene());
|
|
List<ScenePackageSubListVO> scenePackageSubListVOS = simulationProjectMapper.selectSubSceneByPid(po.getScene());
|
|
@@ -2869,6 +2911,301 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
|
|
return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public ResponseBodyVO saveTaskResult(SimulationManualProjectParam param) {
|
|
|
|
+
|
|
|
|
+ String projectId = param.getProjectId();
|
|
|
|
+ String taskId = param.getTaskId();
|
|
|
|
+ String runResultFilePath = param.getRunResultFilePath();
|
|
|
|
+
|
|
|
|
+ if(StringUtil.isEmpty(projectId)){
|
|
|
|
+ return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE,"工作id不能为空");
|
|
|
|
+ }
|
|
|
|
+ if(StringUtil.isEmpty(taskId)){
|
|
|
|
+ return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE,"任务id不能为空");
|
|
|
|
+ }
|
|
|
|
+ if(StringUtil.isEmpty(runResultFilePath)){
|
|
|
|
+ return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE,"地址不能为空");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ InputStream fileInputStream = null;
|
|
|
|
+ InputStreamReader inputStreamReader = null;
|
|
|
|
+ BufferedReader bufferedReader = null;
|
|
|
|
+ File file = null;
|
|
|
|
+ try {
|
|
|
|
+ //time
|
|
|
|
+ List<Double> time_list = new ArrayList<>();
|
|
|
|
+ //velocity
|
|
|
|
+ List<String> velocity_list = new ArrayList<>();
|
|
|
|
+ List<Double> lateral_velocity_list = new ArrayList<>();
|
|
|
|
+ List<Double> longitudinal_velocity_list = new ArrayList<>();
|
|
|
|
+ //acceleration
|
|
|
|
+ List<String> acceleration_list = new ArrayList<>();
|
|
|
|
+ List<Double> lateral_acceleration = new ArrayList<>();
|
|
|
|
+ List<Double> longitudinal_acceleration_list = new ArrayList<>();
|
|
|
|
+ //lane_offset
|
|
|
|
+ List<String> lane_offset_list = new ArrayList<>();
|
|
|
|
+ ///TODO brake 暂无
|
|
|
|
+ List<String> brake_list = new ArrayList<>();
|
|
|
|
+ //steeting_wheel
|
|
|
|
+ List<String> steeting_wheel_list = new ArrayList<>();
|
|
|
|
+ ///TODO throttle 暂无
|
|
|
|
+ List<String> throttle_list = new ArrayList<>();
|
|
|
|
+ //摆角速度
|
|
|
|
+ List<Double> yawrate_list = new ArrayList<>();
|
|
|
|
+
|
|
|
|
+ MinioParameter minioParameter = new MinioParameter();
|
|
|
|
+ minioParameter.setObjectName(runResultFilePath+"/Ego.csv");
|
|
|
|
+ Response download = fileDownService.download(minioParameter);
|
|
|
|
+ Response.Body body = download.body();
|
|
|
|
+ fileInputStream = body.asInputStream();
|
|
|
|
+
|
|
|
|
+ /*file = new File("E:\\仿真云平台\\任务详情界面数据\\Ego(1).csv");
|
|
|
|
+ fileInputStream = new FileInputStream(file);
|
|
|
|
+ inputStreamReader = new InputStreamReader(fileInputStream,"utf-8");*/
|
|
|
|
+
|
|
|
|
+ inputStreamReader = new InputStreamReader(fileInputStream,"utf-8");
|
|
|
|
+ bufferedReader = new BufferedReader(inputStreamReader);
|
|
|
|
+ String line;
|
|
|
|
+ int lineIndex = 0;
|
|
|
|
+
|
|
|
|
+ while((line = bufferedReader.readLine()) != null){
|
|
|
|
+ lineIndex++;
|
|
|
|
+ if(lineIndex == 1){
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+ String[] split = line.split(",");
|
|
|
|
+
|
|
|
|
+ //添加异常捕获,非正常数据默认为0
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[1]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ time_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ time_list.add(aDouble);
|
|
|
|
+ }
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ time_list.add(0D);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[6]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ lateral_velocity_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ lateral_velocity_list.add(aDouble);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ lateral_velocity_list.add(0D);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[7]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ longitudinal_velocity_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ longitudinal_velocity_list.add(aDouble);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ longitudinal_velocity_list.add(0D);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[8]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ lateral_acceleration.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ lateral_acceleration.add(aDouble);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ lateral_acceleration.add(0D);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[9]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ longitudinal_acceleration_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ longitudinal_acceleration_list.add(aDouble);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ longitudinal_acceleration_list.add(0D);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[12]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ steeting_wheel_list.add("0");
|
|
|
|
+ }else{
|
|
|
|
+ steeting_wheel_list.add(String.valueOf(aDouble));//steering_angle
|
|
|
|
+ }
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ steeting_wheel_list.add("0");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[13]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ yawrate_list.add(0D);
|
|
|
|
+ }else{
|
|
|
|
+ yawrate_list.add(aDouble);
|
|
|
|
+ }
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ yawrate_list.add(0D);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Double aDouble = Double.valueOf(split[27]);
|
|
|
|
+ if(aDouble.isNaN()){
|
|
|
|
+ lane_offset_list.add("0");
|
|
|
|
+ }else{
|
|
|
|
+ lane_offset_list.add(String.valueOf(aDouble));//lane_center_offset
|
|
|
|
+ }
|
|
|
|
+ }catch (NumberFormatException e){
|
|
|
|
+ lane_offset_list.add("0");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //里程
|
|
|
|
+ Double lc = 0D;
|
|
|
|
+ for(int i=0; i<time_list.size(); i++){
|
|
|
|
+ if(i == 0){
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+ lc += (time_list.get(i)-time_list.get(i-1))*longitudinal_velocity_list.get(i-1);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //平均速度
|
|
|
|
+ Double pjsd = lc/time_list.get(time_list.size()-1);
|
|
|
|
+
|
|
|
|
+ //最大速度
|
|
|
|
+ Double zdsd = Collections.max(longitudinal_velocity_list);
|
|
|
|
+
|
|
|
|
+ //最小速度
|
|
|
|
+ Double zxsd = Collections.min(longitudinal_velocity_list);
|
|
|
|
+
|
|
|
|
+ //最大加速度
|
|
|
|
+ Double zdjiasd = Collections.max(longitudinal_acceleration_list);
|
|
|
|
+
|
|
|
|
+ //最大减速度
|
|
|
|
+ Double zdjiansd = Collections.min(longitudinal_acceleration_list);
|
|
|
|
+
|
|
|
|
+ //最大摆角速度
|
|
|
|
+ Double zdbjsd = Collections.max(yawrate_list);
|
|
|
|
+
|
|
|
|
+ //自车速度方差
|
|
|
|
+ Double zcsdfc = 0D;
|
|
|
|
+ for(Double d :longitudinal_velocity_list){
|
|
|
|
+ zcsdfc +=Math.pow(d-pjsd,2);
|
|
|
|
+ }
|
|
|
|
+ zcsdfc = zcsdfc/longitudinal_velocity_list.size();
|
|
|
|
+
|
|
|
|
+ //自车横摆角速度均方根
|
|
|
|
+ Double zchbjsdjfg = 0D;
|
|
|
|
+ for(Double d :yawrate_list){
|
|
|
|
+ zchbjsdjfg += Math.pow(d-pjsd,2);
|
|
|
|
+ }
|
|
|
|
+ zchbjsdjfg = Math.sqrt(zchbjsdjfg/yawrate_list.size());
|
|
|
|
+
|
|
|
|
+ for(int i=0; i<lateral_acceleration.size(); i++){
|
|
|
|
+ Double aDouble = lateral_acceleration.get(i);
|
|
|
|
+ Double aDouble1 = longitudinal_acceleration_list.get(i);
|
|
|
|
+ Double d = Math.pow(aDouble,2)+Math.pow(aDouble1,2);
|
|
|
|
+ acceleration_list.add(String.valueOf(Math.sqrt(d)));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for(int i=0; i<lateral_velocity_list.size(); i++){
|
|
|
|
+ Double aDouble = lateral_velocity_list.get(i);
|
|
|
|
+ Double aDouble1 = longitudinal_velocity_list.get(i);
|
|
|
|
+ Double d = Math.pow(aDouble,2)+Math.pow(aDouble1,2);
|
|
|
|
+ velocity_list.add(String.valueOf(d));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //将数据保存到库
|
|
|
|
+ ManualProjectTaskPo manualProjectTaskPo = new ManualProjectTaskPo();
|
|
|
|
+ manualProjectTaskPo.setId(taskId);
|
|
|
|
+ manualProjectTaskPo.setPId(projectId);
|
|
|
|
+ manualProjectTaskPo.setMileage(lc.toString());
|
|
|
|
+ manualProjectTaskPo.setAverageVelocity(pjsd.toString());
|
|
|
|
+ manualProjectTaskPo.setMaximunSpeed(zdsd.toString());
|
|
|
|
+ manualProjectTaskPo.setMinimunVelocity(zxsd.toString());
|
|
|
|
+ manualProjectTaskPo.setMaximumAcceleration(zdjiasd.toString());
|
|
|
|
+ manualProjectTaskPo.setMaximumDeceleration(zdjiansd.toString());
|
|
|
|
+ manualProjectTaskPo.setMaximumSwingSpeed(zdbjsd.toString());
|
|
|
|
+ manualProjectTaskPo.setSpeedVariance(String.valueOf(zcsdfc));
|
|
|
|
+ manualProjectTaskPo.setSwingSpeedMeanSquareRoot(String.valueOf(zchbjsdjfg));
|
|
|
|
+ manualProjectTaskPo.setAcceleration(String.join(",",acceleration_list));
|
|
|
|
+ manualProjectTaskPo.setLaneOffset(String.join(",",lane_offset_list));
|
|
|
|
+ manualProjectTaskPo.setBrake(String.join(",",brake_list));
|
|
|
|
+ manualProjectTaskPo.setSteetingWheel(String.join(",",steeting_wheel_list));
|
|
|
|
+ manualProjectTaskPo.setThrottle(String.join(",",throttle_list));
|
|
|
|
+ if(!isEmpty(yawrate_list)){
|
|
|
|
+ StringBuffer sb = new StringBuffer();
|
|
|
|
+ for(Double d : yawrate_list){
|
|
|
|
+ sb.append(d+",");
|
|
|
|
+ }
|
|
|
|
+ String s = sb.substring(0, sb.lastIndexOf(","));
|
|
|
|
+ manualProjectTaskPo.setYawRate(s);
|
|
|
|
+ }
|
|
|
|
+ manualProjectTaskPo.setVelocity(String.join(",",velocity_list));
|
|
|
|
+ manualProjectTaskPo.setOtherCurve("");///TODO 其他暂无
|
|
|
|
+
|
|
|
|
+ if(!isEmpty(time_list)){
|
|
|
|
+ StringBuffer sb = new StringBuffer();
|
|
|
|
+ for(Double d : time_list){
|
|
|
|
+ sb.append(d+",");
|
|
|
|
+ }
|
|
|
|
+ String s = sb.substring(0, sb.lastIndexOf(","));
|
|
|
|
+ manualProjectTaskPo.setTimerShaft(s);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ simulationProjectTaskMapper.updateTaksResult(manualProjectTaskPo);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ } catch (Exception e){
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ } finally {
|
|
|
|
+ try {
|
|
|
|
+ if(fileInputStream != null){
|
|
|
|
+ fileInputStream.close();
|
|
|
|
+ }
|
|
|
|
+ if(inputStreamReader != null){
|
|
|
|
+ inputStreamReader.close();
|
|
|
|
+ }
|
|
|
|
+ if(bufferedReader != null){
|
|
|
|
+ bufferedReader.close();
|
|
|
|
+ }
|
|
|
|
+ /*if(file != null ){
|
|
|
|
+ file.delete();
|
|
|
|
+ }*/
|
|
|
|
+ }catch (IOException e){
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public ResponseBodyVO exportProjectTaskFileById(SimulationManualProjectParam param) {
|
|
|
|
+ String id = param.getId();
|
|
|
|
+ if(StringUtil.isEmpty(id)){
|
|
|
|
+ return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE,"工作id不能为空");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 换行
|
|
* 换行
|
|
* @param lineNum 换行数量
|
|
* @param lineNum 换行数量
|