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

📄 orderdetailcontrol.java

📁 电信的网厅的整站代码
💻 JAVA
字号:
package com.doone.fj1w.fjmgr.order.page;

import com.doone.data.DataTable;
import com.doone.fj1w.fjmgr.order.CommonMethod;
import com.doone.fj1w.fjmgr.order.ProdOrderRestoreDAO;
import com.doone.fj1w.fjmgr.order.ProdorderDAO;

/**
 * <title>业务受理单控制器.</title>
 * @author predan
 *
 */
public class OrderDetailControl {

	/**
	 * 当前审核人员.
	 */
	private long staffId = 0L;
	
	/**
	 * 原单id.
	 */
	private String parentProdOrderId = "";
	
	/**
	 * 生成子单id.
	 */
	private String childProdOrderId = "";
	
	/**
	 * 上一次审核工单的id.
	 */
	private String lastProdOrderId = "";
	
	/**
	 * 工单当前的审核状态.
	 */
	private String[] statu = null;
	
	private String attention = "";

	/**
	 * 工单是查看权限,还是操作权限.默认为查看权限.
	 */
	private boolean permission = true;
	
	/**
	 * 
	 * @param prodorderId
	 */
	public OrderDetailControl(String prodorderId,long staffId) {
		this.parentProdOrderId = prodorderId;
		this.staffId = staffId;
	}
    
	public DataTable control()throws RuntimeException{
		try {
			ProdorderDAO prodorderDAO = new ProdorderDAO();
			//获取上一次审核的工单id,放这里的目的是为了可以获取上一次审核的内容,如果一开始不取出来,将会覆盖.
			lastProdOrderId = prodorderDAO.getProdHistoryPId(parentProdOrderId);
			//获取原工单状态.
			statu = prodorderDAO.getOrderState(parentProdOrderId);
			//工单操作权限控制.
			if (CommonMethod.isPermission(statu[1])) {
				String msg = prodorderDAO.getValidataOrder(parentProdOrderId, 
						                                   (new Long(staffId)).toString());
				permission = false;
				if (msg.equals("-2")) {
					throw new RuntimeException("数据库连接出错!");
				} else if (msg.equals("-3")) {
					throw new RuntimeException("未知异常!");
				} else if (msg.equals("-1")) {
					throw new RuntimeException("受理单冲突,系统中存在多条id一样的受理单!");
				} else if (msg.equals("0")) {
					throw new RuntimeException("锁定受理单失败!");
				} else if (msg.equals("1")) {
					throw new RuntimeException("查询原受理单失败!");
				} else if (msg.equals("2")) {
					throw new RuntimeException("添加历史记录单失败!");
				} else if (msg.equals("3")) {
					throw new RuntimeException("查询历史记录单id失败,请重新受理!");
				} else if (msg.startsWith("4~")) {
					permission = true;
					String ss[] = msg.split("~");
					statu[1] = "9";//工单被锁定后,其它用户只能浏览,等同于完成权限.
                    if( ss.length >= 2){
                       attention = "提示:受理单被用户:" + ss[1] + "锁定。";
                    }else{
                       attention = "提示:受理单被锁定。"; 
                    }
				} else {
					//生成的新子单.
					childProdOrderId = msg;
				}
			} 
		
			if(permission){
			    //只有查看操作权限,上面已经取出一次审核的id
				childProdOrderId = lastProdOrderId;
			}
			
			//获取新子单信息.
			return prodorderDAO.getProdorderDetail(childProdOrderId);
			
		} catch (RuntimeException rux) {
			throw rux;
		}
	}

	public String[] getStatu() {
		return statu;
	}

	public String getChildProdOrderId() {
		return childProdOrderId;
	}

	public String getParentProdOrderId() {
		return parentProdOrderId;
	}
	
	public String getAttention() {
		return attention;
	}
	
	/**
	 * 获取上一次审核的结果
	 * @return
	 */
	public DataTable lastReviewMessage(){
		ProdOrderRestoreDAO prodOrderRestoreDAO = new ProdOrderRestoreDAO();
		return prodOrderRestoreDAO.getProdOrderRestoreInfo(this.lastProdOrderId);
	}

	/**
	 * 工单的操作权限.
	 * @return
	 */
	public boolean isPermission() {
		return permission;
	}

}

⌨️ 快捷键说明

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