Procházet zdrojové kódy

fix: 对接屏幕录制

bill před 3 roky
rodič
revize
182d46cee2
3 změnil soubory, kde provedl 20 přidání a 12 odebrání
  1. 3 2
      src/api/record.ts
  2. 10 6
      src/store/record-fragment.ts
  3. 7 4
      src/store/record.ts

+ 3 - 2
src/api/record.ts

@@ -34,7 +34,8 @@ const toLocal = (serviceRecord: ServiceRecord) : Record => ({
   title: serviceRecord.videoFolderName,
   url: serviceRecord.videoMergeUrl,
   sort: serviceRecord.sort,
-  status: serviceRecord.uploadStatus
+  // status: serviceRecord.uploadStatus
+  status: RecordStatus.SUCCESS
 })
 
 const toService = (record: Record, isUpdate = true): PartialProps<ServiceRecord, 'videoFolderId'> => ({
@@ -82,5 +83,5 @@ export const postMegerRecord = (files: File[], recordId?: Record['id']) => {
 }
 
 export const postDeleteRecord = async (id: Record['id']) => {
-  await axios.post(DELETE_RECORD, { fusionMeterId: Number(id) })
+  await axios.post(DELETE_RECORD, { videoFolderId: Number(id) })
 }

+ 10 - 6
src/store/record-fragment.ts

@@ -1,5 +1,5 @@
 import { ref } from "vue";
-import { autoSetModeCallback, createTemploraryID } from './sys'
+import { autoSetModeCallback, createTemploraryID, unSetModelUpdate } from './sys'
 import { deleteStoreItem, recoverStoreItems, saveStoreItems } from '@/utils'
 import { fetchRecordFragments, postDeleteRecordFragment } from '@/api'
 
@@ -38,18 +38,22 @@ export const recoverRecordFragments = recoverStoreItems(recordFragments, getBack
 
 export const initRecordFragmentsByRecord = async (record: Record) => {
   const fragments = await fetchRecordFragments(record.id)
-  recordFragments.value = recordFragments.value
-    .filter(fragment => fragment.recordId !== record.id)
-    .concat(fragments.map(fragment => ({...fragment, recordId: record.id})))
+  unSetModelUpdate(() => {
+    recordFragments.value = recordFragments.value
+      .filter(fragment => fragment.recordId !== record.id)
+      .concat(fragments.map(fragment => ({...fragment, recordId: record.id})))
+  })
 
-  getBackupRecordFragments()
+  backupRecordFragments()
 }
 
 export const deleteRecordFragment = deleteStoreItem(recordFragments, fragment => postDeleteRecordFragment(fragment.id))
 export const saveRecordFragments = saveStoreItems(
   recordFragments, 
   getBackupRecordFragments,
-  { delete: deleteRecordFragment }
+  { 
+    // delete: deleteRecordFragment 
+  }
 )
 export const autoSaveRecordFragments = autoSetModeCallback(recordFragments, {
   backup: backupRecordFragments,

+ 7 - 4
src/store/record.ts

@@ -8,7 +8,7 @@ import {
   saveStoreItems, 
   updateStoreItem,
   togetherCallback,
-  diffArrayChange
+  diffStoreItemsChange
 } from '@/utils'
 import {
   fetchRecords,
@@ -74,14 +74,16 @@ const getRecordMergeFiles = (record: Record) => {
 }
 
 export const initialRecords = async () => {
-  records.value = await fetchRecords()
+  const serviceRecords = await fetchRecords()
+  console.log(serviceRecords)
+  unSetModelUpdate(() => records.value = serviceRecords)
   await Promise.all(records.value.map(initRecordFragmentsByRecord))
   for (const record of records.value) {
     if (record.status === RecordStatus.RUN) {
       refreshRecordStatus(record)
     }
   }
-  getBackupRecords()
+  backupRecords()
 }
 
 export const addRecord = addStoreItem(records, async (record) => {
@@ -112,9 +114,10 @@ export const autoSaveRecords = autoSetModeCallback(
     recovery: togetherCallback([recoverRecordFragments, recoverRecords]),
     save: async () => {
       const oldRecords = getBackupRecords()
-      const { added } = diffArrayChange(records.value, oldRecords)
+      const { added } = diffStoreItemsChange(records.value, oldRecords)
       await saveRecords()
       await saveRecordFragments()
+
       const files = records.value
         .filter(record => !added.includes(record))
         .map(record => ({ record, merge: getRecordMergeFiles(record) }))