<template>
|
<view class="page-box">
|
<view class="content-box">
|
<view class="form">
|
<view class="form-item">
|
<view class="form-label require">
|
执法主题
|
</view>
|
<input type="text" placeholder="请输入" v-model="form.enforceReason"/>
|
</view>
|
<view class="form-item">
|
<view class="form-label require">
|
执法对象
|
</view>
|
<view class="input">
|
<input type="text" placeholder="请输入" v-model="form.companyName"/>
|
<!-- <u-icon name="arrow-right"></u-icon> -->
|
<u-text text='搜索' type="primary"></u-text>
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="form-label require">
|
执法时间
|
</view>
|
<view class="input">
|
<input type="text" placeholder="请输入"/>
|
<u-icon name="arrow-right"></u-icon>
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="form-label require">
|
执法类型
|
</view>
|
<view class="input">
|
<input type="text" placeholder="请输入"/>
|
<u-icon name="arrow-right"></u-icon>
|
</view>
|
</view>
|
<view class="form-item last">
|
<view class="form-label require">
|
执法内容
|
</view>
|
<view class="back">
|
<u--textarea :height="120" v-model="form.regionReason" placeholder="请输入" count maxlength="500"></u--textarea>
|
</view>
|
</view>
|
</view>
|
</view>
|
<view class="content-box">
|
<view class="form ">
|
<view class="form-item">
|
<view class="form-label">
|
执法人员
|
</view>
|
<input type="text" placeholder="请输入"/>
|
</view>
|
<view class="form-item">
|
<view class="form-label">
|
执法部门
|
</view>
|
<input type="text" placeholder="请输入"/>
|
</view>
|
<view class="form-item">
|
<view class="form-label require">
|
随行人员数量
|
</view>
|
<input type="text" placeholder="请输入"/>
|
</view>
|
<view class="form-item down-2">
|
<view class="form-label">
|
是否通知企业
|
</view>
|
<u-switch v-model="form.isNoticeCompany" :activeValue="1" :inactiveValue="0"></u-switch>
|
</view>
|
|
</view>
|
</view>
|
<view class="down-options">
|
<view class="button record" >申请记录</view>
|
<view class="button submit" @click="submitApply">提交申请</view>
|
</view>
|
<!-- <u-form label-position="top" label-width="120px">
|
<u-form-item label="执法主题">
|
<u-input placeholder="请输入" v-model="form.enforceReason"></u-input>
|
</u-form-item>
|
<u-form-item label="执法对象">
|
<u-input placeholder="请输入" v-model="form.companyName">
|
<template slot="suffix">
|
<text @click="search">搜索</text>
|
</template>
|
</u-input>
|
</u-form-item>
|
<u-form-item label="执法时间" @click="showTimeFun">
|
<u-input placeholder="请输入" v-model="form.applyTime" readonly></u-input>
|
</u-form-item>
|
<u-form-item label="执法类型" @click="showType = true">
|
<u-input placeholder="请输入" v-model="form.enforceTypeName" readonly></u-input>
|
</u-form-item>
|
<u-form-item label="执法内容">
|
<u-input placeholder="请输入" v-model="form.regionReason"></u-input>
|
</u-form-item>
|
<u-form-item label="执法人员">
|
<u-input placeholder="请输入" v-model="form.applyName"></u-input>
|
</u-form-item>
|
<u-form-item label="执法部门">
|
<u-input placeholder="请输入" v-model="form.applyDeptName"></u-input>
|
</u-form-item>
|
<u-form-item label="随行人员数量">
|
<u-input placeholder="请输入" v-model="form.userNum"></u-input>
|
</u-form-item>
|
<u-form-item label="是否通知企业">
|
<u-switch v-model="form.isNoticeCompany" :activeValue="1" :inactiveValue="0"></u-switch>
|
</u-form-item>
|
</u-form> -->
|
<!-- <u-button @click="submitApply">提交申请</u-button>
|
<u-button @click="applyRecord">申请记录</u-button> -->
|
<u-picker :show="show" @close="show = false" @confirm="confirmSearch" @cancel="show = false" :columns="columns" keyName="companyName"></u-picker>
|
<u-datetime-picker
|
:show="showTime"
|
@close="showTime = false"
|
@cancel="showTime = false"
|
v-model="currentTime"
|
@confirm="confirmTime"
|
:minDate="minDate"
|
mode="dateTime"
|
ref="datetimePicker"
|
class="hide-clear-button"
|
></u-datetime-picker>
|
<u-picker :show="showType" @close="showType = false" @confirm="confirmType" @cancel="showType = false" :columns="columnsType" keyName="dictLabel"></u-picker>
|
|
</view>
|
</template>
|
|
<script>
|
import { orderAdd, companyList } from '@/api/policy.js'
|
import { getInfo } from '@/api/auth.js'
|
import { getDicts } from '@/api/data'
|
export default {
|
data() {
|
return {
|
currentTime: "",
|
form: {
|
executeTime: "",
|
applyName: '',
|
applyDeptName: '',
|
enforceType: 1,
|
isNoticeCompany: 0,
|
regionReason: ''
|
},
|
show: false,
|
columns: [],
|
showTime: false,
|
columnsType: [],
|
showType: false,
|
minDate: ''
|
}
|
},
|
onLoad() {
|
this.currentTime = this.$u.timeFormat(new Date(), 'yyyy-mm-dd hh:MM:ss')
|
this.getInfo()
|
this.getDicts()
|
},
|
methods: {
|
getDicts() {
|
getDicts('enforce_type').then(val =>{
|
console.log(val.data.data)
|
this.columnsType = [val.data.data]
|
})
|
},
|
getInfo() {
|
getInfo().then(val => {
|
const value = val.data.data
|
this.form.applyName = value.nickName
|
this.form.applyId = value.userId
|
this.form.applyDeptName = value.dept.deptName
|
this.form.applyDeptId = value.dept.deptId
|
this.form.applyPhone = value.phonenumber
|
})
|
},
|
timeFilter(mode, options) {
|
let d = new Date()
|
// console.log(d.getFullYear());
|
if(mode === 'year'){
|
return options.filter((option)=>option>= d.getFullYear())
|
}
|
if(mode === 'month'){
|
return options.filter((option)=>option>= d.getMonth()+1)
|
}
|
if (mode === 'minute') {
|
return options.filter((option) => option === '00' || option === '30');
|
}
|
return options;
|
},
|
submitApply(){
|
orderAdd(this.form).then(val => {
|
if(val.data.code == 200) {
|
uni.navigateBack()
|
}
|
})
|
},
|
applyRecord() {
|
|
},
|
search() {
|
companyList({companyName: this.form.companyName}).then(val => {
|
if(val.data.code == 200){
|
if(!val.data.rows.length || !val.data.rows){
|
uni.showToast({
|
title: '没有符合的数据,请检查输入的执法对象',
|
icon: 'none',
|
duration: 3000
|
})
|
} else {
|
this.columns = [val.data.rows]
|
this.show = true
|
}
|
|
}
|
})
|
},
|
confirmSearch(e){
|
const value = this.columns[0].find(item => item.companyName == e.value[0].companyName)
|
this.form.companyName = e.value[0].companyName
|
this.form.companyCode = value.companyCode
|
this.form.companyId = value.companyId
|
this.form.companyPhone = value.companyPhone
|
this.form.companyUser = value.companyUser
|
this.form.companyAddress = value.companyAddress
|
this.show = false
|
},
|
confirmTime(e) {
|
// console.log(e.value)
|
this.form.applyTime = e.value
|
this.showTime = false
|
},
|
showTimeFun() {
|
this.showTime = true
|
|
},
|
sheet(){
|
|
},
|
confirmType(e){
|
this.form.enforceType = e.value[0].dictCode
|
this.form.enforceTypeName = e.value[0].dictLabel
|
this.showType = false
|
}
|
}
|
}
|
</script>
|
<style>
|
page{
|
background-color: #F4F4F4;
|
}
|
</style>
|
<style scoped lang="scss">
|
.page-box{
|
padding-bottom: 140rpx;
|
.content-box{
|
margin:20rpx 32rpx;
|
background-color: white;
|
padding: 24rpx;
|
border-radius: 10rpx;
|
}
|
.form{
|
.form-item{
|
display: flex;
|
justify-content: flex-start;
|
align-items: center;
|
border-bottom: 2rpx solid #F1F1F1;
|
padding-bottom: 26rpx;
|
margin-bottom: 24rpx;
|
.form-label{
|
font-size: 30rpx;
|
color: #4A4E60;
|
width: 40%;
|
}
|
.input{
|
width: 60%;
|
display: flex;
|
justify-content: space-between;
|
align-items: center;
|
}
|
.require{
|
&::after{
|
content: '*';
|
color: #FF7500;
|
}
|
}
|
|
}
|
.down-2{
|
margin-bottom: 0;
|
padding-bottom: 0;
|
border: none;
|
}
|
.last{
|
margin-bottom: 0;
|
padding-bottom: 0;
|
border-bottom: none;
|
display: block;
|
.form-label{
|
margin-bottom: 16rpx;
|
|
}
|
.back{
|
/deep/ .u-textarea{
|
background-color: #F4F4F4;
|
border: none;
|
.u-textarea__count{
|
background: none !important;
|
}
|
}
|
}
|
}
|
|
}
|
}
|
.down-options{
|
background-color: white;
|
position: fixed;
|
bottom: 0;
|
padding-bottom: 40rpx;
|
width: 100%;
|
padding: 22rpx 30rpx 40rpx;
|
z-index: 1000;
|
display: flex;
|
justify-content: space-between;
|
align-items: center;
|
box-sizing: border-box;
|
.record{
|
box-sizing: border-box;
|
border-radius: 20rpx;
|
border: 2rpx solid #ABD2FF;
|
background: #F0F8FF;
|
color: #1171E0;
|
font-size: 32rpx;
|
padding: 20rpx 30rpx;
|
width: 30%;
|
text-align: center;
|
}
|
.submit{
|
border-radius: 20rpx;
|
border: 2rpx solid #1171E0;
|
background-color: #1171E0;
|
color: white;
|
width: 65%;
|
box-sizing: border-box;
|
padding: 20rpx 30rpx;
|
text-align: center;
|
}
|
}
|
|
</style>
|