activiti 工作流引擎集合自己的用戶和角色選項


 

參考了https://blog.csdn.net/jrn1012/article/details/73431422

http://124444154-qq-com.iteye.com/blog/1830995

這幾篇文章

具體效果如下:

 

 

整體就是這樣了 目前沒有做分頁功能 等有時間在做

代碼:

var ExtCtrl = ['$scope','$http','$log',function($scope,$http,$log,items){

if ($scope.multiple == 2){
$scope.groups=[];
$scope.select = [];
$scope.temp = []; //臨時數組1
$scope.temparray = [];//臨時數組2
$http({
method:'post',
url:ACTIVITI.CONFIG.basePath+'/people/roleQuery',
}).success(function(req){
$scope.groups = req.data;
for (var i = 0; i < $scope.userData.length; i++) {
$scope.temp[$scope.userData[i].value] = true;//巧妙地方:把數組B的值當成臨時數組1的鍵並賦值為真
}
for (var i = 0; i < $scope.groups.length; i++) {
if (!$scope.temp[$scope.groups[i].roleid]) {
$scope.temparray.push($scope.groups[i]);//巧妙地方:同時把數組A的值當成臨時數組1的鍵並判斷是否為真,如果不為真說明沒重復,就合並到一個新數組里,這樣就可以得到一個全新並無重復的數組
}
}

})

// Config for grid
$scope.gridOptions = {
data: 'temparray',
enableRowReordering: true,
headerRowHeight: 28,
multiSelect: $scope.isMultiSelect,
keepLastSelected : false,
selectedItems: $scope.select,
columnDefs: [{ field: 'roleid', displayName: '候選組id'},
{ field: 'rolename', displayName: '候選組名'}],
};
}else {
$scope.people=[];
$scope.select = [];
$scope.temp = []; //臨時數組1
$scope.temparray = [];//臨時數組2
$http({
method:'post',
url:ACTIVITI.CONFIG.basePath+'/people/peopleQuery',
}).success(function(req){
$scope.people = req.data;
if ($scope.userData == null){
$scope.temparray=$scope.people;
}else {
for (var i = 0; i < $scope.userData.length; i++) {
$scope.temp[$scope.userData[i].value] = true;//巧妙地方:把數組B的值當成臨時數組1的鍵並賦值為真
}
for (var i = 0; i < $scope.people.length; i++) {
if (!$scope.temp[$scope.people[i].userid]) {
$scope.temparray.push($scope.people[i]);//巧妙地方:同時把數組A的值當成臨時數組1的鍵並判斷是否為真,如果不為真說明沒重復,就合並到一個新數組里,這樣就可以得到一個全新並無重復的數組
}
}
}

})

// Config for grid
$scope.gridOptions = {
data: 'temparray',
enableRowReordering: true,
headerRowHeight: 28,
multiSelect: $scope.isMultiSelect,
keepLastSelected : false,
selectedItems: $scope.select,
columnDefs: [{ field: 'userid', displayName: '用戶id'},
{ field: 'username', displayName: '用戶名'}], }; } // Close button handler
        $scope.close = function() {
        $scope.$hide(); };
        $scope.save = function() {
var user = $scope.gridOptions.selectedItems;
if ($scope.multiple == 2){
var groupIds="";
var groupNames="";
for(var i = 0;i<user.length;i++){
groupIds+= user[i].roleid+",";
groupNames+=user[i].rolename+","; }
for (var i = 0;i<$scope.userData.length;i++){
groupIds+= $scope.userData[i].value+",";
groupNames+=$scope.userData[i].name+","; }
$scope.setCandidateGroups(groupIds,groupNames);
}else {
if ($scope.gridOptions.multiSelect){
var userIds=""; var userNames="";
for(var i = 0;i<user.length;i++){
userIds+= user[i].userid+",";
userNames+=user[i].username+","; }
for (var i = 0;i<$scope.userData.length;i++){
userIds+= $scope.userData[i].value+",";
userNames+=$scope.userData[i].name+","; }
$scope.setCandidateUsers(userIds,userNames); }else {
$scope.setAssignee(user[0].userid,user[0].username); } } }; //回填受理人
$scope.setAssignee = function (assignee, userName) { $scope.assignment.assignee = assignee;
$scope.assignment.assigneeName = userName; };
//回填候選人
$scope.setCandidateUsers = function (userIds, userNames) {
var users = null;
if (userIds=="") {
$scope.assignment.candidateUsers = users; } else {
var userIdArr = userIds.split(","); var userNameArr = userNames.split(",");
users = []; for (var i = 0; i < userIdArr.length-1; i++) {
var userObj = {}; userObj["value"] = userIdArr[i];
userObj["name"] = userNameArr[i]; users.push(userObj); }
$scope.assignment.candidateUsers = users; } = }; //回填候選組
$scope.setCandidateGroups = function (groupIds, groupNames) {
var groups = null; if (!groupIds) { $scope.assignment.candidateGroups = groups; } else {
var groupIdArr = groupIds.split(","); var groupNameArr = groupNames.split(","); groups = [];
for (var i = 0; i < groupIdArr.length-1; i++) { var groupObj = {}; groupObj["value"] = groupIdArr[i];
groupObj["name"] = groupNameArr[i]; groups.push(groupObj); }
$scope.assignment.candidateGroups = groups; } };}];

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM