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/specific/SpecificServiceCfgService.java

150 lines
4.9 KiB
Java
Raw Normal View History

2018-03-17 17:09:19 +08:00
package com.nis.web.service.specific;
import java.util.Date;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
2018-03-17 17:09:19 +08:00
import com.beust.jcommander.internal.Lists;
import com.nis.domain.Page;
import com.nis.domain.specific.ConfigGroupInfo;
2018-03-17 17:09:19 +08:00
import com.nis.domain.specific.SpecificServiceCfg;
import com.nis.util.ConfigServiceUtil;
2018-03-17 17:09:19 +08:00
import com.nis.web.dao.specific.SpecificServiceCfgDao;
import com.nis.web.service.BaseService;
@Service
public class SpecificServiceCfgService extends BaseService{
@Autowired
private SpecificServiceCfgDao specificServiceCfgDao;
/**
* 根据id查询对象
* @param specServiceId
* @return
*/
public SpecificServiceCfg getBySpecServiceId(Integer specServiceId) {
return specificServiceCfgDao.getBySpecServiceId(specServiceId);
}
/**
* 查询所有符合条件的顶层分页
* @param page
* @param specificServiceCfg
* @return
*/
public Page<SpecificServiceCfg> findTopPage(Page<SpecificServiceCfg> page, SpecificServiceCfg specificServiceCfg){
// 设置分页参数
specificServiceCfg.setPage(page);
// 执行分页查询
List<SpecificServiceCfg> list = Lists.newArrayList();
list = specificServiceCfgDao.findTopPage(specificServiceCfg);
SpecificServiceCfg ss = new SpecificServiceCfg();
ss.setSpecServiceId(0);
for(SpecificServiceCfg ssc:list){
ssc.setParent(ss);
}
page.setList(list);
return page;
}
/**
* 查询所有符合条件的数据
* @param specificServiceCfg
* @return
*/
public List<SpecificServiceCfg> findAllSpecificServiceCfg(SpecificServiceCfg specificServiceCfg, String orderBy) {
return specificServiceCfgDao.findAllSpecificServiceCfg(specificServiceCfg,orderBy);
2018-03-17 17:09:19 +08:00
}
/**
* 保存或修改
* @param specificServiceCfg
* @throws Exception
2018-03-17 17:09:19 +08:00
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveOrUpdate(SpecificServiceCfg specificServiceCfg) throws Exception {
if(specificServiceCfg.getGroupId()==null || specificServiceCfg.getGroupId()==0){
Integer groupId = ConfigServiceUtil.getId(2, 1).get(0);
specificServiceCfg.setGroupId(groupId);
}
//新增协议分组
ConfigGroupInfo group = specificServiceCfgDao.getConfigGroupInfoByGroupId(specificServiceCfg.getGroupId());
if(group==null){
group = new ConfigGroupInfo();
group.setGroupId(specificServiceCfg.getGroupId());
group.setGroupName(specificServiceCfg.getSpecServiceName());
group.setIsIssued(0);
group.setGroupType(1);
specificServiceCfgDao.insertConfigGroupInfo(group);
}
if(specificServiceCfg.getSpecServiceId()==null){//新增
if(specificServiceCfg.getIsLeaf()==null){
if(specificServiceCfg.getParent().getSpecServiceId().equals(0)){
specificServiceCfg.setIsLeaf(0);
}else{
specificServiceCfg.setIsLeaf(1);
}
}
2018-03-17 17:09:19 +08:00
specificServiceCfg.setIsValid(1);
specificServiceCfg.setOpTime(new Date());
specificServiceCfgDao.insert(specificServiceCfg);
}else{//修改
if(specificServiceCfg.getIsLeaf()==null){
if(specificServiceCfg.getParent().getSpecServiceId().equals(0)){
specificServiceCfg.setIsLeaf(0);
}else{
specificServiceCfg.setIsLeaf(1);
}
}
2018-03-17 17:09:19 +08:00
specificServiceCfg.setOpTime(new Date());
specificServiceCfgDao.update(specificServiceCfg);
2018-03-17 17:09:19 +08:00
}
}
/**
* 删除
* @param specificServiceCfg
* @throws Exception
2018-03-17 17:09:19 +08:00
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void delete(String mulitId){
2018-03-17 17:09:19 +08:00
String[] ids = mulitId.split(",");
for(String id:ids){
if (!id.equals("")) {
SpecificServiceCfg specificServiceCfg = specificServiceCfgDao.getBySpecServiceId(Integer.valueOf(id));
List<SpecificServiceCfg> list = Lists.newArrayList();
//找出所有下级
if(specificServiceCfg!=null){
SpecificServiceCfg.sortList(list, specificServiceCfgDao.findAllSpecificServiceCfg(new SpecificServiceCfg(),""), specificServiceCfg.getSpecServiceId(), true);
2018-03-17 17:09:19 +08:00
list.add(specificServiceCfg);
for(SpecificServiceCfg ss:list){
ss.setIsValid(0);
specificServiceCfgDao.delete(ss);
}
}
}
}
}
/**
* 根据specServiceId查询所有下级
* @param specServiceId
* @return
*/
public List<SpecificServiceCfg> getChildrenById(Integer specServiceId) {
return specificServiceCfgDao.getChildrenById(specServiceId);
}
public Integer getParentType(Integer specServiceId) {
return specificServiceCfgDao.getParentType(specServiceId);
}
public Integer getParentCode(Integer specServiceId) {
return specificServiceCfgDao.getParentCode(specServiceId);
}
public SpecificServiceCfg getRepeat (Integer code,Integer cfgType,Integer parentId) {
return specificServiceCfgDao.getRepeat(code,cfgType,parentId);
}
2018-03-17 17:09:19 +08:00
}