239 lines
4.9 KiB
Vue
239 lines
4.9 KiB
Vue
<template>
|
||
<view class="page">
|
||
<u-navbar title="上报异常" :border-bottom="false" :background="bgc" title-color='#000' title-size='36'
|
||
height='58'></u-navbar>
|
||
<view class="box">
|
||
<view class="list">
|
||
<view class="sbbh">
|
||
<view class="onr">
|
||
<image src="https://api.ccttiot.com/smartmeter/img/static/uTo0sMNT1u6dyEgpvraQ" mode=""></image> 设备编号:
|
||
</view>
|
||
<view class="inp">
|
||
<input type="text" placeholder="请输入编号" v-model="result" style="color: #999;padding-left: 30rpx;"/>
|
||
</view>
|
||
<view class="sm" @click="scanQRCode">
|
||
<image src="https://api.ccttiot.com/smartmeter/img/static/uwtCTFeo0LULdRKL6wHG" mode=""></image>
|
||
</view>
|
||
</view>
|
||
<view class="gzyy">
|
||
<view class="">
|
||
故障原因:
|
||
</view>
|
||
<view class="tcsb" @click="btntc" style="color: #999;padding-left: 30rpx;">
|
||
{{text}}
|
||
</view>
|
||
</view>
|
||
<view class="bz">
|
||
<view class="tit">
|
||
<image src="https://api.ccttiot.com/smartmeter/img/static/uTo0sMNT1u6dyEgpvraQ" mode=""></image>备 注:
|
||
</view>
|
||
<view class="wb">
|
||
<textarea name="" placeholder="请输入备注" v-model="cont" id="" cols="30" rows="10"></textarea>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="yc" @click="btnyc">上报异常</view>
|
||
</view>
|
||
|
||
|
||
<u-select v-model="listshow" :list="list" @confirm="confirm"></u-select>
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
export default {
|
||
data() {
|
||
return {
|
||
listshow:false,
|
||
list: [{
|
||
value: '1',
|
||
label: '弹出失败'
|
||
},
|
||
{
|
||
value: '2',
|
||
label: '卡槽损坏'
|
||
},
|
||
{
|
||
value: '3',
|
||
label: '设备破坏'
|
||
},
|
||
{
|
||
value: '4',
|
||
label: '仓位异常'
|
||
}
|
||
],
|
||
text:'弹出失败',
|
||
result:'',
|
||
cont:'',
|
||
type:1
|
||
}
|
||
},
|
||
methods: {
|
||
btntc(){
|
||
this.listshow = true
|
||
},
|
||
confirm(e){
|
||
this.text = e[0].label
|
||
this.type = e[0].value
|
||
},
|
||
|
||
scanQRCode() {
|
||
uni.scanCode({
|
||
onlyFromCamera: true,
|
||
scanType: ['qrCode'],
|
||
success: res => {
|
||
console.log('扫描结果:', res);
|
||
this.result = res.result
|
||
},
|
||
fail: err => {
|
||
console.error('扫描失败:', err);
|
||
uni.showToast({
|
||
title: '扫描失败',
|
||
icon: 'none'
|
||
});
|
||
}
|
||
});
|
||
},
|
||
btnyc(){
|
||
let data = {
|
||
cabinetSn:this.result,
|
||
type:this.type,
|
||
remark:this.cont
|
||
}
|
||
this.$u.post('/agent/abnormal',data).then(res =>{
|
||
if(res.code == 200){
|
||
uni.showToast({
|
||
title: '上报成功',
|
||
icon: 'none',
|
||
duration: 1000
|
||
})
|
||
setTimeout(()=>{
|
||
uni.navigateBack()
|
||
},1000)
|
||
}
|
||
})
|
||
}
|
||
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss">
|
||
/deep/ .u-title,
|
||
/deep/ .uicon-nav-back{
|
||
padding-bottom: 40rpx;
|
||
}
|
||
page {
|
||
background: linear-gradient(180deg, #25CE88 0%, rgba(255, 255, 255, 0) 100%);
|
||
}
|
||
.yc{
|
||
width: 660rpx;
|
||
height: 108rpx;
|
||
margin: auto;
|
||
background: #1DBE7B;
|
||
border-radius: 20rpx;
|
||
color: #FFFFFF;
|
||
line-height: 108rpx;
|
||
text-align: center;
|
||
margin-top: 150rpx;
|
||
font-size: 36rpx;
|
||
}
|
||
|
||
.page {
|
||
width: 750rpx;
|
||
position: fixed;
|
||
top: 0;
|
||
left: 0;
|
||
|
||
.box {
|
||
width: 750rpx;
|
||
height: 1440rpx;
|
||
background: #F4F5F7;
|
||
padding-top: 30rpx;
|
||
|
||
.list {
|
||
width: 100%;
|
||
width: 680rpx;
|
||
height: 388rpx;
|
||
background: #FFFFFF;
|
||
border-radius: 24rpx 24rpx 24rpx 24rpx;
|
||
margin: auto;
|
||
padding: 42rpx 44rpx;
|
||
box-sizing: border-box;
|
||
.sbbh {
|
||
width: 100%;
|
||
display: flex;
|
||
justify-content: space-between;
|
||
font-size: 28rpx;
|
||
color: #3D3D3D;
|
||
.onr {
|
||
margin-top: 10rpx;
|
||
image {
|
||
width: 20rpx;
|
||
height: 20rpx;
|
||
display: inline-block;
|
||
margin-right: 10rpx;
|
||
}
|
||
}
|
||
|
||
.inp {
|
||
input {
|
||
width: 340rpx;
|
||
height: 50rpx;
|
||
border-radius: 12rpx 12rpx 12rpx 12rpx;
|
||
border: 2rpx solid #C9CDD4;
|
||
}
|
||
}
|
||
.sm{
|
||
image{
|
||
width: 52rpx;
|
||
height: 52rpx;
|
||
// background-color: #ccc;
|
||
}
|
||
}
|
||
}
|
||
.gzyy{
|
||
margin-top: 20rpx;
|
||
display: flex;
|
||
justify-content: space-between;
|
||
font-size: 28rpx;
|
||
color: #3D3D3D;
|
||
padding-left: 24rpx;
|
||
.tcsb{
|
||
width: 430rpx;
|
||
height: 50rpx;
|
||
line-height: 50rpx;
|
||
border-radius: 12rpx 12rpx 12rpx 12rpx;
|
||
border: 2rpx solid #C9CDD4;
|
||
font-size: 28rpx;
|
||
color: #3D3D3D;
|
||
padding-left: 30rpx;
|
||
}
|
||
}
|
||
.bz{
|
||
margin-top: 20rpx;
|
||
display: flex;
|
||
justify-content: space-between;
|
||
font-size: 28rpx;
|
||
color: #3D3D3D;
|
||
.tit{
|
||
image{
|
||
width: 20rpx;
|
||
height: 20rpx;
|
||
display: inline-block;
|
||
margin-right: 10rpx;
|
||
}
|
||
}
|
||
.wb{
|
||
width: 430rpx;
|
||
height: 150rpx;
|
||
border-radius: 12rpx 12rpx 12rpx 12rpx;
|
||
border: 2rpx solid #C9CDD4;
|
||
padding: 10rpx 30rpx;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
</style> |