tangning 7 months ago
parent
commit
32f0e862c6
4 changed files with 27 additions and 15 deletions
  1. 6 2
      src/store/case.ts
  2. 5 2
      src/view/abstract/index.vue
  3. 3 4
      src/view/case/draw/index.vue
  4. 13 7
      src/view/layout/index.vue

+ 6 - 2
src/store/case.ts

@@ -49,7 +49,7 @@ export type Case = {
   tbStatus: string;
   userName: number;
 };
-
+let isloadList = false;
 export const treeList = ref([]);
 export const sceneList = ref([]);
 export const caseInfoData = ref({
@@ -247,7 +247,11 @@ export const submitMergePhotos = (data) => axios.post(ffmpegMergeImage, { ...dat
 
 export const getCaseInfoData = () => caseInfoData.value
 export const getCaseSceneListData = (caseId) => {
-  if(sceneList.value.length == 0) return getCaseSceneList(caseId)
+  if(sceneList.value.length == 0 && !isloadList) return getCaseSceneList(caseId).then(res => {
+    isloadList = true
+    sceneList.value = res
+    return sceneList.value
+  })
   return sceneList.value
 }
 

+ 5 - 2
src/view/abstract/index.vue

@@ -143,6 +143,7 @@
               type="datetime"
               placeholder="请选择"
               aria-label="请选择"
+              value-format="YYYY-MM-DD HH:mm:ss"
               style="width: 100%"
             />
           </el-form-item>
@@ -153,6 +154,7 @@
               placeholder="请选择"
               aria-label="请选择"
               style="width: 100%"
+              value-format="YYYY-MM-DD HH:mm:ss"
             />
           </el-form-item>
           <el-form-item label="报警人">
@@ -190,10 +192,11 @@
           <el-form-item label="勘验时间">
             <el-date-picker
               v-model="ruleForm.times"
-              type="daterange"
+              value-format="YYYY-MM-DD HH:mm:ss"
+              type="datetimerange"
               start-placeholder="开始时间"
               end-placeholder="结束时间"
-              format="YYYY-MM-DD"
+              format="YYYY-MM-DD HH:mm:ss"
               date-format="YYYY/MM/DD ddd"
             />
           </el-form-item>

+ 3 - 4
src/view/case/draw/index.vue

@@ -143,18 +143,17 @@ const saveHandler = async () => {
   const args = props.value!;
   console.log('titleShape', store, titleShape);
   const blob = await board.value!.export();
+  let filesTitle = titleShape?.text || `${args.caseId}_${BoardTypeDesc[args.type]}`
   const body: SaveCaseFileImageInfo = {
     caseId: args.caseId,
     imgType: args.type,
-    file: new File([blob], `${args.type}_${args.fileId}.jpg`),
-    filesTitle: titleShape?.text || `${args.caseId}_${BoardTypeDesc[args.type]}`,
+    file: new File([blob], `${filesTitle}_${args.fileId}.jpg`),
+    filesTitle: filesTitle,
     content: store && JSON.stringify(store),
   };
   args.inAdd || (body.filesId = props.value!.fileId);
   const { data } = await uploadNewFile(body);
-  console.log('args1', args, body, data, pmtId.value, fmtId.value);
   const rse = await addByMediaLiBrary({ ...body, caseId: args.caseId,filesTypeId: args.type != BoardType.scene ? fmtId.value : pmtId.value, uploadId: data.id });
-  console.log('args2',rse, { ...body,caseId: args.caseId, type: args.type, id: data.id });
   if (args.inAdd) {
     router.replace({
       name: RouteName.drawCaseFile,

+ 13 - 7
src/view/layout/index.vue

@@ -19,11 +19,12 @@
               }"
             >
             <div class="poprs sceneList" v-if="sceneList.length">
-              <el-dropdown placement="bottom" trigger="click" @command="handleCommand">
+              <el-dropdown placement="bottom" style="width: 100%" trigger="click" @command="handleCommand">
                 <el-button >
-                  <span :title="sceneListName">
-                    {{sceneListName}}<el-icon class="el-icon--right"><arrow-down /></el-icon>
-                  </span>
+                  <div style="width: 200px;" class="truncate" :title="sceneListName">
+                    {{sceneListName}}
+                  </div>
+                  <el-icon class="el-icon--right"><arrow-down /></el-icon>
                 </el-button>
                 <!-- <span class="el-dropdown-link" style="color: #fff">
                   {{sceneListName}}
@@ -33,7 +34,7 @@
                 </span> -->
               <template #dropdown>
                 <el-dropdown-menu>
-                  <el-dropdown-item style="color:red" v-for="item,index in sceneList" :key="index" :command="item.id">{{ item.name || '多元融合' }}</el-dropdown-item>
+                  <el-dropdown-item class="truncate" style="max-width: 400px;" v-for="item,index in sceneList" :key="index" :command="item.id">{{ item.name || '多元融合' }}</el-dropdown-item>
                 </el-dropdown-menu>
               </template>
             </el-dropdown>
@@ -89,8 +90,8 @@ const init = async () => {
     sceneList.value.unshift({ id: -1, type: 99, name: '多元融合' });
   }
   handleCommand()
-  // let url = getUrlSrc({ id: 0 }, caseId.value)
-  // sceneURL.value = url;
+  let url = getUrlSrc({ id: 0 }, caseId.value)
+  sceneURL.value = url;
 }
 init()
 const qpisceneList = computed(() => getCaseSceneListData(caseId.value as number));
@@ -210,3 +211,8 @@ const handleClick = (command: string) => {
   }
 }
 </style>
+<style lang="scss">
+.el-dropdown{
+  width: 200px;
+}
+</style>