(1)加入新异常,调用外部程序异常。原外部程序调用异常提示在在返回信息
(2)音视频控制类异常处理,防止出现表单提交,审核时为了防止出现未知异常导致界面出错,catch MaatCovertException修改为catch exeption,根据异常类型进行判断返回界面信息 (3)message.tag不够严谨,修改了success的判断
This commit is contained in:
@@ -12,20 +12,15 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import net.sf.json.JSONArray;
|
||||
import net.sf.json.JSONObject;
|
||||
|
||||
import org.apache.commons.lang.StringEscapeUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.configuration.AvFileSampleCfg;
|
||||
import com.nis.domain.configuration.AvSignSampleCfg;
|
||||
import com.nis.domain.maat.ToMaatResult;
|
||||
import com.nis.domain.maat.ToMaatResult.ResponseData;
|
||||
import com.nis.exceptions.CallExternalProceduresException;
|
||||
import com.nis.exceptions.MaatConvertException;
|
||||
import com.nis.util.ConfigServiceUtil;
|
||||
import com.nis.util.Constants;
|
||||
@@ -35,6 +30,9 @@ import com.nis.web.dao.configuration.AvCfgDao;
|
||||
import com.nis.web.security.UserUtils;
|
||||
import com.nis.web.service.BaseService;
|
||||
|
||||
import net.sf.json.JSONArray;
|
||||
import net.sf.json.JSONObject;
|
||||
|
||||
|
||||
/**
|
||||
* 音视频配置相关事务类
|
||||
@@ -170,30 +168,39 @@ public class AvCfgService extends BaseService{
|
||||
}
|
||||
|
||||
logger.info("调用外部程序输入参数:"+param);
|
||||
Map resultMap = execShell(sampleCreatelProc,param);
|
||||
logger.info("调用外部程序结果:"+resultMap);
|
||||
if(resultMap.get("exitStatus").equals(0)){//调用外部程序成功
|
||||
String out = resultMap.get("out").toString();//输出参数
|
||||
JSONArray resArray =JSONArray.fromObject(out);
|
||||
JSONObject resObject = resArray.getJSONObject(0);
|
||||
logger.info("调用外部程序输出参数:"+resObject);
|
||||
int state = resObject.getInt("state");
|
||||
int fileSize = resObject.getInt("fileSize");
|
||||
Integer fileId = resObject.getInt("fileId");
|
||||
if(state==1 && fileSize>0){//成功
|
||||
entity.setIsSampleCreated(1);//样例文件创建成功
|
||||
try {
|
||||
Map resultMap = execShell(sampleCreatelProc,param);
|
||||
logger.info("调用外部程序结果:"+resultMap);
|
||||
if(resultMap.get("exitStatus").equals(0)){//调用外部程序成功
|
||||
String out = resultMap.get("out").toString();//输出参数
|
||||
JSONArray resArray =JSONArray.fromObject(out);
|
||||
JSONObject resObject = resArray.getJSONObject(0);
|
||||
logger.info("调用外部程序输出参数:"+resObject);
|
||||
int state = resObject.getInt("state");
|
||||
int fileSize = resObject.getInt("fileSize");
|
||||
Integer fileId = resObject.getInt("fileId");
|
||||
if(state==1 && fileSize>0){//成功
|
||||
entity.setIsSampleCreated(1);//样例文件创建成功
|
||||
}else{
|
||||
entity.setIsSampleCreated(-1);//样例文件创建失败
|
||||
}
|
||||
if(fileId.equals(entity.getCfgId().intValue())){
|
||||
File uploadSampleFile = new File(entity.getSamplePath());
|
||||
String sampleMd5 = FileUtils.getFileMD5(uploadSampleFile);
|
||||
entity.setSampleMd5(sampleMd5);
|
||||
}else{
|
||||
logger.info("调用外部程序返回fileId错误,输入的fileId为:"+entity.getCfgId()+",输出的fileId为:"+fileId);
|
||||
}
|
||||
}else{
|
||||
entity.setIsSampleCreated(-1);//样例文件创建失败
|
||||
throw new CallExternalProceduresException();
|
||||
}
|
||||
if(fileId.equals(entity.getCfgId().intValue())){
|
||||
File uploadSampleFile = new File(entity.getSamplePath());
|
||||
String sampleMd5 = FileUtils.getFileMD5(uploadSampleFile);
|
||||
entity.setSampleMd5(sampleMd5);
|
||||
}else{
|
||||
logger.info("调用外部程序返回fileId错误,输入的fileId为:"+entity.getCfgId()+",输出的fileId为:"+fileId);
|
||||
}catch (Exception e) {
|
||||
if(e instanceof MaatConvertException||e instanceof CallExternalProceduresException) {
|
||||
throw e;
|
||||
}else {
|
||||
e.printStackTrace();
|
||||
throw new CallExternalProceduresException();
|
||||
}
|
||||
}else{
|
||||
throw new MaatConvertException(resultMap.get("error")!=null?resultMap.get("error").toString():resultMap.get("message").toString());
|
||||
}
|
||||
return entity;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user