⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rulemanageimp.java

📁 自己制作的联通CRM,支持客户分类,管理,升级,积分管理等等..
💻 JAVA
字号:
package com.jn0801.grademanage;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.TimeZone;

import javax.servlet.http.HttpServletRequest;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.jn0801.datadictionary.DataDictionary;
import com.jn0801.tools.DBConnection;
import com.jn0801.tools.PageDAO;

/**
 * 分级规则的实现类
 * 
 * @author jzh
 * 
 */
public class RuleManageImp extends HibernateDaoSupport implements RuleManageInf {

	/**
	 * 按编号删除分级规则
	 */
	public boolean deleteGradeRule(Long nid) {

		boolean tag = false;

		ScoreRule scoreRule = (ScoreRule) this.getHibernateTemplate().get(
				ScoreRule.class, nid);

		try {
			this.getHibernateTemplate().delete(scoreRule);
			tag = true;
		} catch (Exception e) {
			e.printStackTrace();
		}

		return tag;
	}

	/**
	 * 查询分级规则(按编码,名称,品牌)
	 */
	public List<ScoreRule> listGradeRule(String rulecode, String rulename,
			String rulebrand,HttpServletRequest request) {

		List<ScoreRule> list = new ArrayList<ScoreRule>();
		Connection conn = null;
		Statement stmt = null;
		ResultSet rs = null;
		String sql = "";
		
		//开始分页
		PageDAO pagedao = new PageDAO(request);
		pagedao.setPagesize(5);
		// 获取每页多少条
		int pagesize = pagedao.getPagesize();
		//获取总记录数
		sql = "select count(1) from score_rule where 1=1 ";
		if (rulecode != null && !rulecode.trim().equals(""))
			sql = sql + " and rulecode = '" + rulecode + "'";
		if (rulename != null && !rulename.trim().equals(""))
			sql = sql + " and rulename like '%" + rulename + "%'";
		if (rulebrand != null && !rulebrand.trim().equals(""))
			sql = sql + " and rulebrand = '" + rulebrand + "'";
		//总记录数
		int rscount = 0;

		try {
			
			conn = DBConnection.getConnection();
			stmt = conn.createStatement();
			rs = stmt.executeQuery(sql);
			
			while(rs.next()){
				rscount = rs.getInt(1);
			}
			
			//设置总记录数
			pagedao.setRscount(rscount);
			//获取总页数
			int pagecount = pagedao.getPageCount();
			// 获取当前页
			int currentpage = pagedao.getCurrentPage();
			//构建工具栏
			String pagetool = pagedao.pagetool(PageDAO.BbsText);
			request.setAttribute("pagetool", pagetool);
			//计算起始行和结束行
			int pastart = (currentpage-1)*pagesize+1; 
			int paend = currentpage*pagesize;
			
			
			sql = "select * from ("; 
			sql = sql + "select s.*,rownum as myrow from score_rule s where 1=1 ";
			if (rulecode != null && !rulecode.trim().equals(""))
				sql = sql + " and rulecode = '" + rulecode + "'";
			if (rulename != null && !rulename.trim().equals(""))
				sql = sql + " and rulename like '%" + rulename + "%'";
			if (rulebrand != null && !rulebrand.trim().equals(""))
				sql = sql + " and rulebrand = '" + rulebrand + "'";
			
			sql = sql + " and rownum <= " + paend;
			sql = sql + ")";
			sql = sql + " where myrow >= " + pastart;
			
			rs = stmt.executeQuery(sql);
			
			while (rs.next()) {

				ScoreRule scoreRule = new ScoreRule();
				scoreRule.setNid(rs.getLong("nid"));
				scoreRule.setRulecode(rs.getString("rulecode"));
				scoreRule.setRulename(rs.getString("rulename"));
				scoreRule.setRulebrand(rs.getString("rulebrand"));
				scoreRule.setRuletime(rs.getString("ruletime"));
				scoreRule.setCountgene(rs.getString("countgene"));
				scoreRule.setCountmodulus(rs.getLong("countmodulus"));
				scoreRule.setRuledesc(rs.getString("ruledesc"));
				scoreRule.setRuleexpression(rs.getString("ruleexpression"));
				scoreRule.setRulepri(rs.getString("rulepri"));
				scoreRule.setChecksign(rs.getString("checksign"));
				scoreRule.setFreezesign(rs.getString("freezesign"));
				scoreRule.setNumone(rs.getLong("numone"));
				scoreRule.setNumtwo(rs.getLong("numtwo"));
				scoreRule.setCardtype(rs.getString("cardtype"));
				scoreRule.setNumthree(rs.getLong("numthree"));
				scoreRule.setNumfour(rs.getLong("numfour"));

				list.add(scoreRule);

			}

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if (rs != null)
					rs.close();
				if (stmt != null)
					stmt.close();
				if (conn != null)
					conn.close();
			} catch (Exception e) {
				e.printStackTrace();
			}

		}

		return list;
	}

	/**
	 * 按编码查询分级规则
	 */
	public ScoreRule searchGradeRuleByCode(String rulecode,HttpServletRequest request) {

		ScoreRule scoreRule = null;

		List<ScoreRule> list = listGradeRule(rulecode, null, null,request);

		if (list != null && list.size() > 0) {
			scoreRule = list.get(0);
		}

		return scoreRule;
	}

	/**
	 * 按名称查询分级规则(模糊查找)
	 */
	public List<ScoreRule> searchGradeRuleByName(String rulename,HttpServletRequest request) {

		return listGradeRule(null, rulename, null,request);
	}

	/**
	 * 添加规则
	 */
	public boolean saveGradeRule(ScoreRule scoreRule, String suser) {

		boolean tag = false;

		try {
			this.getHibernateTemplate().save(scoreRule);

			// 插入日志表
			RuleLog ruleLog = new RuleLog();

			// 规则标号
			ruleLog.setRuleid(scoreRule.getNid());

			// 创建者
			ruleLog.setRulecreater(suser);

			// 创建时间
			Date date = new Date();
			SimpleDateFormat format = new SimpleDateFormat(
					"yyyy年MM月dd日 HH时mm分ss秒");
			format.setTimeZone(TimeZone.getTimeZone("GMT+08"));
			String createtime = format.format(date);
			ruleLog.setCreatetime(createtime);

			this.getHibernateTemplate().save(ruleLog);

			tag = true;
		} catch (Exception e) {
			e.printStackTrace();
		}

		return tag;
	}

	/**
	 * 按品牌查询分级规则
	 */
	public ScoreRule searchGradeRuleByBrand(String rulebrand,HttpServletRequest request) {

		ScoreRule scoreRule = null;

		List<ScoreRule> list = listGradeRule(null, null, rulebrand,request);

		if (list != null && list.size() > 0) {
			scoreRule = list.get(0);
		}

		return scoreRule;
	}

	/**
	 * 更新分级规则
	 */
	public boolean updateGradeRule(ScoreRule scoreRule, String ruleupdater) {

		boolean tag = false;

		try {

			this.getHibernateTemplate().update(scoreRule);

			// 插入日志表
			RuleLog ruleLog = new RuleLog();

			// 规则标号
			ruleLog.setRuleid(scoreRule.getNid());

			// 修改者
			ruleLog.setRuleupdater(ruleupdater);

			// 修改时间
			Date date = new Date();
			SimpleDateFormat format = new SimpleDateFormat(
					"yyyy年MM月dd日 HH时mm分ss秒");
			format.setTimeZone(TimeZone.getTimeZone("GMT+08"));
			String updatetime = format.format(date);
			ruleLog.setUpdatetime(updatetime);

			this.getHibernateTemplate().save(ruleLog);

			tag = true;

		} catch (Exception e) {
			e.printStackTrace();
		}

		return tag;
	}

	/**
	 * 根据编号查询分级规则
	 */
	public ScoreRule searchGradeRuleById(Long nid) {

		Connection conn = null;
		Statement stmt = null;
		ResultSet rs = null;
		ScoreRule scoreRule = null;
		String sql = "select * from score_rule where nid = " + nid;

		try {
			conn = DBConnection.getConnection();
			stmt = conn.createStatement();
			rs = stmt.executeQuery(sql);

			while (rs.next()) {

				scoreRule = new ScoreRule();
				scoreRule.setNid(rs.getLong("nid"));
				scoreRule.setRulecode(rs.getString("rulecode"));
				scoreRule.setRulename(rs.getString("rulename"));
				scoreRule.setRulebrand(rs.getString("rulebrand"));
				scoreRule.setRuletime(rs.getString("ruletime"));
				scoreRule.setCountgene(rs.getString("countgene"));
				scoreRule.setCountmodulus(rs.getLong("countmodulus"));
				scoreRule.setRuledesc(rs.getString("ruledesc"));
				scoreRule.setRuleexpression(rs.getString("ruleexpression"));
				scoreRule.setRulepri(rs.getString("rulepri"));
				scoreRule.setChecksign(rs.getString("checksign"));
				scoreRule.setFreezesign(rs.getString("freezesign"));
				scoreRule.setNumone(rs.getLong("numone"));
				scoreRule.setNumtwo(rs.getLong("numtwo"));
				scoreRule.setNumthree(rs.getLong("numthree"));
				scoreRule.setNumfour(rs.getLong("numfour"));
				scoreRule.setCardtype(rs.getString("cardtype"));
				scoreRule.setNumthree(rs.getLong("numthree"));
				scoreRule.setNumfour(rs.getLong("numfour"));

			}

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if (rs != null)
					rs.close();
				if (stmt != null)
					stmt.close();
				if (conn != null)
					conn.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}

		return scoreRule;
	}

	/**
	 * 查询所有分级规则
	 */
	public List<ScoreRule> searchAll() {
		List<ScoreRule> list = new ArrayList<ScoreRule>();
		Connection conn = null;
		Statement stmt = null;
		ResultSet rs = null;
		String sql = "select * from score_rule";
		
		try {
			
			conn = DBConnection.getConnection();
			stmt = conn.createStatement();
			rs = stmt.executeQuery(sql);
			
			while (rs.next()) {

				ScoreRule scoreRule = new ScoreRule();
				scoreRule.setNid(rs.getLong("nid"));
				scoreRule.setRulecode(rs.getString("rulecode"));
				scoreRule.setRulename(rs.getString("rulename"));
				scoreRule.setRulebrand(rs.getString("rulebrand"));
				scoreRule.setRuletime(rs.getString("ruletime"));
				scoreRule.setCountgene(rs.getString("countgene"));
				scoreRule.setCountmodulus(rs.getLong("countmodulus"));
				scoreRule.setRuledesc(rs.getString("ruledesc"));
				scoreRule.setRuleexpression(rs.getString("ruleexpression"));
				scoreRule.setRulepri(rs.getString("rulepri"));
				scoreRule.setChecksign(rs.getString("checksign"));
				scoreRule.setFreezesign(rs.getString("freezesign"));
				scoreRule.setNumone(rs.getLong("numone"));
				scoreRule.setNumtwo(rs.getLong("numtwo"));
				scoreRule.setCardtype(rs.getString("cardtype"));
				scoreRule.setNumthree(rs.getLong("numthree"));
				scoreRule.setNumfour(rs.getLong("numfour"));

				list.add(scoreRule);

			}

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if (rs != null)
					rs.close();
				if (stmt != null)
					stmt.close();
				if (conn != null)
					conn.close();
			} catch (Exception e) {
				e.printStackTrace();
			}

		}

		return list;
	}

	/**
	 * 查询数据字典
	 */
	public List listData(long npid) {
		List<DataDictionary> dataList = new ArrayList<DataDictionary>();
		String hql = "select data from DataDictionary data where 1=1";
		if (npid != -1) {
			hql = hql + " and npid=" + npid;
		}
		dataList = this.getHibernateTemplate().find(hql);
		return dataList;
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -