|  |  | 
 |  |  | <template> | 
 |  |  |   <GlobalWindow width="960px" title="工单详情" :visible.sync="visible" :confirm-working="isWorking" @close="close" | 
 |  |  |   <GlobalWindow width="100%" title="工单详情" :visible.sync="visible" :confirm-working="isWorking" @close="close" | 
 |  |  |     @confirm="confirm"> | 
 |  |  |     <div class="main"> | 
 |  |  |       <div class="title"> | 
 |  |  |         <span>工单详情</span> | 
 |  |  |         <div> | 
 |  |  |           <div class="status primaryColor" v-if="info.dealStatus == 0 || info.dealStatus == null">待指派</div> | 
 |  |  |           <div class="status green" v-if="info.dealStatus == 1">已指派</div> | 
 |  |  |           <div class="status gray" v-if="info.dealStatus == 2">已处理</div> | 
 |  |  |         <div class="title_left"> | 
 |  |  |           <span>工单详情</span> | 
 |  |  |           <div> | 
 |  |  |             <div class="status primaryColor" v-if="info.dealStatus == 0 || info.dealStatus == null">待指派</div> | 
 |  |  |             <div class="status green" v-if="info.dealStatus == 1">已指派</div> | 
 |  |  |             <div class="status gray" v-if="info.dealStatus == 2">已处理</div> | 
 |  |  |           </div> | 
 |  |  |         </div> | 
 |  |  |         <el-button v-if="info.origin === 1" @click="openWT">查看问题上报</el-button> | 
 |  |  |       </div> | 
 |  |  |       <div class="main_content"> | 
 |  |  |         <div class="list"> | 
 |  |  | 
 |  |  |           <div class="item"> | 
 |  |  |             <div class="la">工单分类</div> | 
 |  |  |             <div class="val">{{ info.categoryName }}</div> | 
 |  |  |           </div> | 
 |  |  |           <div class="item"> | 
 |  |  |             <div class="la">来源</div> | 
 |  |  |             <div class="val" v-if="info.origin === 0">自建</div> | 
 |  |  |             <div class="val" v-if="info.origin === 1">问题转工单</div> | 
 |  |  |           </div> | 
 |  |  |           <div class="item"> | 
 |  |  |             <div class="la">上报人</div> | 
 |  |  | 
 |  |  |         </template> | 
 |  |  |       </el-form> | 
 |  |  |     </div> | 
 |  |  |     <!--  问题上报详情  --> | 
 |  |  |     <problemReportingDetails ref="problemReportingDetails" /> | 
 |  |  |   </GlobalWindow> | 
 |  |  | </template> | 
 |  |  |  | 
 |  |  | <script> | 
 |  |  | import GlobalWindow from '@/components/common/GlobalWindow' | 
 |  |  | import BaseOpera from '@/components/base/BaseOpera' | 
 |  |  | import problemReportingDetails from './problemReportingDetails' | 
 |  |  | import { detailById, dispatchOrder, dealOrder } from '@/api/workorder/ywWorkorder' | 
 |  |  | import { getByWorkorderId } from '@/api/ywProblem' | 
 |  |  | import { getUserList } from '@/api/system/user' | 
 |  |  | import { Message, Loading } from 'element-ui' | 
 |  |  | import dayjs from 'dayjs' | 
 |  |  | export default { | 
 |  |  |   components: { | 
 |  |  |     GlobalWindow | 
 |  |  |     GlobalWindow, | 
 |  |  |     problemReportingDetails | 
 |  |  |   }, | 
 |  |  |   extends: BaseOpera, | 
 |  |  |   data() { | 
 |  |  | 
 |  |  |     this.getStaff() | 
 |  |  |   }, | 
 |  |  |   methods: { | 
 |  |  |     openWT() { | 
 |  |  |       getByWorkorderId(this.id) | 
 |  |  |         .then(res => { | 
 |  |  |           console.log(res) | 
 |  |  |           this.$refs.problemReportingDetails.open('问题上报详情', res) | 
 |  |  |         }) | 
 |  |  |     }, | 
 |  |  |     confirm() { | 
 |  |  |       this.$refs['form'].validate((valid) => { | 
 |  |  |         if (valid) { | 
 |  |  | 
 |  |  |   padding-top: 20px; | 
 |  |  |  | 
 |  |  |   .title { | 
 |  |  |     font-weight: 500; | 
 |  |  |     font-size: 18px; | 
 |  |  |     color: $primary-color; | 
 |  |  |      | 
 |  |  |     margin-bottom: 10px; | 
 |  |  |     display: flex; | 
 |  |  |     align-items: center; | 
 |  |  |  | 
 |  |  |     .status { | 
 |  |  |       padding: 0 12px; | 
 |  |  |       height: 24px; | 
 |  |  |       line-height: 24px; | 
 |  |  |       border-radius: 2px; | 
 |  |  |       border: 1px solid #00BA92; | 
 |  |  |       color: #00BA92; | 
 |  |  |       font-weight: 400; | 
 |  |  |       font-size: 12px; | 
 |  |  |       margin-left: 10px; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     .primaryColor { | 
 |  |  |       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); | 
 |  |  |       border: 1px solid rgba(128, 128, 128, .2); | 
 |  |  |     justify-content: space-between; | 
 |  |  |     .title_left { | 
 |  |  |       display: flex; | 
 |  |  |       align-items: center; | 
 |  |  |       font-weight: 500; | 
 |  |  |       font-size: 18px; | 
 |  |  |       color: $primary-color; | 
 |  |  |       .status { | 
 |  |  |         padding: 0 12px; | 
 |  |  |         height: 24px; | 
 |  |  |         line-height: 24px; | 
 |  |  |         border-radius: 2px; | 
 |  |  |         border: 1px solid #00BA92; | 
 |  |  |         color: #00BA92; | 
 |  |  |         font-weight: 400; | 
 |  |  |         font-size: 12px; | 
 |  |  |         margin-left: 10px; | 
 |  |  |       } | 
 |  |  |       .primaryColor { | 
 |  |  |         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); | 
 |  |  |         border: 1px solid rgba(128, 128, 128, .2); | 
 |  |  |       } | 
 |  |  |     } | 
 |  |  |   } | 
 |  |  |  |