Browse Source

前端bug清一遍

master
蟑螂恶霸 2 years ago
parent
commit
79252ba584
  1. 1
      src/views/enforce/earlyWarning.vue
  2. 10
      src/views/enforce/enforceNotice.vue
  3. 268
      src/views/enforce/enforcementPlanAdd.vue
  4. 1
      src/views/enforce/historyCheck.vue
  5. 4
      src/views/enforce/sign.vue
  6. 3
      src/views/enterprise/complaint.vue
  7. 5
      src/views/enterprise/complaintNoScan.vue
  8. 4
      src/views/login.vue

1
src/views/enforce/earlyWarning.vue

@ -99,6 +99,7 @@
let totalPrice = ref(0); // 总钱数 let totalPrice = ref(0); // 总钱数
let searchParam = reactive({ let searchParam = reactive({
"dataScopeId": useCommon.userId,
//执法事件 //执法事件
// lawEnforcementIncident:"", // lawEnforcementIncident:"",
//执法部门 //执法部门

10
src/views/enforce/enforceNotice.vue

@ -29,8 +29,14 @@
<div class="noticebox"> <div class="noticebox">
<div class="notice-item" v-for="(item, index) in data.dataList" :key="index"><i></i> <div class="notice-item" v-for="(item, index) in data.dataList" :key="index"><i></i>
<div class="item-cont"> <div class="item-cont">
<span class="item-title">{{ item.enforcementDepartment }}</span> <span class="item-title">{{ item.planName }}</span>
<span class="item-time">{{ item.createTime }}</span> <!-- <span class="item-time"> {{ item.enforcementDepartment }} - {{ item.createTime }}</span>-->
<span class="item-time" style="width: 90%;">
<div style="display: flex; justify-content: space-between;">
<div style="color: #333333;">{{ item.enforcementDepartment }}</div>
<div>{{ item.createTime }}</div>
</div>
</span>
<div class="item-text" @click="toPdfView(null==item.fileObject?'':item.fileObject.fileUrl)"><a style="color: green; ">{{ null==item.fileObject?'':item.fileObject.fileName }}</a></div> <div class="item-text" @click="toPdfView(null==item.fileObject?'':item.fileObject.fileUrl)"><a style="color: green; ">{{ null==item.fileObject?'':item.fileObject.fileName }}</a></div>
</div> </div>
</div> </div>

268
src/views/enforce/enforcementPlanAdd.vue

@ -11,6 +11,7 @@
</div> </div>
<!-- 中间 --> <!-- 中间 -->
<div class="warp_body"> <div class="warp_body">
<van-form @failed="onFailed">
<van-cell-group> <van-cell-group>
<van-field <van-field
v-model="submitData.planYear" v-model="submitData.planYear"
@ -81,7 +82,8 @@
<div class="file-upload-center"> <div class="file-upload-center">
文件上传 <span>(不多于9张)</span> 文件上传 <span>(不多于9张)</span>
</div> </div>
<van-uploader v-model="data.fileListObj" max-count="9" class="file" :after-read="uploadFiles" multiple @oversize="onOversize" :before-delete="deleteFile" accept=".pdf"> <van-uploader v-model="data.fileListObj" max-count="9" class="file" :after-read="uploadFiles"
multiple @oversize="onOversize" :before-delete="deleteFile" accept=".pdf">
<template #preview-cover="{ file }"> <template #preview-cover="{ file }">
<div class="preview-cover van-ellipsis">{{ file.name }}</div> <div class="preview-cover van-ellipsis">{{ file.name }}</div>
</template> </template>
@ -89,151 +91,170 @@
</div> </div>
</van-cell-group> </van-cell-group>
<van-action-bar> <van-action-bar>
<van-action-bar-button text="提交" @click="submit" /> <van-button round block type="info" native-type="submit" @click="submit123">提交</van-button>
</van-action-bar> </van-action-bar>
</van-form>
</div> </div>
</div> </div>
</template> </template>
<script setup name="register"> <script setup name="register">
import { showSuccessToast,showLoadingToast,closeToast } from 'vant'; import {showSuccessToast, showLoadingToast, closeToast} from 'vant';
import {addEnforcementInspectionProgram,queryUserInfo} from '@/api/enforce' import {addEnforcementInspectionProgram, queryUserInfo} from '@/api/enforce'
import {getDict} from '../../api/Home' import {getDict} from '../../api/Home'
import {uploadFile} from '../../util/fileUpload' import {uploadFile} from '../../util/fileUpload'
import { reactive, ref } from "vue"; import {reactive, ref} from "vue";
import { showConfirmDialog } from 'vant'; import {showConfirmDialog} from 'vant';
const { useCommon, useMy } = $globalStore;
const router = useRouter(); const {useCommon, useMy} = $globalStore;
const route = useRoute();
let queryaddressId = ref(""); const router = useRouter();
const data = reactive({ const route = useRoute();
let queryaddressId = ref("");
const data = reactive({
searchResult: [], searchResult: [],
showPicker: false, showPicker: false,
columns: [], columns: [],
selectTypeValue : ref[0], selectTypeValue: ref[0],
showDatePicker: ref(false), showDatePicker: ref(false),
columnsType :['year'], columnsType: ['year'],
columnsTypes :['year','month','day'], columnsTypes: ['year', 'month', 'day'],
currentDate: ref(['2024']), currentDate: ref(['2024']),
minDate: new Date(2020, 0, 1), minDate: new Date(2020, 0, 1),
maxDate: new Date(2125, 5, 1), maxDate: new Date(2125, 5, 1),
currentDate1: ref(['2024','03','01']), currentDate1: ref(['2024', '03', '01']),
//vant组件上传照片列表 //vant组件上传照片列表
fileListObj:[], fileListObj: [],
}); });
//保存参数 //保存参数
const submitData = reactive({ const submitData = reactive({
//用户id //用户id
userId:useCommon.userId, userId: useCommon.userId,
//关联案件ID //关联案件ID
relId:"", relId: "",
//计划年度 //计划年度
planYear:"", planYear: "",
//计划名称 //计划名称
planName:"", planName: "",
//执法部门 //执法部门
enforcementDepartment:"", enforcementDepartment: "",
//执法部门ID //执法部门ID
enforcementDepartmentId:"", enforcementDepartmentId: "",
//执法时间 //执法时间
enforcementTime:"", enforcementTime: "",
//执法区域 //执法区域
enforcementArea:"", enforcementArea: "",
//是否发布年度执法计划 //是否发布年度执法计划
isPublish:0, isPublish: 0,
//后台保存图片列表 //后台保存图片列表
fileList:[], fileList: [],
}) })
// 返回 // 返回
const goBack = () => { const goBack = () => {
router.go(-1); router.go(-1);
}; };
const submit123 = () => {
addEnforcementInspectionProgram(submitData, success => {
console.log(success)
//跳转企业二维码地址
if (success.success) {
console.log("保存成功");
showSuccessToast('保存成功');
goBack();
}
}, error => {
console.log("保存失败")
})
}
const submit = () =>{ const submit = () => {
showConfirmDialog({ showConfirmDialog({
title: '公布执法计划', title: '公布执法计划',
message: '对外公布本部门年度执法计划', message: '对外公布本部门年度执法计划',
}).then(() => { }).then(() => {
console.log(1) console.log(1)
submitData.isPublish = 1 submitData.isPublish = 1
addEnforcementInspectionProgram(submitData,success =>{ addEnforcementInspectionProgram(submitData, success => {
console.log(success) console.log(success)
//跳转企业二维码地址 //跳转企业二维码地址
if(success.success){ if (success.success) {
console.log("保存成功"); console.log("保存成功");
showSuccessToast('保存成功'); showSuccessToast('保存成功');
goBack(); goBack();
} }
},error=>{ }, error => {
console.log("保存失败") console.log("保存失败")
}) })
}).catch(() => { }).catch(() => {
console.log(0) console.log(0)
showSuccessToast('保存成功'); showSuccessToast('保存成功');
submitData.isPublish = 0 submitData.isPublish = 0
addEnforcementInspectionProgram(submitData,success =>{ addEnforcementInspectionProgram(submitData, success => {
console.log(success) console.log(success)
//跳转企业二维码地址 //跳转企业二维码地址
if(success.success){ if (success.success) {
console.log("保存成功"); console.log("保存成功");
showSuccessToast('保存成功'); showSuccessToast('保存成功');
goBack(); goBack();
} }
},error=>{ }, error => {
console.log("保存失败") console.log("保存失败")
}) })
}); });
} }
//消息提醒
// const toast = showLoadingToast({ const onFailed = (errorInfo) => {
// duration: 0, console.log('failed', errorInfo);
// forbidClick: true, };
// message: '提交成功', //消息提醒
// }); // const toast = showLoadingToast({
// let second = 3; // duration: 0,
// const timer = setInterval(() => { // forbidClick: true,
// second--; // message: '提交成功',
// if (second) { // });
// } else { // let second = 3;
// clearInterval(timer); // const timer = setInterval(() => {
// closeToast(); // second--;
// } // if (second) {
// }, 1000); // } else {
// 保存地址操作 // clearInterval(timer);
const onSave = () => { // closeToast();
router.replace({ name: "addressList" }); // }
}; // }, 1000);
// 保存地址操作
const onSave = () => {
router.replace({name: "addressList"});
};
const onConfirm = (value)=> { const onConfirm = (value) => {
data.showPicker = false; data.showPicker = false;
console.log(value) console.log(value)
submitData.enforceType = value.selectedValues[0]; submitData.enforceType = value.selectedValues[0];
submitData.enforceTypeText = value.selectedOptions[0].text; submitData.enforceTypeText = value.selectedOptions[0].text;
} }
const selectType = () =>{ const selectType = () => {
data.showPicker = true; data.showPicker = true;
// console.log(data) // console.log(data)
} }
const uploadFiles = (file) =>{ const uploadFiles = (file) => {
uploadFile(file,(res) =>{ uploadFile(file, (res) => {
console.log(file.fileName); console.log(file.fileName);
submitData.fileList.push({ submitData.fileList.push({
fileUrl:res.url, fileUrl: res.url,
fileName: file.file.name fileName: file.file.name
}) })
console.log(submitData.fileList); console.log(submitData.fileList);
}); });
} }
const deleteFile = (file,index) =>{ const deleteFile = (file, index) => {
// data.fileListObj.filter((item, indexs) => { // data.fileListObj.filter((item, indexs) => {
// if (index.index == indexs) { // if (index.index == indexs) {
// data.fileListObj.splice(indexs, 1);//splice 删除 // data.fileListObj.splice(indexs, 1);//splice 删除
@ -245,112 +266,116 @@ const deleteFile = (file,index) =>{
} }
}); });
return true; return true;
} }
onMounted(() => { onMounted(() => {
console.log(route?.query?.id); console.log(route?.query?.id);
console.log(route?.query?.lawEnforcementIncident); console.log(route?.query?.lawEnforcementIncident);
submitData.relId = route?.query?.id; submitData.relId = route?.query?.id;
submitData.lawEnforcementIncident = route?.query?.lawEnforcementIncident; submitData.lawEnforcementIncident = route?.query?.lawEnforcementIncident;
getDict({"dictType": "caseType"},success =>{ getDict({"dictType": "caseType"}, success => {
console.log(success); console.log(success);
success.data.forEach(res =>{ success.data.forEach(res => {
console.log(res) console.log(res)
var obj = { text: res.dictLabel, value: res.dictValue }; var obj = {text: res.dictLabel, value: res.dictValue};
data.columns.push(obj) data.columns.push(obj)
}) })
},error =>{ }, error => {
}) })
//查询企业信息 //查询企业信息
queryUserInfo(useCommon.userId,success =>{ queryUserInfo(useCommon.userId, success => {
submitData.enforcementDepartment = success.data.dept.deptName; submitData.enforcementDepartment = success.data.dept.deptName;
submitData.enforcementDepartmentId = success.data.dept.deptId; submitData.enforcementDepartmentId = success.data.dept.deptId;
},error=>{ }, error => {
}) })
}); });
const selectDate = () =>{ const selectDate = () => {
data.showDatePicker = true; data.showDatePicker = true;
console.log(data.showDatePicker) console.log(data.showDatePicker)
} }
const onDateConfirm = (value)=> { const onDateConfirm = (value) => {
console.log(value); console.log(value);
value.selectedValues.forEach((item,index) => { value.selectedValues.forEach((item, index) => {
console.log(item); console.log(item);
submitData.planYear = item; submitData.planYear = item;
}); });
// submitData.establishmentTime = "2023-04-21" // submitData.establishmentTime = "2023-04-21"
data.showDatePicker = false; data.showDatePicker = false;
} }
//取消日期选择 //取消日期选择
const cancelSelectDate = () =>{ const cancelSelectDate = () => {
data.showDatePicker = false; data.showDatePicker = false;
} }
//取消 //取消
const cancelEnforcementTime = () =>{ const cancelEnforcementTime = () => {
data.showPicker = false; data.showPicker = false;
} }
const selectEnforcementTime = () =>{ const selectEnforcementTime = () => {
data.showPicker = true; data.showPicker = true;
} }
const onEnforcementTimeConfirm = (value)=> { const onEnforcementTimeConfirm = (value) => {
console.log(value); console.log(value);
value.selectedValues.forEach((item,index) => { value.selectedValues.forEach((item, index) => {
console.log(item); console.log(item);
}); });
submitData.enforcementTime = value.selectedValues[0] + "-" + value.selectedValues[1] + "-" + value.selectedValues[2] + " 00:00:00"; submitData.enforcementTime = value.selectedValues[0] + "-" + value.selectedValues[1] + "-" + value.selectedValues[2] + " 00:00:00";
data.showPicker = false; data.showPicker = false;
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.address_edit { .address_edit {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
height: 100%; height: 100%;
overflow: hidden; overflow: hidden;
background-color: #f4f4f4; background-color: #f4f4f4;
} }
/* vant4的 Toast 和 Popup 样式冲突,会导致 Toast 变成白底 */
// .van-popup.van-toast{ /* vant4的 Toast 和 Popup 样式冲突,会导致 Toast 变成白底 */
// background: var(--van-toast-background) !important; // .van-popup.van-toast{
// box-sizing: content-box !important; // background: var(--van-toast-background) !important;
// /* 下面3条css,影响不大 */ // box-sizing: content-box !important;
// transition: all var(--van-duration-fast) !important; // /* 下面3条css,影响不大 */
// width: var(--van-toast-default-width) !important; // transition: all var(--van-duration-fast) !important;
// max-width: var(--van-toast-max-width) !important; // width: var(--van-toast-default-width) !important;
// } // max-width: var(--van-toast-max-width) !important;
// .van-popup.van-toast .van-toast__icon{ // }
// font-size: var(--van-toast-icon-size) !important; // .van-popup.van-toast .van-toast__icon{
// } // font-size: var(--van-toast-icon-size) !important;
.file-upload{ // }
.file-upload {
height: 165px; height: 165px;
position: relative; position: relative;
} }
.file-upload-center{
.file-upload-center {
position: absolute; position: absolute;
height: 20%; height: 20%;
top: 10%; top: 10%;
left: 2%; left: 2%;
font-size: 18px; font-size: 18px;
span { span {
font-size: 13px; font-size: 13px;
color: rgb(221, 229, 227); color: rgb(221, 229, 227);
} }
} }
.file{
.file {
position: absolute; position: absolute;
bottom: 10%; bottom: 10%;
left: 2%; left: 2%;
} }
.preview-cover { .preview-cover {
position: absolute; position: absolute;
bottom: 0; bottom: 0;
box-sizing: border-box; box-sizing: border-box;
@ -362,7 +387,7 @@ const onEnforcementTimeConfirm = (value)=> {
background: rgba(0, 0, 0, 0.3); background: rgba(0, 0, 0, 0.3);
} }
/deep/ .van-button { /deep/ .van-button {
margin: 5% 3%; margin: 5% 3%;
padding: 0; padding: 0;
width: 94%; width: 94%;
@ -373,8 +398,9 @@ const onEnforcementTimeConfirm = (value)=> {
background: #1367fe; background: #1367fe;
border: 0.02667rem solid #1367fe; border: 0.02667rem solid #1367fe;
text-align: center; text-align: center;
} }
:root {
:root {
--van-dialog-width: 600px; --van-dialog-width: 600px;
} }
</style> </style>

1
src/views/enforce/historyCheck.vue

@ -106,6 +106,7 @@
let searchParam = reactive({ let searchParam = reactive({
userId: useCommon.userId, userId: useCommon.userId,
"dataScopeId": useCommon.userId,
//执法事件 //执法事件
// lawEnforcementIncident:"", // lawEnforcementIncident:"",
//执法部门 //执法部门

4
src/views/enforce/sign.vue

@ -112,9 +112,9 @@
<div class="file-upload"> <div class="file-upload">
<div class="file-upload-center"> <div class="file-upload-center">
<label>上传附件</label> <span>(不多于3张)</span> <label>上传附件</label> <span>(不多于9张)</span>
</div> </div>
<van-uploader v-model="submitData.fileListObj" class="file" multiple max-count="3" :after-read="uploadFiles" :before-delete="deleteFile"> <van-uploader v-model="submitData.fileListObj" class="file" multiple max-count="9" :after-read="uploadFiles" :before-delete="deleteFile">
<template #preview-cover="{ file }"> <template #preview-cover="{ file }">
<div class="preview-cover van-ellipsis">{{ file.name }}</div> <div class="preview-cover van-ellipsis">{{ file.name }}</div>
</template> </template>

3
src/views/enterprise/complaint.vue

@ -162,6 +162,8 @@
linkman: "", linkman: "",
//联系方式 //联系方式
linkmanTel: "", linkmanTel: "",
// 是否授权
authorization: 1,
//后台保存图片列表 //后台保存图片列表
fileList: [], fileList: [],
//vant组件上传照片列表 //vant组件上传照片列表
@ -225,6 +227,7 @@
// console.log(data) // console.log(data)
} }
const selectCh =(val) => { const selectCh =(val) => {
submitData.authorization = val;
if(val == 0) { if(val == 0) {
data.isCheckedon = false; data.isCheckedon = false;
data.isCheckedoff = true; data.isCheckedoff = true;

5
src/views/enterprise/complaintNoScan.vue

@ -106,6 +106,8 @@ const data = reactive({
columns: [], columns: [],
selectTypeValue : ref[0], selectTypeValue : ref[0],
isSelect: false, isSelect: false,
isCheckedon: true,
isCheckedoff: false
}); });
//保存参数 //保存参数
const submitData = reactive({ const submitData = reactive({
@ -128,6 +130,8 @@ const submitData = reactive({
linkman:"", linkman:"",
//联系方式 //联系方式
linkmanTel:"", linkmanTel:"",
// 是否授权
authorization: 1,
//后台保存图片列表 //后台保存图片列表
fileList:[], fileList:[],
//vant组件上传照片列表 //vant组件上传照片列表
@ -193,6 +197,7 @@ const selectType = () =>{
const selectCh =(val) => { const selectCh =(val) => {
submitData.authorization = val;
if(val == 0) { if(val == 0) {
data.isCheckedon = false; data.isCheckedon = false;
data.isCheckedoff = true; data.isCheckedoff = true;

4
src/views/login.vue

@ -43,8 +43,8 @@ const onSubmit = async (values) => {
// return; // return;
userLogin(values,success=>{ userLogin(values,success=>{
console.log(success); console.log(success);
router.push({ name: "Home" }); // router.push({ name: "Home" });
// router.push({ name: "enforceHome" }); router.push({ name: "enforceHome" });
//设置全局变量 //设置全局变量
useCommon.SET_USER_PHONENUMBER(success.data.phonenumber.toString()); useCommon.SET_USER_PHONENUMBER(success.data.phonenumber.toString());
useCommon.SET_USER_ID(success.data.userId); useCommon.SET_USER_ID(success.data.userId);

Loading…
Cancel
Save