123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537 |
- 'use strict';
- var app = angular.module('app', ["angularUtils.directives.dirPagination"]);
- app.controller("groupCtrl", ["$scope", "$http", "$compile", "$timeout", function ($scope, $http, $compile, $timeout) {
- var self = this;
- var s4 = new SM4Util();
- self.userId = $.cookie("GlWorkPlatform-userid");
- self.userName = $.cookie("GlWorkPlatform-username");
- self.userCName = $.cookie("GlWorkPlatform-chineseName");
- self.get_AccessToken = localStorage.getItem("GlWorkPlatform-AccessToken");
- self.userTypeEng = $.cookie("GlWorkPlatform-userTypeEng");
- var postCfg = {
- headers: {
- 'Content-Type': 'application/json',
- 'Authorization': "Bearer " + self.get_AccessToken
- }
- };
- self.CrossPage = window.parent.CrossPage;
- self.loading = false;
- ///加载机构
- self.unitList = []; ///数组
- self.unit = ""; ///机构名称
- self.getUnit = function () {
- self.loading = true;
- $http.post(apiurljs.login + "g2work/sect/querySectAdmin", { data: s4.encryptData_CBC("") }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- ///console.log(res);
- if (res.success) {
- if (sp.isval(res.data)) {
- self.unitList = res.data;
- self.unit = res.data[0].CODE;
- self.getGroup();///根据当前第一个机构进行加载其下面的部门数据
- self.getPersonData(self.unit, "0"); ///加载机构下方的人员
- } else {
- self.unitList = [];
- self.loading = false;
- }
- } else {
- sp.dialog(res.message);
- self.unitList = [];
- self.loading = false;
- }
- self.journalRecord(self.CrossPage.ctime, sp.getLocalDate1(), "", "接入日志", window.location.pathname)
- })
- .error(function (XMLHttpRequest, textStatus, errorThrown) {
- if (textStatus != 200) {
- self.loading = false;
- }
- })
- };
- self.getUnit();
- self.rows = [];
- self.users = [];
- self.getGroup = function () {
- self.edit = {
- groupID: "",
- groupName: ""
- }
- var postData = {
- unitid: self.unit
- }
- $http.post(apiurljs.login + "g2work/datagroup/queryData", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- ///console.log(JSON.stringify(res));
- if (res.success) {
- if (sp.isval(res.data)) {
- self.rows = res.data;
- } else {
- self.rows = [];
- }
- } else {
- sp.dialog(res.message);
- }
- });
- }
- ///self.getGroup()
- //
- self.changeUnit = function () {
- console.log(self.unit);
- }
- ////加载用户
- self.getPerson = [];///声明用户列表数组
- self.user_checked = "";
- self.user_checked_num = 0;
- self.user_checked_array = [];
- self.getPersonData = function (gid, levels) {
- self.user_checked_array = [];
-
- var postData = {
- "gid": gid,
- "levels": levels
- }
- $http.post(apiurljs.login + "g2work/datagroup/queryDataUser", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- self.loading = false;
-
- ///console.log(JSON.stringify(res));
- if (res.success) {
- if (sp.isval(res.data)) {
- self.isSelectedAll = true;
- self.getPerson = res.data;
- self.getPerson.forEach(function (itm,index) {
- var set_json_col = { "section": "" + itm.section + "", "users": [] };
- self.user_checked_array.push(set_json_col);
- var user_array = [];
-
- itm.users.forEach(function (itm2) {
- if (itm2.auth == "1") {
- itm2.check = true;
- var set_user = { "userid": "" + itm2.userid + "", "ushowname": "" + itm2.ushowname + "" };
- self.user_checked_array[index].users.push(set_user);
- } else {
- itm2.check = false;
- self.isSelectedAll = false; //有一个未选中就是未全选
- }
- });
- });
- //console.log(JSON.stringify(self.user_checked_array));
- ///根据拼成的json再次拼接数据--start
- self.set_viewCheckedUsers();
- ///根据拼成的json再次拼接数据--start
- } else {
- self.getPerson = [];
- }
- } else {
- sp.dialog(res.message);
- }
- })
- .error(function (XMLHttpRequest, textStatus, errorThrown) {
- if (textStatus != 200) {
- self.loading = false;
- }
- })
- };
- ////设置显示已选择的数据
- self.set_viewCheckedUsers=function(){
- ///根据拼成的json再次拼接数据--start
- self.user_checked_num=0;
- self.user_checked="";
- angular.forEach(self.user_checked_array, function (itm) {
- var get_user_checked = "";
- angular.forEach(itm.users, function (itm2) {
- get_user_checked += itm2.ushowname + ",";
- self.user_checked_num++;
- });
- if (sp.isval(get_user_checked)) {
- var set_section_users = "【" + itm.section + ":" + sp.cutlast(get_user_checked) + "】";
- self.user_checked += set_section_users + ",";
- }
- });
- self.user_checked = sp.cutlast(self.user_checked);
- //console.log(JSON.stringify(self.user_checked_array));
- ///根据拼成的json再次拼接数据--start
- };
- // 点击选中群组管理事件
- self.activeGroup = -1;
- self.chooseGroup = function (index, $item) {
- var time1 = sp.getLocalDate1();
- //console.log($item);
- self.activeGroup = index;
- self.edit = {
- groupID: $item.GID,
- groupName: $item.GUM
- };
- self.getPersonData(self.edit.groupID, "0");
- self.journalRecord(time1, sp.getLocalDate1(), "查询", "查询日志", "/g2work/datazu/queryDataUser")
- }
- //增加群组
- self.addGroupName = '';
- self.addGroup = function () {
- var time1 = sp.getLocalDate1();
- self.journalRecord(time1, sp.getLocalDate1(), "新建", "修改日志", window.location.pathname)
- ///增加群组
- var postData = {
- unitid: self.unit,//机构编码
- gum: self.addGroupName//群组名称
- }
- $http.post(apiurljs.login + "g2work/datagroup/insertData", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- if (res.success) {
- self.getGroup();
- self.activeGroup = -1;
- self.addGroupName = '';
- sp.dialoghide();
- } else {
- sp.dialog(res.message);
- }
- });
- }
- //修改群组
- self.edit = {
- groupID: "",
- groupName: ""
- }
- self.editGroup = function () {
- var time1 = sp.getLocalDate1();
- self.journalRecord(time1, sp.getLocalDate1(), "编辑", "修改日志", window.location.pathname)
- var postData = {
- gid: self.edit.groupID,//群组编码
- gum: self.edit.groupName//群组名称
- }
- $http.post(apiurljs.login + "g2work/datagroup/updateDataByGid", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- if (res.success) {
- self.getGroup();
- sp.dialoghide();
- } else {
- sp.dialog(res.message);
- }
- });
- }
- //删除群组
- self.removeGroup = function ($item) {
- var time1 = sp.getLocalDate1();
- self.journalRecord(time1, sp.getLocalDate1(), "删除", "修改日志", window.location.pathname)
- var getDelID = $item.GID;
- var dialogHead = "<span class=\"sp-dialog-head\"><span class=\"sp-dialog-tip\">温馨提示</span><span class=\"sp-dialog-close sp-closeDialog\" title=\"关闭\">×</span></span>";
- var dialogBody = "<div class=\"sp-dialog-body\">删除后不可恢复,您确认要删除吗?</div>";
- var dialogFoot = "<div class=\"sp-dialog-foot\"><input data-id=" + getDelID + " id='delDataTrue' type='button' value='确 认' class='sp-dialog-btnTrue' /><input type='button' value='取 消' class='sp-dialog-btnCancle sp-closeDialog' /></div>";
- $('.sp-dialog').html(dialogHead + dialogBody + dialogFoot);
- sp.openCenter(".sp-dialog");
- ///取消按钮
- $('.sp-closeDialog').click(function (event) {
- sp.closeCenter(".sp-dialog");
- event.preventDefault(); event.stopPropagation();
- });
- //post消息的id
- $("#delDataTrue").click(function () {
- var getid = $(this).attr("data-id");
- sp.dialoghide();
- var data = {
- gid: getid///群组编码
- };
- $http.post(apiurljs.login + "g2work/datagroup/deleteByGid", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- if (res.success) {
- self.getGroup();
- sp.dialoghide();
- } else {
- sp.dialog(res.message);
- }
- });
- });
- // if (confirm('确定要删除么')) {
- // self.unit.ROLELIST.splice(index, 1);
- // self.activeGroup = 0;
- // }
- }
- //上移一位
- self.moveUp = function () {
- var time1 = sp.getLocalDate1();
- self.journalRecord(time1, sp.getLocalDate1(), "上移", "修改日志", window.location.pathname)
- if (sp.isval(self.edit.groupID)) {
- if (self.activeGroup == 0) {
- sp.dialog("已处于最顶部,无法上移!");
- } else {
- var set_index = parseInt(self.activeGroup - 1);
- var postData = {
- "gid1": self.rows[set_index].GID,
- "gid2": self.edit.groupID
- };
- $http.post(apiurljs.login + "g2work/datagroup/swapSortidByGid", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- if (res.success) {
- self.getGroup();
- self.activeGroup = -1;
- self.addGroupName = '';
- self.getPersonData(self.unit, "0"); ///加载机构下方的人员
- } else {
- sp.dialog(res.message);
- }
- });
- }
- } else {
- sp.dialog("请先点击选择群组!");
- }
- }
- //下移一位
- self.moveDown = function () {
- var time1 = sp.getLocalDate1();
- self.journalRecord(time1, sp.getLocalDate1(), "下移", "修改日志", window.location.pathname)
- if (sp.isval(self.edit.groupID)) {
- if (self.activeGroup == self.rows.length - 1) {
- sp.dialog("已处于最底部,无法下移!");
- } else {
- var set_index = parseInt(self.activeGroup + 1);
- var postData = {
- "gid1": self.rows[set_index].GID,
- "gid2": self.edit.groupID
- };
- $http.post(apiurljs.login + "g2work/datagroup/swapSortidByGid", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- if (res.success) {
- self.getGroup();
- self.activeGroup = -1;
- self.addGroupName = '';
- self.getPersonData(self.unit, "0"); ///加载机构下方的人员
- } else {
- sp.dialog(res.message);
- }
- });
- }
- } else {
- sp.dialog("请先点击选择群组!");
- }
- }
- ///点击用户checkbox选中事件
- self.isSelected = function (section, itemdata, ischecked) {
- if (self.activeGroup == -1) {
- sp.dialog("请先选择群组");
- self.getPerson.forEach(function (itm) {
- itm.users.forEach(function (itm2) {
- if (itm2.auth == "1") {
- itm2.check = true;
- } else {
- itm2.check = false;
- self.isSelectedAll = false; //有一个未选中就是未全选
- }
- });
- });
- return;
- } else {
- if (ischecked) {
- //console.log(ischecked);
- if(JSON.stringify(self.user_checked_array).indexOf(section)!=-1){
- angular.forEach(self.user_checked_array, function (itm) {
- if (section == itm.section) {
- var set_user = { "userid": "" + itemdata.userid + "", "ushowname": "" + itemdata.ushowname + "" };
- itm.users.push(set_user);
- }
- });
- }else{
- var user_array = [];
- var set_user = { "userid": "" + itemdata.userid + "", "ushowname": "" + itemdata.ushowname + "" };
- user_array.push(set_user);
- var set_json_col = { "section": "" + section + "", "users": user_array };
- self.user_checked_array.push(set_json_col)
- }
-
- //console.log(JSON.stringify(self.user_checked_array));
- ///根据拼成的json再次拼接数据--start
- self.set_viewCheckedUsers();
- ///根据拼成的json再次拼接数据--start
- } else {
- angular.forEach(self.user_checked_array, function (itm) {
- if (section == itm.section) {
- itm.users = itm.users.filter(itm2 => itm2.userid !== itemdata.userid);
- }
- });
- //console.log(JSON.stringify(self.user_checked_array));
- ///根据拼成的json再次拼接数据--start
- self.set_viewCheckedUsers();
- ///根据拼成的json再次拼接数据--start
-
- }
- self.isSelectedAll = true;
- self.getPerson.forEach(function (itm) {
- itm.users.forEach(function (item2) {
- if (!item2.check) {
- return self.isSelectedAll = false;
- }
- })
- })
-
- }
-
- }
- //全选
- self.isSelectedAll = false;
- self.selectAll = function () {
- if (self.activeGroup == -1) {
- sp.dialog("请先选择群组");
- self.isSelectedAll=!self.isSelectedAll;
- return;
- }else{
- if (self.isSelectedAll) {
- self.getPerson.forEach(function (itm,index) {
- itm.users.forEach(function (itm2) {
- itm2.check = true;
- ///设置已选的人员数组
- if(JSON.stringify(self.user_checked_array[index].users).indexOf(itm2.userid)==-1){
- //增加一层判断,若没有当前用户再往里面赋值;
- var set_user = { "userid": "" + itm2.userid + "", "ushowname": "" + itm2.ushowname + "" };
- self.user_checked_array[index].users.push(set_user);
- }
- })
- });
- //console.log(JSON.stringify(self.user_checked_array));
- ///根据拼成的json再次拼接数据--start
- self.set_viewCheckedUsers();
- ///根据拼成的json再次拼接数据--start
- } else {
- self.getPerson.forEach(function (itm,index) {
- itm.users.forEach(function (itm2) {
- itm2.check = false;
- ///设置已选的人员数组
- self.user_checked_array[index].users=[];
- })
- });
- ///根据拼成的json再次拼接数据--start
- self.set_viewCheckedUsers();
- ///根据拼成的json再次拼接数据--start
- }
- }
- }
- //保存人员设置
- self.saveGroup = function () {
- var time1 = sp.getLocalDate1();
- self.journalRecord(time1, sp.getLocalDate1(), "保存", "修改日志", window.location.pathname)
- var get_checkedUser = [];
- self.getPerson.forEach(function (itm) {
- itm.users.forEach(function (item2) {
- if (item2.check) {
- get_checkedUser.push({
- "gid": self.edit.groupID,
- "userid": item2.userid
- })
- }
- });
- })
- // console.log(get_checkedUser);
- if (sp.isval(get_checkedUser)) {
- var dialogHead = "<span class=\"sp-dialog-head\"><span class=\"sp-dialog-tip\">温馨提示</span><span class=\"sp-dialog-close sp-closeDialog\" title=\"关闭\">×</span></span>";
- var dialogBody = "<div class=\"sp-dialog-body\">确认要保存人员设置吗?</div>";
- var dialogFoot = "<div class=\"sp-dialog-foot\"><input id='delDataTrue' type='button' value='确 认' class='sp-dialog-btnTrue' /><input type='button' value='取 消' class='sp-dialog-btnCancle sp-closeDialog' /></div>";
- $('.sp-dialog').html(dialogHead + dialogBody + dialogFoot);
- sp.openCenter(".sp-dialog");
- ///取消按钮
- $('.sp-closeDialog').click(function (event) {
- sp.closeCenter(".sp-dialog");
- event.preventDefault(); event.stopPropagation();
- });
- //post消息的id
- $("#delDataTrue").click(function () {
- var postData = {
- "typeid": "gid",
- typevalue: self.edit.groupID,
- data: JSON.stringify(get_checkedUser)
- }
- // console.log(postData);
- $http.post(apiurljs.login + "g2work/datagroup/updateDataUser", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
- .success(function (obj) {
- var res = strToJson(s4.decryptData_CBC(obj.data));
- if (res.success) {
- sp.dialog(res.message);
- $timeout(function () {
- self.getPersonData(self.edit.groupID, "0");
- sp.dialoghide();
- }, 600);
- } else {
- sp.dialog(res.message);
- }
- });
- });
- } else {
- sp.dialog("人员不能为空!");
- }
- }
- //记录日志
- self.journalRecord = function (time1, time2, title, func, url) {
- if (!self.CrossPage.cname) { return; }
- var data = {
- tablename: "SYS_CLICKLOG",
- data: {
- CTIME: time1 == null ? sp.getLocalDate1() : time1,
- TITLE: (title != "" ? self.CrossPage.cname + "/" + title : self.CrossPage.cname),
- REQUESTURL: url,
- REQUESTHEADERURL: window.location.origin,
- LOGTYPE: func,
- USERTYPE: $.cookie("GlWorkPlatform-userType"),
- ADMIN: $.cookie("GlWorkPlatform-userTypeEng"),
- CLIENTIP: sp.myIP(),
- PCNAME: sp.detectOS(),
- BROWSERNAME: sp.browser(),
- RESPONSETIME: time2 == null ? sp.getLocalDate1() : time2,
- USERID: self.userId,
- USERNAME: self.userCName
- }
- }
- $http.post(apiurljs.login + "g2app/DangJian/insertFormData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
- .success(function (res) {
- })
- }
- }])
- app.directive('repeatFinish', function () {
- return {
- link: function (scope) {
- if (scope.$last == true) {
- $(".tab").eq(0).addClass("active");
- }
- }
- }
- })
|