冰雪专题App端 非站长人员不能确认

This commit is contained in:
huangchenhao 2025-12-09 17:43:20 +08:00
parent c4a886fcb0
commit f65de6ca12
2 changed files with 163 additions and 454 deletions

View File

@ -2,31 +2,17 @@
<div class="home"> <div class="home">
<van-nav-bar title="设备管理" fixed left-arrow @click-left="onClickLeft"> <van-nav-bar title="设备管理" fixed left-arrow @click-left="onClickLeft">
</van-nav-bar> </van-nav-bar>
<van-search <van-search shape="round" v-model="searchValue" :show-action="false" placeholder="请输入设备名称" />
shape="round"
v-model="searchValue"
:show-action="false"
placeholder="请输入设备名称"
/>
<van-cell-group> <van-cell-group>
<van-cell title="当前站点" :value="detailData.mc" /> <van-cell title="当前站点" :value="detailData.mc" />
</van-cell-group> </van-cell-group>
<van-notice-bar <van-notice-bar mode="link" v-if="pendingConfirmList.length" @click="handleConfirm">{{ pendingConfirmList.length
mode="link" }}个设备待确认</van-notice-bar>
v-if="pendingConfirmList.length"
@click="handleConfirm"
>{{ pendingConfirmList.length }}个设备待确认</van-notice-bar
>
<div class="content"> <div class="content">
<van-cell-group> <van-cell-group>
<van-cell <van-cell v-for="(item, index) in equipmentList" :key="index" :title="item.sbmc" is-link
v-for="(item, index) in equipmentList" :label="`设备类型: ` + item.sblx" :to="{
:key="index"
:title="item.sbmc"
is-link
:label="`设备类型: ` + item.sblx"
:to="{
name: 'EquipDetail', name: 'EquipDetail',
params: { params: {
data: encodeURIComponent( data: encodeURIComponent(
@ -37,11 +23,9 @@
}) })
), ),
}, },
}" }">
>
<template #value> <template #value>
<span <span :class="[
:class="[
'status-tag', 'status-tag',
`status-` + `status-` +
(item.sbzt === '完好' (item.sbzt === '完好'
@ -49,340 +33,149 @@
: item.sbzt === '损坏' : item.sbzt === '损坏'
? 'warning' ? 'warning'
: 'danger'), : 'danger'),
]" ]">{{ item.sbzt }}</span>
>{{ item.sbzt }}</span
>
</template> </template>
</van-cell> </van-cell>
</van-cell-group> </van-cell-group>
</div> </div>
<van-button <van-button type="primary" class="add-btn" icon="plus" @click="handleAddDevice">
type="primary"
class="add-btn"
icon="plus"
@click="handleAddDevice"
>
添加设备 添加设备
</van-button> </van-button>
<!-- 添加设备弹窗 --> <!-- 添加设备弹窗 -->
<van-popup <van-popup :show="showPopup" position="bottom" closeable close-on-click-overlay :style="{ height: '80%' }"
:show="showPopup" @close="onPopupClose">
position="bottom"
closeable
close-on-click-overlay
:style="{ height: '80%' }"
@close="onPopupClose"
>
<!-- 表单部分 --> <!-- 表单部分 -->
<van-form class="device-form" label-align="left" colon> <van-form class="device-form" label-align="left" colon>
<h3>设备信息</h3> <h3>设备信息</h3>
<!-- 设备名称 --> <!-- 设备名称 -->
<van-field <van-field v-model="form.equipment.sbmc" label="设备名称" placeholder="请输入设备名称"
v-model="form.equipment.sbmc" :rules="[{ required: true, message: '请填写设备名称' }]" maxlength="20" show-word-limit>
label="设备名称"
placeholder="请输入设备名称"
:rules="[{ required: true, message: '请填写设备名称' }]"
maxlength="20"
show-word-limit
>
</van-field> </van-field>
<!-- 设备大类 --> <!-- 设备大类 -->
<van-field <van-field v-model="form.equipment.sbdl" is-link arrow-direction="down" label="设备大类" placeholder="请选择设备大类"
v-model="form.equipment.sbdl" @click="showCategoryPicker = true" ref="categoryField" />
is-link
arrow-direction="down"
label="设备大类"
placeholder="请选择设备大类"
@click="showCategoryPicker = true"
ref="categoryField"
/>
<!-- 设备类型 --> <!-- 设备类型 -->
<van-field <van-field v-model="form.equipment.sblx" is-link arrow-direction="down" label="设备类型" placeholder="请选择设备类型"
v-model="form.equipment.sblx" @click="showTypePicker = true" ref="typeField" />
is-link
arrow-direction="down"
label="设备类型"
placeholder="请选择设备类型"
@click="showTypePicker = true"
ref="typeField"
/>
<!-- 设备编号 --> <!-- 设备编号 -->
<van-field <van-field v-model="form.equipment.sbbh" label="设备编号" placeholder="请输入设备编号"
v-model="form.equipment.sbbh" :rules="[{ required: true, message: '请填写设备编号' }]" />
label="设备编号"
placeholder="请输入设备编号"
:rules="[{ required: true, message: '请填写设备编号' }]"
/>
<!-- 设备型号 --> <!-- 设备型号 -->
<van-field <van-field v-model="form.equipment.sbxh" label="设备型号" placeholder="请输入设备型号"
v-model="form.equipment.sbxh" :rules="[{ required: true, message: '请填写设备型号' }]" />
label="设备型号"
placeholder="请输入设备型号"
:rules="[{ required: true, message: '请填写设备型号' }]"
/>
<!-- 设备经度 --> <!-- 设备经度 -->
<van-field <van-field v-model="form.equipment.jd" label="设备经度" placeholder="请输入设备经度" />
v-model="form.equipment.jd"
label="设备经度"
placeholder="请输入设备经度"
/>
<!-- 设备纬度 --> <!-- 设备纬度 -->
<van-field <van-field v-model="form.equipment.wd" label="设备纬度" placeholder="请输入设备纬度" />
v-model="form.equipment.wd"
label="设备纬度"
placeholder="请输入设备纬度"
/>
<!-- 设备管理员 --> <!-- 设备管理员 -->
<van-field <van-field v-model="form.equipment.glry" is-link arrow-direction="down" readonly label="管理人员"
v-model="form.equipment.glry" placeholder="请选择设备管理人员" @click="showAdminPicker = true" />
is-link
arrow-direction="down"
readonly
label="管理人员"
placeholder="请选择设备管理人员"
@click="showAdminPicker = true"
/>
<!-- 操作员 --> <!-- 操作员 -->
<van-field <van-field v-model="form.equipment.czy" is-link arrow-direction="down" readonly label="操作员" placeholder="请选择操作员"
v-model="form.equipment.czy" @click="showOperatorPicker = true" />
is-link
arrow-direction="down"
readonly
label="操作员"
placeholder="请选择操作员"
@click="showOperatorPicker = true"
/>
<!-- 购买费用 --> <!-- 购买费用 -->
<van-field <van-field v-model="form.equipment.gmfy" type="number" label="购买费用(万元)" placeholder="请输入购买费用" />
v-model="form.equipment.gmfy"
type="number"
label="购买费用(万元)"
placeholder="请输入购买费用"
/>
<!-- 购置日期 --> <!-- 购置日期 -->
<van-field <van-field v-model="form.equipment.gzrq" is-link arrow-direction="down" readonly label="购置日期"
v-model="form.equipment.gzrq" placeholder="请选择日期" @click="showTimePicker = true" />
is-link
arrow-direction="down"
readonly
label="购置日期"
placeholder="请选择日期"
@click="showTimePicker = true"
/>
<!-- 设备状态 --> <!-- 设备状态 -->
<van-field <van-field v-model="form.equipment.sbzt" is-link arrow-direction="down" readonly label="设备状态"
v-model="form.equipment.sbzt" placeholder="请选择设备状态" @click="showStatusPicker = true" />
is-link
arrow-direction="down"
readonly
label="设备状态"
placeholder="请选择设备状态"
@click="showStatusPicker = true"
/>
<!-- 生产厂家 --> <!-- 生产厂家 -->
<van-field <van-field v-model="form.equipment.sccj" label="生产厂家" placeholder="请输入生产厂家" />
v-model="form.equipment.sccj"
label="生产厂家"
placeholder="请输入生产厂家"
/>
<!-- 是否应急设备 --> <!-- 是否应急设备 -->
<van-field <van-field v-model="form.equipment.sfyjsb" is-link arrow-direction="down" readonly label="是否应急设备"
v-model="form.equipment.sfyjsb" placeholder="请选择" @click="showEmergencyPicker = true" />
is-link
arrow-direction="down"
readonly
label="是否应急设备"
placeholder="请选择"
@click="showEmergencyPicker = true"
/>
<!-- 是否纳入市级补助范围 --> <!-- 是否纳入市级补助范围 -->
<van-field <van-field v-model="form.equipment.sfnrsjbz" is-link arrow-direction="down" readonly label="是否纳入市级补助范围"
v-model="form.equipment.sfnrsjbz" placeholder="请选择" @click="showSubsidyPicker = true" />
is-link
arrow-direction="down"
readonly
label="是否纳入市级补助范围"
placeholder="请选择"
@click="showSubsidyPicker = true"
/>
<!-- 辐射范围 --> <!-- 辐射范围 -->
<van-field <van-field v-model="form.equipment.fsfw" label="辐射范围" placeholder="请输入辐射范围" />
v-model="form.equipment.fsfw"
label="辐射范围"
placeholder="请输入辐射范围"
/>
<!-- 备注 --> <!-- 备注 -->
<van-field <van-field v-model="form.equipment.remark" label="备注" placeholder="请输入备注" type="textarea" />
v-model="form.equipment.remark"
label="备注"
placeholder="请输入备注"
type="textarea"
/>
<van-field label="设备照片" center> <van-field label="设备照片" center>
<template #input> <template #input>
<van-uploader <van-uploader v-model="fileList" @delete="handleDelete" name="photos" :file-list="fileList"
v-model="fileList" :file-type="['image/jpeg', 'image/png']" :after-read="afterRead" multiple :max-count="6" />
@delete="handleDelete"
name="photos"
:file-list="fileList"
:file-type="['image/jpeg', 'image/png']"
:after-read="afterRead"
multiple
:max-count="6"
/>
</template> </template>
</van-field> </van-field>
<!-- 选择器弹窗 --> <!-- 选择器弹窗 -->
<!-- 设备大类弹窗 --> <!-- 设备大类弹窗 -->
<van-popup <van-popup :show="showCategoryPicker" round position="bottom" close-on-click-overlay
:show="showCategoryPicker" @close="showCategoryPicker = false">
round <van-picker title="选择设备大类" :columns="categoryOptions" @confirm="onCategoryConfirm"
position="bottom" @cancel="showCategoryPicker = false" />
close-on-click-overlay
@close="showCategoryPicker = false"
>
<van-picker
title="选择设备大类"
:columns="categoryOptions"
@confirm="onCategoryConfirm"
@cancel="showCategoryPicker = false"
/>
</van-popup> </van-popup>
<!-- 设备类型弹窗 --> <!-- 设备类型弹窗 -->
<van-popup <van-popup :show="showTypePicker" round position="bottom" close-on-click-overlay
:show="showTypePicker" @close="showTypePicker = false">
round <van-picker title="选择设备类型" :columns="typeOptions" @confirm="onTypeConfirm" @cancel="showTypePicker = false" />
position="bottom"
close-on-click-overlay
@close="showTypePicker = false"
>
<van-picker
title="选择设备类型"
:columns="typeOptions"
@confirm="onTypeConfirm"
@cancel="showTypePicker = false"
/>
</van-popup> </van-popup>
<!-- 设备管理员弹窗 --> <!-- 设备管理员弹窗 -->
<van-popup <van-popup :show="showAdminPicker" round position="bottom" close-on-click-overlay
:show="showAdminPicker" @close="showAdminPicker = false">
round <van-picker title="选择设备管理员" :columns="adminOptions" @confirm="onAdminConfirm"
position="bottom" @cancel="showAdminPicker = false" />
close-on-click-overlay
@close="showAdminPicker = false"
>
<van-picker
title="选择设备管理员"
:columns="adminOptions"
@confirm="onAdminConfirm"
@cancel="showAdminPicker = false"
/>
</van-popup> </van-popup>
<!-- 操作员弹窗 --> <!-- 操作员弹窗 -->
<van-popup <van-popup :show="showOperatorPicker" round position="bottom" close-on-click-overlay
:show="showOperatorPicker" @close="showOperatorPicker = false">
round <van-picker title="选择操作员" :columns="operatorOptions" @confirm="operatorConfirm"
position="bottom" @cancel="showOperatorPicker = false" />
close-on-click-overlay
@close="showOperatorPicker = false"
>
<van-picker
title="选择操作员"
:columns="operatorOptions"
@confirm="operatorConfirm"
@cancel="showOperatorPicker = false"
/>
</van-popup> </van-popup>
<!-- 购置日期弹窗 --> <!-- 购置日期弹窗 -->
<van-popup <van-popup :show="showTimePicker" round position="bottom" close-on-click-overlay
:show="showTimePicker" @close="showTimePicker = false">
round <van-date-picker v-model="currentDate" title="选择购置日期" @confirm="onDateConfirm"
position="bottom" @cancel="showTimePicker = false" />
close-on-click-overlay
@close="showTimePicker = false"
>
<van-date-picker
v-model="currentDate"
title="选择购置日期"
@confirm="onDateConfirm"
@cancel="showTimePicker = false"
/>
</van-popup> </van-popup>
<!-- 设备状态弹窗 --> <!-- 设备状态弹窗 -->
<van-popup <van-popup :show="showStatusPicker" round position="bottom" close-on-click-overlay
:show="showStatusPicker" @close="showStatusPicker = false">
round <van-picker title="选择设备状态" :columns="statusOptions" @confirm="onStatusConfirm"
position="bottom" @cancel="showStatusPicker = false" />
close-on-click-overlay
@close="showStatusPicker = false"
>
<van-picker
title="选择设备状态"
:columns="statusOptions"
@confirm="onStatusConfirm"
@cancel="showStatusPicker = false"
/>
</van-popup> </van-popup>
<!-- 是否应急设备弹窗 --> <!-- 是否应急设备弹窗 -->
<van-popup <van-popup :show="showEmergencyPicker" round position="bottom" close-on-click-overlay
:show="showEmergencyPicker" @close="showEmergencyPicker = false">
round <van-picker title="是否应急设备" :columns="emergencyOptions" @confirm="onEmergencyConfirm"
position="bottom" @cancel="showEmergencyPicker = false" />
close-on-click-overlay
@close="showEmergencyPicker = false"
>
<van-picker
title="是否应急设备"
:columns="emergencyOptions"
@confirm="onEmergencyConfirm"
@cancel="showEmergencyPicker = false"
/>
</van-popup> </van-popup>
<!-- 是否纳入市级补助范围弹窗 --> <!-- 是否纳入市级补助范围弹窗 -->
<van-popup <van-popup :show="showSubsidyPicker" round position="bottom" close-on-click-overlay
:show="showSubsidyPicker" @close="showSubsidyPicker = false">
round <van-picker title="是否纳入市级补助" :columns="subsidyOptions" @confirm="onSubsidyConfirm"
position="bottom" @cancel="showSubsidyPicker = false" />
close-on-click-overlay
@close="showSubsidyPicker = false"
>
<van-picker
title="是否纳入市级补助"
:columns="subsidyOptions"
@confirm="onSubsidyConfirm"
@cancel="showSubsidyPicker = false"
/>
</van-popup> </van-popup>
</van-form> </van-form>
<div <div style="
style="
position: fixed; position: fixed;
bottom: 0; bottom: 0;
left: 0; left: 0;
@ -391,15 +184,8 @@
background: white; background: white;
box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
z-index: 100; z-index: 100;
" ">
> <van-button round block type="primary" native-type="submit" @click="handleSubmit">
<van-button
round
block
type="primary"
native-type="submit"
@click="handleSubmit"
>
保存 保存
</van-button> </van-button>
</div> </div>
@ -496,12 +282,24 @@ const getPendingConfirmList = async (sbmc) => {
// //
const handleConfirm = () => { const handleConfirm = () => {
if (detailData.value.isManager) {
router.push({ router.push({
name: "EquipConfirm", name: "EquipConfirm",
params: { params: {
data: encodeURIComponent(JSON.stringify(detailData.value)), data: encodeURIComponent(JSON.stringify(detailData.value)),
}, },
}); });
} else{
handleMessage();
}
};
//
const handleMessage = () => {
showToast({
type: "fail",
message: "您不是站长,无法确认设备",
});
}; };
// //
@ -829,7 +627,8 @@ const handleSubmit = async () => {
<style scoped> <style scoped>
.home { .home {
padding-top: var(--van-nav-bar-height); /* 自动匹配导航栏高度 */ padding-top: var(--van-nav-bar-height);
/* 自动匹配导航栏高度 */
} }
.content { .content {
@ -869,12 +668,15 @@ const handleSubmit = async () => {
color: white; color: white;
font-size: 12px; font-size: 12px;
} }
.status-good { .status-good {
background-color: #07c160; background-color: #07c160;
} }
.status-warning { .status-warning {
background-color: #ff976a; background-color: #ff976a;
} }
.status-danger { .status-danger {
background-color: #ee0a24; background-color: #ee0a24;
} }

View File

@ -2,31 +2,17 @@
<div class="home"> <div class="home">
<van-nav-bar title="物资管理" fixed left-arrow @click-left="onClickLeft"> <van-nav-bar title="物资管理" fixed left-arrow @click-left="onClickLeft">
</van-nav-bar> </van-nav-bar>
<van-search <van-search shape="round" v-model="searchValue" :show-action="false" placeholder="请输入物资名称" />
shape="round"
v-model="searchValue"
:show-action="false"
placeholder="请输入物资名称"
/>
<van-cell-group> <van-cell-group>
<van-cell title="当前站点" :value="yhzDetail.mc" /> <van-cell title="当前站点" :value="yhzDetail.mc" />
</van-cell-group> </van-cell-group>
<van-notice-bar <van-notice-bar mode="link" v-if="pendingConfirmList.length" @click="handleConfirm">{{ pendingConfirmList.length
mode="link" }}个物资待确认</van-notice-bar>
v-if="pendingConfirmList.length"
@click="handleConfirm"
>{{ pendingConfirmList.length }}个物资待确认</van-notice-bar
>
<div class="content"> <div class="content">
<van-cell-group> <van-cell-group>
<van-cell <van-cell v-for="(item, index) in materialList" :key="index" :title="item.wzmc" is-link
v-for="(item, index) in materialList" :label="`余量:${item.ye} (${item.dw})`" :to="{
:key="index"
:title="item.wzmc"
is-link
:label="`余量:${item.ye} (${item.dw})`"
:to="{
name: 'MaterialDetail', name: 'MaterialDetail',
params: { params: {
data: encodeURIComponent( data: encodeURIComponent(
@ -37,8 +23,7 @@
}) })
), ),
}, },
}" }">
>
</van-cell> </van-cell>
</van-cell-group> </van-cell-group>
<van-button type="primary" class="add-btn" icon="plus" @click="handleAdd"> <van-button type="primary" class="add-btn" icon="plus" @click="handleAdd">
@ -47,148 +32,62 @@
</div> </div>
<!-- 弹出层 --> <!-- 弹出层 -->
<van-popup <van-popup :show="showPopup" position="bottom" closeable close-on-click-overlay @close="onPopupClose">
:show="showPopup"
position="bottom"
closeable
close-on-click-overlay
@close="onPopupClose"
>
<van-form class="materialAddForm" label-align="left" colon> <van-form class="materialAddForm" label-align="left" colon>
<h3>添加物资</h3> <h3>添加物资</h3>
<!-- 物资名称 --> <!-- 物资名称 -->
<van-field <van-field v-model="form.material.wzmc" label="物资名称" placeholder="请输入物资名称"
v-model="form.material.wzmc" :rules="[{ required: true, message: '请填写物资名称' }]" maxlength="20" show-word-limit>
label="物资名称"
placeholder="请输入物资名称"
:rules="[{ required: true, message: '请填写物资名称' }]"
maxlength="20"
show-word-limit
>
</van-field> </van-field>
<!-- 数量 --> <!-- 数量 -->
<van-field <van-field v-model="form.material.sl" label="数量" placeholder="请输入数量" type="number"
v-model="form.material.sl" :rules="[{ required: true, message: '请填写物资数量' }]"></van-field>
label="数量"
placeholder="请输入数量"
type="number"
:rules="[{ required: true, message: '请填写物资数量' }]"
></van-field>
<!-- 单位 --> <!-- 单位 -->
<van-field <van-field v-model="form.material.dw" is-link arrow-direction="down" label="单位" placeholder="物资单位"
v-model="form.material.dw" @click="showDwPicker = true" ref="dwField" />
is-link <van-popup :show="showDwPicker" round position="bottom" close-on-click-overlay @close="showDwPicker = false">
arrow-direction="down" <van-picker title="选择物资单位" :columns="dwOptions" @confirm="onDwConfirm" @cancel="showDwPicker = false" />
label="单位"
placeholder="物资单位"
@click="showDwPicker = true"
ref="dwField"
/>
<van-popup
:show="showDwPicker"
round
position="bottom"
close-on-click-overlay
@close="showDwPicker = false"
>
<van-picker
title="选择物资单位"
:columns="dwOptions"
@confirm="onDwConfirm"
@cancel="showDwPicker = false"
/>
</van-popup> </van-popup>
<!-- 物资经度 --> <!-- 物资经度 -->
<van-field <van-field v-model="form.material.jd" label="物资经度" placeholder="请输入物资经度">
v-model="form.material.jd"
label="物资经度"
placeholder="请输入物资经度"
>
<template #button> <template #button>
<van-button <van-button size="small" type="primary" @click.stop="handleGetLocation">获取位置</van-button>
size="small"
type="primary"
@click.stop="handleGetLocation"
>获取位置</van-button
>
</template> </template>
</van-field> </van-field>
<!-- 物资纬度 --> <!-- 物资纬度 -->
<van-field <van-field v-model="form.material.wd" label="物资纬度" placeholder="请输入物资纬度">
v-model="form.material.wd"
label="物资纬度"
placeholder="请输入物资纬度"
>
<template #button> <template #button>
<van-button <van-button size="small" type="primary" @click.stop="handleGetLocation">获取位置</van-button>
size="small"
type="primary"
@click.stop="handleGetLocation"
>获取位置</van-button
>
</template> </template>
</van-field> </van-field>
<!-- 负责人 --> <!-- 负责人 -->
<van-field <van-field v-model="form.material.fzr" is-link arrow-direction="down" readonly label="负责人" placeholder="请选择负责人"
v-model="form.material.fzr" @click="showFzrPicker = true" />
is-link
arrow-direction="down"
readonly
label="负责人"
placeholder="请选择负责人"
@click="showFzrPicker = true"
/>
<!-- 负责人弹窗 --> <!-- 负责人弹窗 -->
<van-popup <van-popup :show="showFzrPicker" round position="bottom" close-on-click-overlay @close="showFzrPicker = false">
:show="showFzrPicker" <van-picker title="选择设备管理员" :columns="fzrOptions" @confirm="onFzrConfirm" @cancel="showFzrPicker = false" />
round
position="bottom"
close-on-click-overlay
@close="showFzrPicker = false"
>
<van-picker
title="选择设备管理员"
:columns="fzrOptions"
@confirm="onFzrConfirm"
@cancel="showFzrPicker = false"
/>
</van-popup> </van-popup>
<!-- 备注 --> <!-- 备注 -->
<van-field <van-field v-model="form.material.remark" label="备注" type="textarea" placeholder="" maxlength="20"
v-model="form.material.remark" show-word-limit>
label="备注"
type="textarea"
placeholder=""
maxlength="20"
show-word-limit
>
</van-field> </van-field>
<!-- --> <!-- -->
<van-field label="物资照片" center> <van-field label="物资照片" center>
<template #input> <template #input>
<van-uploader <van-uploader v-model="fileList" @delete="handleDelete" name="photos" :file-list="fileList"
v-model="fileList" :file-type="['image/jpeg', 'image/png']" :after-read="afterRead" multiple :max-count="6" />
@delete="handleDelete"
name="photos"
:file-list="fileList"
:file-type="['image/jpeg', 'image/png']"
:after-read="afterRead"
multiple
:max-count="6"
/>
</template> </template>
</van-field> </van-field>
</van-form> </van-form>
<div <div style="
style="
position: fixed; position: fixed;
bottom: 0; bottom: 0;
left: 0; left: 0;
@ -197,15 +96,8 @@
background: white; background: white;
box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
z-index: 100; z-index: 100;
" ">
> <van-button round block type="primary" native-type="submit" @click="handleSubmit">
<van-button
round
block
type="primary"
native-type="submit"
@click="handleSubmit"
>
保存 保存
</van-button> </van-button>
</div> </div>
@ -213,7 +105,7 @@
</div> </div>
</template> </template>
<script setup> <script setup>
import { ref, onMounted, reactive, toRaw, watch } from "vue"; import { ref, onMounted, reactive, toRaw, watch } from "vue";
import { useRouter, useRoute } from "vue-router"; import { useRouter, useRoute } from "vue-router";
import { showToast, showLoadingToast } from "vant"; import { showToast, showLoadingToast } from "vant";
@ -278,12 +170,24 @@ const getPendingConfirmList = async () => {
// //
const handleConfirm = () => { const handleConfirm = () => {
if (yhzDetail.value.isManager) {
router.push({ router.push({
name: "MaterialConfirm", name: "MaterialConfirm",
params: { params: {
data: encodeURIComponent(JSON.stringify(yhzDetail.value)), data: encodeURIComponent(JSON.stringify(yhzDetail.value)),
}, },
}); });
} else {
handleMessage();
}
};
//
const handleMessage = () => {
showToast({
type: "fail",
message: "您不是站长,无法确认设备",
});
}; };
// rid // rid
@ -465,7 +369,7 @@ const handleGetLocation = async () => {
const location = await request({ const location = await request({
url: "/v3/ip", url: "/v3/ip",
method: "get", method: "get",
params:{ params: {
key: 'c30e9ebd414fd6a4dfcc1ba8c2060dbb' key: 'c30e9ebd414fd6a4dfcc1ba8c2060dbb'
}, },
isThirdPartyAPI: true // isThirdPartyAPI: true //
@ -561,9 +465,10 @@ const onPopupClose = () => {
}; };
</script> </script>
<style scoped> <style scoped>
.home { .home {
padding-top: var(--van-nav-bar-height); /* 自动匹配导航栏高度 */ padding-top: var(--van-nav-bar-height);
/* 自动匹配导航栏高度 */
} }
.content { .content {
@ -603,12 +508,15 @@ const onPopupClose = () => {
color: white; color: white;
font-size: 12px; font-size: 12px;
} }
.status-good { .status-good {
background-color: #07c160; background-color: #07c160;
} }
.status-warning { .status-warning {
background-color: #ff976a; background-color: #ff976a;
} }
.status-danger { .status-danger {
background-color: #ee0a24; background-color: #ee0a24;
} }
@ -617,4 +525,3 @@ const onPopupClose = () => {
padding: 16px 16px 80px 16px; padding: 16px 16px 80px 16px;
} }
</style> </style>