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

📄 saveappealrestore.jsp

📁 电信的网厅的整站代码
💻 JSP
字号:
<%@ page contentType="text/html; charset=GBK" errorPage="error.jsp"%>
<%@ page import="com.doone.fj1w.fjmgr.order.AppealDAO"%>
<%@ page import="com.doone.fj1w.fjmgr.order.*"%>
<%@ page import="com.doone.fj1w.fjmgr.order.DisplayPage"%>
<%@ page import="java.text.SimpleDateFormat"%>
<%@ page import="java.util.*"%>
<%@ page import="com.doone.uurm.WebAuth"%>
<%@ page import="com.doone.util.FileLogger"%>
<%!String getCltMessage(String sMsg, boolean bClose) {
		StringBuffer ret = new StringBuffer();
		if (sMsg != null) {
			ret.append("<script language=\"JavaScript\" type=\"text/JavaScript\">");
			if ( sMsg.trim().length() > 0 ) {
				ret.append("alert(\"").append(sMsg).append("\");");
			}
			ret.append("try {");
			ret.append("if ( typeof(self.opener.window.fnQueryReload) == \"function\" ) {");
			ret.append("self.opener.window.fnQueryReload();");
			ret.append("}");
			ret.append("else {");
			ret.append("self.opener.location.replace(self.opener.location.href);");
			ret.append("}");
			ret.append("if ( typeof(self.opener.window._reloadTopServiceCount) != undefined ) {");
			ret.append("  self.opener.window._reloadTopServiceCount('SERVICEORDER');");
			ret.append("  self.opener.window._reloadTopServiceCount('FAULTORDER');");
			ret.append("}");
			ret.append("}catch(e){}");
			ret.append("window.close();");
			ret.append("</script>");
		}

		return ret.toString();
	}

%>
<%
    if(session.getAttribute("CURRENTORDER") == null){
    	%><script>alert('提交权限过期,请重新打开工单。');window.close();</script><%
    }else{
    	session.removeAttribute("CURRENTORDER");
    }

    WebAuth auth = WebAuth.getInstance(request);   
    
	String appealid = "";		//受理单ID
	String operType = "";		//操作类型
	String restoreid = "";		//回复单ID
	String RestoreMan = auth.getUserCode();		//回复人
	String RestoreTime = "";	//回复时间
	String outDate = "";		//回复时限
	String RestoreContent = "";	//回复内容
	String failuretel   = "";	//故障电话
	String relationtel  = "";	//联系电话
	String citycode     = "";	//地区编码
	//String appeacontent = "";	//障碍描述
	String weborder     = "";   //自助服务平台生成的网上订单号
	String result 	    = "";	//第三方返回结果
	AppealDAO appealDAO = new AppealDAO();
	AppealrestoreDAO appealrestoreDAO = new AppealrestoreDAO();
	Date date = new Date();
	SimpleDateFormat df = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm");
	
	if(request.getParameter("APPEALID")!=null && !request.getParameter("APPEALID").equals(""))
		appealid = DisplayPage.decode(request.getParameter("APPEALID"));
	if(request.getParameter("operType")!=null && !request.getParameter("operType").equals(""))
		operType = request.getParameter("operType");
	if(request.getParameter("OUTDATE")!=null && !request.getParameter("OUTDATE").equals(""))
		outDate =  request.getParameter("OUTDATE");
	if(request.getParameter("RestoreContent")!=null && !request.getParameter("RestoreContent").equals(""))
		RestoreContent =DisplayPage.toGBK(request.getParameter("RestoreContent"));	
	if(request.getParameter("RELATIONTEL")!=null && !request.getParameter("RELATIONTEL").equals(""))
		relationtel =DisplayPage.decode(request.getParameter("RELATIONTEL"));	
		
	//if(request.getParameter("APPEACONTENT")!=null && !request.getParameter("APPEACONTENT").equals(""))
	//	appeacontent =DisplayPage.decode(request.getParameter("APPEACONTENT"));	
	
	if(request.getParameter("CITYCODE")!=null && !request.getParameter("CITYCODE").equals(""))
		citycode =DisplayPage.decode(request.getParameter("CITYCODE"));	
	if(request.getParameter("WEBORDER")!=null && !request.getParameter("WEBORDER").equals(""))
		weborder =DisplayPage.decode(request.getParameter("WEBORDER"));	
	
	
	RestoreTime = df.format(date);
	//String submittime  = RestoreTime ;
	
	String perentId      = appealDAO.getPerentID(appealid);
	if(perentId == null || perentId.equals("")){
		out.print(getCltMessage("系统忙,查询原单失败,本次操作中止!", true));
		return;
	}
	
    restoreid = appealrestoreDAO.getMainStoreId(appealid);
	
	switch(Integer.parseInt(operType))
	{	
		case 1:				//转派
		     String appealtypeId = DisplayPage.decode(request.getParameter("APPEALTYPEID"));
		     if(appealtypeId == null || appealtypeId.equals("")){
				out.print(getCltMessage("系统查询不到用户的障碍现象,请确定障碍现象是否存在,注意:系统暂时只支持小灵通与宽带用户的故障单转派!", true));
				return;
		     }	
		     	     
		     //障碍现象
		     String appealMode = DisplayPage.decode(request.getParameter("APPEALMODE"));
		     // 1、故障
			 //	2、投诉
			 //	3、建议
			 //-1、异常
			 int mode;
			 try{
			  mode = Integer.parseInt(appealMode);
			 }catch(NumberFormatException nrex){
			   mode = -1;
			 }
			 //障碍现象id
			 String appealType = "";
			 switch(mode){
			  case 1:
			         appealType = appealDAO.getFaultType(appealtypeId,citycode);
			         break;
			  case 2:
			         appealType = appealDAO.getAppealType(appealtypeId,citycode);
			         break;
			  case 3:
			         appealType = appealDAO.getConServiceType(appealtypeId,citycode);
			         break;
			  default:
					out.print(getCltMessage("您的操作类型与库中定义不区配,不能完成转派操作!", true));
					return;
			 }
			 
			 System.out.println("appealType: "+appealType);     
			 if(appealType == null || appealType.equals("")){
					out.print(getCltMessage("系统查询不到用户的障碍现象,请确定障碍现象是否存在,注意:系统暂时只支持小灵通与宽带用户的故障单转派!", true));
					return;
		     }    
		     
		     //故障号码 
		     failuretel     = DisplayPage.decode(request.getParameter("FAILURETEL"));
		    
		     //故障内容
		      String appealContent = DisplayPage.decode(request.getParameter("APPEACONTENT"));      
		      if(appealContent == null || appealContent.equals("")){
					out.print(getCltMessage("提交的信息中没有障碍描述内容,请填写障碍描述,以便处理。注意:系统暂时只支持小灵通与宽带用户的故障单转派!", true));
					return;
		     }           
		     
		    //故障单通过审核,并转发到112系统办理,1-宽带,2-固定电话 
		      String faultype = DisplayPage.decode(request.getParameter("FAULTTYPE"));
		      int active; 
		      try{
		         active = Integer.parseInt(faultype);
		      }catch(NumberFormatException nfex){
		         active = 3;
		      }
		      
		      switch(active){
		      
		        case 1:
		                /****************宽带故障*******************************/
					    SimpleDateFormat _sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
					    String createtime = request.getParameter("CREATETIME");
					    try{
					      createtime = _sdf.format(createtime);
					    }catch(Exception ex){
					      createtime = _sdf.format(new Date());
					    }
				        Hashtable hs = new Hashtable();
						hs.put("COMMAND_TYPE","ACCEPT");			//命令类型:ACCEPT(用户申告信息)、QUERY(进程查询信息)
						hs.put("VIR_ACCEPT_NUMBER",failuretel);	//宽带帐号	VA100	NOT NULL
						hs.put("FAULT_SOURCE","6");					//申告来源	VA30	默认:6代表网上10000必填
						hs.put("PHENO_ID",appealType);						//障碍现象ID	VA10	取自宽带障碍,NOT NULL
						hs.put("FAULT_CONTACT_TEL",relationtel);		//联系电话	VA120	NOT NULL 
						hs.put("TEL","10000");					//计费号码	VA40	默认10000 
						hs.put("CUSTOMER_LEAVEWORD",appealContent);		//障碍描述	VA2000	必填 即用户留言
						hs.put("AREA_CODE",citycode);					//归属地市	VA15	必填
						hs.put("ACCEPT_DATE",createtime);//申告时间	DATE	必填
						hs.put("WEBORDER",weborder) ;  // add by zengzc ,2005-12-16 为了满足泉州对宽带障碍的接口需求.
					    //System.out.println("管理平台传关故障值===>"+hs);  
					    result = AppealInter.toADSLAppealThird(hs,appealid);
		                break;
		                
		        case 2:
		               /*************固话送112**************************/
		                result = AppealInter.toThirdParty(appealid,
		                                                  failuretel,
		                                                  appealType,
			                                              relationtel,
			                                              appealContent,
			                                              citycode,
			                                              weborder);
		                break;
		        
		        case 3:
		               /*************服务单通过审核,并转发到180或10000号办理*****************/
		             
		               String appealOrderNum = DisplayPage.decode(request.getParameter("appealOrderNum"));
				       String sex         = request.getParameter("sex");
				       String accountName = DisplayPage.decode(request.getParameter("accountName"));
					   String mailAddr    = DisplayPage.decode(request.getParameter("mailAddr"));
					   String relationName= accountName;
					   String relationTel = DisplayPage.decode(request.getParameter("relationTel"));
					   String custLevel   = DisplayPage.decode(request.getParameter("custLevel"));
					   String custImpLevel= DisplayPage.decode(request.getParameter("custImpLevel"));
					   String requRestTime  = request.getParameter("OUTDATE");
					   String appealComment = request.getParameter("appealComment");
				
				       try{
				          if(requRestTime == null || "".equalsIgnoreCase(requRestTime.trim())){
				            /*取当前的时间,这个时间为必传值,如果没有会出错。 wull 07-1-13*/
				        	Calendar cal = Calendar.getInstance();
				            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
				            requRestTime = (String) sdf.format(cal.getTime());
				          }
				       	  SimpleDateFormat requRestTime_sf = new SimpleDateFormat("yyyy-MM-dd");
				 		  Date requRestTime_date = requRestTime_sf.parse(requRestTime);
				 		  requRestTime_sf = new SimpleDateFormat("yyyyMMdd HH:mm:ss");
				 		  requRestTime = requRestTime_sf.format(requRestTime_date);
				       }
				       catch (Exception e){
				       
				       }
				       /**拆分投诉级别*/
				       String[] appealTemp = appealType.split("~!");
				       String[] _rsP = new String[]{"",""};
				       if(appealTemp.length >= 1)
				          _rsP[0] = appealTemp[0];
				       if(appealTemp.length >= 2)
				          _rsP[1] = appealTemp[1];
				       if ("0591".equals(citycode)){
				         //如果是福州则在这里取最上层的节点
				       	  _rsP[1] = appealTemp[appealTemp.length-1];
				       }
				    /*
				       调要接口
					 * wull 2006-10-12
					 * 说明:这个级别因为有子父关系。
					 * 从数据库里搜索出来,第一条是本身,第二条是第一条的父节点,以此类推。
					 * 但接口那里所要的值为appealType1是父节点,appealType2是传本身选中的值编码。
					 * _rsP[1]对应的是父节点。_rsP[0]是本身选中的编码头。
					 * */
			           result = AppealInter.toThirdConsu(appealid,
			                                       appealOrderNum,
			                                       sex,
			                                       accountName,
			                                       mailAddr,
			                                       relationName,
			                                       relationTel,
			                                       custLevel,
			                                       custImpLevel,
			                                       _rsP[1],
			                                       _rsP[0], 
			                                       appealContent,
			                                       requRestTime,
			                                       appealComment,
			                                       citycode);
		                break;        
		      
		      }
		    
			      
			/***********************转派结果********************************/      
			if(result.startsWith("转派成功")){
			  AppealDAO.setAppealUnLock(perentId);
			  CommonMethod.updateStatuAppeal(appealid,"2",outDate,"2");
		      CommonMethod.updateStatuAppeal(perentId,"2",outDate,"2"); 
		        
		      CommonMethod.updateActiveAppeal(appealid,RestoreContent,"1",
			                   RestoreMan,RestoreTime,restoreid); 
		      String re_s[] = result.split("~");	                   

			  out.print(getCltMessage("您的转派操作成功,第三方流水号为:" + re_s[1] + "!", true));
			  return;
			}
			  CommonMethod.updateStatuAppeal(appealid,"2",outDate,"3");
		      CommonMethod.updateStatuAppeal(perentId,"2",outDate,"3"); 
		        
		      CommonMethod.updateActiveAppeal(appealid,RestoreContent,"1",
			                   RestoreMan,RestoreTime,restoreid); 
				out.print(getCltMessage("转派过程失败,具体信息为:" + result + "!", true));
				return;
		case 2:				//作废
			appealDAO.blankOut(appealid);
			appealDAO.updateOutDate(outDate,appealid);
			CommonMethod.updateStatuAppeal(perentId,"3",outDate,"8");
			//设置内部处理状态
			CommonMethod.updateActiveAppeal(appealid,RestoreContent,"1",RestoreMan,RestoreTime,restoreid);    			
			break;
		case 4:				//暂存
		    CommonMethod.updateStatuAppeal(perentId,"2",outDate,"3");
		    CommonMethod.updateStatuAppeal(appealid,"2",outDate,"3");
		    
		    CommonMethod.updateActiveAppeal(appealid,RestoreContent,"1",RestoreMan,RestoreTime,restoreid); 
			  
			break;
		case 5:           //回退
		    CommonMethod.updateStatuAppeal(perentId,"1",outDate,"4");
		    CommonMethod.updateStatuAppeal(appealid,"1",outDate,"4");
		    
		    CommonMethod.updateActiveAppeal(appealid,RestoreContent,"1",RestoreMan,RestoreTime,restoreid);    
		    break;
		case 6: //回复
		   	CommonMethod.updateActiveAppeal(appealid,RestoreContent,"1",RestoreMan,RestoreTime,restoreid);   
		    break;	
	
		case 3://完成
			// 进度状态
			CommonMethod.updateStatuAppeal(perentId,"3",outDate,"9");
		    CommonMethod.updateStatuAppeal(appealid,"3",outDate,"9");
			//设置内部处理状态
            CommonMethod.updateActiveAppeal(appealid,RestoreContent,"1",RestoreMan,RestoreTime,restoreid);    
			break;
		case 7:
		    
		    break;	
		default:
		    
			break;
	}

	//作完之后解锁.
	AppealDAO.setAppealUnLock(perentId);
	out.print(getCltMessage("", true));
%>

⌨️ 快捷键说明

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