diff --git a/app/Http/Controllers/Api/FileController.php b/app/Http/Controllers/Api/FileController.php index ac59a475f..755616b4f 100755 --- a/app/Http/Controllers/Api/FileController.php +++ b/app/Http/Controllers/Api/FileController.php @@ -492,7 +492,7 @@ class FileController extends AbstractController */ public function content__save() { - Base::checkClientVersion('0.9.13'); + Base::checkClientVersion('0.13.68'); $user = User::auth(); // $id = Base::getPostInt('id'); @@ -535,9 +535,10 @@ class FileController extends AbstractController $contentString = $content; $file->ext = 'mind'; break; - case 'code': case 'txt': - $contentString = $content; + case 'code': + $contentArray = Base::json2array($content); + $contentString = $contentArray['content']; break; default: return Base::retError('参数错误'); diff --git a/app/Models/File.php b/app/Models/File.php index b5c244b32..3b8a77fbb 100644 --- a/app/Models/File.php +++ b/app/Models/File.php @@ -374,13 +374,15 @@ class File extends AbstractModel if (in_array($fileExt, self::codeExt) && $fileSize < 2 * 1024 * 1024) { // 文本预览,限制2M内的文件 - $data['content'] = file_get_contents($publicPath) ?: 'Content deleted'; + $data['content'] = [ + 'content' => file_get_contents($publicPath) ?: 'Content deleted', + ]; $data['file_mode'] = 'code'; } elseif (in_array($fileExt, File::officeExt)) { // office预览 - $data['content'] = ''; + $data['content'] = json_decode('{}'); $data['file_mode'] = 'office'; } else diff --git a/package.json b/package.json index e4661005e..229a6c2e4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "DooTask", - "version": "0.13.67", + "version": "0.13.68", "description": "DooTask is task management system.", "scripts": { "start": "./cmd dev", diff --git a/resources/assets/js/pages/manage/components/FileContent.vue b/resources/assets/js/pages/manage/components/FileContent.vue index 256f6347a..a239c42c8 100644 --- a/resources/assets/js/pages/manage/components/FileContent.vue +++ b/resources/assets/js/pages/manage/components/FileContent.vue @@ -52,7 +52,7 @@ - + diff --git a/resources/assets/js/pages/manage/components/FilePreview.vue b/resources/assets/js/pages/manage/components/FilePreview.vue index 4237fb9f2..c28353b79 100644 --- a/resources/assets/js/pages/manage/components/FilePreview.vue +++ b/resources/assets/js/pages/manage/components/FilePreview.vue @@ -29,7 +29,7 @@ - + diff --git a/resources/assets/js/pages/manage/file.vue b/resources/assets/js/pages/manage/file.vue index 0a4ac51bc..da6784948 100644 --- a/resources/assets/js/pages/manage/file.vue +++ b/resources/assets/js/pages/manage/file.vue @@ -333,9 +333,10 @@ - + @@ -1517,6 +1518,27 @@ export default { }); }, + fileBeforeClose() { + return new Promise(resolve => { + if (!this.$refs.fileContent) { + resolve(); + return; + } + if (this.$refs.fileContent.equalContent) { + resolve() + return + } + $A.modalConfirm({ + content: '文件尚未保存,是否放弃修改?', + cancelText: '取消', + okText: '放弃', + onOk: () => { + resolve() + } + }); + }) + }, + /********************文件上传部分************************/ uploadUpdate(fileList) { diff --git a/resources/assets/js/pages/single/fileMsg.vue b/resources/assets/js/pages/single/fileMsg.vue index b5a7b8eb1..70a158dbf 100644 --- a/resources/assets/js/pages/single/fileMsg.vue +++ b/resources/assets/js/pages/single/fileMsg.vue @@ -7,7 +7,7 @@ - +