فهرست منبع

修复图片详情回显问题,及图片查看尺寸问题

coys 2 سال پیش
والد
کامیت
ee3b493777

+ 1 - 11
src/components/imgCom/index.vue

@@ -69,15 +69,5 @@ export default {
 }
 </script>
 <style lang="scss" scoped>
-.imgsty {
-  position: relative;
-  top: 50%;
-  width: 100%;
-  height: 100%;
-  overflow: hidden;
-}
-.imageC {
-  width: 100%;
-  max-height: 800px;
-}
+
 </style>

+ 35 - 16
src/components/nfcPopup/alone.vue

@@ -29,13 +29,13 @@
 import { baseImg } from '@/views/menu/LZRegister/api'
 import { upload, uploadBase64 } from '@/api/public'
 import ImageCompressor from 'js-image-compressor'
-import {imgUrl} from "@/utils";
+import { imgUrl } from '@/utils'
 import { Toast } from 'vant'
 export default {
   name: 'index',
   data() {
     return {
-      imageList:[],
+      imageList: [],
       //nfc弹窗
       visible: false,
       //nfc图片(base64)
@@ -61,35 +61,54 @@ export default {
       this.useCamera(1)
     },
     submitNFC() {
-      
       this.useNFC()
     },
     openCameraCallBack(data) {
-      let img = JSON.parse(data)
-      this.content = data
-      let params = {
-        extension: img.extension,
-        content: img.content
+      let params = {}
+      try {
+        let img = JSON.parse(data)
+
+        params = {
+          extension: img.extension,
+          content: img.content
+        }
+      } catch (e) {
+        params = {
+          extension: data.extension,
+          content: data.content
+        }
       }
+      // let img = JSON.parse(data)
+      // this.content = data
+      // let params = {
+      //   extension: img.extension,
+      //   content: img.content
+      // }
       uploadBase64(params)
         .then(res => {
           /*上传成功*/
-          
+
           this.$toast.success('上传成功')
-          this.visible=false
-          
+          this.visible = false
+
           this.imageList.push({ name: res.data.name, url: imgUrl(res.data.url), imgPath: res.data.url })
           this.$emit('input', this.imageList)
         })
         .catch(err => {
           /*上传失败*/
-          console.log(err);
+          console.log(err)
           this.$toast.fail('上传失败')
           this.fileList.splice(this.fileList.length - 1, 1)
         })
     },
     openNFCScanCallBack(data) {
-      this.objNfc = JSON.parse(data)
+      let nfc = null
+      try {
+        nfc = JSON.parse(data)
+      } catch (e) {
+        nfc = data  
+      }
+      this.objNfc = nfc
       if (this.objNfc.errorCode == 0) {
         this.$emit('changeNFC', this.objNfc.content)
         Toast.success('扫描成功')
@@ -100,9 +119,9 @@ export default {
       }
     }
   },
-  destroyed(){
-    window.openCameraCallBack = null;
-    window.openNFCScanCallBack = null;
+  destroyed() {
+    window.openCameraCallBack = null
+    window.openNFCScanCallBack = null
   }
 }
 </script>

+ 1 - 0
src/components/upload/index.vue

@@ -10,6 +10,7 @@
       @click-upload="useCamera(2)"
       @delete="deleteHandler"
       :max-size="maxSize * 1024 * 1024"
+      
     />
     <!-- :after-read="afterRead" -->
     <!-- :before-read="beforeRead" -->

+ 3 - 1
src/utils/globalMixins.js

@@ -122,9 +122,12 @@ export default {
     },
     //调用相机和相册
     useCamera(actionType) {
+      window.openCameraCallBack = null
+      window.openCameraCallBack = this.openCameraCallBack
       let parms = {}
       if (actionType) {
         parms.actionType = actionType
+        parms.compressKb = '500'
       }
       let system = this.isAndroidOrIos()
       if (system === 1) {
@@ -149,7 +152,6 @@ export default {
         }
       }
     },
-    
 
     isAndroidOrIos() {
       const urls = navigator.userAgent

+ 14 - 3
src/views/menu/rehearsalTask/components/addRehearsalTask.vue

@@ -421,10 +421,21 @@ export default {
       obj.taskUserList = []
 
       obj.taskUserList.push(...this.userPeopleList, ...this.lackPeopleList)
-      obj.drillStartTime=obj.drillStartTime?obj.drillStartTime+':00':''
-      obj.drillEndTime=obj.drillEndTime?obj.drillEndTime+':00':''
+      let drillStartTime = obj.drillStartTime
+      let drillEndTime = obj.drillEndTime
+      if (drillStartTime && drillStartTime.length == 19) {
+        obj.drillStartTime = obj.drillStartTime ? obj.drillStartTime : ''
+      } else {
+        obj.drillStartTime = obj.drillStartTime ? obj.trainingStartDateTime + ':00' : ''
+      }
+      if (drillEndTime && drillEndTime.length == 19) {
+        obj.drillEndTime = obj.drillEndTime ? obj.drillEndTime : ''
+      } else {
+        obj.drillEndTime = obj.drillEndTime ? obj.drillEndTime + ':00' : ''
+      }
+ 
       console.log(obj)
-
+      
       drillInfo({
         id: this.trainingData.id,
         submitType: type,

+ 3 - 1
src/views/menu/rehearsalTask/components/rehearsalTaskSign.vue

@@ -272,8 +272,10 @@ export default {
             this.studyList.push(i)
           })
         }
+        if(this.trainingData.imageList){
 
-        this.imgList = this.trainingData.imageList.split(',') || []
+          this.imgList = this.trainingData.imageList.split(',') || []
+        }
         //获取当前登录人机构类型
         this.orgType = window.sessionStorage.getItem('SET_USER_ORGTYPE')
         console.log(this.orgType, 'this.orgType')

+ 35 - 26
src/views/menu/training/components/addTraining.vue

@@ -69,19 +69,15 @@
       <div class="mainItem mainItemData">
         <p class="label labelPeople">培训资料</p>
         <div>
-          
-            <div v-for="item in studyList" :key="item.name">
-
-              <van-tag type="primary" @click="tagHandler(item)"     class="tagCls" plain >{{
-                item.name
-              }}</van-tag><span class="deleteCls"  @click="close(item)">删除</span>
-              </div>
-         
+          <div v-for="item in studyList" :key="item.name">
+            <van-tag type="primary" @click="tagHandler(item)" class="tagCls" plain>{{ item.name }}</van-tag
+            ><span class="deleteCls" @click="close(item)">删除</span>
+          </div>
         </div>
       </div>
       <van-field label="">
         <template #input>
-          <van-button type="info" size="small" @click="selectData">从学习资料选取</van-button>
+          <van-button type="info" size="small" @click="selectData">选取知识库文件</van-button>
         </template>
       </van-field>
       <!-- 培训内容 -->
@@ -139,7 +135,12 @@
         <van-button type="info" @click="submitHandler(2)">提交</van-button>
       </div>
       <!-- 选择资料 -->
-      <SelectData ref="SelectData" :organizationId="trainingData.orgId" :listLength="studyList.length" @dataList="dataList"></SelectData>
+      <SelectData
+        ref="SelectData"
+        :organizationId="trainingData.orgId"
+        :listLength="studyList.length"
+        @dataList="dataList"
+      ></SelectData>
     </van-form>
   </div>
 </template>
@@ -261,8 +262,7 @@ export default {
     //从资料里选取
     selectData() {
       this.$refs.SelectData.show = true
-      this.studyList=this.studyList.filter(item=>item.type!=undefined)
-      
+      this.studyList = this.studyList.filter(item => item.type != undefined)
     },
     clikHadner() {
       this.$refs.PDFAndImgLook.show = true
@@ -414,17 +414,28 @@ export default {
     // 表单提交
     submitHandlerConfirm(type) {
       let obj = JSON.parse(JSON.stringify(this.form))
-      obj.trainingEndDateTime=obj.trainingEndDateTime?obj.trainingEndDateTime+':00':''
-      obj.trainingStartDateTime=obj.trainingStartDateTime?obj.trainingStartDateTime+':00':''
+      //动态拼接秒钟
+      let trainingStartDateTime = obj.trainingStartDateTime
+      let trainingEndDateTime = obj.trainingEndDateTime
+      if (trainingStartDateTime && trainingStartDateTime.length == 19) {
+        obj.trainingStartDateTime = obj.trainingStartDateTime ? obj.trainingStartDateTime : ''
+      } else {
+        obj.trainingStartDateTime = obj.trainingStartDateTime ? obj.trainingStartDateTime + ':00' : ''
+      }
+      if (trainingEndDateTime && trainingEndDateTime.length == 19) {
+        obj.trainingEndDateTime = obj.trainingEndDateTime ? obj.trainingEndDateTime : ''
+      } else {
+        obj.trainingEndDateTime = obj.trainingEndDateTime ? obj.trainingEndDateTime + ':00' : ''
+      }
       obj.imageList = obj.imageList.map(item => item.path).join(',')
-      console.log(obj.imageList)
+      
       obj.taskUserList = []
-      let list=this.studyList
-      obj.fileList=[]
-      list.forEach(item=>{
+      let list = this.studyList
+      obj.fileList = []
+      list.forEach(item => {
         obj.fileList.push(JSON.stringify(item))
       })
-      
+
       obj.taskUserList.push(...this.userPeopleList, ...this.lackPeopleList)
 
       edittrainingInfo({
@@ -436,7 +447,7 @@ export default {
       }).then(res => {
         let { code, msg } = res
         if (code == 200) {
-          Toast(`${type==1? '保存':'提交'}成功`)
+          Toast(`${type == 1 ? '保存' : '提交'}成功`)
           this.$router.push('/training')
         } else {
           Toast(msg)
@@ -445,8 +456,7 @@ export default {
     },
     dataList(list) {
       this.studyList.push(...list)
-      this.studyList=uniqBy(this.studyList, 'name')
-
+      this.studyList = uniqBy(this.studyList, 'name')
     },
     tagHandler(i) {
       let str = i.name.split('.')[1]
@@ -466,10 +476,9 @@ export default {
       }
     },
     //清除
-    close(item){
-      this.studyList=this.studyList.filter(i=> item.name!=i.name)
+    close(item) {
+      this.studyList = this.studyList.filter(i => item.name != i.name)
     }
-    
   }
 }
 </script>
@@ -525,7 +534,7 @@ export default {
   margin-bottom: 20px;
   margin-left: 10px;
 }
-.deleteCls{
+.deleteCls {
   color: #3095fb;
   text-decoration: dashed;
   margin-left: 30px;

+ 5 - 3
src/views/menu/training/components/personnelSignature.vue

@@ -56,9 +56,8 @@
       <div class="label">缺席人员</div>
       <div>{{ qsUserList }}</div>
     </div>
-    <div class="mainItem">
+    <div class="mainItem" >
       <div class="label">上传图片</div>
-
       <imgCom :width="'100'" :list="imgList" v-for="item in imgList" :key="item" :height="'100'" :src="item"></imgCom>
     </div>
     <div class="mainItem" v-if="this.$route.params.id.split('_')[1] === 'info'">
@@ -150,8 +149,11 @@ export default {
             this.studyList.push(i)
           })
         }
+        if(this.trainingData.imageList){
 
-        this.imgList = this.trainingData.imageList.split(',') || []
+          this.imgList = this.trainingData.imageList.split(',') || []
+        }
+        
         
       }
     })

+ 2 - 2
vue.config.js

@@ -110,9 +110,9 @@ module.exports = defineConfig({
         }
       },
       '/dev': {
-        target: "http://10.87.10.55:8080",
+        // target: "http://10.87.10.55:8080",
         // target: "http://10.87.10.91:8080",
-        // target: "http://10.87.11.173:8080",
+        target: "http://10.87.11.173:8080",
         // ws:true,
         changOrigin:true,
         pathRewrite:{