<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page contentType="text/html; charset=UTF-8" errorPage="/portal/share/error.jsp" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ page import="net.e_lian.bpm.core.user.action.WebUser"%>
<%@ page import="net.e_lian.bpm.constans.Web"%>
<%@ page import="net.e_lian.bpm.core.dynaform.view.html.ViewHtmlBean"%>
<%@include file="/portal/share/common/lib.jsp"%>
<%
// 初始化HtmlBean
ViewHtmlBean htmlBean = new ViewHtmlBean();
htmlBean.setHttpRequest(request);
WebUser webUser = (WebUser) session.getAttribute(Web.SESSION_ATTRIBUTE_FRONT_USER);
if("true".equals(request.getAttribute("_isPreview"))){
webUser = (WebUser)session.getAttribute(Web.SESSION_ATTRIBUTE_PREVIEW_USER);
}
htmlBean.setWebUser(webUser);
request.setAttribute("htmlBean", htmlBean);
/*********ADD 谷红英 2015/09/17 自由流类模块 Start*******************/
String para_isFreeFlow = request.getParameter("isFreeFlow");
if(null == para_isFreeFlow){
para_isFreeFlow = (String)request.getAttribute("isFreeFlow");
}
/*********ADD 谷红英 2015/09/17 自由流类模块 End *******************/
String contexPath = request.getContextPath();
//ADD [GOME_16_02_03_04_08_07_03] by fuqiang 20160504 start
String _viewid = request.getParameter("_viewid");
boolean isMonthReport = false;
if(null != _viewid && "11e5-e1ae-a4238b63-936c-fba02987301b".equals(_viewid)){
isMonthReport = true;
}
request.getSession().setAttribute("isMonthReport", isMonthReport);
//ADD [GOME_16_02_03_04_08_07_03] by fuqiang 20160504 end
%>
<%@page import="net.e_lian.bpm.core.dynaform.document.ejb.Document"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html style="height:100%;">
<o:MultiLanguage value="FRONTMULTILANGUAGETAG">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<%@include file="/portal/share/common/js_base.jsp" %>
<%@include file="/portal/share/common/js_component.jsp" %>
<!-- 视图样式 -->
<link rel="stylesheet" href='<o:Url value="/dynaform/view/css/listView.css"/>' type="text/css" />
<link rel="stylesheet" href='<%=contexPath%>/portal/gomeresource/LTSoft_Shell/css/font-awesome.min_old.css' type="text/css" />
<!-- 样式库样式 -->
<jsp:include page='../../resource/css/styleLib.jsp' flush="true">
<jsp:param name="styleid" value="<%= htmlBean.getViewStyle()%>" />
</jsp:include>
<!-- View页面常用function,注意先后顺序,先common后view 22-->
<script type="text/javascript">
var isFreeFlow = '<%=para_isFreeFlow%>';
var isMonthReport = '<%=isMonthReport%>';
</script>
<script src='<o:Url value="/resource/document/bpm.ui.js"/>'></script>
<script src='<s:url value='/portal/share/component/view/common.js' />'></script>
<script src='<s:url value='/portal/share/component/view/view.js' />'></script>
<script src='<s:url value='/portal/share/component/view/bpm.listView.js' />'></script>
<script src='<s:url value="/dwr/interface/FormHelper.js"/>'></script>
<script src='<s:url value="/dwr/interface/ViewHelper.js"/>'></script>
<script src='<s:url value="/portal/share/component/dateField/datePicker/WdatePicker.js" />' ></script>
<!-- fanguofeng -->
<script src='<s:url value="/portal/gomeresource/fblview/fbl-view-fujian.js" />' ></script>
<link type="text/css" href='<s:url value="/portal/gomeresource/fblview/fbl-view-fujian.css" />' rel="stylesheet"/>
<!-- 图片滑动控件样式 -->
<link rel="stylesheet" href="<s:url value='/portal/share/css/slider.css' />" type="text/css" />
<script>
var contextPath = '<%= request.getContextPath()%>';
var operation = '<s:property value="%{#parameters.operation}" />';
var isOpenAbleScriptShow = '{*[page.core.dynaform.forddin]*}'; //judgeOperating()
var isedit = '';
var enbled='';
var typeName= '<s:property value="%{#request.message.typeName}" />'; //showPromptMsg()
var urlValue= '<s:url value="%{#request.ACTIVITY_INSTNACE.actionUrl}"><s:param name="_activityid" value="%{#request.ACTIVITY_INSTNACE.id}" /></s:url>'; //showPromptMsg()
var selectStr = '{*[Select]*}'; //createDoc(),viewDoc
var someInformation= '{*[net.e_lian.bpm.core.workflow.input_audit_remark]*}'; //on_doflow
var okMessage = '{*[OK]*}'; //on_doflow()
var cancelMessage = '{*[Cancel]*}'; //on_doflow()
var openDownWinStr = '<s:property value="%{#request.excelFileName}"/>'; //openDownloadWindow()
var totalRows = '<s:property value="totalRowText" />'; //refreshMenuTotalRows()
//回选列表数据
function selectData4Doc(){
var checkboxs = document.getElementsByName("_selects");
<s:iterator value="_selects">
for (var i=0; i<checkboxs.length; i++) {
var checkedId = '<s:property />';
if (checkboxs[i].value == checkedId) {
checkboxs[i].checked = true;
}
}
</s:iterator>
}
jQuery(window).resize(function(){
dy_lock(); //在方法加载完之前锁定操作
initListComm(); //列表视图公用初始化方法
adjustDataIteratorSize();
dy_unlock(); //方法加载完之后解锁操作
});
jQuery(document).ready(function(){
dy_lock(); //在方法加载完之前锁定操作
initListComm(); //列表视图公用初始化方法
adjustDataIteratorSize();
dy_unlock(); //方法加载完之后解锁操作
document.body.style.height= (window.screen.availHeight -60 - 20) + "px";
});
/******************* ADD:给视图 enter键添加事件调用查询方法 by:fanguofeng in:2016-07-04 Start ***********************/
//给enter键添加事件
$(document).ready(function(e) {
$(this).keydown(function (e){
if(e.which == "13"){
modifyActionBack();
}
})
});
/******************* ADD:给视图 enter键添加事件调用查询方法 by:fanguofeng in:2016-07-04 End ***********************/
function getClass(tagname, className) { //tagname指元素,className指class的值
//判断浏览器是否支持getElementsByClassName,如果支持就直接的用
if (document.getElementsByClassName) {
return document.getElementsByClassName(className);
}
else { //当浏览器不支持getElementsByClassName的时候用下面的方法
var tagname = document.getElementsByTagName_r(tagname); //获取指定元素
var tagnameAll = []; //这个数组用于存储所有符合条件的元素
for (var i = 0; i < tagname.length; i++) { //遍历获得的元素
if (tagname[i].className == className) { //如果获得的元素中的class的值等于指定的类名,就赋值给tagnameAll
tagnameAll[tagnameAll.length] = tagname[i];
}
}
return tagnameAll;
}
}
function viewDoc(docid, formid ,signatureExist,templateForm,isEdit){
// 查看/script/view.js
var url = docviewAction;
if(isFreeFlow == 'yes'){
url = docviewAction_FreeFlow;
}
url += '?_docid=' + docid;
if (formid) {
url += '&_formid=' + formid;
}
if (templateForm) {
url += '&_templateForm=' + templateForm;
}
if(signatureExist){
url += '&signatureExist=' + signatureExist;
}
/******************* ADD:修改打开页面无法取到打开类型参数的问题 by:songxiaoping in:2015-12-09 start ***********************/
// View的openType(打开类型)
var openType = OPEN_TYPE_NORMAL;
if (document.getElementsByName("_openType")[0]) {
openType = document.getElementsByName("_openType")[0].value;
}
url += "&openType=" + openType;
/******************* ADD:修改打开页面无法取到打开类型参数的问题 by:songxiaoping in:2015-12-09 end ***********************/
document.forms[0].action = url;
document.forms[0].target = '_blank';
document.forms[0].submit();
}
</script>
<style type="text/css">
body{
font-family: Microsoft YaHei !important;
}
a{
line-height: 35px;
}
.actBtn{
float:right
}
#modnav h3{
font-weight: bold;
font-size:23px;
color:#2679B5
}
#modnav h3 small{
font-weight: normal;
font-size:15px;
color: #8089a0;
}
.listDataTrTd a{
margin-left:10px;
white-space: nowrap;
}
.listDataThTd{
text-align: left;
padding-left:10px;
}
</style>
<title>ListView</title>
</head>
<body class="body-front" style="height:100%;overflow-x:auto;overflow-y:hidden;" >
<!-- 遮挡层 -->
<div id="loadingDivBack" style="position: absolute; z-index: 50; width: 100%; height: 100%; top: 0px; left: 0px; background-color:#ccc; filter: alpha(opacity = 0.1); opacity: 0.1;">
<div style="position: absolute;top: 35%;left: 45%;width: 128px;height: 128px;z-index: 100;">
<img src="<o:Url value='/resource/main/images/loading1.gif'/>"/>
</div>
</div>
<s:form id="formList" name="formList" action="displayView" method="post" theme="simple">
<!-- 电子签章 -->
<div id="install" style="display:none">
<a id="hreftest2" href="<s:url value='/portal/share/component/signature/iSignatureHTML.zip'/>"><font color="red"><b> 点击下载金格iSignature电子签章HTML版软件</b></font></a>
</div>
<%
if(htmlBean.isSignatureExist()) {
%>
<%@include file="/portal/share/dynaform/view/batchSignatureObject.jsp"%>
<%
}
%>
<%@include file="/common/list.jsp"%>
<s:url id="backURL" action="displayView" >
<s:param name="_viewid" value="#parameters._viewid" />
<s:param name="_currpage" value="datas.pageNo"/>
<s:param name="parentid" value="#parameters.parentid" />
<s:param name="treedocid" value="#parameters.treedocid" />
<s:param name="isinner" value="#parameters.isinner" />
<s:param name="_resourceid" value="#parameters._resourceid" />
<s:param name="application" value="#parameters.application[0]" />
</s:url>
<!-- 一些供javascript使用的参数 document.getElementById来获取 -->
<s:hidden name="isedit" value="%{#parameters.isedit}" />
<s:hidden name="isenbled" value="%{#parameters.isenbled}" />
<!-- 当前视图对应的菜单编号 -->
<s:hidden id="resourceid" name="_resourceid" value="%{#parameters._resourceid}" />
<!-- 电子签章参数 -->
<s:hidden name="signatureExist" id="signatureExist"
value="%{#request.htmlBean.isSignatureExist()}"></s:hidden>
<s:set name="sinfo" value="#request.htmlBean.getSignatureInfo(datas)"/>
<s:hidden name="FormID" id="FormID" value="%{#sinfo.FormID}" ></s:hidden>
<s:hidden name="ApplicationID" id="ApplicationID" value="%{#sinfo.ApplicationID}" ></s:hidden>
<s:hidden name="DocumentID" id="DocumentID" value="%{#sinfo.DocumentID}" ></s:hidden>
<s:hidden name="mGetBatchDocumentUrl" id="mGetBatchDocumentUrl" value="%{#sinfo.mGetBatchDocumentUrl}" ></s:hidden>
<s:hidden name="mLoginname" id="mLoginname" value="%{#session.FRONT_USER.loginno}"></s:hidden>
<s:textarea name="message" value="%{#request.message.content}" cssStyle="display:none" />
<input type="hidden" name="_backURL" value="<%=request.getAttribute("backURL") %>" />
<!-- <s:hidden name="isedit" value="%{#parameters.isedit}" /> -->
<input type="hidden" name="_pageCount" value='<s:property value="datas.pageCount"/>' />
<s:hidden name="_isdiv" value="%{#parameters.isDiv}" />
<input type="hidden" name="divid" value="{#parameters.divid}" />
<s:hidden name="tabid" id="tabid" value=""/>
<s:hidden name="currentDate" value="%{#parameters.currentDate}" />
<s:hidden name="viewEvent" value="%{#parameters.viewEvent}" />
<s:if test="#parameters.isFreeFlow[0] == 'yes'">
<!--TODO 视图中添加文档打开类型,新建窗口打开-->
<input type="hidden" name="_openType" value='0x0000130' />
</s:if>
<s:else>
<input type="hidden" name="_openType" value='<s:property value="content.openType"/>' />
</s:else>
<s:hidden name="_fieldid" value="%{#parameters._fieldid}" />
<!-- 父表单ID参数 -->
<s:hidden name="parentid" value="%{#parameters.parentid}" />
<!-- 树形视图参数 -->
<s:hidden id="treedocid" name="treedocid" value="%{#parameters.treedocid}" />
<!-- 内嵌视图参数 -->
<s:hidden id="isinner" name="isinner" value="%{#parameters.isinner}" />
<div id="container" class="front-visibility-hidden front-scroll-hidden" style="width:100%;">
<%@include file="/common/msg.jsp"%>
<s:if test="runtimeException.nativeMessage !=null && runtimeException.nativeMessage !=''">
<%@include file="/portal/share/common/msgbox/msg.jsp"%>
</s:if>
<div id="activityTable" class="front-border-bottom" style="width:100%;">
<table class="front-table-act front-table-full-width">
<tr valign="middle" style="height:45px;background-color:#FFFFFF">
<td>
<div id="modnav" style="color: #1963AA;font-weight: normal;margin-left:20px">
</div>
</td>
<td>
<!-- 输出视图操作HTML -->
<s:property value="#request.htmlBean.toActHtml()" escape="false"/>
<s:hidden id="viewid" name="_viewid" />
<s:hidden name="_sortCol" />
<s:hidden name="_orderby" />
<s:hidden name="_sortStatus" />
</td>
</tr>
</table>
</div>
<!-- 是否显示查询表单 -->
<s:if test="#request.htmlBean.showSearchForm">
<!-- 要在BackURL传递的参数放在 searchFormTable-->
<div id="searchFormTable" class="front-scroll-hidden front-bgcolor2" style="width:100%;padding: 7px 10px 0px 10px;">
<table class="front-table-full-width">
<tr>
<td>
<!-- 输出查询表单HTML -->
<s:property value="#request.htmlBean.toSearchFormHtml()" escape="false"/>
</td>
<!-- 是否显示查询表单按钮 -->
<s:if test="#request.htmlBean.showSearchFormButton">
<td style="width:150px;">
<table>
<tr>
<td style="border-image: none; width: 50px; height: 30px; text-align: center; background-color: rgb(111, 179, 224);">
<%-- <span class="button-cmd">
<a οnclick="modifyActionBack();" style="margin-right:10px;line-height: 32px">
<span>
<img align="middle" src="<o:Url value='/resource/document/query.gif' />">{*[Query]*}
</span>
</a>
</span> --%>
<span>
<a href="javascript:void(0);return false" οnclick="modifyActionBack();">
<font color="white">查 询</font>
</a>
</span>
</td>
</tr>
<tr>
<td >
<%-- <span class="button-cmd">
<a οnclick="ev_resetAll()">
<span>
<img align="middle" src="<o:Url value='/resource/document/reset.gif' />">{*[Reset]*}
</span>
</a>
</span> --%>
</td>
</tr>
</table>
</td>
</s:if>
</tr>
</table>
</div>
</s:if>
<!-- 数据表格 -->
<s:if test="#session.isMonthReport==true">
<div id="dataTable" class="front-scroll-auto front-bgcolor2" style="width: 99% !important; margin-top: 10px; padding-left: 0px; ">
</s:if>
<s:else>
<div id="dataTable" class="front-scroll-auto front-bgcolor2" style="width:98%;margin-top: 10px;padding-left:10px;">
</s:else>
<textarea id='_remark' type='text' style='display:none;' name='_remark'></textarea>
<div id='doFlowRemarkDiv' style='display:none;width:280px;' title='{*[net.e_lian.bpm.core.dynaform.view.input_audit_remark]*}'>
<textarea id='temp_remark' rows='12' cols='35' name='temp_remark' style='width:<s:if test="#session.isMonthReport==true">100%;</s:if><s:else>97%</s:else>'></textarea></div>
<%
out.print(htmlBean.toHTMLText());
%>
</div>
<!-- 分页导航(page navigate) -->
<s:if test="_isPagination == 'true' || _isShowTotalRow == 'true'">
<!-- <div id="pageTable" class="front-scroll-hidden" style="margin-left:12px;margin-top:5px;"> -->
<div id="pageTable" style="margin-top:5px;display:block;height:35px;background-color: #e5e5e5;vertical-align: middle;width:<s:if test="#session.isMonthReport==true">99%;margin-left:0px;</s:if><s:else>98%;margin-left:12px;</s:else>">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="page-nav" style="background-color: #e5e5e5"><td style="padding-top:3px">
<s:if test="_isPagination == 'true'">
<s:if test="datas.pageNo > 1">
<%-- <a href='javascript:showFirstPage(null, listAction)'><img src="<o:Url value='/resource/document/pg_first.gif' />" alt="{*[FirstPage]*}"></a> --%>
<a href='javascript:showPreviousPage(null, listAction)'><img src="<o:Url value='/resource/document/pg_previous.gif' />" alt="{*[PrevPage]*}" style="margin-top:-5px"></a>
</s:if>
<s:else>
<%-- <img src="<o:Url value='/resource/document/pg_first_d.gif' />" alt="{*[FirstPage]*}"> --%>
<img src="<o:Url value='/resource/document/pg_previous_d.gif' />" alt="{*[PrevPage]*}" style="margin-top:-5px">
</s:else>
<img src="<o:Url value='/resource/document/act_seperate.gif' />"/>
<s:property value='datas.pageNo' />{*[Page]*} {*[Total]*}<s:property value='datas.pageCount' />{*[Page]*}
<img src="<o:Url value='/resource/document/act_seperate.gif' />"/>
<s:if test="datas.pageCount > 1">
{*[net.e_lian.bpm.core.dynaform.activity.type.jump]*}至 <input type="text" style="width:25px;height:19px;margin:1px" name="_jumppage" />
<button type="button" οnclick='javascript:jumpPage(listAction);' style="height:20px;line-height:17px;margin:3px">{*[net.e_lian.bpm.core.dynaform.activity.type.jump]*}</button>
</s:if>
<img src="<o:Url value='/resource/document/act_seperate.gif' />"/>
<s:if test="datas.pageNo < datas.pageCount">
<a href='javascript:showNextPage(null, listAction)'><img src="<o:Url value='/resource/document/pg_next.gif' />" alt="{*[NextPage]*}" style="margin-top:-5px"></a>
<%-- <a href='javascript:showLastPage(null, listAction)'><img src="<o:Url value='/resource/document/pg_last.gif' />" alt="{*[EndPage]*}"></a> --%>
</s:if>
<s:else>
<img src="<o:Url value='/resource/document/pg_next_d.gif' />" alt="{*[NextPage]*}" style="margin-top:-5px">
<%-- <img src="<o:Url value='/resource/document/pg_last_d.gif' />" alt="{*[EndPage]*}"> --%>
</s:else>
<img src="<o:Url value='/resource/document/act_seperate.gif' />"/>
</s:if>
<s:if test="_isShowTotalRow == 'true'">
<td align="right" style="padding-right:20px">{*[TotalRows]*}:(<s:property value="totalRowText" />)条</td>
<td align="right"></td>
</s:if>
</td></tr>
</table>
</div>
</s:if>
<!-- 分页导航结束(end of page navigate) -->
</div>
</s:form>
<%
out.println(htmlBean.toContextMenuHtml());
%>
</body>
</html>
</o:MultiLanguage>
2.js
/**
* 后台预览的时候判断页面是否重构完成
*/
var isComplete = false;
/**
* 判断视图是否设置了列宽
*/
var isSetWidth = false;
/**
* 列表视图公用初始化方法
* @return
*/
function initListComm(){
selectData4Doc(); //回选列表数据
setTimeout(function(){
jqRefactor4ListView();//视图jquery重构
jQuery("div[moduleType='viewFileManager']").bpmViewFileManager(); //列表视图文件管理功能
jQuery("div[moduleType='viewTakePhoto']").bpmViewTakePhoto(); //列表视图在线拍照功能
jQuery("div[moduleType='viewImageUpload']").bpmViewImageUpload(); //列表视图图片上传功能
jQuery("div[moduleType='viewImageUpload2DataBase']").bpmViewImageUpload2DataBase(); //列表视图图片上传到数据库功能
var array = getClass("td","listDataTrFirstTd");
listViewAdjustLayout(array.length);
jQuery("#dataTable table").css("width","98%");
jQuery("#dataTable table tr:odd").css("background-color","#ffffff");
jQuery("#dataTable table tr:even").css("background-color","#eeeeee");
},50);
setTimeout(function(){
jqRefactor();//表单控件jquery重构
},10);
refresh4Record(); //刷新对应菜单的总记录数
ev_reloadParent(); //刷新父窗口树型对象
setTimeout(function(){
showPromptMsg(); //显示提示信息
},300);
displayActivityTime(); //子文档为编辑模式时才显示activity
openDownloadWindow(openDownWinStr); // 打开Excel下载窗口
jQuery(document).keydown(function(e){
enterKeyDown(e);
});
isComplete = true; //后台预览的时候判断页面是否重构完成
setTimeout("judgeOperating()",100); //提示是否可以执行操作
enterJump(); //回车触发分页跳转
}
//给后台preview.jsp视图预览的时候判断页面是否重构完成
function getIsComplete(){
return isComplete ;
}
/**
* 列表视图调整布局
* for:default/fresh/dwz/brisk/gentle
*/
function listViewAdjustLayout(dataCount){
var bodyH=document.body.clientHeight;
jQuery("#container").height(bodyH);
jQuery("#container").width(jQuery("body").width());
var activityTableH=jQuery("#activityTable").height();
var searchFormTableH;
if(jQuery("#searchFormTable").attr("id")=="searchFormTable"){
searchFormTableH=jQuery("#searchFormTable").height()+18;/*20px is the padding height*/
}else{
searchFormTableH=0;
}
var pageTableH=jQuery("#pageTable").height();
/*var dataHeight = bodyH-activityTableH-searchFormTableH-43 * (15.5 - dataCount);
if(dataCount == 0){
dataHeight = bodyH-activityTableH-searchFormTableH-43 * (13.5 - dataCount);
}
if(searchFormTableH != 0){
dataHeight = bodyH-activityTableH-searchFormTableH-25 * (13.5 - dataCount);
}*/
var dataHeight = 420;
var viewid=jQuery("#viewid").val();
if(viewid == '11e5-e1ae-a4238b63-936c-fba02987301b'){
// 考勤月报列表页面高度单独处理
/*if(dataCount != 0){
dataHeight = bodyH-activityTableH-searchFormTableH - 37;
if(dataHeight < 420){
dataHeight = 420;
}
}*/
dataHeight = 540;
}
jQuery("#dataTable").height(dataHeight);
}
/**
* 子文档为编辑模式时才显示activity
* for:default/gentle/fresh/dwz/brisk/blue
*/
function displayActivityTime() {
var activityTable = document.getElementById("activityTable");
isedit = document.getElementById("isedit") ? document.getElementById("isedit").value : '';
if (isedit != 'null' && isedit != '') {
if (isedit == 'true' || isedit) {
activityTable.style.display = '';
} else {
activityTable.style.display = 'none';
}
} else {
activityTable.style.display = '';
}
enbled = document.getElementById("isenbled") ? document.getElementById("isenbled").value : '';
if (enbled != 'null' && enbled != '') {
activityTable.style.display = 'none';
}
}
/**
* for:default/gentle/fresh/dwz/brisk/blue
*/
function createDoc(activityid) {
// 查看/script/view.js
var action = activityAction + "?_activityid=" + activityid;
openWindowByType(action,selectStr, VIEW_TYPE_NORMAL, activityid);
}
/**
* for:default/gentle/fresh/dwz/brisk/blue
*/
function viewDoc(docid, formid ,signatureExist,templateForm,isEdit,instanceId,nodeId) {
// 查看/script/view.js
var url = docviewAction;
if(isFreeFlow == 'yes'){
url = docviewAction_FreeFlow;
}
url += '?_docid=' + docid;
if (formid) {
url += '&_formid=' + formid;
}
if (templateForm) {
url += '&_templateForm=' + templateForm;
}
if(signatureExist){
url += '&signatureExist=' + signatureExist;
}
if(instanceId){
url += '&_targetInstance=' + instanceId;
}
if(nodeId){
url += '&_targetNode=' + nodeId;
}
openWindowByTypeEx(url,selectStr, OPEN_TYPE_NORMAL);
}
function openWindowByTypeEx(action, title, viewType) {
if(toggleButton("button_act")) return false;
// View的openType(打开类型)
var openType = OPEN_TYPE_NORMAL;
var url = action;
if (document.getElementsByName("_openType")[0]) {
openType = document.getElementsByName("_openType")[0].value;
}
var parameters = getQueryString();
resetBackURL(); // view.js
if (isHomePage()) { // 首页单独处理
url += "&_backURL="
+ encodeURIComponent(contextPath
+ "/portal/dispatch/homepage.jsp");
url += "&" + parameters;
parent.location = appendApplicationidByView(url);
} else {
document.forms[0].action = url;
document.forms[0].target = '_blank';
document.forms[0].submit();
}
}
/**
* for:default/gentle/fresh/dwz/birsk/blue
*/
function on_delete(colId){
var rtn = window.confirm("确定要删除您选择的记录吗?");
if (!rtn){
return;
}
var temps = document.getElementsByName("_selects");
for(i = 0; i<temps.length; i++){
if(document.getElementsByName("_selects")[i].value == colId){
document.getElementsByName("_selects")[i].checked = true;
}else{
document.getElementsByName("_selects")[i].checked = false;
}
}
document.forms[0].action = 'delete.action';
document.forms[0].submit();
}
/**
* for:default/gentle/fresh/dwz/brisk/blue
*/
function on_doflow(colId , approveLimit){
jQuery('#doFlowRemarkDiv').dialog({
open:function(){
jQuery('#doFlowRemarkDiv').css('height','auto');
var doFlowRemarkDivParentH = jQuery('#doFlowRemarkDiv').parent().height();
var doFlowRemarkDivParentW = jQuery('#doFlowRemarkDiv').parent().width();
var bodyH = jQuery('body').height();
var bodyW = jQuery('body').width();
var leftVal;
var topVal;
topVal = bodyH - doFlowRemarkDivParentH;
topVal = topVal/2;
jQuery('#doFlowRemarkDiv').parent().css('top',topVal);
leftVal = bodyW - doFlowRemarkDivParentW;
leftVal = leftVal/2;
jQuery('#doFlowRemarkDiv').parent().css('left',leftVal);
},
autoOpen: true,
width: 800,
buttons: {okMessage: function() {
jQuery('#_remark').val(jQuery('#temp_remark').val());
if(jQuery('#_remark').val()!=''){
jQuery(this).dialog('close');
on_doflow1(colId, approveLimit);
}else{
alert(someInformation);
}
},
cancelMessage: function(){
jQuery(this).dialog('close');
}
}
});
var buttonClass = "ui-button-text";
for(var i = 0;i < jQuery("."+buttonClass).size();i++){
if(jQuery("."+buttonClass).eq(i).text() == "okMessage"){
jQuery("."+buttonClass).eq(i).text(okMessage);
}
if(jQuery("."+buttonClass).eq(i).text() == "cancelMessage"){
jQuery("."+buttonClass).eq(i).text(cancelMessage);
}
}
}
function on_doflow1(colId, approveLimit){
var temps = document.getElementsByName("_selects");
for(i = 0; i<temps.length; i++){
if(document.getElementsByName("_selects")[i].value == colId){
document.getElementsByName("_selects")[i].checked = true;
}else{
document.getElementsByName("_selects")[i].checked = false;
}
}
var _approveLimit = document.createElement("input");
_approveLimit.type = "hidden";
_approveLimit.name="_approveLimit";
_approveLimit.value=approveLimit;
document.forms[0].appendChild(_approveLimit);
document.forms[0].action = 'doflow.action';
document.forms[0].submit();
}
/**刷新对应菜单的总记录数
* for:default/gentle/fresh/dwz/brisk/blue
*/
function refresh4Record(){
var atrr=jQuery("#resourceid").val();
var resourceid=atrr.split(",")[0];
var viewid=jQuery("#viewid").val();
if(resourceid!=null && resourceid!=''){
if(typeof(window.parent.reflashTotalRow) == "function")
window.parent.reflashTotalRow(resourceid,viewid);
}
}
/**
* for:default/gentle/fresh/dwz/brisk/blue
*/
function on_unload() {
ev_reloadParent();
}
/**
* 显示提示信息
* for:default/gentle/fresh/dwz/brisk/blue
*/
function showPromptMsg(){
var funName = typeName;
var url = urlValue;
var msg = document.getElementsByName("message")[0].value;
if (msg) {
try{
eval("do" + funName + "(msg , url);");
} catch(ex) {
}
}
}
/**
* 提示是否可以执行操作
* for:default/gentle/dwz
*/
function judgeOperating(){
var query = location.search.substring(1);
var index = query.indexOf("isopenablescript=");
var isopenablescript=query.substring(index+17,index+23);
if(isopenablescript=='false;'){
alert(isOpenAbleScriptShow);
}
}
/**
* for:dwz
*/
function showWordDialogWithView(title, str, docid, value, fieldname, opentype, displayType, saveable, isSignature) {
wx = '900px';
wy = '700px';
var application = document.getElementById("ApplicationID").value;
var url = contextPath + '/portal/dynaform/document/dostart.action?_docid='
+ docid + "&type=word&_fieldname=" + fieldname + "&_opentype="
+ opentype+"&_displayType="+displayType
+ "&saveable=" + saveable
+ "&application=" + application
+ "&isSignature=" + isSignature
+ "&filename=" + value;
BPM.dialog.show({
width : 900,
height : 700,
url : url,
args : {},
title : title,
close : function() {
}
});
}
function FormBaiduMap(FieldID,applicationid,displayType){
var oField = jQuery("#"+ FieldID);
var url=contextPath+"/portal/share/component/map/form/baiduMap.jsp?type=dialog&applicationid="+applicationid+"&displayType="+displayType;
BPM.dialog.show({
title : title_map,
url : url,
args: {"fieldID":FieldID,"mapData":oField.val()},
width : 1000,
height : 600,
close : function(result) {
}
});
}
/**
* 重构列表视图
*/
(function($){
$.fn.bpmListView = function(){
return this.each(function(){
var Column = {
COLUMN_TYPE_SCRIPT : 'COLUMN_TYPE_SCRIPT', //脚本编辑模式
COLUMN_TYPE_FIELD : 'COLUMN_TYPE_FIELD', //视图编辑模式
COLUMN_TYPE_OPERATE : 'COLUMN_TYPE_OPERATE',//操作列
COLUMN_TYPE_LOGO : 'COLUMN_TYPE_LOGO', //图标列
COLUMN_TYPE_ROWNUM : 'COLUMN_TYPE_ROWNUM', //序号列
DISPLAY_ALL : '00' //显示方式的常量
},
ColumnOperaType = {
BUTTON_TYPE_DELETE : "00",
BUTTON_TYPE_DOFLOW : "01",
BUTTON_TYPE_TEMPFORM : "03",
BUTTON_TYPE_SCRIPT : "04",
BUTTON_TYPE_JUMP : "05"//操作列增加跳转类型按钮
},
View = {
DISPLAY_TYPE_TEMPLATEFORM : "templateForm"
},
Setting = {//
TABLE_CLASS : 'listDataTable', //表格class
TH_CLASS : 'listDataTh', //标题行class
TH_FIRST_TD_CLASS : 'listDataThFirstTd', //标题行第一个单元格class
TH_TD_CLASS : 'listDataThTd', //标题行其他单元格class
TR_FIRST_TD_CLASS : 'listDataTrFirstTd', //数据行第一个单元格class
TR_TD_CLASS : 'listDataTrTd', //数据行其他单元格class
TR_CLASS : 'listDataTr', //数据行class
TR_OVER_CLASS : 'listDataTr_over' //数据行滑过class
},
/**
* 重构数据行td
*/
toDataTdHtml = function($tdField){
var tdAttrs = {};
tdAttrs.displayType = $tdField.attr('displayType');
tdAttrs.colWidth = $tdField.attr('colWidth');
tdAttrs.colGroundColor = $tdField.attr('colGroundColor');
tdAttrs.colColor = $tdField.attr('colColor');
tdAttrs.colFontSize = $tdField.attr('colFontSize');
tdAttrs.isVisible = $tdField.attr('isVisible');
tdAttrs.isReadonly = $tdField.attr('isReadonly');
tdAttrs.colType = $tdField.attr('colType');
tdAttrs.fieldInstanceOfWordField = $tdField.attr('fieldInstanceOfWordField');
tdAttrs.fieldInstanceOfMapField = $tdField.attr('fieldInstanceOfMapField');
tdAttrs.displayType = $tdField.attr('displayType');
tdAttrs.isShowTitle = $tdField.attr('isShowTitle');
tdAttrs.isHidden = $tdField.attr('isHidden');
tdAttrs.colDisplayLength = $tdField.attr('colDisplayLength');
tdAttrs.colFieldName = $tdField.attr('colFieldName');
tdAttrs.colFlowReturnCss = $tdField.attr('colFlowReturnCss');
tdAttrs.viewDisplayType = $tdField.attr('viewDisplayType');
tdAttrs.isSignatureExist = $tdField.attr('isSignatureExist');
tdAttrs.isEdit = $tdField.attr('isEdit');
tdAttrs.colButtonType = $tdField.attr('colButtonType');
tdAttrs.colApproveLimit = $tdField.attr('colApproveLimit');
tdAttrs.colButtonName = $tdField.attr('colButtonName');
tdAttrs.colMappingform = $tdField.attr('colMappingform');
tdAttrs.colIcon = $tdField.attr('colIcon');
tdAttrs.colId = $tdField.attr("colId");
tdAttrs.colTemplateForm = $tdField.attr("colTemplateForm");
tdAttrs.showword = $tdField.attr("showword");
tdAttrs.displayType = (tdAttrs.displayType == 'true'?true:false);
tdAttrs.colWidth = (tdAttrs.colWidth != "null")?tdAttrs.colWidth:'';
tdAttrs.colGroundColor = (tdAttrs.colGroundColor && tdAttrs.colGroundColor != "null" && tdAttrs.colGroundColor != "FFFFFF")?tdAttrs.colGroundColor:'';
tdAttrs.colColor = (tdAttrs.colColor && tdAttrs.colColor != "null" && tdAttrs.colColor != "000000")?tdAttrs.colColor:'';
tdAttrs.colFontSize = (tdAttrs.colFontSize && tdAttrs.colFontSize != "null" && tdAttrs.colFontSize != "12")?tdAttrs.colFontSize:'';
tdAttrs.isVisible = (tdAttrs.isVisible == 'true'?true:false);
tdAttrs.isReadonly = (tdAttrs.isReadonly == 'true'?true:false);
tdAttrs.colType = tdAttrs.colType?tdAttrs.colType:"";
tdAttrs.fieldInstanceOfWordField = (tdAttrs.fieldInstanceOfWordField == 'true'?true:false);
tdAttrs.fieldInstanceOfMapField = (tdAttrs.fieldInstanceOfMapField == 'true'?true:false);
tdAttrs.displayType = tdAttrs.displayType?tdAttrs.displayType:"";
tdAttrs.isShowTitle = (tdAttrs.isShowTitle == 'true'?true:false);
tdAttrs.colDisplayLength = tdAttrs.colDisplayLength?tdAttrs.colDisplayLength:"";
tdAttrs.colFieldName = tdAttrs.colFieldName?tdAttrs.colFieldName:"";
tdAttrs.colFlowReturnCss = (tdAttrs.colFlowReturnCss == 'true'?true:false);
tdAttrs.viewDisplayType = (tdAttrs.viewDisplayType != "null")?tdAttrs.viewDisplayType:'';
tdAttrs.isSignatureExist = (tdAttrs.isSignatureExist == 'true'?true:false);
tdAttrs.isEdit = (tdAttrs.isEdit == 'true'?true:false);
tdAttrs.isHidden = (tdAttrs.isHidden == 'true'?true:false);
tdAttrs.colButtonType = (tdAttrs.colButtonType != "null")?tdAttrs.colButtonType:'';
tdAttrs.colApproveLimit = (tdAttrs.colApproveLimit != "null")?tdAttrs.colApproveLimit:'';
tdAttrs.colButtonName = (tdAttrs.colButtonName != "null")?tdAttrs.colButtonName:'';
tdAttrs.colMappingform = (tdAttrs.colMappingform != "null")?tdAttrs.colMappingform:'';
tdAttrs.colIcon = (tdAttrs.colIcon != "null")?tdAttrs.colIcon:'';
tdAttrs.showIcon = ($tdField.attr('showIcon') != null) ? $tdField.attr('showIcon'):'';
var tdHtml = '';
var pHtml = '';
var aHtml = '';
var docId = $tdField.attr('docId');
docId = docId?docId:'';
var title = characterDencode($tdField.attr('title'));
var tip = "";
if(title.indexOf("<table>") == -1)
tip = title;
var viewTemplateForm = $tdField.attr('viewTemplateForm');
viewTemplateForm = (viewTemplateForm != "null")?viewTemplateForm:'';
var docFormid = $tdField.attr('docFormid');
docFormid = docFormid?docFormid:'';
var jumpMapping = $tdField.find("div[name='jumpMapping']").html();
jumpMapping = jumpMapping?jumpMapping:'';
var result = $tdField.find("div[name='result']").html();
result = (result?result:'');
if(tdAttrs.showIcon){
result = "<img style='' src='../../../lib/icon/" + tdAttrs.showIcon+ "'/>";
}
var convert2HTMLEncode = function(str){
var s = str;
if(Column.COLUMN_TYPE_FIELD == tdAttrs.colType && !tdAttrs.colFieldName.substr(0,1) == "$" && !tdAttrs.colFlowReturnCss){
s = s.replace(new RegExp(">","gm"),">");
s = s.replace(new RegExp("<","gm"),"<");
}
return s;
};
//多流程状态时数据处理
var result2tdHtml = function(){
var templateForm = "";
if(View.DISPLAY_TYPE_TEMPLATEFORM == tdAttrs.viewDisplayType){
templateForm = viewTemplateForm;
}
var resHtml = "";
if("$StateLabel" == tdAttrs.colFieldName && (result.indexOf("[")==0 || result.indexOf("<img")==0)){//视图列绑定流程状态字段类型
//解析json数据生成html
resHtml += "<TABLE style=\"width:100%;border:0;\">";
var instances;
if(result.indexOf("[")==0){
instances = JSON.parse(result);
}else if(result.indexOf("<img")==0){
var jsonStartIndex = result.indexOf("[{"),
jsonEndIndex = result.lastIndexOf("}]"),
imgHtml = result.substring(0,result.indexOf("<font")),
fontStart = result.substring(result.indexOf("<font"),jsonStartIndex),
fontEnd = result.substring(jsonEndIndex + 2,result.length);
instances = result.substring(jsonStartIndex,jsonEndIndex + 2);
instances = eval("(" + instances + ")");
}
for(var i=0;i<instances.length;i++){
if(i+1==instances.length){
resHtml += "<tr><td style=\"line-height:16px;border-right-width:0;border-bottom-width:0; border-right-style: none;\">";
}else{
resHtml += "<tr><td style=\"line-height:16px;border-right-width: 0px; border-right-style: none;\">";
}
var instance = instances[i];
var instanceId = instance.instanceId;
var nodes = instance.nodes;
if(result.indexOf("<img")==0){
resHtml += imgHtml;
}
for(var j=0;j<nodes.length;j++){
var node = nodes[j];
var nodeId = node.nodeId;
var stateLable = node.stateLabel;
//只读
if(tdAttrs.isReadonly){
resHtml += stateLable;
}else {
resHtml += "<a href=\"javaScript:viewDoc('";
resHtml += docId + "', '";
resHtml += docFormid + "', '";
resHtml += tdAttrs.isSignatureExist + "', '";
resHtml += templateForm + "', '";
resHtml += tdAttrs.isEdit + "', '";
resHtml += instanceId + "', '";
resHtml += nodeId + "')\">";
if(result.indexOf("<img")==0){
stateLable = fontStart + stateLable + fontEnd;
}
resHtml += stateLable+"</a> ";
}
}
resHtml += "</td></tr>";
}
resHtml += "</TABLE>";
}else if("$PrevAuditNode" == tdAttrs.colFieldName && result.indexOf("[")==0){//视图列绑定上一环节流程处理节点名称字段
//解析json数据生成html
resHtml += "<TABLE style=\"width:100%;border:0;\">";
var instances = JSON.parse(result);
for(var i=0;i<instances.length;i++){
var instance = instances[i];
var instanceId = instance.instanceId;
var prevAuditNode = instance.prevAuditNode;
if(i+1==instances.length){
resHtml += "<tr><td title=\""+prevAuditNode+"\" style=\"line-height:16px;border-right-width:0;border-bottom-width:0; border-right-style: none;\">";
}else{
resHtml += "<tr><td title=\""+prevAuditNode+"\" style=\"line-height:16px;border-right-width: 0px; border-right-style: none;\">";
}
//只读
if(tdAttrs.isReadonly){
resHtml += prevAuditNode;
}else {
resHtml += "<a href=\"javaScript:viewDoc('";
resHtml += docId + "', '";
resHtml += docFormid + "', '";
resHtml += tdAttrs.isSignatureExist + "', '";
resHtml += templateForm + "', '";
resHtml += tdAttrs.isEdit + "', '";
resHtml += instanceId + "')\">";
resHtml += prevAuditNode+"</a> ";
}
resHtml += "</td></tr>";
}
resHtml += "</TABLE>";
}else if("$PrevAuditUser" == tdAttrs.colFieldName && result.indexOf("[")==0){//视图列绑定上一环节流程处理节点名称字段
//解析json数据生成html
resHtml += "<TABLE style=\"width:100%;border:0;\">";
var instances = JSON.parse(result);
for(var i=0;i<instances.length;i++){
var instance = instances[i];
var instanceId = instance.instanceId;
var prevAuditUser = instance.prevAuditUser;
if(i+1==instances.length){
resHtml += "<tr><td title=\""+prevAuditUser+"\" style=\"line-height:16px;border-right-width:0;border-bottom-width:0; border-right-style: none;\">";
}else{
resHtml += "<tr><td title=\""+prevAuditUser+"\" style=\"line-height:16px;border-right-width: 0px; border-right-style: none;\">";
}
//只读
if(tdAttrs.isReadonly){
resHtml += prevAuditUser;
}else {
resHtml += "<a href=\"javaScript:viewDoc('";
resHtml += docId + "', '";
resHtml += docFormid + "', '";
resHtml += tdAttrs.isSignatureExist + "', '";
resHtml += templateForm + "', '";
resHtml += tdAttrs.isEdit + "', '";
resHtml += instanceId + "')\">";
resHtml += prevAuditUser+"</a> ";
}
resHtml += "</td></tr>";
}
resHtml += "</TABLE>";
}else {
resHtml = result;
}
return resHtml;
};
if(!tdAttrs.displayType){
// 宽度为0时隐藏
if((tdAttrs.colWidth && tdAttrs.colWidth == '0') || !tdAttrs.isVisible || tdAttrs.isHidden ){
tdHtml += "<td class='" + Setting.TR_TD_CLASS + "' style='display: none;'>";
}else if(tdAttrs.colGroundColor != ""){//如果设置了底色,加上底色
tdHtml += "<td class='" + Setting.TR_TD_CLASS + "' style='background-color:#" + tdAttrs.colGroundColor + ";'>";
}else{
/******************MOD [GOME_16_02_03_04_08_07_03] by fuqiang 20160504 start ******************/
// tdHtml += "<td class='" + Setting.TR_TD_CLASS + "' >";
if(isMonthReport == 'true'){
/******************MOD [GOME_16_02_03_04_08_07_03] by考勤月报数字列居右 fanguofeng 20160811 start ******************/
if( !isNaN(convert2HTMLEncode(result))&&"COLUMN_TYPE_ROWNUM" != tdAttrs.colType )
{
tdHtml += "<td class='" + Setting.TR_TD_CLASS + "' style=\"overflow-x:hidden;text-align:right\" >";
}else{
tdHtml += "<td class='" + Setting.TR_TD_CLASS + "' style=\"overflow-x:hidden;\" >";
}
/******************MOD [GOME_16_02_03_04_08_07_03] by考勤月报数字列居右 fanguofeng 20160811 END ******************/
//tdHtml += "<td class='" + Setting.TR_TD_CLASS + "' style=\"overflow-x:hidden;\" >";
}else{
tdHtml += "<td class='" + Setting.TR_TD_CLASS + "' >";
}
/******************MOD [GOME_16_02_03_04_08_07_03] by fuqiang 20160504 end ******************/
}
//只读或logo列或列字段或word控件字段
if(tdAttrs.isReadonly || tdAttrs.colType == "COLUMN_TYPE_LOGO" || tdAttrs.fieldInstanceOfWordField || tdAttrs.fieldInstanceOfMapField){//|| !tdAttrs.isEdit ) {
if(!tdAttrs.fieldInstanceOfWordField && !tdAttrs.fieldInstanceOfMapField){
var pHtml = "";
pHtml += "<p";
if(tdAttrs.isShowTitle)
pHtml += " title='" + title + "'";
//如果有设置字体大小及颜色
if((tdAttrs.colColor != "") || (tdAttrs.colFontSize != "")){
pHtml += " style='";
if(tdAttrs.colColor != ""){
pHtml += "color:#" + tdAttrs.colColor + ";";
}
if(tdAttrs.colFontSize != ""){
pHtml += "font-size:" + tdAttrs.colFontSize + "px;";
}
pHtml += "'";
}
pHtml += " >";
//子流程标签和处理人数据处理
if(tdAttrs.isReadonly){
if(result != null){
result = result2tdHtml();
}
}
if(Column.DISPLAY_ALL == tdAttrs.displayType){
pHtml += convert2HTMLEncode(result) + "</p>";
}else{
pHtml += convert2HTMLEncode(result) + "</p>";
// var displayLength = -1;
// //不为空/空字符串/非数字类型
// if(tdAttrs.colDisplayLength && tdAttrs.colDisplayLength != "" && tdAttrs.colDisplayLength.match("\\d+")){
// displayLength = tdAttrs.colDisplayLength;
// }
// if(displayLength > -1){
// if(result.length > displayLength){
// var r = result.substring(0,displayLength);
// pHtml += convert2HTMLEncode(r) + "..." + "</p>";
// }else{
// pHtml += convert2HTMLEncode(result) + "</p>";
// }
// }else{
// pHtml += convert2HTMLEncode(result) + "</p>";
// }
}
tdHtml += pHtml;
}
}else{
if(result != null){
var aHtml = "";
if(result.toLowerCase().indexOf("<a ") != -1
|| result.toLowerCase().indexOf("<a>") != -1
|| (result.toLowerCase().indexOf("<input ") != -1
&& (result.toLowerCase().indexOf("type='button'") != -1
|| result.toLowerCase().indexOf("type=button") != -1))
|| result.toLowerCase().indexOf("viewdoc") != -1){
aHtml += result;
}else{
//子流程标签和处理人数据处理
result = result2tdHtml();
var templateForm = "";
if(View.DISPLAY_TYPE_TEMPLATEFORM == tdAttrs.viewDisplayType){
templateForm = viewTemplateForm;
}
if(result.indexOf("<TABLE>") != -1){
// aHtml += "<div style=\"cursor:pointer;\" οnclick=\"javaScript:viewDoc('";
aHtml += "<div style=\"cursor:pointer;\" ";
}else{
aHtml += "<a href=\"javaScript:viewDoc('";
aHtml += docId + "', '";
aHtml += docFormid + "', '";
aHtml += tdAttrs.isSignatureExist + "', '";
aHtml += templateForm + "', '";
aHtml += tdAttrs.isEdit + "')\"";
}
//如果有设置字体大小及颜色
if((tdAttrs.colColor != "") || (tdAttrs.colFontSize != "")){
aHtml += " style='";
if(tdAttrs.colColor != ""){
aHtml += "color:#" + tdAttrs.colColor + ";";
}
if(tdAttrs.colFontSize != ""){
aHtml += "font-size:" + tdAttrs.colFontSize + "px;";
}
aHtml += "'";
}
if(result.indexOf("img") != -1) {
if(tdAttrs.isShowTitle)
aHtml += " title='" + convert2HTMLEncode(tip) + "'";
aHtml += " >";
if(result.indexOf("<TABLE>") != -1){
aHtml += convert2HTMLEncode(result) + "</div>";
}else{
aHtml += convert2HTMLEncode(result) + "</a>";
}
}else{
if(tdAttrs.isShowTitle)
aHtml += " title='" + convert2HTMLEncode(tip) + "'";
aHtml += " >";
if(result.indexOf("<TABLE>") != -1){
aHtml += convert2HTMLEncode(result) + "</div>";
}else{
aHtml += convert2HTMLEncode(result) + "</a>";
}
// if(Column.DISPLAY_ALL == tdAttrs.displayType || result == " "){
// aHtml += convert2HTMLEncode(result) + "</a>";
// }else{
// var displayLength = -1;
// //不为空/空字符串/非数字类型�
// if(tdAttrs.colDisplayLength && tdAttrs.colDisplayLength != "" && tdAttrs.colDisplayLength.match("\\d+")){
// displayLength = tdAttrs.colDisplayLength;
// }
// if(displayLength > -1){
// if(result.length > displayLength){
// var r = result.substring(0,displayLength);
// aHtml += convert2HTMLEncode(r) + "..." + "</a>";
// }else{
// aHtml += convert2HTMLEncode(result) + "</a>";
// }
// }else{
// aHtml += convert2HTMLEncode(result) + "</a>";
// }
// }
}
}
}
tdHtml += aHtml;
}
//操作列
if("COLUMN_TYPE_OPERATE" == tdAttrs.colType && ColumnOperaType.BUTTON_TYPE_DELETE == tdAttrs.colButtonType){
var inputHtml = "<input type=button value='" + tdAttrs.colButtonName;
inputHtml += "' οnclick=\"on_delete('"+docId+"')\" ";
inputHtml += "/>";
tdHtml += inputHtml;
}else if("COLUMN_TYPE_OPERATE" == tdAttrs.colType && ColumnOperaType.BUTTON_TYPE_DOFLOW == tdAttrs.colButtonType){
var inputHtml = "<input type=button value='" + tdAttrs.colButtonName;
inputHtml += "' οnclick=\"on_doflow('"+docId+"','"+tdAttrs.colApproveLimit+"')\" ";
inputHtml += "/>";
tdHtml += inputHtml;
}else if("COLUMN_TYPE_OPERATE" == tdAttrs.colType && ColumnOperaType.BUTTON_TYPE_TEMPFORM == tdAttrs.colButtonType){
var inputHtml = "<input type=button value='" + tdAttrs.colButtonName;
inputHtml += "' οnclick=\"viewDoc('"+docId+"','"+docFormid+"','"+tdAttrs.isSignatureExist+"','"+tdAttrs.colTemplateForm+"')\" ";
inputHtml += "/>";
tdHtml += inputHtml;
}else if("COLUMN_TYPE_OPERATE" == tdAttrs.colType && ColumnOperaType.BUTTON_TYPE_SCRIPT == tdAttrs.colButtonType){
var inputHtml = "<input type=button value='" + tdAttrs.colButtonName;
inputHtml += "' οnclick=\"runscript('"+docId+"','"+tdAttrs.colId+"')\" ";
inputHtml += "/>";
tdHtml += inputHtml;
}else if("COLUMN_TYPE_OPERATE" == tdAttrs.colType && ColumnOperaType.BUTTON_TYPE_JUMP == tdAttrs.colButtonType){
var inputHtml = "<input type=button value='" + tdAttrs.colButtonName;
inputHtml += "' οnclick=\"jumptoform('"+tdAttrs.colMappingform+"',"+jumpMapping+",'"+tdAttrs.colButtonName+"')\" ";
inputHtml += "/>";
tdHtml += inputHtml;
}
//logo列
if("COLUMN_TYPE_LOGO" == tdAttrs.colType && tdAttrs.colIcon && tdAttrs.colIcon != ""){
if(result.indexOf("<TABLE>") != -1){
tdHtml += "<img style='' src='../../../lib/icon/" + tdAttrs.colIcon+ "'/>";
}else{
tdHtml += "<a href=\"javaScript:viewDoc('";
tdHtml += docId + "', '";
tdHtml += docFormid + "', '";
tdHtml += tdAttrs.isSignatureExist + "', '";
tdHtml += templateForm + "', '";
tdHtml += tdAttrs.isEdit + "')\"><img style='' src='../../../lib/icon/" + tdAttrs.colIcon+ "'/></a>";
}
}
if(tdAttrs.fieldInstanceOfWordField){
var btnHtml = "<img src='../../share/images/view/word.gif'";
btnHtml += " οnclick=\"showWordDialogWithView('"+tdAttrs.showword+"','WordControl','"+docId+"','"+result+"','"+tdAttrs.colFieldName+"',3,2,false,true)\" ></img>";
tdHtml += btnHtml;
}else if(tdAttrs.fieldInstanceOfMapField){
var application = jQuery("body",parent.document).find("#application").val();
var fieldVal = "";
var displayType = 1;
var f_id = docId + "_" + tdAttrs.colFieldName;
var valhtml = convert2HTMLEncode(tip) == " "?"":"value = '" + convert2HTMLEncode(tip) + "'";
var btnHtml = "<input type='hidden' id = '" + f_id + "' " + valhtml + ">";
btnHtml += "<img src='../../share/images/view/map.png' style='margin: 0 5px;'";
btnHtml += " οnclick=\"FormBaiduMap('";
btnHtml += f_id + "', '";
btnHtml += application + "', '";
btnHtml += displayType + "')\"";
tdHtml += btnHtml;
}else if (result && result.length == 0) {
tdHtml += " ";
}
tdHtml += "</td>";
}
return tdHtml;
},//重构数据行td----end
/**
* 重构表头
*/
toFirstTdHtml = function($tdField){
var tdHtml = "";
var thAttrs = {};
thAttrs.upImg = "<img border=\"0\" src='../../share/images/view/up.gif'/>";
thAttrs.downImg = "<img border=\"0\" src='../../share/images/view/down.gif'/>";
thAttrs.colName = $tdField.attr("colName");
thAttrs.colText = $tdField.attr("colText");
thAttrs.isVisible = $tdField.attr("isVisible");
thAttrs.isHiddenColumn = $tdField.attr("isHiddenColumn");
thAttrs.colWidth = $tdField.attr("colWidth");
thAttrs.colType = $tdField.attr("colType");
thAttrs.colFieldName = $tdField.attr("colFieldName");
thAttrs.isOrderByField = $tdField.attr("isOrderByField");
thAttrs.isVisible = (thAttrs.isVisible == "true")?true:false;
thAttrs.isHiddenColumn = (thAttrs.isHiddenColumn == "true")?true:false;
thAttrs.colWidth = (thAttrs.colWidth == "null") ? "" : thAttrs.colWidth;
if(thAttrs.isVisible && !thAttrs.isHiddenColumn){
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 Start ***********************/
// if(thAttrs.colWidth != "0"){
if(thAttrs.colWidth != "0" || thAttrs.isHiddenColumn){
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 end ***********************/
if(thAttrs.colWidth != ""){
isSetWidth = true;
}
tdHtml += "<td width=\""
+ thAttrs.colWidth + "\" title=\"" + thAttrs.colText + "\"";
if(thAttrs.colWidth == "") tdHtml +=" class=\"" + Setting.TH_TD_CLASS + " nowrap\"";
else tdHtml +=" nowrap='nowrap' class=\"" + Setting.TH_TD_CLASS + "\"";
/******************MOD [GOME_16_02_03_04_08_07_03] by fuqiang 20160504 start ******************/
// tdHtml +=" style=\"overflow:hidden;\" ></td>";
if(isMonthReport == 'true'){
tdHtml +=" style=\"overflow-x:hidden;\" ></td>";
}else{
tdHtml +=" style=\"overflow:hidden;\" ></td>";
}
/******************MOD [GOME_16_02_03_04_08_07_03] by fuqiang 20160504 end ******************/
var $tdHtml = jQuery(tdHtml);
if(thAttrs.colType == "COLUMN_TYPE_FIELD"){
var aHtml = "<a style=\"cursor:pointer\" href=\"#\"></a>";
var $aHtml = jQuery(aHtml);
if(_sortCol != "null"){
if(_sortCol != "" && _sortCol.toUpperCase() == thAttrs.colFieldName.toUpperCase()){
$aHtml.append(thAttrs.colText);
if(_sortStatus == "ASC"){
$aHtml.append(thAttrs.upImg);
}else if(_sortStatus == "DESC"){
$aHtml.append(thAttrs.downImg);
}
}else{
if(thAttrs.isOrderByField != "null" && thAttrs.isOrderByField != "" && thAttrs.isOrderByField == "true"){
$aHtml.append(thAttrs.colText);
}else{//不勾选排序
$tdHtml.append(thAttrs.colText);
}
}
$aHtml.bind("click",function(){
sortTable(thAttrs.colFieldName);
}).appendTo($tdHtml);
}else{
if(thAttrs.isOrderByField != "null" && thAttrs.isOrderByField != "" && thAttrs.isOrderByField == "true"){
$aHtml.append(thAttrs.colText);
//可排序图标
if(_sortStatus == "ASC"){
$aHtml.append(thAttrs.upImg);
}else if(_sortStatus == "DESC"){
$aHtml.append(thAttrs.downImg);
}
$aHtml.bind("click",function(){
sortTable(thAttrs.colFieldName);
}).appendTo($tdHtml);
}else{//不勾选排序
$tdHtml.append(thAttrs.colText);
}
}
}else{//脚本不需要排序
$tdHtml.append(thAttrs.colText);
}
}else{
$tdHtml = jQuery("<td class=\"" + Setting.TH_TD_CLASS + "\" style=\"display:none;\">" + thAttrs.colName + "</td>");
}
}
return $tdHtml;
};//重构表头----end
var $field = jQuery(this);
var _sortCol = $field.attr("_sortCol");
var _sortStatus = $field.attr("_sortStatus");
var isSum = $field.attr("isSum");
isSum = (isSum == "true")?true:false;
var $tableHtml = jQuery("<table class=\"" + Setting.TABLE_CLASS + "\" id=\"dataTable\" style=\"table-layout:auto;\"></table>");
var sumTrIsHidden = true;
//判断是否输出汇总行
$field.find("#sumTrId").find("td").each(function(){
if(jQuery(this).attr("isSum") == "true"){
sumTrIsHidden = false;
return;
}
});
$field.children().children().each(function(i){//行<tr>
var $trHtml = "";
var $trField = jQuery(this);
if(i == 0){//首行(列头)
$trHtml = jQuery("<tr class=\"" + Setting.TH_CLASS + "\"></tr>");
$trField.children().each(function(i){//单元格<td>
var $tdField = jQuery(this);
if(i == 0){//首列
var tdHtml = "";
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 Start ***********************/
// tdHtml = "<td class=\"" + Setting.TH_FIRST_TD_CLASS + "\" scope=\"col\"></td>";
if ($tdField.attr("isHiddenColumn")) {
tdHtml = "<td class=\"" + Setting.TH_FIRST_TD_CLASS + "\" scope=\"col\" style=\"display:none;\"></td>";
} else {
tdHtml = "<td class=\"" + Setting.TH_FIRST_TD_CLASS + "\" scope=\"col\"></td>";
}
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 end ***********************/
var inputHtml = "";
/************************ ADD:增加列表checkbox状态连动全选框状态-全选框加ID by:songxiaoping in:2016-01-08 start ******************************/
// inputHtml += "<input type=\"checkbox\">";
inputHtml += "<input id=\"checkAll\" type=\"checkbox\">";
/************************ ADD:增加列表checkbox状态连动全选框状态-全选框加ID by:songxiaoping in:2016-01-08 end ******************************/
jQuery(tdHtml).append(jQuery(inputHtml).bind("click",function(){
selectAll(this.checked);
})).appendTo($trHtml);
}else{//其他列
$trHtml.append(toFirstTdHtml($tdField));
}
});
$tableHtml.append($trHtml);
$trHtml = null;
}else if(isSum && !sumTrIsHidden && (i == $field.children().children().size()-1)){//末行(字段值汇总)
$trHtml = jQuery("<tr class=\"" + Setting.TR_CLASS + "\" οnmοuseοver=\"this.className='"
+ Setting.TR_OVER_CLASS + "';\" οnmοuseοut=\"this.className='" + Setting.TR_CLASS + "';\">");
$trField.children().each(function(i){//单元格<td>
var tdHtml = "";
var $tdField = jQuery(this);
var sumTdAttrs = {};
sumTdAttrs.isVisible = $tdField.attr("isVisible");
sumTdAttrs.isHiddenColumn = $tdField.attr("isHiddenColumn");
sumTdAttrs.isSum = $tdField.attr("isSum");
sumTdAttrs.isTotal = $tdField.attr("isTotal");
sumTdAttrs.colName = $tdField.attr("colName");
sumTdAttrs.sumByDatas = $tdField.attr("sumByDatas");
sumTdAttrs.sumTotal = $tdField.attr("sumTotal");
sumTdAttrs.isVisible = (sumTdAttrs.isVisible == "true")?true:false;
sumTdAttrs.isHiddenColumn = (sumTdAttrs.isHiddenColumn == "true")?true:false;
sumTdAttrs.isSum = (sumTdAttrs.isSum == "true")?true:false;
sumTdAttrs.isTotal = (sumTdAttrs.isTotal == "true")?true:false;
if(i == 0){//首列
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 Start ***********************/
// tdHtml += "<td class=\"" + Setting.TR_FIRST_TD_CLASS + "\">";
if (sumTdAttrs.isHiddenColumn) {
tdHtml += "<td class=\"" + Setting.TR_FIRST_TD_CLASS + "\" style=\"display:none;\">";
} else {
tdHtml += "<td class=\"" + Setting.TR_FIRST_TD_CLASS + "\">";
}
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 end ***********************/
tdHtml += " </td>";
}else{//其他列
if(sumTdAttrs.isVisible && !sumTdAttrs.isHiddenColumn){
tdHtml += "<td>";
if(sumTdAttrs.isSum || sumTdAttrs.isTotal)
tdHtml += sumTdAttrs.colName;
if(sumTdAttrs.isSum)
tdHtml += sumTdAttrs.sumByDatas + " ";
if(sumTdAttrs.isTotal)
tdHtml += sumTdAttrs.sumTotal + " ";
tdHtml += "</td>";
}
}
$trHtml.append(tdHtml);
});
$tableHtml.append($trHtml);
$trHtml = null;
}else if($trField.attr("trType") =="dataTr"){//数据行
var dtrHtml = "<tr class=\"" + Setting.TR_CLASS + "\" οnmοuseοver=\"this.className='"
+ Setting.TR_OVER_CLASS + "';\" οnmοuseοut=\"this.className='" + Setting.TR_CLASS + "';\" >";
$trField.children().each(function(i){//单元格<td>
var $tdField = jQuery(this);
if(i == 0){//首列
var colId = $tdField.attr("colId");
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 Start ***********************/
// var tdHtml = "<td class=\"" + Setting.TR_FIRST_TD_CLASS + "\">";
var tdHtml = "";
if ($tdField.attr("isHiddenColumn")) {
tdHtml += "<td class=\"" + Setting.TR_FIRST_TD_CLASS + "\" style=\"display:none;\">";
} else {
tdHtml += "<td class=\"" + Setting.TR_FIRST_TD_CLASS + "\">";
}
/******************* EDIT:视图多选框显示配置 by:songxiaoping in:2015/10/26 end ***********************/
/************************ ADD:增加列表checkbox状态连动全选框状态-行选择框加点击事件 by:songxiaoping in:2016-01-08 start ******************************/
// tdHtml += "<input type=\"checkbox\" name=\"_selects\" value=\"" + colId + "\"/>";
tdHtml += "<input type=\"checkbox\" οnclick=\"clickCheckbox(this.checked);\" name=\"_selects\" value=\"" + colId + "\"/>";
/************************ ADD:增加列表checkbox状态连动全选框状态-行选择框加点击事件 by:songxiaoping in:2016-01-08 end ******************************/
dtrHtml += tdHtml;
tdHtml += "</td>";
}else{//其他列
dtrHtml += toDataTdHtml($tdField);//重构数据单元格
}
});
dtrHtml += "</tr>";
$tableHtml.append(dtrHtml);
dtrHtml = "";
}
});
if(isSetWidth){
$tableHtml.css("table-layout","fixed");//没有设置任何列宽时,列宽根据内容自动撑大
}
$tableHtml.replaceAll($field);
initContextMenu();//初始化右键菜单
});
};
})(jQuery);
/**
* jquery重构列表视图
* for:列表视图
*/
function jqRefactor4ListView(){
jQuery("table[moduleType='viewList']").bpmListView();
}