| 1 |
- {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js!D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\setting\\notification\\notificationEdit.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\setting\\notification\\notificationEdit.vue","mtime":1761614939057},{"path":"D:\\front\\item\\zyAdmin\\babel.config.js","mtime":1761614925168},{"path":"D:\\front\\item\\zyAdmin\\.babelrc","mtime":1761614925165},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js","mtime":1761614927320},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1761614937402}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkubWFwLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkucHVzaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnNwbGljZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLmNvbnN0cnVjdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuaXRlcmF0b3IubWFwLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnJlZ2V4cC5leGVjLmpzIjsKaW1wb3J0IHsgZ2V0Tm90aWZpY2F0aW9uSW5mbywgZ2V0Tm90aWZpY2F0aW9uU2F2ZSB9IGZyb20gJ0AvYXBpL25vdGlmaWNhdGlvbi5qcyc7CmltcG9ydCBrZXlzTGlzdCBmcm9tICcuL2NvbXBvbmVudHMva2V5c0xpc3QudnVlJzsKZXhwb3J0IGRlZmF1bHQgewogIGNvbXBvbmVudHM6IHsKICAgIGtleXNMaXN0OiBrZXlzTGlzdAogIH0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIHRhYnM6IFt7CiAgICAgICAgdGl0bGU6ICfns7vnu5/pgJrnn6UnLAogICAgICAgIHNsb3Q6ICdpc19zeXN0ZW0nCiAgICAgIH0sIHsKICAgICAgICB0aXRsZTogJ+efreS/oemAmuefpScsCiAgICAgICAgc2xvdDogJ2lzX3NtcycKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn5b6u5L+h5qih5p2/5raI5oGvJywKICAgICAgICBzbG90OiAnaXNfd2VjaGF0JwogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICflvq7kv6HlsI/nqIvluo/mj5DphpInLAogICAgICAgIHNsb3Q6ICdpc19yb3V0aW5lJwogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICfkvIHkuJrlvq7kv6EnLAogICAgICAgIHNsb3Q6ICdpc19lbnRfd2VjaGF0JwogICAgICB9XSwKICAgICAgdGFic0xpc3Q6IFtdLAogICAgICBmb3JtRGF0YToge30sCiAgICAgIGlkOiAwLAogICAgICBsb2FkaW5nOiB0cnVlLAogICAgICB0YWdOYW1lOiAnaXNfc3lzdGVtJywKICAgICAgcnVsZVZhbGlkYXRlOiB7CiAgICAgICAgbmFtZTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+i+k+WFpemAmuefpeWcuuaZrycsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XSwKICAgICAgICB0aXRsZTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+i+k+WFpemAmuefpeWcuuaZrycsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XSwKICAgICAgICBjb250ZW50OiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl6YCa55+l5YaF5a65JywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH1dCiAgICAgIH0sCiAgICAgIGtleUxpc3Q6IFtdCiAgICB9OwogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHRoaXMuaWQgPSB0aGlzLiRyb3V0ZS5xdWVyeS5pZDsKICAgIHRoaXMuZ2V0RGF0YSh0aGlzLmlkLCB0aGlzLnRhZ05hbWUsIDEpOwogIH0sCiAgbWV0aG9kczogewogICAgaGFuZGxlQ29udGVudENoYW5nZTogZnVuY3Rpb24gaGFuZGxlQ29udGVudENoYW5nZShlKSB7CiAgICAgIGlmICh0aGlzLmZvcm1EYXRhLnR5cGVfbiA9PSAzKSB7CiAgICAgICAgdmFyIHJlZ2V4ID0gL3t7KC4qPylcLi9nOwogICAgICAgIHZhciBtYXRjaDsKICAgICAgICB0aGlzLmtleUxpc3QgPSBbXTsKICAgICAgICB3aGlsZSAobWF0Y2ggPSByZWdleC5leGVjKGUpKSB7CiAgICAgICAgICB0aGlzLmtleUxpc3QucHVzaCh7CiAgICAgICAgICAgIGtleTogbWF0Y2hbMV0sCiAgICAgICAgICAgIHZhbHVlOiAnJwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgaGFuZGxlUmVtb3ZlOiBmdW5jdGlvbiBoYW5kbGVSZW1vdmUoaW5kZXgpIHsKICAgICAgdGhpcy5rZXlMaXN0LnNwbGljZShpbmRleCwgMSk7CiAgICB9LAogICAgLy8g5paw5aKe5Y2h5a+GCiAgICBoYW5kbGVBZGQ6IGZ1bmN0aW9uIGhhbmRsZUFkZCgpIHsKICAgICAgdGhpcy5rZXlMaXN0LnB1c2goewogICAgICAgIGtleTogJycsCiAgICAgICAgdmFsdWU6ICcnCiAgICAgIH0pOwogICAgfSwKICAgIGNoYW5nZVRhYnM6IGZ1bmN0aW9uIGNoYW5nZVRhYnMoKSB7CiAgICAgIHRoaXMuZ2V0RGF0YSh0aGlzLmlkLCB0aGlzLnRhZ05hbWUpOwogICAgfSwKICAgIGdldERhdGE6IGZ1bmN0aW9uIGdldERhdGEoaWQsIG5hbWUsIGluaXQpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgdGhpcy5mb3JtRGF0YSA9IHt9OwogICAgICBnZXROb3RpZmljYXRpb25JbmZvKGlkLCBuYW1lKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBpZiAoIV90aGlzLnRhYnNMaXN0Lmxlbmd0aCkgewogICAgICAgICAgX3RoaXMudGFicy5tYXAoZnVuY3Rpb24gKHYpIHsKICAgICAgICAgICAgaWYgKHJlcy5kYXRhW3Yuc2xvdF0pIHsKICAgICAgICAgICAgICBfdGhpcy50YWJzTGlzdC5wdXNoKHYpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgaWYgKGluaXQpIF90aGlzLnRhZ05hbWUgPSBfdGhpcy50YWJzTGlzdFswXS5zbG90OwogICAgICAgIF90aGlzLmZvcm1EYXRhID0gcmVzLmRhdGE7CiAgICAgICAgX3RoaXMuZm9ybURhdGEudHlwZV9uID0gcmVzLmRhdGEudHlwZTsgLy8gLSAtIQogICAgICAgIF90aGlzLmZvcm1EYXRhLnR5cGUgPSBuYW1lOyAvLyDnsbvlnovlkI3np7AKICAgICAgICBfdGhpcy5mb3JtRGF0YS5pZCA9IGlkOwogICAgICAgIF90aGlzLmtleUxpc3QgPSByZXMuZGF0YS5rZXlfbGlzdCB8fCBbXTsKICAgICAgICBfdGhpcy5sb2FkaW5nID0gZmFsc2U7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICBfdGhpcy4kbWVzc2FnZS5lcnJvcihlcnIubXNnKTsKICAgICAgfSk7CiAgICB9LAogICAgaGFuZGxlU3VibWl0OiBmdW5jdGlvbiBoYW5kbGVTdWJtaXQobmFtZSkgewogICAgICB2YXIgX3RoaXMyID0gdGhpczsKICAgICAgdGhpcy5mb3JtRGF0YS5rZXlfbGlzdCA9IHRoaXMua2V5TGlzdDsKICAgICAgZ2V0Tm90aWZpY2F0aW9uU2F2ZSh0aGlzLmZvcm1EYXRhKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczIuJG1lc3NhZ2Uuc3VjY2Vzcygn6K6+572u5oiQ5YqfJyk7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICBfdGhpczIuJG1lc3NhZ2UuZXJyb3IoZXJyKTsKICAgICAgfSk7CiAgICB9LAogICAgaGFuZGxlUmVzZXQ6IGZ1bmN0aW9uIGhhbmRsZVJlc2V0KG5hbWUpIHsKICAgICAgdGhpcy4kZW1pdCgnY2xvc2UnKTsKICAgIH0sCiAgICBjaGFuZ2VWYWx1ZTogZnVuY3Rpb24gY2hhbmdlVmFsdWUoZSwgbmFtZSkgewogICAgICAvLyDojrflj5Zkb23lhYPntKAKICAgICAgdmFyIHRleHRJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG5hbWUpOwogICAgICAvLyDojrflj5blhYnmoIfliJ3lp4vntKLlvJUKICAgICAgdmFyIGluZGV4ID0gdGV4dElucHV0LnNlbGVjdGlvblN0YXJ0OwogICAgICAvLyDmi7zmjqXlrZfnrKbkuLLnmoTlvaLlvI/mnaXlvpfliLDpnIDopoHnmoTlhoXlrrkKICAgICAgdGhpcy5mb3JtRGF0YVtuYW1lXSA9IHRoaXMuZm9ybURhdGFbbmFtZV0uc3Vic3RyaW5nKDAsIGluZGV4KSArIGUgKyB0aGlzLmZvcm1EYXRhW25hbWVdLnN1YnN0cmluZyhpbmRleCk7CiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHsKICAgICAgICB0ZXh0SW5wdXQuc2VsZWN0aW9uU3RhcnQgPSBpbmRleCArIGUubGVuZ3RoOwogICAgICAgIHRleHRJbnB1dC5zZWxlY3Rpb25FbmQgPSBpbmRleCArIGUubGVuZ3RoOwogICAgICAgIHRleHRJbnB1dC5mb2N1cygpOwogICAgICB9KTsKICAgIH0KICB9Cn07"},{"version":3,"names":["getNotificationInfo","getNotificationSave","keysList","components","data","tabs","title","slot","tabsList","formData","id","loading","tagName","ruleValidate","name","required","message","trigger","content","keyList","created","$route","query","getData","methods","handleContentChange","e","type_n","regex","match","exec","push","key","value","handleRemove","index","splice","handleAdd","changeTabs","init","_this","then","res","length","map","v","type","key_list","catch","err","$message","error","msg","handleSubmit","_this2","success","handleReset","$emit","changeValue","textInput","document","getElementById","selectionStart","substring","$nextTick","selectionEnd","focus"],"sources":["src/pages/setting/notification/notificationEdit.vue"],"sourcesContent":["<template>\r\n <div class=\"edit\">\r\n <pages-header\r\n ref=\"pageHeader\"\r\n :title=\"$route.meta.title\"\r\n :backUrl=\"$routeProStr + '/setting/notification/index'\"\r\n ></pages-header>\r\n <div class=\"tabs mt16\">\r\n <el-row :gutter=\"32\">\r\n <el-col :span=\"32\" class=\"demo-tabs-style1\" style=\"padding: 16px\">\r\n <el-tabs v-model=\"tagName\" @tab-click=\"changeTabs\">\r\n <el-tab-pane v-for=\"(item, index) in tabsList\" :key=\"index\" :name=\"item.slot\" :label=\"item.title\">\r\n <el-form class=\"form-sty\" ref=\"formData\" :model=\"formData\" :rules=\"ruleValidate\" label-width=\"85px\">\r\n <div v-if=\"item.slot === 'is_system' && !loading\">\r\n <el-form-item label=\"通知标题:\">\r\n <el-input\r\n v-model=\"formData.system_title\"\r\n placeholder=\"请输入通知标题\"\r\n style=\"width: 500px\"\r\n ></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"通知内容:\">\r\n <div class=\"content\">\r\n <el-input\r\n ref=\"system_text\"\r\n id=\"system_text\"\r\n v-model=\"formData.system_text\"\r\n type=\"textarea\"\r\n :autosize=\"{ minRows: 5, maxRows: 8 }\"\r\n placeholder=\"请输入通知内容\"\r\n style=\"width: 500px\"\r\n >\r\n </el-input>\r\n <div class=\"value-list\" v-if=\"formData.type_n == 3\">\r\n <el-popover placement=\"right\" width=\"200\" trigger=\"click\">\r\n <div class=\"variable\">\r\n <div\r\n class=\"item\"\r\n v-db-click\r\n @click=\"changeValue(i.value, 'system_text')\"\r\n v-for=\"(i, index) in formData.custom_variable\"\r\n :key=\"index\"\r\n >\r\n {{ i.label }}\r\n </div>\r\n </div>\r\n\r\n <i class=\"el-icon-link\" slot=\"reference\"></i>\r\n </el-popover>\r\n </div>\r\n </div>\r\n <div class=\"tips-info\" v-if=\"formData.type_n == 3\">可点击右下角图标,插入自定义变量</div>\r\n </el-form-item>\r\n <el-form-item label=\"状态:\" prop=\"is_system\">\r\n <el-radio-group v-model=\"formData.is_system\">\r\n <el-radio :label=\"1\">开启</el-radio>\r\n <el-radio :label=\"2\">关闭</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n </div>\r\n <div v-if=\"item.slot === 'is_sms' && !loading\">\r\n <el-form-item label=\"短信模版ID:\">\r\n <el-input v-model=\"formData.sms_id\" placeholder=\"短信模版ID\" style=\"width: 500px\"></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"通知内容:\">\r\n <div class=\"content\">\r\n <el-input\r\n id=\"sms_text\"\r\n v-model=\"formData.sms_text\"\r\n type=\"textarea\"\r\n :disabled=\"formData.type_n != 3\"\r\n :autosize=\"{ minRows: 5, maxRows: 8 }\"\r\n placeholder=\"请输入通知内容\"\r\n style=\"width: 500px\"\r\n ></el-input>\r\n <div class=\"value-list\" v-if=\"formData.type_n == 3\">\r\n <el-popover placement=\"right\" width=\"200\" trigger=\"click\">\r\n <div class=\"variable\">\r\n <div\r\n class=\"item\"\r\n v-db-click\r\n @click=\"changeValue(i.value, 'sms_text')\"\r\n v-for=\"(i, index) in formData.custom_variable\"\r\n :key=\"index\"\r\n >\r\n {{ i.label }}\r\n </div>\r\n </div>\r\n\r\n <i class=\"el-icon-link\" slot=\"reference\"></i>\r\n </el-popover>\r\n </div>\r\n </div>\r\n <div class=\"tips-info\" v-if=\"formData.type_n == 3\">可点击右下角图标,插入自定义变量</div>\r\n </el-form-item>\r\n <el-form-item label=\"状态:\" prop=\"is_sms\">\r\n <el-radio-group v-model=\"formData.is_sms\">\r\n <el-radio :label=\"1\">开启</el-radio>\r\n <el-radio :label=\"2\">关闭</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n </div>\r\n <div v-else-if=\"item.slot === 'is_wechat' && !loading\">\r\n <el-form-item label=\"模板编号:\">\r\n <el-input\r\n v-model=\"formData.tempkey\"\r\n :disabled=\"formData.type_n !== 3\"\r\n placeholder=\"请输入通模板编号\"\r\n style=\"width: 500px\"\r\n ></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"模板ID:\">\r\n <el-input v-model=\"formData.tempid\" placeholder=\"请输入模板ID\" style=\"width: 500px\"></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"模板:\">\r\n <div class=\"content\">\r\n <el-input\r\n :disabled=\"formData.type_n !== 3\"\r\n v-model=\"formData.content\"\r\n type=\"textarea\"\r\n :autosize=\"{ minRows: 5, maxRows: 8 }\"\r\n placeholder=\"请输入模板\"\r\n style=\"width: 500px\"\r\n @input=\"handleContentChange\"\r\n ></el-input>\r\n </div>\r\n </el-form-item>\r\n <el-form-item label=\"字段:\" v-if=\"formData.type_n == 3 && keyList.length\">\r\n <div class=\"content\">\r\n <keys-list\r\n :key-list=\"keyList\"\r\n :variableList=\"formData.custom_variable\"\r\n @add=\"handleAdd\"\r\n @remove=\"handleRemove\"\r\n />\r\n </div>\r\n </el-form-item>\r\n <el-form-item label=\"跳转链接:\">\r\n <el-input\r\n v-model=\"formData.wechat_link\"\r\n placeholder=\"请输入模版跳转链接,可携带参数\"\r\n style=\"width: 500px\"\r\n ></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"跳转小程序:\" prop=\"wechat_to_routine\">\r\n <el-radio-group v-model=\"formData.wechat_to_routine\">\r\n <el-radio :label=\"1\">开启</el-radio>\r\n <el-radio :label=\"0\">关闭</el-radio>\r\n </el-radio-group>\r\n <div class=\"tips-info\">\r\n 开启之后,点击模版消息,跳转小程序对应的页面,需要小程序已经审核上线才可使用\r\n </div>\r\n </el-form-item>\r\n <el-form-item label=\"状态:\" prop=\"is_wechat\">\r\n <el-radio-group v-model=\"formData.is_wechat\">\r\n <el-radio :label=\"1\">开启</el-radio>\r\n <el-radio :label=\"2\">关闭</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n </div>\r\n <div v-else-if=\"item.slot === 'is_routine' && !loading\">\r\n <el-form-item label=\"模板编号:\">\r\n <el-input\r\n v-model=\"formData.tempkey\"\r\n :disabled=\"formData.type_n !== 3\"\r\n placeholder=\"请输入通模板编号\"\r\n style=\"width: 500px\"\r\n ></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"模板ID:\">\r\n <el-input v-model=\"formData.tempid\" placeholder=\"请输入模板ID\" style=\"width: 500px\"></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"模板:\">\r\n <div class=\"content\">\r\n <el-input\r\n :disabled=\"formData.type_n !== 3\"\r\n v-model=\"formData.content\"\r\n type=\"textarea\"\r\n :autosize=\"{ minRows: 5, maxRows: 8 }\"\r\n placeholder=\"请输入模板\"\r\n style=\"width: 500px\"\r\n @input=\"handleContentChange\"\r\n ></el-input>\r\n </div>\r\n </el-form-item>\r\n <el-form-item label=\"字段:\" v-if=\"formData.type_n == 3 && keyList.length\">\r\n <div class=\"content\">\r\n <keys-list\r\n :key-list=\"keyList\"\r\n :variableList=\"formData.custom_variable\"\r\n @add=\"handleAdd\"\r\n @remove=\"handleRemove\"\r\n />\r\n </div>\r\n </el-form-item>\r\n <el-form-item label=\"跳转链接:\">\r\n <el-input\r\n v-model=\"formData.routine_link\"\r\n placeholder=\"请输入模版跳转链接,可携带参数\"\r\n style=\"width: 500px\"\r\n ></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"状态:\" prop=\"is_routine\">\r\n <el-radio-group v-model=\"formData.is_routine\">\r\n <el-radio :label=\"1\">开启</el-radio>\r\n <el-radio :label=\"2\">关闭</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n </div>\r\n\r\n <div v-else-if=\"item.slot === 'is_ent_wechat' && !loading\">\r\n <el-form-item label=\"通知内容:\">\r\n <div class=\"content\">\r\n <el-input\r\n id=\"ent_wechat_text\"\r\n v-model=\"formData.ent_wechat_text\"\r\n type=\"textarea\"\r\n :autosize=\"{ minRows: 5, maxRows: 8 }\"\r\n placeholder=\"请输入通知内容\"\r\n style=\"width: 500px\"\r\n ></el-input>\r\n <div class=\"value-list\" v-if=\"formData.type_n == 3\">\r\n <el-popover placement=\"right\" width=\"200\" trigger=\"click\">\r\n <div class=\"variable\">\r\n <div\r\n class=\"item\"\r\n v-db-click\r\n @click=\"changeValue(i.value, 'ent_wechat_text')\"\r\n v-for=\"(i, index) in formData.custom_variable\"\r\n :key=\"index\"\r\n >\r\n {{ i.label }}\r\n </div>\r\n </div>\r\n\r\n <i class=\"el-icon-link\" slot=\"reference\"></i>\r\n </el-popover>\r\n </div>\r\n </div>\r\n <div class=\"tips-info\" v-if=\"formData.type_n == 3\">可点击右下角图标,插入自定义变量</div>\r\n </el-form-item>\r\n <el-form-item label=\"机器人链接:\">\r\n <div class=\"content\">\r\n <el-input v-model=\"formData.url\" placeholder=\"请输入机器人链接\" style=\"width: 500px\"></el-input>\r\n </div>\r\n </el-form-item>\r\n <el-form-item label=\"状态:\" prop=\"is_ent_wechat\">\r\n <el-radio-group v-model=\"formData.is_ent_wechat\">\r\n <el-radio :label=\"1\">开启</el-radio>\r\n <el-radio :label=\"2\">关闭</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n </div>\r\n <el-form-item>\r\n <el-button type=\"primary\" v-db-click @click=\"handleSubmit('formData')\">提交</el-button>\r\n </el-form-item>\r\n </el-form>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </el-col>\r\n </el-row>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { getNotificationInfo, getNotificationSave } from '@/api/notification.js';\r\nimport keysList from './components/keysList.vue';\r\nexport default {\r\n components: { keysList },\r\n data() {\r\n return {\r\n tabs: [\r\n {\r\n title: '系统通知',\r\n slot: 'is_system',\r\n },\r\n {\r\n title: '短信通知',\r\n slot: 'is_sms',\r\n },\r\n {\r\n title: '微信模板消息',\r\n slot: 'is_wechat',\r\n },\r\n {\r\n title: '微信小程序提醒',\r\n slot: 'is_routine',\r\n },\r\n {\r\n title: '企业微信',\r\n slot: 'is_ent_wechat',\r\n },\r\n ],\r\n tabsList: [],\r\n formData: {},\r\n id: 0,\r\n loading: true,\r\n tagName: 'is_system',\r\n ruleValidate: {\r\n name: [\r\n {\r\n required: true,\r\n message: '请输入通知场景',\r\n trigger: 'blur',\r\n },\r\n ],\r\n title: [\r\n {\r\n required: true,\r\n message: '请输入通知场景',\r\n trigger: 'blur',\r\n },\r\n ],\r\n content: [\r\n {\r\n required: true,\r\n message: '请输入通知内容',\r\n trigger: 'blur',\r\n },\r\n ],\r\n },\r\n keyList: [],\r\n };\r\n },\r\n created() {\r\n this.id = this.$route.query.id;\r\n this.getData(this.id, this.tagName, 1);\r\n },\r\n methods: {\r\n handleContentChange(e) {\r\n if (this.formData.type_n == 3) {\r\n const regex = /{{(.*?)\\./g;\r\n let match;\r\n this.keyList = [];\r\n while ((match = regex.exec(e))) {\r\n this.keyList.push({\r\n key: match[1],\r\n value: '',\r\n });\r\n }\r\n }\r\n },\r\n handleRemove(index) {\r\n this.keyList.splice(index, 1);\r\n },\r\n // 新增卡密\r\n handleAdd() {\r\n this.keyList.push({\r\n key: '',\r\n value: '',\r\n });\r\n },\r\n changeTabs() {\r\n this.getData(this.id, this.tagName);\r\n },\r\n getData(id, name, init) {\r\n this.loading = true;\r\n this.formData = {};\r\n getNotificationInfo(id, name)\r\n .then((res) => {\r\n if (!this.tabsList.length) {\r\n this.tabs.map((v) => {\r\n if (res.data[v.slot]) {\r\n this.tabsList.push(v);\r\n }\r\n });\r\n }\r\n if (init) this.tagName = this.tabsList[0].slot;\r\n this.formData = res.data;\r\n this.formData.type_n = res.data.type; // - -!\r\n this.formData.type = name; // 类型名称\r\n this.formData.id = id;\r\n this.keyList = res.data.key_list || [];\r\n this.loading = false;\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n handleSubmit(name) {\r\n this.formData.key_list = this.keyList;\r\n getNotificationSave(this.formData)\r\n .then((res) => {\r\n this.$message.success('设置成功');\r\n })\r\n .catch((err) => {\r\n this.$message.error(err);\r\n });\r\n },\r\n handleReset(name) {\r\n this.$emit('close');\r\n },\r\n changeValue(e, name) {\r\n // 获取dom元素\r\n let textInput = document.getElementById(name);\r\n // 获取光标初始索引\r\n let index = textInput.selectionStart;\r\n // 拼接字符串的形式来得到需要的内容\r\n this.formData[name] = this.formData[name].substring(0, index) + e + this.formData[name].substring(index);\r\n this.$nextTick(() => {\r\n textInput.selectionStart = index + e.length;\r\n textInput.selectionEnd = index + e.length;\r\n textInput.focus();\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n.edit {\r\n}\r\n.header_top {\r\n margin-bottom: 10px;\r\n}\r\n.demo-tabs-style1 > .ivu-tabs-card > .ivu-tabs-content {\r\n height: 120px;\r\n margin-top: -16px;\r\n}\r\n\r\n.demo-tabs-style1 > .ivu-tabs-card > .ivu-tabs-content > .ivu-tabs-tabpane {\r\n background: #fff;\r\n padding: 16px;\r\n}\r\n\r\n.demo-tabs-style1 > .ivu-tabs.ivu-tabs-card > .ivu-tabs-bar .ivu-tabs-tab {\r\n border-color: transparent;\r\n}\r\n\r\n.demo-tabs-style1 > .ivu-tabs-card > .ivu-tabs-bar .ivu-tabs-tab-active {\r\n border-color: #fff;\r\n}\r\n\r\n.tabs {\r\n padding: 0 30px;\r\n background-color: #fff;\r\n}\r\n\r\n.trip {\r\n color: rgb(146, 139, 139);\r\n background-color: #f2f2f2;\r\n margin-left: 80px;\r\n border-radius: 4px;\r\n padding: 15px;\r\n}\r\n\r\n.content {\r\n display: flex;\r\n position: relative;\r\n}\r\n\r\n.form-sty {\r\n margin-top: 20px;\r\n}\r\n.value-list {\r\n position: absolute;\r\n right: 7px;\r\n bottom: 7px;\r\n width: 22px;\r\n height: 22px;\r\n line-height: 22px;\r\n text-align: center;\r\n background: var(--prev-color-primary);\r\n color: #ededed;\r\n cursor: pointer;\r\n border-radius: 4px;\r\n}\r\n.variable {\r\n .item {\r\n cursor: pointer;\r\n padding: 5px 10px;\r\n transition: all 0.3s ease;\r\n }\r\n .item:hover {\r\n background: var(--prev-color-primary-light-9);\r\n color: var(--prev-color-primary);\r\n border-radius: 4px;\r\n }\r\n}\r\n// 滚动条样式\r\n.variable::-webkit-scrollbar {\r\n width: 4px;\r\n height: 4px;\r\n}\r\n.variable::-webkit-scrollbar-thumb {\r\n background: var(--prev-color-primary-light-9);\r\n border-radius: 4px;\r\n}\r\n.variable::-webkit-scrollbar-track {\r\n background: #f2f2f2;\r\n}\r\n</style>\r\n"],"mappings":"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","ignoreList":[]}]}
|