
com.quhaodian.approve.data.dao.impl.FlowDaoImpl Maven / Gradle / Ivy
package com.quhaodian.approve.data.dao.impl;
import com.quhaodian.approve.data.dao.FlowDao;
import com.quhaodian.approve.data.entity.Flow;
import com.quhaodian.data.core.CriteriaDaoImpl;
import com.quhaodian.data.core.Finder;
import com.quhaodian.data.core.Pagination;
import com.quhaodian.data.page.Filter;
import org.hibernate.Criteria;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.ArrayList;
import java.util.List;
@Repository
public class FlowDaoImpl extends CriteriaDaoImpl implements FlowDao {
public Pagination getPage(int pageNo, int pageSize) {
Criteria crit = createCriteria();
Pagination page = findByCriteria(crit, pageNo, pageSize);
return page;
}
public Flow findById(Long id) {
Flow entity = get(id);
return entity;
}
public Flow save(Flow bean) {
getSession().save(bean);
return bean;
}
public Flow deleteById(Long id) {
Flow entity = super.get(id);
if (entity != null) {
getSession().delete(entity);
}
return entity;
}
@Override
protected Class getEntityClass() {
return Flow.class;
}
@Autowired
public void setSuperSessionFactory(SessionFactory sessionFactory) {
super.setSessionFactory(sessionFactory);
}
@Override
public Flow findByOId(Integer catalog, Long id) {
Finder finder = Finder.create();
finder.append("from Flow f where f.oid =:oid");
finder.setParam("oid", id);
finder.append(" and f.catalog =:catalog");
finder.setParam("catalog", catalog);
return findOne(finder);
}
@Override
public int deleteForCatalog(Long oid, Integer catalog) {
int result = 0;
List filters = new ArrayList();
filters.add(Filter.eq("oid", oid));
filters.add(Filter.eq("catalog", catalog));
List tasks = findList(0, 1000, filters, null);
if (tasks != null && tasks.size() > 0) {
result = tasks.size();
for (Flow task : tasks) {
delete(task);
}
}
return result;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy