| | |
| | | <template> |
| | | <view> |
| | | |
| | | <view class="tabs" id="tabs"> |
| | | <view :class="tabs == 0 ? 'on':''" @tap="switchTab(0)">待维修</view> |
| | | <view :class="tabs == 1 ? 'on':''" @tap="switchTab(1)">已维修</view> |
| | | <view :class="tabs == 2 ? 'on':''" @tap="switchTab(2)">已验收</view> |
| | | </view> |
| | | |
| | | <!-- 设备点检任务列表 --> |
| | | <view class="list" v-for="(item,index) in reportBillsDisplay" :key="index"> |
| | | <uni-card :title="item.故障登记单号" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index"> |
| | | <view class="card-detail"> |
| | | <view class="detail" v-for="(field, index) in CommonUtils.emptyValueFilter(item, HFieldList)" |
| | | :key="index"> |
| | | <template v-if="field.ColmType == 'DateTime'"> |
| | | <text>{{field.ColmCols}}:</text>{{dayjs(item[field.ColmCols]).format('YYYY-MM-DD HH:mm:ss')}} |
| | | </template> |
| | | <template v-else> |
| | | <text>{{field.ColmCols}}:</text>{{item[field.ColmCols]}} |
| | | </template> |
| | | </view> |
| | | </view> |
| | | <view class="more" v-if="showDetail == index && operations != index"> |
| | | <view class="part" style="border-right: 1px solid #eee;"> |
| | | <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>收起 |
| | | </view> |
| | | <view class="part" @tap.stop="operations = operations==index?-1:index"> |
| | | <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>操作 |
| | | </view> |
| | | </view> |
| | | <view class="more" v-if="showDetail != index && operations != index"> |
| | | <view class="part" style="border-right: 1px solid #eee;"> |
| | | <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>更多信息 |
| | | </view> |
| | | <view class="part" @tap.stop="operations = operations==index?-1:index"> |
| | | <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>操作 |
| | | </view> |
| | | </view> |
| | | <view class="op" v-if="operations == index"> |
| | | <!-- <button class="op3" size="mini" plain @tap.stop="edit(item)">编辑</button> --> |
| | | <!-- <button class="op4" size="mini" plain @tap.stop="del(item)">删除</button> --> |
| | | <button class="op3" size="mini" v-if="tabs == 0" plain @tap.stop="pushBill(0, item)">下推派工单</button> |
| | | <button class="op3" size="mini" v-if="tabs == 1" plain @tap.stop="pushBill(1, item)">下推维修单</button> |
| | | <button class="op3" size="mini" v-if="tabs == 2" plain @tap.stop="pushBill(2, item)">下推验收单</button> |
| | | <button class="op5" size="mini" plain @tap.stop="operations = -1">取消操作</button> |
| | | </view> |
| | | </uni-card> |
| | | </view> |
| | | <view class="over" v-if="reportBillsDisplay.length == 0">暂无数据</view> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getUserInfo |
| | | } from '../../../utils/auth'; |
| | | import { |
| | | CommonUtils |
| | | } from '../../../utils/common'; |
| | | import dayjs from 'dayjs'; |
| | | export default { |
| | | // 器具故障登记跟踪 模块 |
| | | name: 'Sc_MouldRepairCheckTaskReport', |
| | | data() { |
| | | return { |
| | | |
| | | } |
| | | dayjs, |
| | | CommonUtils, |
| | | tabs: 0, |
| | | showDetail: -1, |
| | | operations: -1, |
| | | |
| | | reportBillsDisplay: [], |
| | | reportBillsAwaitRepair: [], // 待维修 |
| | | reportBillsRepaired: [], // 已维修 |
| | | reportBillsChecked: [], // 已验收 |
| | | HFieldList: [], // 字段列表 |
| | | }; |
| | | }, |
| | | methods: { |
| | | |
| | | pushBill(tab, item) { |
| | | console.log('item: ', item); |
| | | let Query = `&HBillNo=${item['故障登记单号']}&HInterID=${item['HInterID']}&HSourceBillType=3907` |
| | | if (tab == 0) { |
| | | uni.navigateTo({ |
| | | url: '/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill?operationType=4' + |
| | | Query |
| | | }) |
| | | } else if (tab == 1) { |
| | | uni.navigateTo({ |
| | | url: '/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill?operationType=5' + Query + |
| | | `&HSendWorkID=${item.HSendWorkID}` |
| | | }) |
| | | } else if (tab == 2) { |
| | | uni.navigateTo({ |
| | | url: '/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBill?operationType=4' + |
| | | Query + `&HSendWorkID=${item.HSendWorkID}` |
| | | }) |
| | | } |
| | | }, |
| | | switchTab(tabIndex) { |
| | | this.tabs = tabIndex |
| | | switch (tabIndex) { |
| | | case 0: |
| | | this.reportBillsDisplay = this.reportBillsAwaitRepair; |
| | | break; |
| | | case 1: |
| | | this.reportBillsDisplay = this.reportBillsRepaired; |
| | | break; |
| | | case 2: |
| | | this.reportBillsDisplay = this.reportBillsChecked; |
| | | break; |
| | | } |
| | | }, |
| | | async getRepairList() { |
| | | try { |
| | | let res = await CommonUtils.doRequest2Async({ |
| | | url: '/Sc_MouldRepairCheckTaskReport/RepairCheckList', |
| | | data: { |
| | | user: getUserInfo()["HEmpName"] |
| | | } |
| | | }) |
| | | |
| | | let { |
| | | count, |
| | | data, |
| | | Message, |
| | | list |
| | | } = res.data |
| | | if (count == 1) { |
| | | console.log('data: ', data); |
| | | |
| | | this.reportBillsAwaitRepair = data.h_p_Sc_MouldRepairCheckTaskReport |
| | | this.reportBillsRepaired = data.h_p_Sc_MouldRepairCheckTaskReport1 |
| | | this.reportBillsChecked = data.h_p_Sc_MouldRepairCheckTaskReport2 |
| | | |
| | | let fieldList = CommonUtils.fieldListFilterRole({ |
| | | ExcludeKeys: ['故障登记单号'], |
| | | FieldList: list |
| | | }) |
| | | |
| | | if (fieldList.status == false) { |
| | | CommonUtils.showTips({ |
| | | title: '温馨提示', |
| | | message: `获取表单结构失败: ${fieldList.Message}` |
| | | }) |
| | | } |
| | | |
| | | this.HFieldList = fieldList.data |
| | | |
| | | this.switchTab(0) |
| | | } else { |
| | | CommonUtils.showTips({ |
| | | title: '温馨提示', |
| | | message: `获取故障登记单异常: ${Message}` |
| | | }) |
| | | } |
| | | |
| | | } catch (err) { |
| | | CommonUtils.showTips({ |
| | | title: '温馨提示', |
| | | message: `获取故障登记单异常: ${err}` |
| | | }) |
| | | } |
| | | } |
| | | }, |
| | | onShow() { |
| | | this.getRepairList() |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | <style lang="scss"> |
| | | @import "@/pages/MJGL/style/MJBillStyle.scss"; |
| | | |
| | | </style> |
| | | .more { |
| | | color: #888; |
| | | font-size: 26rpx; |
| | | display: flex; |
| | | border-top: 1px solid #eee; |
| | | padding-top: 20rpx; |
| | | |
| | | .part { |
| | | width: 50%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | } |
| | | |
| | | .op { |
| | | display: flex; |
| | | justify-content: space-around; |
| | | margin-top: 20rpx; |
| | | |
| | | button { |
| | | padding: 0; |
| | | width: 150rpx; |
| | | font-size: 25rpx; |
| | | } |
| | | |
| | | .op1 { |
| | | border: 1px solid #41a863; |
| | | color: #41a863; |
| | | } |
| | | |
| | | .op2 { |
| | | border: 1px solid #d98d00; |
| | | color: #d98d00; |
| | | } |
| | | |
| | | .op3 { |
| | | border: 1px solid #3a78ff; |
| | | color: #3a78ff; |
| | | } |
| | | |
| | | .op4 { |
| | | border: 1px solid #da0000; |
| | | color: #da0000; |
| | | } |
| | | |
| | | .op5 { |
| | | border: 1px solid #888; |
| | | color: #888; |
| | | } |
| | | } |
| | | </style> |