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;
  } }

java后台获取和js拼接展示信息的更多相关文章

  1. 微信小程序:java后台获取openId

    一.功能描述 openId是某个微信账户对应某个小程序或者公众号的唯一标识,但openId必须经过后台解密才能获取(之前实现过前台解密,可是由于微信小程序的种种限制,前台解密无法在小程序发布后使用) ...

  2. java后台获取Access_token的工具方法

    本方法主要通过java后台控制来获取Access_token,需要你已经知道自己的ID跟密码 因为微信的权限设置大概每天可以获取两千条,每条有效时间为2小时 /** * 输入自己的id跟密码,获取微信 ...

  3. 你不可错过的二维码生成与解析-java后台与前端js都有

    1.二维码分类   二维条码也有许多不同的码制,就码制的编码原理而言,通常分为三种类型. 线性堆叠式二维码 编码原理: 建立在一维条码基础之上,按需要堆积成两行或多行. 图示: 矩阵式二维码 最常用编 ...

  4. java后台获取微信小程序openid

    一.jar包准备 1.在网盘下载 链接:https://pan.baidu.com/s/15HAAWOg_yn768g4s9IrcPg 提取码:hgj0 二.在pom文件中添加依赖 1.将外部的引入的 ...

  5. Base64 JAVA后台编码与JS前台解码(解决中文乱码问题)

    中文通过Java后台进行Base64编码后传到前台,通过JS进行Base64解码时会出现中文乱码的问题,被这个问题也是困扰了几天,使用jquery.base64.js只能转码非中文字符,经过搜集各种方 ...

  6. Java Scala获取所有注解的类信息

    要想获取使用指定注解的类信息,可借助工具: org.reflections.Reflections 此工具将Java反射进行了高级封装,Reflections 通过扫描 classpath,索引元数据 ...

  7. java反射获取注解并拼接sql语句

    先建两个注解 分别为 Table 和 Column package com.hk.test; import java.lang.annotation.ElementType; import java. ...

  8. java后台获取国际化资源文件

    //current属性,由于此属性只做赋值操作,不做取值操作,因此没有get方法 private Locale current; public void setCurrent(Locale cur) ...

  9. java后台获取URL带参demo

    URL:http://aos.wall.youmi.net/v2/check_fb_sig?order=YM130402cygr_UTb42&app=30996ced018a2a5e& ...

随机推荐

  1. [移动] Xamarin install

    It was not possible to complete an automatic installation. This might be due to a problem with your ...

  2. 使用disavled属性锁定input内容不可以修改后,打印获取不到对应的值

    当我们需要锁定input内容不让修改时,可以使用disabled="disabled"和readonly="readonly", 官方的解释是:disabled ...

  3. was cached in the local repository, resolution will not be reattempted until the update interval of localhost-repository has elapsed or updates are forced

    ailed to collect dependencies at com.eshore:common:jar:0.0.1-SNAPSHOT: Failed to read artifact descr ...

  4. windows下java开发资料汇总

    开发环境搭建:   (1) java开发环境配置    (2) maven环境快速搭建        项目部署:   (1) Eclipse中项目部署方法   (2) 使用Eclipse构建Maven ...

  5. python添加Windows环境变量

    1.cmd中添加方式 SET PATH=%PATH%;c:\Program Files (x86)\Wireshark 注:如上代码添加c:\Program Files (x86)\Wireshark ...

  6. Centos7 安装hive

    安装hive 配置hive 在hdfs中新建目录/user/hive/warehouse 首先启动hadoop任务 hdfs dfs -mkdir /tmp hdfs dfs -mkdir /user ...

  7. ubuntu查看隐藏文件夹

    打开所要查看的文件目录,然后ctrl + h 快捷键可以显示隐藏文件 例如在/home目录下可以看到以下隐藏文件

  8. easyui-layout个人实例

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  9. EF 性能调优

    --EF 批量增删改 http://www.cnblogs.com/lori/archive/2013/01/31/2887396.html http://www.cnblogs.com/gzalrj ...

  10. SecureFX 中文乱码

      1. 找到SecureFX配置文件夹(选项–全局选项,常规下的配置文件夹),比如:C:\Users\James\AppData\Roaming\VanDyke\Config\Sessions 2. ...