/***11 * 鍖虹骇閫変汉鎺т欢 v1.0.3 * jquery: 寤鸿1.8 鏈€浣?.7 * date: 2019.05.21 14:00 * 闇€瑕佸吋瀹逛箣鍓嶈€佺増鏈殑(绗簩绉嶇偣鍑荤‘瀹氾級璋冪敤鏂瑰紡鍜岄厤缃弬鏁 * update: 2019-12-17 13:36:21 chang school tab * 浣犲彲鑳借闂负浠€涔堣繖涓唬鐮佽繖涔堥毦缁存姢鍛紵 绛旀鏄敱浜庡巻鍙茬殑灞€闄愭€э紝褰撴椂寮€鍙戠殑浜鸿繕涓嶅お鎳傘€傚鏋滆繕瑕侀暱鏈熺淮鎶わ紝寤鸿鍙傜収selectstudent-v20閲嶆柊鍐欎竴鐗堛€ ***/ /* * 鑰佺増鏈€変汉鎺т欢閰嶇疆鍙傛暟 * limitUserSchoolId: 鏄惁鍙樉绀烘寚瀹歴choolId鐨勫鏍 * isDistrictAdmin: 鏄惁鍖虹骇绠$悊鍛樸€傞粯璁や负false 涓簍rue浼氬己鍒惰缃甦istrict涓簍rue * district: 鏄惁鏄剧ず鎵€鏈夊鏍 * zIndex: 浼樺厛绾 榛樿99999 * rolemarks: 瑙掕壊 榛樿'CLOUD_ADMIN' * hasSaveContact: 鏄惁鏄剧ず娣诲姞鍒伴€氳褰 榛樿false * tab: 宸﹁竟閫夋嫨鍒楄〃 ['school', 'depart', 'teacher', 'post', 'contact', 'subject'] 闇€瑕佹樉绀哄摢涓氨浼犻偅涓暟缁勬牸寮忥紝灞曠ず椤哄簭涓庝紶閫掗『搴忎竴鑷 榛樿鏄剧ず鏁欏笀銆佸矖浣嶃€侀€氳褰 * isSingle: 鏄惁涓哄崟鏍 榛樿false * selectedGroups: Array 榛樿閫変腑鐨 * resultid: 缁撴灉id * dataType: String 'user'鐢ㄦ埛绫诲瀷 | '' * departmentIds: Array 鎸囧畾鏄剧ず鐨勯儴闂╥ds * canSelectGroup: 鏄惁鍙互閫夋嫨缁 | 閮ㄩ棬 | 宀椾綅锛岄粯璁ゅ彧鑳介€夋嫨浜 * canSelectSchool: 鏄惁鍙互閫夋嫨缁 | 閮ㄩ棬 | 宀椾綅锛岄粯璁ゅ彧鑳介€夋嫨浜 * modal: false: 鏄剧ず閬僵 榛樿true(鏄剧ず) * filiterId: 杩囨护鏄剧ず鐨勮妭鐐 榛樿涓?' * districtPost: false 榛樿false 鏄惁鏀寔鍖虹骇宀椾綅閫夋嫨 * 鏆傛湭鍏煎锛堝悗缁仛鍏煎锛夛細 * defaultSchool: 榛樿鏄剧ず鐨勫鏍d * isNotTop: 鏄惁瀹氫綅鍒版祻瑙堝櫒椤堕儴 * filterRole */ /* * 琛ュ厖璇存槑 * tab: 宸﹁竟閫夋嫨妯″潡鐨刲ist * selectResult: 閫変腑鐨勬暟鎹 * hasSaveContact锛 鏄殑鏄剧ず淇濆瓨鍒伴€氳褰 * backTeacher锛 閫変汉鎺т欢鍥炴樉鐨刬d闆嗗悎 */ // 娣诲姞xss鏀诲嚮闃插尽鏂规硶start*********************************** SecLib = window.SecLib || {}; SecLib.XSSHelper = { "handle" : function(data, encType) { var args = arguments; if (args.length < 1) { throw new error("No arguments provided"); } if (args.length === 1) { return com.iflytek.seclib.Handler[com.iflytek.seclib.EncType.HTML] (data); } var dataEncoded = data; // iterate all encoding types and do encoding accordingly for (var i = 1; i < args.length; i++) { var handler = com.iflytek.seclib.Handler[args[i].toUpperCase()]; dataEncoded = handler(dataEncoded); } return dataEncoded; } }; // define an alias SecLib.xss=SecLib.XSSHelper; com = window.com || {}; com.iflytek = window.com.iflytek || {}; com.iflytek.seclib = { "EncType" : { "HTML" : "HTML", "JS" : "JS", "URL" : "URL", "URLPARAM" : "URLPARAM", "CSS" : "CSS" }, "Handler" : { "encode" : function(data, escapes) { var charArr = data.split(""); var resultArr = []; for ( var idx in charArr) { var char = charArr[idx]; if(Object.prototype.toString.call(char.charCodeAt) === '[object Function]') { var charCode = char.charCodeAt(); if (charCode <= 0xFF) { resultArr.push(escapes[charCode]); } else { resultArr.push(char); } } } var result = resultArr.join(""); return result; }, "HTML" : function(data) { return com.iflytek.seclib.Handler.encode(data, com.iflytek.seclib.htmlEscapes); }, "JS" : function(data) { return com.iflytek.seclib.Handler.encode(data, com.iflytek.seclib.jsEscapes); }, "URLPARAM" : function(data) { return com.iflytek.seclib.Handler.encode(data, com.iflytek.seclib.urlParamEscapes); }, "CSS" : function(data) { return com.iflytek.seclib.Handler.encode(data, com.iflytek.seclib.cssEscapes); }, "URL" : function(data) { var protocol = com.iflytek.seclib._getProtocolOfUrl(data); if (com.iflytek.seclib.allowedProtocols.indexOf(protocol) < 0) { // the protocol is not in allowed list throw { "Exception" : "Security", "Message" : "The protocol of URL " + data + " is not allowed" }; } else { return data; } } }, "allowedProtocols" : [ "http:", "https:" ], "htmlEscapes" : [ "�", "", "", "", "", "", "", "", "", " ", " ", " ", " ", " ", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", " ", "!", """, "#", "$", "%", "&", "'", "(", ")", "*", "+", ",", "-", ".", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", ":", ";", "<", "=", ">", "?", "@", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "[", "\", "]", "^", "_", "`", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "{", "|", "}", "~", "", "€", "", "‚", "ƒ", "„", "…", "†", "‡", "ˆ", "‰", "Š", "‹", "Œ", "", "Ž", "", "", "‘", "’", "“", "”", "•", "–", "—", "˜", "™", "š", "›", "œ", "", "ž", "Ÿ", " ", "¡", "¢", "£", "¤", "¥", "¦", "§", "¨", "©", "ª", "«", "¬", "­", "®", "¯", "°", "±", "²", "³", "´", "µ", "¶", "·", "¸", "¹", "º", "»", "¼", "½", "¾", "¿", "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï", "Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "×", "Ø", "Ù", "Ú", "Û", "Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ", "ö", "÷", "ø", "ù", "ú", "û", "ü", "ý", "þ", "ÿ" ], "jsEscapes" : [ "\\x00", "\\x01", "\\x02", "\\x03", "\\x04", "\\x05", "\\x06", "\\x07", "\\x08", "\\x09", "\\x0A", "\\x0B", "\\x0C", "\\x0D", "\\x0E", "\\x0F", "\\x10", "\\x11", "\\x12", "\\x13", "\\x14", "\\x15", "\\x16", "\\x17", "\\x18", "\\x19", "\\x1A", "\\x1B", "\\x1C", "\\x1D", "\\x1E", "\\x1F", "\\x20", "\\x21", "\\x22", "\\x23", "\\x24", "\\x25", "\\x26", "\\x27", "\\x28", "\\x29", "\\x2A", "\\x2B", "\\x2C", "\\x2D", "\\x2E", "\\x2F", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "\\x3A", "\\x3B", "\\x3C", "\\x3D", "\\x3E", "\\x3F", "\\x40", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "\\x5B", "\\x5C", "\\x5D", "\\x5E", "\\x5F", "\\x60", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "\\x7B", "\\x7C", "\\x7D", "\\x7E", "\\x7F", "\\x80", "\\x81", "\\x82", "\\x83", "\\x84", "\\x85", "\\x86", "\\x87", "\\x88", "\\x89", "\\x8A", "\\x8B", "\\x8C", "\\x8D", "\\x8E", "\\x8F", "\\x90", "\\x91", "\\x92", "\\x93", "\\x94", "\\x95", "\\x96", "\\x97", "\\x98", "\\x99", "\\x9A", "\\x9B", "\\x9C", "\\x9D", "\\x9E", "\\x9F", "\\xA0", "\\xA1", "\\xA2", "\\xA3", "\\xA4", "\\xA5", "\\xA6", "\\xA7", "\\xA8", "\\xA9", "\\xAA", "\\xAB", "\\xAC", "\\xAD", "\\xAE", "\\xAF", "\\xB0", "\\xB1", "\\xB2", "\\xB3", "\\xB4", "\\xB5", "\\xB6", "\\xB7", "\\xB8", "\\xB9", "\\xBA", "\\xBB", "\\xBC", "\\xBD", "\\xBE", "\\xBF", "\\xC0", "\\xC1", "\\xC2", "\\xC3", "\\xC4", "\\xC5", "\\xC6", "\\xC7", "\\xC8", "\\xC9", "\\xCA", "\\xCB", "\\xCC", "\\xCD", "\\xCE", "\\xCF", "\\xD0", "\\xD1", "\\xD2", "\\xD3", "\\xD4", "\\xD5", "\\xD6", "\\xD7", "\\xD8", "\\xD9", "\\xDA", "\\xDB", "\\xDC", "\\xDD", "\\xDE", "\\xDF", "\\xE0", "\\xE1", "\\xE2", "\\xE3", "\\xE4", "\\xE5", "\\xE6", "\\xE7", "\\xE8", "\\xE9", "\\xEA", "\\xEB", "\\xEC", "\\xED", "\\xEE", "\\xEF", "\\xF0", "\\xF1", "\\xF2", "\\xF3", "\\xF4", "\\xF5", "\\xF6", "\\xF7", "\\xF8", "\\xF9", "\\xFA", "\\xFB", "\\xFC", "\\xFD", "\\xFE", "\\xFF" ], "urlParamEscapes" : [ "%00", "%01", "%02", "%03", "%04", "%05", "%06", "%07", "%08", "%09", "%0A", "%0B", "%0C", "%0D", "%0E", "%0F", "%10", "%11", "%12", "%13", "%14", "%15", "%16", "%17", "%18", "%19", "%1A", "%1B", "%1C", "%1D", "%1E", "%1F", "%20", "%21", "%22", "%23", "%24", "%25", "%26", "%27", "%28", "%29", "%2A", "%2B", "%2C", "-", ".", "%2F", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "%3A", "%3B", "%3C", "%3D", "%3E", "%3F", "%40", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "%5B", "%5C", "%5D", "%5E", "_", "%60", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "%7B", "%7C", "%7D", "~", "%7F", "%80", "%81", "%82", "%83", "%84", "%85", "%86", "%87", "%88", "%89", "%8A", "%8B", "%8C", "%8D", "%8E", "%8F", "%90", "%91", "%92", "%93", "%94", "%95", "%96", "%97", "%98", "%99", "%9A", "%9B", "%9C", "%9D", "%9E", "%9F", "%A0", "%A1", "%A2", "%A3", "%A4", "%A5", "%A6", "%A7", "%A8", "%A9", "%AA", "%AB", "%AC", "%AD", "%AE", "%AF", "%B0", "%B1", "%B2", "%B3", "%B4", "%B5", "%B6", "%B7", "%B8", "%B9", "%BA", "%BB", "%BC", "%BD", "%BE", "%BF", "%C0", "%C1", "%C2", "%C3", "%C4", "%C5", "%C6", "%C7", "%C8", "%C9", "%CA", "%CB", "%CC", "%CD", "%CE", "%CF", "%D0", "%D1", "%D2", "%D3", "%D4", "%D5", "%D6", "%D7", "%D8", "%D9", "%DA", "%DB", "%DC", "%DD", "%DE", "%DF", "%E0", "%E1", "%E2", "%E3", "%E4", "%E5", "%E6", "%E7", "%E8", "%E9", "%EA", "%EB", "%EC", "%ED", "%EE", "%EF", "%F0", "%F1", "%F2", "%F3", "%F4", "%F5", "%F6", "%F7", "%F8", "%F9", "%FA", "%FB", "%FC", "%FD", "%FE", "%FF" ], "cssEscapes" : [ "\\00", "\\01", "\\02", "\\03", "\\04", "\\05", "\\06", "\\07", "\\08", "\\09", "\\0A", "\\0B", "\\0C", "\\0D", "\\0E", "\\0F", "\\10", "\\11", "\\12", "\\13", "\\14", "\\15", "\\16", "\\17", "\\18", "\\19", "\\1A", "\\1B", "\\1C", "\\1D", "\\1E", "\\1F", "\\20", "\\21", "\\22", "\\23", "\\24", "\\25", "\\26", "\\27", "\\28", "\\29", "\\2A", "\\2B", "\\2C", "\\2D", "\\2E", "\\2F", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "\\3A", "\\3B", "\\3C", "\\3D", "\\3E", "\\3F", "\\40", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "\\5B", "\\5C", "\\5D", "\\5E", "\\5F", "\\60", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "\\7B", "\\7C", "\\7D", "\\7E", "\\7F", "\\80", "\\81", "\\82", "\\83", "\\84", "\\85", "\\86", "\\87", "\\88", "\\89", "\\8A", "\\8B", "\\8C", "\\8D", "\\8E", "\\8F", "\\90", "\\91", "\\92", "\\93", "\\94", "\\95", "\\96", "\\97", "\\98", "\\99", "\\9A", "\\9B", "\\9C", "\\9D", "\\9E", "\\9F", "\\A0", "\\A1", "\\A2", "\\A3", "\\A4", "\\A5", "\\A6", "\\A7", "\\A8", "\\A9", "\\AA", "\\AB", "\\AC", "\\AD", "\\AE", "\\AF", "\\B0", "\\B1", "\\B2", "\\B3", "\\B4", "\\B5", "\\B6", "\\B7", "\\B8", "\\B9", "\\BA", "\\BB", "\\BC", "\\BD", "\\BE", "\\BF", "\\C0", "\\C1", "\\C2", "\\C3", "\\C4", "\\C5", "\\C6", "\\C7", "\\C8", "\\C9", "\\CA", "\\CB", "\\CC", "\\CD", "\\CE", "\\CF", "\\D0", "\\D1", "\\D2", "\\D3", "\\D4", "\\D5", "\\D6", "\\D7", "\\D8", "\\D9", "\\DA", "\\DB", "\\DC", "\\DD", "\\DE", "\\DF", "\\E0", "\\E1", "\\E2", "\\E3", "\\E4", "\\E5", "\\E6", "\\E7", "\\E8", "\\E9", "\\EA", "\\EB", "\\EC", "\\ED", "\\EE", "\\EF", "\\F0", "\\F1", "\\F2", "\\F3", "\\F4", "\\F5", "\\F6", "\\F7", "\\F8", "\\F9", "\\FA", "\\FB", "\\FC", "\\FD", "\\FE", "\\FF" ], }; com.iflytek.seclib._getProtocolOfUrl = (function() { var a; return function(url) { if (!a) a = document.createElement('a'); a.href = url; return a.protocol; }; })(); // *****************xss闃插尽鏀诲嚮鏂规硶end**************** (function (window, factory) { if (typeof exports === 'object') { module.exports = factory(); } else if (typeof define === 'function' && define.amd) { define(factory); } else { window.TeacherSelectUtils = new factory(); } })(this, function () { var $ = jQuery var that = this; this.callback = function () {}; this.hasSaveContact = false; //榛樿鍚湁淇濆瓨鍒伴€氳褰曞姛鑳 this.openTeacherSelectDialog = function(func, opt) { // 濂藉涓氬姟杩炵画鐐瑰嚮涓ゆ锛岃繖閲屽仛涓垽鏂紝濡傛灉宸茬粡鏈夐€変汉鎺т欢浜嗭紝鍒欎笉缁х画 if (window.isOpenCommonTeacherSelect) {return} window.isOpenCommonTeacherSelect = true; var deleteUsers = []; // 鍒犻櫎鐨勭粨鏋 var TeacherSelect = TeacherSelectUtils; // var selectResult = {} var changeOver = false; // 灞曞紑鏀惰捣鍏ㄥ眬鎺у埗 鐢ㄤ簬400姣绂佹鐐瑰嚮绗簩娆 var isDoubelTap = true; // 榛樿鏄剧ず涓夋爮妯″紡 var labelList = []; // 鍗曚綅缁勪娇鐢紝鏍囩鍒楄〃 var schoolList = []; // 鍗曚綅缁勪娇鐢紝瀛︽牎鍒楄〃 var groupIds = ''; // 鍗曚綅缁勪娇鐢 var labelIds = ''; // 鍗曚綅缁勪娇鐢 var departmentSchoolId = ''; // 閮ㄩ棬涓嬮€変腑鐨勫綋鍓嶅鏍d var storeTemp = { // 鐢变簬鍗曚綅缁勫拰瀛︽牎鍏叡杩欏嚑涓睘鎬э紝涓轰簡闃叉鍐茬獊锛岀敤鍏跺畠鍙橀噺瀛樺偍銆 labelList: [], schoolList: [], groupIds: [], labelIds: [] } var teacherTabCurrentAllTeachers = []; // 鏁欏笀鏍忕洰锛屽綋鍓嶆墍鏈夌殑鏁欏笀 var teacherTabCurrentShowTeacher = []; // 鏁欏笀鏍忕洰锛屽彸渚ф墍鏈夌殑鏁欏笀 var contactTabAllTeachers = []; var isSearchTeacher = false; var isOrganSearchTeacher = false; var isSearchGroupSchool = false; var contactGroup = {} var contactTeacher = ''; // 鍗曚綅閫氳褰 鎼滅储鏁欏笀 鏆傚瓨鏁欏笀鍚嶇О TeacherSelect.result = []; // 閫変腑鐨勭粨鏋 // TeacherSelect.oldMes = []; // 鍥炴樉璇锋眰鍒扮殑鏁版嵁 榛樿涓鸿€佹暟鎹 TeacherSelect.backTeacher = opt.data || [] TeacherSelect.backGroup = opt.selectedGroups || [] TeacherSelect.selectResult = [] // 璇锋眰杩斿洖鐨勬暟鎹 TeacherSelect.filterResult = {} // 璇锋眰杩斿洖鐨勬暟鎹垎绫 TeacherSelect.backDate = {}; // 鍥炴樉鏁版嵁鍒嗙被 TeacherSelect.departSchool = {}; //閫夋嫨閮ㄩ棬鏃堕€夋嫨鐨勫鏍 TeacherSelect.teacherSchool = {}; //閫夋嫨鏁欏笀鏃堕€夋嫨鐨勫鏍 TeacherSelect.teacherDepart = {}; //閫夋嫨鏁欏笀鏃堕€夋嫨鐨勯儴闂 TeacherSelect.postSchool = {}; // 閫夋嫨宀椾綅鏃堕€夋嫨鐨勫鏍 TeacherSelect.postTeacher = {}; // 閫夋嫨宀椾綅鏃堕€夋嫨鐨勫矖浣 TeacherSelect.subjectCheckedList = []; // 閫夋嫨鐨勫绉 TeacherSelect.subjectSchoolCheckedList = []; // 瀛︾閫夋嫨妯″潡閲岄€夋嫨鐨勫鏍 TeacherSelect.mySchool = {}; // 鎴戞墍鍦ㄧ殑瀛︽牎 TeacherSelect.mySchoolId = ''; // 鎴戞墍鍦ㄧ殑瀛︽牎id锛屽垰鎵撳紑鐨勬椂鍊欒幏鍙栭€変汉鎺т欢鐨勯厤缃殑鏃跺€欒幏鍙栫殑 TeacherSelect.mySchoolOriginId = ''; //鍗曚綅閫氳褰曟椂鍊欏瓨鍌ㄤ腑闂寸殑ID TeacherSelect.mySchoolName = ''; // 鎴戞墍鍦ㄧ殑瀛︽牎鍚嶇О锛屽垰鎵撳紑鐨勬椂鍊欒幏鍙栭€変汉鎺т欢鐨勯厤缃殑鏃跺€欒幏鍙栫殑 TeacherSelect.isChangeContact = false; //鏄惁鏇存柊閫氳褰曪紙淇濆瓨鍒伴€氳褰曚箣鍚庯級 checkOpt(func, opt) var $content = '
' + '
' + '' + '' + '
' + '
' + '
' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '宸查€変腑' + '' + '淇濆瓨鍒伴€氳褰旤/span>' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '
    ' + '
    ' + '' + '
    ' + ''; // 瀵瑰弬鏁扮殑瀹氫箟 function checkOpt (func, opt) { var opt = opt || {}; var defaultTab = ['teacher', 'post', 'contact']; // 榛樿鏄剧ず鏁欏笀銆佸矖浣嶃€侀€氳褰 that.oldMes = []; that.hasSaveContact = opt.hasSaveContact || false; // 鏄惁鏄剧ず淇濆瓨鍒伴€氳褰 that.tab = opt.tab || defaultTab; that.isSingle = opt.isSingle || false; that.showContact = opt.showContact || 1 // 1 灞曠ず锛 2 涓嶅睍绀猴紝 榛樿灞曠ず that.limitUserSchoolId = opt.limitUserSchoolId || ''; //鏄惁鍙樉绀烘寚瀹歴choolId鐨勫鏍 that.isDistrictAdmin = opt.isDistrictAdmin || false; // 鏄惁鍖虹骇绠$悊鍛樸€備负true浼氬己鍒惰缃甦istrict涓簍rue that.district = (opt.district === undefined || opt.district) ? true : false; // 鏄惁鏄剧ず鎵€鏈夊鏍 that.mask = opt.modal || true; // 鏄惁鏄剧ず閬僵妗 that.canSelectGroup = opt.canSelectGroup || false; // 鏄惁鍙互閫夋嫨缁 | 閮ㄩ棬 | 宀椾綅锛岄粯璁ゅ彧鑳介€夋嫨浜 that.canSelectSchool = opt.canSelectSchool || false; // 鏄惁鍙互閫夋嫨缁 | 閮ㄩ棬 | 宀椾綅锛岄粯璁ゅ彧鑳介€夋嫨浜 that.confirmCallBackFun = opt.confirmCallBackFun; that.dataType = opt.dataType || ''; // String 'user'鐢ㄦ埛绫诲瀷 | '' // that.selectedIds = opt.data || [], // Array 榛樿閫夋嫨鐨勪汉鐨刬ds that.departmentIds = opt.departmentIds || []; // Array 鎸囧畾鏄剧ず鐨勯儴闂╥ds that.selectedGroups = opt.selectedGroups || []; // Array 榛樿閫変腑鐨 that.customGroup = opt.customGroup || false; // 鑷畾涔夊垎缁 that.zIndex = opt.zIndex, that.resultid = opt.resultid || ''; that.rolemarks = opt.rolemarks || ''; that.roleId = opt.roleId || ''; that.isNotTop = opt.isNotTop || false; // 濡傛灉涓簍rue,鍒欎笉寮哄埗璁剧疆涓哄脊鍑哄埌椤堕儴銆備互鍓嶆槸寮瑰嚭鍒伴《閮ㄧ殑銆 that.filterRole = opt.filterRole || false; that.hideSelectAll = opt.hideSelectAll || false; that.filiterId = opt.filiterId || ''; that.districtPost = opt.districtPost || false; // 鏈吋瀹圭殑 that.pane = 'department'; // 寮€濮嬫樉绀虹殑闈㈡澘锛歞epartment || post || address锛岄粯璁ゆ槸閮ㄩ棬 that.defaultSchool = opt.defaultSchool || ''; // 榛樿鏄剧ず鐨勫鏍d }; // 杩斿洖鐨勬暟鎹 function sureBackResult(result) { if (that.confirmCallBackFun) { return that.confirmCallBackFun(result) } else { getDeleteDate() func(deleteUsers, false); // 鍒犻櫎鐨勪汉 func(result, true); // 鏈€鍚庨€夋嫨鐨勭粨鏋滈泦 } }; // 杩囨护宸插垹闄ょ殑鏁版嵁 function getDeleteDate () { deleteUsers = [] $.each(that.oldMes, function (i, old) { if (!checkHasDelete(old.id)) { deleteUsers.push(old) } }) function checkHasDelete (id) { // 妫€鏌ヤ紶鍏ョ殑id鍦ㄦ柊鐨勭殑鏁版嵁閲屾槸鍚︽湁杩斿洖true鎴栬€協alse var hasId = false $.each(TeacherSelect.result, function (i, res) { if (res.id == id) { hasId = true return false; } }) return (hasId) } }; // 鎵撳紑閫変汉鎺т欢 (function openSelectDialog () { $('body').append($content); // 鍦ㄥ叧闂€変汉鎺т欢鐨勫湴鏂硅缃甶sOpenCommonTeacherSelect涓篺alse涓嶉潬璋 // 鍥犱负鎴戜笉纭畾鍙湁杩欎竴涓湴鏂瑰彲浠ュ叧闂€ // 鍏堝湪閫変汉鎺т欢鏄剧ず鍒扮晫闈㈠悗灏卞皢鍏惰缃负false window.isOpenCommonTeacherSelect = false; // 璁剧疆閫変汉鎺т欢鐨勭獥鍙eぇ灏 if (document.documentElement.clientHeight < 750) { $('#common-district-select-teach-main').height('502px'); $('#select-result-show-main').css('margin-top', '0'); $('.select-result-show-body').css('padding', '5px 3px'); $('#select-result-show-main').css('height', '116px'); $('#common-select-bodys').css('460px'); $('#common-district-select-teach-main').css('margin-top', '-251px'); $('#select-bodys-checked-main').height('300px'); $('.select-trees-shows-main').height('260px'); $('.ul-overflow-show').height('197px'); $('#common-select-headers').css({ 'height': '34px', 'line-height': '34px' }); $('#common-select-bodys').css('padding-top', '8px'); $('#select-submit-btn-mian').css('padding', '5px 0'); } setDeploy() // 鐢变簬鍗楁矙瀹氬埗锛屽張璁捐鍒板お澶氫笟鍔★紝鎵€浠ユ敼鎴愪粠骞冲彴鑾峰彇閰嶇疆 $('.select-trees-shows-main').addClass('common-loading'); // 閲戝崕瀹氬埗锛屽湪閫夋嫨瀛︽牎鐨勬椂鍊欙紝鏀寔浼犲叆鍙傛暟customGroup: true, 鏉ュ疄鐜扮敤鎴疯嚜瀹氫箟鍒嗙粍 if (that.tab.indexOf('school') !== -1 && that.customGroup === true) { that.tab.push('customGroup'); } commonRequest({ roleId: that.roleId, filterRole: that.filterRole, filiterId: that.filiterId, rolemarks: that.rolemarks }, '/common_selector/config.do', function (res) { // 閫夋嫨鏁欏笀鐨勬椂鍊欐墠鏈夊崟浣嶉€氳褰 if (that.showContact === 1 && res.isShowUnitAddrBook && that.tab.indexOf('teacher') !== -1 && that.tab.indexOf('organ') === -1) { that.tab.push('organ'); } // 閫夋嫨瀛︽牎鐨勬椂鍊欙紝濡傛灉褰撳墠骞冲彴寮€鍚簡鍗曚綅閫氳褰曪紝灏嗗鏍¢鏍煎彉鎴愬崟浣嶉€氳褰曢鏍 var tabIndex = that.tab.indexOf('school'); if (res.isShowUnitAddrBook && res.schoolTabStyleForTeacher === 1 && tabIndex !== -1) { that.tab[tabIndex] = 'school_1'; } $('.select-trees-shows-main').removeClass('common-loading'); TeacherSelect.mySchoolId = res.mySchoolId; TeacherSelect.mySchoolName = res.mySchoolName; toShowNav(that.tab); }, function () { $('.select-trees-shows-main').removeClass('common-loading'); toShowNav(that.tab); }) })(); // 椤甸潰鍒濆鍖栫殑涓€浜涢厤缃 function setDeploy () { // 鍥炴樉鐨勫弬鏁 if (TeacherSelect.backTeacher.length > 0 || TeacherSelect.backGroup.length > 0) { showHasSelect(); } else { watchResultChange(); } if (that.canSelectGroup) { if (that.tab.indexOf('depart') === -1) { that.tab.unshift('depart') } } if (that.canSelectSchool) { if (that.tab.indexOf('school') === -1) { that.tab.unshift('school') } } // 灏唖electedGroups 杩涜鍒嗙被鏀惧埌backDate filterBackDate() // 鏄惁鏈変繚瀛樺埌閫氳褰曞姛鑳 if (!that.hasSaveContact) { $('#save-select-book').hide(); } // 娌℃湁璁剧疆rolemarks鏃舵牴鎹甶sDistrictAdmin涓巇istrict鏉ュ喅瀹氭槸鍚︿负鍖虹骇 if (!that.rolemarks && (that.isDistrictAdmin === true || that.district === true)) { that.rolemarks = 'CLOUD_ADMIN'; } // 璁剧疆閬僵鐨勬樉绀轰笌闅愯棌 if (!that.mask) { $('#common-district-select-teach-shade').hide(); } else { $('#common-district-select-teach-shade').show(); if (that.zIndex) { $('#common-district-select-teach-shade').css('z-index', that.zIndex); } } }; // 灏唖electedGroups 杩涜鍒嗙被鏀惧埌backDate function filterBackDate () { TeacherSelect.backDate.school = [] TeacherSelect.backDate.department = [] TeacherSelect.backDate.teachers = TeacherSelect.backTeacher TeacherSelect.backDate.post = [] $.each(TeacherSelect.backDate, function (i, item) { if (item.type === 'department') { TeacherSelect.backDate.department.push(item) } else if (item.type === 'school') { TeacherSelect.backDate.school.push(item) } else if (item.type === 'post') { TeacherSelect.backDate.post.push(item) } }) }; // 妫€鏌av鐨勯厤缃苟鎸夐『搴忓睍绀 function toShowNav (tab) { var tabList = { structure: '缁勭粐', school: '瀛︽牎', school_1: '瀛︽牎', depart: '閮ㄩ棬', teacher: '鏁欏笀', post: '宀椾綅', contact: '涓汉閫氳褰?, subject: '瀛︾', organ: '鍗曚綅閫氳褰?, customGroup: '鑷畾涔夊垎缁? }; for (var i = 0; i < tab.length; i++) { $('.select-bar-list').append('
  • '+ tabList[tab[i]] +'
  • '); $('.select-trees-shows-main').append('
    '); } // 鍏ㄥ眬鍙橀噺褰撳墠榛樿閫変腑绗竴涓ā鍧 $('.select-bar-list li').eq(0).addClass('active'); TeacherSelect.isSelectBar = tab[0] $('.common-select-headers-title').html(tabList[TeacherSelect.isSelectBar] + '閫夋嫨'); // $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content').show() $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content').animate({ height: '100%' }, 300) toShowSelectBodys(TeacherSelect.isSelectBar); changeBar(tabList); }; // 鍒囨崲宸﹁竟tab鏍 function changeBar(tabList) { var t1 = {} $('.select-bar-list li').on('click', function() { var curBarName = $(this).attr('data-name') if (TeacherSelect.isSelectBar === curBarName) { return false } TeacherSelect.isSelectBar = curBarName; // 鍒囨崲鐨勬椂鍊欎繚鐣欑姸鎬 var prevBar = $(this).siblings('li.active'); var prevBarName = prevBar.attr('data-name'); if (prevBarName === 'organ' || prevBarName === 'school_1') { t1.schoolList = schoolList; t1.labelList = labelList; t1.labelIds = labelIds; t1.groupIds = groupIds; // 鎶妔toreTemp璁剧疆涓轰箣鍓嶇殑缂撳瓨 // storeTemp.schoolList = schoolList; // storeTemp.labelList = labelList; // storeTemp.labelIds = labelIds; // storeTemp.groupIds = groupIds; } if (curBarName === 'organ' || curBarName === 'school_1') { // 浠巗toreTemp涓彇鍑轰箣鍓嶇殑缂撳瓨 schoolList = t1.schoolList || []; labelList = t1.labelList || []; labelIds = t1.labelIds || ''; groupIds = t1.groupIds || ''; } // $('#select-' + prevBarName + '-moudel-content').empty(); $(this).siblings('li').removeClass('active'); $(this).addClass('active'); $('.common-select-headers-title').html(tabList[TeacherSelect.isSelectBar] + '閫夋嫨'); toShowSelectBodys(TeacherSelect.isSelectBar); $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content').animate({ height: '100%' }, 300) $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content').siblings('div').animate({ height: '0' }, 300) }) }; // 鏍规嵁宸﹁竟鐨刵av閫変腑鐘舵€佹潵娓叉煋瀵瑰簲鐨勬ā鍧 function toShowSelectBodys(isSelectBar) { switch(isSelectBar) { case 'structure': toRenderStructureTrees(); break; case 'school': toRenderSchoolTrees(); break; case 'school_1': toRenderOrganSchoolList(); break; case 'depart': toRenderDepartSchoolTrees(); break; case 'teacher': toRenderTeachersSchoolTrees(); break; case 'contact': toRenderTeachersContactTrees(); break; case 'subject': toRenderSubjectSchoolTrees(); break; case 'post': toRenderPostTrees(); break; case 'organ': toRenderOrganList(); break; case 'customGroup': toRenderCustomGroup(); break; default: // toReanderStudentTree() toRenderTeachersSchoolTrees(); break; } }; /*** ** 閫夋嫨缁勭粐妯″潡锛 娓叉煋閫夋嫨缁勭粐妯″潡鐨刣om ****/ function toRenderStructureTrees() { var $structureContent = $('#select-structure-moudel-content'); var structureTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    '; if (!($structureContent.find('div').hasClass('select-list-common-main'))) { $structureContent.append(structureTree); $('#common-select-bodys .select-structure-tree').height('100%') toShowStructureTrees(); } }; /* ** 璇锋眰缁勭粐鏋舵瀯鏍 */ function toShowStructureTrees () { var obj = $('.select-structure-tree') obj.children('ul').remove(); obj.siblings('.common-loading').show(); var structurePostData = { filiterId: that.filiterId, rolemarks: that.rolemarks } var structurePostUrl = '/common_selector/structure.do' commonRequest (structurePostData, structurePostUrl, function(structureTree) { obj.siblings('.common-loading').hide(); if (Object.prototype.toString.call(structureTree)=='[object Array]') { // 杩欑鎯呭喌鍦ㄧ粍缁囬噷闈㈠熀鏈笉浼氬瓨鍦紝鍥犱负缁勭粐杩斿洖鐨勫熀鏈笂閮芥槸鏍戠粨鏋 // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees if (structureTree.length > 0) { if (structureTree.length === 0) { obj.append(''); } else { if (structureTree[0].disabled) { obj.append(''); } else { var hasRootChecked = false; if(TeacherSelect.filterResult.structure) { $.each(TeacherSelect.filterResult.structure, function(n, school) { if (school.id == structureTree[0].id) { hasRootChecked = true obj.append(''); } }); } if(!hasRootChecked) { obj.append(''); } } toPushCommonTrees($('.select-structure-tree ul > li'), structureTree[0].children, true, 'structure', 'structure'); } } else { obj.append(''); } } else { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 if (structureTree.id) { if (structureTree.disabled) { obj.append(''); } else { obj.append(''); } toPushCommonTrees($('.select-structure-tree ul > li'), structureTree.children, true, 'structure', 'structure'); } else { obj.append(''); } } }) }; /*** ** 閫夋嫨瀛︽牎妯″潡锛 娓叉煋閫夋嫨瀛︽牎妯″潡鐨刣om ****/ function toRenderSchoolTrees() { var $teacherContent = $('#select-school-moudel-content'); var teacherTree = '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    '; if (!($teacherContent.find('div').hasClass('select-list-common-main'))) { $teacherContent.append(teacherTree); if (document.documentElement.clientHeight < 750) { $('#common-select-bodys .select-schools-tree').height('222px') } toShowSchoolTrees($('.select-schools-tree'), '', true, 'school'); } }; function toRenderCustomGroup(){ var $customGroupContent = $('#select-customGroup-moudel-content'); var teacherTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    '+ '
    '+ '
    '+ '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    '+ ''; if (!($customGroupContent.find('div').hasClass('select-list-common-main'))) { $customGroupContent.append(teacherTree); if (document.documentElement.clientHeight < 750) { $('#common-select-bodys .select-customGroup-tree').height('250px'); $('#common-select-bodys .select-customGroup-school-tree').height('222px'); } toShowCustomGroupTree($('#select-custom-group-main .select-customGroup-tree')); } } /** * 鑾峰彇瀛︽牎鏁版嵁 * obj: 娓叉煋鐨勭埗绾х洰鏍囧厓绱 * name: 鎼滅储鐨勫悕瀛 * hasSelect: 鏄惁鍚湁澶嶉€夋 **/ function toShowSchoolTrees(obj, name, hasSelect, type) { // 娓叉煋瀛︽牎鏍 obj.children('ul').remove(); obj.siblings('.common-loading').show(); var schoolPostData = { filiterId: that.filiterId, rolemarks: that.rolemarks, roleId: that.roleId, filterRole: that.filterRole, limitUserSchoolId: that.limitUserSchoolId, id: 'VirtualRootNode', schoolName: name } var schoolPostUrl = '/common_selector/allSchools.do' commonRequest(schoolPostData, schoolPostUrl, function(schoolTree) { obj.siblings('.common-loading').hide(); if (obj.children('ul').length > 0) { obj.children('ul').remove() } if (!(schoolTree.length > 0 && schoolTree[0].leaf)) { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees if (schoolTree.length > 0) { if (type === 'school') { obj.append(''); toPushCommonTrees(obj.children('ul').children('li'), schoolTree, hasSelect, 'school', type); } else { if(TeacherSelect.isSelectBar === 'depart') { transDepartSchoolTree(schoolTree) } toPushCommonTrees(obj, schoolTree, hasSelect, 'school', type); } } else { obj.append(''); } } else { // 濡傛灉杩囨护鐨勮妭鐐归噷闈笉鍖呭惈鑷繁鐨勫鏍 var showMySchool = true if (schoolTree.length === 1) { // 鏉冮檺鍙瓨鍦ㄨ嚜宸辩殑瀛︽牎涓 鎴栬€呬负鍗曟牎妯″紡 // 灏嗘暀甯堥€夋嫨銆佸矖浣嶉€夋嫨鍙樹负涓ゅ垪 isDoubelTap = true; TeacherSelect.mySchool = schoolTree[0]; } else { if ((that.filiterId && that.filiterId !== '') || !schoolTree[0].canSelect) { showMySchool = false } else { TeacherSelect.mySchool = schoolTree[0]; } isDoubelTap = false; // 榛樿灏嗙涓€涓樉绀虹殑瀛︽牎锛堣嚜宸辩殑锛夐殣钘忔帀 schoolTree.splice(0, 1); } if (isDoubelTap) { // 涓ゆ爮鐩ā寮 // 鏁欏笀閫夋嫨閮ㄥ垎 $('#select-teacher-moudel-content #select-schools-moudel-main').hide() $('#select-teacher-moudel-content .first-line').hide() // 宀椾綅閫夋嫨閮ㄥ垎 $('#select-post-schools-moudel-main').hide() $('#select-post-moudel-content .first-line').hide() // 閮ㄩ棬閮ㄥ垎 $('#select-dept-schools-moudel-main').hide() $('#select-depart-moudel-content .select-center-line').hide() } else { // 涓夋爮妯″紡 // 鏁欏笀閫夋嫨閮ㄥ垎 $('#select-teacher-moudel-content .common-select-tree-bodys').css('width', '250px'); $('#select-teacher-moudel-content .select-center-line').css('margin-right', '3px'); // 宀椾綅閫夋嫨閮ㄥ垎 $('#select-post-moudel-content .common-select-tree-bodys').css('width', '250px'); $('#select-post-moudel-content .select-center-line').css('margin-right', '3px'); // 鏁欏笀宀椾綅鏍戞樉绀烘í鍚戞粴鍔ㄦ潯 $('#select-post-teacher-moudel-main .select-post-teacher-tree').css('overflow', 'auto'); } // 濡傛灉鏄儴闂ㄩ€夋嫨鎴栬€呭鐢熼€夋嫨榛樿閫変腑鎴戠殑瀛︽牎 if (type === 'depart') { $('#select-depart-moudel-content .big-loading').hide() if (showMySchool) { TeacherSelect.departSchool = {schoolId: TeacherSelect.mySchool.id, schoolName: TeacherSelect.mySchool.text}; toShowDepartTrees(TeacherSelect.mySchool.id, '', 'depart'); } else { $('#select-departs-moudel-main').hide() $('#select-depart-moudel-content .select-center-line').hide() } } else if (type === 'teacher') { $('#select-teacher-moudel-content .big-loading').hide() if (showMySchool) { TeacherSelect.departSchool = {schoolId: TeacherSelect.mySchool.id, schoolName: TeacherSelect.mySchool.text}; toShowDepartTrees(TeacherSelect.mySchool.id, '', 'teacher'); TeacherSelect.teacherSchool = {schoolId: TeacherSelect.mySchool.id, schoolName: TeacherSelect.mySchool.text}; toShowTeacherTrees(TeacherSelect.mySchool.id, '', '', false, ''); } else { $('#select-depart-moudel-main').hide() $('#select-teacher-moudel-content .select-center-line').hide() $('#select-teacher-moudel-main').hide() } } else if (type === 'post') { $('#select-post-moudel-content .big-loading').hide() $('.post-main').show() if (showMySchool && !that.districtPost) { TeacherSelect.postSchool = {schoolId: TeacherSelect.mySchool.id, schoolName: TeacherSelect.mySchool.text, selectDis: false}; toShowPostTrees(TeacherSelect.mySchool.id, false, '', false); // 娓叉煋鏁欏笀 TeacherSelect.teacherSchool = {schoolId: TeacherSelect.mySchool.id, schoolName: TeacherSelect.mySchool.text}; toShowPostTeacherTrees(TeacherSelect.mySchool.id, '', '', false); } else { $('#select-post-moudel-main').hide() $('#select-post-moudel-content .select-center-line').hide() $('#select-post-teacher-moudel-main').hide() } } // if (hasSelect) { // obj.append(''); // } // else { // obj.append(''); // } // 涓€娆℃€ф覆鏌撴暣涓爲鐨勬柟娉 // toPushCommonTrees(obj.children('ul').children('li'), schoolTree, hasSelect, 'school'); if(TeacherSelect.isSelectBar === 'depart') { changeDepartSchoolTreeId(schoolTree) } toPushCommonTrees(obj, schoolTree, hasSelect, 'school', TeacherSelect.isSelectBar); // toPushCommonTrees(obj.children('ul').children('li'), schoolTree, hasSelect, 'school'); // 鐐瑰嚮瀵瑰簲鑺傜偣璇锋眰瀵瑰簲涓嬮潰鐨勪竴灞傜粨鏋勮繑鍥炵殑鏄暟缁勭粨鏋 // toPushSchoolTree(obj, schoolTree, hasSelect, type) } function transDepartSchoolTree(schoolTree) { schoolTree.forEach(function(item) { item.id = 'depart_' + item.id if(item.children) { transDepartSchoolTree(item.children) } }) } function changeDepartSchoolTreeId(schoolTree) { var type = Object.prototype.toString.call(schoolTree) if(type === '[object Object]') { if(schoolTree.type === 'school') { schoolTree.id = 'depart_' + schoolTree.id } else if(schoolTree.children && schoolTree.children.length) { changeDepartSchoolTreeId(schoolTree.children) } } else if(type === '[object Array]') { schoolTree.forEach(function (item) { // item.type = 'school' changeDepartSchoolTreeId(item) }) } } }); }; function toShowCustomGroupTree(obj){ obj.children('ul').remove(); obj.siblings('.common-loading').show(); var customGroupUrl = '/common_selector/custom_groups/groupList.do'; commonRequest({}, customGroupUrl, function (groupList) { obj.siblings('.common-loading').hide(); if (groupList && groupList.length > 0) { appendList(groupList); // 閫夋嫨绗竴涓垎缁勫睍寮€ showCustomGroupSchools(groupList[0].groupId, groupList[0].groupName); } else { $('.select-customGroup-tree').append('

    鏆傛湭鏌ヨ鍒拌嚜瀹氫箟鍒嗙粍锛孅/p>

    鐐瑰嚮鍙充晶璁剧疆鎸夐挳缁存姢鑷畾涔夊垎缁剘

    '); $('.common-group-search-main').hide(); } }, function () { obj.siblings('.common-loading').hide(); $('.select-customGroup-tree').append('

    鏆傛湭鏌ヨ鍒拌嚜瀹氫箟鍒嗙粍锛孅/p>

    鐐瑰嚮鍙充晶璁剧疆鎸夐挳缁存姢鑷畾涔夊垎缁剘

    '); $('.common-group-search-main').hide(); }); listenGroupClick(); function appendList(groupList) { // toPushSchoolTree(obj, groupList, true) var html = ''; obj.append(html); } function listenGroupClick () { // 鐐瑰嚮鑷畾涔夊垎缁勫悕绉 $('#select-customGroup-moudel-content').on('click', '.custom-group-structure-select.can-select-school', function () { showCustomGroupSchools($(this).parent().attr('data-id'), $(this).parent().attr('data-name')); }); $('#select-customGroup-moudel-content').on('click', 'input[type="checkbox"]', function (e) { e.stopPropagation() var $this = $(this); var dtype = $this.attr('data-type'); var isChecked = $this.prop('checked'); var id = $this.parent().attr('data-id'); var name = $this.parent().attr('data-name'); if (dtype === 'group-check') { // 閫夋嫨鍒嗙粍 showCustomGroupSchools(id, name, isChecked ? 1 : -1); } else if (dtype === 'school-check') { // 閫夋嫨瀛︽牎 checkResultList(id, name, name, id, isChecked, 'school'); // 鍒ゆ柇鏄笉鏄墍鏈夌殑瀛︽牎琚€変腑浜嗭紝濡傛灉鏄紝鍒欏皢鐖剁骇鍜屽垎缁勯€変腑銆傚鏋滀笉鏄紝杩欏彇娑堜粬浠殑閫変腑銆 var isAllChecked = isChecked; if (isChecked) { $this.parent().siblings('li').children('input').each(function (index, el) { if (!$(el).prop('checked')) { isAllChecked = false; } }) } $this.parent().parent().siblings('input').prop('checked', isAllChecked); var groupId = $this.parent().parent().parent().attr('data-group-id'); $('#select-custom-group-main li[data-id='+groupId+']').children('input').prop('checked', isAllChecked); } else if (dtype === 'school-all-check') { // 閫夋嫨鎵€鏈夊鏍 var groupId = $this.parent().attr('data-group-id'); $('#select-custom-group-main li[data-id=' + groupId + ']').children('input').prop('checked', isChecked); $this.siblings('ul').find('input[type="checkbox"]').each(function (index, el) { var schoolid = $(el).parent().attr('data-id'); var schoolname = $(el).parent().attr('data-name'); if (schoolid) { // 鍏ㄩ€夋病鏈塻choolid锛屼篃涓嶆槸瀛︽牎 checkResultList(schoolid, schoolname, schoolname, schoolid, isChecked, 'school'); $(el).prop('checked', isChecked); } }) } }); } } /** * 鏄剧ず瀛︽牎鍒楄〃 * @params { number } checkAll - 鏄惁鍦ㄨ幏鍙栧悗灏嗘墍鏈夊鏍¢€変腑, -1琛ㄧず鍙栨秷閫変腑锛屽苟涓斿皢鍏朵粠缁撴灉涓彇娑堬紝0琛ㄧず姝e父鏄剧ず锛屽悓姝ョ粨鏋滈€変腑鐘舵€侊紝1琛ㄧず鍏ㄩ儴閫変腑骞朵笖灏嗗叾鍔犲叆閫変腑缁撴灉銆 */ function showCustomGroupSchools (groupId, groupName, checkAll, schoolName) { var groupSchoolUrl = '/common_selector/custom_groups/schoolList.do'; var obj = $('#select-customGroup-moudel-content .select-customGroup-school-tree'); obj.children('ul').remove(); obj.siblings('.common-loading').show(); isSearchGroupSchool = !!schoolName; // 濡傛灉鏈塻choolName灏辨槸鎼滅储 var params = { groupId: groupId, schoolName: schoolName } if (!groupId) { params.groupId = $('.custom-group-structure-select.school-selected').parent().attr('data-id'); } else { $('#search-custom-group-input').val(''); } commonRequest(params, groupSchoolUrl, function (groupList) { obj.siblings('.common-loading').hide(); if (groupList && groupList.length > 0) { renderGroupSchoolList(groupList); } else { obj.empty().append('

    鏆傛棤鏁版嵁

    '); } }, function () { obj.siblings('.common-loading').hide(); obj.empty().append('

    鏆傛棤鏁版嵁

    '); }); function renderGroupSchoolList(groupList) { var isAllChecked = true; var liHtml = groupList.map(function (school) { var isChecked = false; if (!checkAll) { // 濡傛灉涓嶆槸鍦ㄨ幏鍙栧悗灏遍兘閫変腑锛屽垯鍘诲垽鏂瀛︽牎鏄惁鍦ㄥ凡閫夊垪琛ㄤ腑銆 isChecked = isSelectSchool(school.id); // 杩欎釜瀛︽牎鏄惁宸茬粡鍦ㄩ€夋嫨缁撴灉浜 } else if (checkAll === 1){ // 濡傛灉鏄幏鍙栧悗閫変腑妯″紡锛屽垯灏嗘瀛︽牎鍔犲叆宸查€夌粨鏋滀腑銆 // todo: add result isChecked = true; checkResultList(school.id, school.text, school.text, school.id, true, 'school'); } else if (checkAll === -1) { isChecked = false; checkResultList(school.id, school.text, school.text, school.id, false, 'school'); } if (!isChecked) { isAllChecked = false; } var ghtml ='
  • ' + '' + '' + '' + school.text + '' + '
  • '; return ghtml; }).join(''); var html = ''; if (isAllChecked) { // 濡傛灉鍏ㄩ€変簡锛屾妸宸︿晶鍏ㄩ€変篃閫変腑 $('#select-custom-group-main li[data-id="'+ groupId +'"]').children('input').attr('checked', "checked"); } obj.empty().append(html); } // 鍒ゆ柇瀛︽牎鏄惁宸茬粡鍦ㄩ€夋嫨缁撴灉琛ㄤ腑浜嗐€ function isSelectSchool (schoolId) { if (TeacherSelect.result.length === 0) { return false; } for (var i = 0; i < TeacherSelect.result.length; i++) { var r = TeacherSelect.result[i]; if (r.type === 'school' && r.id === schoolId) { return true; } } return false; } } /** * 鍗曚綅閫氳褰 - 鑾峰彇甯︽湁鏍囩鐨勫鏍℃暟鎹 */ function toShowLabelSchoolList() { getLabelList(function (res) { labelList = res var labels = createLabels(labelList); $('#select-organ-moudel-content .select-organ-school-labels').html(labels); addOrganListen(); getLabelSchoolList(); }); } /** * 鍗曚綅閫氳褰 - 鑾峰彇瀛︽牎鍒楄〃 * @use * 鍒氳繘鍏ョ殑鏃跺€欒幏鍙 * 瀛︽牎鎼滅储鐨勬椂鍊欒幏鍙 * @param {*} schoolName */ function getLabelSchoolList(schoolName, isSearch) { var curPanel = TeacherSelect.isSelectBar; var schoolPostData = { groupIds: groupIds, labelIds: labelIds, schoolName: schoolName, roleId: that.roleId, filterRole: that.filterRole, filiterId: that.filiterId, rolemarks: that.rolemarks } var schoolPostUrl = '/common_selector/getLabelSchools.do'; commonRequest(schoolPostData, schoolPostUrl, function (res) { schoolList = res; $('#select-' + curPanel + '-moudel-content').children('.big-loading').hide(); var schools = createSchoolList(schoolList); if (isSearch) { $('#select-' + curPanel + '-moudel-content .select-organ-school-list').empty().html(schools); } else { $('#select-'+ curPanel+ '-moudel-content .select-organ-school-list').html(schools); addSchoolListen(); } }) } function getLabelList(callback) { var postData = { roleId: that.roleId, filterRole: that.filterRole, filiterId: that.filiterId, rolemarks: that.rolemarks } var labelPostUrl = '/common_selector/getLabelList.do'; commonRequest(postData, labelPostUrl, function (labelList) { callback(labelList); }) } // 鍗曚綅閫氳褰 - 鍒涘缓鏍囩UI function createLabels(list) { var html = '' return html; } // 鍗曚綅閫氳褰 - 鍒涘缓瀛︽牎鍒楄〃UI function createSchoolList(list) { var html = ''; if (list.length === 0) { html = '' } return html; } function generateLabel (labels) { var html = ''; for (var i = 0; i < labelList.length; i++) { var labelDetail = labelList[i].labelDetail; var label = getLabelInDetail(labelDetail); if (label) { html += '
    ' + label.labelName + '
    ' } else { html += '
    --
    ' } } function getLabelInDetail (labelDetail) { for (var j = 0; j < labelDetail.length; j++) { if (hasLabel(labelDetail[j])) { return labelDetail[j] } } } function hasLabel (label) { for (var k = 0; k < labels.length; k++) { if (labels[k].labelId === label.labelId) { return true } } return false } return html } // 鍗曚綅閫氳褰 - 鐩戝惉鏍囩浜嬩欢 function addOrganListen() { var curPanel = TeacherSelect.isSelectBar; $('#select-' + curPanel + '-moudel-content .organ-label input[type="checkbox"]').on('click', function () { var $this = $(this); var isChecked = $this.prop("checked"); var groupId = $this.attr('data-groupid'); var $isCheckedAll = $('#select-' + curPanel + '-moudel-content .organ-input-all[data-groupid="' + groupId + '"]'); if ($this.attr('data-type') === 'all') { // 鐐瑰嚮鍏ㄩ€ $this.parent().siblings().children().prop('checked', isChecked); for (var i = 0; i < labelList.length; i++) { var lbs = labelList[i]; if (lbs.groupId === groupId) { lbs.labelDetail.forEach(function (label) { label.isChecked = isChecked; }) break; } } } else { // 濡傛灉鎸夐挳鐨勯€変腑鐘舵€佸拰鍏ㄩ€変笉涓€鏍凤紝閭d箞灏遍噰鐢ㄥ垽鏂叏閫夌姸鎬 if (!isChecked) { $isCheckedAll.attr('checked', false); } else { var isAll = true // 鎵€鏈夌殑閫夐」锛屽彧瑕佹湁涓€涓病鏈夎閫変腑锛岃繖鍏ㄩ€変笉琚€変腑銆 $('#select-' + curPanel +'-moudel-content .organ-input-item[data-groupid="' + groupId + '"]').each(function (idx, val) { if ($(val).prop("checked") !== true) { isAll = false } }) $isCheckedAll.attr('checked', isAll); } for (var i = 0; i < labelList.length; i++) { var lbs = labelList[i]; if (lbs.groupId === groupId) { for (var j = 0; j < lbs.labelDetail.length; j++) { var label = lbs.labelDetail[j]; if (label.labelId === $this.val()) { label.isChecked = isChecked; break; } } break; } } } filterSchoolList(); }) } function filterSchoolList () { var curPanel = TeacherSelect.isSelectBar; var labelIdArray = []; var groupIdArray = []; for (var i = 0; i < labelList.length; i++) { var lbs = labelList[i]; for (var j = 0; j < lbs.labelDetail.length; j++) { var label = lbs.labelDetail[j]; if (label.isChecked) { labelIdArray.push(label.labelId); if (groupIdArray.indexOf(lbs.groupId) === -1) { groupIdArray.push(lbs.groupId); } } } } labelIds = labelIdArray.join(','); groupIds = groupIdArray.join(','); var inputval = $('#select-' + curPanel +'-moudel-content').find('.common-search-input').val(); getLabelSchoolList(inputval, true); } // 鍗曚綅閫氳褰 - 鐩戝惉瀛︽牎鍒楄〃 function addSchoolListen() { var curPanel = TeacherSelect.isSelectBar $('#select-'+ curPanel +'-moudel-content .select-organ-school-list').on('click', '.organ-school-li', function (e) { var $this = $(this); var $target = $(e.target); var schoolid = $this.attr('data-schoolid'); if ($target.hasClass('organ-input-school-item')) { // 鐐瑰嚮閫夋嫨妗 var isChecked = $target.prop("checked"); var $isCheckedAll = $('#select-' + curPanel + '-moudel-content .organ-school-li[data-type="all"] input[type="checkbox"]'); if ($this.attr('data-type') === 'all') { // 鐐瑰嚮鍏ㄩ€ $('#select-'+ curPanel +'-moudel-content .organ-input-school-item').prop('checked', isChecked); setAllSchoolChecked(isChecked); // 鑾峰彇鎵€鏈夌殑瀛︽牎鐨勬墍鏈夋暀甯堬紝灏嗗叾鍔犲叆涓嬮潰鐨勮兌鍥 // todo: 鎬ц兘浼樺寲 for (var i = 0; i < schoolList.length; i++) { checkOrganSchool(schoolList[i].id, isChecked); } } else { // 鐐瑰嚮闈炲叏閫 checkOrganSchool(schoolid, isChecked); $isCheckedAll.attr('checked', isAllSchoolChecked()); // 鏇存柊鍏ㄩ€夌殑UI鐘舵€ } } else if ($target.hasClass('organ-school-name')) { // 鐐瑰嚮瀛︽牎鍚嶇О if (curPanel === 'school_1') { // school_1妯℃澘鐐瑰嚮瀛︽牎鏃犲弽搴 return } $('#select-organ-moudel-content .organ-school-name').removeClass('school-selected'); $target.addClass('school-selected'); // 鍙宠竟鏄剧ず杩欎簺鏁欏笀 // 鐐瑰嚮瀛︽牎鐨勬椂鍊欏皢id淇濆瓨涓嬫潵 TeacherSelect.mySchoolOriginId = schoolid toShowOrganTeacherTrees(schoolid, "", "", "", "", $target.text()); } }) } // 鍗曚綅閫氳褰 - 鑾峰彇涓€涓鏍$殑鎵€鏈夎€佸笀锛岀劧鍚庡皢鍏跺姞鍏ラ€夋嫨缁撴灉 // 濡傛灉鏄鏍★紝鍒欏皢瀛︽牎鍔犲叆閫夋嫨缁撴灉 function checkOrganSchool(schoolid, isChecked) { var curPanel = TeacherSelect.isSelectBar; var school = findSchoolById(schoolid); school.isChecked = isChecked; // 鏇存柊瀵硅薄鐨勯€変腑鐘舵€ // 濡傛灉鏄崟浣嶉€氳褰 if (curPanel === 'organ') { // 濡傛灉褰撳墠鍒楄〃瀛︽牎id灏辨槸灞曞紑鐨勫鏍d,閭d箞鍚屾鍒楄〃閫変腑鐘舵€ var currentShowSchoolId = $('#select-' + curPanel + '-moudel-content .select-organ-teacher-tree').attr('data-school-id'); if (currentShowSchoolId === schoolid) { $('#select-organ-moudel-content .select-organ-teacher-tree input').prop('checked', isChecked); } // 濡傛灉涔嬪墠宸茬粡鑾峰彇杩囨瀛︽牎鐨勬暀甯堝垪琛ㄤ簡锛屽垯涓嶈幏鍙栦簡 if (school.teachers) { batchAddTeacherToResult(school.teachers, isChecked); return; } getOrganAllTeacher(schoolid, "", "", "", "", function (teachers) { school.teachers = teachers; // 鎵归噺灏嗘墍鏈夎€佸笀鍔犲叆閫夋嫨缁撴灉 batchAddTeacherToResult(teachers, isChecked); }); } // todo: 濡傛灉鏄鏍 if (curPanel === 'school_1') { checkResultList(school.id, school.text, school.text, school.id, isChecked, 'school', null, null); } } // 鍗曚綅閫氳褰 - 鏍规嵁瀛︽牎ID,鑾峰彇瀛︽牎 function findSchoolById(schoolid) { for (var i = 0; i < schoolList.length; i++) { if (schoolList[i].id === schoolid) { return schoolList[i]; } } } // 鍗曚綅閫氳褰 - 鍒ゆ柇鏄惁鎵€鏈夌殑瀛︽牎閮借閫変腑 function isAllSchoolChecked() { for (var i = 0; i < schoolList.length; i++) { if (!schoolList[i].isChecked) { return false } } return true } // 鍗曚綅閫氳褰 - 灏嗘墍鏈夌殑瀛︽牎璁剧疆涓洪€変腑鐘舵€ function setAllSchoolChecked(isChecked) { for (var i = 0; i < schoolList.length; i++) { schoolList[i].isChecked = isChecked } } /* * 娓叉煋瀛︽牎妯″潡 */ function toPushSchoolTree (obj, tree, hasSelect, type) { obj.append(''); var schoolId = ''; // 璁剧疆鍚嶅瓧span瀹藉害 var width = (type === 'teacher' || type === 'post') ? '160px' : '230px' // TODO 闇€瑕佸仛鍥炴樉 if (hasSelect) { for (var i = 0; i < tree.length; i++) { if (tree[i].state === 'leaf') { var hasSchool = false; if (TeacherSelect.backDate.school && TeacherSelect.backDate.school.length > 0) { $.each(TeacherSelect.backDate.school, function(n, school) { if (school == tree[i].id) { hasSchool = true; return false; } }); } if (TeacherSelect.filterResult.school && TeacherSelect.filterResult.school.length > 0) { $.each(TeacherSelect.filterResult.school, function(n, school) { if (school.id == tree[i].id) { hasSchool = true; return false; } }); } if (hasSchool) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } // obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else if (tree[i].state === 'closed') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } else { for (var i = 0; i < tree.length; i++) { // 濡傛灉鏄痯ost宀椾綅閫夋嫨骞朵笖閰嶇疆浜哾istrictPost = true 鍒欒妭鐐逛篃鍙互閫夋嫨 if (type === 'post' && that.districtPost) { if (tree[i].state === 'leaf') { if (tree[i].id == TeacherSelect.mySchool.id) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].textleft + '
  • '); } } else if (tree[i].state === 'closed') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else { if (tree[i].state === 'leaf') { if (tree[i].id == TeacherSelect.mySchool.id) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { if(type === 'depart') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } else if (tree[i].state === 'closed') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } } }; /** * 閮ㄩ棬閫夋嫨鍩虹缁撴瀯 **/ function toRenderDepartSchoolTrees() { // var $teacherAndDepartContent = $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content'); var $teacherAndDepartContent = $('#select-depart-moudel-content'); var teacherAndDepartTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '
    ' + '
    ' + '
    ' + '
    '; if (!($teacherAndDepartContent.find('div').hasClass('select-list-common-main'))) { // 鑻ヤ箣鍓嶅凡娓叉煋杩嘾om鍒欎笉闇€瑕侀噸澶嶆覆鏌 $teacherAndDepartContent.append(teacherAndDepartTree); if (document.documentElement.clientHeight < 750) { $('#common-select-bodys .select-depart-schools-tree').height('222px') $('#common-select-bodys .select-departs-tree').height('222px') } // 宸﹁竟瀛︽牎閮ㄥ垎 toShowSchoolTrees($('.select-depart-schools-tree'), '', false, 'depart'); } }; /** ** 閮ㄩ棬鏁版嵁鑾峰彇 ** schoolId: 瀛︽牎id ** name: 鎼滅储閮ㄩ棬鍚嶅瓧 ** **/ function toShowDepartTrees(departSchoolId, name, type) { // 娓叉煋閮ㄩ棬鏍 var schoolId = departSchoolId.split('_').length > 1 ? departSchoolId.split('_')[1] : departSchoolId var hasSelect = (type === 'depart' || type === 'teacher') ? true : false // var hasSelect = true // 鏂伴渶姹傦紝鏁欏笀閫夋嫨鐨勬椂鍊欏厑璁搁€夋嫨閮ㄩ棬 var depObj = type === 'depart' ? $('.select-departs-tree') : $('.select-depart-tree') var depbjLi = type === 'depart' ? $('.select-departs-tree ul > li') : $('.select-depart-tree ul > li') depObj.children('ul').remove(); depObj.siblings('.common-loading').show(); var departPostData = { deptIds: that.departmentIds.join(','), deptName: name, schoolId: schoolId } var departPostUrl = '/common_selector/departments.do' var _this = this commonRequest (departPostData, departPostUrl, function(departTree) { _this.departmentSchoolId = schoolId depObj.siblings('.common-loading').hide(); if (depObj.children('ul').length > 0) { depObj.children('ul').remove() } if (Object.prototype.toString.call(departTree)=='[object Array]') { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees if (departTree.length > 0) { if (type === 'depart') { if (departTree.length === 0 && departTree[0].id === 'nodeptmentmemberbtnid') { depObj.append(''); } else { depObj.append(''); toPushCommonTrees($('.select-departs-tree ul > li'), departTree, hasSelect, 'depart', type); } } else { toPushCommonTrees(depObj, departTree, hasSelect, 'depart', type); } } else { depObj.append(''); } } else { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 if (departTree.children.length > 0) { if (type === 'depart') { if (departTree.children[0].children.length === 0 && departTree.children[0].id === 'nodeptmentmemberbtnid') { depObj.append(''); } else { var checked = $('.select-depart-schools-tree li[data-id="'+ schoolId +'"] input').prop('checked'); if(checked) { depObj.append(''); } else { depObj.append(''); } toPushCommonTrees($('.select-departs-tree ul > li'), departTree.children, hasSelect, 'depart', type); } } else { // 鍒ゆ柇宸︿晶鑺傜偣鏄惁涓洪€変腑鐘舵€侊紝 濡傛灉涓洪€変腑鐘舵€侊紝 鍙充晶鏍圭粨鐐逛篃閫変腑 // var checked = $('.select-departs-tree ul > li input').prop('checked') // if(checked) { // depObj.append(''); // } else { depObj.append(''); // } // var isChecked = $this.prop('checked') toPushCommonTrees($('.select-depart-tree ul > li'), departTree.children, hasSelect, 'depart', type); } // toPushCommonTrees($('.select-departs-tree ul > li'), departTree.children, hasSelect, 'depart'); } else { depObj.append(''); } } }) }; /** * 鏁欏笀閫夋嫨閮ㄥ垎鍩虹缁撴瀯 **/ function toRenderTeachersSchoolTrees() { // var $teacherContent = $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content'); var $teacherContent = $('#select-teacher-moudel-content'); var teacherAndSchoolTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '
    ' + '
    ' + '
    ' + '
    '; // if ($teacherContent.find('div').hasClass('select-list-common-main')) { // $teacherContent.html(''); // } if (!($teacherContent.find('div').hasClass('select-list-common-main'))) { // 鑻ヤ箣鍓嶅凡娓叉煋杩嘾om鍒欎笉闇€瑕侀噸澶嶆覆鏌 $teacherContent.append(teacherAndSchoolTree); if (document.documentElement.clientHeight < 750) { $('#common-select-bodys .select-teacher-schools-tree').height('222px'); $('#common-select-bodys .select-depart-tree').height('222px'); $('#common-select-bodys .select-teacher-tree').height('222px'); } // 宸﹁竟瀛︽牎閮ㄥ垎 toShowSchoolTrees($('.select-teacher-schools-tree'), '', false, 'teacher'); } if (!that.district || that.hideSelectAll) { // 鍗曟牎鏃朵笉鏄剧ず鍏ㄥ尯鎼滅储鐨勬寜閽 $('.select-from-all').remove() } }; /** * 娓叉煋鍗曚綅閫氳褰 */ function toRenderOrganList() { var $OrganContent = $('#select-organ-moudel-content'); var teacherAndLabelsSchoolTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    '+ '
    '+ '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '
    ' + '
    ' + '
    ' + '
    '; // 鑻ヤ箣鍓嶅凡娓叉煋杩嘾om鍒欎笉闇€瑕侀噸澶嶆覆鏌 if (!($OrganContent.find('div').hasClass('select-list-common-main'))) { $OrganContent.append(teacherAndLabelsSchoolTree); if (document.documentElement.clientHeight < 750) { $('#common-select-bodys .select-depart-tree').height('222px'); $('#common-select-bodys .select-organ-teacher-tree').height('222px'); $('#common-select-bodys .select-organ-school-main').height('222px'); } // 宸﹁竟瀛︽牎閮ㄥ垎 toShowLabelSchoolList(); var tid = TeacherSelect.mySchoolOriginId || TeacherSelect.mySchoolId toShowOrganTeacherTrees(tid, "", "", "", "", TeacherSelect.mySchoolName); } if (!that.district || that.hideSelectAll) { // 鍗曟牎鏃朵笉鏄剧ず鍏ㄥ尯鎼滅储鐨勬寜閽 $('.select-from-all').remove() } }; function toRenderOrganSchoolList () { var $school_1_module = $('#select-school_1-moudel-content'); if ($school_1_module.find('#select-school_1-label').length > 0) { return; } var $loading = $('
    ').show(); var groupSchoolIds = ''; var labelSchoolIds = ''; var labelschoolSearchName = ''; $school_1_module.append($loading); var searchStr = '
    '; var height = document.documentElement.clientHeight < 750 ? 220 : 270; var wrapStr = '
    '+ '
    ' + '
    ' + '
    ' $school_1_module.append($(searchStr + wrapStr)); getLabelList(function (data) { $loading.hide(); // 濡傛灉瀛樺湪浜嗗崟浣嶉€氳褰曪紝涓斿凡缁忚闂紝鍒檒abelList鏄崟浣嶉€氳褰曠殑銆傚皢鍏剁紦瀛樸€ labelList = data; var html = createLabels(data) $('#select-school_1-label').append(html); addOrganListen(); getSchoolList(function (labelSchoolList) { schoolList = labelSchoolList; var schoolHtml = createSchoolList(labelSchoolList); $('#select-school_1-list').append(schoolHtml); addSchoolListen(); }) }) function getSchoolList (callback) { var schoolPostData = { groupIds: groupSchoolIds, labelIds: labelSchoolIds, schoolName: labelschoolSearchName, roleId: that.roleId, filterRole: that.filterRole, filiterId: that.filiterId, rolemarks: that.rolemarks } var schoolPostUrl = '/common_selector/getLabelSchools.do'; commonRequest(schoolPostData, schoolPostUrl, function (res) { callback(res) }) } } function getOrganAllTeacher(schoolId, name, deptId, checked, rolemarks, callback) { var teacherPostData = { filiterId: that.filiterId, schoolId: schoolId, deptId: deptId, name: name, checked: checked, rolemarks: rolemarks } var teacherPostUrl = '/common_selector/depterment/teachers.do' commonRequest(teacherPostData, teacherPostUrl, function (teacherTree) { callback(teacherTree) }) } /* * 鍗曚綅閫氳褰曟暀甯堟暟鎹幏鍙 * checked: 鏄惁鍕鹃€夊叏鍖 * type: 鎵€鍦ㄧ殑tab绫诲瀷 */ function toShowOrganTeacherTrees(schoolId, name, deptId, checked, rolemarks, schoolname) { // 鏇挎崲璇锋眰鐨勬柟寮 $('#select-organ-moudel-content .select-organ-teacher-tree').children('ul').remove(); $('#select-organ-moudel-content .select-organ-teacher-tree').siblings('.common-loading').show(); // 璁板綍褰撳墠鏄摢涓鏍 $('#select-organ-moudel-content .select-organ-teacher-tree').attr('data-school-id', schoolId); isOrganSearchTeacher = !!name; getOrganAllTeacher(schoolId, name, deptId, checked, rolemarks, function (teacherTree) { $('#select-organ-moudel-content .select-organ-teacher-tree').siblings('.common-loading').hide(); if ($('#select-organ-moudel-content .select-organ-teacher-tree').children('ul').length > 0) { $('#select-organ-moudel-content .select-organ-teacher-tree').children('ul').remove() } if (Object.prototype.toString.call(teacherTree) == '[object Array]') { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees if (teacherTree.length !== 0) { $('#select-organ-moudel-content .select-organ-teacher-tree').append(''); toPushCommonTrees($('#select-organ-moudel-content .select-organ-teacher-tree ul > li'), teacherTree, true, 'teacher', 'teacher'); } else { $('#select-organ-moudel-content .select-organ-teacher-tree').append(''); } } else { if (teacherTree.list.length !== 0) { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 $('#select-organ-moudel-content .select-organ-teacher-tree').append(''); toPushCommonTrees($('#select-organ-moudel-content .select-organ-teacher-tree ul > li'), teacherTree.list, true, 'teacher', 'teacher'); } else { $('#select-organ-moudel-content .select-organ-teacher-tree').append(''); } } }) }; /* * 鏁欏笀閫夋嫨閮ㄥ垎鏁欏笀鏁版嵁鑾峰彇 * checked: 鏄惁鍕鹃€夊叏鍖 * type: 鎵€鍦ㄧ殑tab绫诲瀷 */ function toShowTeacherTrees(schoolId, name, deptId, checked, rolemarks, type) { // 鏇挎崲璇锋眰鐨勬柟寮 $('.select-teacher-tree').children('ul').remove(); $('.select-teacher-tree').siblings('.common-loading').show(); loadTeachers(schoolId, name, deptId, checked, rolemarks, function (teacherTree) { $('.select-teacher-tree').siblings('.common-loading').hide(); if ($('.select-teacher-tree').children('ul').length > 0) { $('.select-teacher-tree').children('ul').remove() } if (Object.prototype.toString.call(teacherTree) == '[object Array]') { // 灏嗘暀甯堝垪琛ㄨ褰曚笅鏉? 鐢ㄤ簬鍏ㄩ€ if (!name && !deptId) { // 濡傛灉娌℃湁杩囨护鏉′欢锛岃〃绀鸿幏鍙栨墍鏈夌殑瀛︾敓 teacherTabCurrentAllTeachers = teacherTree; teacherTabCurrentShowTeacher = teacherTree; } else { teacherTabCurrentShowTeacher = teacherTree; } // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees if (teacherTree.length !== 0) { $('.select-teacher-tree').append(''); toPushCommonTrees($('.select-teacher-tree ul > li'), teacherTree, true, 'teacher', 'teacher'); } else { $('.select-teacher-tree').append(''); } } else { if (teacherTree.list.length !== 0) { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 $('.select-teacher-tree').append(''); toPushCommonTrees($('.select-teacher-tree ul > li'), teacherTree.list, true, 'teacher', 'teacher'); } else { $('.select-teacher-tree').append(''); } } }) }; /** * 鑾峰彇鏁欏笀鍒楄〃 */ function loadTeachers(schoolId, name, deptId, checked, rolemarks, callback) { var teacherPostData = { filiterId: that.filiterId, schoolId: schoolId, deptId: deptId, name: name, checked: checked, rolemarks: rolemarks } var teacherPostUrl = '/common_selector/depterment/teachers.do' isSearchTeacher = !!name; // 褰撳墠鏄悳绱㈡暀甯堣繕鏄叾瀹 // 鏈夎姹傛暟鎹紦瀛橈紝鐢ㄦ潵瑙e喅閫変腑鍜屽弽閫夊お鎱㈢殑鎯呭喌 var storeKey = getHashCode(JSON.stringify(teacherPostData)); // var callbackData; // try { // if (window.sessionStorage) { // // 鏁版嵁閲忓お澶х殑鏃跺€欒繖閲岃繕鏄瘮杈冨崱 // callbackData = JSON.parse(window.sessionStorage.getItem(storeKey)); // } // } catch (e) { // console && console.log(e); // } // if (callbackData) { // callback(callbackData); // } else { commonRequest(teacherPostData, teacherPostUrl, function (teacherTree) { callback(teacherTree); // window.sessionStorage && window.sessionStorage.setItem(storeKey, JSON.stringify(teacherTree)); }) // } } function getHashCode(str, caseSensitive) { if (!caseSensitive) { str = str.toLowerCase(); } var hash = 1315423911, i, ch; for (i = str.length - 1; i >= 0; i--) { ch = str.charCodeAt(i); hash ^= ((hash << 5) + ch + (hash >> 2)); } return (hash & 0x7FFFFFFF); } /** * 閫氳褰曢€夋嫨閮ㄥ垎鍩虹缁撴瀯 **/ function toRenderTeachersContactTrees() { if ($('#select-contact-moudel-content').find('div').hasClass('select-list-common-main') && TeacherSelect.isChangeContact) { // 涔嬪墠娓叉煋杩嘾om 骞朵笖鏁版嵁搴撲腑閫氳褰曞彂鐢熶簡鏀瑰彉锛屽垯閲嶆柊璇锋眰 $('.select-contact-tree').children('ul').remove() getContact() TeacherSelect.isChangeContact = false } else { // var $teacherContactContent = $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content'); var $teacherContactContent = $('#select-contact-moudel-content'); var teacherContactTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + ''; // if ($teacherContactContent.find('div').hasClass('select-list-common-main')) { // $teacherContactContent.html('') // } if (!($teacherContactContent.find('div').hasClass('select-list-common-main'))) { // 鑻ヤ箣鍓嶅凡娓叉煋杩嘾om鍒欎笉闇€瑕侀噸澶嶆覆鏌 $teacherContactContent.append(teacherContactTree); if (document.documentElement.clientHeight < 750) { $('#common-select-bodys .select-teacher-contact-tree').height('222px') $('#common-select-bodys .select-contact-tree').height('245px') } // 宸﹁竟閫氳褰曢儴鍒 getContact() //鍙宠竟閫夋嫨鏁欏笀閮ㄥ垎 } } function getContact () { // 宸﹁竟閫氳褰曢儴鍒 $('.select-contact-tree').siblings('.common-loading').show(); var contactPostData = {} var contactPostUrl = '/common_selector/address/tree.do' // var contactPostUrl = '/selector/address/tree.do' commonRequest (contactPostData, contactPostUrl, function(contactTree) { $('.select-contact-tree').siblings('.common-loading').hide(); if ($('.select-contact-tree').children('ul').length > 0) { $('.select-contact-tree').children('ul').remove() } if (Object.prototype.toString.call(contactTree)=='[object Array]') { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees toPushCommonTrees($('.select-contact-tree'), contactTree, false, 'contact', 'contact'); } else { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 if (contactTree.children.length > 0 && contactTree.children[0].children.length === 0 && (contactTree.children[1] && contactTree.children[1].children.length === 0)) { $('.select-contact-tree').append(''); } else { $('.select-contact-tree').append(''); // 濡傛灉鍏叡缁勬垨涓汉缁勪笅鏃犳暟鎹椂锛屼笉灞曠ず瀵瑰簲鐨勫唴瀹 if (contactTree.children.length > 0 && contactTree.children[0].children.length === 0) { contactTree.children.shift() } if (contactTree.children.length > 0 && contactTree.children[1] && contactTree.children[1].children.length === 0) { contactTree.children.pop() } $('#search-teacher-contact-input').val(''); $('.contact-selected').removeClass('contact-selected') $(this).addClass('contact-selected') $('#select-teacher-contact-moudel-main').show(); $('#select-teacher-contact-moudel-main').siblings('.select-center-line').css('height', '100%') toPushCommonTrees($('.select-contact-tree ul > li'), contactTree.children, false, 'contact', 'contact'); toShowContactTeacherTrees(contactTree.children[0].children[0].id, contactTree.children[0].children[0].type) } } }); //鍙宠竟閫夋嫨鏁欏笀閮ㄥ垎 } }; // 閫氳褰曟覆鏌撻€氳褰曟暀甯堟ā鍧楁暟鎹幏鍙 function toShowContactTeacherTrees(groupId, groupType, name, type) { $('.select-teacher-contact-tree').children('ul').remove(); $('.select-teacher-contact-tree').siblings('.common-loading').show(); var ids = []; ids.push(groupId) if (type === 'search') { } else { var currentEl = $('.select-contact-tree').find('li[data-id=' + groupId + ']').find('li') for(var i = 0; i < currentEl.length; i++) { ids.push(currentEl.eq(i).attr('data-id')) } contactGroup = {groupId: ids.join(','), groupName: name, groupType: groupType}; } var contactTeaPostData = { groupId: ids.join(','), groupType: groupType, name: name, isSingle: !that.district, limitUserSchoolId: that.limitUserSchoolId, selectNodeId: groupId.split(',')[0] } var contactTeaPostUrl = '/common_selector/address/teachers.do' contactTeacher = name commonRequest (contactTeaPostData, contactTeaPostUrl, function(teacherTree) { $('.select-teacher-contact-tree').siblings('.common-loading').hide(); if ($('.select-teacher-contact-tree').children('ul').length > 0) { $('.select-teacher-contact-tree').children('ul').remove() } if (teacherTree.list.length !== 0) { if (Object.prototype.toString.call(teacherTree) == '[object Array]') { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees contactTabAllTeachers = teacherTree $('.select-teacher-contact-tree').append(''); toPushCommonTrees($('.select-teacher-contact-tree ul > li'), teacherTree, true, 'contact', 'contact'); } else { contactTabAllTeachers = teacherTree.list arrangeContactTeachTree(teacherTree.list, teacherTree.groupId, teacherTree.groupName) // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 $('.select-teacher-contact-tree').append(''); toPushCommonTrees($('.select-teacher-contact-tree ul > li'), teacherTree.list, true, 'contact', 'contact'); // if (that.district) { $('#contact-teacher-tip').hide() // } } } else { $('.select-teacher-contact-tree').append(''); } }) }; function arrangeContactTeachTree (list, groupId, groupName) { list.forEach(function (item) { item.groupId = groupId item.groupName = groupName }) } /** * 瀛︾閫夋嫨閮ㄥ垎鍩虹缁撴瀯 **/ function toRenderSubjectSchoolTrees() { // var $subjectContent = $('#select-'+ TeacherSelect.isSelectBar +'-moudel-content'); var $subjectContent = $('#select-subject-moudel-content'); var SubjectSchoolTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    '; if (!($subjectContent.find('div').hasClass('select-list-common-main'))) { // 鑻ヤ箣鍓嶅凡娓叉煋杩嘾om鍒欎笉闇€瑕侀噸澶嶆覆鏌 $subjectContent.append(SubjectSchoolTree); if (document.documentElement.clientHeight < 750) { $('#common-select-bodys .select-subject-tree').height('250px') $('#common-select-bodys .select-subject-schools-tree').height('222px') } // 鍙宠竟瀛︽牎閮ㄥ垎 toShowSchoolTrees($('.select-subject-schools-tree'), '', true, 'subject'); //宸﹁竟瀛︾閮ㄥ垎 $('.select-subject-tree').siblings('.common-loading').show(); getSubjectTrees(function(subjectTree){ $('.select-subject-tree').siblings('.common-loading').hide(); if ($('.select-subject-tree').children('ul').length > 0) { $('.select-subject-tree').children('ul').remove() } if (Object.prototype.toString.call(subjectTree)=='[object Array]') { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees $('.select-subject-tree').append(''); toPushCommonTrees($('.select-subject-tree ul > li'), subjectTree, true, 'subject', 'subject'); } else { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 $('.select-subject-tree').append(''); toPushCommonTrees($('.select-subject-tree ul > li'), subjectTree.children, true, 'subject', 'subject'); } }); } }; /* * 閫夋嫨宀椾綅妯″潡 */ function toRenderPostTrees () { var $postContent = $('#select-post-moudel-content'); var postTree = '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + // '
    鍏ㄥ尯鎼滅储
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    '; // if ($postContent.find('div').hasClass('select-list-common-main')) { // $postContent.html(''); // } if (!($postContent.find('div').hasClass('select-list-common-main'))) { $postContent.append(postTree); if (document.documentElement.clientHeight < 750) { $('.common-select-tree-bodys .select-post-tree').height('222px') $('.common-select-tree-bodys .select-post-schools-tree').height('222px') $('.common-select-tree-bodys .select-post-teacher-tree').height('222px') } else { $('.common-select-tree-bodys .select-post-tree').height('295px') } // 宸﹁竟瀛︽牎閮ㄥ垎 toShowSchoolTrees($('.select-post-schools-tree'), '', false, 'post'); } }; /* * 宀椾綅鏁版嵁鑾峰彇 */ function toShowPostTrees (schoolId, hasSelect, name, selectDis) { $('.select-post-tree').children('ul').remove(); $('.select-post-tree').siblings('.common-loading').show(); var postData = { stationName: name } if (selectDis) { postData.orgId = schoolId } else { postData.schoolId = schoolId } var postUrl = '/common_selector/station/tree.do' commonRequest (postData, postUrl, function(postTree) { $('.select-post-tree').siblings('.common-loading').hide(); if ($('.select-post-tree').children('ul').length > 0) { $('.select-post-tree').children('ul').remove() } if (Object.prototype.toString.call(postTree)=='[object Array]') { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees if (postTree.length > 0) { if (hasSelect) { $('.select-post-tree').append(''); toPushCommonTrees($('.select-post-tree ul > li'), postTree, hasSelect, 'post', 'post'); } else { toPushCommonTrees($('.select-post-tree'), postTree, hasSelect, 'post', 'post'); } } else { $('.select-post-tree').append(''); } } else { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 if (postTree.children.length > 0) { if (hasSelect) { $('.select-post-tree').append(''); toPushCommonTrees($('.select-post-tree ul > li'), postTree.children, hasSelect, 'post', 'post'); } else { $('.select-post-tree').append(''); toPushCommonTrees($('.select-post-tree ul > li'), postTree.children, hasSelect, 'post', 'post'); } } else { $('.select-post-tree').append(''); } } }) }; // 宀椾綅鏁欏笀妯″潡鏁版嵁鑾峰彇 function toShowPostTeacherTrees(schoolId, stationId, name, selectDis) { $('.select-post-teacher-tree').children('ul').remove(); $('.select-post-teacher-tree').siblings('.common-loading').show(); var postTeaPostData = { stationId: stationId, name: name } if (selectDis) { postTeaPostData.orgId = schoolId } else { postTeaPostData.schoolId = schoolId } var postTeaPostUrl = '/common_selector/station/teachers.do' commonRequest (postTeaPostData, postTeaPostUrl, function(teacherTree) { $('.select-post-teacher-tree').siblings('.common-loading').hide(); if ($('.select-post-teacher-tree').children('ul').length > 0) { $('.select-post-teacher-tree').children('ul').remove() } if (Object.prototype.toString.call(teacherTree) == '[object Array]') { // 濡傛灉杩斿洖鐨勬槸鏁扮粍鐩存帴璇锋眰toPushCommonTrees if (teacherTree.length !== 0) { $('.select-post-teacher-tree').append(''); toPushCommonTrees($('.select-post-teacher-tree ul > li'), teacherTree, true, 'post', 'post'); } else { $('.select-post-teacher-tree').append(''); } } else { if (teacherTree.list.length !== 0) { // 鑻ヤ笉鏄暟缁勫垯涓烘渶澶栧眰涓轰竴涓ぇ鐨勭埗绾 鍒欏厛娓叉煋鏈€澶栧眰鍐嶅惊鐜噷闈㈢殑鏍 $('.select-post-teacher-tree').append(''); toPushCommonTrees($('.select-post-teacher-tree ul > li'), teacherTree.list, true, 'post', 'post'); } else { $('.select-post-teacher-tree').append(''); } } }) }; /*** ** 鍏辩敤鐨勬鏌ュ瓙鑺傜偣鐨勯€変腑鐘舵€佹潵杩囨浮鍒扮埗鍏冪礌骞舵敼鍙樼埗鍏冪礌鐨勭姸鎬 -閫掑綊 ** input: 鐐瑰嚮鐨刬nput瀵硅薄 ** id: 鐐瑰嚮鐨刬nput瀵瑰簲鐨刲i鐨刣ata-id鍊 ** check: 鏄惁閫変腑 ** schoolid: 褰撳墠鑺傜偣鐨勫鏍d,鍗曚綅閫氳褰曚腑锛岀偣鍑讳笅闈㈣兌鍥婏紝鍚屾鍙栨秷閫変腑瀛︽牎 ****/ function changeParentSelected(input, id, check, schoolid, isOtherTab) {// 妫€鏌ュ綋鍓嶅厔寮熷厓绱犳槸鍚﹀叏閮ㄩ€変腑 鍒╃敤閫掑綊鏉ラ€変腑閫変腑鐖剁骇鍏冪礌 input.prop("checked", check); var siblingsChecked = false; if (input.parent('li[data-id="'+ id +'"]').siblings('li').length > 0) { // 鍔犱竴涓潯浠 鏄惁瀛樺湪鍏勫紵鏃 for (var i = 0; i < input.parent('li[data-id="'+ id +'"]').siblings('li').length; i++) { if (input.parent('li[data-id="'+ id +'"]').siblings('li').eq(i).children('input').prop("checked") || input.parent('li[data-id="'+ id +'"]').siblings('li').eq(i).children('input').length === 0) { // 瀛樺湪娌℃湁input鐨勫鏍 鍒欓粯璁ら€変腑鐘舵€ siblingsChecked = true; } else { siblingsChecked = false; break; } } } else { siblingsChecked = true; } var isAllChecked = check && siblingsChecked; // 濡傛灉褰撳墠鐨刲i琚€変腑鍚屾椂鑷繁鐨勫厔寮熶篃琚€変腑 鍒欐墽琛岄€掑綊鏀瑰彉涓婁竴灞傜殑閫変腑鐘舵€ if (input.parent('li[data-id="' + id + '"]').parent('ul').parent('li').siblings('li').length > 0) { changeParentSelected(input.parent('li[data-id="' + id + '"]').parent('ul').siblings('input'), input.parent('li[data-id="' + id + '"]').parent('ul').parent('li').attr('data-id'), isAllChecked); // $('') } else { input.parent('li[data-id="' + id + '"]').parent('ul').siblings('input').prop("checked", isAllChecked); } // 濡傛灉鏄釜浜洪€氳褰曪紝 宸︿晶鍏ㄩ€夋寜閽姸鎬佽仈鍔 if(TeacherSelect.isSelectBar === 'contact' && !isOtherTab && !contactTeacher) { var departid = input.parent('li').attr('data-id'); var $depart = $('.select-contact-tree').find('li[data-id="' + departid + '"]'); if (!isAllChecked) { // 鍥犱负鍙兘鏄棤閮ㄩ棬浜哄憳锛屾湁鏃跺€欐病鏈夋樉绀烘棤閮ㄩ棬浜哄憳 var leftCon = $('.select-contact-tree li[data-id="' + input.parent('li').attr('data-ssbm') +'"]') $('.select-contact-tree input[data-depart-type="all-contact"]').attr('checked', false); leftCon.children('input').attr('checked', false); if (input.parent('li').attr('data-type') === 'teacher') { var parentId = input.parent('li').attr('data-ssbm') changeParentSelected($('.select-contact-tree li[data-id="' + parentId +'"]').children('input'), parentId, false) } } else if(input.parent('li').attr('data-type') === 'teacher') { $('.select-contact-tree li[data-id="' + input.parent('li').attr('data-ssbm') +'"]').find('input').attr('checked', true); var currentDepart = $('.select-contact-tree').find('.contact-selected'); if (currentDepart.length !== 0) { currentDepart.siblings('input').attr('checked', true); currentDepart.find('input').attr('checked', true); // currentDepart.siblings('ul').attr('checked', true); } else { // 绗竴娆¤繘鏉ワ紝灏嗘墍鏈夐儴闂ㄩ€夋嫨 $('.select-depart-tree').find('input[type="checkbox"]').attr('checked', true); } } } // 濡傛灉鏄崟浣嶇粍閫夋嫨, 鍚屾璁剧疆宸︿晶鏍戠姸鎬 if (TeacherSelect.isSelectBar === 'organ' && !isOrganSearchTeacher && !isOtherTab) { schoolid = input.parent('li').attr('data-school'); // 璁剧疆瀛︽牎鍚屾牱鐨勭姸鎬 $('.organ-school-li[data-schoolid=' + schoolid + ']').find('input').attr('checked', isAllChecked); // 濡傛灉鎵€鏈夌殑瀛︽牎閮介€変腑浜嗭紝閭e氨鎶婂叏閫夐€変腑 var isAllSchoolChecked = true; $('.organ-school-li[data-type="single"]').find('input').each(function (i, t) { if ($(t).prop('checked') !== true) { isAllSchoolChecked = false; } }) $('.organ-school-li[data-type="all"]').find('input').attr('checked', isAllSchoolChecked); var school = findSchoolById(schoolid); if (school) { school.isChecked = isAllChecked; } } // 濡傛灉鏄嚜瀹氫箟鍒嗙粍, 鍚屾璁剧疆宸︿晶鏍戠姸鎬 if (TeacherSelect.isSelectBar === 'customGroup' && !isSearchGroupSchool && !isOtherTab) { var groupid = input.parent('li').parent('ul').parent('li').attr('data-group-id'); $('#select-custom-group-main li[data-id=' + groupid + ']').children('input').prop('checked', isAllChecked); } // 濡傛灉鏄暀甯堬紝鍚屾閮ㄩ棬鐘舵€? 浣嗘悳绱㈢殑涓嶅悓姝 if (TeacherSelect.isSelectBar === 'teacher' && !isSearchTeacher && !isOtherTab) { var departid = input.parent('li').attr('data-ssbm'); var $depart = $('.select-depart-tree').find('li[data-id="' + departid + '"]'); // 濡傛灉杩欎釜鑺傜偣杩樻湁瀛愯妭鐐癸紝鍒欎笉鍚屾閫変腑鐘舵€ if ($depart.children('ul').children('li').length === 0) { $depart.children('input').attr('checked', isAllChecked); } // 鍖椾含鍏腑鍑虹幇鐢ㄦ埛鍏艰亴閮ㄩ棬涓哄瓙閮ㄩ棬锛屾墍灞為儴闂ㄤ负鐖堕儴闂 // 鍙栨秷閫変腑鐨勬椂鍊欙紝鍚屾椂鍙栨秷鍏艰亴閮ㄩ棬閫変腑鐘舵€ var departid2 = input.parent('li').attr('data-jzbm') || ''; var $depart2 = $('.select-depart-tree').find('li[data-id="' + departid2 + '"]'); // 濡傛灉杩欎釜鑺傜偣杩樻湁瀛愯妭鐐癸紝鍒欎笉鍚屾閫変腑鐘舵€ if ($depart2.children('ul').children('li').length === 0) { $depart2.children('input').attr('checked', isAllChecked); } if (!isAllChecked) { while($depart.parent('ul').parent('li').length > 0) { $depart = $depart.parent('ul').parent('li'); $depart.children('input').attr('checked', false); } // 鍥犱负鍙兘鏄棤閮ㄩ棬浜哄憳锛屾湁鏃跺€欐病鏈夋樉绀烘棤閮ㄩ棬浜哄憳 $('.select-depart-tree input[data-depart-type="all-depart"]').attr('checked', false); } else { var currentDepart = $('.select-depart-tree').find('input[type="checkbox"]'); // console.log(currentDepart) if (currentDepart.length !== 0) { currentDepart.siblings('input').attr('checked', true); currentDepart.siblings('ul').attr('checked', true); } else { // 绗竴娆¤繘鏉ワ紝灏嗘墍鏈夐儴闂ㄩ€夋嫨 $('.select-depart-tree').find('input[type="checkbox"]').attr('checked', true); } } } if(TeacherSelect.isSelectBar === 'depart' && input.parent('li').attr('data-type') === 'department') { var parentId = 'depart_' + input.parent('li').attr('data-school') } if(TeacherSelect.isSelectBar === 'depart' && input.parent('li').attr('data-type') === 'depart') { $('.select-depart-schools-tree li[data-id=' + 'depart_' + this.departmentSchoolId + ']').children('input').prop('checked', isAllChecked); } }; /*** ** 鍏辩敤鐨勬覆鏌撴爲缁撴瀯鐨勬柟娉曪細 -閫掑綊 ** obj: 鍏ㄥ眬鍙橀噺 褰撳墠閫変腑鐨勬ā鍧楀悕锛歴chool ** tree: children闆嗗悎 ** isHasSelect: 鏄惁鍚湁input澶嶉€夋 ** type: 鏁版嵁绫诲瀷 ** tabType: 鎵€鍦ㄧ殑tab瀵艰埅绫诲瀷 ****/ function toPushCommonTrees(obj, tree, isHasSelect, type, tabType) {// 鍏叡娓叉煋鏍 // 澶氭鎿嶄綔DOM鎬ц兘澶樊锛屼紭鍖栦竴涓? 鍏堝湪JS涓皢鍐呭鎻掑叆鏂板缓鐨刣iv涓紝鏈€鍚庣粺涓€鎻掑叆obj涓€ // 500鏉℃暟鎹姳璐规椂闂寸敱鍘熸潵1000ms鍙樻垚200ms锛屾潯鏁拌秺澶氾紝鏁堟灉瓒婂ソ銆 var obj1 = obj; var temp = document.createElement('div'); obj = $(temp); if (tree && tree[0] && tree[0].children) { if (tree[0].fatherId !== 'VirtualRootNode' && type !== 'contact') { // 闅愯棌浜岀骇鑿滃崟 VirtualRootNode涓烘渶澶栧眰id obj.append(''); } else if (type === 'contact' && tree[0].level) { // 鍗曚綅閫氳褰曚簩绾у眰绾т笅鐨勫瓙鑺傜偣涓嶅睍绀恒€ obj.append(''); } else { obj.append(''); } var schoolId = ''; // 鐢ㄤ簬閮ㄩ棬鍏ㄩ€ 鍙嶆樉 鏄剧ず var isSelectAll = true for (var i = 0; i < tree.length; i++) { if (tree[i].attributes !== null & type === 'depart') { // 濡傛灉瀛樺湪attributes 鍒欎负閮ㄩ棬 schoolId = tree[i].attributes.schoolid; } else if (tree[i].attributes === null & type === 'depart') { // 浣嗘槸閮ㄩ棬绾湪鏃犻儴闂ㄤ汉鍛 鍒檚choolId = '' schoolId = TeacherSelect.departSchool.schoolId; } else if(type === 'school') { // 瀛︽牎鐨刬d = schoolId schoolId = tree[i].id; } if (!isHasSelect) { if (type === 'contact') { // 閫氳褰曠壒娈婇€夋嫨锛堥櫎浜嗗叕鍏变笌涓汉缁勫叾浠栭兘鍙互閫夋嫨锛夌壒娈婂鐞 if (document.documentElement.clientHeight < 750) { obj.parents('.select-contact-tree').css('height', '245px'); } else { obj.parents('.select-contact-tree').css('height', '295px'); } if (obj.attr('data-id') === 'publicGroupNode' || obj.attr('data-id') === 'myGroupNode') { // 閫氳褰曢粯璁ゅ睍寮€鍏叡閫氳褰曞拰涓汉閫氳褰曚竴灞 obj.children('ul').css('display', 'block'); } // if (tree[i].fatherId === 'myGroupNode') { // obj.children('ul').css('display', 'none'); // } if (tree[i].type === 'myGroup' || tree[i].type === 'publicGroup') { if (tree[i].children && tree[i].children.length > 0 && !tree[i].leaf) { //濡傛灉瀛樺湪children 鍒欑户缁皟鐢ㄩ€掑綊 // if (tree[i].state === 'closed') { // obj.children('ul').append('
  • ' + tree[i].text + '
  • '); // } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); // } toPushCommonTrees(obj.children('ul').children('li[data-id="' + tree[i].id + '"]'), tree[i].children, false, type, tabType); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else { if (tree[i].children && tree[i].children.length > 0 && !tree[i].leaf) { //濡傛灉瀛樺湪children 鍒欑户缁皟鐢ㄩ€掑綊 // obj.children('ul').css('display', 'none') obj.children('ul').append('
  • ' + tree[i].text + '
  • '); obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('ul').css('display', 'none') tree[i].children.forEach(function (item) { item.level = 'twoMore' }) toPushCommonTrees(obj.children('ul').children('li[data-id="' + tree[i].id + '"]'), tree[i].children, false, type, tabType); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } isSelectAll = false } else { // 闄や簡閫氳褰曚互澶栫殑妯″潡閮ㄥ垎 if (tree[i].children && tree[i].children.length > 0 && !tree[i].leaf) { //濡傛灉瀛樺湪children 鍒欑户缁皟鐢ㄩ€掑綊 var deptWidth = (isDoubelTap && TeacherSelect.isSelectBar !== 'organ') ? '200px' : '100px'; if (tabType === 'teacher' || tabType === 'post') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } toPushCommonTrees(obj.children('ul').children('li[data-id="' + tree[i].id + '"]'), tree[i].children, false, type, tabType); } else if (tree[i].leaf && (tree[i].type === 'level' || tree[i].type === 'group_category')) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else if (tree[i].leaf) { var deptWidth = (isDoubelTap && TeacherSelect.isSelectBar !== 'organ') ? '200px' : '100px'; if (tabType === 'teacher') { if (TeacherSelect.teacherDepart.departId && (TeacherSelect.teacherDepart.departId == tree[i].id)) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { if(type === 'school' && tree[i].type === 'CLUSTER') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } else if (tabType === 'post') { if (TeacherSelect.postTeacher.postId && (TeacherSelect.postTeacher.postId == tree[i].id)) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { if(type === 'school' && tree[i].type === 'CLUSTER') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } else if (tabType === 'depart') { if(type === 'school' && tree[i].type === 'school') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } if (tabType === 'depart' && TeacherSelect.departSchool.schoolId) { if (tree[i].id == TeacherSelect.departSchool.schoolId) { obj.parents('#select-'+ tabType +'-moudel-content').find('span').removeClass('school-selected'); obj.children('ul').children('li[data-id="'+ tree[i].id +'"]').children('span').addClass('school-selected'); } } else if (tabType === 'teacher' && TeacherSelect.teacherSchool.schoolId) { if (tree[i].id == TeacherSelect.teacherSchool.schoolId) { obj.parents('#select-'+ tabType +'-moudel-content').find('span').removeClass('school-selected'); obj.children('ul').children('li[data-id="'+ tree[i].id +'"]').children('span').addClass('school-selected'); } } else { if (tree[i].id == TeacherSelect.mySchool.id) { // 鑻ユ槸鎴戠殑瀛︽牎鍒欓€変腑 obj.parents('#select-'+ tabType +'-moudel-content').find('span').removeClass('school-selected'); obj.children('ul').children('li[data-id="'+ tree[i].id +'"]').children('span').addClass('school-selected'); if (tabType === 'depart') { TeacherSelect.departSchool = {schoolId: TeacherSelect.mySchool.id, schoolName: TeacherSelect.mySchool.text}; // 鏍规嵁瀛︽牎ID璇锋眰瀵瑰簲瀛︽牎涓嬬殑閮ㄩ棬 // 璋冪敤鑾峰彇閮ㄩ棬鎺ュ彛 } else if (tabType === 'teacher') { TeacherSelect.teacherSchool = {schoolId: TeacherSelect.mySchool.id, schoolName: TeacherSelect.mySchool.text}; // 鏍规嵁瀛︽牎ID璇锋眰瀵瑰簲瀛︽牎涓嬬殑鏁欏笀 // 璋冪敤鑾峰彇鏁欏笀鎺ュ彛 } } } } } } else { if (tree[i].children && tree[i].children.length > 0 && !tree[i].leaf) { //濡傛灉瀛樺湪children 鍒欑户缁皟鐢ㄩ€掑綊 if (type === "depart") { var hasDepartment = false; if (TeacherSelect.backDate.department && TeacherSelect.backDate.department.length > 0) { $.each(TeacherSelect.backDate.department, function(n, department) { // department.schoolId === TeacherSelect.departSchool.schoolId if (department == tree[i].id) { hasDepartment = true; return false; } }) } if (TeacherSelect.filterResult.department && TeacherSelect.filterResult.department.length > 0) { $.each(TeacherSelect.filterResult.department, function(n, department) { // department.schoolId === TeacherSelect.departSchool.schoolId if (department.id == tree[i].id) { hasDepartment = true; return false; } }) } if (hasDepartment && TeacherSelect.isSelectBar === 'depart') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { isSelectAll = false obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } // changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, hasDepartment) } else if (type === "structure") { // 缁勭粐妯″潡 if (tree[i].disabled) { // 娌℃湁鏉冮檺涓嶅彲浠ラ€夋嫨 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { var hasStructure = false; if (TeacherSelect.backDate.structure && TeacherSelect.backDate.structure.length > 0) { $.each(TeacherSelect.backDate.structure, function(n, structure) { if (structure == tree[i].id) { hasStructure = true; return false; } }) } if (TeacherSelect.filterResult.structure && TeacherSelect.filterResult.structure.length > 0) { $.each(TeacherSelect.filterResult.structure, function(n, structure) { if (structure.id == tree[i].id) { hasStructure = true; return false; } }) } if (hasStructure) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } toPushCommonTrees(obj.children('ul').children('li[data-id="' + tree[i].id + '"]'), tree[i].children, true, type, tabType); } else if (tree[i].leaf && tree[i].type === 'level') { // 澶勭悊瀛︽牎閲岀壒娈婄殑鍒嗙被 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else if (tree[i].leaf) {// 涓哄彾瀛愯妭鐐 // 濡傛灉鏄鏍¢€夋嫨 if (type === "school") { if (tabType === 'school') { var hasSchool = false; if (TeacherSelect.backDate.school && TeacherSelect.backDate.school.length > 0) { $.each(TeacherSelect.backDate.school, function(n, school) { if (school == tree[i].id) { hasSchool = true; return false; } }); } if (TeacherSelect.filterResult.school && TeacherSelect.filterResult.school.length > 0) { $.each(TeacherSelect.filterResult.school, function(n, school) { if (school.id == tree[i].id) { hasSchool = true; return false; } }); } if (hasSchool) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); // 濡傛灉鏁扮粍闀垮害澶т簬2涓攊绛変簬鏁扮粍闀垮害鍑?鏃惰姹傛垨鑰呴暱搴︾瓑浜?鏃 if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { isSelectAll = false if(tree[i].type === 'school') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, false) } } else if(tabType === 'depart') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else if (tabType === 'subject') { var hasSubjectSchool = false; if (TeacherSelect.backDate.subjectSchool && TeacherSelect.backDate.subjectSchool.length > 0) { $.each(TeacherSelect.backDate.subjectSchool, function(n, subjectSchool) { if (subjectSchool.schoolId == tree[i].id) { TeacherSelect.subjectSchoolCheckedList.push({'name': tree[i].text, 'id': tree[i].id}); hasSubjectSchool = true; return false; } }) } if (TeacherSelect.filterResult.subjectSchool && TeacherSelect.filterResult.subjectSchool.length > 0) { $.each(TeacherSelect.filterResult.subjectSchool, function(n, subjectSchool) { if (subjectSchool.schoolId == tree[i].id) { TeacherSelect.subjectSchoolCheckedList.push({'name': tree[i].text, 'id': tree[i].id}); hasSubjectSchool = true; return false; } }) } if (hasSubjectSchool) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, false) } } } else if (type === "depart") { if (tree[i].id !== 'nodeptmentmemberbtnid') { var hasDepartment = false; if (TeacherSelect.backDate.department && TeacherSelect.backDate.department.length > 0) { // 鍥炴樉閫変腑 $.each(TeacherSelect.backDate.department, function(n, department) { // && department.schoolId === TeacherSelect.departSchool.schoolId if (department == tree[i].id) { hasDepartment = true; return false; } }); } if (TeacherSelect.filterResult.department && TeacherSelect.filterResult.department.length > 0) { // 鍥炴樉閫変腑 $.each(TeacherSelect.filterResult.department, function(n, department) { // && department.schoolId === TeacherSelect.departSchool.schoolId if (department.id == tree[i].id) { hasDepartment = true; return false; } }); } if (hasDepartment && TeacherSelect.isSelectBar === 'depart') { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { isSelectAll = false obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else if(!tree[i].children.length) { isSelectAll = false } } else if (type === "subject") { var hasSubject = false; if (TeacherSelect.backDate.subjectSchool && TeacherSelect.backDate.subjectSchool.length > 0) { // 鍥炴樉 $.each(TeacherSelect.backDate.subjectSchool, function(n, subjectSchool) { if (subjectSchool.subjectId == tree[i].id) { TeacherSelect.subjectCheckedList.push({'name': tree[i].text, 'id': tree[i].id}); hasSubject = true; return false; } }) } if (TeacherSelect.filterResult.subjectSchool && TeacherSelect.filterResult.subjectSchool.length > 0) { // 鍥炴樉 $.each(TeacherSelect.filterResult.subjectSchool, function(n, subjectSchool) { if (subjectSchool.subjectId == tree[i].id) { TeacherSelect.subjectCheckedList.push({'name': tree[i].text, 'id': tree[i].id}); hasSubject = true; return false; } }) } if (hasSubject) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, false) } } else if (type === "structure") { // 缁勭粐妯″潡 if (tree[i].disabled) { // 娌℃湁鏉冮檺涓嶅彲浠ラ€夋嫨 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { var hasStructure = false; if (TeacherSelect.backDate.structure && TeacherSelect.backDate.structure.length > 0) { $.each(TeacherSelect.backDate.structure, function(n, structure) { if (structure == tree[i].id) { hasStructure = true; return false; } }) } if (TeacherSelect.filterResult.structure && TeacherSelect.filterResult.structure.length > 0) { $.each(TeacherSelect.filterResult.structure, function(n, structure) { if (structure.id == tree[i].id) { hasStructure = true; return false; } }) } if (hasStructure) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } else { if(type === 'class') { // 鍗曠嫭澶勭悊鐝骇鐨勬儏鍐碉紝娣诲姞160px鐨勫搴 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else{ obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } } } // 濡傛灉琚叏閫変簡锛屽垯鐪嬬湅鐖剁骇鐨勯€夋嫨妗嗘槸鍚︽湁鍏ㄩ€夛紝濡傛灉鏈夛紝鍒欒缃€変腑 if (isSelectAll) { obj1.children('input[type="checkBox"]').prop("checked", true); // // 閮ㄩ棬 鍚屾宸︿晶瀛︽牎閫変腑鐘舵€ if (isHasSelect && type === 'depart') { var dataId = this.departmentSchoolId $('.select-depart-schools-tree li[data-id="' + dataId + '"]').children('input').prop("checked", true) } } } else { // 鏁扮粍缁撴瀯 涓嶅瓨鍦ㄥ瓙鑺傜偣鏃 涓€鑸负鎼滅储鎴栬€呭鏍′笅闈㈢殑鎵€鏈夋暀甯堟垨鑰呭绉 // 杩欎釜鏃跺€欏彲浠ュ垽鏂槸涓嶆槸鍒楄〃琚叏閫変簡 var isSelectAll = true; obj.append(''); if (document.documentElement.clientHeight < 750) { if (isHasSelect) { $('.ul-overflow-show').height('197px'); } else { $('.ul-overflow-show').height('222px'); } } else { if (isHasSelect) { $('.ul-overflow-show').height('245px'); } else { $('.ul-overflow-show').height('270px'); } } for (var i = 0; i < tree.length; i++) { var cHeight = $('.select-teacher-contact-tree').height(); var contactHeght = (cHeight - $('.select-teacher-contact-tree').children('ul').children('li').children('span').height() - 5) + 'px'; $('.select-teacher-contact-tree ul.ul-overflow-show').height(contactHeght) var tHeight = $('.select-teacher-tree').height(); var teacherHeight = (tHeight - $('.select-teacher-tree').children('ul').children('li').children('span').height() - 5) + 'px'; $('.select-teacher-tree ul.ul-overflow-show').height(teacherHeight) if (isHasSelect && type === 'teacher') { var hasTeacher = false; var spanWidth = (isDoubelTap && TeacherSelect.isSelectBar !== 'organ') ? '200px' : '160px'; if (TeacherSelect.result && TeacherSelect.result.length > 0) { $.each(TeacherSelect.result, function(n, teacher) { if (that.dataType === 'user') { // 杩斿洖鐨勬暟鎹甶d鏄痷serid // ?? 2019-11-11 // ?? 濂藉儚杩斿洖鐨勬暟鎹甶d涓嶆槸userid锛堜箰鐭ヤ簯锛岀寤洪暱涔愮涓€涓锛? // ?? 浣嗘槸涓婇潰鏈夋湁涓€鏉℃敞閲婅杩斿洖鐨勬暟鎹?鍏堥兘鍏煎鍚 if (teacher.userId == tree[i].userId || teacher.id == tree[i].userId) { hasTeacher = true; return false; } } else { if (teacher.id == tree[i].id) { hasTeacher = true; return false; } } }); } if (hasTeacher) { obj.children('ul').append('
  • ' + tree[i].name + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { isSelectAll = false; // 涓嶆槸琚叏閫変簡 obj.children('ul').append('
  • ' + tree[i].name + '
  • '); } } else if (isHasSelect && type === 'contact') { var hasContact = false; if (TeacherSelect.backDate.teachers && TeacherSelect.backDate.teachers.length > 0) { $.each(TeacherSelect.backDate.teachers, function(n, teacher) { if (that.dataType === 'user') { // 杩斿洖鐨勬暟鎹甶d鏄痷serid if (teacher == tree[i].userId) { hasTeacher = true; return false; } } else { if (teacher == tree[i].id) { hasTeacher = true; return false; } } }); } if (TeacherSelect.result && TeacherSelect.result.length > 0) { $.each(TeacherSelect.result, function(n, teacher) { if (teacher.id == tree[i].id) { hasContact = true; return false; } }); } if (hasContact) { obj.children('ul').append('
  • ' + tree[i].name + '
  • '); $('.select-teacher-contact-tree').children('li[data-id="' + tree[i].id + '"]').children('input').prop("checked", true) if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { isSelectAll = false; // 涓嶆槸琚叏閫変簡 obj.children('ul').append('
  • ' + tree[i].name + '
  • '); // changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, false) } } else if (isHasSelect && (type === 'school')) { if (tabType === 'school') { var hasSchool = false; if (TeacherSelect.backDate.school && TeacherSelect.backDate.school.length > 0) { $.each(TeacherSelect.backDate.school, function(n, school) { if (school == tree[i].id) { hasSchool = true; return false; } }) } if (TeacherSelect.filterResult.school && TeacherSelect.filterResult.school.length > 0) { $.each(TeacherSelect.filterResult.school, function(n, school) { if (school.id == tree[i].id) { hasSchool = true; return false; } }) } if (hasSchool) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { isSelectAll = false; // 涓嶆槸琚叏閫変簡 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, false) } } else if (tabType === 'subject') { var hasSubjectSchool = false; if (TeacherSelect.backDate.subjectSchool && TeacherSelect.backDate.subjectSchool.length > 0) { $.each(TeacherSelect.backDate.subjectSchool, function(n, subjectSchool) { if (subjectSchool.schoolId == tree[i].id) { TeacherSelect.subjectSchoolCheckedList.push({'name': tree[i].text, 'id': tree[i].id}); hasSubjectSchool = true; return false; } }) } if (TeacherSelect.filterResult.subjectSchool && TeacherSelect.filterResult.subjectSchool.length > 0) { $.each(TeacherSelect.filterResult.subjectSchool, function(n, subjectSchool) { if (subjectSchool.schoolId == tree[i].id) { TeacherSelect.subjectSchoolCheckedList.push({'name': tree[i].text, 'id': tree[i].id}); hasSubjectSchool = true; return false; } }) } if (hasSubjectSchool) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { isSelectAll = false; // 涓嶆槸琚叏閫変簡 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else { // 閮ㄩ棬鎼滅储缁撴灉涓坊鍔 澶嶉€夋 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else if (!isHasSelect && (type === 'school')) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); if (tabType === 'depart') { if (TeacherSelect.departSchool.schoolId == tree[i].id) { obj.parents('#select-'+ tabType +'-moudel-content').find('span').removeClass('school-selected'); obj.children('ul').children('li[data-id="'+ tree[i].id +'"]').children('span').addClass('school-selected'); } } else if (tabType === 'teacher') { if (TeacherSelect.teacherSchool.schoolId == tree[i].id) { obj.parents('#select-'+ tabType +'-moudel-content').find('span').removeClass('school-selected'); obj.children('ul').children('li[data-id="'+ tree[i].id +'"]').children('span').addClass('school-selected'); } } } else if (isHasSelect && (type === 'depart')) { if (tree[i].id !== 'nodeptmentmemberbtnid') { var hasDepartment = false; if (TeacherSelect.backDate.department && TeacherSelect.backDate.department.length > 0) { $.each(TeacherSelect.backDate.department, function(n, department) { if (department == tree[i].id) { hasDepartment = true; return false; } }) } if (TeacherSelect.filterResult.department && TeacherSelect.filterResult.department.length > 0) { $.each(TeacherSelect.filterResult.department, function(n, department) { if (department.id == tree[i].id) { hasDepartment = true; return false; } }) } if (hasDepartment) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { isSelectAll = false; // 涓嶆槸琚叏閫変簡 obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } } else if (!isHasSelect && (type === 'depart')) { // TODO: 澧炲姞閫変腑杩囨护 if (TeacherSelect.teacherDepart.departId && (TeacherSelect.teacherDepart.departId == tree[i].id)) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else if (!isHasSelect && (type === 'post')) { // TODO: 澧炲姞閫変腑杩囨护 if (TeacherSelect.postTeacher.postId && (TeacherSelect.postTeacher.postId == tree[i].id)) { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } else { obj.children('ul').append('
  • ' + tree[i].text + '
  • '); } } else if (isHasSelect && (type === 'post')) { // TODO: 澧炲姞閫変腑杩囨护 var hasPost = false; var spanWidth = '300px'; if (TeacherSelect.backDate.teachers && TeacherSelect.backDate.teachers.length > 0) { $.each(TeacherSelect.backDate.teachers, function(n, teacher) { if (that.dataType === 'user') { // 杩斿洖鐨勬暟鎹甶d鏄痷serid if (teacher == tree[i].userId) { hasTeacher = true; return false; } } else { if (teacher == tree[i].id) { hasTeacher = true; return false; } } }); } if (TeacherSelect.filterResult.teachers && TeacherSelect.filterResult.teachers.length > 0) { $.each(TeacherSelect.filterResult.teachers, function(n, teacher) { if (teacher.id == tree[i].id) { hasPost = true; return false; } }); } var stdName = (that.districtPost && TeacherSelect.postTeacher.selectDis) ? (tree[i].name + '(' + tree[i].schoolname + ')') : tree[i].name if (hasPost) { obj.children('ul').append('
  • ' + stdName + '
  • '); if ((tree.length > 1 && i === (tree.length - 1)) || tree.length === 1) { changeParentSelected(obj.children('ul').children('li[data-id="' + tree[i].id + '"]').children('input'), tree[i].id, true) } } else { isSelectAll = false; // 涓嶆槸琚叏閫変簡 obj.children('ul').append('
  • ' + stdName + '
  • '); } } } // 濡傛灉琚叏閫変簡锛屽垯鐪嬬湅鐖剁骇鐨勯€夋嫨妗嗘槸鍚︽湁鍏ㄩ€夛紝濡傛灉鏈夛紝鍒欒缃€変腑 if (isSelectAll && type != 'structure') { //type涓虹粍缁囨椂榛樿涓嶈兘鏄€変腑鐘舵€ obj1.children('input[type="checkBox"]').prop("checked", true); // 鍗曚綅閫氳褰 鍚屾宸︿晶瀛︽牎閫変腑鐘舵€ if (isHasSelect && type === 'contact' && !contactTeacher) { var dataId = $('.select-teacher-contact-tree').find('li').attr('data-id') $('.select-contact-tree li[data-id="' + dataId + '"]').children('input').prop("checked", true) } } } obj1.append(obj.children()); }; /*** ** 鍏辩敤鐨勫睍寮€鍚堣捣鏂规硶 ****/ function expandedTree() {// 灞曞紑鏀惰捣鐨勬寜閽姛鑳 ps: 鍚庢湡娣诲姞400姣鍐呬笉璁╃偣鍑荤浜屾 $('body').on('click', '.expand-btn', function() { if (!changeOver) { changeOver = true if ($(this).hasClass('select-show-icon')) { $(this).siblings('ul').slideDown(400) $(this).removeClass('select-show-icon') $(this).addClass('select-close-icon') } else { $(this).siblings('ul').slideUp(400) $(this).removeClass('select-close-icon') $(this).addClass('select-show-icon') } setTimeout(function() { changeOver = false }, 400) } }) }; /* * 瀛︽牎灞曞紑鏀惰捣鐗规畩澶勭悊 */ function showMoreSchool () { $('body').on('click', '.expand-school-btn', function() { if (!changeOver) { changeOver = true if ($(this).hasClass('select-school-show-icon')) { if ($(this).siblings('ul').length > 0) { $(this).siblings('ul').slideDown(400) $(this).removeClass('select-school-show-icon') $(this).addClass('select-school-close-icon') } else { // 鑾峰彇瀛愯妭鐐 $(this).parent('li').append('') var data = { filiterId: that.filiterId, rolemarks: that.rolemarks, roleId: that.roleId, filterRole: that.filterRole, limitUserSchoolId: that.limitUserSchoolId, id: $(this).parent('li').attr('data-id') } var url = '/common_selector/allSchools.do' var obj = $(this).parent('li') var hasSelect = (TeacherSelect.isSelectBar === 'teacher' || TeacherSelect.isSelectBar === 'post' || TeacherSelect.isSelectBar === 'depart') ? false : true var self = $(this) commonRequest (data, url, function(schoolTree) { self.siblings('ul').remove() toPushSchoolTree(obj, schoolTree, hasSelect, TeacherSelect.isSelectBar) self.siblings('ul').slideDown(400) self.removeClass('select-school-show-icon') self.addClass('select-school-close-icon') }) } } else { $(this).siblings('ul').slideUp(400) $(this).removeClass('select-school-close-icon') $(this).addClass('select-school-show-icon') } setTimeout(function() { changeOver = false }, 400) } }) }; /* * 灞曠ず鍏ㄥ尯鎼滅储鏁欏笀 */ function selectDistrict () { if (that.district) { $('body').on('mouseover', '.select-teacher-moudel-search', function () { $('.select-from-all').show() }); $('body').on('mouseout', '.select-teacher-moudel-search', function () { $('.select-from-all').hide() }); } }; /*** ** 鍏辩敤鐨勭偣鍑婚€夋嫨妗嗕簨浠 ****/ function selectInputCheckTogger() { $('body').on('click', 'li > input[type="checkBox"]', function() { // 鐐瑰嚮閫変腑锛 鍒欓€変腑鍒拌鍏冪礌涓嬬殑鎵€鏈夊瓙鍏冪礌 // TODO: 鏇惧姞鎼滅储閮ㄩ棬瑙﹀彂杩囨浮鍏ㄩ€ // 澶勭悊閮ㄩ棬鐨勯€夋嫨涓庡叾浠栫殑涓嶅悓锛 閫変腑閮ㄩ棬甯冪疆閫変腑鎵€鏈夌殑瀛愬厓绱犲悓鏃舵妸鑷繁涔熼€変腑锛 浣嗘槸鍙栨秷鏃跺彧鍙栨秷鑷繁涓嶅彇娑堝瓙鍏冪礌 var $this = $(this); var isChecked = $this.prop('checked'); var dataType = $this.parent('li').attr('data-type'); if (dataType === 'department' && TeacherSelect.isSelectBar !== 'teacher') { // checkSelect() var id = $(this).parent('li').attr('data-id'), schoolId = TeacherSelect.departSchool.schoolId, type = $(this).parent('li').attr('data-type'), checked = $(this).prop("checked"); if (checked) { $(this).siblings('ul').find('li').find('input[type="checkBox"]').prop("checked", true); // 淇濆瓨鍒皉esult // 鍏堝垽鏂笅鏄惁涓烘渶澶栧眰 鏈€澶栧眰鏄鏍′笉閫夋嫨鏈韩 if (id !== 'VirtualRootNode') { checkResultList(id, $(this).siblings('span').html(), $(this).siblings('span').html(), schoolId, checked, 'depart', ''); } if ($(this).siblings('ul').children('li').length > 0) { // 杩欓噷闇€瑕侀€掑綊 addSelectResult($(this)); function addSelectResult(input) { for (var i = 0; i < input.siblings('ul').children('li').length; i++) { checkResultList(input.siblings('ul').children('li').eq(i).attr('data-id'), input.siblings('ul').children('li').eq(i).children('span').html(), input.siblings('ul').children('li').eq(i).children('span').html(), schoolId, input.prop("checked"), 'depart', ''); if (input.siblings('ul').children('li').eq(i).children('ul').children('li').length > 0) { addSelectResult(input.siblings('ul').children('li').eq(i).children('input')); } } } } else { checkResultList(id, $(this).siblings('span').html(), $(this).siblings('span').html(), schoolId, checked, 'depart', ''); } } else { // 閮ㄩ棬銆傚彇娑 // 灏嗘墍鏈夊瓙鑺傜偣鍙栨秷閫変腑 $(this).siblings('ul').find('li').find('input[type="checkBox"]').prop("checked", true); checkResultList(id, $(this).siblings('span').html(), $(this).siblings('span').html(), schoolId, checked, 'depart', ''); // 灏嗘墍鏈夊瓙鑺傜偣浠庡凡閫夎兌鍥婁腑绉婚櫎 $(this).siblings('ul').find('li').find('input[type="checkBox"]').each(function (idx, el) { $(el).prop('checked', false); checkResultList($(el).parent().attr('data-id'), '', '', schoolId, false, 'depart', ''); }); } // changeParentSelected($(this), $(this).parent('li').attr('data-id'), checked) } else if (dataType === 'contact' && TeacherSelect.isSelectBar === 'contact') { handleClickContact($this); if ($this.siblings('span').hasClass('contact-selected')) { // 濡傛灉褰撳墠閮ㄩ棬鏄凡鐐瑰嚮灞曠ず鐨勯儴闂 $('#select-teacher-contact-moudel-main .select-teacher-contact-tree').find('input[type="checkbox"]').prop('checked', isChecked); } else { // FIXME: 濡傛灉杩樻湁瀛愰儴闂紝鏆傛椂娌℃湁鍚屾璁剧疆瀛愰儴闂ㄧ姸鎬 var deptid = $this.parent('li').attr('data-id'); $('#select-teacher-contact-moudel-main .select-teacher-contact-tree').find('li[data-id="'+deptid+'"]').find('input').prop('checked', isChecked); } } else if (dataType === 'contact-all' && TeacherSelect.isSelectBar === 'contact') { // 涓汉閫氳褰曪紝 鐐瑰嚮鍙充晶鍏ㄩ€夊垎缁勬暟鎹紝涓庡乏渚ц仈鍔 batchAddTeacherToResult(contactTabAllTeachers, isChecked); $this.siblings('ul').find('input').prop('checked', isChecked); if (!$('#search-teacher-contact-input').val()) { var contactId = $this.parent('li').attr('data-id'); $('#select-contact-moudel-main .select-contact-tree').find('li[data-id="' + contactId + '"]').find('input[type="checkbox"]').prop('checked', isChecked); } } // 閫夋嫨鏁欏笀閮ㄩ棬 else if (dataType === 'department' && TeacherSelect.isSelectBar === 'teacher') { handleClickTeacherDepartment($this); if ($this.siblings('span').hasClass('depart-selected')) { // 濡傛灉褰撳墠閮ㄩ棬鏄凡鐐瑰嚮灞曠ず鐨勯儴闂 $('#select-teacher-moudel-content .select-teacher-tree').find('input[type="checkbox"]').prop('checked', isChecked); } else { // FIXME: 濡傛灉杩樻湁瀛愰儴闂紝鏆傛椂娌℃湁鍚屾璁剧疆瀛愰儴闂ㄧ姸鎬 var deptid = $this.parent('li').attr('data-id'); $('#select-teacher-moudel-content .select-teacher-tree').find('li[data-ssbm="'+deptid+'"]').find('input').prop('checked', isChecked); $('#select-teacher-moudel-content .select-teacher-tree').find('li[data-jzbm="'+deptid+'"]').find('input').prop('checked', isChecked); } } // 鏁欏笀tab, 鐐瑰嚮閮ㄩ棬鍏ㄩ€ else if ($this.attr('data-depart-type') === 'all-depart' && TeacherSelect.isSelectBar === 'teacher') { // teacherTabCurrentAllTeacher琛ㄧず鎵€鏈夌殑瀛︾敓 // teacherTabCurrentShowTeacher琛ㄧず鍙充晶鍒楄〃鏄剧ず鐨勫叏閮ㄥ鐢 batchAddTeacherToResult(teacherTabCurrentAllTeachers, isChecked); $this.siblings('ul').find('input').prop('checked', isChecked); $('#select-teacher-moudel-content .select-teacher-tree').find('input[type="checkbox"]').prop('checked', isChecked); } // 鏁欏笀tab鐐瑰嚮鏁欏笀鍒楄〃鍏ㄩ€ else if ($this.attr('data-input-type') === 'select-all' && teacherTabCurrentShowTeacher.length > 0) { // 鍏ㄩ€ batchAddTeacherToResult(teacherTabCurrentShowTeacher, isChecked); $this.siblings('ul').find('input').prop('checked', isChecked); // 濡傛灉鏄悳绱㈢殑锛屽垯涓嶅悓姝ュ埌宸﹁竟 // 濡傛灉鏄€夋嫨浜嗘煇涓儴闂ㄧ殑鍏ㄩ€夊拰褰撳墠閮ㄩ棬鐨勫悓姝 // 濡傛灉涓€涓儴闂ㄩ兘娌℃湁閫夛紝鍏ㄩ€夊拰鏁翠釜瀛︽牎鍚屾 if (TeacherSelect.isSelectBar === 'teacher' && !isSearchTeacher) { var currentDepart = $('.select-depart-tree').find('.depart-selected'); if (currentDepart.length === 0) { currentDepart = $('input[data-depart-type="all-depart"]').siblings('span'); } currentDepart.siblings('input').prop('checked', isChecked); currentDepart.siblings('ul').find('input').prop('checked', isChecked); } } else { clickInput($this, $this.parent('li').attr('data-id')); } }) }; // 鏁欏笀 - 鐐瑰嚮閮ㄩ棬閫夋嫨妗 function handleClickTeacherDepartment ($this) { var deptId = $this.parent('li').attr('data-id'); var schoolId = $this.parent('li').attr('data-school'); var isChecked = $this.prop("checked"); // 閫変腑杩樻槸鍙栨秷 // 褰撳墠鍏冪礌鏄惁鏈夊瓙鑺傜偣 var ids = setAllChildDepartStatus($this, isChecked); ids.push(deptId); deptId = ids.join(','); // todo: loading loadTeachers(schoolId, "", deptId, "", that.rolemarks, function (teachers) { batchAddTeacherToResult(teachers, isChecked) }) } // 鏁欏笀 - 鐐瑰嚮涓汉閫氳褰曢€夋嫨妗 function handleClickContact ($this) { var deptId = $this.parent('li').attr('data-id'); // var schoolId = $this.parent('li').attr('data-school'); var isChecked = $this.prop("checked"); // 閫変腑杩樻槸鍙栨秷 // 褰撳墠鍏冪礌鏄惁鏈夊瓙鑺傜偣 var ids = setAllChildDepartStatus($this, isChecked); ids.push(deptId); deptId = ids.join(','); var contactTeaPostData = { groupId: deptId, groupType: $('.select-contact-tree').find('li[data-id=' + $this.parent('li').attr('data-id') + ']').attr('data-gtype'), name: '', isSingle: !that.district, limitUserSchoolId: that.limitUserSchoolId, selectNodeId: $this.parent('li').attr('data-id'), } var contactTeaPostUrl = '/common_selector/address/teachers.do' commonRequest (contactTeaPostData, contactTeaPostUrl, function(teacherTree) { batchAddTeacherToResult(teacherTree.list, isChecked) if (teacherTree.list.length && !isChecked) { changeParentSelected($this, deptId, isChecked); } }) } // 璁剧疆鎵€鏈夌殑閮ㄩ棬瀛愯妭鐐圭姸鎬侊紝骞惰幏鍙栬妭鐐圭殑id function setAllChildDepartStatus ($el, checked) { var ids = []; addSelectResult($el); function addSelectResult($ele) { for (var i = 0; i < $ele.siblings('ul').children('li').length; i++) { var $li = $ele.siblings('ul').children('li').eq(i); $li.children('input').prop('checked', checked); ids.push($li.attr('data-id')); addSelectResult($li.children('input')) } } // warning:涓嶈鍚屾瀛愯妭鐐圭姸鎬佸埌鐖惰妭鐐癸紝鍥犱负瀛愰儴闂ㄥ叏閮ㄩ€変腑浜嗭紝鐖堕儴闂ㄤ笉涓€瀹氬叏閮ㄩ€変腑銆 return ids } // 鎵归噺娣诲姞鏁欏笀鍒扮粨鏋 function batchAddTeacherToResult(teachers, isChecked) { var addHtml = ''; teachers.forEach(function (teacher) { // todo: 鎵归噺鎻掑叆DOM // id, name, text, schoolId, checked, type, teacherInfo, orgType // checkResultList(teacher.id, teacher.name, teacher.text, teacher.schoolid, isChecked, 'teacher', teacher, null); var name = teacher.name; var id = teacher.id; var text = teacher.text; var schoolId = teacher.schoolid; var teacherInfo = teacher.teacherInfo || teacher; // $('.select-depart-tree').find('li[data-type="depart"]').children('input').prop('checked', isChecked) $('.select-depart-tree').find('li[data-id="' + id + '"]').children('input').prop('checked', isChecked) changeParentSelected($('.select-depart-tree').find('li[data-id="' + id + '"]').children('input'), id, isChecked); if (isChecked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; var Tname = ''; if (name.indexOf("(") === -1) { Tname = name } else { Tname = name.slice(0, name.indexOf("(")) } for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == id && TeacherSelect.result[i].type === 'member') { hasAdd = true; } } if (!hasAdd) { var group = [] if (teacherInfo.ssbmmc) { group.push(teacherInfo.ssbmmc); } if (teacherInfo.jzbmmc) { group.push(teacherInfo.jzbmmc); } TeacherSelect.result.push({ 'id': id, 'name': name, 'text': text, 'schoolid': schoolId, 'type': 'member', 'no': teacherInfo.no, 'userId': teacherInfo.userId, 'schoolname': teacherInfo.schoolname, 'ssbmmc': teacherInfo.ssbmmc, 'ssbm': teacherInfo.ssbm, 'gwfl': teacherInfo.gwfl, 'gwflf': teacherInfo.gwflf, 'jzbm': teacherInfo.jzbm, 'jzbmmc': teacherInfo.jzbmmc, 'text': teacherInfo.text, 'group': group }); addHtml = addHtml + '' + SecLib.xss.handle(Tname, "HTML") + '' // + '("' + teacherInfo.schoolname + '")' +'' } } else { // 鍒犻櫎 if (findIndex(id, TeacherSelect.result) === 0 || findIndex(id, TeacherSelect.result)) { TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('.item-selected-moudel[data-id="' + id + '"][data-type="teacher"]').remove(); } } }) $('.select-result-show-body').append(addHtml); toTrimData(); } /*** ** 鍏辩敤鐨勬牴鎹偣鍑婚€夋嫨鐨勫厓绱犳敼鍙樿鍏冪礌涓嬫墍鏈夌殑瀛愬厓绱燾hecked鐘舵€ ** input: 鐐瑰嚮鐨刬nput瀵硅薄 ** id: 鐐瑰嚮鐨刬nput瀵瑰簲鐨刲i鐨刣ata-id鍊 ** addResult鏂规硶: 杩唬璋冨彇checkResultLis鏂规硶瀛樺彇閫変腑鐨勫€煎埌resul閲岄潰 ****/ function clickInput(input, id) { // 鍝嶅簲鐐瑰嚮鍏冪礌瑙﹀彂鍏朵粬鍏冪礌鐨勯€変腑涓庡彇娑 // 澶勭悊缁勭粐绠$悊鐗规畩鎯呭喌 var isInputChecked = input.prop("checked"); if (input.parent('li').attr('data-type') == 'structure') { checkResultList(id, input.siblings('span').html(), input.siblings('span').html(), null, input.prop("checked"), input.parent('li').attr('data-type'), null, input.parent('li').attr('data-orgtype')); } else { input.siblings('ul').find('li').find('input[type="checkBox"]').prop("checked", input.prop("checked")); // 鐐瑰嚮鐨勬墍鏈夊瓙鍏冪礌鏇村彉鐘舵€ // 杩欓噷涓轰粈涔堣杩欐牱鍐欙紵涓轰簡鍚屾璁剧疆鍏跺畠闈㈡澘锛熷厛娉ㄩ噴鎺夛紝涓嶅悓姝ヨ嚦鍏跺畠闈㈡澘锛屽洜涓哄湪changeParentSelected鍦ㄤ腑瑕佸仛鐗规畩鍏ㄩ€夐厤缃€ for (var i=0; i<$('li[data-id="'+ id +'"]').length; i++) { var ninput = $($('li[data-id="' + id + '"]').eq(i)).children('input'); changeParentSelected(ninput, id, input.prop("checked"), "", ninput.prop('checked') !== input.prop('checked')); // 杩囨浮鐖剁骇鏉ユ敼鍙樼姸鎬 } changeParentSelected(input, id, input.prop("checked")); // 淇濆瓨閫変腑鐨勫厓绱犲埌result閲岄潰 if (input.siblings('ul').children('li').length > 0) { // 杩欓噷闇€瑕侀€掑綊 addResult(input); // 涓庡乏渚ф寜閽仈鍔ㄩ€夋嫨 if(input.parent('li') && input.parent('li').attr('data-id') === 'VirtualRootNode') { $('.select-depart-schools-tree').find('li[data-id=' + input.parent('li').children('ul').children('li').attr('data-school') + ']').children('input').prop('checked', input.prop("checked")) } function addResult(input) { for (var i = 0; i < input.siblings('ul').children('li').length; i++) { if(input.parent('li') && input.parent('li').attr('data-id') !== 'VirtualRootNode') { checkResultList(input.parent('li').attr('data-id'), input.parent('li').attr('data-text'), input.parent('li').attr('data-text'), input.parent('li').attr('data-school'), input.prop("checked"), input.parent('li').attr('data-type'), null, null); } if (input.siblings('ul').children('li').eq(i).children('ul').children('li').length > 0) { addResult(input.siblings('ul').children('li').eq(i).children('input')); } else { if (TeacherSelect.isSelectBar === 'teacher' || TeacherSelect.isSelectBar === 'post' || TeacherSelect.isSelectBar === 'contact') { var teacerItem = input.siblings('ul').children('li').eq(i) var teacherData = { id: teacerItem.attr('data-id'), no: teacerItem.attr('data-no'), userId: teacerItem.attr('data-userid'), name: teacerItem.attr('data-name'), schoolId: teacerItem.attr('data-school'), schoolName: teacerItem.attr('data-schoolname'), ssbmmc: teacerItem.attr('data-ssbmmc'), ssbm: teacerItem.attr('data-ssbm'), text: teacerItem.attr('data-text'), gwfl: teacerItem.attr('data-gwfl'), gwflf: teacerItem.attr('data-gwflf'), jzbm: teacerItem.attr('data-jzbm'), jzbmmc: teacerItem.attr('data-jzbmmc') ? teacerItem.attr('data-jzbmmc') : '' } checkResultList(teacherData.id, teacerItem.children('span').html(), teacerItem.attr('data-text'), teacerItem.attr('data-school'), input.prop("checked"), teacerItem.attr('data-type'), teacherData, null); } else { var groupItem = input.siblings('ul').children('li').eq(i) if(input.parent('li').attr('data-type') == 'school') { checkResultList(groupItem.attr('data-id'), groupItem.attr('data-name'), groupItem.attr('data-text'), groupItem.attr('data-school'), input.prop("checked"), groupItem.attr('data-type'), null, null); } else { checkResultList(groupItem.attr('data-id'), groupItem.attr('data-text'), groupItem.attr('data-text'), groupItem.attr('data-school'), input.prop("checked"), groupItem.attr('data-type'), null, null); } } } } } } else { if (TeacherSelect.isSelectBar === 'teacher' || TeacherSelect.isSelectBar === 'organ' || TeacherSelect.isSelectBar === 'post' || TeacherSelect.isSelectBar === 'contact') { var teacerItem = input.parent('li') var teacherData = { id: teacerItem.attr('data-id'), no: teacerItem.attr('data-no'), userId: teacerItem.attr('data-userid'), name: teacerItem.attr('data-name'), schoolId: teacerItem.attr('data-school'), schoolName: teacerItem.attr('data-schoolname'), ssbmmc: teacerItem.attr('data-ssbmmc'), ssbm: teacerItem.attr('data-ssbm'), text: teacerItem.attr('data-text'), gwfl: teacerItem.attr('data-gwfl'), gwflf: teacerItem.attr('data-gwflf'), jzbm: teacerItem.attr('data-jzbm'), jzbmmc: teacerItem.attr('data-jzbmmc')?teacerItem.attr('data-jzbmmc'):'' } checkResultList(teacherData.id, teacherData.name, teacherData.text, teacherData.schoolId, isInputChecked, teacerItem.attr('data-type'), teacherData, null); } else { checkResultList(id, input.siblings('span').html(), input.siblings('span').html(), input.parent('li').attr('data-school'), input.prop("checked"), input.parent('li').attr('data-type'), null, null); } } } }; /*** ** 澧炲垹閫変腑鐨勫€煎苟褰㈡垚dom鑳跺泭 ** name: 閫変腑鐨刲i涓嬬殑data-name鍊 ** id: 閫変腑鐨刲i鐨刣ata-id鍊 ** schoolId: 瀵瑰簲瀛︽牎ID ** checked: 閫変腑杩樻槸鍙栨秷 **/ function checkResultList(id, name, text, schoolId, checked, type, teacherInfo, orgType) {// 閫変腑鐨勭粨鏋滆兌鍥 杩欓噷闇€瑕侀拡瀵逛笉鍚岀殑閫変腑妯″潡澶勭悊涓嶅悓鐨勬暟鎹 if (TeacherSelect.isSelectBar === 'subject' && type === 'subject') { // 閫夋嫨瀛︾閲岀偣鍑诲绉 if (checked) { // 閫変腑 TeacherSelect.subjectCheckedList.push({'name': name, 'id': id}); if (TeacherSelect.subjectSchoolCheckedList.length > 0) { //濡傛灉瀛樺湪瀛︽牎琚€変腑锛屽垯杩涜瀛︾涓庡鏍$殑缁勫悎骞剁敓鎴愯兌鍥婏紝 鍚﹀垯灏嗛€夋嫨鐨勫绉戜繚瀛樿捣鏉 $.each(TeacherSelect.subjectSchoolCheckedList, function (i, school) { var isHasItem = false; if (TeacherSelect.result.length > 0) { // 鍘婚噸 $.each(TeacherSelect.result, function (j, result) { if (result.type === 'subject' && result.subjectId == id && result.schoolId == school.id) { isHasItem = true; return false; } else { isHasItem = false; } }) } if (!isHasItem) { // 鑻ヤ箣鍓嶆病鏈夊垯娣诲姞涓 TeacherSelect.result.push({'name': name + '-' + school.name, 'subjectId': id, 'schoolId': school.id, 'type': 'subject'}); if ($('.item-selected-moudel').length < 200) { $('.select-result-show-body').append('' + name + '-' + school.name + ''); } } }); } } else { // 鍙栨秷 if (TeacherSelect.subjectSchoolCheckedList.length > 0) { //濡傛灉瀛樺湪瀛︽牎琚€変腑锛屽垯杩涜瀛︾涓庡鏍$殑缁勫悎骞剁敓鎴愯兌鍥婏紝 鍚﹀垯灏嗛€夋嫨鐨勫绉戜繚瀛樿捣鏉 $.each(TeacherSelect.subjectSchoolCheckedList, function (i, school) { TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('.item-selected-moudel[data-id="'+ id +'"][data-type="subject"]').remove(); }) } TeacherSelect.subjectCheckedList.splice(findIndex(id, TeacherSelect.subjectCheckedList), 1); } } else if (TeacherSelect.isSelectBar === 'subject' && type === 'school') { // 閫夋嫨瀛︾妯″潡閲岀偣鍑诲鏍 if (checked) { TeacherSelect.subjectSchoolCheckedList.push({'name': name, 'id': id}); if (TeacherSelect.subjectCheckedList.length > 0) { //濡傛灉瀛樺湪瀛︽牎琚€変腑锛屽垯杩涜瀛︾涓庡鏍$殑缁勫悎骞剁敓鎴愯兌鍥婏紝 鍚﹀垯灏嗛€夋嫨鐨勫绉戜繚瀛樿捣鏉 $.each(TeacherSelect.subjectCheckedList, function (i, subject) { var isHasItem = false; if (TeacherSelect.result.length > 0) { // 鍘婚噸 $.each(TeacherSelect.result, function (j, result) { if (result.type === 'subject' && result.subjectId == subject.id && result.schoolId == id) { isHasItem = true; return false; } else { isHasItem = false; } }) } if (!isHasItem) { // 鑻ヤ箣鍓嶆病鏈夊垯娣诲姞涓 TeacherSelect.result.push({'name': subject.name + '-' + name, 'subjectId': subject.id, 'schoolId': id, 'type': 'subject'}); if ($('.item-selected-moudel').length < 200) { $('.select-result-show-body').append('' + subject.name + '-' + name + ''); } } }); } } else { if (TeacherSelect.subjectCheckedList.length > 0) { //濡傛灉瀛樺湪瀛︽牎琚€変腑锛屽垯杩涜瀛︾涓庡鏍$殑缁勫悎骞剁敓鎴愯兌鍥婏紝 鍚﹀垯灏嗛€夋嫨鐨勫绉戜繚瀛樿捣鏉 $.each(TeacherSelect.subjectCheckedList, function (i, subject) { TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('.item-selected-moudel[data-schoolId="'+ id +'"][data-type="subject"]').remove(); // $.each(TeacherSelect.subjectSchoolCheckedList, function (i, school) { // result.splice(findIndex(id, result), 1); // $('.item-selected-moudel[data-schoolId="'+ id +'"][data-type="subject"]').remove(); // }) }) } TeacherSelect.subjectSchoolCheckedList.splice(findIndex(id, TeacherSelect.subjectSchoolCheckedList), 1); } } else if ((TeacherSelect.isSelectBar === 'school' || TeacherSelect.isSelectBar === 'school_1') && type === 'school') { // 閫夋嫨瀛︽牎妯″潡閫夋嫨鏁欏笀 if (checked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == id && TeacherSelect.result[i].type === type) { hasAdd = true; } } if (!hasAdd) { if(TeacherSelect.isSelectBar === 'school' && type === 'school') { var parent = $('.select-schools-tree') if(parent && parent.find('li[data-id=' + id +']')) { var t = parent.find('li[data-id=' + id +']').children('i.select-parent-icon').length // 濡傛灉褰撳墠鑺傜偣涓烘枃浠跺す绫诲瀷锛屼笖娌℃湁鏄剧ず鐨勫瓙鑺傜偣锛 璋冪敤鎺ュ彛鑾峰彇瀛愬厓绱犲苟灏嗗搴旂殑 if(!t) { TeacherSelect.result.push({'id': id, 'name': name, 'schoolId': schoolId, 'type': type, 'text': text}); $('.select-result-show-body').append('' + name + ''); } } } else { TeacherSelect.result.push({'id': id, 'name': name, 'schoolId': schoolId, 'type': type, 'text': text}); $('.select-result-show-body').append('' + name + ''); } } // 鍙充晶鑱斿姩 } else { // 鍒犻櫎 var ind = findIndex(id, TeacherSelect.result) if(ind || ind === 0) { TeacherSelect.result.splice(ind, 1); } $('.item-selected-moudel[data-id="'+ id +'"][data-type="school"]').remove(); // 鍙充晶鑱斿姩 } } else if (TeacherSelect.isSelectBar === 'customGroup' && type === 'school') { // 鑷畾涔夊垎缁勯€夋嫨瀛︽牎 if (checked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == id && TeacherSelect.result[i].type === type) { hasAdd = true; } } if (!hasAdd) { TeacherSelect.result.push({ 'id': id, 'name': name, 'schoolId': schoolId, 'type': type, 'text': text }); $('.select-result-show-body').append('' + name + ''); } } else { // 鍒犻櫎 TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('.item-selected-moudel[data-id="' + id + '"][data-type="school"]').remove(); } } else if (TeacherSelect.isSelectBar === 'structure' && type === 'structure') { // 閫夋嫨瀛︽牎妯″潡閫夋嫨鏁欏笀 if (checked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == id && TeacherSelect.result[i].type === type) { hasAdd = true; } } if (!hasAdd) { TeacherSelect.result.push({'id': id, 'name': name, 'type': type, 'text': text, 'orgType': orgType}); $('.select-result-show-body').append('' + name + ''); } } else { // 鍒犻櫎 TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('.item-selected-moudel[data-id="'+ id +'"][data-type="structure"]').remove(); } } else if (TeacherSelect.isSelectBar === 'depart' && (type === 'depart' || type === 'department')) { // 閫夋嫨閮ㄩ棬妯″潡閫夋嫨閮ㄩ棬 if(schoolId.split('_').length === 1) { schoolId = 'depart_' + schoolId } if (checked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == id && TeacherSelect.result[i].schoolId == schoolId) { hasAdd = true; } } if (!hasAdd) { TeacherSelect.result.push({'id': id, 'name': name, 'schoolId': schoolId, 'type': 'department', 'text': text, 'schoolid': TeacherSelect.departSchool.schoolId, 'schoolname': TeacherSelect.departSchool.schoolName}); $('.select-result-show-body').append('' + TeacherSelect.departSchool.schoolName + '-' + name + ''); } } else { // 鍒犻櫎 TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('.item-selected-moudel[data-id="'+ id +'"][data-type="department"][data-schoolid="'+ schoolId +'"]').remove(); $('.item-selected-moudel[data-id="'+ id +'"][data-type="department"][data-schoolid="'+ schoolId.split('_')[1] +'"]').remove(); } } else if ((TeacherSelect.isSelectBar === 'teacher' || TeacherSelect.isSelectBar === 'organ' || TeacherSelect.isSelectBar === 'contact') && type === 'teacher') { // 閫夋嫨鏁欏笀妯″潡閫夋嫨鏁欏笀 if (checked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 // debugger var hasAdd = false; var Tname = ''; if (name.indexOf("(") === -1) { Tname = name } else { Tname = name.slice(0, name.indexOf("(")) } for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == id && TeacherSelect.result[i].type === 'member') { hasAdd = true; } } if (!hasAdd) { var group = [] if (teacherInfo.ssbmmc) { group.push(teacherInfo.ssbmmc); } if (teacherInfo.jzbmmc) { group.push(teacherInfo.jzbmmc); } TeacherSelect.result.push({ 'id': id, 'name': name, 'text': text, 'schoolid': schoolId, 'type': 'member', 'no': teacherInfo.no, 'userId': teacherInfo.userId, 'schoolname': teacherInfo.schoolname || teacherInfo.schoolName, 'ssbmmc': teacherInfo.ssbmmc, 'ssbm': teacherInfo.ssbm, 'gwfl': teacherInfo.gwfl, 'gwflf': teacherInfo.gwflf, 'jzbm': teacherInfo.jzbm, 'jzbmmc': teacherInfo.jzbmmc, 'text': teacherInfo.text, 'group': group}); $('.select-result-show-body').append('' + Tname + ''); } } else { // 鍒犻櫎 if (findIndex(id, TeacherSelect.result) === 0 || findIndex(id, TeacherSelect.result)) { TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); } $('.item-selected-moudel[data-id="'+ id +'"][data-type="teacher"]').remove(); } } else if (TeacherSelect.isSelectBar === 'post' && type === 'teacher') { // 宀椾綅闇€瑕佹樉绀哄鏍 if (checked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; var Tname = ''; if (name.indexOf("(") === -1) { Tname = name } else { Tname = name.slice(0, name.indexOf("(")) } for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == id && TeacherSelect.result[i].type === 'member') { hasAdd = true; } } if (!hasAdd) { var group = [] if (teacherInfo.ssbmmc) { group.push(teacherInfo.ssbmmc); } if (teacherInfo.jzbmmc) { group.push(teacherInfo.jzbmmc); } TeacherSelect.result.push({ 'id': id, 'name': Tname, 'text': text, 'schoolid': schoolId, 'type': 'member', 'no': teacherInfo.no, 'userId': teacherInfo.userId, 'schoolname': teacherInfo.schoolname || teacherInfo.schoolName, 'ssbmmc': teacherInfo.ssbmmc, 'ssbm': teacherInfo.ssbm, 'gwfl': teacherInfo.gwfl, 'gwflf': teacherInfo.gwflf, 'jzbm': teacherInfo.jzbm, 'jzbmmc': teacherInfo.jzbmmc, 'text': teacherInfo.text, 'group': group}); $('.select-result-show-body').append('' + Tname + '(' + teacherInfo.schoolName +')' + ''); } } else { // 鍒犻櫎 TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('.item-selected-moudel[data-id="'+ id +'"][data-type="teacher"]').remove(); } } else if(TeacherSelect.isSelectBar === 'contact' && type === 'contact') { var parent = $('.select-teacher-contact-tree') if(parent && parent.children('ul') && parent.children('ul').children('li').attr('data-id') === id) { var children = parent.children('ul').children('li').children('ul').find('li') for(var ind = 0 ; ind < children.length; ind++ ) { if (checked) { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; var Tname = ''; if (children.eq(ind).attr('data-name').indexOf("(") === -1) { Tname = children.eq(ind).attr('data-name') } else { Tname = children.eq(ind).attr('data-name').slice(0, children.eq(ind).attr('data-name').indexOf("(")) } for (var i = 0; i < TeacherSelect.result.length; i++) { if (TeacherSelect.result[i].id == children.eq(ind).attr('data-id') && TeacherSelect.result[i].type === 'member') { hasAdd = true; } } if (!hasAdd) { var group = [] var teacherData = { id: children.eq(ind).attr('data-id'), no: children.eq(ind).attr('data-no'), userId: children.eq(ind).attr('data-userid'), name: children.eq(ind).attr('data-name'), schoolId: children.eq(ind).attr('data-school'), schoolName: children.eq(ind).attr('data-schoolname'), ssbmmc: children.eq(ind).attr('data-ssbmmc'), ssbm: children.eq(ind).attr('data-ssbm'), text: children.eq(ind).attr('data-text'), gwfl: children.eq(ind).attr('data-gwfl'), gwflf: children.eq(ind).attr('data-gwflf'), jzbm: children.eq(ind).attr('data-jzbm'), jzbmmc: children.eq(ind).attr('data-jzbmmc')?children.eq(ind).attr('data-jzbmmc'):'' } if (teacherData.ssbmmc) { group.push(teacherData.ssbmmc); } if (teacherData.jzbmmc) { group.push(teacherData.jzbmmc); } TeacherSelect.result.push({ 'id': teacherData.id, 'name': teacherData.name, 'text': teacherData.text, 'schoolid': teacherData.schoolId, 'type': 'member', 'no': teacherData.no, 'userId': teacherData.userId, 'schoolname': teacherData.schoolname || teacherData.schoolName, 'ssbmmc': teacherData.ssbmmc, 'ssbm': teacherData.ssbm, 'gwfl': teacherData.gwfl, 'gwflf': teacherData.gwflf, 'jzbm': teacherData.jzbm, 'jzbmmc': teacherData.jzbmmc, 'text': teacherData.text, 'group': group}); $('.select-result-show-body').append('' + Tname + ''); } // checkResultList(id, name, text, schoolId, checked, type, teacherInfo, orgType) {/ } else { // 鍒犻櫎 if (findIndex(children.eq(ind).attr('data-id'), TeacherSelect.result) === 0 || findIndex(children.eq(ind).attr('data-id'), TeacherSelect.result)) { TeacherSelect.result.splice(findIndex(children.eq(ind).attr('data-id'), TeacherSelect.result), 1); $('.item-selected-moudel[data-id="'+ children.eq(ind).attr('data-id') +'"][data-type="teacher"]').remove(); } } } } else { // 濡傛灉娌℃湁鏁版嵁鎴栬€呮病鏈夎姹傦紝 鍒欒姹傛帴鍙o紝鑾峰彇鏁版嵁 var currentEl = $('.select-contact-tree').find('li[data-id=' + id + ']').find('li') var ids = [] ids.push(id) for(var i = 0; i < currentEl.length; i++) { ids.push(currentEl.eq(i).attr('data-id')) } var contactTeaPostData = { groupId: ids.join(','), groupType: $('.select-contact-tree').find('li[data-id=' + id + ']').attr('data-gtype'), name: '', isSingle: !that.district, limitUserSchoolId: that.limitUserSchoolId, selectNodeId: id } var contactTeaPostUrl = '/common_selector/address/teachers.do' commonRequest (contactTeaPostData, contactTeaPostUrl, function(teacherTree) { if (checked) { batchAddTeacherToResult(teacherTree.list, checked) } else { // 鍒犻櫎 for(var i = 0; i < teacherTree.list.length; i++) { var temp = $('li[data-id="'+ teacherTree.list[i].id +'"]') if (temp.children) { temp.children('input').prop('checked', false) } if (findIndex(teacherTree.list[i].id, TeacherSelect.result) === 0 || findIndex(teacherTree.list[i].id, TeacherSelect.result)) { TeacherSelect.result.splice(findIndex(teacherTree.list[i].id, TeacherSelect.result), 1); $('.item-selected-moudel[data-id="'+ teacherTree.list[i].id +'"][data-type="teacher"]').remove(); } } toTrimData(); } }) } } else if(TeacherSelect.isSelectBar === 'depart' && type === 'school') { var id = id.split('_')[1] || id.split('_')[0] var s = $('.select-departs-tree').find('li[data-school=' + id + ']') // 鍚屾鏍圭粨鐐圭殑閫変腑鐘舵€ s.length ? $('.select-departs-tree').find('li[data-id="VirtualRootNode"]').find('input').prop('checked', checked) : '' if(checked) { // $('.select-departs-tree').find('li[data-id]=' + id + ']').prop('checked', ) if(s.length > 0) { // 褰撳墠閫変腑瀛︽牎涓庡彸渚ч儴闂ㄥ睘浜庣骇鑱斿叧绯伙紝 涔熷彲鑳芥槸璇ュ鏍′笅娌℃湁閮ㄩ棬 // 鍙充晶鑱斿姩 鍏ㄩ€夌姸鎬侊紝 骞跺皢缁撴灉淇濆瓨鍒皉euslt閲岄潰 for(var i = 0 ;i < s.length; i++) { s.eq(i).children('input').prop('checked', checked) // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; for (var j = 0; j < TeacherSelect.result.length; j++) { if (TeacherSelect.result[j].id == s.eq(i).attr('data-id') && TeacherSelect.result[j].schoolId == s.eq(i).attr('data-school')) { hasAdd = true; } } if (!hasAdd) { // 灏嗘暟鎹繚瀛樺埌缁撴灉鍒楄〃 TeacherSelect.result.push({'id': s.eq(i).attr('data-id'), 'name': s.eq(i).attr('data-name'), 'schoolId': id, 'type': 'department', 'text': s.eq(i).attr('data-text'), 'schoolid': id, 'schoolname': name}); $('.select-result-show-body').append('' + name + '-' + s.eq(i).attr('data-name') + ''); } } } else { var departPostData = { deptIds: '', deptName: '', schoolId: id } var departPostUrl = '/common_selector/departments.do' commonRequest (departPostData, departPostUrl, function(departTree) { arrayDeep(departTree, 'depart-school', checked) }) } } else { if(s.length > 0) { var s = $('.select-departs-tree').find('li[data-school=' + id + ']') for(var i = 0 ;i < s.length; i++) { s.eq(i).children('input').prop('checked', checked) TeacherSelect.result.splice(findIndex(s.eq(i).attr('data-id') , TeacherSelect.result), 1); $('.item-selected-moudel[data-id="'+ s.eq(i).attr('data-id') +'"][data-type="department"]').remove(); } } else { var departPostData = { deptIds: '', deptName: '', schoolId: id } var departPostUrl = '/common_selector/departments.do' commonRequest (departPostData, departPostUrl, function(departTree) { arrayDeep(departTree, 'depart-school', checked) }) } } } toTrimData(); }; // 閬嶅巻澶氱淮鏁扮粍锛屽湪閫変腑閫昏緫涓娇鐢 function arrayDeep(data, type, checked) { if(checked && type === 'depart-school') { // 濡傛灉鏄儴闂ㄧ被鍨嬶紝 骞朵笖鏄€変腑鐘舵€侊紝 娣诲姞 for(var i = 0 ;i < data.children.length; i++) { // 鎼滅储閮ㄩ棬鏃讹紝浜旈儴闂ㄤ汉鍛樹笉鍋氬睍绀虹粨鏋 if(data.children[i].id !== 'nodeptmentmemberbtnid') { // 杩欓噷闇€瑕佹坊鍔犲幓閲 var hasAdd = false; for (var j = 0; j < TeacherSelect.result.length; j++) { if (TeacherSelect.result[j].id == data.children[i].id && TeacherSelect.result[j].schoolId == data.children[i].attributes.schoolid) { hasAdd = true; } } if (!hasAdd) { // 灏嗘暟鎹繚瀛樺埌缁撴灉鍒楄〃 TeacherSelect.result.push({'id': data.children[i].id, 'name': data.children[i].text, 'schoolId': data.children[i].attributes.schoolid, 'type': 'department', 'text': data.children[i].text, 'schoolid': data.children[i].attributes.schoolid, 'schoolname': data.children[i].attributes.schoolName}); $('.select-result-show-body').append('' + data.children[i].attributes.schoolName + '-' + data.children[i].text + ''); } if(data.children[i].children.length) { arrayDeep(data.children[i], type, checked) } } } } else if(!checked && type === 'depart-school') { // 濡傛灉鏄儴闂ㄧ被鍨嬶紝 骞朵笖涓洪潪閫変腑鐘舵€侊紝 鍒犻櫎 for(var i = 0 ;i < data.children.length; i++) { var ind = findIndex(data.children[i].id, TeacherSelect.result) || -1 if(ind > -1) { TeacherSelect.result.splice(findIndex(data.children[i].id, TeacherSelect.result), 1); } $('.item-selected-moudel[data-id="'+ data.children[i].id +'"][data-type="department"]').remove(); if(data.children[i].children.length) { arrayDeep(data.children[i], type, checked) } } } toTrimData(); } /* * 閫氱敤鑾峰彇鏁扮粍瀵瑰簲鐨勫€肩殑index */ function findIndex (id, arr) { for (var i = 0; i < arr.length; i++) { if (arr[i].id == id) { return i; } } }; /*** ** 鐐瑰嚮鑳跺泭鐨剎鍒犻櫎璇om鍏冪礌鍜宺esult閲屽搴旂殑鍊 ****/ function removeSelected() { // 绉婚櫎宸查€夋嫨鐨勭粨鏋滀腑鐨勬煇涓€椤 $('body').on('click', '.delete-select-icon', function(event) { var id = $(this).parent('span').attr('data-id'), name = $(this).parent('span').attr('data-name'), schoolId = $(this).parent('span').attr('data-schoolid'), type = $(this).parent('span').attr('data-type'); if (type === 'subject') { // 瀛︾杩欓噷鍒犻櫎涓€涓兌鍥婂苟涓嶄細瑙﹀彂澶嶉€夋鐨勫彇娑堬紝 鍙湁鍦ㄦ墍鏈夌殑璇d鍏ㄩ儴鍒犻櫎鍚庢墠浼氳Е鍙戝閫夋鐨勫彇娑 var hasSubject = false; var hasSchool = false; $(this).parent('span').remove(); result.splice(findIndex(id, result), 1); $.each(result, function(i, result) { // 鍒ゆ柇鍒犻櫎涓€涓兌鍥婂悗鏄惁杩樺瓨鍦ㄤ笌淇濆瓨鐨勫绉戜笌瀛︽牎鏁扮粍涓浉鍚岀殑id 娌℃湁鍒欒Е鍙戝彇娑堥€夋嫨鐘舵€佺殑瀛︾鎴栧鏍 if (result.type === 'subject') { if (result.subjectId == id) { hasSubject = true; } if (result.schoolId == schoolId) { hasSchool = true; } } }) if (!hasSubject) { TeacherSelect.subjectCheckedList.splice(findIndex(id, TeacherSelect.subjectCheckedList), 1); $('li[data-id="' + id + '"][data-type="subject"]').children('input').prop("checked", false); changeParentSelected($('li[data-id="' + id + '"][data-type="subject"]').children('input'), id, false); } if (!hasSchool) { TeacherSelect.subjectSchoolCheckedList.splice(findIndex(id, TeacherSelect.subjectSchoolCheckedList), 1); $('li[data-id="' + schoolId + '"][data-type="school"]').children('input').prop("checked", false); changeParentSelected($('li[data-id="' + schoolId + '"][data-type="school"]').children('input'), schoolId, false); } } else { // 绉婚櫎褰撳墠鑳跺泭 if (type == 'structure') { $('.item-selected-moudel[data-id="'+ id +'"][data-type="' + type + '"]').remove(); TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); $('li[data-id="' + id + '"][data-type="' + type + '"]').children('input').prop("checked", false); } else { $('.item-selected-moudel[data-id="'+ id +'"][data-type="' + type + '"][data-schoolid="' + schoolId + '"]').remove(); // 濡傛灉鍒犻櫎鐨勬暀甯 if (type === 'teacher') { var deleteTea = {} $.each(TeacherSelect.result, function (i, result) { if (result.id == id) { deleteTea = result } }) $('li[data-id="' + id + '"][data-type="' + type + '"]').children('input').prop("checked", false); TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); } else { // 绉婚櫎TeacherSelect.result閲岄潰瀵瑰簲鐨勯」 $('li[data-id="' + id + '"][data-type="' + type + '"]').children('input').prop("checked", false); TeacherSelect.result.splice(findIndex(id, TeacherSelect.result), 1); } // 鏀瑰彉鐐瑰嚮鐨刬d瀵瑰簲鐨刣om閫変腑鐘舵€ if(type === 'department') { schoolId = schoolId.split('_').length > 1 ? schoolId.split('_')[1] : schoolId } $('li[data-id="' + id + '"][data-type="' + type + '"][data-school="' + schoolId + '"]').children('input').prop("checked", false); changeParentSelected($('li[data-id="' + id + '"][data-type="' + type + '"][data-school="' + schoolId + '"]').children('input'), $(this).parent('span').attr('data-id'), false, schoolId); // 濡傛灉鏄鏍¢€夋嫨闈㈡澘1 if (type === 'school') { var schoolItem = $('#select-school_1-moudel-content li[data-schoolid="' + schoolId + '"]'); if (schoolItem.length > 0) { schoolItem.find('input').prop("checked", false); schoolItem.siblings('[data-type=all]').find('input').prop("checked", false); } } } } toTrimData(); }) }; /** * 閫氱敤杩囨护鍣ㄩ€夋嫨 **/ function commonfilterMsg() { $('body').on('click', '.can-select-school', function () { var selectItemType = $(this).parent('li').attr('data-type') if (selectItemType === 'school') { $(this).parents('#select-'+ TeacherSelect.isSelectBar +'-moudel-content').find('span').removeClass('school-selected'); $(this).addClass('school-selected'); // 缁欓€夋嫨閮ㄩ棬鍜岄€夋嫨鏁欏笀璧嬪€煎鏍 var schoolName = $(this).parent('li').attr('data-name'); var schoolId = $(this).parent('li').attr('data-id'); } else if (selectItemType === 'depart' || selectItemType === 'department') { if (TeacherSelect.isSelectBar === 'depart') { // 閮ㄩ棬鐩存帴閫夛紝涓嶅厑璁哥偣鍑 return; } $(this).parents('#select-'+ TeacherSelect.isSelectBar +'-moudel-content').find('span').removeClass('depart-selected'); $(this).addClass('depart-selected'); var departId = $(this).parent('li').attr('data-id'); if (departId === "VirtualRootNode") { // 鏌ヨ閮ㄩ棬鐨勬牴鍩虹洰褰曞鏍″皢閮ㄩ棬id缃┖ departId = '' } else { var departName = $(this).parent('li').attr('data-name'); if ($(this).siblings('ul').length > 0) { // 鍚屾椂灏嗚鍏冪礌涓嬬殑瀛愰儴闂ㄨ幏鍙 for (var i = 0; i < $(this).siblings('ul').find('li').length; i++) { departId = departId + ',' + $(this).siblings('ul').find('li').eq(i).attr('data-id') } } } } else if (selectItemType === 'post') { $(this).parents('#select-'+ TeacherSelect.isSelectBar +'-moudel-content').find('span').removeClass('post-selected'); $(this).addClass('post-selected'); var postId = $(this).parent('li').attr('data-id'); var postName = $(this).parent('li').attr('data-name'); if (postId === 'VirtualRootNode') { postId = '' } } if (TeacherSelect.isSelectBar === 'depart' && schoolId) { $('#search-departs-input').val(''); TeacherSelect.departSchool = {schoolId: schoolId, schoolName: schoolName}; // 鏍规嵁瀛︽牎ID璇锋眰瀵瑰簲瀛︽牎涓嬬殑閮ㄩ棬 // 璋冪敤鑾峰彇閮ㄩ棬鎺ュ彛 toShowDepartTrees(schoolId, '', 'depart'); $('#select-depart-moudel-content .select-center-line').show() $('#select-departs-moudel-main').show() } else if (TeacherSelect.isSelectBar === 'teacher') { if (selectItemType === 'school') { if (schoolId) { // 閮ㄩ棬锛岀偣鍑婚儴闂ㄧ殑鏃跺€欐病鏈塻choolId $('#search-teacher-input').val(''); $('#search-departs-input').val(''); // 灏嗛儴闂↖D缃┖ departId = '' TeacherSelect.departSchool = { schoolId: schoolId, schoolName: schoolName }; TeacherSelect.teacherSchool = { schoolId: schoolId, schoolName: schoolName }; // 鏍规嵁瀛︽牎ID璇锋眰瀵瑰簲瀛︽牎涓嬬殑鏁欏笀 // 璋冪敤鑾峰彇鏁欏笀鎺ュ彛 toShowDepartTrees(schoolId, '', 'teacher'); // 灏嗗鏍$殑鎵€鏈夋暀甯堢紦瀛 toShowTeacherTrees(schoolId, '', '', false, ''); $('#select-depart-moudel-main').show() $('#select-teacher-moudel-content .select-center-line').show() $('#select-teacher-moudel-main').show() } } else if (selectItemType === 'depart' || selectItemType === 'department') { $('#search-teacher-input').val(''); if (departId !== 'VirtualRootNode') { TeacherSelect.teacherDepart = {departId: departId, departName: departName}; } // 杩欓噷寰呭鐞嗛粯璁ら€変腑鐨勫鏍d toShowTeacherTrees(TeacherSelect.teacherSchool.schoolId, '', departId, false, ''); } } else if (TeacherSelect.isSelectBar === 'post') { if (selectItemType === 'school') { var selectDis = $(this).hasClass('post-structure-select') || false postId = '' $('#search-post-input').val(''); $('#search-post-teacher-input').val(''); TeacherSelect.postSchool = {schoolId: schoolId, schoolName: schoolName, selectDis: selectDis}; // 杩欓噷寰呭鐞嗛粯璁ら€変腑鐨勫鏍d TeacherSelect.postTeacher = {} toShowPostTrees(TeacherSelect.postSchool.schoolId, false, '', selectDis) // toShowPostTeacherTrees(TeacherSelect.postSchool.schoolId, '', '', selectDis) $('#select-post-moudel-main').show() $('#select-post-moudel-content .select-center-line').show() $('#select-post-teacher-moudel-main').hide() $('.select-post-teacher-tree').children('ul').remove(); } else if (selectItemType === 'post') { $('#search-post-teacher-input').val(''); var selectDis = TeacherSelect.postSchool.selectDis || false if (postId !== 'VirtualRootNode') { TeacherSelect.postTeacher = {postId: postId, postName: postName, selectDis: selectDis}; } // 杩欓噷寰呭鐞嗛粯璁ら€変腑鐨勫鏍d $('#select-post-teacher-moudel-main').show() toShowPostTeacherTrees(TeacherSelect.postSchool.schoolId, postId, '', selectDis) } } else if (TeacherSelect.isSelectBar === 'contact') { $('#search-teacher-contact-input').val(''); $('.contact-selected').removeClass('contact-selected') $(this).addClass('contact-selected') var groupId = $(this).parent('li').attr('data-id'), groupName = $(this).parent('li').attr('data-name'), groupType = $(this).parent('li').attr('data-gtype'); var lis = $(this).parent('li').find('li') var ids = [] ids.push(groupId) for(var i = 0; i < lis.length; i++) { ids.push(lis.eq(i).attr('data-id')) } contactGroup = {groupId: ids.join(','), groupName: groupName, groupType: groupType}; $('#select-teacher-contact-moudel-main').show(); $('#select-teacher-contact-moudel-main').siblings('.select-center-line').css('height', '100%') toShowContactTeacherTrees(groupId, groupType, ''); } // 鏀瑰彉褰撳墠宸查€変腑鐨剆choolId 骞惰皟鐢ㄦ帴鍙h姹傚彸杈圭殑閮ㄩ棬 }); }; // 鍏辩敤鐨勬悳绱㈠姛鑳 function searchCommon() { var pattern = new RegExp("[~'!@#$%^&*()-+_=:]"); $(document).keyup(function(event){ // 鍥炶溅鏌ヨ if(event.keyCode ==13){ if(pattern.test($(document.activeElement).val())){ $(document.activeElement).val(''); $(document.activeElement).parent('.common-search-main').append('闈炴硶瀛楃锛?/span>') setTimeout(function() { $('.error-input-tip').remove() }, 1000) return false; } else { commonSelect($(document.activeElement).val(), $(document.activeElement).attr('data-type')) } } }); $('body').on('click', '.common-search-button', function(){ // 鐐瑰嚮鏌ヨ if(pattern.test($(this).siblings('input').val())){ $(this).siblings('input').val(''); $(this).parent('.common-search-main').append('闈炴硶瀛楃锛?/span>') setTimeout(function() { $('.error-input-tip').remove(); }, 1000) return false; } else { commonSelect($(this).siblings('input').val(), $(this).siblings('input').attr('data-type')) } }); // 鎼滅储瑙﹀彂鐨勬柟娉 function commonSelect(value, type) { var inputValue = value, inputType = type; // 瀛︽牎妯″潡瀛︽牎鎼滅储 if (TeacherSelect.isSelectBar === 'school' && inputType === 'school') { toShowSchoolTrees($('.select-schools-tree'), inputValue, true, 'school'); } else if (TeacherSelect.isSelectBar === 'school_1' && inputType === 'school') { getLabelSchoolList(inputValue); } // 鑷畾涔夊垎缁勬悳绱 else if (TeacherSelect.isSelectBar === 'customGroup' && inputType === 'school') { showCustomGroupSchools('', '鍏ㄩ€?, 0, inputValue); } // 閮ㄩ棬妯″潡 else if (TeacherSelect.isSelectBar === 'depart') { // 鎼滅储瀛︽牎 if (inputType === 'school-depart') { var hasCheck = value.trim().length toShowSchoolTrees($('.select-depart-schools-tree'), inputValue, hasCheck, 'depart'); } // 鎼滅储閮ㄩ棬 else if (inputType === 'depart') { var did = TeacherSelect.mySchool.id if (TeacherSelect.departSchool.schoolId) { did = TeacherSelect.departSchool.schoolId } toShowDepartTrees(did, inputValue, 'depart'); } } // 鏁欏笀妯″潡 else if (TeacherSelect.isSelectBar === 'teacher') { // 鎼滅储瀛︽牎 if (inputType === 'school-teacher') { toShowSchoolTrees($('.select-teacher-schools-tree'), inputValue, false, 'teacher'); } // 鎼滅储閮ㄩ棬 else if (inputType === 'school-dept-teacher') { var did = TeacherSelect.mySchool.id if (TeacherSelect.departSchool.schoolId) { did = TeacherSelect.departSchool.schoolId } toShowDepartTrees(did, inputValue, 'teacher'); } // 鎼滅储鏁欏笀 else if (inputType === 'teacher') { var tid = TeacherSelect.mySchool.id var depId = TeacherSelect.teacherDepart.departId if (TeacherSelect.teacherSchool.schoolId) { tid = TeacherSelect.teacherSchool.schoolId } if ($('#teacher-select-from-all').prop("checked")) { // 鍏ㄥ尯鎼滅储 toShowTeacherTrees(tid, inputValue, '', true, that.rolemarks); } else { toShowTeacherTrees(tid, inputValue, depId, false, ''); } } } // 鍗曚綅缁勬ā鍧 else if (TeacherSelect.isSelectBar === 'organ') { // 鎼滅储瀛︽牎 if (inputType === 'school-teacher') { getLabelSchoolList(inputValue); } // 鎼滅储鏁欏笀 else if (inputType === 'teacher') { var tid = TeacherSelect.mySchoolOriginId || TeacherSelect.mySchool.id // var depId = TeacherSelect.teacherDepart.departId // if (TeacherSelect.teacherSchool.schoolId) { // tid = TeacherSelect.teacherSchool.schoolId // } if ($('#teacher-select-from-all-organ').prop("checked")) { // 鍏ㄥ尯鎼滅储 toShowOrganTeacherTrees(tid, inputValue, '', true, that.rolemarks, '鎼滅储缁撴灉'); } else { toShowOrganTeacherTrees(tid, inputValue, '', false, '', '鎼滅储缁撴灉'); // 鍦ㄥ崟浣嶉€氳閲岄潰灏辨病鏈夐儴闂ㄨ繖涓暟鎹 // toShowOrganTeacherTrees(tid, inputValue, depId, false, '', '鎼滅储缁撴灉'); } } } // 宀椾綅妯″潡 else if (TeacherSelect.isSelectBar === 'post') { // 鎼滅储瀛︽牎 if (inputType === 'school-post') { toShowSchoolTrees($('.select-post-schools-tree'), inputValue, false, 'post'); } // 鎼滅储宀椾綅 else if (inputType === 'post') { var postDid = TeacherSelect.mySchool.id var selectDis = TeacherSelect.postSchool.selectDis || false if (TeacherSelect.postSchool.schoolId) { postDid = TeacherSelect.postSchool.schoolId } toShowPostTrees(postDid, false, inputValue, selectDis); } // 鎼滅储鏁欏笀 else if (inputType === 'post-teacher') { var tid = TeacherSelect.mySchool.id var postId = '' var selectDis = TeacherSelect.postTeacher.selectDis || false if (TeacherSelect.postSchool.schoolId) { tid = TeacherSelect.postSchool.schoolId } if (TeacherSelect.postTeacher.postId) { postId = TeacherSelect.postTeacher.postId } toShowPostTeacherTrees(tid, postId, inputValue, selectDis); } } // 閫氳褰曟ā鍧 else if (TeacherSelect.isSelectBar === 'contact' && inputType === 'contact') { toShowContactTeacherTrees(contactGroup.groupId, contactGroup.groupType, inputValue, 'search') } // 瀛︾妯″潡 else if (TeacherSelect.isSelectBar === 'subject' && inputType === 'school-subject') { toShowSchoolTrees($('.select-subject-schools-tree'), inputValue, true, 'subject'); } } }; // 鍏辩敤鐨勫皢閫夋嫨鐨勭粨鏋滃垎绫绘暣鐞嗘垚鏈€缁堢殑杩斿洖缁撴瀯selectResult function toTrimData() { TeacherSelect.selectResult = TeacherSelect.result.map(function (r) { if (r.jzbmmc === null || r.jzbmmc === 'null' || r.jzbmmc === 'undefined' || r.jzbmmc === undefined) { r.jzbmmc = '' } if (r.ssbmmc === null || r.ssbmmc === 'null' || r.ssbmmc === 'undefined' || r.ssbmmc === undefined) { r.ssbmmc = '' } return r }) filterBackResult(TeacherSelect.result) }; // 鐐瑰嚮纭鎸夐挳浜嬩欢 function toBackResult() { $('body').on('click', '#select-sure-btn', function() { toTrimData(); // 璁╃粍浠堕殣钘 closeSelectPop() saveSelectDate() sureBackResult(TeacherSelect.selectResult) // that.callback(TeacherSelect.backResult); }) // 鍏抽棴閫変汉鎺т欢 // $('body').on('click', '#common-district-select-teach-shade', function() { // closeSelectPop() // }) $('body').on('click', '#select-cancal-btn', function() { closeSelectPop() }) $('body').on('click', '.common-select-headers-close', function() { closeSelectPop() }) function closeSelectPop() { TeacherSelect.subjectCheckedList = [] TeacherSelect.subjectSchoolCheckedList = [] $('#common-district-select-teach-main').remove() $('#common-district-select-teach-shade').remove() $('#common-district-select-teach-style').remove() } }; // 鐐瑰嚮淇濆瓨鍒伴€氳褰曢噷鐨勪繚瀛樻寜閽Е鍙戠殑浜嬩欢 function toSaveContact() { $('body').on('click', '#save-contact-sure-btn', function() { var pattern = new RegExp("[~'!@#$%^&*()-+_=:]"); if ($(".save-contact-input input").val() !== "" && $(".save-contact-input input").val() !== null) { if(pattern.test($(".save-contact-input input").val())){ showMessage('error', '涓嶅彲杈撳叆闈炴硶瀛楃锛?); $(".save-contact-input input").attr("value",""); $(".save-contact-input input").focus(); return false; } else { toTrimData(); var name = $('.save-contact-input input').val(); $('#save-contact-sure-btn').prop('disabled', true) $('#save-contact-sure-btn').addClass('disabled-btn') // $('#save-contact-sure-btn').css({'background-color': '#ccc', 'border-color': '#ccc'}) showMessage('warning', '姝e湪淇濆瓨涓紝璇风◢绛墌') var saveData = { groupName: name, data: JSON.stringify(TeacherSelect.selectResult) } var saveUrl = '/common_selector/address/save.do' commonRequest(saveData, saveUrl, function(callback){ $('#save-contact-sure-btn').prop('disabled', false) $('#save-contact-sure-btn').removeClass('disabled-btn') if (callback.success) { TeacherSelect.isChangeContact = true showMessage('success', callback.msg) } else { showMessage('error', callback.msg) } }); } } else { showMessage('error', '鍚嶅瓧涓嶅厑璁镐负绌猴紒'); $(".save-contact-input input").focus(); } }) }; // 灞曠ず鍥炶繑鏁版嵁 function showHasSelect() { // loading 鍔犺浇 $('.result-loading').show() var teacher = TeacherSelect.backTeacher var group = TeacherSelect.backGroup var sbackDate = { teacher: JSON.stringify(teacher), group: JSON.stringify(group), idType: that.dataType } var sbackUrl = '/common_selector/echo/list.do' commonRequest(sbackDate, sbackUrl, function (data) { var hasSelectData = data.data var old = hasSelectData that.oldMes = that.oldMes.concat(old) TeacherSelect.result = hasSelectData // 鐩戝惉缁撴灉闆嗙殑鍙樺寲 TeacherSelect.selectResult = hasSelectData; watchResultChange(true); filterBackResult(data.data) $('.result-loading').hide() // hasSelectData 涔嬪墠閫変腑鐨刬d瀵瑰簲杩斿洖鐨勫畬鏁存暟鎹 if (hasSelectData && hasSelectData.length > 0) { $.each(hasSelectData, function(i, itemData) { if (itemData.type === 'member') { var Tname = '' if (itemData.name.indexOf("(") === -1) { Tname = itemData.name } else { Tname = itemData.name.slice(0, itemData.name.indexOf("(")) } $('.select-result-show-body').append('' + Tname + ''); // result.push({'id': teacher.id, 'name': teacher.name, 'schoolId': teacher.schoolId, 'type': 'teacher', 'no': teacher.no, 'userId': teacher.userId, 'schoolName': teacher.schoolName, 'ssbmmc': teacher.ssbmmc, 'ssbm': teacher.ssbm}); } else if (itemData.type === 'school') { $('.select-result-show-body').append('' + itemData.text + ''); } else if (itemData.type === 'department') { $('.select-result-show-body').append('' + itemData.schoolname + '-' + itemData.text + ''); } else if (itemData.type === 'structure') { $('.select-result-show-body').append('' + itemData.text + ''); } // else if (itemData.type === 'post') { // $('.select-result-show-body').append('' + itemData.name + ''); // } }) } }) }; /** * 鐩戝惉閫夋嫨缁撴灉闆嗘暟缁勭殑鍙樺寲锛屽悓姝ュ皢鍏跺彉鍖栨斁鍏ュ凡閫夌粨鏋滅殑鎬婚泦鍚堜腑 */ function watchResultChange (flag) { var d = debounce(updateTotalInfo, 400); TeacherSelect.result.push = function () { Array.prototype.push.apply(TeacherSelect.result, arguments); d.debounced(); } TeacherSelect.result.splice = function () { Array.prototype.splice.apply(TeacherSelect.result, arguments); d.debounced(); } if (flag) { d.debounced() } } // 闇€瑕佸鐞嗘壒閲忔坊鍔犵殑鏃跺€欏ぇ閲忚Е鍙戣鏂规硶鐨勯棶棰橈紝 function updateTotalInfo () { // console.log('update', TeacherSelect.result.length) // member,post琚涓烘槸浜 // department閮ㄩ棬 // school鏄鏍 var schoolNumber = 0, departNumber = 0, memberNumber = 0; TeacherSelect.result.forEach(function (item) { switch (item.type) { case 'member': case 'post': memberNumber++; break; case 'school': schoolNumber++; break; case 'department': departNumber++; break; default: console && console.log('other type ' + item.type) } }) var html = '' + (memberNumber ? memberNumber + '涓敤鎴? : '') + '' + '' + (departNumber ? departNumber + '涓儴闂? : '') + '' + '' + (schoolNumber ? schoolNumber + '涓鏍? : '') + ''; $('#result-total-info').html(html); } function debounce (fn, timer) { var t; return { debounced: function () { if (t) { clearTimeout(t) } t = setTimeout(function () { fn() }, timer) } } } // 灏唖howHasSelect 杩斿洖鐨勬暟鎹垎绫诲鐞 function filterBackResult (data) { TeacherSelect.filterResult.teachers = [] TeacherSelect.filterResult.school = [] TeacherSelect.filterResult.department = [] TeacherSelect.filterResult.post = [] TeacherSelect.filterResult.structure = [] if (data.length > 0) { $.each(data, function (i, item) { if (item.type === 'member') { TeacherSelect.filterResult.teachers.push(item) } else if (item.type === 'school') { TeacherSelect.filterResult.school.push(item) } else if (item.type === 'department') { TeacherSelect.filterResult.department.push(item) } else if (item.type === 'post') { TeacherSelect.filterResult.post.push(item) } else if (item.type === 'structure') { TeacherSelect.filterResult.structure.push(item) } }) } } /** **** 淇濆瓨鍒伴€氳褰曠殑鎿嶄綔 **/ function saveToContactBtn() { // 鐐瑰嚮淇濆瓨閫氳褰曟寜閽 $('body').on('click', '#save-select-book', function() { toShowSaveContent(true); }) $('body').on('click', '#close-save-contact', function() { toShowSaveContent(false); }) $('body').on('click', '#save-contact-cancal-btn', function() { toShowSaveContent(false); }) $('body').on('click', '.save-body-shade', function() { toShowSaveContent(false); }) function toShowSaveContent(isShow) { if (isShow) { $('#save-contact-moudel').animate({ height: '100%' }, 200); $('#save-contact-main').show(); } else { $('#save-contact-moudel').animate({ height: '0%' }, 200); $('#save-contact-main').hide(); $(".save-contact-input input").attr("value",""); $('#save-contact-sure-btn').prop('disabled', false) $('#save-contact-sure-btn').removeClass('disabled-btn') $('#common-message').animate({ opacity: '0' }, 200) $('.save-contact-input input').css('border-color', '#ccc') $('#common-message').css('opacity', '0') } } }; // 鐐瑰嚮纭畾鎸夐挳灏嗘墍閫夋嫨鐨勬暟鎹繘琛屼繚瀛 function saveSelectDate() { if (that.resultid !== '' && that.resultid !== null) { var sData = { resultid: that.resultid, resultjson: JSON.stringify(TeacherSelect.selectResult) } var sUrl = '/common_selector/teacherSelectedResult/save.do' commonRequest(sData, sUrl, function (backDate) { }) } } // 灞曠ず鎻愮ず淇℃伅 function showMessage(status, text) { $('#common-message span').html(text) if (status === 'success') { $('#common-message > span').css('color', '#468847') // 鎴愬姛鍚庡皢鍏ㄥ眬鐨刬sChangeContact 鏀逛负true: 閫氳褰曟洿鏂伴渶瑕侀噸鏂拌姹 // isChangeContact = true } else if (status === 'error') { $('.save-contact-input input').css('border-color', '#b94a48') $('#common-message > span').css('color', '#b94a48') } else if (status === 'warning') { $('#common-message > span').css('color', '#3a87ad') } $('#common-message').animate({ opacity: '1' }, 200) setTimeout(function() { if (status === 'success') { $(".save-contact-input input").attr("value",""); $('#save-contact-moudel').animate({ height: '0' }, 200); $('#save-contact-main').hide(); $('.save-contact-input input').css('border-color', '#ccc') $('#common-message').css('opacity', '0') toShowSelectBodys('contact') } }, 1000) // if (status !== 'warning') { // setTimeout(function(){ // $('#common-message').animate({ // opacity: '0' // }, 200) // }, 2000) // } }; // 鍒ゆ柇涔嬪墠鏄惁瀹氫箟杩囦簡鏂规硶 if (window.hasOpen) { } else { window.hasOpen = true inIt() }; //鍒濆鍖栨柟娉 function inIt() { expandedTree() showMoreSchool() selectDistrict() selectInputCheckTogger() removeSelected() commonfilterMsg() searchCommon() toBackResult() toSaveContact() saveToContactBtn() }; // 鑾峰彇瀛︾锛堟殏鏈娇鐢級 function getSubjectTrees(callback){ $.ajax({ url: '/selector/subjects.do', type: "post", // headers: { // 'Authorization': "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJhMzQ4NWE5MDNjOTA0YzMyYjMwNjNhMTk5MzUwZTZiYSIsImlhdCI6MTUyNjcxNDQ2OCwiZXhwIjoxNTI3MzE5MjY4fQ.sEp-sQmC0MGCM1PeLoDlI_C1jk9iqA61aXgOdNjVe4M" // }, dataType: 'JSON', data: { }, success: function (data) { callback(data); } }) }; /* * 鍏辩敤鐨勮姹 * data: object璇锋眰鍙傛暟 * url: string璇锋眰url * callback: 璇锋眰杩斿洖鐨勬暟鎹 */ function commonRequest (data, url, callback, errorback) { // if (!hasRequesting) { var prefix = '?_time=' + new Date().getTime(); url = url + prefix // hasRequesting = true $.ajax({ url: url, type: "post", dataType: 'JSON', data: data, success: function (data) { callback(data); // hasRequesting = false }, error: function (data) { errorback() } }) // } }; }; });