package com.vst.service.impl;
import com.vst.dao.DiameterDao;
import com.vst.model.Diameter;
import com.vst.model.Gost;
import com.vst.service.DiameterManager;
import com.vst.util.BeanUtils;
import org.apache.commons.dbcp.BasicDataSource;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
/**
* Created by IntelliJ IDEA.
* User: And Lilia
* Date: 12.05.2009
* Time: 17:39:21
* To change this template use File | Settings | File Templates.
*/
public class DiameterManagerImpl implements DiameterManager {
DiameterDao diameterDao;
public void setDiameterDao(DiameterDao diameterDao) {
this.diameterDao = diameterDao;
}
public void insert(Diameter diameter) {
diameterDao.insert(diameter);
}
public void update(Diameter diameter) {
diameterDao.update(diameter);
}
public void delete(Diameter diameter) {
diameterDao.delete(diameter);
}
public Diameter getDiameterById(Integer id) {
return diameterDao.getDiameterById(id);
}
public List getListDiameter() {
return diameterDao.getListDiameter();
}
public List getListDiameter(Integer page) {
return diameterDao.getListDiameter(page);
}
public boolean exist(Diameter diameter) {
List list=diameterDao.getListDiameter();
for (int i=0; i<list.size(); i++){
Diameter diam=(Diameter)list.get(i);
Double count=diameter.getDiametrCount() ;
Gost gost=diameter.getGost();
if (diam.getGost().getGostId().equals(gost.getGostId())
&& diam.getDiametrCount().equals(count)){
return true;
}
}
return false; //To change body of implemented methods use File | Settings | File Templates.
}
public List getThListByDiameter(Integer id,String currentPath) throws SQLException, IOException {
BasicDataSource basicDataSource= (BasicDataSource) BeanUtils.getBean("dataSource",currentPath);
Properties props = new Properties();
props.setProperty("driver.url", "jdbc:mysql://localhost/vstbase");
props.setProperty("driver.class",basicDataSource.getDriverClassName());
props.setProperty("user",basicDataSource.getUsername());
props.setProperty("password",basicDataSource.getPassword());
return diameterDao.getThListByDiameter(id,currentPath, props);
}
public List getListByGostId(Integer id) {
List diameterList=diameterDao.getListDiameter();
for (int i=0; i<diameterList.size(); i++){
Diameter diameter=(Diameter)diameterList.get(i);
if (!diameter.getGost().getGostId().equals(id))
{
diameterList.remove(diameter);
}
}
return diameterList;
}
public List getListByThId(Integer id) {
List resultList=new ArrayList();
List diametrList=diameterDao.getListDiameter();
for (int i=0; i<diametrList.size(); i++){
Diameter diameter=(Diameter)diametrList.get(i);
if (diameter.getDiametrId().equals(id)){
resultList.add(diameter);
}
}
return resultList;
}
}