| 1 |
- {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\setting\\storage\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\setting\\storage\\index.vue","mtime":1761614939058},{"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:DQppbXBvcnQgQ2xpcGJvYXJkSlMgZnJvbSAnY2xpcGJvYXJkJzsNCmltcG9ydCB1cGxvYWRQaWN0dXJlcyBmcm9tICdAL2NvbXBvbmVudHMvdXBsb2FkUGljdHVyZXMnOw0KDQppbXBvcnQgew0KICBzdG9yYWdlQ29uZmlnQXBpLA0KICBhZGRDb25maWdBcGksDQogIGFkZFN0b3JhZ2VBcGksDQogIHN0b3JhZ2VMaXN0QXBpLA0KICBzdG9yYWdlU3luY2hBcGksDQogIHN0b3JhZ2VTd2l0Y2hBcGksDQogIHN0b3JhZ2VTdGF0dXNBcGksDQogIGVkaXRTdG9yYWdlQXBpLA0KICBwb3NpdGlvbkluZm9BcGksDQogIHBvc2l0aW9uUG9zdEFwaSwNCiAgc2F2ZVR5cGUsDQp9IGZyb20gJ0AvYXBpL3NldHRpbmcnOw0KZXhwb3J0IGRlZmF1bHQgew0KICBjb21wb25lbnRzOiB7IHVwbG9hZFBpY3R1cmVzIH0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIG1vZGFsUGljOiBmYWxzZSwNCiAgICAgIHNhdmVUeXBlOiAwLA0KICAgICAgaXNDaG9pY2U6ICfljZXpgIknLA0KICAgICAgZ3JpZEJ0bjogew0KICAgICAgICB4bDogNCwNCiAgICAgICAgbGc6IDgsDQogICAgICAgIG1kOiA4LA0KICAgICAgICBzbTogOCwNCiAgICAgICAgeHM6IDgsDQogICAgICB9LA0KICAgICAgZ3JpZFBpYzogew0KICAgICAgICB4bDogNiwNCiAgICAgICAgbGc6IDgsDQogICAgICAgIG1kOiAxMiwNCiAgICAgICAgc206IDEyLA0KICAgICAgICB4czogMTIsDQogICAgICB9LA0KICAgICAgcG9zaXRpb25JZDogMSwNCiAgICAgIHBvc2l0aW9udGx0OiAnJywNCiAgICAgIGZvcm1WYWxpZGF0ZTogew0KICAgICAgICBpbWFnZV90aHVtYl9zdGF0dXM6IDAsDQogICAgICAgIHRodW1iX2JpZ19oZWlnaHQ6ICcnLA0KICAgICAgICB0aHVtYl9iaWdfd2lkdGg6ICcnLA0KICAgICAgICB0aHVtYl9taWRfd2lkdGg6ICcnLA0KICAgICAgICB0aHVtYl9taWRfaGVpZ2h0OiAnJywNCiAgICAgICAgdGh1bWJfc21hbGxfaGVpZ2h0OiAnJywNCiAgICAgICAgdGh1bWJfc21hbGxfd2lkdGg6ICcnLA0KICAgICAgICBpbWFnZV93YXRlcm1hcmtfc3RhdHVzOiAwLA0KICAgICAgICB3YXRlcm1hcmtfdHlwZTogMSwNCiAgICAgICAgd2F0ZXJtYXJrX29wYWNpdHk6ICcnLA0KICAgICAgICB3YXRlcm1hcmtfcm90YXRlOiAnJywNCiAgICAgICAgd2F0ZXJtYXJrX3Bvc2l0aW9uOiAxLA0KICAgICAgfSwNCiAgICAgIGJveHM6IFsNCiAgICAgICAgeyBjb250ZW50OiAn5bem5LiKJywgaWQ6IDEgfSwNCiAgICAgICAgeyBjb250ZW50OiAn5LiKJywgaWQ6IDIgfSwNCiAgICAgICAgeyBjb250ZW50OiAn5Y+z5LiKJywgaWQ6IDMgfSwNCiAgICAgICAgeyBjb250ZW50OiAn5bem5LitJywgaWQ6IDQgfSwNCiAgICAgICAgeyBjb250ZW50OiAn5LitJywgaWQ6IDUgfSwNCiAgICAgICAgeyBjb250ZW50OiAn5Y+z5LitJywgaWQ6IDYgfSwNCiAgICAgICAgeyBjb250ZW50OiAn5bem5LiLJywgaWQ6IDcgfSwNCiAgICAgICAgeyBjb250ZW50OiAn5LiLJywgaWQ6IDggfSwNCiAgICAgICAgeyBjb250ZW50OiAn5Y+z5LiLJywgaWQ6IDkgfSwNCiAgICAgIF0sDQogICAgICBydWxlVmFsaWRhdGU6IHt9LA0KICAgICAgY29uZmlndU1vZGFsOiBmYWxzZSwNCiAgICAgIGNvbmZpZ0RhdGE6ICcnLA0KICAgICAgaGVhZGVyTGlzdDogWw0KICAgICAgICB7IGxhYmVsOiAn5YKo5a2Y6YWN572uJywgdmFsdWU6ICcxJyB9LA0KICAgICAgICB7IGxhYmVsOiAn5LiD54mb5LqR5YKo5a2YJywgdmFsdWU6ICcyJyB9LA0KICAgICAgICB7IGxhYmVsOiAn6Zi/6YeM5LqR5YKo5a2YJywgdmFsdWU6ICczJyB9LA0KICAgICAgICB7IGxhYmVsOiAn6IW+6K6v5LqR5YKo5a2YJywgdmFsdWU6ICc0JyB9LA0KICAgICAgICB7IGxhYmVsOiAn5Lqs5Lic5LqR5YKo5a2YJywgdmFsdWU6ICc1JyB9LA0KICAgICAgICB7IGxhYmVsOiAn5Y2O5Li65LqR5YKo5a2YJywgdmFsdWU6ICc2JyB9LA0KICAgICAgICB7IGxhYmVsOiAn5aSp57+85LqR5YKo5a2YJywgdmFsdWU6ICc3JyB9LA0KICAgICAgICAvLyB7IGxhYmVsOiAi57yp55Wl5Zu+6YWN572uIiwgdmFsdWU6ICIxMCIgfSwNCiAgICAgIF0sDQoNCiAgICAgIHRvdGFsOiAwLA0KICAgICAgbGlzdDogew0KICAgICAgICBwYWdlOiAxLA0KICAgICAgICBsaW1pdDogMTUsDQogICAgICAgIHR5cGU6ICcxJywNCiAgICAgIH0sDQogICAgICBsZXZlbExpc3RzOiBbXSwNCiAgICAgIGN1cnJlbnRUYWI6ICcxJywNCiAgICAgIGxvYWRpbmc6IGZhbHNlLA0KICAgICAgYWRkRGF0YTogew0KICAgICAgICBpbnB1dDogJycsDQogICAgICAgIHNlbGVjdDogJycsDQogICAgICAgIGp1cmlzZGljdGlvbjogJzEnLA0KICAgICAgICB0eXBlOiAnMScsDQogICAgICB9LA0KICAgICAgY29uZkRhdGE6IHsNCiAgICAgICAgQWNjZXNzS2V5SWQ6ICcnLA0KICAgICAgICBBY2Nlc3NLZXlTZWNyZXQ6ICcnLA0KICAgICAgfSwNCiAgICAgIGxvY2FsU3RvcmFnZTogZmFsc2UsDQogICAgfTsNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICBzdG9yYWdlQ29uZmlnQXBpKCkudGhlbigocmVzKSA9PiB7DQogICAgICBpZiAocmVzLmRhdGEudHlwZSA9PSAxKSB7DQogICAgICAgIHRoaXMubG9jYWxTdG9yYWdlID0gdHJ1ZTsNCiAgICAgIH0NCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnVwbG9hZF90eXBlID0gcmVzLmRhdGEudHlwZTsNCiAgICAgIHRoaXMuY3VycmVudFRhYiA9IHJlcy5kYXRhLnR5cGUudG9TdHJpbmcoKTsNCiAgICAgIHRoaXMuY2hhbmdlVGFiKCk7DQogICAgfSk7DQogIH0sDQogIG1ldGhvZHM6IHsNCiAgICBpbnNlcnRDb3B5KHRleHQpIHsNCiAgICAgIHRoaXMuJGNvcHlUZXh0KHRleHQpDQogICAgICAgIC50aGVuKChtZXNzYWdlKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCflpI3liLbmiJDlip8nKTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChlcnIpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKCflpI3liLblpLHotKUnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICBjaGFuZ2VTYXZlKHR5cGUpIHsNCiAgICAgIHNhdmVUeXBlKHR5cGUpDQogICAgICAgIC50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MocmVzLm1zZyk7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihlcnIubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICBiaW5kYm94KGl0ZW0pIHsNCiAgICAgIHRoaXMucG9zaXRpb25JZCA9IGl0ZW0uaWQ7DQogICAgICB0aGlzLnBvc2l0aW9udGx0ID0gaXRlbS5jb250ZW50Ow0KICAgICAgdGhpcy5mb3JtVmFsaWRhdGUud2F0ZXJtYXJrX3Bvc2l0aW9uID0gaXRlbS5pZDsNCiAgICB9LA0KICAgIGhhbmRsZVN1Ym1pdChuYW1lKSB7DQogICAgICBpZiAodGhpcy5mb3JtVmFsaWRhdGUuaW1hZ2Vfd2F0ZXJtYXJrX3N0YXR1cykgew0KICAgICAgICB0aGlzLiRyZWZzW25hbWVdLnZhbGlkYXRlKCh2YWxpZCkgPT4gew0KICAgICAgICAgIGlmICh2YWxpZCkgew0KICAgICAgICAgICAgdGhpcy5wb3N0TWVzc2FnZSh0aGlzLmZvcm1WYWxpZGF0ZSk7DQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoJ0ZhaWwhJyk7DQogICAgICAgICAgfQ0KICAgICAgICB9KTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMucG9zdE1lc3NhZ2UodGhpcy5mb3JtVmFsaWRhdGUpOw0KICAgICAgfQ0KICAgIH0sDQogICAgLy/kv53lrZjmjqXlj6MNCiAgICBwb3N0TWVzc2FnZShkYXRhKSB7DQogICAgICBwb3NpdGlvblBvc3RBcGkoZGF0YSkNCiAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChlcnIpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKGVyci5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOmAieaLqeWbvueJhw0KICAgIG1vZGFsUGljVGFwKCkgew0KICAgICAgdGhpcy5tb2RhbFBpYyA9IHRydWU7DQogICAgfSwNCiAgICAvLyDpgInkuK3lm77niYcNCiAgICBnZXRQaWMocGMpIHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLndhdGVybWFya19pbWFnZSA9IHBjLmF0dF9kaXI7DQogICAgICB0aGlzLm1vZGFsUGljID0gZmFsc2U7DQogICAgfSwNCiAgICBjb25maWcocm93KSB7DQogICAgICB0aGlzLmNvbmZpZ3VNb2RhbCA9IHRydWU7DQogICAgICB0aGlzLmNvbmZpZ0RhdGEgPSByb3c7DQogICAgfSwNCiAgICAvL+WQjOatpeWCqOWtmOepuumXtA0KICAgIHN5bmNocm8oKSB7DQogICAgICBzdG9yYWdlU3luY2hBcGkodGhpcy5jdXJyZW50VGFiKQ0KICAgICAgICAudGhlbigocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOw0KICAgICAgICAgIHRoaXMuZ2V0bGlzdCgpOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKGVycikgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoZXJyLm1zZyk7DQogICAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5re75Yqg5a2Y5YKo56m66Ze0DQogICAgYWRkU3RvcmFnZUJ0bigpIHsNCiAgICAgIHRoaXMuJG1vZGFsRm9ybShhZGRTdG9yYWdlQXBpKHRoaXMuY3VycmVudFRhYikpLnRoZW4oKCkgPT4gew0KICAgICAgICB0aGlzLmdldGxpc3QoKTsNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5L+u5pS56YWN572u5L+h5oGvDQogICAgYWRkQ29uZmlnQnRuKCkgew0KICAgICAgdGhpcy4kbW9kYWxGb3JtKGFkZENvbmZpZ0FwaSh0aGlzLmN1cnJlbnRUYWIpKS50aGVuKCgpID0+IHsNCiAgICAgICAgdGhpcy5nZXRsaXN0KCk7DQogICAgICB9KTsNCiAgICB9LA0KICAgIC8v5L+u5pS556m66Ze05Z+f5ZCNDQogICAgZWRpdChyb3cpIHsNCiAgICAgIHRoaXMuJG1vZGFsRm9ybShlZGl0U3RvcmFnZUFwaShyb3cuaWQpKS50aGVuKCgpID0+IHsNCiAgICAgICAgdGhpcy5nZXRsaXN0KCk7DQogICAgICB9KTsNCiAgICB9LA0KICAgIGNoYW5nZVN3aXRjaChyb3csIGl0ZW0pIHsNCiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gew0KICAgICAgICB0aGlzLiRtc2dib3goew0KICAgICAgICAgIHRpdGxlOiAn5YiH5o2i54q25oCBJywNCiAgICAgICAgICBtZXNzYWdlOiAn5oKo56Gu6K6k6KaB5YiH5o2i5L2/55So54q25oCB5ZCXJywNCiAgICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLA0KICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLA0KICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywNCiAgICAgICAgICBpY29uQ2xhc3M6ICdlbC1pY29uLXdhcm5pbmcnLA0KICAgICAgICAgIGNvbmZpcm1CdXR0b25DbGFzczogJ2J0bi1jdXN0b20tY2FuY2VsJywNCiAgICAgICAgfSkNCiAgICAgICAgICAudGhlbigoKSA9PiB7DQogICAgICAgICAgICBzdG9yYWdlU3RhdHVzQXBpKHJvdy5pZCkNCiAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgICAgICAgICB0aGlzLmdldGxpc3QoKTsNCiAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHsNCiAgICAgICAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKGVyci5tc2cpOw0KICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICB9KQ0KICAgICAgICAgIC5jYXRjaCgoKSA9PiB7fSk7DQogICAgICB9KTsNCiAgICB9LA0KICAgIGdldGxpc3QoKSB7DQogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOw0KICAgICAgc3RvcmFnZUxpc3RBcGkodGhpcy5saXN0KS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgdGhpcy50b3RhbCA9IHJlcy5kYXRhLmNvdW50Ow0KICAgICAgICB0aGlzLmxldmVsTGlzdHMgPSByZXMuZGF0YS5saXN0Ow0KICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgIH0pOw0KICAgIH0sDQogICAgY2hhbmdlVGFiKCkgew0KICAgICAgdGhpcy5saXN0LnR5cGUgPSB0aGlzLmN1cnJlbnRUYWI7DQogICAgICB0aGlzLmxpc3QucGFnZSA9IDE7DQogICAgICBpZiAodGhpcy5jdXJyZW50VGFiID09IDEpIHsNCiAgICAgICAgdGhpcy5nZXRwb3NpdGlvbigpOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy5nZXRsaXN0KCk7DQogICAgICB9DQogICAgfSwNCiAgICBnZXRwb3NpdGlvbigpIHsNCiAgICAgIGxldCB0aGF0ID0gdGhpczsNCiAgICAgIHBvc2l0aW9uSW5mb0FwaSgpLnRoZW4oKHJlcykgPT4gew0KICAgICAgICB0aGlzLmZvcm1WYWxpZGF0ZSA9IHJlcy5kYXRhOw0KICAgICAgICB0aGlzLnBvc2l0aW9uSWQgPSByZXMuZGF0YS53YXRlcm1hcmtfcG9zaXRpb247DQogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5ib3hzLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgaWYgKHRoaXMuYm94c1tpXS5pZCA9PSByZXMuZGF0YS53YXRlcm1hcmtfcG9zaXRpb24pIHsNCiAgICAgICAgICAgIHRoYXQuYmluZGJveCh0aGlzLmJveHNbaV0pOw0KICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgfSk7DQogICAgfSwNCiAgICBhZGRTd2l0Y2goZSkgew0KICAgICAgaWYgKGUpIHsNCiAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2UgPSAxOw0KICAgICAgfQ0KICAgICAgc3RvcmFnZVN3aXRjaEFwaSh7IHR5cGU6IHRoaXMubG9jYWxTdG9yYWdlIH0pDQogICAgICAgIC50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MocmVzLm1zZyk7DQogICAgICAgICAgdGhpcy5nZXRsaXN0KCk7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihlcnIubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDliKDpmaQNCiAgICBkZWwocm93LCB0aXQsIG51bSkgew0KICAgICAgbGV0IGRlbGZyb21EYXRhID0gew0KICAgICAgICB0aXRsZTogdGl0LA0KICAgICAgICBudW06IG51bSwNCiAgICAgICAgdXJsOiBgc3lzdGVtL2NvbmZpZy9zdG9yYWdlLyR7cm93LmlkfWAsDQogICAgICAgIG1ldGhvZDogJ0RFTEVURScsDQogICAgICAgIGlkczogJycsDQogICAgICB9Ow0KICAgICAgdGhpcy4kbW9kYWxTdXJlKGRlbGZyb21EYXRhKQ0KICAgICAgICAudGhlbigocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOw0KICAgICAgICAgIHRoaXMuZ2V0bGlzdCgpOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7DQogICAgICAgIH0pOw0KICAgIH0sDQogIH0sDQp9Ow0K"},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AAidA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/pages/setting/storage","sourcesContent":["<template>\r\n <div>\r\n <div class=\"message\">\r\n <el-card :bordered=\"false\" shadow=\"never\" :body-style=\"{ padding: '0 20px 20px' }\">\r\n <div class=\"\">\r\n <el-tabs v-model=\"currentTab\" @tab-click=\"changeTab\">\r\n <el-tab-pane\r\n :label=\"item.label\"\r\n :name=\"item.value.toString()\"\r\n v-for=\"(item, index) in headerList\"\r\n :key=\"index\"\r\n />\r\n </el-tabs>\r\n </div>\r\n <el-alert closable v-if=\"currentTab == 1\">\r\n <template slot=\"title\">\r\n <p>上传图片时会生成缩略图</p>\r\n <p>未设置按照系统默认生成,系统默认:大图800*800,中图300*300,小图150*150</p>\r\n <p>水印只在上传图片时生成,原图,大中小缩略图上都按照比例存在。</p>\r\n <p>若上传图片时未开启水印,则该图在开启水印之后依旧无水印效果。</p>\r\n </template>\r\n </el-alert>\r\n <el-alert closable v-else>\r\n <template slot=\"title\">\r\n <p v-if=\"currentTab == 2\">\r\n 七牛云开通方法:<a href=\"https://doc.crmeb.com/single/v5/7792\" target=\"_blank\">点击查看</a>\r\n </p>\r\n <p v-if=\"currentTab == 3\">\r\n 阿里云oss开通方法:<a href=\"https://doc.crmeb.com/single/v5/7790\" target=\"_blank\">点击查看</a>\r\n </p>\r\n <p v-if=\"currentTab == 4\">\r\n 腾讯云cos开通方法:<a href=\"https://doc.crmeb.com/single/v5/7791\" target=\"_blank\">点击查看</a>\r\n </p>\r\n <p v-if=\"currentTab == 5\">\r\n 京东云cos开通方法:<a href=\"https://doc.crmeb.com/single/v5/8522\" target=\"_blank\">点击查看</a>\r\n </p>\r\n <p v-if=\"currentTab == 6\">\r\n 华为云cos开通方法:<a href=\"https://doc.crmeb.com/single/v5/8523\" target=\"_blank\">点击查看</a>\r\n </p>\r\n <p v-if=\"currentTab == 7\">\r\n 天翼云cos开通方法:<a href=\"https://doc.crmeb.com/single/v5/8524\" target=\"_blank\">点击查看</a>\r\n </p>\r\n <p>第一步: 添加【存储空间】(空间名称不能重复)</p>\r\n <p>第二步: 开启【使用状态】</p>\r\n <template v-if=\"currentTab == 2\">\r\n <p>第三步(必选): 选择云存储空间列表上的修改【空间域名操作】</p>\r\n <p>第四步(必选): 选择云存储空间列表上的修改【CNAME配置】,打开后复制记录值到对应的平台解析</p>\r\n </template>\r\n <template v-else>\r\n <p>第三步(可选): 选择云存储空间列表上的修改【空间域名操作】</p>\r\n <p>第四步(可选): 选择云存储空间列表上的修改【CNAME配置】,打开后复制记录值到对应的平台解析</p>\r\n </template>\r\n </template>\r\n </el-alert>\r\n </el-card>\r\n </div>\r\n <div class=\"pt16\" v-if=\"currentTab == 1\">\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\">\r\n <el-row>\r\n <el-col :span=\"24\">\r\n <span class=\"save-type\"> 存储方式: </span>\r\n <el-radio-group v-model=\"formValidate.upload_type\" @input=\"changeSave\">\r\n <el-radio label=\"1\">本地存储</el-radio>\r\n <el-radio label=\"2\">七牛云存储</el-radio>\r\n <el-radio label=\"3\">阿里云存储</el-radio>\r\n <el-radio label=\"4\">腾讯云存储</el-radio>\r\n <el-radio label=\"5\">京东云存储</el-radio>\r\n <el-radio label=\"6\">华为云存储</el-radio>\r\n <el-radio label=\"7\">天翼云存储</el-radio>\r\n </el-radio-group>\r\n <!-- <el-switch :active-value=\"1\" :inactive-value=\"0\"\r\n v-model=\"localStorage\"\r\n size=\"large\"\r\n @change=\"addSwitch\"\r\n >\r\n <span slot=\"open\">开启</span>\r\n <span slot=\"close\">关闭</span>\r\n </el-switch> -->\r\n </el-col>\r\n </el-row>\r\n </el-card>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\">\r\n <el-form ref=\"formValidate\" :model=\"formValidate\" :rules=\"ruleValidate\">\r\n <div class=\"abbreviation\">\r\n <el-form-item label=\"是否开启缩略图:\" label-width=\"110px\">\r\n <el-switch\r\n :active-value=\"1\"\r\n :inactive-value=\"0\"\r\n v-model=\"formValidate.image_thumb_status\"\r\n size=\"large\"\r\n >\r\n <span slot=\"open\">开启</span>\r\n <span slot=\"close\">关闭</span>\r\n </el-switch>\r\n </el-form-item>\r\n <div class=\"top\" v-if=\"formValidate.image_thumb_status == 1\">\r\n <div class=\"topBox\">\r\n <div class=\"topLeft\">\r\n <div class=\"img\">\r\n <img class=\"imgs\" src=\"../../../assets/images/abbreviationBig.png\" alt=\"\" />\r\n </div>\r\n <div>缩略大图</div>\r\n </div>\r\n <div class=\"topRight\">\r\n <el-form-item label=\"宽:\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.thumb_big_width\"\r\n placeholder=\"请输入宽度\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item label=\"高:\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.thumb_big_height\"\r\n placeholder=\"请输入高度\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n </div>\r\n <div class=\"topBox\">\r\n <div class=\"topLeft\">\r\n <div class=\"img\">\r\n <img class=\"imgs\" src=\"../../../assets/images/abbreviation.png\" alt=\"\" />\r\n </div>\r\n <div>缩略中图</div>\r\n </div>\r\n <div class=\"topRight\">\r\n <el-form-item label=\"宽:\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.thumb_mid_width\"\r\n placeholder=\"请输入宽度\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item label=\"高:\">\r\n <el-input\r\n type=\"number\"\r\n class=\"topIput\"\r\n v-model=\"formValidate.thumb_mid_height\"\r\n placeholder=\"请输入高度\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n </div>\r\n <div class=\"topBox\">\r\n <div class=\"topLeft\">\r\n <div class=\"img\">\r\n <img class=\"imgs\" src=\"../../../assets/images/abbreviationSmall.png\" alt=\"\" />\r\n </div>\r\n <div>缩略小图</div>\r\n </div>\r\n <div class=\"topRight\">\r\n <el-form-item label=\"宽:\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.thumb_small_width\"\r\n placeholder=\"请输入宽度\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item label=\"高:\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.thumb_small_height\"\r\n placeholder=\"请输入高度\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n </div>\r\n </div>\r\n <el-divider />\r\n <div class=\"content mt20\">\r\n <el-form-item label=\"是否开启水印:\" label-width=\"110px\">\r\n <el-switch\r\n :active-value=\"1\"\r\n :inactive-value=\"0\"\r\n v-model=\"formValidate.image_watermark_status\"\r\n size=\"large\"\r\n >\r\n <span slot=\"open\">开启</span>\r\n <span slot=\"close\">关闭</span>\r\n </el-switch>\r\n </el-form-item>\r\n <div v-if=\"formValidate.image_watermark_status == 1\">\r\n <el-form-item label=\"类型:\" label-width=\"110px\">\r\n <el-radio-group v-model=\"formValidate.watermark_type\">\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 v-if=\"formValidate.watermark_type == 1\">\r\n <div class=\"flex\">\r\n <el-form-item class=\"contentIput\" label=\"透明度:\" prop=\"name\" label-width=\"110px\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_opacity\"\r\n placeholder=\"请输入水印透明度\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item class=\"contentIput\" label=\"倾斜度:\" prop=\"mail\" label-width=\"110px\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_rotate\"\r\n placeholder=\"请输入水印倾斜度\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n <div class=\"flex\">\r\n <el-form-item class=\"contentIput\" label=\"图片:\" prop=\"name\" label-width=\"110px\">\r\n <div class=\"picBox\" v-db-click @click=\"modalPicTap('单选')\">\r\n <div class=\"pictrue\" v-if=\"formValidate.watermark_image\">\r\n <img :src=\"formValidate.watermark_image\" />\r\n </div>\r\n <div class=\"upLoad acea-row row-center-wrapper\" v-else>\r\n <i class=\"el-icon-picture-outline\" style=\"font-size: 24px\"></i>\r\n </div>\r\n </div>\r\n </el-form-item>\r\n <el-form-item class=\"contentIput\" label=\"位置:\" prop=\"mail\" label-width=\"110px\">\r\n <div class=\"conents\">\r\n <div class=\"positionBox\">\r\n <div\r\n class=\"topIput box\"\r\n :class=\"positionId == item.id ? 'on' : ''\"\r\n v-for=\"(item, index) in boxs\"\r\n :key=\"index\"\r\n v-db-click\r\n @click=\"bindbox(item)\"\r\n ></div>\r\n </div>\r\n <div class=\"title\">{{ positiontlt }}</div>\r\n </div>\r\n </el-form-item>\r\n </div>\r\n <div class=\"flex\">\r\n <el-form-item class=\"contentIput\" label=\"横坐标偏移量:\" label-width=\"110px\" prop=\"name\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_x\"\r\n placeholder=\"请输入水印横坐标偏移量\"\r\n style=\"width: 240px\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item class=\"contentIput\" label=\"纵坐标偏移量:\" label-width=\"110px\" prop=\"mail\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_y\"\r\n placeholder=\"请输入水印纵坐标偏移量\"\r\n style=\"width: 240px\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n </div>\r\n <!-- 水印类型为文字 -->\r\n <div v-else>\r\n <div class=\"flex\">\r\n <el-form-item class=\"contentIput\" label=\"文字:\" label-width=\"110px\" prop=\"name\">\r\n <el-input class=\"topIput\" v-model=\"formValidate.watermark_text\" placeholder=\"请输入水印文字\">\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item class=\"contentIput\" label=\"文字大小:\" label-width=\"110px\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_text_size\"\r\n placeholder=\"请输入水印文字大小\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n <div class=\"flex\">\r\n <el-form-item class=\"contentIput\" label=\"字体颜色:\" prop=\"name\" label-width=\"110px\">\r\n <el-color-picker v-model=\"formValidate.watermark_text_color\"></el-color-picker>\r\n </el-form-item>\r\n <el-form-item class=\"contentIput\" label=\"位置:\" prop=\"mail\" label-width=\"110px\">\r\n <div class=\"conents\">\r\n <div class=\"positionBox\">\r\n <div\r\n class=\"topIput box\"\r\n :class=\"positionId == item.id ? 'on' : ''\"\r\n v-for=\"(item, index) in boxs\"\r\n :key=\"index\"\r\n v-db-click\r\n @click=\"bindbox(item)\"\r\n ></div>\r\n </div>\r\n <div class=\"title\">{{ positiontlt }}</div>\r\n </div>\r\n </el-form-item>\r\n </div>\r\n <div class=\"flex\">\r\n <el-form-item class=\"contentIput\" label=\"字体旋转角度:\" label-width=\"110px\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_text_angle\"\r\n placeholder=\"请输入水印字体旋转角度\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item class=\"contentIput\" label=\"横坐标偏移量:\" label-width=\"110px\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_x\"\r\n placeholder=\"请输入水印横坐标偏移量\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n <el-form-item class=\"contentIput\" label=\"纵坐标偏移量:\" prop=\"mail\" label-width=\"110px\">\r\n <el-input\r\n class=\"topIput\"\r\n type=\"number\"\r\n v-model=\"formValidate.watermark_y\"\r\n placeholder=\"请输入水印纵坐标偏移量\"\r\n >\r\n <span slot=\"append\">px</span>\r\n </el-input>\r\n </el-form-item>\r\n </div>\r\n </div>\r\n </div>\r\n <el-form-item>\r\n <el-button type=\"primary\" v-db-click @click=\"handleSubmit('formValidate')\">保存</el-button>\r\n </el-form-item>\r\n </div>\r\n </el-form>\r\n </el-card>\r\n </div>\r\n <!-- 缩略图配置 -->\r\n <div class=\"pt10\" v-else-if=\"currentTab == 10\"></div>\r\n <div class=\"pt10\" v-else>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\">\r\n <el-row class=\"mb20\">\r\n <el-col :span=\"24\">\r\n <el-button type=\"primary\" v-db-click @click=\"addStorageBtn\">添加存储空间</el-button>\r\n <el-button type=\"success\" v-db-click @click=\"synchro\" style=\"margin-left: 20px\">同步存储空间</el-button>\r\n <el-button v-db-click @click=\"addConfigBtn\" style=\"float: right\">修改配置信息</el-button>\r\n </el-col>\r\n </el-row>\r\n <el-table\r\n :data=\"levelLists\"\r\n ref=\"table\"\r\n class=\"mt14\"\r\n v-loading=\"loading\"\r\n highlight-current-row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <el-table-column label=\"储存空间名称\" min-width=\"120\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.name }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"区域\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row._region }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"空间域名\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.domain }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"使用状态\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <el-switch\r\n class=\"defineSwitch\"\r\n :active-value=\"1\"\r\n :inactive-value=\"0\"\r\n v-model=\"scope.row.status\"\r\n :value=\"scope.row.status\"\r\n @change=\"changeSwitch(scope.row, index)\"\r\n size=\"large\"\r\n active-text=\"开启\"\r\n inactive-text=\"关闭\"\r\n >\r\n </el-switch>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"创建时间\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row._add_time }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"更新时间\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row._update_time }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" fixed=\"right\" width=\"220\">\r\n <template slot-scope=\"scope\">\r\n <template v-if=\"scope.row.domain && scope.row.domain != scope.row.cname\">\r\n <span class=\"btn\" v-db-click @click=\"config(scope.row)\">CNAME配置</span>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n </template>\r\n <span class=\"btn\" v-db-click @click=\"edit(scope.row)\">修改空间域名</span>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <span class=\"btn\" v-db-click @click=\"del(scope.row, '删除该数据', scope.$index)\">删除</span>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"acea-row row-right page\">\r\n <pagination\r\n v-if=\"total\"\r\n :total=\"total\"\r\n :page.sync=\"list.page\"\r\n :limit.sync=\"list.limit\"\r\n @pagination=\"getlist\"\r\n />\r\n </div>\r\n </el-card>\r\n </div>\r\n <el-dialog :visible.sync=\"configuModal\" title=\"CNAME配置\" width=\"570px\">\r\n <div>\r\n <div class=\"confignv\"><span class=\"configtit\">主机记录:</span>{{ configData.domain }}</div>\r\n <div class=\"confignv\"><span class=\"configtit\">记录类型:</span>CNAME</div>\r\n <div class=\"confignv\">\r\n <span class=\"configtit\">记录值:</span>{{ configData.cname }}\r\n <span class=\"copy copy-data\" v-db-click @click=\"insertCopy(configData.cname)\">复制</span>\r\n </div>\r\n </div>\r\n </el-dialog>\r\n <el-dialog :visible.sync=\"modalPic\" width=\"950px\" title=\"上传商品图\" :close-on-click-modal=\"false\">\r\n <uploadPictures\r\n :isChoice=\"isChoice\"\r\n @getPic=\"getPic\"\r\n :gridBtn=\"gridBtn\"\r\n :gridPic=\"gridPic\"\r\n v-if=\"modalPic\"\r\n ></uploadPictures>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport ClipboardJS from 'clipboard';\r\nimport uploadPictures from '@/components/uploadPictures';\r\n\r\nimport {\r\n storageConfigApi,\r\n addConfigApi,\r\n addStorageApi,\r\n storageListApi,\r\n storageSynchApi,\r\n storageSwitchApi,\r\n storageStatusApi,\r\n editStorageApi,\r\n positionInfoApi,\r\n positionPostApi,\r\n saveType,\r\n} from '@/api/setting';\r\nexport default {\r\n components: { uploadPictures },\r\n data() {\r\n return {\r\n modalPic: false,\r\n saveType: 0,\r\n isChoice: '单选',\r\n gridBtn: {\r\n xl: 4,\r\n lg: 8,\r\n md: 8,\r\n sm: 8,\r\n xs: 8,\r\n },\r\n gridPic: {\r\n xl: 6,\r\n lg: 8,\r\n md: 12,\r\n sm: 12,\r\n xs: 12,\r\n },\r\n positionId: 1,\r\n positiontlt: '',\r\n formValidate: {\r\n image_thumb_status: 0,\r\n thumb_big_height: '',\r\n thumb_big_width: '',\r\n thumb_mid_width: '',\r\n thumb_mid_height: '',\r\n thumb_small_height: '',\r\n thumb_small_width: '',\r\n image_watermark_status: 0,\r\n watermark_type: 1,\r\n watermark_opacity: '',\r\n watermark_rotate: '',\r\n watermark_position: 1,\r\n },\r\n boxs: [\r\n { content: '左上', id: 1 },\r\n { content: '上', id: 2 },\r\n { content: '右上', id: 3 },\r\n { content: '左中', id: 4 },\r\n { content: '中', id: 5 },\r\n { content: '右中', id: 6 },\r\n { content: '左下', id: 7 },\r\n { content: '下', id: 8 },\r\n { content: '右下', id: 9 },\r\n ],\r\n ruleValidate: {},\r\n configuModal: false,\r\n configData: '',\r\n headerList: [\r\n { label: '储存配置', value: '1' },\r\n { label: '七牛云储存', value: '2' },\r\n { label: '阿里云储存', value: '3' },\r\n { label: '腾讯云储存', value: '4' },\r\n { label: '京东云储存', value: '5' },\r\n { label: '华为云储存', value: '6' },\r\n { label: '天翼云储存', value: '7' },\r\n // { label: \"缩略图配置\", value: \"10\" },\r\n ],\r\n\r\n total: 0,\r\n list: {\r\n page: 1,\r\n limit: 15,\r\n type: '1',\r\n },\r\n levelLists: [],\r\n currentTab: '1',\r\n loading: false,\r\n addData: {\r\n input: '',\r\n select: '',\r\n jurisdiction: '1',\r\n type: '1',\r\n },\r\n confData: {\r\n AccessKeyId: '',\r\n AccessKeySecret: '',\r\n },\r\n localStorage: false,\r\n };\r\n },\r\n created() {\r\n storageConfigApi().then((res) => {\r\n if (res.data.type == 1) {\r\n this.localStorage = true;\r\n }\r\n this.formValidate.upload_type = res.data.type;\r\n this.currentTab = res.data.type.toString();\r\n this.changeTab();\r\n });\r\n },\r\n methods: {\r\n insertCopy(text) {\r\n this.$copyText(text)\r\n .then((message) => {\r\n this.$message.success('复制成功');\r\n })\r\n .catch((err) => {\r\n this.$message.error('复制失败');\r\n });\r\n },\r\n changeSave(type) {\r\n saveType(type)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n bindbox(item) {\r\n this.positionId = item.id;\r\n this.positiontlt = item.content;\r\n this.formValidate.watermark_position = item.id;\r\n },\r\n handleSubmit(name) {\r\n if (this.formValidate.image_watermark_status) {\r\n this.$refs[name].validate((valid) => {\r\n if (valid) {\r\n this.postMessage(this.formValidate);\r\n } else {\r\n this.$message.error('Fail!');\r\n }\r\n });\r\n } else {\r\n this.postMessage(this.formValidate);\r\n }\r\n },\r\n //保存接口\r\n postMessage(data) {\r\n positionPostApi(data)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n // 选择图片\r\n modalPicTap() {\r\n this.modalPic = true;\r\n },\r\n // 选中图片\r\n getPic(pc) {\r\n this.formValidate.watermark_image = pc.att_dir;\r\n this.modalPic = false;\r\n },\r\n config(row) {\r\n this.configuModal = true;\r\n this.configData = row;\r\n },\r\n //同步储存空间\r\n synchro() {\r\n storageSynchApi(this.currentTab)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n this.getlist();\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n // 添加存储空间\r\n addStorageBtn() {\r\n this.$modalForm(addStorageApi(this.currentTab)).then(() => {\r\n this.getlist();\r\n });\r\n },\r\n // 修改配置信息\r\n addConfigBtn() {\r\n this.$modalForm(addConfigApi(this.currentTab)).then(() => {\r\n this.getlist();\r\n });\r\n },\r\n //修改空间域名\r\n edit(row) {\r\n this.$modalForm(editStorageApi(row.id)).then(() => {\r\n this.getlist();\r\n });\r\n },\r\n changeSwitch(row, item) {\r\n return new Promise((resolve) => {\r\n this.$msgbox({\r\n title: '切换状态',\r\n message: '您确认要切换使用状态吗',\r\n showCancelButton: true,\r\n cancelButtonText: '取消',\r\n confirmButtonText: '确定',\r\n iconClass: 'el-icon-warning',\r\n confirmButtonClass: 'btn-custom-cancel',\r\n })\r\n .then(() => {\r\n storageStatusApi(row.id)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n this.getlist();\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n })\r\n .catch(() => {});\r\n });\r\n },\r\n getlist() {\r\n this.loading = true;\r\n storageListApi(this.list).then((res) => {\r\n this.total = res.data.count;\r\n this.levelLists = res.data.list;\r\n this.loading = false;\r\n });\r\n },\r\n changeTab() {\r\n this.list.type = this.currentTab;\r\n this.list.page = 1;\r\n if (this.currentTab == 1) {\r\n this.getposition();\r\n } else {\r\n this.getlist();\r\n }\r\n },\r\n getposition() {\r\n let that = this;\r\n positionInfoApi().then((res) => {\r\n this.formValidate = res.data;\r\n this.positionId = res.data.watermark_position;\r\n for (var i = 0; i < this.boxs.length; i++) {\r\n if (this.boxs[i].id == res.data.watermark_position) {\r\n that.bindbox(this.boxs[i]);\r\n }\r\n }\r\n });\r\n },\r\n addSwitch(e) {\r\n if (e) {\r\n this.localStorage = 1;\r\n }\r\n storageSwitchApi({ type: this.localStorage })\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n this.getlist();\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n // 删除\r\n del(row, tit, num) {\r\n let delfromData = {\r\n title: tit,\r\n num: num,\r\n url: `system/config/storage/${row.id}`,\r\n method: 'DELETE',\r\n ids: '',\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n this.getlist();\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n<style scoped lang=\"scss\">\r\n::v-deep .el-tabs__item {\r\n height: 54px !important;\r\n line-height: 54px !important;\r\n}\r\n.ivu-input-group > .ivu-input:last-child,\r\n::v-deep .ivu-input-group-append {\r\n background: none;\r\n color: #999999;\r\n}\r\n::v-deep .ivu-input-group .ivu-input {\r\n border-right: 0px !important;\r\n}\r\n.content ::v-deep .ivu-form .ivu-form-item-label {\r\n width: 133px;\r\n}\r\n.topIput {\r\n width: 186px;\r\n background: #ffffff;\r\n border-right: 0px !important;\r\n}\r\n.abbreviation {\r\n .top {\r\n display: flex;\r\n justify-content: flex-start;\r\n .topBox {\r\n display: flex;\r\n .topRight {\r\n width: 254px;\r\n margin-left: 36px;\r\n }\r\n .topLeft {\r\n width: 94px;\r\n height: 94px;\r\n\r\n text-align: center;\r\n font-size: 13px;\r\n font-weight: 400;\r\n color: #000000;\r\n .img {\r\n // width: 84px;\r\n height: 67px;\r\n background: #f7fbff;\r\n border-radius: 4px;\r\n margin-bottom: 9px;\r\n .imgs {\r\n width: 70px;\r\n height: 51px;\r\n display: inline-block;\r\n text-align: center;\r\n margin-top: 8px;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n .content {\r\n ::v-deep .ivu-form-item-label {\r\n width: 96px;\r\n }\r\n .flex {\r\n display: flex;\r\n justify-content: flex-start;\r\n // width: 400px;\r\n\r\n .contentIput {\r\n width: 400px;\r\n }\r\n .conents {\r\n display: flex;\r\n .title {\r\n width: 30px;\r\n margin-top: 70px;\r\n margin-left: 6px;\r\n }\r\n .positionBox {\r\n display: flex;\r\n flex-wrap: wrap;\r\n width: 101px;\r\n height: 99px;\r\n border-right: 1px solid #dddddd;\r\n .box {\r\n width: 33px;\r\n height: 33px;\r\n // border-radius: 4px 0px 0px 0px;\r\n border: 1px solid #dddddd;\r\n cursor: pointer;\r\n }\r\n .on {\r\n background: rgba(24, 144, 255, 0.1);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n</style>\r\n<style scoped>\r\n.message ::v-deep .ivu-table-header thead tr th {\r\n padding: 8px 16px;\r\n}\r\n.ivu-radio-wrapper {\r\n margin-right: 15px;\r\n font-size: 12px !important;\r\n}\r\n.message ::v-deep .ivu-tabs-tab {\r\n border-radius: 0 !important;\r\n}\r\n.table-box {\r\n padding: 20px;\r\n}\r\n.is-table {\r\n display: flex;\r\n /* justify-content: space-around; */\r\n justify-content: center;\r\n}\r\n.btn {\r\n cursor: pointer;\r\n color: #2d8cf0;\r\n font-size: 12px;\r\n}\r\n.is-switch-close {\r\n background-color: #504444;\r\n}\r\n.is-switch {\r\n background-color: #eb5252;\r\n}\r\n.notice-list {\r\n background-color: #308cf5;\r\n margin: 0 15px;\r\n}\r\n.table {\r\n padding: 0 18px;\r\n}\r\n.confignv {\r\n margin: 10px 0px;\r\n}\r\n.configtit {\r\n display: inline-block;\r\n width: 90px;\r\n text-align: right;\r\n}\r\n.copy {\r\n padding: 3px 5px;\r\n border: 1px solid #cccccc;\r\n border-radius: 5px;\r\n color: #333;\r\n cursor: pointer;\r\n margin-left: 5px;\r\n}\r\n.copy:hover {\r\n border-color: #2d8cf0;\r\n color: #2d8cf0;\r\n}\r\n.picBox {\r\n display: inline-block;\r\n cursor: pointer;\r\n}\r\n.picBox .pictrue {\r\n width: 60px;\r\n height: 60px;\r\n border: 1px dotted rgba(0, 0, 0, 0.1);\r\n margin-right: 10px;\r\n}\r\n\r\n.picBox .pictrue img {\r\n width: 100%;\r\n height: 100%;\r\n}\r\n.picBox .upLoad {\r\n width: 58px;\r\n height: 58px;\r\n line-height: 58px;\r\n border: 1px dotted rgba(0, 0, 0, 0.1);\r\n border-radius: 4px;\r\n background: rgba(0, 0, 0, 0.02);\r\n}\r\nh3 {\r\n margin: 5px 0 15px 0;\r\n}\r\n.table-box p {\r\n margin-bottom: 10px;\r\n}\r\n.save-type {\r\n font-size: 12px;\r\n}\r\n</style>\r\n"]}]}
|