1 line
40 KiB
JSON
1 line
40 KiB
JSON
{"remainingRequest":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/babel-loader/lib/index.js!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js??ref--1-0!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/race/Race.vue?vue&type=script&lang=js","dependencies":[{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/src/views/race/Race.vue","mtime":1742646402777},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/babel.config.js","mtime":1742646402652},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js","mtime":1743264595665},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/babel-loader/lib/index.js","mtime":1743264596348},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/cache-loader/dist/cjs.js","mtime":1743264595665},{"path":"/Users/shuguang/Desktop/毕设/CodeMaster/CodeMaster/node_modules/vue-loader/lib/index.js","mtime":1743264596512}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IHsgcmFjZUxldmVsTWFwLCByYWNlTGV2ZWxzLCBjb21wZXRpdGlvblN0YXR1cyB9IGZyb20gJ0AvdXRpbHMvY29uc3QnOwppbXBvcnQgeyBBbGxVc2VyIH0gZnJvbSAnQC9hcGknOwppbXBvcnQgeyBleHBvcnREYXRhIH0gZnJvbSAnQC91dGlscy9leGNlbCc7CmltcG9ydCBFZGl0UmFjZSBmcm9tICdAL2NvbXBvbmVudHMvZWRpdC9FZGl0UmFjZSc7CmltcG9ydCBCYW9taW5nIGZyb20gJ0AvY29tcG9uZW50cy9lZGl0L0Jhb21pbmcnOwppbXBvcnQgQWRkUmVjb3JkIGZyb20gJ0AvY29tcG9uZW50cy9yZWNvcmQvQWRkUmVjb3JkJzsKaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJzsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdSYWNlJywKICBtZXRhSW5mbzogewogICAgdGl0bGU6ICfotZvkuovnrqHnkIYnCiAgfSwKICBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgc2VsZWN0ZWRLZXlzOiBbXSwKICAgICAgbG9hZGluZzogZmFsc2UsCiAgICAgIGV4cG9ydGluZzogZmFsc2UsCiAgICAgIHJhY2VzOiBbXSwKICAgICAgdXNlcnM6IFtdLAogICAgICAvLyDnlKjkuo7lrZjlgqjnlKjmiLfkv6Hmga8KICAgICAgY3VycmVudDogMSwKICAgICAgb3JpZ2luYWxSYWNlczogW10sCiAgICAgIHF1ZXJ5OiB7fSwKICAgICAgcGFnZVNpemU6IDEwLAogICAgICB0b3RhbDogMCwKICAgICAgdGFibGVDb2x1bW5zOiBbXSwKICAgICAgc2VhcmNoT3B0aW9uczogdGhpcy5jcmVhdGVTZWFyY2hPcHRpb25zKCkKICAgIH07CiAgfSwKICBjb21wdXRlZDogewogICAgcGFnaW5hdGlvbigpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBjdXJyZW50OiB0aGlzLmN1cnJlbnQsCiAgICAgICAgcGFnZVNpemU6IHRoaXMucGFnZVNpemUsCiAgICAgICAgdG90YWw6IHRoaXMudG90YWwKICAgICAgfTsKICAgIH0sCiAgICBpc1N0dWRlbnQoKSB7CiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS51c2VyLnVzZXJQcml2aWxlZ2VzID09IDI7CiAgICB9CiAgfSwKICBhc3luYyBtb3VudGVkKCkgewogICAgYXdhaXQgdGhpcy5nZXRBbGxVc2VycygpOyAvLyDnoa7kv53lnKjooajmoLzliJforr7nva7liY3ojrflj5bnlKjmiLfkv6Hmga8KICAgIHRoaXMuJHdhdGNoKCgpID0+IFt0aGlzLnBhZ2VTaXplLCB0aGlzLmN1cnJlbnRdLCB0aGlzLmdldERhdGEsIHsKICAgICAgaW1tZWRpYXRlOiB0cnVlCiAgICB9KTsKICB9LAogIG1ldGhvZHM6IHsKICAgIGFzeW5jIGdldEFsbFVzZXJzKCkgewogICAgICB0cnkgewogICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgQWxsVXNlcigpOwogICAgICAgIHRoaXMudXNlcnMgPSByZXNwb25zZS5kYXRhOwogICAgICAgIHRoaXMudGFibGVDb2x1bW5zID0gdGhpcy5jcmVhdGVUYWJsZUNvbHVtbnModGhpcy51c2Vycyk7IC8vIOWIqeeUqOiOt+WPlueahOeUqOaIt+S/oeaBr+adpeiuvue9ruihqOagvOWIlwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBsb2FkIHVzZXJzIiwgZXJyb3IpOwogICAgICB9CiAgICB9LAogICAgY3JlYXRlVGFibGVDb2x1bW5zKHVzZXJzKSB7CiAgICAgIGNvbnN0IGNvbXBldGl0aW9uU3RhdHVzTWFwID0gW3sKICAgICAgICBsYWJlbDogJ+i/m+ihjOS4rScsCiAgICAgICAgdmFsdWU6IDAKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAn5bey57uI5q2iJywKICAgICAgICB2YWx1ZTogMQogICAgICB9XTsKICAgICAgY29uc29sZS5sb2codXNlcnMpOwogICAgICByZXR1cm4gW3sKICAgICAgICB0aXRsZTogJ+i1m+S6i+WQjeensCcsCiAgICAgICAgZGF0YUluZGV4OiAnY29tcGV0aXRpb25OYW1lJywKICAgICAgICBhbGlnbjogJ2NlbnRlcicKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn6LSf6LSj5Lq6JywKICAgICAgICBkYXRhSW5kZXg6ICd1c2VySWQnLAogICAgICAgIGN1c3RvbVJlbmRlcjogdGV4dCA9PiB7CiAgICAgICAgICBpZiAoIXRleHQpIHsKICAgICAgICAgICAgcmV0dXJuICfml6AnOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdXNlciA9IHVzZXJzLmZpbmQodSA9PiB1LnVzZXJJZCA9PT0gdGV4dCk7CiAgICAgICAgICByZXR1cm4gdXNlciA/IHVzZXIudXNlck5hbWUgOiAn5pegJzsKICAgICAgICB9LAogICAgICAgIGFsaWduOiAnY2VudGVyJwogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICflvIDlp4vml7bpl7QnLAogICAgICAgIGRhdGFJbmRleDogJ3JlZ2lzdHJhdGlvblN0YXJ0VGltZScsCiAgICAgICAgY3VzdG9tUmVuZGVyOiAodGV4dCwgcmVjb3JkKSA9PiBmb3JtYXREYXRlKHJlY29yZC5yZWdpc3RyYXRpb25TdGFydFRpbWUpLAogICAgICAgIGFsaWduOiAnY2VudGVyJwogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICfnu5PmnZ/ml7bpl7QnLAogICAgICAgIGRhdGFJbmRleDogJ3JlZ2lzdHJhdGlvbkVuZFRpbWUnLAogICAgICAgIGN1c3RvbVJlbmRlcjogKHRleHQsIHJlY29yZCkgPT4gZm9ybWF0RGF0ZShyZWNvcmQucmVnaXN0cmF0aW9uRW5kVGltZSksCiAgICAgICAgYWxpZ246ICdjZW50ZXInCiAgICAgIH0sIHsKICAgICAgICB0aXRsZTogJ+WPguiAg+adkOaWmScsCiAgICAgICAgZGF0YUluZGV4OiAnYW5ub3VuY2VtZW50TGluaycsCiAgICAgICAgYWxpZ246ICdjZW50ZXInCiAgICAgIH0sIHsKICAgICAgICB0aXRsZTogJ+eKtuaAgScsCiAgICAgICAgZGF0YUluZGV4OiAnY29tcGV0aXRpb25TdGF0dXMnLAogICAgICAgIGN1c3RvbVJlbmRlcjogKHRleHQsIHJlY29yZCkgPT4gewogICAgICAgICAgY29uc3Qgc3RhdHVzT2JqZWN0ID0gY29tcGV0aXRpb25TdGF0dXNNYXAuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09IHJlY29yZC5jb21wZXRpdGlvblN0YXR1cyk7CiAgICAgICAgICByZXR1cm4gc3RhdHVzT2JqZWN0ID8gc3RhdHVzT2JqZWN0LmxhYmVsIDogJ+acquefpeeKtuaAgSc7CiAgICAgICAgfSwKICAgICAgICBhbGlnbjogJ2NlbnRlcicKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn5pON5L2cJywKICAgICAgICBhbGlnbjogJ2NlbnRlcicsCiAgICAgICAgc2NvcGVkU2xvdHM6IHsKICAgICAgICAgIGN1c3RvbVJlbmRlcjogJ2FjdGlvbicKICAgICAgICB9CiAgICAgIH1dOwogICAgfSwKICAgIGNyZWF0ZVNlYXJjaE9wdGlvbnMoKSB7CiAgICAgIHJldHVybiBbewogICAgICAgIGxhYmVsOiAn6LWb5LqL5ZCN56ewJywKICAgICAgICBrZXk6ICd0aXRsZScsCiAgICAgICAgZGVmYXVsdDogJycsCiAgICAgICAgY29tcG9uZW50OiAnaW5wdXQnCiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogJ+i0n+i0o+S6uicsCiAgICAgICAga2V5OiAnc3BvbnNvcicsCiAgICAgICAgZGVmYXVsdDogJycsCiAgICAgICAgY29tcG9uZW50OiAnaW5wdXQnCiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogJ+eKtuaAgScsCiAgICAgICAga2V5OiAnY29sbGFnZUlkJywKICAgICAgICBkZWZhdWx0OiB1bmRlZmluZWQsCiAgICAgICAgY29tcG9uZW50OiAnc2VsZWN0JywKICAgICAgICBwcm9wczogewogICAgICAgICAgb3B0aW9uczogY29tcGV0aXRpb25TdGF0dXMKICAgICAgICB9CiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogJ+aXtumXtCcsCiAgICAgICAga2V5OiAnZGF0ZScsCiAgICAgICAgZGVmYXVsdDogKCkgPT4gW10sCiAgICAgICAgbWFwcGVyOiAoewogICAgICAgICAgZGF0ZQogICAgICAgIH0pID0+IGRhdGUuam9pbignficpLAogICAgICAgIGNvbXBvbmVudDogJ3JhbmdlLXBpY2tlcicKICAgICAgfV07CiAgICB9LAogICAgY2hhbmdlUGFnZSh7CiAgICAgIHBhZ2VTaXplLAogICAgICBjdXJyZW50CiAgICB9KSB7CiAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgewogICAgICAgIHBhZ2VTaXplLAogICAgICAgIGN1cnJlbnQKICAgICAgfSk7CiAgICB9LAogICAgc2VhcmNoKCkgewogICAgICB0aGlzLmN1cnJlbnQgPSAxOwogICAgICB0aGlzLmdldERhdGEoKTsKICAgIH0sCiAgICBnZXREYXRhKCkgewogICAgICB0aGlzLnF1ZXJ5ID0gdGhpcy4kcmVmcy5zZWFyY2hGb3JtLmdldFJlc3VsdCgpOwogICAgICBjb25zb2xlLmxvZyh0aGlzLnF1ZXJ5KTsKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgdGhpcy4kYXBpLkFsbENvbXBldGl0aW9uKHt9KS50aGVuKGRhdGEgPT4gewogICAgICAgIHRoaXMub3JpZ2luYWxSYWNlcyA9IGRhdGEuZGF0YTsKICAgICAgICB0aGlzLmZpbHRlclJhY2VzKCk7IC8vIOiwg+eUqOi/h+a7pOaWueazlQogICAgICAgIHRoaXMudG90YWwgPSBkYXRhLmRhdGEubGVuZ3RoOwogICAgICB9KS5jYXRjaChlID0+IHsKICAgICAgICBjb25zb2xlLmVycm9yKGUpOwogICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoZS5tc2cgfHwgJ+iOt+WPluaVsOaNruWksei0pScpOwogICAgICB9KS5maW5hbGx5KCgpID0+IHsKICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g6L+H5ruk5q+U6LWbCiAgICBmaWx0ZXJSYWNlcygpIHsKICAgICAgbGV0IGZpbHRlcmVkUmFjZXMgPSB0aGlzLm9yaWdpbmFsUmFjZXMuc2xpY2UoKTsgLy8g5aSN5Yi25Y6f5aeL55So5oi35pWw5o2uCiAgICAgIGNvbnNvbGUubG9nKGZpbHRlcmVkUmFjZXMpOwogICAgICAvLyDnirbmgIEKICAgICAgaWYgKHRoaXMucXVlcnkuY29sbGFnZUlkKSB7CiAgICAgICAgZmlsdGVyZWRSYWNlcyA9IGZpbHRlcmVkUmFjZXMuZmlsdGVyKHVzZXIgPT4gdXNlci5jb21wZXRpdGlvblN0YXR1cyA9PSB0aGlzLnF1ZXJ5LmNvbGxhZ2VJZCk7CiAgICAgIH0KICAgICAgLy8g5ZCN56ewCiAgICAgIGlmICh0aGlzLnF1ZXJ5LnRpdGxlKSB7CiAgICAgICAgZmlsdGVyZWRSYWNlcyA9IGZpbHRlcmVkUmFjZXMuZmlsdGVyKHVzZXIgPT4gdXNlci5jb21wZXRpdGlvbk5hbWUuaW5jbHVkZXModGhpcy5xdWVyeS50aXRsZSkpOwogICAgICB9CiAgICAgIC8vIOi0n+i0o+S6ugogICAgICBpZiAodGhpcy5xdWVyeS5zcG9uc29yKSB7CiAgICAgICAgZmlsdGVyZWRSYWNlcyA9IGZpbHRlcmVkUmFjZXMuZmlsdGVyKHVzZXIgPT4gdXNlci51c2VyTmFtZS5pbmNsdWRlcyh0aGlzLnF1ZXJ5LnNwb25zb3IpKTsKICAgICAgfQogICAgICB0aGlzLnJhY2VzID0gZmlsdGVyZWRSYWNlczsKICAgIH0sCiAgICAvLyDmiJHopoHmiqXlkI0KICAgIGFkZEJhbygpIHsKICAgICAgY29uc3QgaCA9IHRoaXMuJGNyZWF0ZUVsZW1lbnQ7CiAgICAgIGxldCB2bm9kZTsKICAgICAgdGhpcy4kY29uZmlybSh7CiAgICAgICAgdGl0bGU6ICfmiJHopoHmiqXlkI0nLAogICAgICAgIGNvbnRlbnQ6IGggPT4gdm5vZGUgPSBoKEJhb21pbmcpLAogICAgICAgIG9uT2s6IGFzeW5jICgpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbHVlcyA9IGF3YWl0IHZub2RlLmNvbXBvbmVudEluc3RhbmNlLnZhbGlkYXRlKCk7CiAgICAgICAgICBjb25zdCBkYXRhID0gewogICAgICAgICAgICBzdHVkZW50SWQ6IHRoaXMuJHN0b3JlLnN0YXRlLnVzZXIudXNlcklkLAogICAgICAgICAgICBjb21wZXRpdGlvbklkOiB2YWx1ZXMuY29tcGV0aXRpb25JZCwKICAgICAgICAgICAgdGVhbUxlYWRlcklkOiB2YWx1ZXMudGVhbUxlYWRlcklkLAogICAgICAgICAgICBjb21wZXRpdGlvblR5cGU6IHZhbHVlcy5jb21wZXRpdGlvblR5cGUsCiAgICAgICAgICAgIHJlZ2lzdHJhdGlvblRpbWU6IGRheWpzKG5ldyBEYXRlKCkpLmZvcm1hdCgnWVlZWS1NLUQgSEg6bW06c3MnKSwKICAgICAgICAgICAgcmVnaXN0cmF0aW9uU3RhdHVzOiAn562J5b6F5a2m5qCh5a6h5qC4JwogICAgICAgICAgfTsKICAgICAgICAgIGNvbnNvbGUubG9nKGRhdGEpOwogICAgICAgICAgcmV0dXJuIHRoaXMuJGFwaS5FbnJvbGwoZGF0YSkudGhlbihkYXRhID0+IHsKICAgICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCLmiqXlkI3miJDlip8iKTsKICAgICAgICAgIH0pLmNhdGNoKGUgPT4gewogICAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKGUubXNnIHx8ICfmiqXlkI3lpLHotKUnKTsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgLy8g5paw5aKe5q+U6LWbCiAgICBhZGRSYWNlKCkgewogICAgICBjb25zdCBoID0gdGhpcy4kY3JlYXRlRWxlbWVudDsKICAgICAgbGV0IHZub2RlOwogICAgICB0aGlzLiRjb25maXJtKHsKICAgICAgICB0aXRsZTogJ+aWsOWinui1m+S6iycsCiAgICAgICAgY29udGVudDogaCA9PiB2bm9kZSA9IGgoRWRpdFJhY2UpLAogICAgICAgIG9uT2s6IGFzeW5jICgpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbHVlcyA9IGF3YWl0IHZub2RlLmNvbXBvbmVudEluc3RhbmNlLnZhbGlkYXRlKCk7CiAgICAgICAgICBjb25zdCBkYXRhID0gewogICAgICAgICAgICBjb21wZXRpdGlvbk5hbWU6IHZhbHVlcy5jb21wZXRpdGlvbk5hbWUsCiAgICAgICAgICAgIHVzZXJJZDogdmFsdWVzLnVzZXJJZCwKICAgICAgICAgICAgcmVnaXN0cmF0aW9uU3RhcnRUaW1lOiB2YWx1ZXMucmVnaXN0cmF0aW9uU3RhcnRUaW1lLAogICAgICAgICAgICByZWdpc3RyYXRpb25FbmRUaW1lOiB2YWx1ZXMucmVnaXN0cmF0aW9uRW5kVGltZSwKICAgICAgICAgICAgYW5ub3VuY2VtZW50TGluazogdmFsdWVzLmFubm91bmNlbWVudExpbmssCiAgICAgICAgICAgIGNvbXBldGl0aW9uU3RhdHVzOiB2YWx1ZXMuY29tcGV0aXRpb25TdGF0dXMKICAgICAgICAgIH07CiAgICAgICAgICByZXR1cm4gdGhpcy4kYXBpLkFkZENvbXBldGl0aW9uKGRhdGEpLnRoZW4oZGF0YSA9PiB7CiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2Vzcygi5re75Yqg5oiQ5YqfIik7CiAgICAgICAgICAgIHRoaXMuZ2V0RGF0YSgpOwogICAgICAgICAgfSkuY2F0Y2goZSA9PiB7CiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoZS5tc2cgfHwgJ+a3u+WKoOWksei0pScpOwogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0sCiAgICAvLyDlrprkuYnmoLzlvI/ljJbml6XmnJ/ml7bpl7Tlh73mlbAKICAgIGZvcm1hdERhdGVUaW1lKGlzb0RhdGVUaW1lKSB7CiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShpc29EYXRlVGltZSk7CiAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGVUaW1lID0gYCR7ZGF0ZS5nZXRGdWxsWWVhcigpfS0ke3RoaXMucGFkWmVybyhkYXRlLmdldE1vbnRoKCkgKyAxKX0tJHt0aGlzLnBhZFplcm8oZGF0ZS5nZXREYXRlKCkpfSAke3RoaXMucGFkWmVybyhkYXRlLmdldEhvdXJzKCkpfToke3RoaXMucGFkWmVybyhkYXRlLmdldE1pbnV0ZXMoKSl9OiR7dGhpcy5wYWRaZXJvKGRhdGUuZ2V0U2Vjb25kcygpKX1gOwogICAgICByZXR1cm4gZm9ybWF0dGVkRGF0ZVRpbWU7CiAgICB9LAogICAgLy8g5a6a5LmJ6KGl6Zu25Ye95pWwCiAgICBwYWRaZXJvKG51bSkgewogICAgICByZXR1cm4gbnVtIDwgMTAgPyAnMCcgKyBudW0gOiBudW07CiAgICB9LAogICAgLy8g5L+u5pS55q+U6LWbCiAgICBlZGl0UmFjZShyYWNlKSB7CiAgICAgIGNvbnN0IGggPSB0aGlzLiRjcmVhdGVFbGVtZW50OwogICAgICBsZXQgdm5vZGU7CiAgICAgIHRoaXMuJGNvbmZpcm0oewogICAgICAgIHRpdGxlOiAn57yW6L6R6LWb5LqLJywKICAgICAgICBjb250ZW50OiBoID0+IHZub2RlID0gaChFZGl0UmFjZSwgewogICAgICAgICAgImF0dHJzIjogewogICAgICAgICAgICAiZGF0YSI6IHJhY2UKICAgICAgICAgIH0KICAgICAgICB9KSwKICAgICAgICBvbk9rOiBhc3luYyAoKSA9PiB7CiAgICAgICAgICBjb25zdCB2YWx1ZXMgPSBhd2FpdCB2bm9kZS5jb21wb25lbnRJbnN0YW5jZS52YWxpZGF0ZSgpOwogICAgICAgICAgLy8g6LCD55SoZm9ybWF0RGF0ZVRpbWXlh73mlbDmnaXmoLzlvI/ljJbml6XmnJ/ml7bpl7QKICAgICAgICAgIHZhbHVlcy5yZWdpc3RyYXRpb25TdGFydFRpbWUgPSB0aGlzLmZvcm1hdERhdGVUaW1lKHZhbHVlcy5yZWdpc3RyYXRpb25TdGFydFRpbWUpOwogICAgICAgICAgdmFsdWVzLnJlZ2lzdHJhdGlvbkVuZFRpbWUgPSB0aGlzLmZvcm1hdERhdGVUaW1lKHZhbHVlcy5yZWdpc3RyYXRpb25FbmRUaW1lKTsKICAgICAgICAgIHZhbHVlcy5jb21wZXRpdGlvbklkID0gcmFjZS5jb21wZXRpdGlvbklkOwogICAgICAgICAgY29uc3QgZGF0YSA9IHsKICAgICAgICAgICAgY29tcGV0aXRpb25JZDogdmFsdWVzLmNvbXBldGl0aW9uSWQsCiAgICAgICAgICAgIGNvbXBldGl0aW9uTmFtZTogdmFsdWVzLmNvbXBldGl0aW9uTmFtZSwKICAgICAgICAgICAgdXNlcklkOiB2YWx1ZXMudXNlcklkLAogICAgICAgICAgICByZWdpc3RyYXRpb25TdGFydFRpbWU6IHZhbHVlcy5yZWdpc3RyYXRpb25TdGFydFRpbWUsCiAgICAgICAgICAgIHJlZ2lzdHJhdGlvbkVuZFRpbWU6IHZhbHVlcy5yZWdpc3RyYXRpb25FbmRUaW1lLAogICAgICAgICAgICBhbm5vdW5jZW1lbnRMaW5rOiB2YWx1ZXMuYW5ub3VuY2VtZW50TGluaywKICAgICAgICAgICAgY29tcGV0aXRpb25TdGF0dXM6IHZhbHVlcy5jb21wZXRpdGlvblN0YXR1cwogICAgICAgICAgfTsKICAgICAgICAgIHJldHVybiB0aGlzLiRhcGkuVXBDb21wZXRpdGlvbihkYXRhKS50aGVuKGRhdGEgPT4gewogICAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+S/ruaUueaIkOWKnycpOwogICAgICAgICAgICB0aGlzLmdldERhdGEoKTsKICAgICAgICAgIH0pLmNhdGNoKGUgPT4gewogICAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKGUubXNnIHx8ICfkv67mlLnlpLHotKUnKTsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgLy8g5Yig6Zmk56ue6LWbCiAgICBkZWxldGVSYWNlKHJhY2UpIHsKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgdGhpcy4kYXBpLkRlbGV0ZUNvbXBldGl0aW9uKFtyYWNlLmNvbXBldGl0aW9uSWRdKS50aGVuKGRhdGEgPT4gewogICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhkYXRhLm1zZyk7CiAgICAgICAgdGhpcy5nZXREYXRhKCk7CiAgICAgIH0pLmNhdGNoKGUgPT4gewogICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7CiAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihlLm1zZyB8fCAn5Yig6Zmk5aSx6LSlJyk7CiAgICAgIH0pLmZpbmFsbHkoKCkgPT4gewogICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICB9KTsKICAgIH0sCiAgICBiYXRjaERlbGV0ZSgpIHsKICAgICAgdGhpcy4kbW9kYWwuY29uZmlybSh7CiAgICAgICAgdGl0bGU6IGDnoa7orqTliKDpmaTpgInkuK3nmoQke3RoaXMuc2VsZWN0ZWRLZXlzLmxlbmd0aH3pobnmlbDmja4/YCwKICAgICAgICBvbk9rOiAoKSA9PiB0aGlzLiRhcGkuZGVsZXRlUmFjZSh0aGlzLnNlbGVjdGVkS2V5cykudGhlbigoKSA9PiB7CiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+WIoOmZpOaIkOWKnyEnKTsKICAgICAgICAgIHRoaXMuc2VsZWN0ZWRLZXlzLnNwbGljZSgwKTsKICAgICAgICAgIHRoaXMuZ2V0RGF0YSgpOwogICAgICAgIH0pLmNhdGNoKGUgPT4gewogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihlLm1zZyB8fCAn5Yig6Zmk5aSx6LSlIScpOwogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9KQogICAgICB9KTsKICAgIH0sCiAgICBhZGRSZWNvcmQocmFjZSkgewogICAgICBjb25zdCBoID0gdGhpcy4kY3JlYXRlRWxlbWVudDsKICAgICAgbGV0IHZub2RlOwogICAgICB0aGlzLiRjb25maXJtKHsKICAgICAgICB0aXRsZTogJ+aIkOe7qeW9leWFpScsCiAgICAgICAgY29udGVudDogaCA9PiB2bm9kZSA9IGgoQWRkUmVjb3JkKSwKICAgICAgICBvbk9rOiBhc3luYyAoKSA9PiB7CiAgICAgICAgICBjb25zdCBmb3JtID0gdm5vZGUuY29tcG9uZW50SW5zdGFuY2U7CiAgICAgICAgICBjb25zdCB2YWx1ZXMgPSBhd2FpdCBmb3JtLnZhbGlkYXRlKCk7CiAgICAgICAgICByZXR1cm4gdGhpcy4kYXBpLmFkZFJlY29yZCh7CiAgICAgICAgICAgIHJhY2VfaWQ6IHJhY2UucmFjZV9pZCwKICAgICAgICAgICAgc2lkOiB0aGlzLiRzdG9yZS5zdGF0ZS51c2VyLmFjY291bnQsCiAgICAgICAgICAgIHNjb3JlOiB2YWx1ZXMuc2NvcmUsCiAgICAgICAgICAgIHRpZDogdmFsdWVzLnRpZAogICAgICAgICAgfSkudGhlbihkYXRhID0+IHsKICAgICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKGRhdGEubXNnKTsKICAgICAgICAgIH0pLmNhdGNoKGUgPT4gewogICAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKGUubXNnIHx8ICfns7vnu5/plJnor68nKTsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgZXhwb3J0QWxsKCkgewogICAgICB0aGlzLmV4cG9ydGluZyA9IHRydWU7CiAgICAgIHRoaXMuJGFwaS5BbGxDb21wZXRpdGlvbih0aGlzLnF1ZXJ5KS50aGVuKGRhdGEgPT4gewogICAgICAgIHJldHVybiBleHBvcnRFeGNlbChkYXRhLmRhdGEpOwogICAgICB9KS5jYXRjaChlID0+IHsKICAgICAgICBjb25zb2xlLmVycm9yKGUpOwogICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoZS5tc2cgfHwgJ+WvvOWHuuWksei0pScpOwogICAgICB9KS5maW5hbGx5KCgpID0+IHsKICAgICAgICB0aGlzLmV4cG9ydGluZyA9IGZhbHNlOwogICAgICB9KTsKICAgIH0KICB9Cn07CgovLyDmoLzlvI/ljJbml6XmnJ/lh73mlbAKZnVuY3Rpb24gZm9ybWF0RGF0ZShkYXRlU3RyaW5nKSB7CiAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGRhdGVTdHJpbmcpOwogIGlmIChpc05hTihkYXRlLmdldFRpbWUoKSkpIHsKICAgIGNvbnNvbGUuZXJyb3IoYEludmFsaWQgZGF0ZTogJHtkYXRlU3RyaW5nfWApOwogICAgcmV0dXJuICdJbnZhbGlkIERhdGUnOwogIH0KICBjb25zdCB5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwogIGNvbnN0IG1vbnRoID0gU3RyaW5nKGRhdGUuZ2V0TW9udGgoKSArIDEpLnBhZFN0YXJ0KDIsICcwJyk7CiAgY29uc3QgZGF5ID0gU3RyaW5nKGRhdGUuZ2V0RGF0ZSgpKS5wYWRTdGFydCgyLCAnMCcpOwogIHJldHVybiBgJHt5ZWFyfS0ke21vbnRofS0ke2RheX1gOwp9CmZ1bmN0aW9uIGV4cG9ydEV4Y2VsKGRhdGEpIHsKICBjb25zdCBoZWFkZXIgPSB0aGlzLmNyZWF0ZVRhYmxlQ29sdW1ucygpLm1hcCh2ID0+IHYudGl0bGUpOwogIGhlYWRlci5wb3AoKTsgLy8g5Y675o6J5pyA5ZCO5LiA5qCP5pON5L2c5qCPCiAgcmV0dXJuIGV4cG9ydERhdGEoewogICAgbmFtZTogJ+i1m+S6i+S/oeaBrycsCiAgICBkYXRhLAogICAgaGVhZGVyLAogICAga2V5TWFwOiB7CiAgICAgIGNvbXBldGl0aW9uTmFtZTogJ+i1m+S6i+WQjeensCcsCiAgICAgIHVzZXJJZDogJ+S4u+WKnuaWuScsCiAgICAgIGFubm91bmNlbWVudExpbms6ICflj4LogIPotYTmlpknLAogICAgICByZWdpc3RyYXRpb25TdGFydFRpbWU6ICflvIDlp4vml7bpl7QnLAogICAgICByZWdpc3RyYXRpb25FbmRUaW1lOiAn57uT5p2f5pe26Ze0JwogICAgfQogIH0pOwp9"},{"version":3,"names":["raceLevelMap","raceLevels","competitionStatus","AllUser","exportData","EditRace","Baoming","AddRecord","dayjs","name","metaInfo","title","data","selectedKeys","loading","exporting","races","users","current","originalRaces","query","pageSize","total","tableColumns","searchOptions","createSearchOptions","computed","pagination","isStudent","$store","state","user","userPrivileges","mounted","getAllUsers","$watch","getData","immediate","methods","response","createTableColumns","error","console","competitionStatusMap","label","value","log","dataIndex","align","customRender","text","find","u","userId","userName","record","formatDate","registrationStartTime","registrationEndTime","statusObject","item","scopedSlots","key","default","component","undefined","props","options","mapper","date","join","changePage","Object","assign","search","$refs","searchForm","getResult","$api","AllCompetition","then","filterRaces","length","catch","e","$message","msg","finally","filteredRaces","slice","collageId","filter","competitionName","includes","sponsor","addBao","h","$createElement","vnode","$confirm","content","onOk","values","componentInstance","validate","studentId","competitionId","teamLeaderId","competitionType","registrationTime","Date","format","registrationStatus","Enroll","success","addRace","announcementLink","AddCompetition","formatDateTime","isoDateTime","formattedDateTime","getFullYear","padZero","getMonth","getDate","getHours","getMinutes","getSeconds","num","editRace","race","UpCompetition","deleteRace","DeleteCompetition","batchDelete","$modal","confirm","splice","addRecord","form","race_id","sid","account","score","tid","exportAll","exportExcel","dateString","isNaN","getTime","year","month","String","padStart","day","header","map","v","pop","keyMap"],"sources":["src/views/race/Race.vue"],"sourcesContent":["<template>\n <div>\n <SearchForm\n ref=\"searchForm\"\n :loading=\"loading\"\n :options=\"searchOptions\"\n @search=\"search\"\n @reset=\"search\"\n />\n\n <!--信息列表-->\n <AntTable\n v-model=\"selectedKeys\"\n row-key=\"competitionId\"\n :loading=\"loading\"\n :data-source=\"races\"\n :pagination=\"pagination\"\n :columns=\"tableColumns\"\n @change=\"changePage\"\n >\n <template #header>\n <a-button-group>\n <a-button type=\"primary\" v-if=\"$store.state.user.userPrivileges!=2\" @click=\"addRace\">\n 添加赛事\n </a-button>\n\t\t\t\t\t<a-button type=\"primary\" v-if=\"$store.state.user.userPrivileges==2\" @click=\"addBao\">\n\t\t\t\t\t\t\n 我要报名\n </a-button>\n <a-button\n\t\t\t\t\tv-if=\"$store.state.user.userPrivileges!=2\"\n :disabled=\"!selectedKeys.length\"\n @click=\"batchDelete\"\n >\n 批量删除 ({{ selectedKeys.length }})\n </a-button>\n <a-button\n \n :loading=\"exporting\"\n @click=\"exportAll\"\n >\n 全量导出\n </a-button>\n </a-button-group>\n </template>\n <template #action=\"record\">\n <a-space>\n <!-- 成绩录入 -->\n <a-tooltip v-if=\"isStudent\" title=\"无权限\">\n <a>\n 无权限\n </a>\n </a-tooltip>\n <!--编辑-->\n <a @click=\"editRace(record)\" \tv-if=\"$store.state.user.userPrivileges!=2\">\n\t\t\t\t\t\n <a-icon type=\"edit\" />\n </a>\n <!--删除-->\n <a-popconfirm\n\t\t\t\t\tv-if=\"$store.state.user.userPrivileges!=2\"\n title=\"确认删除?\"\n placement=\"left\"\n @confirm=\"deleteRace(record)\"\n >\n <template #icon>\n <a-icon type=\"question-circle-o\" style=\"color: orange\" />\n </template>\n <a><a-icon type=\"delete\" /></a>\n </a-popconfirm>\n </a-space>\n </template>\n </AntTable>\n </div>\n</template>\n\n<script>\nimport { raceLevelMap, raceLevels,competitionStatus } from '@/utils/const';\nimport { AllUser } from '@/api';\nimport { exportData } from '@/utils/excel';\nimport EditRace from '@/components/edit/EditRace';\nimport Baoming from '@/components/edit/Baoming';\nimport AddRecord from '@/components/record/AddRecord';\nimport dayjs from 'dayjs';\n\nexport default {\n name: 'Race',\n metaInfo: {\n title: '赛事管理',\n },\n data() {\n return {\n selectedKeys: [],\n loading: false,\n exporting: false,\n races: [],\n users: [], // 用于存储用户信息\n current: 1,\n\t\t\toriginalRaces: [],\n\t\t\tquery:{},\n pageSize: 10,\n total: 0,\n tableColumns: [],\n searchOptions: this.createSearchOptions(),\n };\n },\n computed: {\n pagination() {\n return {\n current: this.current,\n pageSize: this.pageSize,\n total: this.total,\n };\n },\n isStudent() {\n return this.$store.state.user.userPrivileges == 2;\n },\n },\n\tasync mounted() {\n await this.getAllUsers(); // 确保在表格列设置前获取用户信息\n this.$watch(() => [this.pageSize, this.current], this.getData, { immediate: true });\n },\n methods: {\n\t\tasync getAllUsers() {\n try {\n const response = await AllUser();\n this.users = response.data;\n this.tableColumns = this.createTableColumns(this.users); // 利用获取的用户信息来设置表格列\n } catch (error) {\n console.error(\"Failed to load users\", error);\n }\n },createTableColumns(users) {\n const competitionStatusMap = [\n { label: '进行中', value: 0 },\n { label: '已终止', value: 1 },\n ];\n\t\tconsole.log(users)\n return [\n \n { title: '赛事名称', dataIndex: 'competitionName', align: 'center' },\n {\n title: '负责人',\n dataIndex: 'userId',\n customRender: (text) => {\n if (!text) {\n return '无';\n }\n const user = users.find(u => u.userId === text);\n return user ? user.userName : '无';\n }, align: 'center'\n },\n {\n title: '开始时间',\n dataIndex: 'registrationStartTime',\n customRender: (text, record) => formatDate(record.registrationStartTime)\n\t\t\t\t\t\t, align: 'center'\n },\n {\n title: '结束时间',\n dataIndex: 'registrationEndTime',\n customRender: (text, record) => formatDate(record.registrationEndTime)\n\t\t\t\t\t\t, align: 'center'\n },\n { title: '参考材料', dataIndex: 'announcementLink' , align: 'center'},\n {\n title: '状态',\n dataIndex: 'competitionStatus',\n customRender: (text, record) => {\n const statusObject = competitionStatusMap.find(item => item.value === record.competitionStatus);\n return statusObject ? statusObject.label : '未知状态';\n }\n\t\t\t\t\t\t, align: 'center'\n },\n {\n title: '操作',\n align: 'center',\n scopedSlots: {\n customRender: 'action',\n },\n },\n ];\n},createSearchOptions() {\n return [\n {\n label: '赛事名称',\n key: 'title',\n default: '',\n component: 'input',\n },\n {\n label: '负责人',\n key: 'sponsor',\n default: '',\n component: 'input',\n },\n\t\t{\n label: '状态',\n key: 'collageId',\n default: undefined,\n component: 'select',\n props: {\n options: competitionStatus,\n },\n },\n\n {\n label: '时间',\n key: 'date',\n default: () => [],\n mapper: ({ date }) => date.join('~'),\n component: 'range-picker',\n },\n ];\n},\n changePage({ pageSize, current }) {\n Object.assign(this, { pageSize, current });\n },\n search() {\n this.current = 1;\n this.getData();\n },\n getData() {\n\t\t\tthis.query = this.$refs.searchForm.getResult();\n\t\t\tconsole.log(this.query)\n this.loading = true;\n\t\t\t\tthis.$api.AllCompetition({\n }).then(data => {\n this.originalRaces = data.data;\n\t\t\t\tthis.filterRaces(); // 调用过滤方法\n this.total = data.data.length;\n }).catch(e => {\n console.error(e);\n this.$message.error(e.msg || '获取数据失败');\n }).finally(() => {\n this.loading = false;\n });\n },\n\t\t// 过滤比赛\n\t\tfilterRaces() {\n \t\tlet filteredRaces = this.originalRaces.slice(); // 复制原始用户数据\n\t\t\tconsole.log(filteredRaces)\n\t\t\t\t// 状态\n if (this.query.collageId) {\n filteredRaces = filteredRaces.filter(user => user.competitionStatus == this.query.collageId);\n }\n// 名称\n if (this.query.title) {\n filteredRaces = filteredRaces.filter(user => user.competitionName.includes(this.query.title));\n }\n// 负责人\n if (this.query.sponsor) {\n\t\tfilteredRaces = filteredRaces.filter(user => user.userName.includes(this.query.sponsor));\n }\n\n\n this.races = filteredRaces;\n},\n// 我要报名\n addBao() {\n let vnode;\n this.$confirm({\n title: '我要报名',\n content: h => (vnode = <Baoming />),\n onOk: async () => {\n const values = await vnode.componentInstance.validate();\n\t\t\t\t\tconst data = {\n \t\t\t\tstudentId: this.$store.state.user.userId,\n\t\t\t\t\t\tcompetitionId: values.competitionId,\n\t\t\t\t\t\tteamLeaderId: values.teamLeaderId,\n\t\t\t\t\t\tcompetitionType: values.competitionType,\n\t\t\t\t\t\tregistrationTime: dayjs(new Date).format('YYYY-M-D HH:mm:ss'),\n\t\t\t\t\t\tregistrationStatus: '等待学校审核',\n\t\t\t\t\t};\n\t\t\t\t\tconsole.log(data)\n return this.$api.Enroll(data).then(data => {\n this.$message.success(\"报名成功\");\n }).catch(e => {\n this.$message.error(e.msg || '报名失败');\n throw e;\n });\n },\n });\n },\n\t\t// 新增比赛\n addRace() {\n let vnode;\n this.$confirm({\n title: '新增赛事',\n content: h => (vnode = <EditRace />),\n onOk: async () => {\n const values = await vnode.componentInstance.validate();\n\t\t\t\t\tconst data = {\n \t\t\t\tcompetitionName: values.competitionName,\n\t\t\t\t\t\tuserId: values.userId,\n\t\t\t\t\t\tregistrationStartTime: values.registrationStartTime,\n\t\t\t\t\t\tregistrationEndTime: values.registrationEndTime,\n\t\t\t\t\t\tannouncementLink: values.announcementLink,\n\t\t\t\t\t\tcompetitionStatus: values.competitionStatus,\n\t\t\t\t\t};\n return this.$api.AddCompetition(data).then(data => {\n this.$message.success(\"添加成功\");\n this.getData();\n }).catch(e => {\n this.$message.error(e.msg || '添加失败');\n throw e;\n });\n },\n });\n },// 定义格式化日期时间函数\n formatDateTime(isoDateTime) {\n const date = new Date(isoDateTime);\n const formattedDateTime = `${date.getFullYear()}-${this.padZero(date.getMonth() + 1)}-${this.padZero(date.getDate())} ${this.padZero(date.getHours())}:${this.padZero(date.getMinutes())}:${this.padZero(date.getSeconds())}`;\n return formattedDateTime;\n },\n // 定义补零函数\n padZero(num) {\n return num < 10 ? '0' + num : num;\n },\n\t\t// 修改比赛\n editRace(race) {\n let vnode;\n this.$confirm({\n title: '编辑赛事',\n content: h => (vnode = <EditRace data={race} />),\n onOk: async () => {\n const values = await vnode.componentInstance.validate();\n\t\t\t\t\t// 调用formatDateTime函数来格式化日期时间\n\t\t\t\t\tvalues.registrationStartTime = this.formatDateTime(values.registrationStartTime);\n \tvalues.registrationEndTime = this.formatDateTime(values.registrationEndTime);\n values.competitionId = race.competitionId;\n\t\t\t\t\tconst data = {\n \t\t\t\t\tcompetitionId: values.competitionId,\n \t\t\t\t\tcompetitionName: values.competitionName,\n \t\t\t\t\tuserId: values.userId,\n \t\t\t\t\tregistrationStartTime: values.registrationStartTime,\n \t\t\t\t\tregistrationEndTime: values.registrationEndTime,\n\t\t\t\t\t\t\tannouncementLink: values.announcementLink,\n \t\t\t\t\tcompetitionStatus: values.competitionStatus,\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\treturn this.$api.UpCompetition(data).then(data => {\n \t\t\t\tthis.$message.success('修改成功');\n \t\t\t\tthis.getData();\n\t\t\t\t\t}).catch(e => {\n \t\t\t\t\tthis.$message.error(e.msg || '修改失败');\n \t\t\t\t\tthrow e;\n\t\t\t\t\t});\n },\n });\n },\n\t\t// 删除竞赛\n deleteRace(race) {\n this.loading = true;\n this.$api.DeleteCompetition([race.competitionId]).then(data => {\n this.$message.success(data.msg);\n this.getData();\n }).catch(e => {\n console.error(e);\n this.$message.error(e.msg || '删除失败');\n }).finally(() => {\n this.loading = false;\n });\n },\n batchDelete() {\n this.$modal.confirm({\n title: `确认删除选中的${this.selectedKeys.length}项数据?`,\n onOk: () => this.$api.deleteRace(this.selectedKeys)\n .then(() => {\n this.$message.success('删除成功!');\n this.selectedKeys.splice(0);\n this.getData();\n }).catch(e => {\n this.$message.error(e.msg || '删除失败!');\n throw e;\n }),\n });\n },\n addRecord(race) {\n let vnode;\n this.$confirm({\n title: '成绩录入',\n content: h => (vnode = <AddRecord />),\n onOk: async () => {\n const form = vnode.componentInstance;\n const values = await form.validate();\n return this.$api.addRecord({\n race_id: race.race_id,\n sid: this.$store.state.user.account,\n score: values.score,\n tid: values.tid,\n }).then(data => {\n this.$message.success(data.msg);\n }).catch(e => {\n this.$message.error(e.msg || '系统错误');\n throw e;\n });\n },\n });\n },\n exportAll() {\n this.exporting = true;\n this.$api.AllCompetition(this.query).then(data => {\n return exportExcel(data.data);\n }).catch(e => {\n console.error(e);\n this.$message.error(e.msg || '导出失败');\n }).finally(() => {\n this.exporting = false;\n });\n },\n },\n};\n\n// 格式化日期函数\nfunction formatDate(dateString) {\n const date = new Date(dateString);\n if (isNaN(date.getTime())) {\n console.error(`Invalid date: ${dateString}`);\n return 'Invalid Date';\n }\n const year = date.getFullYear();\n const month = String(date.getMonth() + 1).padStart(2, '0');\n const day = String(date.getDate()).padStart(2, '0');\n return `${year}-${month}-${day}`;\n}\nfunction exportExcel(data) {\n const header = this.createTableColumns().map(v => v.title);\n header.pop(); // 去掉最后一栏操作栏\n return exportData({\n name: '赛事信息',\n data,\n header,\n keyMap: {\n competitionName: '赛事名称',\n userId: '主办方',\n announcementLink: '参考资料',\n registrationStartTime: '开始时间',\n registrationEndTime: '结束时间',\n },\n });\n}\n</script>\n"],"mappings":"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","ignoreList":[]}]} |