ll
liukangdong
2024-12-23 5c53a09ff28e5be90af9c1bc0534a4320fc5aec0
admin/src/views/workorder/components/detail.vue
@@ -49,11 +49,21 @@
            <div class="value" v-if="info.fileList == null || !info.fileList.length">无</div>
            <div class="value" v-if="info.fileList != null && info.fileList.length">
              <div v-for="item in info.fileList" :key="item.id" style="display: inline;margin-right: 20px">
                <video v-if="item.fileurlFull && item.fileurlFull.endsWith('.mp4')" ref="videoRef" controls
                  preload="auto" style="width: 80px;height: 80px;object-fit: contain;" :src="item.fileurlFull" />
                <el-image v-else-if="item.fileurlFull" style="width:80px; height: 80px" :src="item.fileurlFull"
                <!-- <video v-if="item.fileurlFull && item.fileurlFull.endsWith('.mp4')" ref="videoRef" controls
                  preload="auto" style="width: 80px;height: 80px;object-fit: contain;" :src="item.fileurlFull" /> -->
                <el-image v-if="item.type == 0" style="width:80px; height: 80px" :src="item.fileurlFull"
                  :preview-src-list="[item.fileurlFull]">
                </el-image>
              </div>
            </div>
          </div>
          <div v-if="info.fileList && info.fileList.length > 0 && info.fileList.filter(i => i.type == 1).length > 0"
            class="item max">
            <div class="la">问题视频</div>
            <div class="value">
              <div v-for="item in info.fileList" :key="item.id" style="display: inline;margin-right: 20px">
                <video v-if="item.type == 1" ref="videoRef" controls preload="auto"
                  style="width: 240px;height: 160px;object-fit: contain;" :src="item.fileurlFull" />
              </div>
            </div>
          </div>
@@ -76,7 +86,9 @@
          </div>
        </div>
      </div>
      <div class="title">{{ info.dealStatus == 0 || info.dealStatus == 1 ? '工单处理' : '处理结果' }}</div>
      <div class="title"
        v-if="info.dealStatus == 2 || info.dealStatus == 0 || (info.dealStatus == 1 && info.dealUserId === userInfo.id)">
        {{ info.dealStatus == 0 || info.dealStatus == 1 ? '工单处理' : '处理结果' }}</div>
      <el-form :model="param" ref="form" :rules="rules">
        <template v-if="info.dealStatus == 0 || info.dealStatus == null">
          <el-form-item label="处理方式" prop="dealType">
@@ -104,8 +116,8 @@
          </el-form-item>
          <el-form-item label="现场图片">
            <div class="file_list">
              <el-upload class="avatar-uploader" :data="uploadData" :auto-upload="true"
                :action="uploadImgUrl" :show-file-list="false" :on-success="uploadAvatarSuccess" :on-error="uploadError"
              <el-upload class="avatar-uploader" :data="uploadData" :auto-upload="true" :action="uploadImgUrl"
                :show-file-list="false" :on-success="uploadAvatarSuccess" :on-error="uploadError"
                :before-upload="beforeUpload">
                <div class="upload_wrap">
                  <i class="el-icon-plus avatar-uploader-icon"></i>
@@ -319,10 +331,12 @@
      border: 1px solid rgba(63, 126, 239,.2);
      background-color: rgba(63, 126, 239,.2);
    }
    .green{
      background-color: rgba(83, 183, 148, .2);
      border: 1px solid rgba(83, 183, 148, .2);
    }
    .gray {
      color: #333333;
      background-color: rgba(128, 128, 128, .2);
@@ -352,6 +366,7 @@
      width: 100%;
      display: flex;
      align-items: center;
      .la{
        margin-bottom: 0;
        width: 72px;
@@ -362,37 +377,46 @@
      width: 100%;
    }
  }
  .main_content{
    display: flex;
    .side{
      width: 370px;
      .title{
        font-size: 14px;
      }
      .flow_list{
        .item{
          display: flex;
          .icon{
            width: 28px;
            display: flex;
            flex-direction: column;
            align-items: center;
            .dian{
              width: 12px;
              height: 12px;
              border-radius: 50%;
              background-color: #e89e42;
            }
            .line{
              width: 1px;
              height: 100%;
              background-color: #e89e42;
            }
          }
          .content{
            font-size: 12px;
            color: #999999;
            padding-bottom: 12px;
            .name{
              font-size: 13px;
              color: #333333;