| | |
| | | <route lang="json5" type="page"> |
| | | { |
| | | layout: 'default', |
| | | needLogin: true, |
| | | style: { |
| | | navigationBarTitleText: '保养汇总', |
| | | }, |
| | |
| | | <wd-drop-menu-item v-model="equName" :options="equList" @change="handleEquName" /> |
| | | <wd-drop-menu-item v-model="status" :options="statusList" @change="handleStatus" /> |
| | | </wd-drop-menu> |
| | | <wd-divider></wd-divider> |
| | | </template> |
| | | <view class="bg-base"> |
| | | <view class="w-full h-[24rpx]"></view> |
| | | <wd-card type="rectangle" v-for="(item, index) in dataList" :key="item.id"> |
| | | <template #title> |
| | | <view class="flex justify-between"> |
| | | <view class="flex items-center menu-title-box"> |
| | | <view class="menu-indicator"></view> |
| | | <view class="ml-1 text-sm align-center">{{ item.equName }}</view> |
| | | <view class="ml-1 text-sm align-center w-[50%]"> |
| | | <wd-text :text="item.equName" :lines="1"></wd-text> |
| | | </view> |
| | | <view class="text-color-gray ml-2 text-mini">{{ item.assetNo }}</view> |
| | | </view> |
| | | |
| | | <view class="flex items-center"> |
| | | <view class="flex items-center w-[20%] justify-end"> |
| | | <text class="text-color-gray text-mini"> |
| | | {{ status === 'Day' ? item?.planTimeStr : item?.planTimeStr?.substring(0, 7) || '' }} |
| | | {{ item?.planTime }} |
| | | </text> |
| | | </view> |
| | | </view> |
| | | </template> |
| | | <view class="flex h-[100rpx]" items-center> |
| | | <view class="flex h-[140rpx]" items-center> |
| | | <image class="slot-img text-center" src="/static/images/camera.png" /> |
| | | <view class="flex-1"> |
| | | <view class="text-color-gray text-xs mt-1 flex"> |
| | | <text class="mr-3">点检总数: {{ item.recordCount }}</text> |
| | | <text class="mr-3">工单总数: {{ item.orderCount }}</text> |
| | | | |
| | | <text class="mx-3">已点检: {{ item.checkCount }}</text> |
| | | | |
| | | <text class="ml-3">未点检: {{ item.unCheckCount }}</text> |
| | | <text class="mx-3">已完成: {{ item.wcCount }}</text> |
| | | </view> |
| | | <view class="text-color-gray text-xs mt-2 flex"> |
| | | <text class="mr-3">正常: {{ item.normalNum }}</text> |
| | | <text class="mr-3">待保养: {{ item.dbyCount }}</text> |
| | | | |
| | | <text class="mx-3">异常: {{ item.abNormalNum }}</text> |
| | | <text class="mx-3">保养中: {{ item.byCount }}</text> |
| | | | |
| | | <text class="ml-3">待验证: {{ item.dyzCount }}</text> |
| | | </view> |
| | | <view class="text-color-gray text-xs mt-2 flex"> |
| | | <text>状态:</text> |
| | | <template v-if="item.recordCount === item.checkCount"> |
| | | <wd-icon class="icon-color-success" name="check-outline" size="40rpx"></wd-icon> |
| | | <template v-if="item.status=== '1'"> |
| | | <wd-icon class="icon-color-success" name="check-outline" size="34rpx"></wd-icon> |
| | | <text class="ml-1">已完成</text> |
| | | </template> |
| | | <template v-else> |
| | | <wd-icon class="icon-color-base" name="detection" size="40rpx"></wd-icon> |
| | | <text class="ml-1">进行中</text> |
| | | </template> |
| | | </view> |
| | | <view class="text-color-gray text-xs mt-2 flex"> |
| | | 创建时间: {{item.createTime}} |
| | | </view> |
| | | </view> |
| | | <wd-button size="small" icon="edit-outline" @click.stop="itemClick(item)">明细</wd-button> |
| | |
| | | const equName = ref<string>('-1') |
| | | |
| | | const statusList = ref<Record<string, any>[]>([ |
| | | { label: '全部', value: '-1' }, |
| | | { label: '所有状态', value: '-1' }, |
| | | { label: '待保养', value: '0' }, |
| | | { label: '保养中', value: '1' }, |
| | | { label: '待验证', value: '2' }, |
| | |
| | | getMaintStList(params) |
| | | .then((res: any) => { |
| | | // 请勿在网络请求回调中给dataList赋值!!只需要调用complete就可以了 |
| | | paging.value.complete(res.rows) |
| | | paging.value.completeByTotal(res.rows, res.total) |
| | | }) |
| | | .catch((res) => { |
| | | // 如果请求失败写paging.value.complete(false),会自动展示错误页面 |
| | |
| | | } |
| | | |
| | | function itemClick(item) { |
| | | const inspCode = `${item.equId}_${item.planTime}_${status.value}` |
| | | uni.navigateTo({ |
| | | url: `/pages/inspect/insp-record?id=${item.id}&inspCode=${inspCode}&specialNote=${item.specialNote ?? ''}&equName=${item.equName ?? ''}&assetNo=${item.assetNo ?? ''}&planTimeStr=${item.planTimeStr ?? ''}`, |
| | | url: `/pages/maint/maint-order?id=${item.id}`, |
| | | }) |
| | | } |
| | | |
| | |
| | | paging.value.reload() |
| | | } |
| | | onLoad(() => { |
| | | queryList() |
| | | uni.$on('maint-st-refresh', reloadData) |
| | | }) |
| | | onUnload(() => { |
| | | uni.$off('maint-st-refres', reloadData) |
| | | uni.$off('maint-st-refresh', reloadData) |
| | | }) |
| | | </script> |
| | | |