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
2018-03-17 17:09:19 +08:00

120 lines
3.6 KiB
Java

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 com.beust.jcommander.internal.Lists;
import com.nis.domain.Page;
import com.nis.domain.specific.SpecificServiceCfg;
import com.nis.util.StringUtil;
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) {
return specificServiceCfgDao.findAllSpecificServiceCfg(specificServiceCfg);
}
/**
* 保存或修改
* @param specificServiceCfg
*/
public void saveOrUpdate(SpecificServiceCfg specificServiceCfg, Integer oldId) {
if(oldId==null){//新增
specificServiceCfg.setIsValid(1);
specificServiceCfg.setOpTime(new Date());
specificServiceCfgDao.insert(specificServiceCfg);
}else{//修改
specificServiceCfg.setOpTime(new Date());
//修改id则将其子类的parent_id一并修改
if(oldId!=specificServiceCfg.getSpecServiceId()){
//找出所有子类
List<SpecificServiceCfg> list = specificServiceCfgDao.getChildrenById(oldId);
SpecificServiceCfg se =new SpecificServiceCfg();
se.setSpecServiceId(specificServiceCfg.getSpecServiceId());
for(SpecificServiceCfg ss:list){
if(ss!=null){
ss.setParent(se);
specificServiceCfgDao.update(ss,ss.getSpecServiceId());
}
}
}
specificServiceCfgDao.update(specificServiceCfg,oldId);
}
}
/**
* 删除
* @param specificServiceCfg
*/
public void delete(String mulitId) {
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);
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);
}
}