调整代码结构,增加我的发起流程列表
This commit is contained in:
parent
588696174b
commit
057d717432
@ -146,4 +146,17 @@ public class OaController extends DefaultBaseController {
|
||||
return new SuccessResultData<>(count);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "我的发起分页列表", notes = "我的发起分页列表接口")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
|
||||
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
|
||||
})
|
||||
@GetMapping("listpage-start-of-mine")
|
||||
public SuccessResultList<List<OaStartedInstanceDTO>> listPageStartOfMine(ListPage page) {
|
||||
Map<String, Object> requestParams = requestParams();
|
||||
page.setParams(requestParams);
|
||||
return oaCcService.listPageStartOfMine(page);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -76,4 +76,11 @@ public class OaRouteController extends DefaultBaseController {
|
||||
oaFormReportRouteService.updateRead(formCode, formVersion, ccId, httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@GetMapping("list-start-of-mine")
|
||||
public ModelAndView listStartOfMine() {
|
||||
ModelAndView mv = new ModelAndView("oa/list-start-of-mine");
|
||||
return mv;
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,8 @@ package ink.wgink.module.activiti.enums.oa.assignee;
|
||||
*/
|
||||
public enum AssigneeTypeEnum {
|
||||
APPOINT("appoint", "手动指定"),
|
||||
AUTO("auto", "自动获取");
|
||||
AUTO("auto", "自动获取"),
|
||||
FORM("form", "表单");
|
||||
|
||||
private String value;
|
||||
private String text;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package ink.wgink.module.activiti.handler;
|
||||
package ink.wgink.module.activiti.handler.task;
|
||||
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package ink.wgink.module.activiti.handler;
|
||||
package ink.wgink.module.activiti.handler.task;
|
||||
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package ink.wgink.module.activiti.handler;
|
||||
package ink.wgink.module.activiti.handler.task;
|
||||
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package ink.wgink.module.activiti.handler;
|
||||
package ink.wgink.module.activiti.handler.task;
|
||||
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package ink.wgink.module.activiti.listener.task;
|
||||
|
||||
import ink.wgink.module.activiti.handler.IOaUserTaskAssignmentHandler;
|
||||
import ink.wgink.module.activiti.handler.task.IOaUserTaskAssignmentHandler;
|
||||
import org.activiti.engine.delegate.DelegateExecution;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.JavaDelegate;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package ink.wgink.module.activiti.listener.task;
|
||||
|
||||
import ink.wgink.module.activiti.handler.IOaUserTaskCompleteHandler;
|
||||
import ink.wgink.module.activiti.handler.task.IOaUserTaskCompleteHandler;
|
||||
import org.activiti.engine.delegate.DelegateExecution;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.JavaDelegate;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package ink.wgink.module.activiti.listener.task;
|
||||
|
||||
import ink.wgink.module.activiti.handler.IOaUserTaskCreateHandler;
|
||||
import ink.wgink.module.activiti.handler.task.IOaUserTaskCreateHandler;
|
||||
import org.activiti.engine.delegate.DelegateExecution;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.JavaDelegate;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package ink.wgink.module.activiti.listener.task;
|
||||
|
||||
import ink.wgink.module.activiti.handler.IOaUserTaskDeleteHandler;
|
||||
import ink.wgink.module.activiti.handler.task.IOaUserTaskDeleteHandler;
|
||||
import org.activiti.engine.delegate.DelegateExecution;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.JavaDelegate;
|
||||
|
@ -0,0 +1,129 @@
|
||||
package ink.wgink.module.activiti.pojo.dtos.oa;
|
||||
|
||||
/**
|
||||
* @ClassName: OaStartedInstanceDTO
|
||||
* @Description: OA已经启动实例
|
||||
* @Author: wanggeng
|
||||
* @Date: 2022/7/18 16:25
|
||||
* @Version: 1.0
|
||||
*/
|
||||
public class OaStartedInstanceDTO {
|
||||
|
||||
private String deploymentId;
|
||||
private String processDefinitionId;
|
||||
private String processDefinitionKey;
|
||||
private String processDefinitionName;
|
||||
private Integer processDefinitionVersion;
|
||||
private String processInstanceId;
|
||||
private String startActivityId;
|
||||
private String startTime;
|
||||
private String endTime;
|
||||
private String startUserId;
|
||||
private String formCode;
|
||||
private Integer formVersion;
|
||||
private String reportUid;
|
||||
|
||||
public String getDeploymentId() {
|
||||
return deploymentId == null ? "" : deploymentId.trim();
|
||||
}
|
||||
|
||||
public void setDeploymentId(String deploymentId) {
|
||||
this.deploymentId = deploymentId;
|
||||
}
|
||||
|
||||
public String getProcessDefinitionId() {
|
||||
return processDefinitionId == null ? "" : processDefinitionId.trim();
|
||||
}
|
||||
|
||||
public void setProcessDefinitionId(String processDefinitionId) {
|
||||
this.processDefinitionId = processDefinitionId;
|
||||
}
|
||||
|
||||
public String getProcessDefinitionKey() {
|
||||
return processDefinitionKey == null ? "" : processDefinitionKey.trim();
|
||||
}
|
||||
|
||||
public void setProcessDefinitionKey(String processDefinitionKey) {
|
||||
this.processDefinitionKey = processDefinitionKey;
|
||||
}
|
||||
|
||||
public String getProcessDefinitionName() {
|
||||
return processDefinitionName == null ? "" : processDefinitionName.trim();
|
||||
}
|
||||
|
||||
public void setProcessDefinitionName(String processDefinitionName) {
|
||||
this.processDefinitionName = processDefinitionName;
|
||||
}
|
||||
|
||||
public Integer getProcessDefinitionVersion() {
|
||||
return processDefinitionVersion == null ? 0 : processDefinitionVersion;
|
||||
}
|
||||
|
||||
public void setProcessDefinitionVersion(Integer processDefinitionVersion) {
|
||||
this.processDefinitionVersion = processDefinitionVersion;
|
||||
}
|
||||
|
||||
public String getProcessInstanceId() {
|
||||
return processInstanceId == null ? "" : processInstanceId.trim();
|
||||
}
|
||||
|
||||
public void setProcessInstanceId(String processInstanceId) {
|
||||
this.processInstanceId = processInstanceId;
|
||||
}
|
||||
|
||||
public String getStartActivityId() {
|
||||
return startActivityId == null ? "" : startActivityId.trim();
|
||||
}
|
||||
|
||||
public void setStartActivityId(String startActivityId) {
|
||||
this.startActivityId = startActivityId;
|
||||
}
|
||||
|
||||
public String getStartTime() {
|
||||
return startTime == null ? "" : startTime.trim();
|
||||
}
|
||||
|
||||
public void setStartTime(String startTime) {
|
||||
this.startTime = startTime;
|
||||
}
|
||||
|
||||
public String getEndTime() {
|
||||
return endTime == null ? "" : endTime.trim();
|
||||
}
|
||||
|
||||
public void setEndTime(String endTime) {
|
||||
this.endTime = endTime;
|
||||
}
|
||||
|
||||
public String getStartUserId() {
|
||||
return startUserId == null ? "" : startUserId.trim();
|
||||
}
|
||||
|
||||
public void setStartUserId(String startUserId) {
|
||||
this.startUserId = startUserId;
|
||||
}
|
||||
|
||||
public String getFormCode() {
|
||||
return formCode == null ? "" : formCode.trim();
|
||||
}
|
||||
|
||||
public void setFormCode(String formCode) {
|
||||
this.formCode = formCode;
|
||||
}
|
||||
|
||||
public Integer getFormVersion() {
|
||||
return formVersion == null ? 0 : formVersion;
|
||||
}
|
||||
|
||||
public void setFormVersion(Integer formVersion) {
|
||||
this.formVersion = formVersion;
|
||||
}
|
||||
|
||||
public String getReportUid() {
|
||||
return reportUid == null ? "" : reportUid.trim();
|
||||
}
|
||||
|
||||
public void setReportUid(String reportUid) {
|
||||
this.reportUid = reportUid;
|
||||
}
|
||||
}
|
@ -1,6 +1,7 @@
|
||||
package ink.wgink.module.activiti.service.oa;
|
||||
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaCcDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaStartedInstanceDTO;
|
||||
import ink.wgink.module.activiti.pojo.pos.oa.OaCcPO;
|
||||
import ink.wgink.module.activiti.pojo.vos.oa.OaCcVO;
|
||||
import ink.wgink.pojo.ListPage;
|
||||
@ -174,5 +175,28 @@ public interface IOaCcService {
|
||||
*/
|
||||
Integer countReadByUserId(String userId, int isRead);
|
||||
|
||||
/**
|
||||
* 用户的发起列表
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OaStartedInstanceDTO> listStartByUserId(String userId);
|
||||
|
||||
/**
|
||||
* 用户的发起分页列表
|
||||
*
|
||||
* @param userId\
|
||||
* @param page
|
||||
* @return
|
||||
*/
|
||||
SuccessResultList<List<OaStartedInstanceDTO>> listPageStartByUserId(String userId, ListPage page);
|
||||
|
||||
/**
|
||||
* 我的发起分页列表
|
||||
*
|
||||
* @param page
|
||||
* @return
|
||||
*/
|
||||
SuccessResultList<List<OaStartedInstanceDTO>> listPageStartOfMine(ListPage page);
|
||||
|
||||
}
|
||||
|
@ -26,6 +26,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -211,6 +212,11 @@ public class NodeAssigneeServiceImpl extends DefaultBaseService implements INode
|
||||
LOG.debug("assigneeType -> auto");
|
||||
return auto(processInstanceId, currentAssignee, oaNodeAssigneePO);
|
||||
}
|
||||
// 代理人来源于表单,直接返回空
|
||||
if (StringUtils.equals(oaNodeAssigneePO.getAssigneeType(), AssigneeTypeEnum.FORM.getValue())) {
|
||||
LOG.debug("assigneeType -> form");
|
||||
return new ArrayList<>();
|
||||
}
|
||||
throw new OaNodeException("节点 assigneeType 配置错误");
|
||||
}
|
||||
|
||||
@ -238,6 +244,11 @@ public class NodeAssigneeServiceImpl extends DefaultBaseService implements INode
|
||||
LOG.debug("assigneeType -> auto");
|
||||
return auto(processInstanceId, currentAssignee, oaNodeAssigneePO);
|
||||
}
|
||||
// 代理人来源于表单,直接返回空
|
||||
if (StringUtils.equals(oaNodeAssigneePO.getAssigneeType(), AssigneeTypeEnum.FORM.getValue())) {
|
||||
LOG.debug("assigneeType -> form");
|
||||
return new ArrayList<>();
|
||||
}
|
||||
throw new OaNodeException("节点 assigneeType 配置错误");
|
||||
}
|
||||
|
||||
@ -352,7 +363,7 @@ public class NodeAssigneeServiceImpl extends DefaultBaseService implements INode
|
||||
List<String> roleUserIds = roleUserBaseService.listUserIdByRoleIdsAndUserIds(Arrays.asList(roleIds.split(",")), departmentUserIds);
|
||||
return listRoleCandidateUser(roleUserIds, positionIds);
|
||||
}
|
||||
if(!StringUtils.isBlank(positionIds)) {
|
||||
if (!StringUtils.isBlank(positionIds)) {
|
||||
LOG.debug("查询职位用户");
|
||||
List<String> positionUserIds = positionUserBaseService.listUserIdByPositionIdsAndUserIds(Arrays.asList(positionIds.split(",")), departmentUserIds);
|
||||
return listPositionCandidateUser(positionUserIds);
|
||||
|
@ -3,12 +3,15 @@ package ink.wgink.module.activiti.service.oa.impl;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import ink.wgink.common.base.DefaultBaseService;
|
||||
import ink.wgink.interfaces.consts.ISystemConstant;
|
||||
import ink.wgink.interfaces.user.IUserBaseService;
|
||||
import ink.wgink.module.activiti.dao.oa.IOaCcDao;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaCcDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaStartedInstanceDTO;
|
||||
import ink.wgink.module.activiti.pojo.pos.oa.OaCcPO;
|
||||
import ink.wgink.module.activiti.pojo.vos.oa.OaCcVO;
|
||||
import ink.wgink.module.activiti.service.oa.IOaCcService;
|
||||
import ink.wgink.module.activiti.service.oa.IOaFormReportService;
|
||||
import ink.wgink.module.form.service.design.IFormDesignService;
|
||||
import ink.wgink.pojo.ListPage;
|
||||
import ink.wgink.pojo.dtos.user.UserDTO;
|
||||
@ -18,11 +21,16 @@ import ink.wgink.util.UUIDUtil;
|
||||
import ink.wgink.util.map.HashMapUtil;
|
||||
import org.activiti.engine.HistoryService;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
import org.activiti.engine.history.HistoricProcessInstanceQuery;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.joda.time.DateTime;
|
||||
import org.joda.time.format.DateTimeFormat;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @ClassName: FormCcServiceImpl
|
||||
@ -204,6 +212,64 @@ public class OaCcServiceImpl extends DefaultBaseService implements IOaCcService
|
||||
return oaCcDao.count(params);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OaStartedInstanceDTO> listStartByUserId(String userId) {
|
||||
return listOaStartedInstance(historyService.createHistoricProcessInstanceQuery()
|
||||
.includeProcessVariables()
|
||||
.startedBy(userId)
|
||||
.orderByProcessInstanceStartTime()
|
||||
.desc()
|
||||
.list());
|
||||
}
|
||||
|
||||
@Override
|
||||
public SuccessResultList<List<OaStartedInstanceDTO>> listPageStartByUserId(String userId, ListPage page) {
|
||||
HistoricProcessInstanceQuery historicProcessInstanceQuery = historyService.createHistoricProcessInstanceQuery()
|
||||
.startedBy(userId);
|
||||
long count = historicProcessInstanceQuery.count();
|
||||
List<HistoricProcessInstance> historicProcessInstances = historicProcessInstanceQuery
|
||||
.includeProcessVariables()
|
||||
.orderByProcessInstanceStartTime()
|
||||
.desc()
|
||||
.listPage((page.getPage() - 1) * page.getRows(), page.getRows());
|
||||
return new SuccessResultList<>(listOaStartedInstance(historicProcessInstances), page.getPage(), count);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SuccessResultList<List<OaStartedInstanceDTO>> listPageStartOfMine(ListPage page) {
|
||||
return listPageStartByUserId(securityComponent.getCurrentUser().getUserId(), page);
|
||||
}
|
||||
|
||||
private List<OaStartedInstanceDTO> listOaStartedInstance(List<HistoricProcessInstance> historicProcessInstances) {
|
||||
SimpleDateFormat sdfTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
sdfTime.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
|
||||
return historicProcessInstances.stream().map(historicProcessInstance -> {
|
||||
OaStartedInstanceDTO oaStartedInstanceDTO = new OaStartedInstanceDTO();
|
||||
oaStartedInstanceDTO.setDeploymentId(historicProcessInstance.getDeploymentId());
|
||||
oaStartedInstanceDTO.setProcessDefinitionId(historicProcessInstance.getProcessDefinitionId());
|
||||
oaStartedInstanceDTO.setProcessDefinitionKey(historicProcessInstance.getProcessDefinitionKey());
|
||||
oaStartedInstanceDTO.setProcessDefinitionName(historicProcessInstance.getProcessDefinitionName());
|
||||
oaStartedInstanceDTO.setProcessDefinitionVersion(historicProcessInstance.getProcessDefinitionVersion());
|
||||
oaStartedInstanceDTO.setProcessInstanceId(historicProcessInstance.getId());
|
||||
oaStartedInstanceDTO.setStartActivityId(historicProcessInstance.getStartActivityId());
|
||||
DateTime startDateTime = new DateTime(historicProcessInstance.getStartTime().getTime());
|
||||
startDateTime = startDateTime.minusHours(8);
|
||||
DateTime endDateTime = null;
|
||||
if (historicProcessInstance.getEndTime() != null) {
|
||||
endDateTime = new DateTime(historicProcessInstance.getEndTime().getTime());
|
||||
endDateTime = endDateTime.minusHours(8);
|
||||
}
|
||||
oaStartedInstanceDTO.setStartTime(startDateTime.toString(DateTimeFormat.forPattern(ISystemConstant.DATE_FORMATTER_YYYY_MM_DD_HH_MM_SS)));
|
||||
oaStartedInstanceDTO.setEndTime(endDateTime == null ? null : endDateTime.toString(DateTimeFormat.forPattern(ISystemConstant.DATE_FORMATTER_YYYY_MM_DD_HH_MM_SS)));
|
||||
oaStartedInstanceDTO.setStartUserId(historicProcessInstance.getStartUserId());
|
||||
Map<String, Object> processVariables = historicProcessInstance.getProcessVariables();
|
||||
oaStartedInstanceDTO.setFormCode((String) processVariables.get(IOaFormReportService.KEY_FORM_CODE));
|
||||
oaStartedInstanceDTO.setFormVersion((Integer) processVariables.get(IOaFormReportService.KEY_FORM_VERSION));
|
||||
oaStartedInstanceDTO.setReportUid((String) processVariables.get(IOaFormReportService.KEY_REPORT_UID));
|
||||
return oaStartedInstanceDTO;
|
||||
}).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置主标题
|
||||
*
|
||||
|
@ -524,6 +524,9 @@ var OaNodeManagePopupCtrl = ['$scope', '$timeout', '$http', function ($scope, $t
|
||||
updateAssignee();
|
||||
return;
|
||||
}
|
||||
if (assignee.assigneeType === 'form') {
|
||||
updateAssignee()
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
@ -614,7 +617,6 @@ var OaNodeManagePopupCtrl = ['$scope', '$timeout', '$http', function ($scope, $t
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$scope.property.value = {};
|
||||
$scope.property.value = $scope.oaNodeManage;
|
||||
$scope.updatePropertyInModel($scope.property);
|
||||
|
@ -113,6 +113,9 @@
|
||||
<label class="radio-inline">
|
||||
<input ng-model="oaNodeManage.assignee.assigneeType" type="radio" name="assigneeType" value="auto"> 自动获取
|
||||
</label>
|
||||
<label class="radio-inline">
|
||||
<input ng-model="oaNodeManage.assignee.assigneeType" type="radio" name="assigneeType" value="form"> 表单
|
||||
</label>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -0,0 +1,147 @@
|
||||
<!doctype html>
|
||||
<html lang="en" xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<base th:href="${#request.getContextPath() + '/'} ">
|
||||
<meta charset="utf-8">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
||||
<link rel="stylesheet" href="assets/fonts/font-awesome/css/font-awesome.css"/>
|
||||
<link rel="stylesheet" href="assets/layuiadmin/layui/css/layui.css" media="all">
|
||||
<link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
|
||||
<link rel="stylesheet" type="text/css" href="assets/js/vendor/viewer/viewer.min.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-fluid layui-anim layui-anim-fadein">
|
||||
<div class="layui-row">
|
||||
<div class="layui-col-md12">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<table class="layui-hide" id="dataTable" lay-filter="dataTable"></table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'table', 'laydate', 'common'], function() {
|
||||
var $ = layui.$;
|
||||
var $win = $(window);
|
||||
var table = layui.table;
|
||||
var admin = layui.admin;
|
||||
var laydate = layui.laydate;
|
||||
var common = layui.common;
|
||||
var resizeTimeout = null;
|
||||
var tableUrl = 'api/oa/listpage-start-of-mine';
|
||||
|
||||
// 初始化表格
|
||||
function initTable() {
|
||||
table.render({
|
||||
elem: '#dataTable',
|
||||
id: 'dataTable',
|
||||
url: top.restAjax.path(tableUrl, []),
|
||||
width: admin.screen() > 1 ? '100%' : '',
|
||||
height: $win.height() - 50,
|
||||
limit: 20,
|
||||
limits: [20, 40, 60, 80, 100, 200],
|
||||
request: {
|
||||
pageName: 'page',
|
||||
limitName: 'rows'
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
|
||||
{field:'processDefinitionName', width:200, title: '流程名称', align:'center',
|
||||
templet: function(row) {
|
||||
var rowData = row[this.field];
|
||||
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
||||
return '-';
|
||||
}
|
||||
return rowData;
|
||||
}
|
||||
},
|
||||
{field:'startTime', width:200, title: '发起时间', align:'center',
|
||||
templet: function(row) {
|
||||
var rowData = row[this.field];
|
||||
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
||||
return '-';
|
||||
}
|
||||
return rowData;
|
||||
}
|
||||
},
|
||||
{field:'endTime', width:180, title: '结束时间', align:'center',
|
||||
templet: function(row) {
|
||||
var rowData = row[this.field];
|
||||
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
||||
return '-';
|
||||
}
|
||||
return rowData;
|
||||
}
|
||||
},
|
||||
{field: 'form', width: 100, title: '操作', align:'center', fixed: 'right',
|
||||
templet: function(row) {
|
||||
return '<div class="layui-btn-group">' +
|
||||
'<button class="layui-btn layui-btn-xs layui-btn-primary" lay-event="logEvent">流转日志</button>'+
|
||||
'</div>';
|
||||
}
|
||||
}
|
||||
]
|
||||
],
|
||||
page: true,
|
||||
parseData: function(data) {
|
||||
return {
|
||||
'code': 0,
|
||||
'msg': '',
|
||||
'count': data.total,
|
||||
'data': data.rows
|
||||
};
|
||||
}
|
||||
});
|
||||
}
|
||||
// 重载表格
|
||||
function reloadTable(currentPage) {
|
||||
table.reload('dataTable', {
|
||||
url: top.restAjax.path(tableUrl, []),
|
||||
where: {},
|
||||
page: {
|
||||
curr: currentPage
|
||||
},
|
||||
height: $win.height() - 50,
|
||||
});
|
||||
}
|
||||
initTable();
|
||||
// 事件 - 页面变化
|
||||
$win.on('resize', function() {
|
||||
clearTimeout(resizeTimeout);
|
||||
resizeTimeout = setTimeout(function() {
|
||||
reloadTable();
|
||||
}, 500);
|
||||
});
|
||||
// 事件 - 搜索
|
||||
$(document).on('click', '#search', function() {
|
||||
reloadTable(1);
|
||||
});
|
||||
|
||||
table.on('tool(dataTable)', function(obj) {
|
||||
var data = obj.data;
|
||||
var layEvent = obj.event;
|
||||
if(layEvent === 'logEvent') {
|
||||
top.dialog.open({
|
||||
url: top.restAjax.path('route/oa-form-report/show/code/{formCode}/version/{formVersion}?uid={reportUid}&processInstanceId={processInstanceId}', [data.formCode, data.formVersion, data.reportUid, data.processInstanceId]),
|
||||
title: '详情',
|
||||
width: '800px',
|
||||
height: '80%',
|
||||
onClose: function() {}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user