1602 lines
42 KiB
Vue
1602 lines
42 KiB
Vue
|
|
<template>
|
|||
|
|
<view class="qualitySpringback">
|
|||
|
|
<headers :showBack="true">
|
|||
|
|
<view class="headerName">
|
|||
|
|
测量数据
|
|||
|
|
</view>
|
|||
|
|
</headers>
|
|||
|
|
<view class="content">
|
|||
|
|
<view class="top_wrap ">
|
|||
|
|
<view class="title">·构件信息·</view>
|
|||
|
|
<view class="storey_info">
|
|||
|
|
<view class="flex2">
|
|||
|
|
<text>测量楼栋: </text>
|
|||
|
|
<text>{{buildName}}#</text>
|
|||
|
|
</view>
|
|||
|
|
<view class="flex2">
|
|||
|
|
<text>测量楼层: </text>
|
|||
|
|
<text>{{floorName}}F</text>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="flex2 soil_value" v-if="detailId">
|
|||
|
|
<view class="soil_type" style="width: 53%;">混凝土强度:<text>{{form.surveyStrength}}</text></view>
|
|||
|
|
<view class="soil_type" style="width: 47%;">测量结果:<text>{{form.resultType==1?'合格':'不合格'}}</text></view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="measure_data">
|
|||
|
|
<view class="title">·数据测量·</view>
|
|||
|
|
<view class="measure_content">
|
|||
|
|
<view class="flex2" style="margin:0px 0 20rpx">
|
|||
|
|
<view style="font-size:30rpx;color:#372D66;width: 40%;position: relative;">
|
|||
|
|
测量类型:
|
|||
|
|
<uni-icons2 type="help" size="14" @click="showDetail = true"></uni-icons2>
|
|||
|
|
<view v-show="showDetail" class="info_detail">
|
|||
|
|
高强回弹仪 测量范围 C20-C100,适用范围C50-C100
|
|||
|
|
<uni-icons2 class="close_btn" type="closeempty" size="14" @click="showDetail = false"></uni-icons2>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<picker :disabled="detailId!=''" class="picker" @change="pickerChangeType" :value="typeIndex" :range="optionList3"
|
|||
|
|
range-key="name">
|
|||
|
|
<view class="uni-input">{{optionList3[typeIndex].name}}</view>
|
|||
|
|
<uni-icons2 class="arrowdown" type="arrowdown"></uni-icons2>
|
|||
|
|
</picker>
|
|||
|
|
</view>
|
|||
|
|
<view v-if="typeIndex!= 2" class="flex2" style="margin:0px 0 20rpx">
|
|||
|
|
<view style="font-size:30rpx;color:#372D66;width: 40%">测量角度: </view>
|
|||
|
|
<picker :disabled="detailId!=''" class="picker" @change="pickerChangeFloor" :value="angleIndex" :range="optionList"
|
|||
|
|
range-key="name">
|
|||
|
|
<view class="uni-input">{{optionList[angleIndex].name}}</view>
|
|||
|
|
<uni-icons2 class="arrowdown" type="arrowdown"></uni-icons2>
|
|||
|
|
</picker>
|
|||
|
|
</view>
|
|||
|
|
<view v-else-if="typeIndex == 2" class="flex2" style="margin:0px 0 20rpx">
|
|||
|
|
<view style="font-size:30rpx;color:#372D66;width: 40%">测量角度: </view>
|
|||
|
|
<picker :disabled="typeIndex == 2" class="picker" :value="0" :range="optionList"
|
|||
|
|
range-key="name">
|
|||
|
|
<view class="uni-input">水平0°</view>
|
|||
|
|
<uni-icons2 class="arrowdown" type="arrowdown"></uni-icons2>
|
|||
|
|
</picker>
|
|||
|
|
</view>
|
|||
|
|
<view v-if="typeIndex != 2" class="flex2" style="margin:0px 0 20rpx">
|
|||
|
|
<view style="font-size:30rpx;color:#372D66;width: 40%;">测区混凝土类型: </view>
|
|||
|
|
<picker :disabled="detailId!=''" class="picker" @change="pickerChangeConcreteType" :value="concreteType"
|
|||
|
|
:range="concreteTypeList" range-key="name">
|
|||
|
|
<view class="uni-input">{{concreteTypeList[concreteType].name}}</view>
|
|||
|
|
<uni-icons2 class="arrowdown" type="arrowdown"></uni-icons2>
|
|||
|
|
</picker>
|
|||
|
|
</view>
|
|||
|
|
<view v-else-if="typeIndex == 2" class="flex2" style="margin:0px 0 20rpx">
|
|||
|
|
<view style="font-size:30rpx;color:#372D66;width: 40%;">测区混凝土类型: </view>
|
|||
|
|
<picker :disabled="typeIndex == 2" class="picker" value=""
|
|||
|
|
:range="concreteTypeList" range-key="name">
|
|||
|
|
<view class="uni-input">动能4.5J回弹仪测区强度换算</view>
|
|||
|
|
<uni-icons2 class="arrowdown" type="arrowdown"></uni-icons2>
|
|||
|
|
</picker>
|
|||
|
|
</view>
|
|||
|
|
<view class="flex2" style="margin:0px 0 40rpx">
|
|||
|
|
<view style="font-size:30rpx;color:#372D66;width: 40%">设计强度: </view>
|
|||
|
|
<picker :disabled="detailId!=''" class="picker" @change="pickerChangeStrength" :value="strengthIndex"
|
|||
|
|
:range="optionList2" range-key="name">
|
|||
|
|
<view class="uni-input">{{optionList2[strengthIndex].name}}</view>
|
|||
|
|
<uni-icons2 class="arrowdown" type="arrowdown"></uni-icons2>
|
|||
|
|
</picker>
|
|||
|
|
</view>
|
|||
|
|
<view class="flex3">
|
|||
|
|
<view class="table flex4">
|
|||
|
|
<ul class="table_box">
|
|||
|
|
<li :class="colorIndexArr.indexOf(1)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,1)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue1" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(5)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,5)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue5" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(9)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,9)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue9" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(13)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,13)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue13" /></li>
|
|||
|
|
</ul>
|
|||
|
|
<ul class="table_box">
|
|||
|
|
<li :class="colorIndexArr.indexOf(2)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,2)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue2" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(6)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,6)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue6" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(10)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,10)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue10" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(14)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,14)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue14" /></li>
|
|||
|
|
</ul>
|
|||
|
|
<ul class="table_box">
|
|||
|
|
<li :class="colorIndexArr.indexOf(3)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,3)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue3" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(7)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,7)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue7" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(11)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,11)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue11" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(15)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,15)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue15" /></li>
|
|||
|
|
</ul>
|
|||
|
|
<ul class="table_box">
|
|||
|
|
<li :class="colorIndexArr.indexOf(4)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,4)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue4" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(8)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,8)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue8" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(12)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,12)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue12" /></li>
|
|||
|
|
<li :class="colorIndexArr.indexOf(16)!=-1?'red':''"><input class="uni-input"
|
|||
|
|
@input="(e)=>reboundValue(e,16)" disabled placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" v-model="table.reboundValue16" /></li>
|
|||
|
|
</ul>
|
|||
|
|
</view>
|
|||
|
|
<view class="measure_right">
|
|||
|
|
<view>
|
|||
|
|
<view>{{form.reboundAvgValue}}</view>
|
|||
|
|
<view>回弹平均值</view>
|
|||
|
|
<!-- <view class="start_btn start_btn2" @click="send('24535253F8230D0A')">开始采集</view> -->
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view v-if="typeIndex != 2" class="title" style="margin-bottom: 20rpx;">·碳化深度·</view>
|
|||
|
|
<view v-if="typeIndex != 2" class="flex2 depth_wrap">
|
|||
|
|
<view class="depth" style="width: 22%;"><input class="uni-input" placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" @input="(e)=>changeCarbonation(e,1)"
|
|||
|
|
v-model="carbonation.carbonationDepth1" />
|
|||
|
|
</view>
|
|||
|
|
<view class="depth" style="width: 22%;"><input class="uni-input" placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" @input="(e)=>changeCarbonation(e,2)"
|
|||
|
|
v-model="carbonation.carbonationDepth2" />
|
|||
|
|
</view>
|
|||
|
|
<view class="depth" style="width: 22%;"><input class="uni-input" placeholder-style="font-size:24rpx"
|
|||
|
|
placeholder="--" @input="(e)=>changeCarbonation(e,3)"
|
|||
|
|
v-model="carbonation.carbonationDepth3" />
|
|||
|
|
</view>
|
|||
|
|
<view class="depth" style="width: 44%;">平均值: {{form.carbonationDepthAvg}}</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="start_wrap" v-if="resultType!=1&&editId!=''">
|
|||
|
|
<view class="start_btn" @click="measureAgainFn">重新测量构件</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="start_wrap">
|
|||
|
|
<view class="start_btn" @click="saveBtn">保存</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
|
|||
|
|
<dialogs ref="dialogs">
|
|||
|
|
|
|||
|
|
<template v-slot:content>
|
|||
|
|
<view class="dialogTitle">
|
|||
|
|
测强结果
|
|||
|
|
</view>
|
|||
|
|
<view class="formBox2">
|
|||
|
|
<view class="circleBox" v-if="!isoutline" :class="resultType==1?'':'red'">
|
|||
|
|
<view class="num">
|
|||
|
|
{{surveyStrength}}
|
|||
|
|
</view>
|
|||
|
|
<view class="txt">
|
|||
|
|
{{resultType==1?'合格':'不合格'}}
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view v-else>当前处于离线状态,待网络通畅后再上传数据</view>
|
|||
|
|
<view class="start_wrap">
|
|||
|
|
<view class="start_btn" @click="backFn">测量下一个构件</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="closeBtn" @click="backToHome">
|
|||
|
|
返回到首页
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
</dialogs>
|
|||
|
|
</view>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script>
|
|||
|
|
import { jsonData } from './js/jsonData.js'
|
|||
|
|
import { angleJsonData } from './js/angleJsonData.js'
|
|||
|
|
import dialogs from "../../../components/dialog/dialog.vue"
|
|||
|
|
import {
|
|||
|
|
writeBLE
|
|||
|
|
} from '@/static/js/BLEConn.js';
|
|||
|
|
export default {
|
|||
|
|
components: {
|
|||
|
|
dialogs
|
|||
|
|
},
|
|||
|
|
data() {
|
|||
|
|
return {
|
|||
|
|
showDetail: false,
|
|||
|
|
jsonData: jsonData,
|
|||
|
|
angleJsonData: angleJsonData,
|
|||
|
|
surveyStrength: 0,
|
|||
|
|
resultType: 2,//2不合格 1合格
|
|||
|
|
buildName: '',
|
|||
|
|
floorName: '',
|
|||
|
|
typeIndex: 0,
|
|||
|
|
optionList3:[{
|
|||
|
|
name: '请选择',
|
|||
|
|
value: ''
|
|||
|
|
},{
|
|||
|
|
name: '普通设备',
|
|||
|
|
value: 1
|
|||
|
|
},{
|
|||
|
|
name: '高强设备',
|
|||
|
|
value: 2
|
|||
|
|
}],
|
|||
|
|
optionList: [{
|
|||
|
|
name: '请选择',
|
|||
|
|
value: ''
|
|||
|
|
},{
|
|||
|
|
name: '向上90°',
|
|||
|
|
value: 90
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '向上60°',
|
|||
|
|
value: 60
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '向上45°',
|
|||
|
|
value: 45
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '向上30°',
|
|||
|
|
value: 30
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '水平0°',
|
|||
|
|
value: 0
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '向下30°',
|
|||
|
|
value: -30
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '向下45°',
|
|||
|
|
value: -45
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '向下60°',
|
|||
|
|
value: -60
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '向下90°',
|
|||
|
|
value: -90
|
|||
|
|
},
|
|||
|
|
],
|
|||
|
|
optionList2: [
|
|||
|
|
// {
|
|||
|
|
// name: 'C7.5',
|
|||
|
|
// value: 'C7.5'
|
|||
|
|
// },
|
|||
|
|
// {
|
|||
|
|
// name: 'C10',
|
|||
|
|
// value: 'C10'
|
|||
|
|
// },
|
|||
|
|
{
|
|||
|
|
name: '请选择',
|
|||
|
|
value: ''
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C15',
|
|||
|
|
value: 'C15'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C20',
|
|||
|
|
value: 'C20'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C25',
|
|||
|
|
value: 'C25'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C30',
|
|||
|
|
value: 'C30'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C35',
|
|||
|
|
value: 'C35'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C40',
|
|||
|
|
value: 'C40'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C45',
|
|||
|
|
value: 'C45'
|
|||
|
|
}, {
|
|||
|
|
name: 'C50',
|
|||
|
|
value: 'C50'
|
|||
|
|
}, {
|
|||
|
|
name: 'C55',
|
|||
|
|
value: 'C55'
|
|||
|
|
}, {
|
|||
|
|
name: 'C60',
|
|||
|
|
value: 'C60'
|
|||
|
|
},
|
|||
|
|
],
|
|||
|
|
concreteTypeList: [{
|
|||
|
|
name: '请选择',
|
|||
|
|
value: ''
|
|||
|
|
},{
|
|||
|
|
name: '非泵送混凝土',
|
|||
|
|
value: 1
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '泵送混凝土',
|
|||
|
|
value: 2
|
|||
|
|
},
|
|||
|
|
],
|
|||
|
|
strengthIndex: 0,
|
|||
|
|
concreteType: 0,
|
|||
|
|
angleIndex: 0,
|
|||
|
|
form: {
|
|||
|
|
angle: 0,
|
|||
|
|
floorId: '',
|
|||
|
|
coordinateX: '',
|
|||
|
|
coordinateY: '',
|
|||
|
|
projectSn: '',
|
|||
|
|
reboundAvgValue: 0,
|
|||
|
|
carbonationDepthAvg: 0,
|
|||
|
|
surveyType: 1,
|
|||
|
|
measureDevType: 1,
|
|||
|
|
designStrength: 'C15'
|
|||
|
|
},
|
|||
|
|
table: {
|
|||
|
|
// reboundValue1: 0,
|
|||
|
|
// reboundValue2: 1,
|
|||
|
|
// reboundValue3: 2,
|
|||
|
|
// reboundValue4: 7,
|
|||
|
|
// reboundValue5: 10,
|
|||
|
|
// reboundValue6: 5,
|
|||
|
|
// reboundValue7: 6,
|
|||
|
|
// reboundValue8: 7,
|
|||
|
|
// reboundValue9: 5,
|
|||
|
|
// reboundValue10: 11,
|
|||
|
|
// reboundValue11: 4,
|
|||
|
|
// reboundValue12: 0,
|
|||
|
|
// reboundValue13: 0,
|
|||
|
|
// reboundValue14: 1,
|
|||
|
|
// reboundValue15: 2,
|
|||
|
|
// reboundValue16: 3,
|
|||
|
|
reboundValue1: '',
|
|||
|
|
reboundValue2: '',
|
|||
|
|
reboundValue3: '',
|
|||
|
|
reboundValue4: '',
|
|||
|
|
reboundValue5: '',
|
|||
|
|
reboundValue6: '',
|
|||
|
|
reboundValue7: '',
|
|||
|
|
reboundValue8: '',
|
|||
|
|
reboundValue9: '',
|
|||
|
|
reboundValue10: '',
|
|||
|
|
reboundValue11: '',
|
|||
|
|
reboundValue12: '',
|
|||
|
|
reboundValue13: '',
|
|||
|
|
reboundValue14: '',
|
|||
|
|
reboundValue15: '',
|
|||
|
|
reboundValue16: '',
|
|||
|
|
},
|
|||
|
|
carbonation: {
|
|||
|
|
carbonationDepth1: "",
|
|||
|
|
carbonationDepth2: "",
|
|||
|
|
carbonationDepth3: "",
|
|||
|
|
},
|
|||
|
|
dataIndex: 1,
|
|||
|
|
colorIndexArr: [],
|
|||
|
|
detailId:'',
|
|||
|
|
editId:'',
|
|||
|
|
isoutline: false,
|
|||
|
|
isTest: false
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
onLoad(option) {
|
|||
|
|
console.log(jsonData)
|
|||
|
|
console.log((option))
|
|||
|
|
this.buildName = option.buildName;
|
|||
|
|
this.floorName = option.floorName;
|
|||
|
|
this.form.floorId = option.floorId;
|
|||
|
|
this.form.coordinateX = option.coordinateX;
|
|||
|
|
this.form.coordinateY = option.coordinateY;
|
|||
|
|
this.form.projectSn = JSON.parse(uni.getStorageSync('projectDetail')).projectSn;
|
|||
|
|
|
|||
|
|
if(uni.getStorageSync('oldObj')){
|
|||
|
|
// let obj = {
|
|||
|
|
// typeIndex: that.typeIndex,
|
|||
|
|
// angleIndex: that.angleIndex,
|
|||
|
|
// concreteType: that.concreteType,
|
|||
|
|
// strengthIndex: that.strengthIndex
|
|||
|
|
// }
|
|||
|
|
console.log(uni.getStorageSync('oldObj'))
|
|||
|
|
let obj = uni.getStorageSync('oldObj')
|
|||
|
|
this.form.measureDevType = obj.typeIndex
|
|||
|
|
|
|||
|
|
this.typeIndex = obj.typeIndex
|
|||
|
|
this.angleIndex = obj.angleIndex,
|
|||
|
|
this.concreteType = obj.concreteType,
|
|||
|
|
this.strengthIndex = obj.strengthIndex
|
|||
|
|
if(this.typeIndex == 2){
|
|||
|
|
this.optionList2 = [{
|
|||
|
|
name: '请选择',
|
|||
|
|
value: ''
|
|||
|
|
},{
|
|||
|
|
name: 'C20',
|
|||
|
|
value: 'C20'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C25',
|
|||
|
|
value: 'C25'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C30',
|
|||
|
|
value: 'C30'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C35',
|
|||
|
|
value: 'C35'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C40',
|
|||
|
|
value: 'C40'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C45',
|
|||
|
|
value: 'C45'
|
|||
|
|
}, {
|
|||
|
|
name: 'C50',
|
|||
|
|
value: 'C50'
|
|||
|
|
}, {
|
|||
|
|
name: 'C55',
|
|||
|
|
value: 'C55'
|
|||
|
|
}, {
|
|||
|
|
name: 'C60',
|
|||
|
|
value: 'C60'
|
|||
|
|
},{
|
|||
|
|
name: 'C65',
|
|||
|
|
value: 'C65'
|
|||
|
|
},{
|
|||
|
|
name: 'C70',
|
|||
|
|
value: 'C70'
|
|||
|
|
},{
|
|||
|
|
name: 'C75',
|
|||
|
|
value: 'C75'
|
|||
|
|
},{
|
|||
|
|
name: 'C80',
|
|||
|
|
value: 'C80'
|
|||
|
|
},{
|
|||
|
|
name: 'C85',
|
|||
|
|
value: 'C85'
|
|||
|
|
},{
|
|||
|
|
name: 'C90',
|
|||
|
|
value: 'C90'
|
|||
|
|
},{
|
|||
|
|
name: 'C95',
|
|||
|
|
value: 'C95'
|
|||
|
|
},{
|
|||
|
|
name: 'C100',
|
|||
|
|
value: 'C100'
|
|||
|
|
}]
|
|||
|
|
this.form.angle = 0
|
|||
|
|
} else {
|
|||
|
|
this.form.angle = this.optionList[this.angleIndex].value;
|
|||
|
|
}
|
|||
|
|
this.form.surveyType = this.concreteTypeList[this.concreteType].value
|
|||
|
|
this.form.designStrength = this.optionList2[this.strengthIndex].value
|
|||
|
|
// this.pickerChangeType({detail: uni.getStorageSync('measureDevType') - 1})
|
|||
|
|
} else {
|
|||
|
|
this.typeIndex = 0
|
|||
|
|
this.angleIndex = 0
|
|||
|
|
this.concreteType = 0
|
|||
|
|
this.strengthIndex = 0
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
// setTimeout(() => {
|
|||
|
|
// this.calculate();
|
|||
|
|
// this.carbonationFn();
|
|||
|
|
// }, 2000)
|
|||
|
|
if(option.id){
|
|||
|
|
this.detailId=option.id
|
|||
|
|
this.editId=option.id
|
|||
|
|
this.getDetails(option.id)
|
|||
|
|
}else{
|
|||
|
|
this.startSpringback()
|
|||
|
|
}
|
|||
|
|
// this.measureBtn()
|
|||
|
|
if(option.isTest == 'true'){
|
|||
|
|
this.isTest = true
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
mounted() {
|
|||
|
|
// this.$refs.dialogs.showFn()
|
|||
|
|
},
|
|||
|
|
onUnload() {
|
|||
|
|
this.stopGetData()
|
|||
|
|
},
|
|||
|
|
methods: {
|
|||
|
|
|
|||
|
|
getResult(data){
|
|||
|
|
console.log(data)
|
|||
|
|
// let obj = {
|
|||
|
|
// carbonationDepthAvg: 1,
|
|||
|
|
// reboundAvgValue: 19.0,
|
|||
|
|
// designStrength: 'C20',
|
|||
|
|
// measureDevType: 1,
|
|||
|
|
// surveyType: 2,
|
|||
|
|
// angle: 0
|
|||
|
|
// }
|
|||
|
|
let obj = data
|
|||
|
|
if(obj.measureDevType == 2){
|
|||
|
|
let result = 0.0079*obj.reboundAvgValue*obj.reboundAvgValue+0.75*obj.reboundAvgValue-7.83
|
|||
|
|
this.surveyStrength = parseInt(result*100)/100
|
|||
|
|
this.resultType = result >= obj.designStrength.split('C')[1] ? 1:2
|
|||
|
|
this.editId=''
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
console.log(result,obj.designStrength.split('C'))
|
|||
|
|
}else if(obj.measureDevType == 1){
|
|||
|
|
if(obj.angle != 0 && obj.reboundAvgValue >= 20 && obj.reboundAvgValue <= 50){
|
|||
|
|
obj.reboundAvgValue = this.getReboundAvgValue(obj.angle,obj.reboundAvgValue)
|
|||
|
|
}
|
|||
|
|
// 非泵送混凝土
|
|||
|
|
if(obj.surveyType == 1){
|
|||
|
|
if(obj.reboundAvgValue < 20){
|
|||
|
|
this.surveyStrength = '小于10'
|
|||
|
|
this.resultType = 2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else if (obj.reboundAvgValue > 60){
|
|||
|
|
this.surveyStrength = '大于60'
|
|||
|
|
this.resultType = 1
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else {
|
|||
|
|
let arr = this.jsonData.RECORDS.filter(item=>item.type == 1)
|
|||
|
|
let arr2 = arr.filter(item=>item.rebound_avg_value == obj.reboundAvgValue || (item.rebound_avg_value < obj.reboundAvgValue && item.rebound_avg_value+0.1 >= obj.reboundAvgValue) || (item.rebound_avg_value > obj.reboundAvgValue && item.rebound_avg_value-0.1 <= obj.reboundAvgValue))
|
|||
|
|
// console.log(arr2)
|
|||
|
|
if(arr2 && arr2.length == 1){
|
|||
|
|
let val = this.getCarbonationKey(obj.carbonationDepthAvg,arr2[0])
|
|||
|
|
console.log(val)
|
|||
|
|
if(val == 'up'){
|
|||
|
|
this.surveyStrength = '大于60'
|
|||
|
|
this.resultType = 1
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else if(val == 'down'){
|
|||
|
|
this.surveyStrength = '小于10'
|
|||
|
|
this.resultType = 2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else {
|
|||
|
|
this.surveyStrength = val
|
|||
|
|
this.resultType = val >= obj.designStrength.split('C')[1] ? 1:2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
} else if(arr2.length == 2){
|
|||
|
|
let x = this.getCarbonationKey(obj.carbonationDepthAvg,arr2[0])
|
|||
|
|
let y = this.getCarbonationKey(obj.carbonationDepthAvg,arr2[1])
|
|||
|
|
if(x == 'down' || y == 'down'){
|
|||
|
|
this.surveyStrength = '小于10'
|
|||
|
|
this.resultType = 2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else if(x == 'up' || y == 'up'){
|
|||
|
|
this.surveyStrength = '大于60'
|
|||
|
|
this.resultType = 1
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else {
|
|||
|
|
let val = (y-x)*(obj.reboundAvgValue-arr2[0].rebound_avg_value)/(arr2[1].rebound_avg_value - arr2[0].rebound_avg_value)+x
|
|||
|
|
this.surveyStrength = val.toFixed(2)
|
|||
|
|
this.resultType = val >= obj.designStrength.split('C')[1] ? 1:2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
console.log(val.toFixed(2))
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
} else if(obj.surveyType == 2){
|
|||
|
|
if(obj.reboundAvgValue < 18.6){
|
|||
|
|
this.surveyStrength = '小于10'
|
|||
|
|
this.resultType = 2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else if (obj.reboundAvgValue > 52.8){
|
|||
|
|
this.surveyStrength = '大于60'
|
|||
|
|
this.resultType = 1
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else {
|
|||
|
|
let arr = this.jsonData.RECORDS.filter(item=>item.type == 2)
|
|||
|
|
let arr2 = arr.filter(item=>item.rebound_avg_value == obj.reboundAvgValue || (item.rebound_avg_value < obj.reboundAvgValue && item.rebound_avg_value+0.1 >= obj.reboundAvgValue) || (item.rebound_avg_value > obj.reboundAvgValue && item.rebound_avg_value-0.1 <= obj.reboundAvgValue))
|
|||
|
|
console.log(arr2)
|
|||
|
|
if(arr2 && arr2.length == 1){
|
|||
|
|
let val = this.getCarbonationKey(obj.carbonationDepthAvg,arr2[0])
|
|||
|
|
console.log(val)
|
|||
|
|
if(val == 'up'){
|
|||
|
|
this.surveyStrength = '大于60'
|
|||
|
|
this.resultType = 1
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else if(val == 'down'){
|
|||
|
|
this.surveyStrength = '小于10'
|
|||
|
|
this.resultType = 2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else {
|
|||
|
|
this.surveyStrength = val
|
|||
|
|
this.resultType = val >= obj.designStrength.split('C')[1] ? 1:2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
} else if(arr2.length == 2){
|
|||
|
|
let x = this.getCarbonationKey(obj.carbonationDepthAvg,arr2[0])
|
|||
|
|
let y = this.getCarbonationKey(obj.carbonationDepthAvg,arr2[1])
|
|||
|
|
if(x == 'down' || y == 'down'){
|
|||
|
|
this.surveyStrength = '小于10'
|
|||
|
|
this.resultType = 2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else if(x == 'up' || y == 'up'){
|
|||
|
|
this.surveyStrength = '大于60'
|
|||
|
|
this.resultType = 1
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
} else {
|
|||
|
|
let val = (y-x)*(obj.reboundAvgValue-arr2[0].rebound_avg_value)/(arr2[1].rebound_avg_value - arr2[0].rebound_avg_value)+x
|
|||
|
|
this.surveyStrength = val.toFixed(2)
|
|||
|
|
this.resultType = val >= obj.designStrength.split('C')[1] ? 1:2
|
|||
|
|
this.$refs.dialogs.showFn()
|
|||
|
|
console.log(val.toFixed(2))
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// console.log(data)
|
|||
|
|
// console.log(jsonData)
|
|||
|
|
},
|
|||
|
|
// 获取计算值
|
|||
|
|
getCarbonationKey(carbonationDepthAvg,val){
|
|||
|
|
let result = ''
|
|||
|
|
console.log(carbonationDepthAvg)
|
|||
|
|
switch(carbonationDepthAvg) {
|
|||
|
|
case 0:
|
|||
|
|
result = val.carbonation_depth_zero == -2 ? 'up':val.carbonation_depth_zero == -1 ? 'down':val.carbonation_depth_zero
|
|||
|
|
break;
|
|||
|
|
case 0.5:
|
|||
|
|
result = val.carbonation_depth_zero_point_five == -2 ? 'up':val.carbonation_depth_zero_point_five == -1 ? 'down':val.carbonation_depth_zero_point_five
|
|||
|
|
break;
|
|||
|
|
case 1:
|
|||
|
|
result = val.carbonation_depth_one == -2 ? 'up':val.carbonation_depth_one == -1 ? 'down':val.carbonation_depth_one
|
|||
|
|
break;
|
|||
|
|
case 1.5:
|
|||
|
|
result = val.carbonation_depth_one_point_five == -2 ? 'up':val.carbonation_depth_one_point_five == -1 ? 'down':val.carbonation_depth_one_point_five
|
|||
|
|
break;
|
|||
|
|
case 2:
|
|||
|
|
result = val.carbonation_depth_two == -2 ? 'up':val.carbonation_depth_two == -1 ? 'down':val.carbonation_depth_two
|
|||
|
|
break;
|
|||
|
|
case 2.5:
|
|||
|
|
result = val.carbonation_depth_two_point_five == -2 ? 'up':val.carbonation_depth_two_point_five == -1 ? 'down':val.carbonation_depth_two_point_five
|
|||
|
|
break;
|
|||
|
|
case 3:
|
|||
|
|
return val.carbonation_depth_three == -2 ? 'up':val.carbonation_depth_three == -1 ? 'down':val.carbonation_depth_three
|
|||
|
|
break;
|
|||
|
|
case 3.5:
|
|||
|
|
result = val.carbonation_depth_three_point_five == -2 ? 'up':val.carbonation_depth_three_point_five == -1 ? 'down':val.carbonation_depth_three_point_five
|
|||
|
|
break;
|
|||
|
|
case 4:
|
|||
|
|
result = val.carbonation_depth_four == -2 ? 'up':carbonation_depth_four == -1 ? 'down':val.carbonation_depth_four
|
|||
|
|
break;
|
|||
|
|
case 4.5:
|
|||
|
|
result = val.carbonation_depth_four_point_five == -2 ? 'up':val.carbonation_depth_four_point_five == -1 ? 'down':val.carbonation_depth_four_point_five
|
|||
|
|
break;
|
|||
|
|
case 5:
|
|||
|
|
result = val.carbonation_depth_five == -2 ? 'up': val.carbonation_depth_five == -1 ? 'down': val.carbonation_depth_five
|
|||
|
|
break;
|
|||
|
|
case 5.5:
|
|||
|
|
result = val.carbonation_depth_five_point_five == -2 ? 'up':val.carbonation_depth_five_point_five == -1 ? 'down':val.carbonation_depth_five_point_five
|
|||
|
|
break;
|
|||
|
|
case 6:
|
|||
|
|
result = val.carbonation_depth_six == -2 ? 'up':val.carbonation_depth_six == -1 ? 'down':val.carbonation_depth_six
|
|||
|
|
break;
|
|||
|
|
default:
|
|||
|
|
if(carbonationDepthAvg > 6){
|
|||
|
|
result = val.carbonation_depth_six == -2 ? 'up':val.carbonation_depth_six == -1 ? 'down':val.carbonation_depth_six
|
|||
|
|
} else {
|
|||
|
|
result = ''
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
// 计算角度差值
|
|||
|
|
getReboundAvgValue(angle,val){
|
|||
|
|
console.log(angle,val,this.angleJsonData.RECORDS)
|
|||
|
|
let result = ''
|
|||
|
|
let a = this.angleJsonData.RECORDS.filter(item=>item.rebound_avg_value == val || (item.rebound_avg_value < val && item.rebound_avg_value+1 > val) || (item.rebound_avg_value > val && item.rebound_avg_value-1 < val))
|
|||
|
|
if(a && a.length>0 && a.length == 1){
|
|||
|
|
console.log(this.getVal(angle,a[0]))
|
|||
|
|
result = Number(val)+Number(this.getVal(angle,a[0]))
|
|||
|
|
console.log(result)
|
|||
|
|
} else if(a && a.length>0 && a.length == 2){
|
|||
|
|
let x = this.getVal(angle,a[0])
|
|||
|
|
let y = this.getVal(angle,a[1])
|
|||
|
|
console.log((y-x)*(val-val-1))
|
|||
|
|
let b = (y-x)*(val-a[0].rebound_avg_value)/(a[1].rebound_avg_value - a[0].rebound_avg_value)+x
|
|||
|
|
result = val+b
|
|||
|
|
}
|
|||
|
|
console.log(a,result)
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
// 从Json中获取角度差值
|
|||
|
|
getVal(angle,val){
|
|||
|
|
console.log(angle,val)
|
|||
|
|
let result = ''
|
|||
|
|
switch(angle) {
|
|||
|
|
case 90:
|
|||
|
|
result = val.up90
|
|||
|
|
break;
|
|||
|
|
case 60:
|
|||
|
|
result = val.up60
|
|||
|
|
break;
|
|||
|
|
case 45:
|
|||
|
|
result = val.up45
|
|||
|
|
break;
|
|||
|
|
case 30:
|
|||
|
|
result = val.up30
|
|||
|
|
break;
|
|||
|
|
case -30:
|
|||
|
|
result = val.down30
|
|||
|
|
break;
|
|||
|
|
case -45:
|
|||
|
|
result = val.down45
|
|||
|
|
break;
|
|||
|
|
case -60:
|
|||
|
|
return val.down60
|
|||
|
|
break;
|
|||
|
|
case -90:
|
|||
|
|
result = val.down90
|
|||
|
|
break;
|
|||
|
|
default:
|
|||
|
|
result = ''
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
showInfo(){
|
|||
|
|
// this.$refs.dialogs2.showFn()
|
|||
|
|
},
|
|||
|
|
saveBtn(){
|
|||
|
|
this.measureBtn()
|
|||
|
|
},
|
|||
|
|
//开启回弹采集
|
|||
|
|
startSpringback(){
|
|||
|
|
this.send('24535253F8230D0A')
|
|||
|
|
// this.send('dt')
|
|||
|
|
//监听接收数据事件
|
|||
|
|
uni.$on('recvEvent', this.reviceDevData)
|
|||
|
|
},
|
|||
|
|
//重新测量
|
|||
|
|
measureAgainFn(){
|
|||
|
|
this.table={
|
|||
|
|
reboundValue1: '',
|
|||
|
|
reboundValue2: '',
|
|||
|
|
reboundValue3: '',
|
|||
|
|
reboundValue4: '',
|
|||
|
|
reboundValue5: '',
|
|||
|
|
reboundValue6: '',
|
|||
|
|
reboundValue7: '',
|
|||
|
|
reboundValue8: '',
|
|||
|
|
reboundValue9: '',
|
|||
|
|
reboundValue10: '',
|
|||
|
|
reboundValue11: '',
|
|||
|
|
reboundValue12: '',
|
|||
|
|
reboundValue13: '',
|
|||
|
|
reboundValue14: '',
|
|||
|
|
reboundValue15: '',
|
|||
|
|
reboundValue16: '',
|
|||
|
|
}
|
|||
|
|
this.colorIndexArr=[]
|
|||
|
|
this.dataIndex = 1
|
|||
|
|
this.form.reboundAvgValue = 0;
|
|||
|
|
if(this.detailId!=''){
|
|||
|
|
this.editId=this.detailId
|
|||
|
|
this.detailId=''
|
|||
|
|
}
|
|||
|
|
this.startSpringback()
|
|||
|
|
},
|
|||
|
|
getDetails(id){
|
|||
|
|
this.sendRequest({
|
|||
|
|
url: 'xmgl/massReboundSurveyArea/queryById',
|
|||
|
|
method: 'post',
|
|||
|
|
data: {
|
|||
|
|
id: id
|
|||
|
|
},
|
|||
|
|
success: res => {
|
|||
|
|
this.form=res.result
|
|||
|
|
this.table=res.result
|
|||
|
|
this.optionList2.forEach((element,index)=>{
|
|||
|
|
if(this.form.designStrength==element.name){
|
|||
|
|
this.strengthIndex=index;
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
this.optionList.forEach((element,index)=>{
|
|||
|
|
if(this.form.angle==element.value){
|
|||
|
|
this.angleIndex=index;
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
this.concreteType=this.form.surveyType-1
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
//停止回弹
|
|||
|
|
stopGetData(){
|
|||
|
|
console.log('停止回弹')
|
|||
|
|
uni.$off('recvEvent');
|
|||
|
|
this.send('24455253EA230D0A')
|
|||
|
|
// this.send('dt')
|
|||
|
|
},
|
|||
|
|
backToHome() {
|
|||
|
|
uni.navigateBack({
|
|||
|
|
delta: 3
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
// 4. 发送数据
|
|||
|
|
async send(data) {
|
|||
|
|
//格式检查
|
|||
|
|
// if (!this.sendData) {
|
|||
|
|
// uni.showToast({
|
|||
|
|
// title: '数据不能为空'
|
|||
|
|
// })
|
|||
|
|
// return
|
|||
|
|
// }
|
|||
|
|
// uni.showLoading({
|
|||
|
|
// title: '正在发送数据',
|
|||
|
|
// icon: "loading",
|
|||
|
|
// mask: true
|
|||
|
|
// })
|
|||
|
|
console.log(data,'data')
|
|||
|
|
await writeBLE(data).then(res => {
|
|||
|
|
console.log('发送数据成功',res)
|
|||
|
|
// uni.hideLoading()
|
|||
|
|
// uni.showToast({
|
|||
|
|
// title: '发送成功:' + res
|
|||
|
|
// })
|
|||
|
|
}).catch(err => {
|
|||
|
|
// uni.hideLoading()
|
|||
|
|
uni.showToast({
|
|||
|
|
title: '开启采集数据失败',
|
|||
|
|
icon: 'none'
|
|||
|
|
})
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
reviceDevData(e) {
|
|||
|
|
console.log('设备返回的数据')
|
|||
|
|
console.log(e)
|
|||
|
|
var arr = e.split('"')
|
|||
|
|
var arrLrk = e.split(';')
|
|||
|
|
if (arr[0] == '$RRD') {
|
|||
|
|
this.table['reboundValue' + this.dataIndex] = arr[1]
|
|||
|
|
this.calculate()
|
|||
|
|
this.dataIndex++
|
|||
|
|
// if (this.dataIndex > 16) {
|
|||
|
|
if (this.dataIndex == 17) {
|
|||
|
|
this.stopGetData()
|
|||
|
|
// this.measureBtn()
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
if(arrLrk.length > 0 && arrLrk[0] == '$GLODON$'){
|
|||
|
|
let valIndex = arrLrk[1].indexOf(':')
|
|||
|
|
console.log(arrLrk[1].substr(valIndex + 1))
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
//新增
|
|||
|
|
measureBtn() {
|
|||
|
|
let state1 = true
|
|||
|
|
let state2 = true
|
|||
|
|
|
|||
|
|
Object.values(this.table).map((item, index) => {
|
|||
|
|
if (item == "" || item == null) {
|
|||
|
|
state2 = false
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
|
|||
|
|
if(this.typeIndex != 2){
|
|||
|
|
Object.values(this.carbonation).map((item,index)=>{
|
|||
|
|
console.log(item)
|
|||
|
|
if(item == "" || item == null){
|
|||
|
|
state1 = false
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
console.log(this.carbonation,state1)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(!this.typeIndex){
|
|||
|
|
uni.showToast({
|
|||
|
|
title:'请选择测量类型',
|
|||
|
|
icon:"none"
|
|||
|
|
})
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
if(!this.angleIndex && this.typeIndex != 2){
|
|||
|
|
uni.showToast({
|
|||
|
|
title:'请选择测量角度',
|
|||
|
|
icon:"none"
|
|||
|
|
})
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
if(!this.concreteType && this.typeIndex != 2){
|
|||
|
|
uni.showToast({
|
|||
|
|
title:'请选择混凝土类型',
|
|||
|
|
icon:"none"
|
|||
|
|
})
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
if(!this.strengthIndex){
|
|||
|
|
uni.showToast({
|
|||
|
|
title:'请选择设计强度',
|
|||
|
|
icon:"none"
|
|||
|
|
})
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
if(!state1){
|
|||
|
|
uni.showToast({
|
|||
|
|
title:'请输入碳化深度',
|
|||
|
|
icon:"none"
|
|||
|
|
})
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
if (!state2) {
|
|||
|
|
uni.showToast({
|
|||
|
|
title: '请采集混凝土强度',
|
|||
|
|
icon: "none"
|
|||
|
|
})
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(this.typeIndex == 2){
|
|||
|
|
this.carbonation.carbonationDepth1 = 0
|
|||
|
|
this.carbonation.carbonationDepth2 = 0
|
|||
|
|
this.carbonation.carbonationDepth3 = 0
|
|||
|
|
this.form.carbonationDepthAvg = 0
|
|||
|
|
this.form.surveyType = 3
|
|||
|
|
this.form.angle = 0
|
|||
|
|
}
|
|||
|
|
let data = Object.assign(this.form, this.carbonation, this.table); //合并对象
|
|||
|
|
// console.log('保存的数据')
|
|||
|
|
// console.log(JSON.stringify(data))
|
|||
|
|
// console.log(JSON.stringify(this.table))
|
|||
|
|
let url = 'xmgl/massReboundSurveyArea/add'
|
|||
|
|
if(this.editId){
|
|||
|
|
url='xmgl/massReboundSurveyArea/saveAnewSurvey'
|
|||
|
|
data.id=this.editId
|
|||
|
|
}
|
|||
|
|
let that = this
|
|||
|
|
// console.log(data)
|
|||
|
|
if(this.isTest){
|
|||
|
|
data.opType = 1
|
|||
|
|
} else {
|
|||
|
|
data.opType = 0
|
|||
|
|
}
|
|||
|
|
uni.getNetworkType({
|
|||
|
|
success: function (res) {
|
|||
|
|
// console.log(res.networkType);
|
|||
|
|
if(res.networkType == 'none'){
|
|||
|
|
if(that.isTest){
|
|||
|
|
that.getResult(data)
|
|||
|
|
} else {
|
|||
|
|
let outLineData = []
|
|||
|
|
if(uni.getStorageSync('outLineData')){
|
|||
|
|
outLineData = JSON.parse(uni.getStorageSync('outLineData'))
|
|||
|
|
}
|
|||
|
|
outLineData.push(data)
|
|||
|
|
let obj = {
|
|||
|
|
typeIndex: that.typeIndex,
|
|||
|
|
angleIndex: that.angleIndex,
|
|||
|
|
concreteType: that.concreteType,
|
|||
|
|
strengthIndex: that.strengthIndex
|
|||
|
|
}
|
|||
|
|
// uni.setStorageSync('oldObj', obj);
|
|||
|
|
// uni.setStorageSync('outLineData', JSON.stringify(outLineData));
|
|||
|
|
console.log(outLineData)
|
|||
|
|
that.isoutline = true
|
|||
|
|
that.$refs.dialogs.showFn()
|
|||
|
|
}
|
|||
|
|
} else{
|
|||
|
|
that.isoutline = false
|
|||
|
|
that.sendRequest({
|
|||
|
|
url: url,
|
|||
|
|
method: 'post',
|
|||
|
|
data: data,
|
|||
|
|
success: (res) => {
|
|||
|
|
if (res.code == 200) {
|
|||
|
|
console.log('res.result', res.result)
|
|||
|
|
that.surveyStrength = res.result.surveyStrength
|
|||
|
|
that.resultType = res.result.resultType
|
|||
|
|
that.editId=res.result.id
|
|||
|
|
let obj = {
|
|||
|
|
typeIndex: that.typeIndex,
|
|||
|
|
angleIndex: that.angleIndex,
|
|||
|
|
concreteType: that.concreteType,
|
|||
|
|
strengthIndex: that.strengthIndex
|
|||
|
|
}
|
|||
|
|
uni.setStorageSync('oldObj', obj);
|
|||
|
|
uni.showToast({
|
|||
|
|
title: '保存成功'
|
|||
|
|
})
|
|||
|
|
that.$refs.dialogs.showFn()
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
|
|||
|
|
},
|
|||
|
|
backFn() {
|
|||
|
|
uni.navigateBack({});
|
|||
|
|
},
|
|||
|
|
// 选择测量类型
|
|||
|
|
pickerChangeType(e){
|
|||
|
|
console.log(e)
|
|||
|
|
this.typeIndex = e.detail.value;
|
|||
|
|
this.form.measureDevType = this.optionList3[this.typeIndex].value;
|
|||
|
|
if(this.typeIndex == 2){
|
|||
|
|
this.strengthIndex = 0
|
|||
|
|
this.form.designStrength = ''
|
|||
|
|
this.optionList2 = [{
|
|||
|
|
name: '请选择',
|
|||
|
|
value: ''
|
|||
|
|
},{
|
|||
|
|
name: 'C20',
|
|||
|
|
value: 'C20'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C25',
|
|||
|
|
value: 'C25'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C30',
|
|||
|
|
value: 'C30'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C35',
|
|||
|
|
value: 'C35'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C40',
|
|||
|
|
value: 'C40'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C45',
|
|||
|
|
value: 'C45'
|
|||
|
|
}, {
|
|||
|
|
name: 'C50',
|
|||
|
|
value: 'C50'
|
|||
|
|
}, {
|
|||
|
|
name: 'C55',
|
|||
|
|
value: 'C55'
|
|||
|
|
}, {
|
|||
|
|
name: 'C60',
|
|||
|
|
value: 'C60'
|
|||
|
|
},{
|
|||
|
|
name: 'C65',
|
|||
|
|
value: 'C65'
|
|||
|
|
},{
|
|||
|
|
name: 'C70',
|
|||
|
|
value: 'C70'
|
|||
|
|
},{
|
|||
|
|
name: 'C75',
|
|||
|
|
value: 'C75'
|
|||
|
|
},{
|
|||
|
|
name: 'C80',
|
|||
|
|
value: 'C80'
|
|||
|
|
},{
|
|||
|
|
name: 'C85',
|
|||
|
|
value: 'C85'
|
|||
|
|
},{
|
|||
|
|
name: 'C90',
|
|||
|
|
value: 'C90'
|
|||
|
|
},{
|
|||
|
|
name: 'C95',
|
|||
|
|
value: 'C95'
|
|||
|
|
},{
|
|||
|
|
name: 'C100',
|
|||
|
|
value: 'C100'
|
|||
|
|
}]
|
|||
|
|
this.angleIndex = 0
|
|||
|
|
this.concreteType = 0
|
|||
|
|
} else {
|
|||
|
|
this.angleIndex = 0
|
|||
|
|
this.strengthIndex = 0
|
|||
|
|
this.form.designStrength = ''
|
|||
|
|
this.concreteType = 0
|
|||
|
|
this.optionList2 = [{
|
|||
|
|
name: '请选择',
|
|||
|
|
value: ''
|
|||
|
|
},{
|
|||
|
|
name: 'C15',
|
|||
|
|
value: 'C15'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C20',
|
|||
|
|
value: 'C20'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C25',
|
|||
|
|
value: 'C25'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C30',
|
|||
|
|
value: 'C30'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C35',
|
|||
|
|
value: 'C35'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C40',
|
|||
|
|
value: 'C40'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: 'C45',
|
|||
|
|
value: 'C45'
|
|||
|
|
}, {
|
|||
|
|
name: 'C50',
|
|||
|
|
value: 'C50'
|
|||
|
|
}, {
|
|||
|
|
name: 'C55',
|
|||
|
|
value: 'C55'
|
|||
|
|
}, {
|
|||
|
|
name: 'C60',
|
|||
|
|
value: 'C60'
|
|||
|
|
},]
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
},
|
|||
|
|
//选择测量角度
|
|||
|
|
pickerChangeFloor(e) {
|
|||
|
|
this.angleIndex = e.detail.value;
|
|||
|
|
this.form.angle = this.optionList[this.angleIndex].value;
|
|||
|
|
this.table = {
|
|||
|
|
reboundValue1: '',
|
|||
|
|
reboundValue2: '',
|
|||
|
|
reboundValue3: '',
|
|||
|
|
reboundValue4: '',
|
|||
|
|
reboundValue5: '',
|
|||
|
|
reboundValue6: '',
|
|||
|
|
reboundValue7: '',
|
|||
|
|
reboundValue8: '',
|
|||
|
|
reboundValue9: '',
|
|||
|
|
reboundValue10: '',
|
|||
|
|
reboundValue11: '',
|
|||
|
|
reboundValue12: '',
|
|||
|
|
reboundValue13: '',
|
|||
|
|
reboundValue14: '',
|
|||
|
|
reboundValue15: '',
|
|||
|
|
reboundValue16: '',
|
|||
|
|
};
|
|||
|
|
this.form.reboundAvgValue = 0;
|
|||
|
|
this.dataIndex = 1
|
|||
|
|
this.minData = 0
|
|||
|
|
this.minDataLength = 0
|
|||
|
|
this.maxData = 0
|
|||
|
|
this.maxDataLength = 0
|
|||
|
|
},
|
|||
|
|
pickerChangeStrength(e) {
|
|||
|
|
this.strengthIndex = e.detail.value;
|
|||
|
|
this.form.designStrength = this.optionList2[this.strengthIndex].value
|
|||
|
|
},
|
|||
|
|
//混凝土类型
|
|||
|
|
pickerChangeConcreteType(e) {
|
|||
|
|
this.concreteType = e.detail.value;
|
|||
|
|
this.form.surveyType = this.concreteTypeList[this.concreteType].value
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
//输入测量混凝土硬化
|
|||
|
|
reboundValue(e, type) {
|
|||
|
|
|
|||
|
|
// let state = true;
|
|||
|
|
// this.table['reboundValue' + type] = e.detail.value;
|
|||
|
|
// Object.values(this.table).map((item, index) => {
|
|||
|
|
// if (item == "" || item == null) {
|
|||
|
|
// state = false
|
|||
|
|
// }
|
|||
|
|
// })
|
|||
|
|
// if (state) {
|
|||
|
|
// // console.log(e,type)
|
|||
|
|
// this.calculate();
|
|||
|
|
// }
|
|||
|
|
},
|
|||
|
|
//输入碳化深度
|
|||
|
|
changeCarbonation(e, type) {
|
|||
|
|
this.carbonation['carbonationDepth' + type] = e.detail.value;
|
|||
|
|
let state = true;
|
|||
|
|
Object.values(this.carbonation).map((item, index) => {
|
|||
|
|
if (item == "" || item == null) {
|
|||
|
|
state = false
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
if (state) {
|
|||
|
|
this.carbonationFn();
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
compare(property) {
|
|||
|
|
return function(a, b) {
|
|||
|
|
var value1 = a[property];
|
|||
|
|
var value2 = b[property];
|
|||
|
|
return value1 - value2;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
//计算混凝土强度 平均值
|
|||
|
|
calculate() {
|
|||
|
|
var noSortData = []; //未排序的
|
|||
|
|
var hasSortData = []; //已排序的
|
|||
|
|
this.colorIndexArr=[]
|
|||
|
|
|
|||
|
|
Object.values(this.table).map((value, index) => {
|
|||
|
|
noSortData.push({
|
|||
|
|
value: Number(value),
|
|||
|
|
index: index + 1
|
|||
|
|
})
|
|||
|
|
})
|
|||
|
|
console.log('noSortData', noSortData)
|
|||
|
|
hasSortData = noSortData.sort(this.compare('value'))
|
|||
|
|
|
|||
|
|
console.log('hasSortData', hasSortData)
|
|||
|
|
|
|||
|
|
let arr = [];
|
|||
|
|
hasSortData.forEach((item, index) => {
|
|||
|
|
if (index > 2 && index < 13) {
|
|||
|
|
arr.push(item.value)
|
|||
|
|
} else {
|
|||
|
|
this.colorIndexArr.push(item.index)
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
console.log('this.colorIndexArr', this.colorIndexArr)
|
|||
|
|
var len = arr.length;
|
|||
|
|
var sum = 0;
|
|||
|
|
//利用for循环遍历数组的内容,利用sum累加求和
|
|||
|
|
for (var i = 0; i < len; i++) {
|
|||
|
|
sum += arr[i];
|
|||
|
|
}
|
|||
|
|
console.log(this.dataIndex)
|
|||
|
|
// this.form.reboundAvgValue = (sum / len).toFixed(1);
|
|||
|
|
// this.form.reboundAvgValue = (sum / this.dataIndex).toFixed(1);
|
|||
|
|
if(this.table.reboundValue16){
|
|||
|
|
this.form.reboundAvgValue = (sum / 10).toFixed(1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
},
|
|||
|
|
//碳化 计算平均值
|
|||
|
|
carbonationFn() {
|
|||
|
|
var newData = [];
|
|||
|
|
Object.values(this.carbonation).sort().map(value => {
|
|||
|
|
newData.push(Number(value))
|
|||
|
|
})
|
|||
|
|
console.log(newData)
|
|||
|
|
var len = newData.length;
|
|||
|
|
var sum = 0;
|
|||
|
|
//利用for循环遍历数组的内容,利用sum累加求和
|
|||
|
|
for (var i = 0; i < len; i++) {
|
|||
|
|
sum += newData[i];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 小于0.25修约为0,大于等于0.25小于0.75的修约为0.5,大于等于0.75的修约为1,是按数值修约标准来的。
|
|||
|
|
let val = (sum / len).toFixed(2);
|
|||
|
|
let newVal = Number(val.split('.')[0]);
|
|||
|
|
let decimals = Number(val.split('.')[1]);
|
|||
|
|
let num = 0;
|
|||
|
|
if (decimals < 25) {
|
|||
|
|
num = 0;
|
|||
|
|
} else if (decimals >= 25 && decimals < 75) {
|
|||
|
|
num = 50
|
|||
|
|
} else if (decimals >= 75) {
|
|||
|
|
num = 1
|
|||
|
|
}
|
|||
|
|
if (num == 1) {
|
|||
|
|
this.form.carbonationDepthAvg = Number((newVal + num).toFixed(2));
|
|||
|
|
} else {
|
|||
|
|
this.form.carbonationDepthAvg = Number(newVal + '.' + num);
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<style scoped lang="scss">
|
|||
|
|
.flex {
|
|||
|
|
display: flex;
|
|||
|
|
align-items: center;
|
|||
|
|
justify-content: space-around;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.flex2 {
|
|||
|
|
display: flex;
|
|||
|
|
align-items: center;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.flex3 {
|
|||
|
|
display: flex;
|
|||
|
|
align-items: center;
|
|||
|
|
justify-content: space-between;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.flex4 {
|
|||
|
|
display: flex;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.title {
|
|||
|
|
text-align: center;
|
|||
|
|
line-height: 42rpx;
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
letter-spacing: 1.4px;
|
|||
|
|
color: #2A2B5B;
|
|||
|
|
opacity: 0.4;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.content {
|
|||
|
|
padding: 20rpx 30rpx 40rpx;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
width: 100%;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.top_wrap {
|
|||
|
|
width: 100%;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
padding: 20rpx 26rpx;
|
|||
|
|
background-color: #FBFBFF;
|
|||
|
|
box-shadow: 0 4rpx 20rpx 0 rgba(212, 220, 236, 0.65);
|
|||
|
|
border-radius: 16rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.storey_info {
|
|||
|
|
padding: 20rpx 0;
|
|||
|
|
font-family: PingFangSC-Regular, PingFang SC;
|
|||
|
|
font-weight: 400;
|
|||
|
|
color: #372D66;
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
line-height: 42rpx;
|
|||
|
|
letter-spacing: 6rpx;
|
|||
|
|
/* border-bottom: 1px solid rgba(42,43,91,0.2); */
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.soil_value {
|
|||
|
|
width: 100%;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
flex-wrap: wrap-reverse;
|
|||
|
|
margin: 10rpx 0;
|
|||
|
|
color: rgba(55, 45, 102, 0.6);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.soil_type {
|
|||
|
|
font-size: 26rpx;
|
|||
|
|
line-height: 28rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.soil_type text {
|
|||
|
|
color: #2A2B5B;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.measure_data {
|
|||
|
|
width: 100%;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
padding: 40rpx 30rpx 20rpx;
|
|||
|
|
margin-top: 30rpx;
|
|||
|
|
box-shadow: 0 4rpx 20rpx 0 rgba(212, 220, 236, 0.65);
|
|||
|
|
border-radius: 16rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.measure_content {
|
|||
|
|
width: 100%;
|
|||
|
|
margin: 25px 0;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.measure_title {
|
|||
|
|
text-align: center;
|
|||
|
|
margin: 20rpx 0 30rpx;
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
font-family: PingFang-SC-Medium, PingFang-SC;
|
|||
|
|
font-weight: 500;
|
|||
|
|
color: #2A2B5B;
|
|||
|
|
letter-spacing: 1px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
.measure_right {
|
|||
|
|
width: 38%;
|
|||
|
|
text-align: center;
|
|||
|
|
font-size: 32rpx;
|
|||
|
|
font-family: PingFangSC-Regular, PingFang SC;
|
|||
|
|
font-weight: 500;
|
|||
|
|
color: #372D66;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.measure_btn {
|
|||
|
|
padding: 8px 60rpx;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
border-radius: 60rpx;
|
|||
|
|
color: #fff;
|
|||
|
|
background-color: #4181FE;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.depth_wrap {
|
|||
|
|
width: 100%;
|
|||
|
|
border: 1px solid rgba(42, 43, 91, 0.2);
|
|||
|
|
margin-bottom: 60rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.depth {
|
|||
|
|
width: 25%;
|
|||
|
|
text-align: center;
|
|||
|
|
line-height: 70rpx;
|
|||
|
|
border-right: 1px solid rgba(42, 43, 91, 0.2);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.depth:last-child {
|
|||
|
|
border-right: none;
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
font-family: PingFangSC-Regular, PingFang SC;
|
|||
|
|
font-weight: 400;
|
|||
|
|
color: #372D66;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.table {
|
|||
|
|
border: 1px solid rgba(42, 43, 91, 0.2);
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
flex-wrap: wrap;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.table_box {
|
|||
|
|
width: 85rpx;
|
|||
|
|
list-style: none;
|
|||
|
|
border-right: 1px solid rgba(42, 43, 91, 0.2);
|
|||
|
|
padding: 0;
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
color: #372D66;
|
|||
|
|
font-family: PingFangSC-Regular, PingFang SC;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.table_box:last-child {
|
|||
|
|
border-right: none
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.table_box li {
|
|||
|
|
width: 100%;
|
|||
|
|
height: 73rpx;
|
|||
|
|
text-align: center;
|
|||
|
|
line-height: 73rpx;
|
|||
|
|
border-bottom: solid 1px rgba(42, 43, 91, 0.2);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.table_box li:last-child {
|
|||
|
|
border-bottom: none
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.uni-input {
|
|||
|
|
height: 100%;
|
|||
|
|
padding: 0 10rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.start_wrap {
|
|||
|
|
margin: 60rpx 0 20rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.start_btn {
|
|||
|
|
text-align: center;
|
|||
|
|
pos-bottom: 40rpx;
|
|||
|
|
line-height: 80rpx;
|
|||
|
|
width: 60%;
|
|||
|
|
margin: 0 auto;
|
|||
|
|
/* background-color: #4181FE; */
|
|||
|
|
color: #4181FE;
|
|||
|
|
border-radius: 70rpx;
|
|||
|
|
border: 1px solid #4181FE;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.start_btn:active {
|
|||
|
|
background-color: rgba(65, 129, 254, 0.2);
|
|||
|
|
color: #fff;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.start_btn2 {
|
|||
|
|
font-size: 26rpx;
|
|||
|
|
line-height: 60rpx;
|
|||
|
|
margin-top: 20rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.picker {
|
|||
|
|
border: 1px solid rgba(91, 95, 102, 0.5);
|
|||
|
|
padding: 6px 30rpx;
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
border-radius: 60rpx;
|
|||
|
|
width: 60%;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
position: relative;
|
|||
|
|
margin-left: 20rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.arrowdown {
|
|||
|
|
position: absolute;
|
|||
|
|
top: 20rpx;
|
|||
|
|
right: 30rpx;
|
|||
|
|
color: #262D47;
|
|||
|
|
opacity: 0.8;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.closeBtn {
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
color: rgba(42, 43, 91, 0.5);
|
|||
|
|
padding: 20rpx 0;
|
|||
|
|
text-align: center;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.yellow {
|
|||
|
|
color: #ecd312;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.red {
|
|||
|
|
color: #ec3c12;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.circleBox {
|
|||
|
|
width: 100px;
|
|||
|
|
height: 100px;
|
|||
|
|
border-radius: 50%;
|
|||
|
|
border: 4px solid #1dc349;
|
|||
|
|
text-align: center;
|
|||
|
|
margin: 0 auto;
|
|||
|
|
color: #1dc349;
|
|||
|
|
|
|||
|
|
&.red {
|
|||
|
|
border-color: #f95858;
|
|||
|
|
color: #f95858;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.num {
|
|||
|
|
font-size: 60rpx;
|
|||
|
|
margin-top: 20rpx;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.dialogTitle {
|
|||
|
|
padding: 20rpx 30rpx 0;
|
|||
|
|
}
|
|||
|
|
.info_detail{
|
|||
|
|
position: absolute;
|
|||
|
|
left: 0rpx;
|
|||
|
|
top:-130rpx;
|
|||
|
|
width: 570rpx;
|
|||
|
|
padding: 20rpx;
|
|||
|
|
padding-top: 30rpx;
|
|||
|
|
word-break: break-all;
|
|||
|
|
background: #fff;
|
|||
|
|
background: #eee;
|
|||
|
|
border: 1px solid #EEEEEE;
|
|||
|
|
font-size: 24rpx;
|
|||
|
|
border-radius: 6px;
|
|||
|
|
.close_btn{
|
|||
|
|
position: absolute;
|
|||
|
|
right: 6rpx;
|
|||
|
|
top: 6rpx;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.info_detail:after{
|
|||
|
|
content: '';
|
|||
|
|
width: 0;
|
|||
|
|
height: 0;
|
|||
|
|
border-left: 20rpx solid transparent;
|
|||
|
|
border-right: 20rpx solid transparent;
|
|||
|
|
border-top: 20rpx solid #eee;
|
|||
|
|
position: absolute;
|
|||
|
|
bottom: -20rpx;
|
|||
|
|
left: 115rpx;
|
|||
|
|
}
|
|||
|
|
</style>
|