5a7a44bce05cedcd521fd89588b7e821.json 25 KB

1
  1. {"remainingRequest":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\src\\views\\tool\\datasheet\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\src\\views\\tool\\datasheet\\index.vue","mtime":1688954065157},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1688725407620},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1688725415411}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgeyBjcmVhdGVEYXRhYmFzZSB9IGZyb20gIkAvYXBpL2RhdGFzaGVldC9pbmRleCINCmV4cG9ydCBkZWZhdWx0IHsNCiAgICBuYW1lOiAiRGF0YXNoZWV0IiwNCiAgICBkaWN0czogWydteXNxbF9kYXRhX3R5cGUnXSwNCiAgICBkYXRhKCkgew0KICAgICAgICByZXR1cm4gew0KICAgICAgICAgICAgdGVzdHppZGlhbjogbnVsbCwNCiAgICAgICAgICAgIGZvcm06IHsNCiAgICAgICAgICAgICAgICBkYXRhQmFzZU5hbWU6ICcnLA0KICAgICAgICAgICAgICAgIHRhYmxlTmFtZTogJycsDQogICAgICAgICAgICAgICAgdGFibGVDb21tZW50OiAnJywNCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICBleHBlcmllbmNlRGF0YUZvcm06IHt9LA0KICAgICAgICAgICAgZXhwZXJpZW5jZURhdGE6IFsNCiAgICAgICAgICAgICAgICAvLyB7DQogICAgICAgICAgICAgICAgLy8gICAgIGZpZWxkTmFtZTogJycsDQogICAgICAgICAgICAgICAgLy8gICAgIGZpZWxkVHlwZTogJycsDQogICAgICAgICAgICAgICAgLy8gICAgIGZpZWxkTGVuZ3RoOiB1bmRlZmluZWQsDQogICAgICAgICAgICAgICAgLy8gICAgIGlzTnVsbDogZmFsc2UsDQogICAgICAgICAgICAgICAgLy8gICAgIGlzUHJpbWFyeTogZmFsc2UsDQogICAgICAgICAgICAgICAgLy8gICAgIGZpZWxkRGVzY3JpcHRpb246ICcnLA0KICAgICAgICAgICAgICAgIC8vICAgICBpc0F1dG86IGZhbHNlDQogICAgICAgICAgICAgICAgLy8gfSwNCiAgICAgICAgICAgIF0sDQogICAgICAgICAgICBydWxlczogew0KICAgICAgICAgICAgICAgIGRhdGFCYXNlTmFtZTogeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogJ+ivt+i+k+WFpeaVsOaNruW6k+WQjeensCcsIHRyaWdnZXI6ICdibHVyJyB9LA0KICAgICAgICAgICAgICAgIHRhYmxlTmFtZTogeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogJ+ivt+i+k+WFpeaVsOaNruW6k+WQjeensCcsIHRyaWdnZXI6ICdibHVyJyB9DQogICAgICAgICAgICB9LA0KICAgICAgICAgICAgdGFibGVmb3JtOg0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIC8vIGZpZWxkTmFtZTA6IHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fovpPlhaXlrZfmrrXlkI3np7AnLCB0cmlnZ2VyOiAnYmx1cicgfSwNCiAgICAgICAgICAgICAgICAvLyBmaWVsZFR5cGUwOiB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAn6K+36YCJ5oupJywgdHJpZ2dlcjogJ2NoYW5nZScgfSwNCiAgICAgICAgICAgICAgICAvLyBmaWVsZExlbmd0aDA6IHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fovpPlhaUnLCB0cmlnZ2VyOiAnYmx1cicgfSwNCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICBsaXN0OiBbDQogICAgICAgICAgICAgICAgJ2ludCcsICd2YXJjaGFyJw0KICAgICAgICAgICAgXQ0KICAgICAgICB9DQogICAgfSwNCiAgICB3YXRjaDogew0KICAgICAgICBleHBlcmllbmNlRGF0YTogew0KICAgICAgICAgICAgaGFuZGxlcihuLCBvKSB7DQogICAgICAgICAgICAgICAgLy8gZG8gc29tZXRoaW5nDQogICAgICAgICAgICAgICAgdGhpcy5leHBlcmllbmNlRGF0YUZvcm0gPSB7fQ0KICAgICAgICAgICAgICAgIGxldCBydWxlc0FkZCA9IHt9DQogICAgICAgICAgICAgICAgdGhpcy5leHBlcmllbmNlRGF0YS5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4gew0KICAgICAgICAgICAgICAgICAgICBydWxlc0FkZFsnZmllbGROYW1lJyArIGluZGV4XSA9IGl0ZW0uZmllbGROYW1lDQogICAgICAgICAgICAgICAgICAgIHJ1bGVzQWRkWydmaWVsZFR5cGUnICsgaW5kZXhdID0gaXRlbS5maWVsZFR5cGUNCiAgICAgICAgICAgICAgICAgICAgcnVsZXNBZGRbJ2ZpZWxkTGVuZ3RoJyArIGluZGV4XSA9IGl0ZW0uZmllbGRMZW5ndGgNCiAgICAgICAgICAgICAgICAgICAgdGhpcy5leHBlcmllbmNlRGF0YUZvcm0gPSB7IC4uLnJ1bGVzQWRkIH0NCg0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5leHBlcmllbmNlRGF0YUZvcm0pOw0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgIGRlZXA6IHRydWUvLyDmt7Hluqbnm5HlkKzniLbnu4Tku7bkvKDov4fmnaXlr7nosaHlj5jljJYNCiAgICAgICAgfQ0KICAgIH0sDQogICAgbWV0aG9kczogew0KICAgICAgICB0ZXN0YXNkKHRlbSxzY29wZSkgeyAgDQogICAgICAgICAgICBpZiAodGVtID09IHVuZGVmaW5lZCkgcmV0dXJuOw0KICAgICAgICAgICAgY29uc29sZS5sb2codGVtLnJhdy5saXN0Q2xhc3MpDQogICAgICAgICAgICBpZiAodGVtLnJhdy5saXN0Q2xhc3MgPT09ICdzdWNjZXNzJyl7DQogICAgICAgICAgICAgICAgdGhpcy4kZGVsZXRlKHRoaXMudGFibGVmb3JtLHNjb3BlLmNvbHVtbi5wcm9wZXJ0eSsnJytzY29wZS4kaW5kZXgpOw0KICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICAgICAgfSANCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSwNCiAgICAgICAgLy8gaGFuZGxlU2VsZWN0Q2hhbmdlKHNlbGVjdGVkVmFsdWUpIHsNCiAgICAgICAgLy8gICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KHNlbGVjdGVkVmFsdWUpKyItLS0tLS0tLS0tLS0iKTsNCiAgICAgICAgLy8gICAgIGlmIChzZWxlY3RlZFZhbHVlLmZpZWxkVHlwZSA9PT0gJ3ZhcmNoYXInKSB7DQogICAgICAgIC8vICAgICAgICAgc2VsZWN0ZWRWYWx1ZS5maWVsZExlbmd0aCA9ICcnOw0KICAgICAgICAvLyAgICAgICAgIHNlbGVjdGVkVmFsdWUuaXNSZXF1aXJlZCA9IHRydWU7DQogICAgICAgIC8vICAgICB9IGVsc2Ugew0KICAgICAgICAvLyAgICAgICAgIHNlbGVjdGVkVmFsdWUuZmllbGRMZW5ndGggPSAnJzsNCiAgICAgICAgLy8gICAgICAgICBzZWxlY3RlZFZhbHVlLmlzUmVxdWlyZWQgPSBmYWxzZTsNCiAgICAgICAgLy8gICAgIH0NCiAgICAgICAgLy8gfQ0KICAgICAgICAvLyAsDQogICAgICAgIHNlbGVjdEJsdXIoYWEpIHsNCiAgICAgICAgICAgIGlmIChhYS5maWVsZFR5cGUgPT0gIiIpIHsNCiAgICAgICAgICAgICAgICBhYS5maWVsZFR5cGUgPSB1bmRlZmluZWQNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSwNCiAgICAgICAgLy8g5aSE55CG6Z2e56m65qCh6aqM6Zeu6aKYDQogICAgICAgIGhhbmRsZVJ1bGVzKCkgew0KICAgICAgICAgICAgbGV0IHJ1bGVzQWRkID0ge307DQogICAgICAgICAgICB0aGlzLmV4cGVyaWVuY2VEYXRhLmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7DQogICAgICAgICAgICAgICAgcnVsZXNBZGRbJ2ZpZWxkTmFtZScgKyBpbmRleF0gPSB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAn6K+36L6T5YWl5a2X5q615ZCN56ewJywgdHJpZ2dlcjogJ2JsdXInIH0NCiAgICAgICAgICAgICAgICBydWxlc0FkZFsnZmllbGRUeXBlJyArIGluZGV4XSA9IHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fpgInmi6knLCB0cmlnZ2VyOiAnY2hhbmdlJyB9DQogICAgICAgICAgICAgICAgcnVsZXNBZGRbJ2ZpZWxkTGVuZ3RoJyArIGluZGV4XSA9IHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fovpPlhaUnLCB0cmlnZ2VyOiAnYmx1cicgfQ0KDQogICAgICAgICAgICAgICAgdGhpcy50YWJsZWZvcm0gPSB7DQogICAgICAgICAgICAgICAgICAgIC4uLnJ1bGVzQWRkDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSkNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMudGFibGVmb3JtKQ0KICAgICAgICB9LA0KICAgICAgICAvLyDlpITnkIbkuLvplK7pgInmoYbpl67popgNCiAgICAgICAgaGFubGVDaGVja2JveChpbmQpIHsNCiAgICAgICAgICAgIHRoaXMuZXhwZXJpZW5jZURhdGEuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHsNCiAgICAgICAgICAgICAgICBpZiAoaW5kZXggIT0gaW5kKSB7DQogICAgICAgICAgICAgICAgICAgIGl0ZW0uaXNQcmltYXJ5ID0gZmFsc2U7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PSBpbmQgJiYgaXRlbS5pc1ByaW1hcnkgPT0gdHJ1ZSkgew0KICAgICAgICAgICAgICAgICAgICBpdGVtLmlzTnVsbCA9IHRydWUNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgY29uc29sZS5sb2coaXRlbSk7DQoNCiAgICAgICAgICAgIH0pDQogICAgICAgIH0sDQogICAgICAgIC8v5aKe5Yqg57uP6aqM6KGMDQogICAgICAgIGhhbmRsZUFkZEV4cGVyaWVuY2VsaW5lKCkgew0KICAgICAgICAgICAgaWYgKHRoaXMuZXhwZXJpZW5jZURhdGEgPT0gdW5kZWZpbmVkKSB7DQogICAgICAgICAgICAgICAgdGhpcy5leHBlcmllbmNlRGF0YSA9IG5ldyBBcnJheSgpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGV0IG9iaiA9IHsNCiAgICAgICAgICAgICAgICBmaWVsZE5hbWU6ICcnLA0KICAgICAgICAgICAgICAgIGZpZWxkVHlwZTogJycsDQogICAgICAgICAgICAgICAgZmllbGRMZW5ndGg6IHVuZGVmaW5lZCwNCiAgICAgICAgICAgICAgICBpc051bGw6IGZhbHNlLA0KICAgICAgICAgICAgICAgIGlzUHJpbWFyeTogZmFsc2UsDQogICAgICAgICAgICAgICAgZmllbGREZXNjcmlwdGlvbjogJycsDQogICAgICAgICAgICAgICAgaXNBdXRvOiBmYWxzZQ0KICAgICAgICAgICAgfTsNCg0KICAgICAgICAgICAgdGhpcy5leHBlcmllbmNlRGF0YS5wdXNoKG9iaik7DQogICAgICAgICAgICB0aGlzLmhhbmRsZVJ1bGVzKCk7DQogICAgICAgIH0sDQogICAgICAgIC8v5L+d5a2Y57uP6aqM6KGMDQogICAgICAgIGhhbmRsZXNhdmVFeHBlcmllbmNlKGEsIGIpIHsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKGEgKyBiKTsNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKGIpOw0KICAgICAgICB9LA0KICAgICAgICAvL+WIoOmZpOe7j+mqjOihjA0KICAgICAgICBoYW5kbGVEZWxldGVFeHBlcmllbmNlKGluZGV4KSB7DQogICAgICAgICAgICBjb25zb2xlLmxvZyhpbmRleCk7DQogICAgICAgICAgICB0aGlzLmV4cGVyaWVuY2VEYXRhLnNwbGljZShpbmRleCwgMSkNCiAgICAgICAgICAgIHRoaXMuaGFuZGxlUnVsZXMoKTsNCiAgICAgICAgfSwNCiAgICAgICAgYWRkKCkgew0KICAgICAgICAgICAgY29uc3QgcnVsZTEgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgICAgICAgICAgdGhpcy4kcmVmc1snZm9ybSddLnZhbGlkYXRlKHZhbGlkID0+IHsNCiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkKSB7DQogICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCkNCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9KQ0KICAgICAgICAgICAgY29uc3QgcnVsZTIgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgICAgICAgICAgdGhpcy4kcmVmc1sndGFibGVmb3JtJ10udmFsaWRhdGUodmFsaWQgPT4gew0KICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWQpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKQ0KICAgICAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgIH0pDQoNCiAgICAgICAgICAgIFByb21pc2UuYWxsKFtydWxlMSwgcnVsZTJdKS50aGVuKCgpID0+IHsNCiAgICAgICAgICAgICAgICBpZiAodGhpcy5leHBlcmllbmNlRGF0YS5sZW5ndGggPT0gMCkgew0KICAgICAgICAgICAgICAgICAgICB0aGlzLiRtb2RhbC5tc2dXYXJuaW5nKCLlrZfmrrXkuI3lj6/kuLrnqbrvvIEiKQ0KICAgICAgICAgICAgICAgICAgICByZXR1cm47DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIHRoaXMuZXhwZXJpZW5jZURhdGEuZm9yRWFjaCgoZmllbGQpID0+IHsNCiAgICAgICAgICAgICAgICAgICAgaWYgKGZpZWxkLmZpZWxkTGVuZ3RoKSB7DQogICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5maWVsZFR5cGUgPSBgJHtmaWVsZC5maWVsZFR5cGV9KCR7ZmllbGQuZmllbGRMZW5ndGh9KWANCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0pDQoNCiAgICAgICAgICAgICAgICBsZXQgcXVlcnkgPSB7DQogICAgICAgICAgICAgICAgICAgIGRhdGFCYXNlTmFtZTogdGhpcy5mb3JtLmRhdGFCYXNlTmFtZSwNCiAgICAgICAgICAgICAgICAgICAgdGFibGVOYW1lOiB0aGlzLmZvcm0udGFibGVOYW1lLA0KICAgICAgICAgICAgICAgICAgICB0YWJsZUNvbW1lbnQ6IHRoaXMuZm9ybS50YWJsZUNvbW1lbnQsDQogICAgICAgICAgICAgICAgICAgIGZpZWxkOiB0aGlzLmV4cGVyaWVuY2VEYXRhDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGNyZWF0ZURhdGFiYXNlKHF1ZXJ5KS50aGVuKHJlcyA9PiB7DQoNCiAgICAgICAgICAgICAgICAgICAgdGhpcy4kbW9kYWwubXNnU3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5jb2RlID09PSAyMDApIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4kZW1pdCgib2siKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZm9ybSkuZm9yRWFjaChrZXkgPT4gKHRoaXMuZm9ybVtrZXldID0gJycpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXhwZXJpZW5jZURhdGEgPSBbXQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSkuY2F0Y2goZXJyID0+IHsNCiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTsNCiAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgfSkNCiAgICAgICAgfQ0KDQoNCiAgICB9DQp9DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8GA;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;;AAEA;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;;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA","file":"index.vue","sourceRoot":"src/views/tool/datasheet","sourcesContent":["<template>\r\n <div class=\"app-container\">\r\n <el-card style=\"margin-bottom: 15px;\">\r\n <el-form ref=\"form\" :model=\"form\" label-width=\"100px\" :rules=\"rules\">\r\n <el-form-item label=\"数据库名称\" prop=\"dataBaseName\">\r\n <el-input v-model=\"form.dataBaseName\" style=\"width: 600px;\"></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"数据表名称\" prop=\"tableName\">\r\n <el-input v-model=\"form.tableName\" style=\"width: 600px;\"></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"表描述\">\r\n <el-input v-model=\"form.tableComment\" style=\"width: 600px;\"></el-input>\r\n </el-form-item>\r\n </el-form>\r\n </el-card>\r\n <el-card>\r\n <div class=\"titleitem\">\r\n <span>数据表字段</span>\r\n </div>\r\n <el-form ref=\"tableform\" :rules=\"tableform\" :model=\"experienceDataForm\">\r\n <el-table :data=\"experienceData\" stripe style=\"width: 100%\">\r\n <el-table-column prop=\"fieldName\" label=\"字段名称\" width=\"200\">\r\n <template slot-scope=\"scope\">\r\n <el-form-item :prop=\"'fieldName' + scope.$index\" :name=\"'fieldName' + scope.$index\"\r\n style=\"margin: 0px;padding: 0px;\">\r\n <el-input v-model=\"scope.row.fieldName\"></el-input>\r\n </el-form-item>\r\n </template>\r\n </el-table-column>\r\n\r\n <el-table-column prop=\"fieldType\" label=\"字段类型\" width=\"200\">\r\n <template slot-scope=\"scope\">\r\n <el-form-item :prop=\"'fieldType' + scope.$index\" :name=\"'fieldType' + scope.$index\"\r\n style=\"margin: 0px;padding: 0px;\">\r\n <el-select v-model=\"scope.row.fieldType\" filterable @blur=\"selectBlur(scope.row)\">\r\n <!-- <el-option v-for=\"item in list\" :key=\"item\" :label=\"item\" :value=\"item\">\r\n </el-option> -->\r\n <!-- \r\n <el-option v-for=\"item in dict.type.mysql_data_type\" :label=\"item.dictLabel\" :value=\"item.dictValue\">\r\n </el-option> -->\r\n\r\n <el-option v-for=\"item in dict.type.mysql_data_type\" :key=\"item.value\"\r\n :label=\"item.label\" :value=\"item.value\" />\r\n\r\n\r\n </el-select>\r\n </el-form-item>\r\n </template>\r\n </el-table-column>\r\n\r\n <el-table-column prop=\"fieldLength\" label=\"长度\" width=\"200\">\r\n <template slot-scope=\"scope\">\r\n <el-form-item :prop=\"'fieldLength' + scope.$index\" :name=\"'fieldLength' + scope.$index\"\r\n style=\"margin: 0px;padding: 0px;\">\r\n <el-input v-model=\"scope.row.fieldLength\"\r\n :disabled=\"testasd(dict.type.mysql_data_type.find(item => item.label === scope.row.fieldType),scope)\"></el-input>\r\n </el-form-item>\r\n </template>\r\n </el-table-column>\r\n\r\n <el-table-column prop=\"isNull\" label=\"不是null\" width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <el-checkbox v-model=\"scope.row.isNull\"></el-checkbox>\r\n </template>\r\n </el-table-column>\r\n\r\n\r\n <el-table-column prop=\"isPrimary\" label=\"键\" width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <el-checkbox v-model=\"scope.row.isPrimary\" @change=\"hanleCheckbox(scope.$index)\"></el-checkbox>\r\n </template>\r\n </el-table-column>\r\n\r\n <el-table-column prop=\"isAuto\" label=\"自增\" width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <el-checkbox v-model=\"scope.row.isAuto\"></el-checkbox>\r\n </template>\r\n </el-table-column>\r\n\r\n <el-table-column prop=\"fieldDescription\" label=\"字段描述\" width=\"200\">\r\n <template slot-scope=\"scope\">\r\n <el-input v-model=\"scope.row.fieldDescription\"></el-input>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"operate\" label=\"操作\">\r\n <template slot-scope=\"scope\">\r\n <!-- <el-button size=\"mini\" type=\"success\" icon=\"el-icon-save\"\r\n @click=\"handlesaveExperience(scope.$index, scope.row)\">保存\r\n </el-button> -->\r\n <el-button size=\"mini\" type=\"danger\" icon=\"el-icon-delete\"\r\n @click=\"handleDeleteExperience(scope.$index, scope.row)\">删除\r\n </el-button>\r\n\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n </el-form>\r\n <div>\r\n <el-button type=\"primary\" icon=\"el-icon-plus\" size=\"mini\" @click=\"handleAddExperienceline\">新增字段\r\n </el-button>\r\n </div>\r\n </el-card>\r\n\r\n <div style=\"margin-top: 15px;\">\r\n <el-button @click=\"add\" type=\"primary\">添加</el-button>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { createDatabase } from \"@/api/datasheet/index\"\r\nexport default {\r\n name: \"Datasheet\",\r\n dicts: ['mysql_data_type'],\r\n data() {\r\n return {\r\n testzidian: null,\r\n form: {\r\n dataBaseName: '',\r\n tableName: '',\r\n tableComment: '',\r\n },\r\n experienceDataForm: {},\r\n experienceData: [\r\n // {\r\n // fieldName: '',\r\n // fieldType: '',\r\n // fieldLength: undefined,\r\n // isNull: false,\r\n // isPrimary: false,\r\n // fieldDescription: '',\r\n // isAuto: false\r\n // },\r\n ],\r\n rules: {\r\n dataBaseName: { required: true, message: '请输入数据库名称', trigger: 'blur' },\r\n tableName: { required: true, message: '请输入数据库名称', trigger: 'blur' }\r\n },\r\n tableform:\r\n {\r\n // fieldName0: { required: true, message: '请输入字段名称', trigger: 'blur' },\r\n // fieldType0: { required: true, message: '请选择', trigger: 'change' },\r\n // fieldLength0: { required: true, message: '请输入', trigger: 'blur' },\r\n },\r\n list: [\r\n 'int', 'varchar'\r\n ]\r\n }\r\n },\r\n watch: {\r\n experienceData: {\r\n handler(n, o) {\r\n // do something\r\n this.experienceDataForm = {}\r\n let rulesAdd = {}\r\n this.experienceData.forEach((item, index) => {\r\n rulesAdd['fieldName' + index] = item.fieldName\r\n rulesAdd['fieldType' + index] = item.fieldType\r\n rulesAdd['fieldLength' + index] = item.fieldLength\r\n this.experienceDataForm = { ...rulesAdd }\r\n\r\n })\r\n // console.log(this.experienceDataForm);\r\n },\r\n deep: true// 深度监听父组件传过来对象变化\r\n }\r\n },\r\n methods: {\r\n testasd(tem,scope) { \r\n if (tem == undefined) return;\r\n console.log(tem.raw.listClass)\r\n if (tem.raw.listClass === 'success'){\r\n this.$delete(this.tableform,scope.column.property+''+scope.$index);\r\n return true;\r\n } \r\n return false;\r\n },\r\n // handleSelectChange(selectedValue) {\r\n // console.log(JSON.stringify(selectedValue)+\"------------\");\r\n // if (selectedValue.fieldType === 'varchar') {\r\n // selectedValue.fieldLength = '';\r\n // selectedValue.isRequired = true;\r\n // } else {\r\n // selectedValue.fieldLength = '';\r\n // selectedValue.isRequired = false;\r\n // }\r\n // }\r\n // ,\r\n selectBlur(aa) {\r\n if (aa.fieldType == \"\") {\r\n aa.fieldType = undefined\r\n }\r\n },\r\n // 处理非空校验问题\r\n handleRules() {\r\n let rulesAdd = {};\r\n this.experienceData.forEach((item, index) => {\r\n rulesAdd['fieldName' + index] = { required: true, message: '请输入字段名称', trigger: 'blur' }\r\n rulesAdd['fieldType' + index] = { required: true, message: '请选择', trigger: 'change' }\r\n rulesAdd['fieldLength' + index] = { required: true, message: '请输入', trigger: 'blur' }\r\n\r\n this.tableform = {\r\n ...rulesAdd\r\n }\r\n })\r\n console.log(this.tableform)\r\n },\r\n // 处理主键选框问题\r\n hanleCheckbox(ind) {\r\n this.experienceData.forEach((item, index) => {\r\n if (index != ind) {\r\n item.isPrimary = false;\r\n }\r\n if (index == ind && item.isPrimary == true) {\r\n item.isNull = true\r\n }\r\n console.log(item);\r\n\r\n })\r\n },\r\n //增加经验行\r\n handleAddExperienceline() {\r\n if (this.experienceData == undefined) {\r\n this.experienceData = new Array();\r\n }\r\n let obj = {\r\n fieldName: '',\r\n fieldType: '',\r\n fieldLength: undefined,\r\n isNull: false,\r\n isPrimary: false,\r\n fieldDescription: '',\r\n isAuto: false\r\n };\r\n\r\n this.experienceData.push(obj);\r\n this.handleRules();\r\n },\r\n //保存经验行\r\n handlesaveExperience(a, b) {\r\n console.log(a + b);\r\n console.log(b);\r\n },\r\n //删除经验行\r\n handleDeleteExperience(index) {\r\n console.log(index);\r\n this.experienceData.splice(index, 1)\r\n this.handleRules();\r\n },\r\n add() {\r\n const rule1 = new Promise((resolve, reject) => {\r\n this.$refs['form'].validate(valid => {\r\n if (valid) {\r\n resolve()\r\n } else {\r\n return false;\r\n }\r\n })\r\n })\r\n const rule2 = new Promise((resolve, reject) => {\r\n this.$refs['tableform'].validate(valid => {\r\n if (valid) {\r\n resolve()\r\n } else {\r\n return false;\r\n }\r\n })\r\n })\r\n\r\n Promise.all([rule1, rule2]).then(() => {\r\n if (this.experienceData.length == 0) {\r\n this.$modal.msgWarning(\"字段不可为空!\")\r\n return;\r\n }\r\n this.experienceData.forEach((field) => {\r\n if (field.fieldLength) {\r\n field.fieldType = `${field.fieldType}(${field.fieldLength})`\r\n }\r\n })\r\n\r\n let query = {\r\n dataBaseName: this.form.dataBaseName,\r\n tableName: this.form.tableName,\r\n tableComment: this.form.tableComment,\r\n field: this.experienceData\r\n }\r\n createDatabase(query).then(res => {\r\n\r\n this.$modal.msgSuccess(res.msg);\r\n if (res.code === 200) {\r\n this.visible = false;\r\n this.$emit(\"ok\");\r\n Object.keys(this.form).forEach(key => (this.form[key] = ''));\r\n this.experienceData = []\r\n }\r\n }).catch(err => {\r\n console.log(err);\r\n })\r\n })\r\n }\r\n\r\n\r\n }\r\n}\r\n</script>\r\n<style scoped></style>"]}]}