`
jxqc_job
  • 浏览: 529 次
社区版块
存档分类
最新评论
收藏列表
标题 标签 来源
DQDocumentDaoImpl.java dqdocumentdaoimpl.java
package com.tdtech.pdm.create.dao.impl;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.HibernateTemplate;

import com.tdtech.pdm.create.dao.DQDocumentDao;
import com.tdtech.pdm.create.pojo.DQDocumentPojo;
public class DQDocumentDaoImpl implements DQDocumentDao {
	private HibernateTemplate hibernateTemplate;	
	public HibernateTemplate getHibernateTemplate() {
		return hibernateTemplate;
	}
	public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
		this.hibernateTemplate = hibernateTemplate;
	}
	/**
	 * 创建鼎桥文档
	 */
	public boolean createDQDocument(DQDocumentPojo dQDocumentPojo){
		//System.out.println("创建鼎桥文档-dao");
		boolean flag=false;
		try{
			this.getHibernateTemplate().save(dQDocumentPojo);
			flag=true;
		}catch(Exception e){
			e.printStackTrace();
		}
		return flag;
	}
	/**
	 * 查看所有的鼎桥文档
	 */
	public List<DQDocumentPojo> queryAllDQDocument(){
		List<DQDocumentPojo> list=new ArrayList<DQDocumentPojo>();
		String hql="from DQDocumentPojo d order by id asc";
		try{
			list=this.getHibernateTemplate().find(hql);
		}catch(Exception e){
			e.printStackTrace();
		}
		return list;
	}
	/**
	 * 分页查询所有的鼎桥文档
	 */
	public List<DQDocumentPojo> queryPageDQDocument(final int currentPage,final int pageSize){
		List<DQDocumentPojo> list=new ArrayList<DQDocumentPojo>();
		list=this.getHibernateTemplate().execute(new HibernateCallback(){
			public Object doInHibernate(Session session)
					throws HibernateException, SQLException {
				String hql="from DQDocumentPojo d order by d.id desc";
				Query query = session.createQuery(hql);
				query.setFirstResult((currentPage-1)*pageSize); //该参数为从第几条记录开始
				query.setMaxResults(pageSize);  //每页显示的记录数
				return query.list();
			}
		});
		return list;
	}
	/**
	 * 查看单个鼎桥文档
	 */
	public DQDocumentPojo queryDQDocumentById(int id){
		DQDocumentPojo dQDocumentPojo=null;
		String hql="from DQDocumentPojo d where d.id="+id;
		try{
			this.getHibernateTemplate().find(hql);
		}catch(Exception e){
			e.printStackTrace();
		}
		return dQDocumentPojo;
	}
	/**
	 * 删除鼎桥文档
	 */
	public boolean deleteDQDocumentById(final int id){
		boolean flag=false;
		try{
			//System.out.println("开始");
			DQDocumentPojo d=this.getHibernateTemplate().get(DQDocumentPojo.class, id);
			this.getHibernateTemplate().delete(d);
			flag=true;
		}catch(Exception e){
			e.printStackTrace();
		}
		return flag;
	}
	/**
	 * 修改鼎桥文档
	 */
	public boolean updateDQDocument(DQDocumentPojo dQDocumentPojo){
		System.out.println("修改鼎桥文档-dao");
		boolean flag=false;
		try{
			this.getHibernateTemplate().update(dQDocumentPojo);
			flag=true;
		}catch(Exception e){
			e.printStackTrace();
		}
		return flag;
	}
	/**
	 * 生成文档编码
	 */
	public String generateDocumentcode(){
		String documentcode=null;
		List<DQDocumentPojo> list=new ArrayList<DQDocumentPojo>();
		list=this.getHibernateTemplate().execute(new HibernateCallback(){
			public Object doInHibernate(Session session)
					throws HibernateException, SQLException {
				String hql="from DQDocumentPojo d where d.documentcode like ? order by d.documentcode desc";
				Query query=session.createQuery(hql);
				query.setString(0, "TD-010-%");
				return query.list();
			}
		});
		if(list.size()>0){
			documentcode=list.get(0).getDocumentcode();
		}else{
			documentcode=" ";
		}
		StringBuffer s=new StringBuffer();
		String newDocumentcode=null;
		int currentS=0;
		if(documentcode!=null && (!(" ".equals(documentcode)))){
			s=s.append(documentcode.substring(7));
			currentS=Integer.parseInt(s.toString());
			currentS=currentS+1;
			if(currentS<10){
				newDocumentcode="TD-010-"+"0000"+currentS;
			}else if(currentS<100){
				newDocumentcode="TD-010-"+"000"+currentS;
			}else if(currentS<1000){
				newDocumentcode="TD-010-"+"00"+currentS;
			}else if(currentS<10000){
				newDocumentcode="TD-010-"+"0"+currentS;
			}else{
				newDocumentcode="TD-010-"+currentS;
			}
		}else{
			newDocumentcode="TD-010-00001";
		}
		return newDocumentcode;
	}
}
Global site tag (gtag.js) - Google Analytics