阅读背景:

页面的table导出到Excel

来源:互联网 

实现类代码:

@Override
	public String showTestCaseCount(String ident, String projectId) {
		StringBuffer sb = new  StringBuffer();
		List<TestCaseCount>  list = this.testCaseCountMapper.selectByProjectId(projectId);
		if("1".equals(ident)){
			sb.append("<thead><tr>");
			sb.append("<th style='width:65px'>商品名称</th>");
			sb.append("<th style='width:65px'>数量</th>");
			sb.append("<th style='width:65px'>价格</th>");
			sb.append("<th style='width:65px'>规格</th>");
			sb.append("<th style='width:65px'>条码</th>");
			sb.append("<th style='width:65px'>产地</th>");
			sb.append("<th style='width:65px'>超市名称</th>");
			sb.append("<th style='width:60px'>库存</th>");
			sb.append("<th style='width:65px'>供应商名称</th>");		
			sb.append("</tr></thead>");
			sb.append("<tbody>");
			List<Round>  roundList =  this.roundService.queryRoundByProject(projectId);
		    if(roundList.size()>0){
		    	int caseCountNumS = 0;
		    	int copyCaseNumS = 0;
		    	int publishCaseNumS = 0;
		    	int updateCaseNumS = 0;
		    	int deleteCaseNumS = 0;
		    	int unExecuteCaseNumS = 0;
		    	int inExecuteCaseNumS = 0;
		    	int comExecuteCaseNumS = 0;
		    	int passCaseNumS = 0;
		    	int noPassCaseNumS = 0;
		    	for(Round round : roundList){
		    		//复用用例list
		    		List<TestCaseCount> copyCaselist = new ArrayList<TestCaseCount>();
		    		//新建用例list
		    		List<TestCaseCount> newCaselist = new ArrayList<TestCaseCount>();
		    		//发布用例list
		    		List<TestCaseCount> publishCaselist = new ArrayList<TestCaseCount>();
		    		//更新用例list
		    		List<TestCaseCount> updateCaselist = new ArrayList<TestCaseCount>();
		    		//删除用例list
		    		List<TestCaseCount> deleteCaselist = new ArrayList<TestCaseCount>();
		    		//还没有状态的用例
		    		List<TestCaseCount> wuCaselist = new ArrayList<TestCaseCount>();
		    		//部分执行用例list
		    		List<TestCaseCount> unExecuteCaselist = new ArrayList<TestCaseCount>();
		    		//未执行用例list
		    		List<TestCaseCount> inExecuteCaselist = new ArrayList<TestCaseCount>();
		    		//完全执行用例list
		    		List<TestCaseCount> comExecuteCaselist = new ArrayList<TestCaseCount>();
		    		//执行通过用例list
		    		List<TestCaseCount> passCaselist = new ArrayList<TestCaseCount>();
		    		//执行未通过用例list
		    		List<TestCaseCount> noPassCaselist = new ArrayList<TestCaseCount>();
		    		if(list.size()>0){
			    		for(TestCaseCount testCaseCount : list){
			    			String testRoundId = testCaseCount.getTestRoundId() == null ? "" :testCaseCount.getTestRoundId();
			    			if(testRoundId.equals(round.getId())){
			    				if(null == testCaseCount.getTestCaseStatus() || "".equals(testCaseCount.getTestCaseStatus())){
			    					wuCaselist.add(testCaseCount);
			    					 continue;
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("copy")){
			    					copyCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("new")){
			    					newCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("delete")){
			    					deleteCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("update")){
			    					updateCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("publish")){
			    					publishCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("unExecute")){
			    					unExecuteCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("inExecute")){
			    					inExecuteCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("comExecute")){
			    					comExecuteCaselist.add(testCaseCount);
			    				}
			    				
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("pass")){
			    					passCaselist.add(testCaseCount);
			    				}
			    				
			    				if(testCaseCount.getTestCaseStatus().equals("noPass")){
			    					noPassCaselist.add(testCaseCount);
			    				}
			    			}
			    		}
		    		}	
		    		
		    		int caseCount = copyCaselist.size()+publishCaselist.size()+updateCaselist.size();
		    		if(caseCount > 0){
			    		sb.append("<tr>");
			    		sb.append("<td>"+round.getRunName()+"</td>");
			    		caseCountNumS = caseCountNumS+caseCount;
			    		sb.append("<td>"+caseCount+"</td>");
			    		copyCaseNumS += copyCaselist.size();
			    		sb.append("<td>"+copyCaselist.size()+"</td>");
			    		publishCaseNumS += publishCaselist.size();
			    		int publish = publishCaselist.size();
			    		sb.append("<td>"+publish+"</td>");
			    		updateCaseNumS += updateCaselist.size();
			    		sb.append("<td>"+updateCaselist.size()+"</td>");
			    		deleteCaseNumS += deleteCaselist.size();
			    		sb.append("<td>"+deleteCaselist.size()+"</td>");
			    		inExecuteCaseNumS += inExecuteCaselist.size();
			    		sb.append("<td>"+inExecuteCaselist.size()+"</td>");
			    		unExecuteCaseNumS += unExecuteCaselist.size();
			    		sb.append("<td>"+unExecuteCaselist.size()+"</td>");
			    		comExecuteCaseNumS += comExecuteCaselist.size();
			    		sb.append("<td>"+comExecuteCaselist.size()+"</td>");
			    		int passNum = passCaselist.size();
			    		passCaseNumS += passNum;
			    		sb.append("<td>"+passNum+"</td>");
			    		int noPassNum = noPassCaselist.size();
			    		noPassCaseNumS += noPassNum;
			    		sb.append("<td>"+noPassNum+"</td>");
			    		int passCountNum = passNum+noPassNum;
			    		if(passCountNum == 0 || passNum == 0){
			    			sb.append("<td>0%</td>");
			    		}else{
			    			NumberFormat numberFormat = NumberFormat.getInstance();  
			    			String result = numberFormat.format((float) passNum / (float) passCountNum * 100);  
			    			sb.append("<td>"+result+"%</td>");
			    		}
			    		sb.append("</tr>");
		    		}	
		    	}
		    	if(caseCountNumS > 0){
			    	sb.append("<tr>");
		    		sb.append("<td>合计</td>");
		    		sb.append("<td>"+caseCountNumS+"</td>");
		    		sb.append("<td>"+copyCaseNumS+"</td>");
		    		sb.append("<td>"+publishCaseNumS+"</td>");
		    		sb.append("<td>"+updateCaseNumS+"</td>");
		    		sb.append("<td>"+deleteCaseNumS+"</td>");
		    		sb.append("<td>"+inExecuteCaseNumS+"</td>");
		    		sb.append("<td>"+unExecuteCaseNumS+"</td>");
		    		sb.append("<td>"+comExecuteCaseNumS+"</td>");
		    		sb.append("<td>"+passCaseNumS+"</td>");
		    		sb.append("<td>"+noPassCaseNumS+"</td>");
		    		int passCountNumS = passCaseNumS+noPassCaseNumS;
		    		if(passCountNumS == 0 || passCaseNumS == 0){
		    			sb.append("<td>0%</td>");
		    		}else{
		    			NumberFormat numberFormat = NumberFormat.getInstance();  
		    			String result = numberFormat.format((float) passCaseNumS / (float) passCountNumS * 100);  
		    			sb.append("<td>"+result+"%</td>");
		    		}
		    		sb.append("</tr>");
				    sb.append("</tbody>");
		    	}    
		    }
		   
		}
		}
		return sb.toString();
	}@Override
	public String showTestCaseC



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: