2025-06-27 10:04:22 +08:00

366 lines
10 KiB
JavaScript

app.controller('userCtrl', ['$scope', 'Login', '$uibModal', 'wyOdataNodeService', 'stConfig', function ($scope, Login, $uibModal,wyOdataNodeService, stConfig) {
/**************************************************************************************/
//通过STMATETable 分页显示数据
//以下的参数每个控制器都要有一份
$scope.tableState = []; //这个参数后面会让每次访问服务器后进行同步返回的值赋值,作为中间值使用
$scope.selectList = []; //这个参数会让每次选中或者没有选中的条目直接暴露在这个值里面
$scope.searchSql = '';
//这个参数是自己组合相关的复杂查询条件
$scope.isShow = false; //这个参数主要进行页面加载的loading显示的directive的值得操作
$scope.itemsOptions = [5, 10, 20, 50, 100, 200]; //这个参数进行分页页面上面的每页多少条的设置
$scope.curpageNumber = 10; //这个参数传递当前的每页多少条的数据
//任何动作都会触发服务端的接口
$scope.getService = function (tableState, ctrl) {
$scope.tableState = tableState;
if (!$scope.tableState.pagination.number) {
$scope.tableState.pagination.number = $scope.curpageNumber;
}
$scope.isShow = true;
// console.log($scope.searchSql+"aaa");
wyOdataNodeService.getData(pubserver, 'USER_DB', $scope.tableState, $scope.searchSql).then(function (data) {
$scope.displayed = data;
//当前页面的ID号数组
$scope.isShow = false;
$scope.ids = Enumerable.From($scope.displayed).Select(function (x) { return x.id }).ToArray();
$scope.myttt = tableState.count;
$scope.$broadcast('checkini');
//console.log($scope.ids);
});
};
//模板的分页选择触发操作
$scope.setPageNumber = function (pageNo) {
// alert("1")
$scope.getService($scope.tableState);
}
//查询参数的调用
$scope.search = function () {
$scope.searchSql = [$scope.sql];
$scope.getA($scope.tableState);
//约定成数字的按照前后
//日期按照前后
//字符串的模糊查询
//var sql = '$filter=EventDateTime eq DateTime'2010-12-21T10:10:19.390625';
//日期参考如下:
//(EventDateTime eq DateTime'2010-12-21T10:10:19.390625' ) and (BusinessUnitCode eq '2')
//var dT=dd ge 12 and dd le 33
}
/***************************************************************************************/
$scope.Myjson = [
{
name: "用户姓名",
PY: "name"
}, {
name: "用户登录名",
PY: "username"
}
]
/*****************这块是查询************************/
$scope.Cha = function () {
$scope.searchSql = ''
//查询条件
var cxtj = $scope.mysel;
//搜索
var sousuo = $scope.mytxt;
if (cxtj != undefined && sousuo != undefined) {
$scope.searchSql=$scope.searchSql+"indexof("+cxtj.PY+",'"+sousuo+"') ge 0"
}
$scope.getService($scope.tableState, $scope.searchSql);
}
//
$scope.delete = function () {
if ($scope.selectList.length > 0) {
if (confirm("确定要删除任务?")) {
angular.forEach($scope.selectList, function (data) {
// console.log(angular.toJson(data));
Login.delete({ id: data }, function (data1) {
$scope.Cha();
});
})
}
//重置选择项
$scope.selectList = [];
} else {
alert('请选择你要删除的任务');
}
}
/******************添加*****************/
$scope.items = 0;
$scope.open = function (id) {
if (id != 0) {
$scope.items = id;
} else (
$scope.items = 0
)
//console.log($scope.items);
var modalInstance = $uibModal.open({
animation: true,
backdrop: false, // 不让点击背景关闭系统
templateUrl: 'app/user/view/modalAddUser.html',
controller: 'modalAddUserCtrl',
size: 'lg',
//windowTopClass:'dialog'
resolve: {
items: function () {
return $scope.items;
}
}
});
modalInstance.result.then(
function (nclose) {
;
$scope.Cha();
},
function (ndismiss) { $scope.returnData = ndismiss }
)
}
}])
app.controller("modalAddUserCtrl", ["$scope", '$uibModalInstance', 'items', 'Fconfig', 'Login', function ($scope, $uibModalInstance, items, Fconfig, Login) {
//判读传来的id不为0的话那么就是修改
$scope.qujson = [];
$scope.selected = [];
$scope.myshuju = [];
if (items != 0) {
Login.getOne({ id: items }, function (mydata) {
$scope.Cusernname = mydata.name;
$scope.Cuser = mydata.username;
$scope.Cpwd = mydata.userpwd;
console.log('ddd',mydata)
$scope.selected = mydata.quJson[0].Sel;
console.log('',mydata.quJson[0].Sel)
switch (mydata.type) {
case 1:
$scope.QXName = "一级权限";
break;
case 2:
$scope.QXName = "二级权限";
break;
case 3:
$scope.QXName = "三级权限";
break;
case 4:
$scope.QXName = "检测机构";
break;
case 5:
$scope.QXName = "检测机构管理员";
break;
default:
}
console.log(items)
Login.getOne({ id: items }, function (data) {
console.log(angular.toJson(data));
$scope.myData = data.quJson[0].QX[0].xiao;
$scope.qujson = data.quJson[0].QX;
$scope.fid = data.quJson[0].QX[0].id;
$scope.myshuju = data.quJson[0].QX;
})
});
//确定和修改的按钮显示和隐藏
$scope.showok = false;
$scope.showupdate = true;
} else {
Fconfig.get(function (data) {
$scope.myshuju = data.value;
})
$scope.showok = true;
$scope.showupdate = false;
$scope.QXName = "一级权限";
}
//第一步获取权限配置数据
$scope.fid = "";
/****单击选择大项的事件***/
$scope.myselid = function (id) {
var aa = Enumerable.From($scope.myshuju).Where(function (x) { return x.id == id }).FirstOrDefault();
$scope.myData = aa.xiao;
$scope.fid = id;
}
/*******权限分配通用方法**************/
$scope.tongyong = function (fid, id, isshow) {
var aa = $scope.myshuju;
var bb = Enumerable.From(aa).Where(function (x) { return x.id == fid }).FirstOrDefault();
var cc = Enumerable.From(bb.xiao).Where(function (x) { return x.cid == id }).FirstOrDefault();
cc.isshow = isshow;
return aa;
}
/*****复选框事件**************/
//勾选的方法
$scope.isChecked = function (id) {
return $scope.selected.indexOf(id) >= 0;
};
$scope.updateSelection = function ($event, id) {
var checkbox = $event.target;
var checked = checkbox.checked;
if (checked) {
$scope.qujson= $scope.tongyong($scope.fid, id, checked);
$scope.selected.push(id);
} else {
$scope.qujson= $scope.tongyong($scope.fid, id, checked);
var idx = $scope.selected.indexOf(id);
$scope.selected.splice(idx, 1);
}
};
/***********保存的方法***********/
$scope.typenum = 1;
$scope.ok = function () {
switch ($scope.QXName) {
case "一级权限":
$scope.typenum = 1;
break;
case "二级权限":
$scope.typenum = 2;
break;
case "三级权限":
$scope.typenum = 3;
break;
case "检测机构":
$scope.typenum = 4;
break;
default:
}
var aa = {
"name": $scope.Cusernname,
"type": $scope.typenum,
"username": $scope.Cuser,
"userpwd": $scope.Cpwd,
"quJson": [{
"QX": $scope.qujson,
"Sel": $scope.selected
}]
}
Login.save(aa, aa, function (data) {
$uibModalInstance.close("");
})
}
/**********修改的方法*******************/
$scope.cupdate = function () {
switch ($scope.QXName) {
case "一级权限":
$scope.typenum = 1;
break;
case "二级权限":
$scope.typenum = 2;
break;
case "三级权限":
$scope.typenum = 3;
break;
case "检测机构":
$scope.typenum = 4;
break;
case "检测机构管理员":
$scope.typenum = 5;
break;
default:
}
var aa = [{
"QX": $scope.qujson,
"Sel": $scope.selected
}]
console.log(angular.toJson(aa));
Login.update({ id: items }, { name: $scope.Cusernname, username: $scope.Cuser, userpwd: $scope.Cpwd, quJson: aa, type: $scope.typenum }, function (data) {
$uibModalInstance.close("");
})
}
$scope.Cancel = function () {
$uibModalInstance.dismiss("界面直接退出");
}
}])