This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
k18-ntcs-web-ntc/src/main/java/com/nis/web/service/configuration/AvCfgService.java

207 lines
7.3 KiB
Java
Raw Normal View History

package com.nis.web.service.configuration;
import java.io.File;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.json.JSONObject;
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.MaatConvertException;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.FileUtils;
import com.nis.util.StringUtil;
import com.nis.web.dao.configuration.AvCfgDao;
import com.nis.web.security.UserUtils;
import com.nis.web.service.BaseService;
/**
* 音视频配置相关事务类
* @author dell
*
*/
@Service
public class AvCfgService extends BaseService{
// @Autowired
// protected FunctionRegionDictDao functionRegionDictDao;
// @Autowired
// protected FunctionServiceDictDao functionServiceDictDao;
@Autowired
protected AvCfgDao avCfgDao;
public AvFileSampleCfg getAvFileSampleById(Long cfgId){
return avCfgDao.getAvFileSampleById(cfgId);
}
public AvSignSampleCfg getAvSignSampleById(Long cfgId){
return avCfgDao.getAvSignSampleById(cfgId);
}
public Page<AvFileSampleCfg> getAvFileSampleList(Page<AvFileSampleCfg> page, AvFileSampleCfg entity){
// 生成数据权限过滤条件dsf为dataScopeFilter的简写在xml中使用 ${sqlMap.dsf}调用权限SQL
entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"a"));
entity.setPage(page);
List<AvFileSampleCfg> list = avCfgDao.getAvFileSampleList(entity);
page.setList(list);
return page;
}
public Page<AvSignSampleCfg> getAvSignSampleList(Page<AvSignSampleCfg> page, AvSignSampleCfg entity){
// 生成数据权限过滤条件dsf为dataScopeFilter的简写在xml中使用 ${sqlMap.dsf}调用权限SQL
entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"a"));
entity.setPage(page);
List<AvSignSampleCfg> list = avCfgDao.getAvSignSampleList(entity);
page.setList(list);
return page;
}
public void saveOrUpdateAvFileSample(AvFileSampleCfg entity){
if(entity.getCfgId()==null){
entity.setCreatorId(UserUtils.getUser().getId());
entity.setCreateTime(new Date());
//调用服务接口获取compileId
Integer compileId = 0;
try {
List<Integer> compileIds = ConfigServiceUtil.getId(1,1);
if(!StringUtil.isEmpty(compileIds)){
compileId = compileIds.get(0);
}
} catch (Exception e) {
e.printStackTrace();
logger.info("获取编译ID出错");
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
}
if(compileId!=0){
entity.setCompileId(compileId);
avCfgDao.insertAvFileSample(entity);
}else{
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>");
}
}else{
entity.setEditorId(UserUtils.getUser().getId());
entity.setEditTime(new Date());
entity.setIsValid(0);
entity.setIsAudit(0);
avCfgDao.updateAvFileSample(entity);
}
}
public void saveOrUpdateAvSignSample(AvSignSampleCfg entity){
if(entity.getCfgId()==null){
entity.setCreatorId(UserUtils.getUser().getId());
entity.setCreateTime(new Date());
//调用服务接口获取compileId
Integer compileId = 0;
try {
List<Integer> compileIds = ConfigServiceUtil.getId(1,1);
if(!StringUtil.isEmpty(compileIds)){
compileId = compileIds.get(0);
}
} catch (Exception e) {
e.printStackTrace();
logger.info("获取编译ID出错");
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
}
if(compileId!=0){
entity.setCompileId(compileId);
avCfgDao.insertAvSignSample(entity);
}else{
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>");
}
}else{
entity.setEditorId(UserUtils.getUser().getId());
entity.setEditTime(new Date());
entity.setIsValid(0);
entity.setIsAudit(0);
avCfgDao.updateAvSignSample(entity);
}
}
public void updateAvFileSampleValid(Integer isAudit,Integer isValid,String ids){
AvFileSampleCfg entity = new AvFileSampleCfg();
String[] idArray = ids.split(",");
for(String id :idArray){
entity.setCfgId(Long.parseLong(id));
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setEditorId(UserUtils.getUser().getId());
entity.setEditTime(new Date());
avCfgDao.updateAvFileSampleValid(entity);
}
}
public void auditAvFileSample(AvFileSampleCfg entity,Integer isAudit) throws MaatConvertException{
//修改数据库审核状态信息
avCfgDao.auditAvFileSample(entity);
List<AvFileSampleCfg> list = new ArrayList<AvFileSampleCfg>();
list.add(entity);
//一条配置提交一次综合服务
if(isAudit==1){
//调用服务接口下发配置数据
String json=gsonToJson(list);
logger.info("音视频文件样例下发配置参数:"+json);
//调用服务接口下发配置
ToMaatResult result = ConfigServiceUtil.postCallbackCfg(json);
logger.info("音视频文件样例配置下发响应信息:"+result.getMsg());
}else if(isAudit==3){
//调用服务接口取消配置
String json=gsonToJson(list);
logger.info("音视频文件样例下发配置参数:"+json);
//调用服务接口下发配置
ToMaatResult result = ConfigServiceUtil.put(json,2);
logger.info("音视频文件样例取消配置响应信息:"+result.getMsg());
}
}
public void updateAvSignSampleValid(Integer isAudit,Integer isValid,String ids){
AvSignSampleCfg entity = new AvSignSampleCfg();
String[] idArray = ids.split(",");
for(String id :idArray){
entity.setCfgId(Long.parseLong(id));
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setEditorId(UserUtils.getUser().getId());
entity.setEditTime(new Date());
avCfgDao.updateAvSignSampleValid(entity);
}
}
public void auditAvSignSample(AvSignSampleCfg entity,Integer isAudit) throws MaatConvertException{
avCfgDao.auditAvSignSample(entity);
List<AvSignSampleCfg> list = new ArrayList<AvSignSampleCfg>();
list.add(entity);
if(isAudit==1){
//调用服务接口下发配置数据
String json=gsonToJson(list);
logger.info("文件样例下发配置参数:"+json);
//调用服务接口下发配置
try {
ToMaatResult result = ConfigServiceUtil.postCallbackCfg(json);
logger.info("音视频标志样例配置下发响应信息:"+result.getMsg());
} catch (Exception e) {
e.printStackTrace();
logger.info("音视频标志样例配置下发失败");
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
}
}else if(isAudit==3){
//调用服务接口取消配置
String json=gsonToJson(list);
logger.info("标志样例下发配置参数:"+json);
//调用服务接口取消配置
ToMaatResult result = ConfigServiceUtil.put(json, 2);
logger.info("音视频标志样例配置取消配置响应信息:"+result.getMsg());
}
}
}