java后台获取和js拼接展示信息

java后台获取和js拼接展示信息:

html页面代码:

<div class="results-bd">
    <table id="activityInfoTable">            
        <tbody id="activityInfoTbody">                
        </tbody>
    </table>
</div>

javaScript代码(拼接为多个表格形式展示):

getAuditProgressDetails : function(projectguid){
            WebAPI.getAuditProgressDetailsAPI(projectguid,function(data) {
                if (data.boo) {
                    // 表格形式展示所有步骤得所有部门信息
                    var activityJSONObjectList = data.UserArea.activityJSONObjectList;        
                    console.log("activityJSONObjectList===="+activityJSONObjectList);
                    var num = 1;
                    var htmlphase = "";
            // 先循环所有处理步骤
for (var i = 0; i < activityJSONObjectList.length; i++) { htmlphase+="<div><tr><td colspan='6'><span style="font-size: 30px; font-family: 微软雅黑; font-weight: bold;">"+activityJSONObjectList[i].activityName+"</span></td></tr>"; var ouinfoJSONObjectList= activityJSONObjectList[i].ouinfoJSONObjectList; htmlphase += "<tr><th scope="col">序号</th>" +"<th scope='col'>部门名称</th>" +"<th scope='col'>办理地址</th>" +"<th scope='col'>联系电话</th></tr></div>";
              // 再循环每个步骤中的每个处理部门信息
              for (var j = 0; j < ouinfoJSONObjectList.length; j++){ var tr = "<tr>"; tr += "<td>" + num + "</td>"; tr += "<td>" + ouinfoJSONObjectList[j].ouname + "</td>"; tr += "<td>" + ouinfoJSONObjectList[j].address + "</td>"; //tr += "<td><a href="####" onclick=openDetail('"+projectlist[j].projectGuid+"')>" + projectlist[j].taskName + "</a></td>"; //tr += "<td><a href='../../../../epointzwfw/dzjc/spjd/AuditProjectDetailPage.jspx?rowGuid="+projectlist[j].projectGuid+"'>" + projectlist[j].taskName + "</a></td>"; tr += "<td>" + ouinfoJSONObjectList[j].ouLinkphone + "</td>"; num ++; tr += "</tr>"; htmlphase += tr; } } $("#activityInfoTbody").html(htmlphase); } else { DialogBox.dialog.alert('系统提示',data.Description); } }); },

里面的webapi就是一个封装的js,集中调用封装了的js的ajax交互方法:

// 个人中心正在审批模块查看当前审批进度
    getAuditProgressDetailsAPI : function(projectguid, func) {
// restful接口的类注解/方法注解
var url = "/AuditProject/getAuditProgressDetails"; var jsonData = { paras : { projectguid : projectguid } }; this.postAPINew(url, jsonData, func); },

javaSrcipt中返回的的数据调用的后台获取接口代码(restful接口,action层业务管理层):

@Path("/AuditProject")
public class WsbsdtAuditProjectAction {

    
// 正在审批查看当前进度 @Path("/getAuditProgressDetails") @POST @Produces(MediaType.APPLICATION_JSON) public String getAuditProgressDetails(String receivedata, @Context HttpServletRequest request) { String receivejson = HandleCommonReceiveDataUtil.handleReceiveData(request.getParameterMap(), receivedata); return JSONCommonUtil.doService(receivejson, WsbsdtAuditProjectService.class, "getAuditProgressDetails"); }
}

action层业务管理层 所调用的 service层业务逻辑实施层 的方法代码

public class WsbsdtAuditProjectService extends BaseService {
  
  /**
* 正在审批查看当前进度 * @param receiveData * @return * @exception/throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * AND w.Status='20' */ public ReturnData getAuditProgressDetails(ReceiveData receiveData) { log.info("=======开始调用getAuditProgressDetails接口======="); ReturnData returndata = new ReturnData(); // 1、获取token String token = receiveData.getValidateData(); // 2、验证Token // boolean iscorrect = TokenUtil.validateToken(token); boolean iscorrect = true; if (iscorrect) { try { log.info("=======开始获取getAuditProgressDetails接口参数======="); // 3、获取参数 // 获取办件唯一标识 String projectguid = receiveData.getParam("projectguid".toUpperCase()); AuditProject auditProject = service.getBeanByguid(projectguid, "AuditProject"); String pviguid =""; if(StringUtil.isNotBlank(auditProject)){ pviguid = auditProject.getPviguid(); } // 获取处理过和正在的所有步骤

          // service.getResultListNative为封装了的dao层即数据库访问操作层
String getAllActivitySql = "select ActivityGuid from Workflow_WorkItem WHERE ProcessVersionInstanceGuid='"+pviguid+"' group by ActivityGuid order by max(CreateDate);"; List<String> activityGuidList=service.getResultListNative(getAllActivitySql);
         
// 外层list对象,返回JSONObject的list列表 List<JSONObject> activityJSONObjectList = new ArrayList<JSONObject>(); if(activityGuidList.size()>0){ for(String activityGuid : activityGuidList){ // 外层list对象包含的每个序号的对象 JSONObject activityJSONObject = new JSONObject(); String getActivityNameByGuidSql = "SELECT ActivityName FROM Workflow_Activity WHERE ActivityGuid='"+activityGuid+"' "; // 要判断返回Null值情况,避免bug String activityName = StringUtil.isBlank(service.getSingleResultNative(getActivityNameByGuidSql))?"":service.getSingleResultNative(getActivityNameByGuidSql).toString(); String judgeIsCurrentActivitySql = "SELECT TOP 1 Status FROM Workflow_WorkItem WHERE Status='20' AND ProcessVersionInstanceGuid='"+pviguid+"' AND ActivityGuid='"+activityGuid+"' "; String status = StringUtil.isBlank(service.getSingleResultNative(judgeIsCurrentActivitySql))?"":service.getSingleResultNative(judgeIsCurrentActivitySql).toString(); if("20".equals(status)){ activityName += "(当前处理步骤)"; } activityJSONObject.accumulate("activityGuid", activityGuid); activityJSONObject.accumulate("activityName", activityName); // 获取该步骤下发给的所有接收人 String getAllTransactorSql = "select Transactor from Workflow_WorkItem WHERE ProcessVersionInstanceGuid='"+pviguid+"' AND ActivityGuid='"+activityGuid+"' "; List<String> transactorList=service.getResultListNative(getAllTransactorSql); // 内层的list对象 List<JSONObject> ouinfoJSONObjectList = new ArrayList<JSONObject>(); if(transactorList.size()>0){ for(String transactor : transactorList){ // 内层list包含的每个序号的对象 JSONObject ouinfoJSONObject = new JSONObject(); // 获取处理部门信息 String getOuByUserguidSql = "SELECT * FROM Frame_OU WHERE OUGuid=(SELECT OUGuid FROM Frame_User WHERE UserGuid='"+transactor+"') "; FrameOu frameOu = service.getSingleResultNative(getOuByUserguidSql, FrameOu.class); // 该处理部门名称 String ouname = ""; // 该处理部门联系电话 String ouLinkphone = ""; // 办理地址 String address = ""; ouname = frameOu.getOuname(); ouLinkphone = frameOu.getTel(); address = frameOu.getAddress(); ouinfoJSONObject.accumulate("ouname", ouname); ouinfoJSONObject.accumulate("ouLinkphone", ouLinkphone); ouinfoJSONObject.accumulate("address", address); ouinfoJSONObjectList.add(ouinfoJSONObject); } activityJSONObject.accumulate("ouinfoJSONObjectList", ouinfoJSONObjectList); } activityJSONObjectList.add(activityJSONObject); } } returndata.putUserData("activityJSONObjectList", activityJSONObjectList.toString()); } catch (Exception e) { returndata = ReturnData.False(e.getMessage()); this.log.error(e.getMessage()); } } else { returndata = ReturnData.False("身份验证失败:" + token); this.log.error("身份验证失败:" + receiveData.getValidateData()); } log.info("=======getAuditProgressDetails接口调用结束======="); return returndata;
  } }
原文地址:https://www.cnblogs.com/wmqiang/p/10496922.html