|
|
|
@ -31,7 +31,7 @@ |
|
|
|
placeholder="必填 请选择" |
|
|
|
readonly |
|
|
|
/> |
|
|
|
<!-- <van-popup v-model:show="data.showPicker" position="bottom"> |
|
|
|
<!-- <van-popup v-model:show="data.showPicker" position="bottom"> |
|
|
|
<van-picker |
|
|
|
v-model="data.selectTypeValue" |
|
|
|
:columns="data.columns" |
|
|
|
@ -39,7 +39,7 @@ |
|
|
|
@confirm="onConfirm" |
|
|
|
/> |
|
|
|
</van-popup>--> |
|
|
|
<van-divider class="divdsty" /> |
|
|
|
<van-divider class="divdsty"/> |
|
|
|
<van-field |
|
|
|
v-model="submitData.problemDescription" |
|
|
|
rows="5" |
|
|
|
@ -52,12 +52,14 @@ |
|
|
|
:rules="[{ required: true, message: '请输入描述' }]" |
|
|
|
show-word-limit |
|
|
|
/> |
|
|
|
<van-divider class="divdsty" /> |
|
|
|
<van-divider class="divdsty"/> |
|
|
|
<div class="file-upload"> |
|
|
|
<div class="file-upload-center"> |
|
|
|
<label>上传附件</label> <span>(不多于9张)</span> |
|
|
|
</div> |
|
|
|
<van-uploader v-model="submitData.fileListObj" max-count="9" class="file" :after-read="uploadFiles" multiple @oversize="onOversize" :before-delete="deleteFile"> |
|
|
|
<van-uploader v-model="submitData.fileListObj" max-count="9" class="file" |
|
|
|
:after-read="uploadFiles" multiple @oversize="onOversize" |
|
|
|
:before-delete="deleteFile"> |
|
|
|
<template #preview-cover="{ file }"> |
|
|
|
<div class="preview-cover van-ellipsis">{{ file.name }}</div> |
|
|
|
</template> |
|
|
|
@ -100,53 +102,54 @@ |
|
|
|
|
|
|
|
<script setup name="register"> |
|
|
|
|
|
|
|
import { showSuccessToast} from 'vant'; |
|
|
|
import {addEnterpriseComplaint} from '../../api/enterprise' |
|
|
|
import {getDict} from '../../api/Home' |
|
|
|
import {uploadFile} from '../../util/fileUpload' |
|
|
|
import { reactive, ref } from "vue"; |
|
|
|
const { useCommon, useMy } = $globalStore |
|
|
|
|
|
|
|
const router = useRouter(); |
|
|
|
const route = useRoute(); |
|
|
|
let queryaddressId = ref(""); |
|
|
|
const data = reactive({ |
|
|
|
import {showSuccessToast} from 'vant'; |
|
|
|
import {addEnterpriseComplaint} from '../../api/enterprise' |
|
|
|
import {getDict} from '../../api/Home' |
|
|
|
import {uploadFile} from '../../util/fileUpload' |
|
|
|
import {reactive, ref} from "vue"; |
|
|
|
|
|
|
|
const {useCommon, useMy} = $globalStore |
|
|
|
|
|
|
|
const router = useRouter(); |
|
|
|
const route = useRoute(); |
|
|
|
let queryaddressId = ref(""); |
|
|
|
const data = reactive({ |
|
|
|
searchResult: [], |
|
|
|
showPicker: false, |
|
|
|
columns: [], |
|
|
|
selectTypeValue : ref[0], |
|
|
|
selectTypeValue: ref[0], |
|
|
|
isSelect: false, |
|
|
|
isCheckedon: true, |
|
|
|
isCheckedoff: false |
|
|
|
}); |
|
|
|
//保存参数 |
|
|
|
const submitData = reactive({ |
|
|
|
}); |
|
|
|
//保存参数 |
|
|
|
const submitData = reactive({ |
|
|
|
//用户id |
|
|
|
userId:useCommon.userId, |
|
|
|
userId: useCommon.userId, |
|
|
|
//关联案件ID |
|
|
|
relId:"", |
|
|
|
relId: "", |
|
|
|
//案件名称 |
|
|
|
lawEnforcementIncident:"", |
|
|
|
lawEnforcementIncident: "", |
|
|
|
//企业名称 |
|
|
|
enterpriseName:"", |
|
|
|
enterpriseName: "", |
|
|
|
//纳税识别号 |
|
|
|
enterpriseNumber:"", |
|
|
|
enterpriseNumber: "", |
|
|
|
//执法投诉 |
|
|
|
enforceType:"", |
|
|
|
enforceTypeText:"", |
|
|
|
enforceType: "", |
|
|
|
enforceTypeText: "", |
|
|
|
//问题描述 |
|
|
|
problemDescription:"", |
|
|
|
problemDescription: "", |
|
|
|
//联系人 |
|
|
|
linkman:"", |
|
|
|
linkman: "", |
|
|
|
//联系方式 |
|
|
|
linkmanTel:"", |
|
|
|
linkmanTel: "", |
|
|
|
// 是否授权 |
|
|
|
authorization: 1, |
|
|
|
//后台保存图片列表 |
|
|
|
fileList:[], |
|
|
|
fileList: [], |
|
|
|
//vant组件上传照片列表 |
|
|
|
fileListObj:[], |
|
|
|
}) |
|
|
|
fileListObj: [], |
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
// 返回 |
|
|
|
@ -155,20 +158,20 @@ const goBack = () => { |
|
|
|
router.push({ name: "Home" }); |
|
|
|
}; |
|
|
|
|
|
|
|
const validator = (val) => /^1[34578]\d{9}$/.test(val); |
|
|
|
const validator = (val) => /^1[34578]\d{9}$/.test(val); |
|
|
|
|
|
|
|
const onFailed = (errorInfo) => { |
|
|
|
const onFailed = (errorInfo) => { |
|
|
|
console.log('failed', errorInfo); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
const submit = () =>{ |
|
|
|
const submit = () => { |
|
|
|
// console.log(submitData); |
|
|
|
showSuccessToast('投诉成功'); |
|
|
|
addEnterpriseComplaint(submitData,success =>{ |
|
|
|
addEnterpriseComplaint(submitData, success => { |
|
|
|
|
|
|
|
console.log(success) |
|
|
|
//跳转企业二维码地址 |
|
|
|
if(success.success){ |
|
|
|
if (success.success) { |
|
|
|
// console.log("登记成功"); |
|
|
|
// Toast.loading('投诉成功'); |
|
|
|
|
|
|
|
@ -176,62 +179,62 @@ const submit = () =>{ |
|
|
|
goBack(); |
|
|
|
}, 2000); |
|
|
|
} |
|
|
|
},error=>{ |
|
|
|
}, error => { |
|
|
|
console.log("登记失败") |
|
|
|
}) |
|
|
|
} |
|
|
|
//消息提醒 |
|
|
|
// const toast = showLoadingToast({ |
|
|
|
// duration: 0, |
|
|
|
// forbidClick: true, |
|
|
|
// message: '提交成功', |
|
|
|
// }); |
|
|
|
// let second = 3; |
|
|
|
// const timer = setInterval(() => { |
|
|
|
// second--; |
|
|
|
// if (second) { |
|
|
|
// } else { |
|
|
|
// clearInterval(timer); |
|
|
|
// closeToast(); |
|
|
|
// } |
|
|
|
// }, 1000); |
|
|
|
// 保存地址操作 |
|
|
|
const onSave = () => { |
|
|
|
router.replace({ name: "addressList" }); |
|
|
|
}; |
|
|
|
} |
|
|
|
//消息提醒 |
|
|
|
// const toast = showLoadingToast({ |
|
|
|
// duration: 0, |
|
|
|
// forbidClick: true, |
|
|
|
// message: '提交成功', |
|
|
|
// }); |
|
|
|
// let second = 3; |
|
|
|
// const timer = setInterval(() => { |
|
|
|
// second--; |
|
|
|
// if (second) { |
|
|
|
// } else { |
|
|
|
// clearInterval(timer); |
|
|
|
// closeToast(); |
|
|
|
// } |
|
|
|
// }, 1000); |
|
|
|
// 保存地址操作 |
|
|
|
const onSave = () => { |
|
|
|
router.replace({name: "addressList"}); |
|
|
|
}; |
|
|
|
|
|
|
|
const onConfirm = (value)=> { |
|
|
|
const onConfirm = (value) => { |
|
|
|
data.showPicker = false; |
|
|
|
console.log(value) |
|
|
|
submitData.enforceType = value.selectedValues[0]; |
|
|
|
submitData.enforceTypeText = value.selectedOptions[0].text; |
|
|
|
} |
|
|
|
const selectType = () =>{ |
|
|
|
} |
|
|
|
const selectType = () => { |
|
|
|
data.showPicker = true; |
|
|
|
// console.log(data) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const selectCh =(val) => { |
|
|
|
const selectCh = (val) => { |
|
|
|
submitData.authorization = val; |
|
|
|
if(val == 0) { |
|
|
|
if (val == 0) { |
|
|
|
data.isCheckedon = false; |
|
|
|
data.isCheckedoff = true; |
|
|
|
} else { |
|
|
|
data.isCheckedon = true; |
|
|
|
data.isCheckedoff = false; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
const uploadFiles = (file) =>{ |
|
|
|
uploadFile(file,(res) =>{ |
|
|
|
const uploadFiles = (file) => { |
|
|
|
uploadFile(file, (res) => { |
|
|
|
console.log(res); |
|
|
|
submitData.fileList.push(res.url) |
|
|
|
console.log(submitData.fileList); |
|
|
|
}); |
|
|
|
|
|
|
|
} |
|
|
|
const deleteFile = (file,index) =>{ |
|
|
|
} |
|
|
|
const deleteFile = (file, index) => { |
|
|
|
// submitData.fileListObj.filter((item, indexs) => { |
|
|
|
// if (index.index == indexs) { |
|
|
|
// submitData.fileListObj.splice(indexs, 1);//splice 删除 |
|
|
|
@ -243,8 +246,8 @@ const deleteFile = (file,index) =>{ |
|
|
|
} |
|
|
|
}); |
|
|
|
return true; |
|
|
|
} |
|
|
|
onMounted(() => { |
|
|
|
} |
|
|
|
onMounted(() => { |
|
|
|
console.log(route?.query?.id); |
|
|
|
console.log(route?.query?.lawEnforcementIncident); |
|
|
|
submitData.relId = route?.query?.id; |
|
|
|
@ -262,14 +265,14 @@ onMounted(() => { |
|
|
|
// }) |
|
|
|
submitData.enforceType = 3; |
|
|
|
submitData.enforceTypeText = "入企不扫码"; |
|
|
|
}); |
|
|
|
}); |
|
|
|
|
|
|
|
</script> |
|
|
|
<script> |
|
|
|
//案件筛选弹窗 |
|
|
|
import Popup from './caseFilter.vue'; |
|
|
|
//案件筛选弹窗 |
|
|
|
import Popup from './caseFilter.vue'; |
|
|
|
|
|
|
|
export default { |
|
|
|
export default { |
|
|
|
components: { |
|
|
|
Popup |
|
|
|
}, |
|
|
|
@ -287,18 +290,19 @@ export default { |
|
|
|
this.popupVisible = false; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|
|
|
|
|
<style lang="less" scoped> |
|
|
|
.address_edit { |
|
|
|
.address_edit { |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
height: 100%; |
|
|
|
overflow: hidden; |
|
|
|
background-color: #ebf3fb; |
|
|
|
} |
|
|
|
.warp_body { |
|
|
|
} |
|
|
|
|
|
|
|
.warp_body { |
|
|
|
margin: 2% 3%; |
|
|
|
padding-bottom: 3rem; |
|
|
|
width: 94%; |
|
|
|
@ -306,51 +310,58 @@ export default { |
|
|
|
//border-radius: 0.25rem; |
|
|
|
background-image: linear-gradient(to bottom, #ebf3fb, #fff); |
|
|
|
overflow-y: auto; |
|
|
|
} |
|
|
|
/* vant4的 Toast 和 Popup 样式冲突,会导致 Toast 变成白底 */ |
|
|
|
.van-popup.van-toast{ |
|
|
|
} |
|
|
|
|
|
|
|
/* vant4的 Toast 和 Popup 样式冲突,会导致 Toast 变成白底 */ |
|
|
|
.van-popup.van-toast { |
|
|
|
background: var(--van-toast-background) !important; |
|
|
|
box-sizing: content-box !important; |
|
|
|
/* 下面3条css,影响不大 */ |
|
|
|
transition: all var(--van-duration-fast) !important; |
|
|
|
width: var(--van-toast-default-width) !important; |
|
|
|
max-width: var(--van-toast-max-width) !important; |
|
|
|
} |
|
|
|
.van-popup.van-toast .van-toast__icon{ |
|
|
|
} |
|
|
|
|
|
|
|
.van-popup.van-toast .van-toast__icon { |
|
|
|
font-size: var(--van-toast-icon-size) !important; |
|
|
|
} |
|
|
|
.divdsty { |
|
|
|
} |
|
|
|
|
|
|
|
.divdsty { |
|
|
|
margin: auto; |
|
|
|
width: 100%; |
|
|
|
height: 0.25rem; |
|
|
|
background-color: #f4f4f4; |
|
|
|
border: 0; |
|
|
|
} |
|
|
|
.file-upload { |
|
|
|
} |
|
|
|
|
|
|
|
.file-upload { |
|
|
|
position: relative; |
|
|
|
min-height: 4.2rem; |
|
|
|
padding: 0.27rem 0.43rem; |
|
|
|
box-sizing: border-box; |
|
|
|
} |
|
|
|
.file-upload-center { |
|
|
|
} |
|
|
|
|
|
|
|
.file-upload-center { |
|
|
|
position: absolute; |
|
|
|
height: 20%; |
|
|
|
top: 10%; |
|
|
|
left: 0.43rem; |
|
|
|
font-size: 0.38rem; |
|
|
|
|
|
|
|
span { |
|
|
|
font-size: 0.32rem; |
|
|
|
color: rgb(221, 229, 227); |
|
|
|
} |
|
|
|
} |
|
|
|
.file { |
|
|
|
} |
|
|
|
|
|
|
|
.file { |
|
|
|
position: absolute; |
|
|
|
bottom: 10%; |
|
|
|
left: 0.43rem; |
|
|
|
width: calc(100% - 0.86rem); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.preview-cover { |
|
|
|
.preview-cover { |
|
|
|
position: absolute; |
|
|
|
bottom: 0; |
|
|
|
box-sizing: border-box; |
|
|
|
@ -361,7 +372,8 @@ export default { |
|
|
|
text-align: center; |
|
|
|
background: rgba(0, 0, 0, 0.3); |
|
|
|
} |
|
|
|
.rigbtn { |
|
|
|
|
|
|
|
.rigbtn { |
|
|
|
float: right; |
|
|
|
position: relative; |
|
|
|
z-index: 1; |
|
|
|
@ -371,8 +383,9 @@ export default { |
|
|
|
color: #1367fe; |
|
|
|
border-radius: 1rem; |
|
|
|
font-size: 0.3rem; |
|
|
|
} |
|
|
|
.popup { |
|
|
|
} |
|
|
|
|
|
|
|
.popup { |
|
|
|
position: fixed; |
|
|
|
z-index: 999; |
|
|
|
top: 3rem; |
|
|
|
@ -381,9 +394,9 @@ export default { |
|
|
|
height: calc(100% - 3rem);; |
|
|
|
background: #fff; |
|
|
|
overflow: hidden; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.popup-title { |
|
|
|
.popup-title { |
|
|
|
margin: 0.3rem 0 0; |
|
|
|
width: 100%; |
|
|
|
height: 1rem; |
|
|
|
@ -391,9 +404,9 @@ export default { |
|
|
|
text-align: center; |
|
|
|
font-size: 0.45rem; |
|
|
|
font-weight: 600; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.close-button { |
|
|
|
.close-button { |
|
|
|
position: absolute; |
|
|
|
top: 0.15rem; |
|
|
|
right: 0.1rem; |
|
|
|
@ -403,10 +416,10 @@ export default { |
|
|
|
border: 0.05rem solid rgba(255, 255, 255, .7); |
|
|
|
border-radius: 50%; |
|
|
|
transform: rotate(45deg); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.close-button:before, |
|
|
|
.close-button:after { |
|
|
|
.close-button:before, |
|
|
|
.close-button:after { |
|
|
|
content: ''; |
|
|
|
position: absolute; |
|
|
|
top: 50%; |
|
|
|
@ -416,28 +429,28 @@ export default { |
|
|
|
transform: translate(-50%, -50%); |
|
|
|
height: 0.4rem; |
|
|
|
width: 0.02rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.close-button:after { |
|
|
|
.close-button:after { |
|
|
|
height: 0.02rem; |
|
|
|
width: 0.4rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.popup-content { |
|
|
|
.popup-content { |
|
|
|
margin: 0.25rem 3% 0; |
|
|
|
padding-bottom: 3rem; |
|
|
|
width: 94%; |
|
|
|
height: calc(100% - 1.6rem); |
|
|
|
overflow-y: auto; |
|
|
|
font-size: 0.38rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.subsearch { |
|
|
|
.subsearch { |
|
|
|
width: 100%; |
|
|
|
height: 1.25rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.searchbox { |
|
|
|
.searchbox { |
|
|
|
margin: 2% 3%; |
|
|
|
padding: 0.15rem 0.3rem 0.1rem 1.15rem; |
|
|
|
width: 94%; |
|
|
|
@ -446,23 +459,23 @@ export default { |
|
|
|
background-position: left 0.5rem center; |
|
|
|
background-size: auto 50%; |
|
|
|
box-sizing: border-box; |
|
|
|
border: 1px solid rgba(0,0,0,.05); |
|
|
|
border: 1px solid rgba(0, 0, 0, .05); |
|
|
|
border-radius: 0.5rem; |
|
|
|
color: #999999; |
|
|
|
outline: none; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.subtitle { |
|
|
|
.subtitle { |
|
|
|
margin: 0.5rem 0 0.25rem; |
|
|
|
font-size: 0.4rem; |
|
|
|
font-weight: 600; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.quick-item { |
|
|
|
.quick-item { |
|
|
|
display: flex; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.quick-item span { |
|
|
|
.quick-item span { |
|
|
|
display: inline-block; |
|
|
|
margin: 1% 0 2% 3.5%; |
|
|
|
padding: 2% 3.75%; |
|
|
|
@ -470,23 +483,23 @@ export default { |
|
|
|
border: 0; |
|
|
|
border-radius: 8px; |
|
|
|
color: #4c4c4c; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.quick-item span.seled { |
|
|
|
.quick-item span.seled { |
|
|
|
background: #e9f2fb; |
|
|
|
color: #1367fe; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.btnbox { |
|
|
|
.btnbox { |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
margin: 5% 2%; |
|
|
|
width: 96%; |
|
|
|
height: 1.0rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.btn-reset, |
|
|
|
.btn-search { |
|
|
|
.btn-reset, |
|
|
|
.btn-search { |
|
|
|
display: inline-block; |
|
|
|
margin: 0 2%; |
|
|
|
padding: 0; |
|
|
|
@ -497,21 +510,21 @@ export default { |
|
|
|
background: #1367fe; |
|
|
|
border: 1px solid #1367fe; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.btn-reset { |
|
|
|
.btn-reset { |
|
|
|
width: 35%; |
|
|
|
background-color: #fff; |
|
|
|
border-color: rgba(19, 103, 254, .7); |
|
|
|
color: #1367fe; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.search-result { |
|
|
|
.search-result { |
|
|
|
width: 100%; |
|
|
|
padding-bottom: 2rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.case-item { |
|
|
|
.case-item { |
|
|
|
margin: 3% 2%; |
|
|
|
padding: 2% 0; |
|
|
|
width: 96%; |
|
|
|
@ -519,16 +532,16 @@ export default { |
|
|
|
border-bottom: 1px solid #f4f4f4; |
|
|
|
color: #999; |
|
|
|
line-height: 2; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.case-title { |
|
|
|
.case-title { |
|
|
|
margin: 2% 0; |
|
|
|
font-size: 0.42rem; |
|
|
|
color: #333; |
|
|
|
line-height: 1.25; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/deep/ .van-button { |
|
|
|
/deep/ .van-button { |
|
|
|
margin: 5% 3%; |
|
|
|
padding: 0; |
|
|
|
width: 94%; |
|
|
|
@ -539,33 +552,33 @@ export default { |
|
|
|
background: #1367fe; |
|
|
|
border: 0.01rem solid #1367fe; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/deep/ .van-action-bar { |
|
|
|
/deep/ .van-action-bar { |
|
|
|
box-shadow: 0 0 0.27rem #e5e5e5; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.agree-box { |
|
|
|
.agree-box { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
height: 1.5rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.agree-box .remsty { |
|
|
|
.agree-box .remsty { |
|
|
|
margin: 0.5rem 0.5rem; |
|
|
|
padding-left: 0.85rem; |
|
|
|
background: url("../../assets/images/icon_remind.png") no-repeat left center; |
|
|
|
background-size: auto 100%; |
|
|
|
font-size: 0.5rem; |
|
|
|
font-weight: 600; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.accept-item { |
|
|
|
.accept-item { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
margin: 0 0.15rem; |
|
|
|
font-size: 0.42rem; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.checksty { |
|
|
|
margin: 0 0.25rem; |
|
|
|
|