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

📄 spoolertablemodel.java

📁 打印管理程序,测试完全通过.windows开发环境.
💻 JAVA
字号:
package jp.co.ntl.swing.ext.spooler;

import java.util.Locale;
import java.util.Vector;
import java.sql.Timestamp;

///import jp.co.ntl.paper.PaperInfo;
import jp.co.ntl.preference.PreferenceInfo;
import jp.co.ntl.spooler.SpoolerInfo;
import jp.co.ntl.Util;
import jp.co.ntl.swing.ext.AbstractInfoTableModel;

public class SpoolerTableModel extends AbstractInfoTableModel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	public static String		columnJOB;
	public static String		columnSTATUS;
	public static String		columnSPSERIAL;
	public static String		columnUSER;
	public static String		columnSIZE;
	public static String		columnCOPY;
	public static String		columnPAGE;
	public static String		columnDATE;
	public static String		columnPRINTER;
	public static String		columnPAPERSIZE;
	
	private final boolean	admin;
	private final String		language;
	
	public SpoolerTableModel(boolean admin, Vector vcSpoolerInfo, String language) {
		super(vcSpoolerInfo);
		
		this.admin = admin;
		this.language = language;
		
		Resource.load(new Locale(language, ""));
		
		columnJOB = Resource.getString(Resource.LIST_JOB);
		columnSTATUS = Resource.getString(Resource.LIST_STATUS);
		columnSPSERIAL = Resource.getString(Resource.LIST_SPSERIAL);
		columnUSER = Resource.getString(Resource.LIST_USER);
		columnSIZE = Resource.getString(Resource.LIST_SIZE);
		columnPAGE = Resource.getString(Resource.LIST_PAGE);
		columnCOPY = Resource.getString(Resource.LIST_COPY);
		columnDATE = Resource.getString(Resource.LIST_DATE);
		columnPRINTER = Resource.getString(Resource.LIST_PRINTER);
		columnPAPERSIZE = Resource.getString(Resource.LIST_PAPERSIZE);

		if (admin) {
			if (Util.getPreferenceInfo().getAuthType() != PreferenceInfo.AUTH_LOGIN) {
				this.columnNames = new String[] {
						columnJOB,
						columnSTATUS,
						columnSPSERIAL,
						columnUSER,
						columnPRINTER,
						columnSIZE,
						columnPAPERSIZE,
						columnCOPY,
						columnPAGE,
						columnDATE
				};
			} else {
				this.columnNames = new String[] {
						columnJOB,
						columnSTATUS,
						columnUSER,
						columnPRINTER,
						columnSIZE,
						columnPAPERSIZE,
						columnCOPY,
						columnPAGE,
						columnDATE
				};
			}
		} else {
			this.columnNames = new String[] {
					columnJOB,
					columnSTATUS,
					columnSIZE,
					columnPAPERSIZE,
					columnCOPY,
					columnPAGE,
					columnDATE
			};
		}
	}
	
	public boolean isAdmin() {
		return admin;
	}
	
	public Object getValueAt(int row, int column) {
		double	paperWidth, paperLength;

		if (vcInfo == null) {
			return null;
		}
		
		if (row >= vcInfo.size()) {
			return null;
		}
		
		if (column >= columnNames.length) {
			return null;
		}

		SpoolerInfo	splInfo = (SpoolerInfo)vcInfo.get(row);
		String	name = columnNames[column];
		if (name.equals(columnJOB)) {
			return splInfo.getJob();
		} else if (name.equals(columnSTATUS)) {
			// 2006.10.10 報嶞儃僞儞墴壓僼儕僢僋懳墳 lium mod start
			//return Util.getStatusString(language, splInfo.getStatus(), splInfo.getError());
			int status = splInfo.getStatus();
			if (splInfo.getQueType() == SpoolerInfo.PRINTING_QUEUE &&
					status == SpoolerInfo.SC_SPOOL_END) {
				status = SpoolerInfo.SC_PRINT;
			}
			return Util.getStatusString(language, status, splInfo.getError());
			// 2006.10.10 報嶞儃僞儞墴壓僼儕僢僋懳墳 lium mod end
		} else if (name.equals(columnSPSERIAL)) {
			return splInfo.getSPKeyInfo().getSerial();
		} else if (name.equals(columnUSER)) {
			if (splInfo.getSPKeyInfo().getUser().getUserName().equals("")) {
				return "-";
			} else {
				return splInfo.getSPKeyInfo().getUser().getUserName();
			}
		} else if (name.equals(columnPRINTER)) {
			if (splInfo.getPrinterInfo().getName().equals("")) {
				return "-";
			} else {
				return splInfo.getPrinterInfo().getName();
			}
		} else if (name.equals(columnCOPY)) {
			return new Integer(splInfo.getCopy());
		} else if (name.equals(columnPAGE)) {
			return new Integer(splInfo.getPage());
		} else if (name.equals(columnSIZE)) {
			return Util.getSizeString(language, splInfo.getSize());
		} else if (name.equals(columnDATE)) {
			return new Timestamp(splInfo.getDate()).toString();
		} else if (name.equals(columnPAPERSIZE)) {
			if (splInfo.getPaperSize().equals("")) {
				return "-";
			} else {
				paperWidth = (double)splInfo.getPaperWidth() / 10.0;
				paperLength = (double)splInfo.getPaperLength() / 10.0;

				if (paperWidth == 0.0 || paperLength == 0.0) {
					return splInfo.getPaperSize();
				} else {
					return
						splInfo.getPaperSize() + " (" +
						paperWidth + " mm x " +
						paperLength + " mm)";
				}
			}
		}
		
		return "";
	}
	
	public Class getColumnClass(int column) {
		if (columnNames == null) {
			return String.class;
		}
		if (column >= columnNames.length) {
			return String.class;
		}
		String name = columnNames[column];
		if (name.equals(columnJOB)) {
			return String.class;
		} else if (name.equals(columnSTATUS)) {
			return String.class;
		} else if (name.equals(columnSPSERIAL)) {
			return String.class;
		} else if (name.equals(columnUSER)) {
			return String.class;
		} else if (name.equals(columnPRINTER)) {
			return String.class;
		} else if (name.equals(columnCOPY)) {
			return Integer.class;
		} else if (name.equals(columnPAGE)) {
			return Integer.class;
		} else if (name.equals(columnSIZE)) {
			return String.class;
		} else if (name.equals(columnDATE)) {
			return String.class;
		}

		return super.getColumnClass(column);
	}
}

⌨️ 快捷键说明

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