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("界面直接退出"); } }])