orderhisservice.java

来自「电信的网厅的整站代码」· Java 代码 · 共 255 行

JAVA
255
字号
package com.doone.fj1w.fjmgr.order;

import java.util.Map;

import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

import com.doone.data.DataTable;
import com.doone.util.FileLogger;

public class OrderHisService{
	
	static private FileLogger log = new FileLogger();
	
	/**
	 * <p>
	 * 分类方式的行.
	 * </p>
	 * 
	 * @param request
	 * @param response
	 * @param _map
	 * @return
	 */
	static public int getOrderMethodCount(ServletRequest request, ServletResponse response, Map _map) {
		return 1;
	}
	
	/**
	 * <p>
	 * 数据查询的分类方式,对每个分类的统计.
	 * </p>
	 * 
	 * @param request
	 * @param response
	 * @param _map
	 * @return
	 */
	static public String getOrderMethod(ServletRequest request, ServletResponse response, Map _map) {
		try {
			/**
			 * 状态 statu: 0: 所有订单 1: 待处理 7:回退 3: 暂存 2: 转派 4: 已作废 5: 已完成 6: 自己锁定 8:归档
			 */
			boolean flag = false;
			String param_Statu = (String) _map.get("STATE");
			//查询方式: 1.表示业务受理单,2.表示建议投诉单,3:表示故障单。
			String category    = (String) _map.get("CATE");
			
			if(category == null || 
					(!category.equals("1") && !category.equals("2") 
							               && !category.equals("3")))
				throw new UnsupportedOperationException("目前没有支持这一类型的工单。");	
			
			String[] statu = new String[] { "1","7","3","2","4","5", "6", "8" };
			String[] statuName = new String[] { "待处理","回退", "暂存", "转派","已作废", "已完成", "自己锁定","归档" };
			DataTable _dt = null;
			StringBuffer _sb = new StringBuffer();
			_sb.append("<table>");
			_sb.append("<tr>");
			_sb.append("<td style='cursor: default;'>");
			if (param_Statu == null || param_Statu.equals("0")) {
				// 显示所有
				for (int i = 0; i < statu.length; i++) {
					
					if(category.equals("1")){
						_dt = OrderHisDAO.getOrderMethod(_map, statu[i]);
					}
					else if(category.equals("2") || category.equals("3")){
						_dt = AppealHisDAO.getOrderMethod(_map, statu[i]);
					}
					
					if (_dt == null)
						continue;
					try {
						int count = _dt.getRow(0).getInt("count");
						if (count == 0)
							continue;
						_sb.append("<a href='javascript:' onclick='fnStateClick(this)'");
						_sb.append(" name='ACTION' value='");
						_sb.append(statu[i]);
						_sb.append("' style='color: white;'>");
						_sb.append(statuName[i]);
						_sb.append("</a>(<font color='red'>");
						_sb.append(count);
						_sb.append("</font>) &nbsp;&nbsp;");
						flag = true;
					} catch (RuntimeException rux) {
						log.warn(rux.getMessage(), rux);
					}
				}
				
			} else {
				/**单种类型*/
				if(category.equals("1")){
					_dt = OrderHisDAO.getOrderMethod(_map, param_Statu);
				}
				else if(category.equals("2") || category.equals("3")){
					_dt = AppealHisDAO.getOrderMethod(_map, param_Statu);
				}
				
				if (_dt != null && _dt.getRows().getCount() > 0) {
					try {
						int count = _dt.getRow(0).getInt("count");
						if (count > 0) {
							int i = 0;
							for (; i < statu.length && !statu[i].equals(param_Statu); i++)
								;
							
							_sb.append("<a href='javascript:' onclick='fnStateClick(this)'");
							_sb.append(" name='ACTION' value='");
							_sb.append(param_Statu);
							_sb.append("' style='color: white;'>");
							_sb.append(statuName[i]);
							_sb.append("</a>(<font color='red'>");
							_sb.append(count);
							_sb.append("</font>) &nbsp;&nbsp;");
							flag = true;
						}
					} catch (RuntimeException rux) {
						log.warn(rux.getMessage(), rux);
					}
				}
			}
			
			if (!flag) {
				_sb.append("<font color='red'>没有符合以上条件的查询记录结果。</font>");
			}
			_sb.append("</td>");
			_sb.append("</tr>");
			_sb.append("</table>");
			
			return _sb.toString();
		} catch (Exception ex) {
			log.warn(ex.getMessage(), ex);
		}
		return "";
	}
	
	/**
	 * <p>
	 * 获取查询内容表的所有行总数.
	 * </p>
	 * 
	 * @param request
	 * @param response
	 * @param _map
	 * @return
	 */
	static public int getOrderCount(ServletRequest request, ServletResponse response, Map _map) {
		try {
			if(_map == null )return 0;
			
			String category    = (String) _map.get("CATE");
			if(category == null || 
					(!category.equals("1") && !category.equals("2")
							               && !category.equals("3")))
				return 0;
			
			if(category.equals("1")){
				return OrderHisDAO.getOrderListCount(_map, (String)_map.get("ACTION"));
			}
			
			if(category.equals("2") || category.equals("3")){
				return AppealHisDAO.getOrderListCount(_map, (String)_map.get("ACTION"));
			}
			
		} catch (Exception ex) {
			log.warn(ex.getMessage(), ex);
		}
		return 0;
	}
	
	/**
	 * <p>
	 * 获取查询内容表的内容视图.
	 * </p>
	 * 
	 * @param request
	 * @param response
	 * @param _map
	 * @return
	 */
	static public String getOrderList(ServletRequest request, ServletResponse response, Map _map) {
		StringBuffer _sb = new StringBuffer();
		try {
			
			String category    = (String) _map.get("CATE");
			if(category == null || 
					(!category.equals("1") && !category.equals("2")
					                       && !category.equals("3")))
				return "";
			
			int pageSize = Integer.parseInt((String) _map.get("pageSize"));
			int currentPage = Integer.parseInt((String) _map.get("currentPage"));
			
			if (pageSize == -1 || currentPage == -1) {
				log.info("页面参数为空。");
			} else {
				log.info("pageSize:" + String.valueOf(pageSize));
				log.info("currentPage:" + String.valueOf(currentPage));
			}
			int startrecord = currentPage * pageSize;
			
			DataTable _dt = null;
			if(category.equals("1")){
				_dt = OrderHisDAO.getOrderList(_map, startrecord, pageSize);
			}
			
			if(category.equals("2") || category.equals("3")){
				_dt = AppealHisDAO.getOrderList(_map, startrecord, pageSize);
			}
			
			_sb.append("<table>");
			
			if (_dt != null) {
				
				for (int i = 0; i < _dt.getRows().getCount(); i++) {
					String prodorderid = _dt.getRow(i).getString("id");
					String time = _dt.getRow(i).getString("intime");//受理时间
					// 业务状态
					String statu = _dt.getRow(i).getString("statu");
					
					// 用户锁定的用户id
					String locksid = _dt.getRow(i).getString("LOCKSTAFFID");
					if (locksid == null || locksid.equals(""))
						locksid = "";
					else {
						locksid = ProdorderDAO.getStaffCode(locksid);
					}
					
					_sb.append("<tr key='");
					_sb.append(prodorderid);
					_sb.append("' type=''>");
					_sb.append("<td class=\"body_td\" align=\"center\" nowrap>");
					_sb.append(time);
					_sb.append("</td><td class=\"body_td\" align=\"left\" nowrap>");
					_sb.append(statu);
					_sb.append("</td>");
					_sb.append("<td class=\"body_td\" align=\"left\" nowrap>");
					_sb.append((locksid == null || locksid.equals("")) ? "&nbsp;" : locksid);
					_sb.append("</td></tr>");
					
				}
			}
			
			_sb.append("</table>");
		} catch (Exception rux) {
			log.warn(rux.getMessage(), rux);
		}
		
		return _sb.toString();
	}
	
}

⌨️ 快捷键说明

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