| | |
| | | <div class="modal_wrap"> |
| | | <div class="modal_content"> |
| | | <div class="header"> |
| | | <img v-if="info.status == '3'" class="head_bg" |
| | | src="@/assets/task/bg_shenhe_fail@2x.png" alt=""> |
| | | <img v-else-if="info.status == '4'" class="head_bg" |
| | | <!-- <img v-if="info.status == '0'" class="head_bg" |
| | | src="@/assets/task/bg_shenhe_fail@2x.png" alt="">--> |
| | | <img v-if="info.status == '4' || info.status == '3'||info.status == '5'||info.status == '6'" class="head_bg" |
| | | src="@/assets/task/bg_shenhe_pass@2x.png" alt=""> |
| | | <img v-else class="head_bg" src="@/assets/task/bg_shenhe@2x.png" alt=""> |
| | | <div class="left"> |
| | | <div class="h1">{{ cateList[type] }}</div> |
| | | <div class="time">提交时间:{{ info.createDate }}</div> |
| | | </div> |
| | | <div class="right" :class="{ scs: info.status == '3' || info.status == '4' || info.status == '5', msg: info.status == '6' }">{{statusMap[info.status] }}</div> |
| | | </div> |
| | | <div class="info"> <div class="title">工单信息</div> |
| | | <div class="list"> |
| | |
| | | <div class="value">{{ info.submitDate }}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="label">发生时间</div> |
| | | <div class="label">发现时间</div> |
| | | <div class="value">{{ info.happenTime}}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="label">发生地点</div> |
| | | <div class="label">位置</div> |
| | | <div class="value">{{ info.locationName }}</div> |
| | | </div> |
| | | <div class="item"> |
| | |
| | | <div class="table_info"> |
| | | <div class="title">不符合项工单列表</div> |
| | | <el-table :data="info.dcaChildList" border fit> |
| | | <el-table-column label="工单号" prop="code" min-width="100"> |
| | | <el-table-column prop="index" label="序号" width="55" fixed="left"> |
| | | <template slot-scope="scope">{{ scope.$index+1}}</template> |
| | | </el-table-column> |
| | | <el-table-column label="工单号" prop="code" min-width="120"> |
| | | <template slot-scope="{row}"> |
| | | <span style="color: #2E68EC;cursor: pointer" @click="$refs.OperaWorkorderDetailDcaInfoWindow.open('DCA不符合项工单详情', row)" >{{ row.code || '-'}}</span> |
| | | </template> |
| | |
| | | <el-table-column label="一级主题" prop="typeName" min-width="60"> </el-table-column> |
| | | <el-table-column label="二级主题" prop="categoryName" min-width="60"> </el-table-column> |
| | | <el-table-column label="观察项" prop="problemTitle" min-width="100"> </el-table-column> |
| | | <el-table-column label="不符合原因" prop="eventInfo" min-width="120" /> |
| | | <el-table-column label="处理状态" prop="status" min-width="80"> |
| | | <el-table-column label="状态" prop="status" min-width="80"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="'statusInfo'+row.status" v-if="row.status ==0">待处理</span> |
| | | <span :class="'statusInfo'+row.status" v-else-if="row.status ==3 ||row.status ==4||row.status ==5">已处理</span> |
| | | <!-- <span :class="'statusInfo'+row.status" v-if="row.status ==0">待处理</span>--> |
| | | <span :class="'statusInfo'+row.status" v-if="row.status ==3 ||row.status ==4||row.status ==5">已处理</span> |
| | | <span :class="'statusInfo'+row.status" v-else>处理中</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="statusInfo" label="状态描述" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="'statusInfo'+row.status" >{{ row.statusName }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="不符合原因" prop="eventInfo" min-width="180" /> |
| | | <el-table-column label="操作" prop="status" min-width="80"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.OperaWorkorderDetailDcaInfoWindow.open('DCA不符合项工单详情', row)" icon="el-icon-zoom-out" >查看详情</el-button> |
| | | <!--<el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:workorder:delete']">删除</el-button>--> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <div class="table_info"> |
| | | <div class="title">符合项列表</div> |
| | | <el-table :data="dataList2" border fit> |
| | | <el-table-column prop="index" label="序号" width="55" fixed="left"> |
| | | <template slot-scope="scope">{{ scope.$index+1}}</template> |
| | | </el-table-column> |
| | | <el-table-column label="一级主题" prop="typeName" min-width="140"> </el-table-column> |
| | | <el-table-column label="二级主题" prop="categoryName" min-width="150"> </el-table-column> |
| | | <el-table-column label="观察项" prop="problemTitle" min-width="400"> </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | |
| | | type: null, |
| | | title: '工单详情', |
| | | info: {}, |
| | | dataList2: [], |
| | | statusMap: { |
| | | 0: '待分配WTS', |
| | | 1: '待分配任务', |
| | | 2: '待处理', |
| | | 3: '已解决', |
| | | 4: '已解决', |
| | | 5: '已解决' |
| | | 0: '处理中', |
| | | 1: '处理中', |
| | | 2: '处理中', |
| | | 3: '已处理', |
| | | 4: '已处理', |
| | | 5: '已处理' |
| | | }, |
| | | cateList: { |
| | | 0: 'SHE事件工单', |
| | |
| | | getDetail () { |
| | | getById(this.info.id).then(res => { |
| | | this.info = res |
| | | this.getDataListByRemak() |
| | | if (this.info.logList && this.info.logList.length > 0) { |
| | | this.info.logList.forEach(item => { |
| | | if (item.approveList && item.approveList.length == 1 && item.type !== 1) { |
| | |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | getDataListByRemak () { |
| | | this.dataList2 =[] |
| | | if(this.info.remark){ |
| | | var obj = JSON.parse(this.info.remark) |
| | | console.log(obj) |
| | | if(obj && obj.childMapList){ |
| | | obj.childMapList.forEach(item =>{ |
| | | if(item && item.problemMapList){ |
| | | item.problemMapList.forEach(item1 =>{ |
| | | if(item1 && item1.status === 1){ |
| | | this.dataList2.push({'typeName':this.info.typeName, 'categoryName':item.childTitle,'problemTitle':item1.title}) |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | |
| | | } |
| | | }, |
| | | reject () { }, |
| | | handleAvatarSuccess () { }, |
| | |
| | | |
| | | .modal_wrap { |
| | | display: flex; |
| | | height: 100%; |
| | | height: auto; |
| | | |
| | | .modal_content { |
| | | flex: 1; |
| | |
| | | flex-wrap: wrap; |
| | | .item { |
| | | display: flex; |
| | | width: 30%; |
| | | width: 50%; |
| | | font-size: 14px; |
| | | margin-bottom: 20px; |
| | | |
| | | &:nth-of-type(2n) { |
| | | width: 30%; |
| | | width: 50%; |
| | | } |
| | | |
| | | .label { |
| | | color: #888888; |
| | | width: 100px; |
| | | } |
| | | |
| | | .value { |
| | | width: calc(100% - 100px); |
| | | color: #111111; |
| | | } |
| | | } |