flx:优化
This commit is contained in:
parent
a4f0d646df
commit
39ee4cd9c2
@ -16,33 +16,49 @@
|
||||
搜索
|
||||
</view>
|
||||
</view>
|
||||
<u-dropdown :overlay="true" @open="open" @close="close" :style="dropDownShow ? '' :'overflow:hidden'" active-color="#3190F3">
|
||||
<u-dropdown ref="uDropdown" :overlay="true" @open="open" @close="close" :style="dropDownShow ? '' :'overflow:hidden'" active-color="#3190F3">
|
||||
<u-dropdown-item @change="onMenuChage" :title="searchInfo.teamId == '' ? '班组' : dataListUp(teamOptions, searchInfo.teamId)" v-model="searchInfo.teamId" :options="teamOptions">
|
||||
<view class="slot-content">
|
||||
<scroll-view scroll-y="true" class="scroll-view">
|
||||
<view @click="onMenuClick(item, 1)" class="cell-box" v-for="item in teamOptions"
|
||||
<TreeView :multiple="false" :data="teamOptions" :children-key="'children'"
|
||||
:label-key="'text'" :id-key="'value'" v-model="teamIds" @node-click="onNodeClick(1)" />
|
||||
<!-- <view @click="onMenuClick(item, 1)" class="cell-box" v-for="item in teamOptions"
|
||||
:key="item.id">
|
||||
<view>{{item.text}}</view>
|
||||
<image v-if="searchInfo.teamId == item.value"
|
||||
src="/static/staffAttendance/identity-success.png" mode=""></image>
|
||||
</view>
|
||||
</view> -->
|
||||
</scroll-view>
|
||||
</view>
|
||||
</u-dropdown-item>
|
||||
<u-dropdown-item :title="searchInfo.enterDate == '' ? '进场日期' : dataListUp(enterDateList, searchInfo.enterDate)" :disabled="optsDetail.enterDate == 1" @change="onMenuChage"
|
||||
v-model="searchInfo.enterDate" :options="enterDateList"></u-dropdown-item>
|
||||
v-model="searchInfo.enterDate" :options="enterDateList">
|
||||
<view class="slot-content">
|
||||
<scroll-view scroll-y="true" class="scroll-view">
|
||||
<TreeView :multiple="false" :data="enterDateList" :children-key="'children'"
|
||||
:label-key="'label'" :id-key="'value'" v-model="enterDates" @node-click="onNodeClick(2)" />
|
||||
</scroll-view>
|
||||
</view>
|
||||
</u-dropdown-item>
|
||||
<u-dropdown-item @change="onMenuChage" v-model="searchInfo.inserviceType" :options="inserviceTypeList"
|
||||
:title="inserviceTypeListUp"></u-dropdown-item>
|
||||
:title="inserviceTypeListUp">
|
||||
<scroll-view scroll-y="true" class="scroll-view">
|
||||
<TreeView :multiple="false" :data="inserviceTypeList" :children-key="'children'"
|
||||
:label-key="'label'" :id-key="'value'" v-model="inserviceTypes" @node-click="onNodeClick(4)" />
|
||||
</scroll-view>
|
||||
</u-dropdown-item>
|
||||
<u-dropdown-item @change="onMenuChage" :title="searchInfo.enterDate == '' ? '工种' : dataListUp(workerTypeList, searchInfo.workerTypeId)" v-model="searchInfo.workerTypeId"
|
||||
:options="workerTypeList">
|
||||
<view class="slot-content">
|
||||
<scroll-view scroll-y="true" class="scroll-view">
|
||||
<view @click="onMenuClick(item, 2)" class="cell-box" v-for="item in workerTypeList"
|
||||
<TreeView :multiple="false" :data="workerTypeList" :children-key="'children'"
|
||||
:label-key="'text'" :id-key="'value'" v-model="workerTypeIds" @node-click="onNodeClick(5)" />
|
||||
<!-- <view @click="onMenuClick(item, 2)" class="cell-box" v-for="item in workerTypeList"
|
||||
:key="item.id">
|
||||
<view>{{item.text}}</view>
|
||||
<image v-if="searchInfo.workerTypeId == item.value"
|
||||
src="/static/staffAttendance/identity-success.png" mode=""></image>
|
||||
</view>
|
||||
</view> -->
|
||||
</scroll-view>
|
||||
</view>
|
||||
</u-dropdown-item>
|
||||
@ -50,8 +66,8 @@
|
||||
<!-- v-model="searchInfo.enterpriseId" -->
|
||||
<view class="slot-content">
|
||||
<scroll-view scroll-y="true" class="scroll-view">
|
||||
<TreeView :data="enterpriseList" :children-key="'children'" :label-key="'enterpriseName'"
|
||||
:id-key="'id'" v-model="checkedIds" @node-click="onNodeClick" />
|
||||
<TreeView :multiple="false" :data="enterpriseList" :children-key="'children'" :label-key="'enterpriseName'"
|
||||
:id-key="'id'" v-model="checkedIds" @node-click="onNodeClick(3)" />
|
||||
</scroll-view>
|
||||
</view>
|
||||
</u-dropdown-item>
|
||||
@ -96,7 +112,7 @@
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
checkedIds: [],
|
||||
checkedIds: [''],
|
||||
mobileTopHeight: 0,
|
||||
show: false,
|
||||
searchName: "",
|
||||
@ -122,7 +138,7 @@
|
||||
loadStatus: 'more',
|
||||
optsDetail: {},
|
||||
searchInfo: {
|
||||
enterpriseIds: "",
|
||||
enterpriseId: "",
|
||||
teamId: "",
|
||||
workerTypeId: "",
|
||||
inserviceType: "",
|
||||
@ -173,13 +189,18 @@
|
||||
}],
|
||||
workerTypeList: [],
|
||||
range: '综合推荐',
|
||||
dropDownShow: false
|
||||
dropDownShow: false,
|
||||
teamIds: [''],
|
||||
enterDates: [''],
|
||||
inserviceTypes: [''],
|
||||
workerTypeIds: [''],
|
||||
}
|
||||
},
|
||||
onLoad(opts) {
|
||||
console.log(112233, opts)
|
||||
this.optsDetail = opts;
|
||||
this.searchInfo.inserviceType = opts.inserviceType ? opts.inserviceType : "";
|
||||
this.inserviceTypes = opts.inserviceType ? [opts.inserviceType] : [""];
|
||||
this.searchInfo.enterDate = opts.enterDate ? opts.enterDate : "";
|
||||
|
||||
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
|
||||
@ -220,13 +241,32 @@
|
||||
close(){
|
||||
this.dropDownShow = false
|
||||
},
|
||||
onNodeClick(node, path) {
|
||||
onNodeClick(type) {
|
||||
// node: 当前点击的节点
|
||||
// path: 从根到当前节点的所有父级(含自己)
|
||||
console.log('点击节点', node, '路径', path, this.checkedIds);
|
||||
this.onMenuClick({
|
||||
value: this.checkedIds.join(',')
|
||||
}, 3)
|
||||
console.log(type, this.typeIds, this.checkedIds);
|
||||
if (type == 1) {
|
||||
this.onMenuClick({
|
||||
value: this.teamIds.join(',')
|
||||
}, 1)
|
||||
} else if (type == 2) {
|
||||
this.onMenuClick({
|
||||
value: this.enterDates.join(',')
|
||||
}, 2)
|
||||
} else if (type == 3) {
|
||||
this.onMenuClick({
|
||||
value: this.checkedIds.join(',')
|
||||
}, 3)
|
||||
} else if (type == 4) {
|
||||
this.onMenuClick({
|
||||
value: this.inserviceTypes.join(',')
|
||||
}, 3)
|
||||
} else if (type == 4) {
|
||||
this.onMenuClick({
|
||||
value: this.workerTypeIds.join(',')
|
||||
}, 3)
|
||||
}
|
||||
this.$refs.uDropdown.close();
|
||||
},
|
||||
filterTap() {
|
||||
//显示下拉框
|
||||
@ -251,9 +291,13 @@
|
||||
if (type == 1) {
|
||||
this.searchInfo.teamId = row.value;
|
||||
} else if (type == 2) {
|
||||
this.searchInfo.workerTypeId = row.value;
|
||||
this.searchInfo.enterDate = row.value;
|
||||
} else if (type == 3) {
|
||||
this.searchInfo.enterpriseIds = row.value;
|
||||
this.searchInfo.enterpriseId = row.value;
|
||||
} else if (type == 4) {
|
||||
this.searchInfo.inserviceType = row.value;
|
||||
} else if (type == 5) {
|
||||
this.searchInfo.workerTypeId = row.value;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -63,9 +63,9 @@
|
||||
<view class="box1">
|
||||
<view>作业人员:</view>
|
||||
<view class="textarea">
|
||||
<u-input :clearable="false" v-model="workTicketInfo.operator" :maxlength="50"
|
||||
<u-input :clearable="false" v-model="workTicketInfo.operator" :maxlength="200"
|
||||
placeholder="请输入" type="textarea" :border="true" />
|
||||
<view class="textarea_text"><text>{{workTicketInfo.operator.length}}</text>/50</view>
|
||||
<view class="textarea_text"><text>{{workTicketInfo.operator.length}}</text>/200</view>
|
||||
</view>
|
||||
<!-- <view>
|
||||
<u-input @focus="operatorShow = true" :value="workTicketInfo.operatorsName" type="text"
|
||||
@ -75,17 +75,17 @@
|
||||
<view class="box1">
|
||||
<view><text>*</text>作业内容:</view>
|
||||
<view class="textarea">
|
||||
<u-input :clearable="false" v-model="workTicketInfo.workContent" :maxlength="50"
|
||||
<u-input :clearable="false" v-model="workTicketInfo.workContent" :maxlength="1000"
|
||||
placeholder="请输入" type="textarea" :border="true" />
|
||||
<view class="textarea_text"><text>{{workTicketInfo.workContent.length}}</text>/50</view>
|
||||
<view class="textarea_text"><text>{{workTicketInfo.workContent.length}}</text>/1000</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box1">
|
||||
<view>安全措施:</view>
|
||||
<view class="textarea">
|
||||
<u-input :clearable="false" v-model="workTicketInfo.safetyMeasure" :maxlength="50"
|
||||
<u-input :clearable="false" v-model="workTicketInfo.safetyMeasure" :maxlength="1000"
|
||||
placeholder="请输入" type="textarea" :border="true" />
|
||||
<view class="textarea_text"><text>{{workTicketInfo.safetyMeasure.length}}</text>/50</view>
|
||||
<view class="textarea_text"><text>{{workTicketInfo.safetyMeasure.length}}</text>/1000</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box1 box2">
|
||||
@ -155,7 +155,8 @@
|
||||
<view>
|
||||
<view>{{item.devName}}</view>
|
||||
<view @click="onDelete(item)">
|
||||
<u-icon name="trash"></u-icon>
|
||||
<!-- <u-icon name="trash"></u-icon> -->
|
||||
<image src="/static/icon-delete.png"></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="">
|
||||
@ -179,11 +180,12 @@
|
||||
<view>工作票已{{onEditType ? '编辑' : '添加'}}完成,是否立即开始作业?</view>
|
||||
<view>
|
||||
<u-icon name="info-circle"></u-icon>
|
||||
<view>点击立即开始,则会下发指令到作业监控设备,开启设备录像。</view>
|
||||
<view>点击立即开始后,需要到执法记录仪上手动开始工单,才能进行录像,否则只能查看实时监控。</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="confrim-btn" v-if="current != 2">
|
||||
<view @click="onNavigateBack">取消</view>
|
||||
<view v-if="current == 1" @click="onLastStep">上一步</view>
|
||||
<view v-else @click="onNavigateBack">取消</view>
|
||||
<view @click="onNextStep">下一步</view>
|
||||
</view>
|
||||
<view class="confrim-btn" v-else>
|
||||
@ -283,7 +285,8 @@
|
||||
<view>
|
||||
<view>{{policeCameraItemInfo.devName}}</view>
|
||||
<view :class="{'boundalready': policeCameraItemInfo.bindTicket == 1}">
|
||||
{{policeCameraItemInfo.bindTicket == 1 ? '已绑定' : '空闲'}} </view>
|
||||
{{policeCameraItemInfo.bindTicket == 1 ? '已绑定' : '空闲'}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="">
|
||||
<image v-if="policeCameraItemInfo.pic" :src="url_config + 'image/' + policeCameraItemInfo.pic"
|
||||
@ -341,7 +344,7 @@
|
||||
imgFileList: [],
|
||||
workTicketTypeDetail: {},
|
||||
workTicketInfo: {
|
||||
workTicketNumber: "",
|
||||
workTicketNumber: `GZP${Date.now()}`,
|
||||
applicants: [],
|
||||
applicantsName: "",
|
||||
constructionAreas: [],
|
||||
@ -383,11 +386,13 @@
|
||||
workTicketId: "",
|
||||
onEditType: "",
|
||||
policeCameraItemInfo: {},
|
||||
userInfo: {},
|
||||
}
|
||||
},
|
||||
onLoad(opts) {
|
||||
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
|
||||
console.log(1111, opts)
|
||||
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'));
|
||||
this.userInfo = JSON.parse(uni.getStorageSync('userInfo'));
|
||||
console.log(1111, opts, this.projectDetail)
|
||||
if (opts.edit) {
|
||||
this.onEditType = opts.edit
|
||||
this.workTicketId = opts.workTicketId;
|
||||
@ -396,6 +401,7 @@
|
||||
this.workTicketInfo.typeId = opts.id;
|
||||
this.workTicketInfo.applicationTime = this.$dayjs().format("YYYY-MM-DD HH:mm:ss")
|
||||
this.getWorkTicketTypeQueryByIdFn(opts.id);
|
||||
this.getQueryBindRegionsFn()
|
||||
}
|
||||
|
||||
this.getQualityRegionListFn();
|
||||
@ -470,7 +476,7 @@
|
||||
onConfirm() {
|
||||
this.submitShow = false;
|
||||
if (this.policeCameraItemInfo.bindTicket == 1 || this.selectList.includes(this.policeCameraItemInfo
|
||||
.itemId)) {
|
||||
.itemId)) {
|
||||
return this.showToast('该设备已经被绑定', 'warning');
|
||||
}
|
||||
this.selectList.push(this.policeCameraItemInfo.itemId)
|
||||
@ -539,6 +545,9 @@
|
||||
})
|
||||
})
|
||||
},
|
||||
onLastStep() {
|
||||
this.current = 0;
|
||||
},
|
||||
// 下一步
|
||||
onNextStep() {
|
||||
if (this.current == 0) {
|
||||
@ -558,10 +567,10 @@
|
||||
this.current = 1;
|
||||
this.getPoliceCameraItemListFn();
|
||||
} else if (this.current == 1) {
|
||||
if (this.selectList.length == 0) {
|
||||
this.showToast('至少要绑定一台设备', 'warning');
|
||||
return
|
||||
}
|
||||
// if (this.selectList.length == 0) {
|
||||
// this.showToast('至少要绑定一台设备', 'warning');
|
||||
// return
|
||||
// }
|
||||
if (this.onEditType) {
|
||||
this.getworkTicketEditFn();
|
||||
} else {
|
||||
@ -857,6 +866,34 @@
|
||||
success: res => {
|
||||
if (res.code == 200) {
|
||||
that.enterpriseInfoList = res.result;
|
||||
|
||||
const find = res.result.find(item => item.id == that.userInfo.enterpriseId);
|
||||
console.log(find, )
|
||||
if (find && !that.onEditType) {
|
||||
that.onApplicantsClick(find.id, true, find.enterpriseName);
|
||||
that.onSubmitType(2);
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
// 查询项目子账号绑定的区域列表
|
||||
getQueryBindRegionsFn() {
|
||||
let that = this;
|
||||
let data = {
|
||||
// projectSn: this.projectDetail.projectSn,
|
||||
};
|
||||
this.sendRequest({
|
||||
url: 'xmgl/qualityRegion/queryBindRegions',
|
||||
method: 'GET',
|
||||
data: data,
|
||||
success: res => {
|
||||
if (res.code == 200) {
|
||||
console.log(res.result);
|
||||
res.result.forEach(item => {
|
||||
that.onConstructionAreasClick(item.id, true, item.regionName);
|
||||
})
|
||||
that.onSubmitType(1);
|
||||
}
|
||||
}
|
||||
})
|
||||
@ -1047,6 +1084,11 @@
|
||||
color: #171717;
|
||||
}
|
||||
|
||||
image {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
}
|
||||
|
||||
.u-icon {
|
||||
font-size: 40rpx;
|
||||
color: #EA3941;
|
||||
@ -1259,7 +1301,7 @@
|
||||
font-weight: 500;
|
||||
|
||||
>view:first-child {
|
||||
width: 162rpx;
|
||||
width: 164rpx;
|
||||
color: #808080;
|
||||
height: 68rpx;
|
||||
display: flex;
|
||||
@ -1311,8 +1353,11 @@
|
||||
position: relative;
|
||||
|
||||
/deep/ .u-input {
|
||||
height: 160rpx;
|
||||
// height: 160rpx;
|
||||
line-height: 68rpx;
|
||||
min-height: 160rpx !important;
|
||||
height: initial;
|
||||
padding-bottom: 20px !important;
|
||||
}
|
||||
|
||||
.textarea_text {
|
||||
@ -1433,7 +1478,9 @@
|
||||
color: #5181F6;
|
||||
}
|
||||
}
|
||||
|
||||
uni-scroll-view {
|
||||
margin: 26rpx 0;
|
||||
}
|
||||
.content-popup_header {
|
||||
height: 86rpx;
|
||||
box-shadow: 0rpx 8rpx 10rpx -8rpx rgba(81, 129, 246, 0.42);
|
||||
|
||||
@ -163,8 +163,10 @@
|
||||
onLoad() {
|
||||
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
|
||||
this.getWorkTicketTypeListFn();
|
||||
this.getWorkTicketListFn();
|
||||
},
|
||||
onShow() {
|
||||
this.getWorkTicketCountWorkTicketFn();
|
||||
this.getWorkTicketListFn();
|
||||
},
|
||||
mounted() {
|
||||
var that = this
|
||||
@ -376,7 +378,9 @@
|
||||
font-size: 30rpx;
|
||||
color: #1A1A1A;
|
||||
}
|
||||
|
||||
uni-scroll-view {
|
||||
margin: 26rpx 0;
|
||||
}
|
||||
.confrim-btn {
|
||||
padding: 18rpx 26rpx;
|
||||
background-color: #FFFFFF;
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<view class="fixedheader">
|
||||
<headers :showBack="true">
|
||||
<view class="headerName">
|
||||
{{ current == 0 ? '工作票详情' : '查看实时监控'}}
|
||||
{{ current == 0 ? '工作票详情' : '查看历史回放'}}
|
||||
</view>
|
||||
</headers>
|
||||
</view>
|
||||
@ -14,12 +14,15 @@
|
||||
:options="workTicketInfo.itemList"></u-dropdown-item>
|
||||
</u-dropdown>
|
||||
<!-- 'https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8' -->
|
||||
<my-player-m3u8 :src="videoItemInfo.videoInfo.url" :showMask="stateShow" :autoplay="true" />
|
||||
<my-player-m3u8 v-if="videoItemInfo.url" :src="videoItemInfo.url" :showMask="stateShow"
|
||||
:autoplay="true" />
|
||||
<video v-else :src="videoItemInfo.url"></video>
|
||||
</view>
|
||||
|
||||
<u-tabs :bar-height="4" :font-size="28" active-color="#498CEC" inactive-color="#B3B3B3" :bar-width="375"
|
||||
:list="list" :is-scroll="false" :current="current" @change="change"></u-tabs>
|
||||
<scroll-view scroll-y="true" :class="{'content_main_active': workTicketInfo.status == 2}" class="content_main" v-if="current == 0">
|
||||
<scroll-view scroll-y="true" :class="{'content_main_active': workTicketInfo.status == 2}"
|
||||
class="content_main" v-if="current == 0">
|
||||
<view class="header-title">
|
||||
<view>
|
||||
工作票基本信息
|
||||
@ -31,7 +34,7 @@
|
||||
|
||||
</view>
|
||||
<view class="main-box">
|
||||
<view class="box-item">
|
||||
<view class="box-item box-item1">
|
||||
<view>工作票编号:</view>
|
||||
<view>{{workTicketInfo.workTicketNumber}}</view>
|
||||
</view>
|
||||
@ -45,21 +48,21 @@
|
||||
</view>
|
||||
<view class="box-content">
|
||||
<view>作业内容:</view>
|
||||
<view @click="workTicketInfo.expandMoreShow = !workTicketInfo.expandMoreShow">
|
||||
<view v-if="lineHeightFlag1" @click="workTicketInfo.expandMoreShow = !workTicketInfo.expandMoreShow">
|
||||
{{workTicketInfo.expandMoreShow ? '收起': '展开更多'}}
|
||||
</view>
|
||||
</view>
|
||||
<view :class="{'webkit-clamp_2': !workTicketInfo.expandMoreShow}" class="box-content_detail">
|
||||
<view :class="{'webkit-clamp_2': lineHeightFlag1 && !workTicketInfo.expandMoreShow}" id="box-content_detail1" class="box-content_detail">
|
||||
{{workTicketInfo.workContent}}
|
||||
</view>
|
||||
<view class="box-content">
|
||||
<view>安全措施:</view>
|
||||
<view @click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1">
|
||||
<view v-if="lineHeightFlag2" @click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1">
|
||||
{{workTicketInfo.expandMoreShow1 ? '收起': '展开更多'}}
|
||||
</view>
|
||||
</view>
|
||||
<view :class="{'webkit-clamp_2': !workTicketInfo.expandMoreShow1}" class="box-content_detail">
|
||||
{{workTicketInfo.workContent}}
|
||||
<view :class="{'webkit-clamp_2': lineHeightFlag2 && !workTicketInfo.expandMoreShow1}" id="box-content_detail2" class="box-content_detail">
|
||||
{{workTicketInfo.safetyMeasure}}
|
||||
</view>
|
||||
<view class="box-item">
|
||||
<view>施工场站:</view>
|
||||
@ -118,7 +121,8 @@
|
||||
</view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
<scroll-view scroll-y="true" :class="{'content_main_active': workTicketInfo.status == 2}" class="content_main1" v-else-if="current == 1">
|
||||
<scroll-view scroll-y="true" :class="{'content_main_active': workTicketInfo.status == 2}"
|
||||
class="content_main1" v-else-if="current == 1">
|
||||
<view class="header-title">
|
||||
历史作业记录
|
||||
</view>
|
||||
@ -173,7 +177,7 @@
|
||||
</view>
|
||||
<view>
|
||||
<u-icon name="info-circle"></u-icon>
|
||||
<view>点击暂停作业后,则会下发指令到作业监控设备,关闭设备录像。</view>
|
||||
<view>点击暂停作业后,需要到执法记录仪上手动结束工单。结束后录像将会自动上传到平台,可在历史回放中查看。</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="content_main-box1" v-else-if="stateType == 4">
|
||||
@ -182,7 +186,7 @@
|
||||
</view>
|
||||
<view>
|
||||
<u-icon name="info-circle"></u-icon>
|
||||
<view>点击结束作业后,则会下发指令到作业监控设备,关闭设备录像并释放此设备</view>
|
||||
<view>点击结束作业后,需要到执法记录仪上手动结束工单,结束后录像将会自动上传到平台,可在历史回放中查看</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@ -231,10 +235,10 @@
|
||||
stateType: "",
|
||||
itemId: "",
|
||||
videoItemInfo: {
|
||||
videoInfo: {
|
||||
url: "https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8",
|
||||
}
|
||||
url: "https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8",
|
||||
},
|
||||
lineHeightFlag1: false,
|
||||
lineHeightFlag2: false,
|
||||
}
|
||||
},
|
||||
onLoad(opts) {
|
||||
@ -253,7 +257,31 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
onReady() {
|
||||
setTimeout(() => {
|
||||
this.getLineCount();
|
||||
}, 500)
|
||||
},
|
||||
methods: {
|
||||
getLineCount() {
|
||||
const that = this;
|
||||
uni.createSelectorQuery().in(this).select('#box-content_detail1').boundingClientRect(rect => {
|
||||
if (rect) {
|
||||
let lineHeight = parseInt(rect.height / uni.upx2px(20));
|
||||
if (lineHeight > 2) {
|
||||
that.lineHeightFlag1 = true;
|
||||
}
|
||||
}
|
||||
}).exec();
|
||||
uni.createSelectorQuery().in(this).select('#box-content_detail2').boundingClientRect(rect => {
|
||||
if (rect) {
|
||||
let lineHeight = parseInt(rect.height / uni.upx2px(20));
|
||||
if (lineHeight > 2) {
|
||||
that.lineHeightFlag2 = true;
|
||||
}
|
||||
}
|
||||
}).exec();
|
||||
},
|
||||
onStateShow(type) {
|
||||
this.stateType = type;
|
||||
this.stateShow = true;
|
||||
@ -375,7 +403,15 @@
|
||||
data: data,
|
||||
success: res => {
|
||||
if (res.code == 200) {
|
||||
that.videoItemInfo = res.result;
|
||||
const videoInfo = res.result.videoInfo;
|
||||
that.videoItemInfo = {
|
||||
...videoInfo,
|
||||
url: videoInfo.url ? videoInfo.url : '',
|
||||
};
|
||||
if (!that.videoItemInfo.url) {
|
||||
that.showToast("该设备暂未绑定监控", "warning")
|
||||
}
|
||||
console.log(1111, that.videoItemInfo.url)
|
||||
}
|
||||
}
|
||||
})
|
||||
@ -439,7 +475,7 @@
|
||||
.itemId);
|
||||
return find ? find.label : '--'
|
||||
},
|
||||
itemListDevNameUp(){
|
||||
itemListDevNameUp() {
|
||||
return this.workTicketInfo.itemList ? this.workTicketInfo.itemList.map(item => item.devName).join('、') : ""
|
||||
},
|
||||
statusUp() {
|
||||
@ -482,6 +518,10 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
/deep/ .u-tab-bar {
|
||||
height: 5rpx !important;
|
||||
}
|
||||
|
||||
/deep/ .m3u8-player {
|
||||
height: 420rpx;
|
||||
}
|
||||
@ -600,17 +640,22 @@
|
||||
background-color: white;
|
||||
// overflow: hidden;
|
||||
// min-height: calc(100vh);
|
||||
|
||||
|
||||
.content_main_active {
|
||||
height: calc(100vh - 88rpx - 500rpx - 80rpx - 100rpx - 26rpx) !important;
|
||||
height: calc(100vh - 88rpx - 500rpx - 80rpx - 100rpx - 26rpx) !important;
|
||||
}
|
||||
|
||||
.content_header {
|
||||
|
||||
// background-color: white;
|
||||
video {
|
||||
width: 100%;
|
||||
height: 420rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.content_main1 {
|
||||
padding-top: 26rpx;
|
||||
padding-top: 20rpx;
|
||||
padding-bottom: 100rpx;
|
||||
// background-color: white;
|
||||
// min-height: calc(100vh - 88rpx - 40rpx - 40rpx);
|
||||
@ -687,7 +732,7 @@
|
||||
}
|
||||
|
||||
.content_main {
|
||||
padding-top: 26rpx;
|
||||
padding-top: 20rpx;
|
||||
padding-bottom: 100rpx;
|
||||
background-color: white;
|
||||
|
||||
@ -714,15 +759,14 @@
|
||||
justify-content: space-between;
|
||||
margin-top: 26rpx;
|
||||
font-size: 28rpx;
|
||||
|
||||
>view:first-child {
|
||||
color: #808080;
|
||||
}
|
||||
|
||||
>view:last-child {
|
||||
font-size: 24rpx;
|
||||
color: #4D8EEC;
|
||||
}
|
||||
>view:first-child {
|
||||
font-size: 28rpx;
|
||||
color: #808080;
|
||||
}
|
||||
}
|
||||
|
||||
.box-img {
|
||||
@ -787,7 +831,7 @@
|
||||
.imgBox_wrap {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-left: 192rpx;
|
||||
margin-left: calc(192rpx + 28rpx);
|
||||
flex: 1;
|
||||
|
||||
>view:not(:last-child) {
|
||||
@ -839,6 +883,12 @@
|
||||
}
|
||||
}
|
||||
|
||||
.box-item1>view:last-child {
|
||||
font-weight: 800;
|
||||
font-size: 30rpx;
|
||||
color: #171717;
|
||||
}
|
||||
|
||||
/deep/ .u-input {
|
||||
width: 550rpx;
|
||||
height: 68rpx;
|
||||
@ -953,7 +1003,7 @@
|
||||
}
|
||||
|
||||
>view:not(:first-child) {
|
||||
margin-left: 20rpx;
|
||||
margin-left: 12rpx;
|
||||
}
|
||||
|
||||
.btn-error {
|
||||
|
||||
@ -10,9 +10,9 @@
|
||||
<view class="search-box" :style="{paddingTop: mobileTopHeight + 44 + 'px'}">
|
||||
<view class="uni-form-item">
|
||||
<u-search class="uni-input" placeholder="搜索工作票编号名称" :show-action="false" @change="loadData"
|
||||
v-model="policeCameraInfo.workTicketNumber"></u-search>
|
||||
v-model="policeCameraInfo.numberOrContent"></u-search>
|
||||
</view>
|
||||
<u-dropdown @open="open" @close="close" :style="dropDownShow ? '' :'overflow:hidden'" :overlay="true"
|
||||
<u-dropdown ref="uDropdown" @open="open" @close="close" :style="dropDownShow ? '' :'overflow:hidden'" :overlay="true"
|
||||
active-color="#3190F3">
|
||||
<u-dropdown-item
|
||||
:title="policeCameraInfo.typeId == '' ? '类别' : recursionDataListUp(workTicketTypeList, policeCameraInfo.typeId,'typeName')"
|
||||
@ -36,10 +36,19 @@
|
||||
</view>
|
||||
</u-dropdown-item>
|
||||
<u-dropdown-item @change="onMenuChage" v-model="policeCameraInfo.status" :options="inserviceTypeList"
|
||||
:title="policeCameraInfo.status == '' ? '状态' : dataListUp(inserviceTypeList, policeCameraInfo.status)"></u-dropdown-item>
|
||||
:title="policeCameraInfo.status == '' ? '状态' : dataListUp(inserviceTypeList, policeCameraInfo.status)">
|
||||
<view class="slot-content">
|
||||
<scroll-view scroll-y="true" class="scroll-view">
|
||||
<TreeView :multiple="false" :data="inserviceTypeList" :children-key="'children'"
|
||||
:label-key="'label'" :id-key="'value'" v-model="statusIds"
|
||||
@node-click="onNodeClick(3)" />
|
||||
</scroll-view>
|
||||
</view>
|
||||
</u-dropdown-item>
|
||||
</u-dropdown>
|
||||
<view @click="constructionTimeShow = true" class="calendar_box">
|
||||
<u-icon name="calendar" color="#3190F3" size="32"></u-icon>
|
||||
<view :class="{'calendar_active': constructionTimeShow}" class="calendar"></view>
|
||||
<!-- <u-icon name="calendar" color="#3190F3" size="32"></u-icon> -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="content" :style="{paddingTop: mobileTopHeight + 130 + 'px'}">
|
||||
@ -140,7 +149,7 @@
|
||||
</view>
|
||||
<view>
|
||||
<u-icon name="info-circle"></u-icon>
|
||||
<view>点击暂停作业后,则会下发指令到作业监控设备,关闭设备录像。</view>
|
||||
<view>点击暂停作业后,需要到执法记录仪上手动结束工单,结束后录像将会自动上传到平台,可在历史回放中查看</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="content_main-box1" v-else-if="stateType == 4">
|
||||
@ -149,7 +158,7 @@
|
||||
</view>
|
||||
<view>
|
||||
<u-icon name="info-circle"></u-icon>
|
||||
<view>点击结束作业后,则会下发指令到作业监控设备,关闭设备录像并释放此设备</view>
|
||||
<view>点击结束作业后,需要到执法记录仪上手动结束工单,结束后录像将会自动上传到平台,可在历史回放中查看</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@ -197,10 +206,11 @@
|
||||
typeId: "",
|
||||
constructionAreas: "",
|
||||
status: "",
|
||||
workTicketNumber: "",
|
||||
numberOrContent: "",
|
||||
},
|
||||
typeIds: [''],
|
||||
checkedIds: [''],
|
||||
statusIds: [''],
|
||||
selectList: [],
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
@ -285,7 +295,12 @@
|
||||
this.onMenuClick({
|
||||
value: this.checkedIds.join(',')
|
||||
}, 2)
|
||||
} else if (type == 3) {
|
||||
this.onMenuClick({
|
||||
value: this.statusIds.join(',')
|
||||
}, 3)
|
||||
}
|
||||
this.$refs.uDropdown.close();
|
||||
},
|
||||
// 全选
|
||||
checkedAll(e) {
|
||||
@ -367,6 +382,8 @@
|
||||
this.policeCameraInfo.typeId = row.value;
|
||||
} else if (type == 2) {
|
||||
this.policeCameraInfo.constructionAreas = row.value;
|
||||
} else if (type == 3) {
|
||||
this.policeCameraInfo.status = row.value;
|
||||
}
|
||||
this.loadData();
|
||||
},
|
||||
@ -584,6 +601,10 @@
|
||||
font-size: 30rpx;
|
||||
color: #1A1A1A;
|
||||
}
|
||||
|
||||
uni-scroll-view {
|
||||
margin: 26rpx 0;
|
||||
}
|
||||
|
||||
.confrim-btn {
|
||||
padding: 18rpx 26rpx;
|
||||
@ -816,7 +837,7 @@
|
||||
}
|
||||
|
||||
>view:last-child {
|
||||
margin-left: 20rpx;
|
||||
margin-left: 12rpx;
|
||||
background-color: #5181F6;
|
||||
border-radius: 6rpx;
|
||||
color: #FFFFFF;
|
||||
@ -893,6 +914,16 @@
|
||||
position: absolute;
|
||||
right: 28rpx;
|
||||
bottom: 20rpx;
|
||||
.calendar {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
background-image: url('@/static/workTicketManage/calendar.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
.calendar_active {
|
||||
background-image: url('@/static/workTicketManage/calendar-active.png');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BIN
static/workTicketManage/calendar-active.png
Normal file
BIN
static/workTicketManage/calendar-active.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 894 B |
BIN
static/workTicketManage/calendar.png
Normal file
BIN
static/workTicketManage/calendar.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 925 B |
Loading…
x
Reference in New Issue
Block a user