170 lines
3.6 KiB
Vue
170 lines
3.6 KiB
Vue
<template>
|
|
<view class="page_container addreplacement_box">
|
|
<uni-forms border :modelValue="formData" label-position="left">
|
|
<uni-forms-item label="仪表类型">
|
|
<uni-data-checkbox v-model="formData.deviceType" :localdata="items"></uni-data-checkbox>
|
|
</uni-forms-item>
|
|
<uni-forms-item label="设备编号">
|
|
<view class="flex items-center justify-between">
|
|
<uni-easyinput
|
|
class="flex-1"
|
|
:input-border="false"
|
|
v-model="formData.deviceCode"
|
|
placeholder="请输入设备号"
|
|
:clearable="true"
|
|
>
|
|
</uni-easyinput>
|
|
<uni-icons
|
|
class="scanicons"
|
|
@tap="handleScan"
|
|
size="48rpx"
|
|
type="scan"
|
|
color="#737373"
|
|
></uni-icons>
|
|
</view>
|
|
</uni-forms-item>
|
|
<uni-forms-item label="房屋号">
|
|
<uni-easyinput
|
|
:inputBorder="false"
|
|
@tap="handleClick"
|
|
disabled
|
|
v-model="houseName"
|
|
placeholderStyle="color: #999999"
|
|
placeholder="请选择安装房屋"
|
|
>
|
|
<template #right>
|
|
<uni-icons type="forward" color="#737373"></uni-icons>
|
|
</template>
|
|
</uni-easyinput>
|
|
</uni-forms-item>
|
|
</uni-forms>
|
|
|
|
<view class="action_btn" @tap="handleSubmit">
|
|
<text>提 交</text>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script setup>
|
|
import { ref } from 'vue'
|
|
import { onLoad } from '@dcloudio/uni-app'
|
|
import { AddReplaceMainList } from '@/api/instrument.js'
|
|
|
|
const formData = ref({
|
|
deviceType: 2,
|
|
deviceCode: '',
|
|
houseId: ''
|
|
})
|
|
// 水表,电表列表
|
|
const items = [
|
|
{
|
|
text: '水表',
|
|
value: 2
|
|
},
|
|
{
|
|
text: '电表',
|
|
value: 1
|
|
}
|
|
]
|
|
|
|
const houseName = ref('')
|
|
/** 处理 安装房屋 */
|
|
function handleClick() {
|
|
uni.navigateTo({
|
|
url: '/pageSubPack/instrument/checkouthouse',
|
|
events: {
|
|
backData: data => {
|
|
houseName.value = data.HouseName
|
|
formData.value.houseId = data.Houseid
|
|
console.log(data)
|
|
}
|
|
}
|
|
})
|
|
}
|
|
/** 处理 扫码 */
|
|
function handleScan() {
|
|
uni.scanCode({
|
|
success: function (res) {
|
|
formData.value.deviceCode = res.result
|
|
},
|
|
error: err => {
|
|
uni.showToast({
|
|
icon: 'error',
|
|
title: '扫描异常'
|
|
})
|
|
}
|
|
})
|
|
}
|
|
|
|
function handleSubmit() {
|
|
formData.value.deviceCode = formData.value.deviceCode.trim()
|
|
formData.value.houseId = formData.value.houseId.trim()
|
|
if (!formData.value.deviceCode.trim()) {
|
|
uni.showToast({
|
|
icon: 'exception',
|
|
title: '检查设备编号'
|
|
})
|
|
}
|
|
if (!formData.value.houseId.trim()) {
|
|
uni.showToast({
|
|
icon: 'exception',
|
|
title: '选择房屋'
|
|
})
|
|
}
|
|
AddReplaceMainList(formData.value)
|
|
.then(() => {
|
|
uni.showToast({
|
|
icon: 'success',
|
|
title: '操作成功',
|
|
success() {
|
|
uni.navigateBack()
|
|
}
|
|
})
|
|
})
|
|
.catch(err => {
|
|
uni.showToast({
|
|
icon: 'error',
|
|
title: '检查编号'
|
|
})
|
|
})
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.addreplacement_box {
|
|
background: #ffffff;
|
|
|
|
&:deep(.uni-forms-item) {
|
|
display: flex;
|
|
align-items: center;
|
|
height: 90rpx;
|
|
line-height: 90rpx;
|
|
padding: 0;
|
|
border-bottom: 1rpx solid rgba(0, 0, 0, 0.1);
|
|
}
|
|
&:deep(.uni-easyinput__content) {
|
|
background: none !important;
|
|
}
|
|
|
|
.action_btn {
|
|
width: 670rpx;
|
|
height: 80rpx;
|
|
background: #4d5dfa;
|
|
border-radius: 8rpx;
|
|
|
|
text-align: center;
|
|
|
|
margin-top: 300rpx;
|
|
|
|
font-weight: 400;
|
|
font-size: 28rpx;
|
|
color: #ffffff;
|
|
line-height: 80rpx;
|
|
}
|
|
|
|
.scanicons {
|
|
margin-left: 20rpx;
|
|
}
|
|
}
|
|
</style>
|