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

📄 tseradvisedao.java.svn-base

📁 本例使用Java + Jsp 实现选择树的过程,主要使用Struts+JDBC/hibernate架构
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
					tpo.setAdviseGuid(adviseGuid);
					tpo.setProblemGuid(pguid[i]);
					getSession().save(tpo);
				}
		 }
		
	}
	 /**
	  * 修改投诉信息
	  * @param dto
	  * @return
	  * @throws Exception
	  */
	public boolean modifyTserAdvise(TserAdviseAccessDto dto) throws Exception
	{  
		StringBuffer upsql=new StringBuffer();
		upsql.append(" update t_ser_advise set unit_guid='"+dto.getUnitGuid()+"',customer_name='"+dto.getCustomerName()+"',");
		upsql.append(" advise_means= "+dto.getAdviseMeans()+", multimedia_flag="+dto.getMultimediaFlag()+",topic='"+dto.getTopic()+"',");
		upsql.append(" instancy_status="+dto.getInstancyStatus()+",tel_phone='"+dto.getTelPhone()+"',");
		upsql.append(" process="+dto.getProcess()+",finish_date=to_date('"+dto.getFinishDateS()+"','YYYY-MM-DD'),checkin_date=to_date('"+dto.getCheckinDateS()+"','YYYY-MM-DD'),");
		upsql.append(" living_flag="+dto.getLivingFlag()+",description='"+dto.getDescription()+"',answer_flag="+dto.getAnswerFlag()+" ,");
		upsql.append("  answer='"+dto.getAnswer()+"',answer_date=to_date('"+dto.getAnswerDateS()+"','YYYY-MM-DD'),");
		upsql.append(" dispose_date=to_date('"+dto.getDisposeDateS()+"','YYYY-MM-DD'),");
		upsql.append(" standard_remark='"+dto.getStandardRemark()+"',last_result='"+dto.getLastResult()+"' ");
		upsql.append(" where advise_guid='"+dto.getAdviseGuid()+"'");
	  getSession().createSQLQuery(upsql.toString()).executeUpdate();
	  this.modifyTserAdviseProblem(dto.getAdviseGuid(), dto.getProblem_nameids());
		
		return true;
	}
	
	 /**
	  * 给投诉和问题类型建立相对应的关系
	  * @param adviseGuid
	  * @param problemGuids
	  */
	public void addTserAdviseProblem(String adviseGuid,String problemGuids) throws Exception
	{
		if(problemGuids!=null&&problemGuids.length()>0)
		{
			String[] pguid=problemGuids.split(",");
			for(int i=0;i<pguid.length;i++)
			{
				TSerAdviseProblem tpo=new TSerAdviseProblem();
				tpo.setAdviseProblemGuid(Tools.getUUID());
				tpo.setAdviseGuid(adviseGuid);
				tpo.setProblemGuid(pguid[i]);
				
				getSession().save(tpo);
			}
		}
		
		
	}
		
	/**
	 * 添加一条新的投诉登记记录
	 * @param dto
	 * @return
	 * @throws Exception
	 */
	public boolean addTserAdviser(TserAdviseAccessDto dto) throws Exception
	{
		TSerAdvise po=new TSerAdvise();
		BeanUtils.copyProperties(po, dto);
		po.setAdviseNumber(this.getAdvisenumber());  //给流水号赋值
		po.setFinishDate(DateUtil.getDate(dto.getFinishDateS()));
		po.setCheckinDate(DateUtil.getDate(dto.getCheckinDateS()));
		po.setAnswerDate(DateUtil.getDate(dto.getAnswerDateS()));
		po.setDisposeDate(DateUtil.getDate(dto.getDisposeDateS()));
		po.setCurrentDate(DateUtil.getDate(dto.getCurrentDateS()));
		po.setAdviseGuid(Tools.getUUID());
		getSession().save(po);
		this.addTserAdviseProblem(po.getAdviseGuid(),dto.getProblem_nameids());
	
		return true;
	}
	

	
	/**
	 * 从数据库取出要回访的信息
	 * @param guid
	 * @return
	 * @throws Exception
	 */
    public TserAdviseAccessDto findTserAdviseAccessByGuid(String guid)throws Exception
    {      
    	   String selhql="select ta.customer_name,ta.topic,ta.instancy_status," +
    	   		"ta.tel_phone,ta.result_level,ta.result_description,ta.approve_level," +
    	   		"ta.approve_description,ta.time_level,ta.time_description,ta.user_level," +
    	   		"ta.user_description,ta.worker_level,ta.worker_description,tg.name " +
    	   		"from t_ser_advise ta left join t_sys_orgnization tg on(ta.user_guid=tg.id)" +
    	   		" where ta.advise_guid=:guid";
    	  

    	     TserAdviseAccessDto dto=null;
    	     Query query=this.getSession().createSQLQuery(selhql);
    	     query.setString("guid", guid);
    	    
    	     
    	     List result=query.list() ;
    	     Object[] obj = null;
    	     
 			if(result.size()>0)
 			{   dto=new TserAdviseAccessDto();
 				obj = (Object[]) result.get(0);
 				
 				dto.setAdviseGuid(guid);
 				dto.setCustomerName(String.valueOf(obj[0]!=null?obj[0]:""));
 				dto.setTopic(String.valueOf(obj[1]!=null?obj[1]:""));
 				dto.setInstancyStatus(String.valueOf(obj[2]!=null?obj[2]:""));
 				if(obj[2]!=null)
 				{
 					dto.setInstancyStatusName(ServiceConstants.GRADE_STRING[Integer.parseInt(obj[2].toString())]);
 				}
 				dto.setTelPhone(String.valueOf(obj[3]!=null?obj[3]:""));
 				dto.setResultLevel(String.valueOf(obj[4]!=null?obj[4].toString():""));
 				dto.setResultDescription(String.valueOf(obj[5]!=null?obj[5]:""));
 				dto.setApproveLevel(String.valueOf(obj[6]!=null?obj[6].toString():""));
 				dto.setApproveDescription(String.valueOf(obj[7]!=null?obj[7]:""));
 				dto.setTimeLevel(String.valueOf(obj[8]!=null?obj[8].toString():""));
 				dto.setTimeDescription(String.valueOf(obj[9]!=null?obj[9]:""));
 				dto.setUserLevel(String.valueOf(obj[10]!=null?obj[10].toString():""));
 				dto.setUserDescription(String.valueOf(obj[11]!=null?obj[11]:""));
 				dto.setWorkerLevel(String.valueOf(obj[12]!=null?obj[12].toString():""));
 				dto.setWorkerDescription(String.valueOf(obj[13]!=null?obj[13]:""));
 				dto.setUserName(String.valueOf(obj[14]!=null?obj[14]:""));
 				
 				String [] problem=this.getProblemName(guid).split(";");
 				if(problem!=null&&problem.length>0)
 				{
 				dto.setProblem_nameids(problem[0]!=null?problem[0]:"");
 				dto.setProblem_name(problem[1]!=null?problem[1]:"");
 				}
 				else
 				{
 					dto.setProblem_nameids("");
 					dto.setProblem_name("");
 				}
 				
 			}
 		
 		
    	return dto;
    }

    /**
     * 对投诉进行回访(修改回访相应的字段)
     * @param dto
     * @return
     */
    
    public boolean modifyTserAdviserAccess(TserAdviseAccessDto dto)
    {
        String uphql="update t_ser_advise set process="+dto.getProcess()+",result_level="+dto.getResultLevel()+",result_description=" +
        		"'"+dto.getResultDescription()+"',approve_level="+dto.getApproveLevel()+",approve_description=" +
        		"'"+dto.getApproveDescription()+"',time_level="+dto.getTimeLevel()+",time_description=" +
        		"'"+dto.getTimeDescription()+"',user_level="+dto.getUserLevel()+",user_description=" +
        		"'"+dto.getUserDescription()+"',worker_level="+dto.getWorkerLevel()+",worker_description=" +
        		"'"+dto.getWorkerDescription()+"' where advise_guid='"+dto.getAdviseGuid()+"'";
        getSession().createSQLQuery(uphql).executeUpdate();
    	return true;
    }

    /**
  	 * 根据条件取出投诉登记表的相应数据
  	 * @param sql
  	 * @param queryInfo
  	 * @return
  	 * @throws Exception
  	 */
  	private List getTserAdviseListBysql(String sql,QueryInfo queryInfo) throws Exception
  	{
  		List results = buildSQLQuery(sql, queryInfo).list();
  		ArrayList reList = new ArrayList();
  		Object[] obj = null;
  		for (int i = 0; i < results.size(); i++)
  		{
  			obj = (Object[]) results.get(i);
  			TserAdviseAccessDto dto=new TserAdviseAccessDto();
  			dto.setAdviseGuid(String.valueOf(obj[0]!=null?obj[0]:""));
  			dto.setCustomerName(String.valueOf(obj[1]!=null?obj[1]:""));
  			dto.setTopic(String.valueOf(obj[2]!=null?obj[2]:""));
  			dto.setProcess(String.valueOf(obj[3]!=null?obj[3].toString():""));
  			if(obj[3]!=null){
  				dto.setProcessName(ServiceConstants.STATUS_STRING[Integer.parseInt(obj[3].toString())]);
  			}
  			dto.setDisposeDateS(String.valueOf(obj[4]!=null?obj[4].toString():""));
  			dto.setCurrentDateS(String.valueOf(obj[5]!=null?obj[5].toString():""));
  		  reList.add(dto);
  		}
  		return reList;
  	}
    
    /**
  	 * 从数据库拿到流水号的值进行处理
  	 * @return
  	 * @throws Exception
  	 */
   private String getAdvisenumber() throws Exception
   { 
  	 String strnum=null;
  	 String sql="select q_ser_Num.Nextval from dual";
  	 List objlist=getSession().createSQLQuery(sql).list();
  	 Object obj=objlist.get(0);
  	 strnum=String.valueOf(obj!=null?obj.toString():"");
  	 int index=(int)ServiceConstants.ADVISE_NUMBER-strnum.length();
  	 String errorstr=null;
  	 for(int i=0;i<index;i++)
  	 {
  		 if(errorstr==null)
  		 {
  			 errorstr="0";
  			 continue;
  		 }
  		 errorstr=errorstr+"0";
  	 }
  	 strnum=errorstr!=null?errorstr+strnum:strnum;
  	 return strnum;
   }
   
   /**
    * 初始化查询sql
    * @param cusName
    * @param telPhone
    * @param startDate
    * @param endDate
    * @return
    */
   private String initFindListOfAllSql(String cusName,String telPhone,String startDate,String endDate) throws Exception
   {
//  	 String cusName=new String(cusName1.getBytes("ISO-8859-1"),"GBK");
//  	 System.out.println("cusname=="+cusName);
//  	
  	 StringBuffer retsql=new StringBuffer(" where ");
  	 String cussql="";
  	 String telsql="";
  	 String stdatesql="";
  	 String edatesql="";
  	 if(cusName!=null&&cusName.length()>0)
  	 {
  		 cussql=" customer_name like '%"+cusName+"%' ";
  	 }
  	 if(telPhone!=null&&telPhone.length()>0)
  	 {
  		 if(cussql.length()>0)
  		 {
  			 telsql=" or ";
  		 }
  		 telsql=telsql+"  tel_phone='"+telPhone+"'  ";
  	 }
  	 if(startDate!=null&&startDate.length()>0)
  	 { 
  		 if(telsql.length()>0||cussql.length()>0)
  		 {
  			 stdatesql=" or ";
  		 }
  		 stdatesql=stdatesql+"   ta.current_date >= to_date('"+startDate+"','YYYY-MM-DD') ";
  	 }
  	 if(endDate!=null&&endDate.length()>0)
  	 {
  		 if(stdatesql.length()>0)
  		 {
  				 edatesql=" and ";
  		 }
  		 else
  		 {
  			 if(telsql.length()>0||cussql.length()>0)
  			 {
  				 edatesql=" or ";
  			 }
  		 }
  		 
  		 edatesql=edatesql+" ta.current_date <= to_date('"+endDate+"','YYYY-MM-DD') ";
  	 }
  	
  	 retsql.append(cussql);
  	 retsql.append(telsql );
  	 retsql.append(stdatesql);
  	 retsql.append(edatesql);
  	 if(cussql.length()<1&&telsql.length()<1&&stdatesql.length()<1&&edatesql.length()<1)
  	 {
  		 retsql.append(" process in("+ServiceConstants.STATUS_NEW+","+ServiceConstants.STATUS_ING+","+ServiceConstants.STATUS_QEND+","+ServiceConstants.STATUS_AEND+")");
  	 }
  	 else
  	 {
  		 retsql.append(" and process in("+ServiceConstants.STATUS_NEW+","+ServiceConstants.STATUS_ING+","+ServiceConstants.STATUS_QEND+","+ServiceConstants.STATUS_AEND+")");
  	 }

  	 return 	retsql.toString();
   }
	
   /**
    * 按条件查找所有投诉记录集(历史投诉列表的详细查询)
    * @param queryInfo
    * @param cusName
    * @param telPhone
    * @param startDate
    * @param endDate
    * @return
    * @throws Exception
    */ 
 	public List findListOfAll(QueryInfo queryInfo,String cusName,String telPhone,String startDate,String endDate) throws Exception
 	{ 
 		String addsql="";
 		addsql=this.initFindListOfAllSql(cusName, telPhone, startDate, endDate);
 		if (queryInfo.getRecordCount() == -1)
		{  
		    queryInfo.setRecordCount(this.getTotal(addsql));
		}
		String selhql="select ta.advise_guid,ta.customer_name,ta.topic,ta.process,ta.dispose_date,ta.current_date from t_ser_advise ta "+addsql;
		List dtoList=this.getTserAdviseListBysql(selhql, queryInfo);
			
		return dtoList;
		
 	}
 
	

}

⌨️ 快捷键说明

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