| 1 |
- {"remainingRequest":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js!E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js??ref--0-2!E:\\item\\newItem\\admin\\src\\components\\freightTemplate\\city.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\item\\newItem\\admin\\src\\components\\freightTemplate\\city.vue","mtime":1677828270148},{"path":"E:\\item\\newItem\\admin\\babel.config.js","mtime":1677828270071},{"path":"E:\\item\\newItem\\admin\\.babelrc","mtime":1677828270070},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js","mtime":1570440814000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMubnVtYmVyLmNvbnN0cnVjdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL3dlYi5kb20tY29sbGVjdGlvbnMuZm9yLWVhY2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5mdW5jdGlvbi5uYW1lLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KaW1wb3J0IHsgbWFwU3RhdGUgfSBmcm9tICd2dWV4JzsKaW1wb3J0IHsgdGVtcGxhdGVzQ2l0eUxpc3RBcGkgfSBmcm9tICdAL2FwaS9zZXR0aW5nJzsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdjaXR5JywKICBwcm9wczogewogICAgdHlwZTogewogICAgICB0eXBlOiBOdW1iZXIsCiAgICAgIGRlZmF1bHQ6IDAKICAgIH0sCiAgICBzZWxlY3RBcnI6IHsKICAgICAgdHlwZTogQXJyYXksCiAgICAgIGRlZmF1bHQ6IFtdCiAgICB9CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgaVNzZWxlY3Q6IGZhbHNlLAogICAgICBhZGRyZXNzTW9kYWw6IGZhbHNlLAogICAgICBjaXR5TGlzdDogW10sCiAgICAgIGFjdGl2ZUNpdHk6IC0xLAogICAgICBsb2FkaW5nOiBmYWxzZQogICAgfTsKICB9LAogIGNvbXB1dGVkOiB7fSwKICBtZXRob2RzOiB7CiAgICBlbnRlcjogZnVuY3Rpb24gZW50ZXIoaW5kZXgpIHsKICAgICAgdGhpcy5hY3RpdmVDaXR5ID0gaW5kZXg7CiAgICB9LAogICAgbGVhdmU6IGZ1bmN0aW9uIGxlYXZlKCkgewogICAgICB0aGlzLmFjdGl2ZUNpdHkgPSBudWxsOwogICAgfSwKICAgIGdldENpdHlMaXN0OiBmdW5jdGlvbiBnZXRDaXR5TGlzdCgpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKCiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7CiAgICAgIHRlbXBsYXRlc0NpdHlMaXN0QXBpKCkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICAgIF90aGlzLnNlbGVjdEFyciA9IFtdOwogICAgICAgIHJlcy5kYXRhLmZvckVhY2goZnVuY3Rpb24gKGVsLCBpbmRleCwgYXJyKSB7CiAgICAgICAgICBlbC5pc1Nob3cgPSB0cnVlOwogICAgICAgICAgZWwuY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbiAoY2hpbGQsIGopIHsKICAgICAgICAgICAgY2hpbGQuaXNTaG93ID0gdHJ1ZTsKCiAgICAgICAgICAgIGlmIChfdGhpcy5zZWxlY3RBcnIubGVuZ3RoID4gMCkgewogICAgICAgICAgICAgIF90aGlzLnNlbGVjdEFyci5mb3JFYWNoKGZ1bmN0aW9uIChzZWwsIHNpbmRleCkgewogICAgICAgICAgICAgICAgc2VsLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24gKHNpdGVtLCBzaikgewogICAgICAgICAgICAgICAgICBpZiAoY2hpbGQuY2l0eV9pZCA9PSBzaXRlbS5jaXR5X2lkKSB7CiAgICAgICAgICAgICAgICAgICAgY2hpbGQuaXNTaG93ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICByZXMuZGF0YS5mb3JFYWNoKGZ1bmN0aW9uIChlbCwgaW5kZXgsIGFycikgewogICAgICAgICAgdmFyIG51bSA9IDA7CiAgICAgICAgICB2YXIgb2xkTnVtID0gMDsKICAgICAgICAgIGVsLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24gKGNoaWxkLCBqKSB7CiAgICAgICAgICAgIGlmICghY2hpbGQuaXNTaG93KSB7CiAgICAgICAgICAgICAgbnVtKys7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgb2xkTnVtKys7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwoKICAgICAgICAgIGlmIChudW0gPT0gZWwuY2hpbGRyZW4ubGVuZ3RoKSB7CiAgICAgICAgICAgIGVsLmlzU2hvdyA9IGZhbHNlOwogICAgICAgICAgfQoKICAgICAgICAgIGVsLmNoaWxkTnVtID0gb2xkTnVtOwogICAgICAgIH0pOwogICAgICAgIF90aGlzLmNpdHlMaXN0ID0gcmVzLmRhdGE7CiAgICAgIH0pOwogICAgfSwKCiAgICAvKioNCiAgICAgKiDlhajpgInmiJbogIXlj43pgIkNCiAgICAgKiBAcGFyYW0gY2hlY2tlZA0KICAgICAqLwogICAgYWxsQ2hlY2tib3g6IGZ1bmN0aW9uIGFsbENoZWNrYm94KCkgewogICAgICB2YXIgdGhhdCA9IHRoaXMsCiAgICAgICAgICBjaGVja2VkID0gdGhpcy5pU3NlbGVjdDsKICAgICAgdGhhdC5jaXR5TGlzdC5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBrZXkpIHsKICAgICAgICB0aGF0LiRzZXQodGhhdC5jaXR5TGlzdFtrZXldLCAnY2hlY2tlZCcsIGNoZWNrZWQpOwoKICAgICAgICBpZiAoY2hlY2tlZCkgewogICAgICAgICAgdGhhdC4kc2V0KHRoYXQuY2l0eUxpc3Rba2V5XSwgJ2NvdW50JywgdGhhdC5jaXR5TGlzdFtrZXldLmNoaWxkcmVuLmxlbmd0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoYXQuJHNldCh0aGF0LmNpdHlMaXN0W2tleV0sICdjb3VudCcsIDApOwogICAgICAgIH0KCiAgICAgICAgdGhhdC5jaXR5TGlzdFtrZXldLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24gKHZhbCwgaykgewogICAgICAgICAgdGhhdC4kc2V0KHRoYXQuY2l0eUxpc3Rba2V5XS5jaGlsZHJlbltrXSwgJ2NoZWNrZWQnLCBjaGVja2VkKTsKICAgICAgICB9KTsKICAgICAgfSk7IC8vIHRoaXMucmVuZGVyKCk7CiAgICB9LAogICAgLy8g5riF56m677ybCiAgICBlbXB0eTogZnVuY3Rpb24gZW1wdHkoKSB7CiAgICAgIHZhciB0aGF0ID0gdGhpczsKICAgICAgdGhhdC5jaXR5TGlzdC5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBrZXkpIHsKICAgICAgICB0aGF0LiRzZXQodGhhdC5jaXR5TGlzdFtrZXldLCAnY2hlY2tlZCcsIGZhbHNlKTsKICAgICAgICB0aGF0LmNpdHlMaXN0W2tleV0uY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbiAodmFsLCBrKSB7CiAgICAgICAgICB0aGF0LiRzZXQodGhhdC5jaXR5TGlzdFtrZXldLmNoaWxkcmVuW2tdLCAnY2hlY2tlZCcsIGZhbHNlKTsKICAgICAgICB9KTsKICAgICAgICB0aGF0LiRzZXQodGhhdC5jaXR5TGlzdFtrZXldLCAnY291bnQnLCAwKTsKICAgICAgfSk7CiAgICAgIHRoaXMuaVNzZWxlY3QgPSBmYWxzZTsKICAgIH0sCgogICAgLyoqDQogICAgICog54K55Ye755yBDQogICAgICogQHBhcmFtIGluZGV4DQogICAgICovCiAgICBjaGVja2VkQ2xpY2s6IGZ1bmN0aW9uIGNoZWNrZWRDbGljayhpbmRleCkgewogICAgICB2YXIgdGhhdCA9IHRoaXM7CgogICAgICBpZiAodGhhdC5jaXR5TGlzdFtpbmRleF0uY2hlY2tlZCkgewogICAgICAgIHRoYXQuJHNldCh0aGF0LmNpdHlMaXN0W2luZGV4XSwgJ2NvdW50JywgdGhhdC5jaXR5TGlzdFtpbmRleF0uY2hpbGROdW0pOwogICAgICAgIHRoYXQuY2l0eUxpc3RbaW5kZXhdLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0sIGtleSkgewogICAgICAgICAgdGhhdC4kc2V0KHRoYXQuY2l0eUxpc3RbaW5kZXhdLmNoaWxkcmVuW2tleV0sICdjaGVja2VkJywgdHJ1ZSk7CiAgICAgICAgfSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhhdC4kc2V0KHRoYXQuY2l0eUxpc3RbaW5kZXhdLCAnY291bnQnLCAwKTsKICAgICAgICB0aGF0LiRzZXQodGhhdC5jaXR5TGlzdFtpbmRleF0sICdjaGVja2VkJywgZmFsc2UpOwogICAgICAgIHRoYXQuY2l0eUxpc3RbaW5kZXhdLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0sIGtleSkgewogICAgICAgICAgdGhhdC4kc2V0KHRoYXQuY2l0eUxpc3RbaW5kZXhdLmNoaWxkcmVuW2tleV0sICdjaGVja2VkJywgZmFsc2UpOwogICAgICAgIH0pOwogICAgICAgIHRoYXQuaVNzZWxlY3QgPSBmYWxzZTsKICAgICAgfSAvLyB0aGlzLnJlbmRlcigpOwoKICAgIH0sCgogICAgLyoqDQogICAgICog54K55Ye75biC5Yy6DQogICAgICogQHBhcmFtIGluZGV4DQogICAgICogQHBhcmFtIGluZA0KICAgICAqLwogICAgcHJpbWFyeTogZnVuY3Rpb24gcHJpbWFyeShpbmRleCwgaW5kKSB7CiAgICAgIHZhciBjaGVja2VkID0gZmFsc2UsCiAgICAgICAgICBjb3VudCA9IDA7CiAgICAgIHRoaXMuY2l0eUxpc3RbaW5kZXhdLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0sIGtleSkgewogICAgICAgIGlmIChpdGVtLmNoZWNrZWQpIHsKICAgICAgICAgIGNoZWNrZWQgPSB0cnVlOwogICAgICAgICAgY291bnQrKzsKICAgICAgICB9CiAgICAgIH0pOwogICAgICB0aGlzLiRzZXQodGhpcy5jaXR5TGlzdFtpbmRleF0sICdjb3VudCcsIGNvdW50KTsKICAgICAgdGhpcy4kc2V0KHRoaXMuY2l0eUxpc3RbaW5kZXhdLCAnY2hlY2tlZCcsIGNoZWNrZWQpOyAvLyB0aGlzLnJlbmRlcigpOwogICAgfSwKICAgIC8vIOehruWumjsKICAgIGNvbmZpcm06IGZ1bmN0aW9uIGNvbmZpcm0oKSB7CiAgICAgIHZhciB0aGF0ID0gdGhpczsgLy8g6KKr6YCJ5Lit55qE55yB5biC77ybCgogICAgICB2YXIgc2VsZWN0TGlzdCA9IFtdOwogICAgICB0aGF0LmNpdHlMaXN0LmZvckVhY2goZnVuY3Rpb24gKGl0ZW0sIGtleSkgewogICAgICAgIHZhciBkYXRhID0ge307CgogICAgICAgIGlmIChpdGVtLmNoZWNrZWQpIHsKICAgICAgICAgIGRhdGEgPSB7CiAgICAgICAgICAgIG5hbWU6IGl0ZW0ubmFtZSwKICAgICAgICAgICAgY2l0eV9pZDogaXRlbS5jaXR5X2lkLAogICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgIH07CiAgICAgICAgfQoKICAgICAgICB0aGF0LmNpdHlMaXN0W2tleV0uY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbiAoaSwgaykgewogICAgICAgICAgaWYgKGkuY2hlY2tlZCkgewogICAgICAgICAgICBkYXRhLmNoaWxkcmVuLnB1c2goewogICAgICAgICAgICAgIGNpdHlfaWQ6IGkuY2l0eV9pZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKCiAgICAgICAgaWYgKGRhdGEuY2l0eV9pZCAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICBzZWxlY3RMaXN0LnB1c2goZGF0YSk7CiAgICAgICAgfQogICAgICB9KTsKCiAgICAgIGlmIChzZWxlY3RMaXN0Lmxlbmd0aCA9PT0gMCkgewogICAgICAgIHJldHVybiB0aGF0LiRNZXNzYWdlLmVycm9yKCfoh7PlsJHpgInmi6nkuIDkuKrnnIHku73miJbogIXln47luIInKTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLiRlbWl0KCdzZWxlY3RDaXR5Jywgc2VsZWN0TGlzdCwgdGhpcy50eXBlKTsKICAgICAgICB0aGF0LmFkZHJlc3NNb2RhbCA9IGZhbHNlOwogICAgICAgIHRoaXMuY2l0eUxpc3QgPSBbXTsKICAgICAgfSAvLyBwYXJlbnQuc2VsZWN0Q2l0eShzZWxlY3RMaXN0LHR5cGUpOwogICAgICAvLyB2YXIgaW5kZXggPSBwYXJlbnQubGF5ZXIuZ2V0RnJhbWVJbmRleCh3aW5kb3cubmFtZSk7CiAgICAgIC8vIHBhcmVudC5sYXllci5jbG9zZShpbmRleCk7CgogICAgfSwKICAgIGNsb3NlOiBmdW5jdGlvbiBjbG9zZSgpIHsKICAgICAgdGhpcy5hZGRyZXNzTW9kYWwgPSBmYWxzZTsKICAgICAgdGhpcy5jaXR5TGlzdCA9IFtdOwogICAgfQogIH0sCiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHsvLyB0aGlzLmdldENpdHlMaXN0KCk7CiAgfQp9Ow=="},{"version":3,"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DA;AACA;AACA;EACAA,YADA;EAEAC;IACAC;MACAA,YADA;MAEAC;IAFA,CADA;IAKAC;MACAF,WADA;MAEAC;IAFA;EALA,CAFA;EAYAE,IAZA,kBAYA;IACA;MACAC,eADA;MAEAC,mBAFA;MAGAC,YAHA;MAIAC,cAJA;MAKAC;IALA;EAOA,CApBA;EAqBAC,YArBA;EAsBAC;IACAC,KADA,iBACAC,KADA,EACA;MACA;IACA,CAHA;IAIAC,KAJA,mBAIA;MACA;IACA,CANA;IAOAC,WAPA,yBAOA;MAAA;;MACA;MACAC;QACA;QACA;QACAC;UACAC;UACAA;YACAC;;YACA;cACA;gBACAC;kBACA;oBACAD;kBACA;gBACA,CAJA;cAKA,CANA;YAOA;UACA,CAXA;QAYA,CAdA;QAeAF;UACA;UACA;UACAC;YACA;cACAG;YACA,CAFA,MAEA;cACAC;YACA;UACA,CANA;;UAOA;YACAJ;UACA;;UACAA;QACA,CAdA;QAeA;MACA,CAlCA;IAmCA,CA5CA;;IA6CA;AACA;AACA;AACA;IACAK;MACA;MAAA,IACAC,uBADA;MAEAC;QACAA;;QACA;UACAA;QACA,CAFA,MAEA;UACAA;QACA;;QACAA;UACAA;QACA,CAFA;MAGA,CAVA,EAHA,CAcA;IACA,CAhEA;IAiEA;IACAC,KAlEA,mBAkEA;MACA;MACAD;QACAA;QACAA;UACAA;QACA,CAFA;QAGAA;MACA,CANA;MAOA;IACA,CA5EA;;IA6EA;AACA;AACA;AACA;IACAE;MACA;;MACA;QACAF;QACAA;UACAA;QACA,CAFA;MAGA,CALA,MAKA;QACAA;QACAA;QACAA;UACAA;QACA,CAFA;QAGAA;MACA,CAdA,CAeA;;IACA,CAjGA;;IAkGA;AACA;AACA;AACA;AACA;IACAG;MACA;MAAA,IACAC,SADA;MAEA;QACA;UACAL;UACAK;QACA;MACA,CALA;MAMA;MACA,oDAVA,CAWA;IACA,CAnHA;IAoHA;IACAC,OArHA,qBAqHA;MACA,gBADA,CAEA;;MACA;MACAL;QACA;;QACA;UACArB;YACAL,eADA;YAEAgC,qBAFA;YAGAC;UAHA;QAKA;;QACAP;UACA;YACArB;cACA2B;YADA;UAGA;QACA,CANA;;QAOA;UACAE;QACA;MACA,CAnBA;;MAoBA;QACA;MACA,CAFA,MAEA;QACA;QACAR;QACA;MACA,CA9BA,CA+BA;MACA;MACA;;IACA,CAvJA;IAwJAS,KAxJA,mBAwJA;MACA;MACA;IACA;EA3JA,CAtBA;EAmLAC,OAnLA,qBAmLA,CACA;EACA;AArLA","names":["name","props","type","default","selectArr","data","iSselect","addressModal","cityList","activeCity","loading","computed","methods","enter","index","leave","getCityList","templatesCityListApi","res","el","child","sel","num","oldNum","allCheckbox","checked","that","empty","checkedClick","primary","count","confirm","city_id","children","selectList","close","mounted"],"sourceRoot":"src/components/freightTemplate","sources":["city.vue"],"sourcesContent":["<template>\r\n <div>\r\n <Modal v-model=\"addressModal\" title=\"选择可配送区域\" width=\"50%\" class=\"modal\" :mask=\"true\">\r\n <Row :gutter=\"24\" type=\"flex\">\r\n <Col :xl=\"24\" :lg=\"24\" :md=\"24\" :sm=\"24\" :xs=\"24\" class=\"item\">\r\n <div class=\"acea-row row-right row-middle\">\r\n <Checkbox v-model=\"iSselect\" @on-change=\"allCheckbox\">全选</Checkbox>\r\n <div class=\"empty\" @click=\"empty\">清空</div>\r\n </div>\r\n </Col>\r\n </Row>\r\n <Row :gutter=\"24\" type=\"flex\" :loading=\"loading\">\r\n <Col\r\n :xl=\"6\"\r\n :lg=\"6\"\r\n :md=\"6\"\r\n :sm=\"8\"\r\n :xs=\"6\"\r\n class=\"item\"\r\n v-for=\"(item, index) in cityList\"\r\n :key=\"index\"\r\n v-if=\"item.isShow\"\r\n >\r\n <div @mouseenter=\"enter(index)\" @mouseleave=\"leave()\">\r\n <Checkbox v-model=\"item.checked\" :label=\"item.name\" @on-change=\"checkedClick(index)\">{{\r\n item.name\r\n }}</Checkbox\r\n ><span class=\"red\">({{ (item.count || 0) + '/' + item.childNum }})</span>\r\n <div class=\"city\" v-show=\"activeCity === index\">\r\n <div class=\"checkBox\">\r\n <div class=\"arrow\"></div>\r\n <div>\r\n <Checkbox\r\n v-model=\"city.checked\"\r\n :label=\"city.name\"\r\n @on-change=\"primary(index, indexn)\"\r\n class=\"itemn\"\r\n v-for=\"(city, indexn) in item.children\"\r\n :key=\"indexn\"\r\n v-show=\"city.isShow\"\r\n >{{ city.name }}</Checkbox\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </Col>\r\n </Row>\r\n <div slot=\"footer\">\r\n <Button @click=\"close\">取消</Button>\r\n <Button type=\"primary\" @click=\"confirm\">确定</Button>\r\n </div>\r\n <Spin size=\"large\" fix v-if=\"loading\"></Spin>\r\n </Modal>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapState } from 'vuex';\r\nimport { templatesCityListApi } from '@/api/setting';\r\nexport default {\r\n name: 'city',\r\n props: {\r\n type: {\r\n type: Number,\r\n default: 0,\r\n },\r\n selectArr: {\r\n type: Array,\r\n default: [],\r\n },\r\n },\r\n data() {\r\n return {\r\n iSselect: false,\r\n addressModal: false,\r\n cityList: [],\r\n activeCity: -1,\r\n loading: false,\r\n };\r\n },\r\n computed: {},\r\n methods: {\r\n enter(index) {\r\n this.activeCity = index;\r\n },\r\n leave() {\r\n this.activeCity = null;\r\n },\r\n getCityList() {\r\n this.loading = true;\r\n templatesCityListApi().then((res) => {\r\n this.loading = false;\r\n this.selectArr = [];\r\n res.data.forEach((el, index, arr) => {\r\n el.isShow = true;\r\n el.children.forEach((child, j) => {\r\n child.isShow = true;\r\n if (this.selectArr.length > 0) {\r\n this.selectArr.forEach((sel, sindex) => {\r\n sel.children.forEach((sitem, sj) => {\r\n if (child.city_id == sitem.city_id) {\r\n child.isShow = false;\r\n }\r\n });\r\n });\r\n }\r\n });\r\n });\r\n res.data.forEach((el, index, arr) => {\r\n let num = 0;\r\n let oldNum = 0;\r\n el.children.forEach((child, j) => {\r\n if (!child.isShow) {\r\n num++;\r\n } else {\r\n oldNum++;\r\n }\r\n });\r\n if (num == el.children.length) {\r\n el.isShow = false;\r\n }\r\n el.childNum = oldNum;\r\n });\r\n this.cityList = res.data;\r\n });\r\n },\r\n /**\r\n * 全选或者反选\r\n * @param checked\r\n */\r\n allCheckbox: function () {\r\n let that = this,\r\n checked = this.iSselect;\r\n that.cityList.forEach(function (item, key) {\r\n that.$set(that.cityList[key], 'checked', checked);\r\n if (checked) {\r\n that.$set(that.cityList[key], 'count', that.cityList[key].children.length);\r\n } else {\r\n that.$set(that.cityList[key], 'count', 0);\r\n }\r\n that.cityList[key].children.forEach(function (val, k) {\r\n that.$set(that.cityList[key].children[k], 'checked', checked);\r\n });\r\n });\r\n // this.render();\r\n },\r\n // 清空;\r\n empty() {\r\n let that = this;\r\n that.cityList.forEach(function (item, key) {\r\n that.$set(that.cityList[key], 'checked', false);\r\n that.cityList[key].children.forEach(function (val, k) {\r\n that.$set(that.cityList[key].children[k], 'checked', false);\r\n });\r\n that.$set(that.cityList[key], 'count', 0);\r\n });\r\n this.iSselect = false;\r\n },\r\n /**\r\n * 点击省\r\n * @param index\r\n */\r\n checkedClick: function (index) {\r\n let that = this;\r\n if (that.cityList[index].checked) {\r\n that.$set(that.cityList[index], 'count', that.cityList[index].childNum);\r\n that.cityList[index].children.forEach(function (item, key) {\r\n that.$set(that.cityList[index].children[key], 'checked', true);\r\n });\r\n } else {\r\n that.$set(that.cityList[index], 'count', 0);\r\n that.$set(that.cityList[index], 'checked', false);\r\n that.cityList[index].children.forEach(function (item, key) {\r\n that.$set(that.cityList[index].children[key], 'checked', false);\r\n });\r\n that.iSselect = false;\r\n }\r\n // this.render();\r\n },\r\n /**\r\n * 点击市区\r\n * @param index\r\n * @param ind\r\n */\r\n primary: function (index, ind) {\r\n let checked = false,\r\n count = 0;\r\n this.cityList[index].children.forEach(function (item, key) {\r\n if (item.checked) {\r\n checked = true;\r\n count++;\r\n }\r\n });\r\n this.$set(this.cityList[index], 'count', count);\r\n this.$set(this.cityList[index], 'checked', checked);\r\n // this.render();\r\n },\r\n // 确定;\r\n confirm() {\r\n let that = this;\r\n // 被选中的省市;\r\n let selectList = [];\r\n that.cityList.forEach(function (item, key) {\r\n let data = {};\r\n if (item.checked) {\r\n data = {\r\n name: item.name,\r\n city_id: item.city_id,\r\n children: [],\r\n };\r\n }\r\n that.cityList[key].children.forEach(function (i, k) {\r\n if (i.checked) {\r\n data.children.push({\r\n city_id: i.city_id,\r\n });\r\n }\r\n });\r\n if (data.city_id !== undefined) {\r\n selectList.push(data);\r\n }\r\n });\r\n if (selectList.length === 0) {\r\n return that.$Message.error('至少选择一个省份或者城市');\r\n } else {\r\n this.$emit('selectCity', selectList, this.type);\r\n that.addressModal = false;\r\n this.cityList = [];\r\n }\r\n // parent.selectCity(selectList,type);\r\n // var index = parent.layer.getFrameIndex(window.name);\r\n // parent.layer.close(index);\r\n },\r\n close() {\r\n this.addressModal = false;\r\n this.cityList = [];\r\n },\r\n },\r\n mounted() {\r\n // this.getCityList();\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"stylus\">\r\n.modal .item {\r\n margin-bottom: 20px;\r\n}\r\n\r\n.modal .item .city {\r\n position: absolute;\r\n z-index: 9;\r\n top: 17px;\r\n width: 100%;\r\n padding-top: 18px;\r\n}\r\n\r\n.modal .item .city .checkBox {\r\n width: 97%;\r\n padding: 10px;\r\n border: 1px solid #eee;\r\n background-color: #fff;\r\n max-height: 100px;\r\n overflow-x: hidden;\r\n overflow-y: auto;\r\n}\r\n\r\n.modal .item .city .checkBox .arrow {\r\n position: absolute;\r\n top: 3px;\r\n width: 0;\r\n height: 0;\r\n border: 8px solid transparent;\r\n border-bottom-color: #ddd;\r\n}\r\n\r\n.modal .item .city .checkBox .arrow:before {\r\n position: absolute;\r\n bottom: -8px;\r\n right: -7px;\r\n content: '';\r\n width: 0;\r\n height: 0;\r\n border: 7px solid transparent;\r\n border-bottom-color: #fff;\r\n}\r\n\r\n.modal .item .city .checkBox .itemn {\r\n margin-bottom: 10px;\r\n}\r\n\r\n.radio {\r\n padding: 5px 0;\r\n font-size: 14px !important;\r\n}\r\n\r\n.red {\r\n color: #ff0000;\r\n}\r\n\r\n.empty {\r\n cursor: pointer;\r\n}\r\n</style>\r\n"]}]}
|