fuliqi
2025-01-16 e5fae45afc610c0cbc5620f2e9138e2188dcf243
src/views/system/work-order/detail/index.vue
@@ -16,7 +16,16 @@
              <div class="item-warp">
                <div>故障类型:</div>
                <div>
                  <el-tag style="margin-right: 5px;height:24px;overflow:auto" effect="dark" v-for="(error, index) in workOrderInfo.errorTypeList" :key="index" size="small" type="warning">{{ error }}</el-tag>
                  <el-tag
                    style="margin-right: 5px;height:24px;overflow:auto" effect="dark"
                    v-for="(error, index) in workOrderInfo.errorTypeList"
                    :key="index" size="small"
                    :type="error === '图像异常'
                     || error ===  '点位信息错误'
                     || error ===  '时钟偏差'
                     || error ===  'OSD异常'
                     ? 'danger' : 'warning'">{{ error }}
                  </el-tag>
                </div>
              </div>
              <div class="item-warp">
@@ -65,10 +74,10 @@
              </div>
              <div style="margin-left: 2px">是否报备</div>
            </div>
            <div class="warp">
            <div class="warp" style="display: flex;flex-direction: row;align-items: center">
              <div v-if="workOrderInfo.hasReport"><el-link @click type="primary">{{workOrderInfo.hasReport ? '已报备' : '未报备'}}</el-link></div>
              <div v-else>{{workOrderInfo.hasReport ? '已报备' : '未报备'}}</div>
              <div v-if="!workOrderInfo.hasReport"><el-link type="primary">事后报备</el-link></div>
              <div v-if="!workOrderInfo.hasReport"><el-link type="primary">(事后报备)</el-link></div>
            </div>
          </div>
          <div class="info-item weight4">
@@ -78,7 +87,12 @@
              </div>
              <div style="margin-left: 2px">处理结果</div>
            </div>
            <div class="warp">{{covertStatus(workOrderInfo.status)}}</div>
            <div class="warp" style="display: flex;flex-direction: row;align-items: center">
              <div>{{covertStatus(workOrderInfo.status)}}</div>
              <div v-if="workOrderInfo.status ==='YW_HANDLE'">
                <el-link type="primary" @click="handleAuditing">(审核)</el-link>
              </div>
            </div>
          </div>
        </div>
      </el-tab-pane>
@@ -151,24 +165,33 @@
      <div class="img-info" v-for="(img, index) in workOrderInfo.imgList" :key="index">
        <div>
          <el-image
            style="width: 160px; height: 100px"
            style="width: 100%; height: auto"
            :src="getImgUrl(img.imgUrl)"
            :preview-src-list="getImgUrl(img.imgUrl)">
            :preview-src-list="workOrderInfo.imgList.map(i => getImgUrl(i.imgUrl))"
            >
          </el-image>
        </div>
        <div>{{img.createTime}}</div>
        <div style="margin-top: 8px;text-align: center">{{img.createTime}}</div>
      </div>
    </div>
    <WorkOrderAuditing :auditingOpen="auditingOpen" :dataForm="auditingForm" :ywConditions="ywConditions" @close="closeAuditing"/>
  </div>
</template>
<script>
import {getWorkOrderInfo, getYwConditionList, getYwAuditingList} from '@/api/platform/work-order'
import {getWorkOrderInfo, getYwConditionList, getYwAuditingList, getYwCondition, listWorkOrder} from '@/api/platform/work-order'
import {getReportByGb} from '@/api/platform/report'
import WorkOrderAuditing from "@/components/WorkOrder/WorkOrderAuditing";
export default {
  name: "index",
  components: {WorkOrderAuditing},
  data() {
    return {
      ywConditions: [],
      auditingOpen: false,
      auditingForm: {},
      selectedTab: 'workorder',
      loading1: false,
      loading2: false,
@@ -200,6 +223,18 @@
    this.getWorkOrder()
  },
  methods: {
    closeAuditing() {
      this.auditingOpen = false
    },
    // 审核按钮
    handleAuditing() {
      this.auditingForm = this.workOrderInfo
      getYwCondition(this.workOrderInfo.workOrderNo).then(response => {
        this.ywConditions = response.data
        this.auditingOpen = true
      })
    },
    getImgUrl(path) {
      return this.$img + path;
    },
@@ -263,13 +298,15 @@
<style scoped>
.img-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex: 0 0 calc(20% - 8px); /* 每行五个,所以每个占20%,减去间距 */
  box-sizing: border-box;
}
.work-order-img {
  margin-top: 15px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px; /* 可选:设置图片之间的间距 */
}
.work-order-info {
  width: 100%;