You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
437 lines
12 KiB
437 lines
12 KiB
|
4 months ago
|
<template>
|
||
|
|
<view class="form_warp">
|
||
|
|
<!-- 恶劣天气报送 -->
|
||
|
|
<view class="form_intro">
|
||
|
|
<view>如有填报问题,请咨询公共服务中心</view>
|
||
|
|
<view>中心值班电话:<text @click="call(mobile)" class="tel">{{mobile}}</text></view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item_box">
|
||
|
|
<view class="form_item_title">基本信息</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">填报单位:</view>
|
||
|
|
<view class="form_item_input picker">
|
||
|
|
<text>{{form.reportUnit}}</text>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">填报日期:</view>
|
||
|
|
<view class="form_item_input picker">
|
||
|
|
<!-- :end="currentDate" -->
|
||
|
|
<picker v-if="pageType == 'add'" mode="date" :value="form.reportDate" @change="bindDateChange" >
|
||
|
|
<text class="picker_select"
|
||
|
|
:style="form.reportDate?'color:#333;':''">{{form.reportDate?form.reportDate:'请选择时段'}}</text>
|
||
|
|
<uni-icons type="right" size="16" color="#D4D4D4"></uni-icons>
|
||
|
|
</picker>
|
||
|
|
<text v-else>{{form.reportDate?form.reportDate:''}}</text>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item_box">
|
||
|
|
<view class="form_item_title">应急资源调动</view>
|
||
|
|
<view class="form_item_subtitle">相关资源</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">应对队伍(支):</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.answerTeam"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">应对人员(人):</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.answerPerson"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">机械设备(台/部)</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.answerDevice"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">抽排水设备(台部)</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.drainageDevice"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item_line"></view>
|
||
|
|
<view class="form_item_subtitle">应急运力</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">指挥或巡查车(辆)"</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.patrolVehicles"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">客运车辆(辆)"</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.passengerVehicles"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">货运车辆(辆)"</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.freightVeicles"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item_box">
|
||
|
|
<view class="form_item_title">预警信息</view>
|
||
|
|
<view class="form_item">
|
||
|
|
<view class="form_item_label">预警信息发布(条次):</view>
|
||
|
|
<view class="form_item_input form_input">
|
||
|
|
<uni-easyinput type="number"
|
||
|
|
v-model="form.warningRelease"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入" maxlength="20">
|
||
|
|
</uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item_box">
|
||
|
|
<view class="form_item_title">应对措施</view>
|
||
|
|
<view class="form_item_remark">
|
||
|
|
<view class="form_item_label">防范准备措施、重点领域巡视检和管控:</view>
|
||
|
|
<view class="form_item_input">
|
||
|
|
<uni-easyinput v-model="form.solutions"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入详细信息" type="textarea" maxlength="200"
|
||
|
|
autoHeight></uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="form_item_box">
|
||
|
|
<view class="form_item_title">处置情况</view>
|
||
|
|
<view class="form_item_remark">
|
||
|
|
<view class="form_item_label">受影响情况、受损情况、处置情况和其他情况:</view>
|
||
|
|
<view class="form_item_input">
|
||
|
|
<uni-easyinput v-model="form.disposalSituation"
|
||
|
|
placeholderStyle="color: #D4D4D4;font-size:28rpx;" placeholder="请输入详细信息" type="textarea" maxlength="200"
|
||
|
|
autoHeight></uni-easyinput>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="foot_btn">
|
||
|
|
<!-- <view class="act_btn" @click="doCancel">取消</view> -->
|
||
|
|
<view class="act_btn blue" @click="doSubmit">{{btnText}}</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</template>
|
||
|
|
|
||
|
|
<script>
|
||
|
|
import {
|
||
|
|
calcMom,
|
||
|
|
calcYoy,
|
||
|
|
checkNotEmpty,
|
||
|
|
getDateStr,
|
||
|
|
lastYearDate
|
||
|
|
} from '../../../common/util'
|
||
|
|
export default{
|
||
|
|
data(){
|
||
|
|
return{
|
||
|
|
currentDate:getDateStr(new Date(), 0),
|
||
|
|
mobile: getApp().globalData.mobile,
|
||
|
|
userInfo: {},
|
||
|
|
form:{
|
||
|
|
reportDate:'',
|
||
|
|
reportUnit:'',
|
||
|
|
answerTeam:null,
|
||
|
|
answerPerson:null,
|
||
|
|
answerDevice:null,
|
||
|
|
drainageDevice:null,
|
||
|
|
patrolVehicles:null,
|
||
|
|
passengerVehicles:null,
|
||
|
|
freightVeicles:null,
|
||
|
|
warningRelease:null,
|
||
|
|
disposalSituation:'',
|
||
|
|
solutions:''
|
||
|
|
},
|
||
|
|
deptInfo:{},
|
||
|
|
pageType: '',
|
||
|
|
btnText: '保存',
|
||
|
|
isChangeTime:false
|
||
|
|
}
|
||
|
|
},
|
||
|
|
onLoad(options) {
|
||
|
|
this.userInfo = uni.getStorageSync('userInfo');
|
||
|
|
this.deptInfo = uni.getStorageSync('deptName');
|
||
|
|
console.log('userInfo-----------------',this.userInfo)
|
||
|
|
console.log('deptInfo-----------------',this.deptInfo)
|
||
|
|
if (options.type == 'add') {
|
||
|
|
this.pageType = 'add';
|
||
|
|
let now = new Date();
|
||
|
|
this.form.reportDate = getDateStr(now, -1); //默认前一天
|
||
|
|
this.form.reportUnit = this.userInfo.deptName
|
||
|
|
this.getInfoDetail(this.form.reportDate);
|
||
|
|
} else if (options.item) {
|
||
|
|
this.btnText = '修改并保存';
|
||
|
|
let obj = JSON.parse(options.item);
|
||
|
|
console.log('ong-------------------',obj)
|
||
|
|
this.getInfoDetail(obj.reportDate,obj.reportUnit);
|
||
|
|
}
|
||
|
|
},
|
||
|
|
methods:{
|
||
|
|
//选择统计日期
|
||
|
|
bindDateChange(e) {
|
||
|
|
this.isChangeTime = true
|
||
|
|
this.form.reportDate = e.detail.value;
|
||
|
|
this.getInfoDetail(this.form.reportDate)
|
||
|
|
},
|
||
|
|
// 获取详情
|
||
|
|
getInfoDetail(date,unit){
|
||
|
|
this.$request(getApp().globalData.baseUrl + '/api/biz/disasterPrevention/getDetail',{reportDate:date,reportUnit:unit ? unit : this.userInfo.deptName}).then(res =>{
|
||
|
|
console.log('res-------------------',res)
|
||
|
|
this.form = res.data
|
||
|
|
// if(id){
|
||
|
|
// this.form = res.data.list.find(item => item.id == id)
|
||
|
|
// }else{
|
||
|
|
// this.form = res.data.list.length != 0 ? res.data.list[0] : {
|
||
|
|
// reportDate:this.form.reportDate,
|
||
|
|
// reportUnit:this.userInfo.deptName,
|
||
|
|
// answerTeam:null,
|
||
|
|
// answerPerson:null,
|
||
|
|
// answerDevice:null,
|
||
|
|
// drainageDevice:null,
|
||
|
|
// patrolVehicles:null,
|
||
|
|
// passengerVehicles:null,
|
||
|
|
// freightVeicles:null,
|
||
|
|
// warningRelease:null,
|
||
|
|
// disposalSituation:'',
|
||
|
|
// solutions:''
|
||
|
|
// }
|
||
|
|
// }
|
||
|
|
})
|
||
|
|
},
|
||
|
|
|
||
|
|
doSubmit(){
|
||
|
|
uni.showModal({
|
||
|
|
title: "提示",
|
||
|
|
content: !checkNotEmpty(this.form.id) ? "您确认提交该条报送数据?" : "您确认将该条数据进行修改?",
|
||
|
|
success: (res) => {
|
||
|
|
if (res.confirm) {
|
||
|
|
uni.showLoading({
|
||
|
|
title: '提交中...',
|
||
|
|
mask: true
|
||
|
|
})
|
||
|
|
console.log('query--------------------',this.form)
|
||
|
|
this.$request(getApp().globalData.baseUrl + '/api/biz/disasterPrevention/saveOrUpdate',this.form,'POST').then(res =>{
|
||
|
|
uni.hideLoading()
|
||
|
|
if (res.code == 200) {
|
||
|
|
uni.showToast({
|
||
|
|
title: "报送提交成功",
|
||
|
|
icon: "none",
|
||
|
|
success: () => {
|
||
|
|
if (this.form.id == undefined || this.isChangeTime) {
|
||
|
|
setTimeout(() => {
|
||
|
|
uni.redirectTo({
|
||
|
|
url: "/pages/safetySupervisionDepart/floodPrevention/list"
|
||
|
|
})
|
||
|
|
}, 300)
|
||
|
|
} else {
|
||
|
|
setTimeout(() => {
|
||
|
|
uni.navigateBack()
|
||
|
|
}, 300)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
|
||
|
|
},
|
||
|
|
}
|
||
|
|
}
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<style lang="scss" scoped>
|
||
|
|
.form_warp {
|
||
|
|
padding: 30rpx 30rpx 195rpx;
|
||
|
|
|
||
|
|
.form_intro {
|
||
|
|
color: #666;
|
||
|
|
font-size: 26rpx;
|
||
|
|
font-family: PingFang SC-Bold, PingFang SC;
|
||
|
|
line-height: 48rpx;
|
||
|
|
text-align: center;
|
||
|
|
margin-bottom: 20rpx;
|
||
|
|
|
||
|
|
.tel {
|
||
|
|
color: #2D8CF0;
|
||
|
|
font-weight: bold;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
.form_item_box {
|
||
|
|
padding: 30rpx 20rpx 30rpx 30rpx;
|
||
|
|
background-color: #fff;
|
||
|
|
border-radius: 30rpx;
|
||
|
|
margin-bottom: 40rpx;
|
||
|
|
|
||
|
|
.form_item_title {
|
||
|
|
color: #333;
|
||
|
|
line-height: 42rpx;
|
||
|
|
font-size: 30rpx;
|
||
|
|
font-family: PingFang SC-Bold, PingFang SC;
|
||
|
|
font-weight: bold;
|
||
|
|
margin-bottom: 30rpx;
|
||
|
|
}
|
||
|
|
|
||
|
|
.form_item_subtitle{
|
||
|
|
color: #333;
|
||
|
|
line-height: 42rpx;
|
||
|
|
font-size: 26rpx;
|
||
|
|
font-family: PingFang SC-Bold, PingFang SC;
|
||
|
|
font-weight: bold;
|
||
|
|
margin-bottom: 30rpx;
|
||
|
|
}
|
||
|
|
|
||
|
|
.form_item_remark {
|
||
|
|
margin-bottom: 30rpx;
|
||
|
|
|
||
|
|
.form_item_label {
|
||
|
|
// color: #333333;
|
||
|
|
// line-height: 42rpx;
|
||
|
|
// font-size: 30rpx;
|
||
|
|
// font-family: PingFang SC-Bold, PingFang SC;
|
||
|
|
// // font-weight: bold;
|
||
|
|
margin-bottom: 30rpx;
|
||
|
|
color: #666666;
|
||
|
|
font-size: 26rpx;
|
||
|
|
}
|
||
|
|
/deep/ .is-input-border{
|
||
|
|
border-radius: 20rpx !important;
|
||
|
|
border: 1px solid #c1c1c1 !important;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
.form_item {
|
||
|
|
display: flex;
|
||
|
|
align-items: center;
|
||
|
|
justify-content: space-between;
|
||
|
|
line-height: 37rpx;
|
||
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
||
|
|
font-weight: 400;
|
||
|
|
margin-bottom: 30rpx;
|
||
|
|
|
||
|
|
.form_item_label {
|
||
|
|
width: 260rpx;
|
||
|
|
color: #666666;
|
||
|
|
font-size: 26rpx;
|
||
|
|
word-break: break-all;
|
||
|
|
}
|
||
|
|
|
||
|
|
.form_item_input {
|
||
|
|
color: #333;
|
||
|
|
text-align: right;
|
||
|
|
word-break: break-all;
|
||
|
|
|
||
|
|
&.picker {
|
||
|
|
flex: 1;
|
||
|
|
// display: flex;
|
||
|
|
// justify-content: space-between;
|
||
|
|
|
||
|
|
// /deep/ picker {
|
||
|
|
// flex: 1;
|
||
|
|
// }
|
||
|
|
|
||
|
|
.picker_select {
|
||
|
|
color: #D4D4D4;
|
||
|
|
font-size: 28rpx;
|
||
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
||
|
|
font-weight: 400;
|
||
|
|
text-align: right;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
//纯展示
|
||
|
|
&.text {
|
||
|
|
color: #333333;
|
||
|
|
line-height: 40rpx;
|
||
|
|
font-size: 28rpx;
|
||
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
||
|
|
font-weight: 400;
|
||
|
|
}
|
||
|
|
|
||
|
|
//输入框
|
||
|
|
&.form_input {
|
||
|
|
/deep/ .is-input-border {
|
||
|
|
border: 0 !important;
|
||
|
|
|
||
|
|
.uni-easyinput__content-input {
|
||
|
|
height: 35rpx !important;
|
||
|
|
text-align: right;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
/deep/ .uni-date-x--border {
|
||
|
|
border: 0 !important;
|
||
|
|
|
||
|
|
.uni-date__x-input {
|
||
|
|
// height: 35rpx !important;
|
||
|
|
text-align: right;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
.form_item_line{
|
||
|
|
width: 100%;
|
||
|
|
height: 1px;
|
||
|
|
background:#E8E8E8;
|
||
|
|
margin: 40rpx 0;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
.foot_btn {
|
||
|
|
position: fixed;
|
||
|
|
left: 0;
|
||
|
|
right: 0;
|
||
|
|
bottom: 0;
|
||
|
|
display: flex;
|
||
|
|
justify-content: space-between;
|
||
|
|
padding: 40rpx 30rpx;
|
||
|
|
background-color: #f5f5f5;
|
||
|
|
z-index: 11;
|
||
|
|
|
||
|
|
.act_btn {
|
||
|
|
width: 690rpx;
|
||
|
|
height: 90rpx;
|
||
|
|
color: #666666;
|
||
|
|
font-size: 28rpx;
|
||
|
|
line-height: 90rpx;
|
||
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
||
|
|
font-weight: 400;
|
||
|
|
text-align: center;
|
||
|
|
background: #F6F6F6;
|
||
|
|
border-radius: 100rpx;
|
||
|
|
border: 1rpx solid #C1C1C1;
|
||
|
|
|
||
|
|
&.blue {
|
||
|
|
color: #fff;
|
||
|
|
background: #2D8CF0;
|
||
|
|
border-color: #2D8CF0;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
</style>
|