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

📄 codemanager.java

📁 网上商店
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package cn.edu.ujn.srms.code;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Vector;
import javax.servlet.http.HttpServletRequest;

import cn.edu.ujn.srms.pub.util.ParamUtils;
import cn.edu.ujn.srms.pub.conn.SQLBean;

public class CodeManager {
	private static SQLBean dbc = null;

	protected int id, parentid;

	protected String name, sequenceNo, code, level, note, node;

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getLevel() {
		return level;
	}

	public void setLevel(String level) {
		this.level = level;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getNode() {
		return node;
	}

	public void setNode(String node) {
		this.node = node;
	}

	public String getNote() {
		return note;
	}

	public void setNote(String note) {
		this.note = note;
	}

	public int getParentid() {
		return parentid;
	}

	public void setParentid(int parentid) {
		this.parentid = parentid;
	}

	public String getSequenceNo() {
		return sequenceNo;
	}

	public void setSequenceNo(String sequenceNo) {
		this.sequenceNo = sequenceNo;
	}

	public CodeManager(boolean Conn) {
		if (Conn) {
			try {
				dbc = new SQLBean();
			} catch (Exception e) {
				System.err.println(e);
			}
		}
	};

	/***************************************************************************
	 * 添加新代码类型 *
	 **************************************************************************/
	public int addCodeType(HttpServletRequest request) throws Exception {
		request.setCharacterEncoding("GBK");
		String codetype_name = ParamUtils.getString(request, "name", "");
		String code = ParamUtils.getString(request, "code", "");
		String sequenceNo = ParamUtils.getString(request, "sequenceNo", "1");
		System.out.println("--中文测试--:" + codetype_name);
		boolean foundErr = false;
		int codetypeid = -1;

		String errMsg = "";
		ResultSet rs;
		if (!foundErr) {
			dbc
					.prepareStatement("Select * from srms_dmk where NAME=? and PARENTID=-1");
			dbc.setString(1, codetype_name);
			rs = dbc.executeQuery();
			if (rs.next()) {
				rs.close();
				foundErr = true;
				return codetypeid;
			}
		}

		String note = ParamUtils.getString(request, "note", "");
		if (!foundErr) {
			String sql = "INSERT INTO srms_dmk (NAME,PARENTID,CODE,NOTE,sequenceNo)"
					+ " VALUES ('"
					+ codetype_name
					+ "',-1,'"
					+ code
					+ "','"
					+ note + "','" + sequenceNo + "')";
			dbc.executeUpdate(sql);
			dbc
					.prepareStatement("Select ID from srms_dmk where NAME=? and PARENTID=-1");
			dbc.setString(1, codetype_name);
			rs = dbc.executeQuery();
			rs.next();
			codetypeid = rs.getInt("ID");
		}
		dbc.close();
		if (foundErr)
			throw new Exception(errMsg);
		return codetypeid;
	}

	/***************************************************************************
	 * 添加新代码内容 *
	 **************************************************************************/
	public int addCode(HttpServletRequest request) throws Exception {
		boolean foundErr = false;
		String id = ParamUtils.getString(request, "parentid", "");
		int parentid = Integer.parseInt(id);
		int childid = -1;
		String code = ParamUtils.getString(request, "code", "");
		String name = ParamUtils.getString(request, "name", "");
		String note = ParamUtils.getString(request, "note", "");
		String sequenceNo = ParamUtils.getString(request, "sequenceNo", "1");
		String errMsg = "";
		ResultSet rs;
		if (!foundErr) {
			rs = dbc.executeQuery("Select * from srms_dmk where PARENTID="
					+ parentid + " and NAME='" + name + "'");
			if (rs.next()) {
				rs.close();
				errMsg = errMsg
						+ "□ 您输入的表项在指定的代码表中已经存在!<br>□ 五秒钟后会自动返回上一页。<br><meta HTTP-EQUIV=REFRESH REVIEW_README='5; URL=javascript:history.go(-1)'>";
				foundErr = true;
			}
			rs.close();
		}
		if (!foundErr) {
			String sql = "INSERT INTO srms_dmk (PARENTID,CODE,NAME,NOTE,sequenceNo"
					+ ") VALUES ("
					+ parentid
					+ ",'"
					+ code
					+ "','"
					+ name
					+ "','" + note + "','" + sequenceNo + "')";
			dbc.executeUpdate(sql);
			rs = dbc.executeQuery("Select id from srms_dmk where PARENTID="
					+ parentid + " and NAME='" + name + "'");
			rs.next();
			childid = rs.getInt("id");
			rs.close();
		}
		dbc.close();
		return childid;
	}

	/***************************************************************************
	 * 添加新资料内容 *
	 **************************************************************************/
	public static int appCode(HttpServletRequest request) throws Exception {
		boolean foundErr = false;
		// ApplyTable applyTable = new ApplyTable(true);
		String id = ParamUtils.getString(request, "parentid", "");
		int parentid = Integer.parseInt(id);
		int childid = -1;
		String code = ParamUtils.getString(request, "code", "");
		String name = ParamUtils.getString(request, "name", "");
		String value = ParamUtils.getString(request, "note", "");

		String errMsg = "";
		ResultSet rs;
		if (!foundErr) {
			rs = dbc.executeQuery("Select * from srms_dmk where PARENTID="
					+ parentid + " and NAME='" + name + "'");
			if (rs.next()) {
				rs.close();
				errMsg = errMsg
						+ "□ 您输入的表项在指定的代码表模版已经存在!<br>□ 五秒钟后会自动返回上一页。<br><meta HTTP-EQUIV=REFRESH REVIEW_README='5; URL=javascript:history.go(-1)'>";
				foundErr = true;
			}
			rs.close();
		}
		if (!foundErr) {
			String sql = "INSERT INTO srms_dmk (PARENTID,CODE,NAME,NOTE) VALUES ("
					+ parentid
					+ ",'"
					+ code
					+ "','"
					+ name
					+ "','"
					+ value
					+ "',')";
			dbc.executeUpdate(sql);
			rs = dbc.executeQuery("Select id from srms_dmk where PARENTID="
					+ parentid + " and NAME='" + name + "'");
			rs.next();
			childid = rs.getInt("id");
			rs.close();
		}
		dbc.close();
		return childid;
	}

	/***************************************************************************
	 * 读出节点信息 *
	 **************************************************************************/
	public CodeManager getById(int id) throws Exception {
		CodeManager codeManager = new CodeManager(false);
		String sql = "select * from srms_dmk where id=" + id;
		ResultSet rs = dbc.executeQuery(sql);
		// System.out.println("criterion_id: " + id);
		rs.next();
		codeManager.setId(rs.getInt("id"));
		codeManager.setParentid(rs.getInt("parentid"));
		codeManager.setCode(rs.getString("code"));
		codeManager.setName(rs.getString("name"));
		codeManager.setSequenceNo(rs.getString("sequenceNo"));
		// System.out.println(criterion.criterionName);
		codeManager.setNote(rs.getString("note"));
		// codeManager.setType(rs.getInt("type"));
		return codeManager;

	}

	/***************************************************************************
	 * 读出所有通用代码表的资料 *
	 **************************************************************************/
	public ArrayList loadAll() {
		ArrayList codelist = new ArrayList();
		try {
			String sql = "select * from srms_dmk order by id";
			ResultSet rs = dbc.executeQuery(sql);
			rs.last();// 移动到最后一行
			int row = rs.getRow();// 得到总记录数
			if (row <= 0) {// 如果没有子结点
				return null;// 返回null
			} else {// 如果有子结点
				rs.beforeFirst();
				while (rs.next()) {
					CodeManager codeManager = new CodeManager(false);
					codeManager.setId(rs.getInt("ID"));
					codeManager.setName(rs.getString("NAME"));
					codeManager.setParentid(rs.getInt("PARENTID"));
					codeManager.setCode(rs.getString("CODE"));
					codeManager.setNote(rs.getString("NOTE"));
					codeManager.setSequenceNo(rs.getString("sequenceNo"));
					codelist.add(codeManager);
				}
				rs.close();
				return codelist;// 返回该记录的所有子结点
			}
		} catch (Exception e) {
			System.err.println(e);
		}
		return codelist;
	}
	
	/***************************************************************************
	 * 根据根节点的ID读出所有通用代码表的资料 *
	 **************************************************************************/
	public ArrayList loadAllbyId(int codeid) {
		ArrayList codelist = new ArrayList();		
		try {
			String sql = "select * from srms_dmk where ID='"+codeid+"' order by sequenceno,id";
			ResultSet rs = dbc.executeQuery(sql);			
			rs.last();// 移动到最后一行
			int row = rs.getRow();// 得到总记录数
			//System.out.println("----测试:----总记录数:"+row);
			if (row <= 0) {// 如果没有子结点
				return null;// 返回null
			} else {// 如果有子结点
				rs.beforeFirst();
				while (rs.next()) {
					CodeManager codeManager = new CodeManager(false);
					codeManager.setId(rs.getInt("ID"));
					codeManager.setName(rs.getString("NAME"));
					codeManager.setParentid(rs.getInt("PARENTID"));
					codeManager.setCode(rs.getString("CODE"));
					codeManager.setNote(rs.getString("NOTE"));
					codeManager.setSequenceNo(rs.getString("sequenceNo"));
					codelist.add(codeManager);					
					if(codeManager.canExpand(codeid))
					{   
						codelist=codeManager.loadChild(codeid, codelist,dbc);
					}
				}
				rs.close();
				return codelist;// 返回该记录的所有子结点
			}
		} catch (Exception e) {
			System.err.println(e);
		}
		return codelist;
	}
	

⌨️ 快捷键说明

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