diff --git a/src/assets/scss/buttonstyle.scss b/src/assets/scss/buttonstyle.scss index 92a5b2e3..2eabacde 100644 --- a/src/assets/scss/buttonstyle.scss +++ b/src/assets/scss/buttonstyle.scss @@ -90,7 +90,7 @@ //查看 .div-table-button--detail { - color: #3E8EF7 !important; + color: #3e8ef7 !important; text-decoration: underline !important; } @@ -106,8 +106,8 @@ text-decoration: underline !important; } -// +// .div-table-button--qr { color: #4ec591 !important; text-decoration: underline !important; -} \ No newline at end of file +} diff --git a/src/assets/scss/pages/caiji.scss b/src/assets/scss/pages/caiji.scss index 8526f6e8..8dafd6eb 100644 --- a/src/assets/scss/pages/caiji.scss +++ b/src/assets/scss/pages/caiji.scss @@ -1,5 +1,5 @@ -.bg-app { - background-color: rgba(218, 218, 218, 0.89); +.bg-caiji { + background-color: rgba(189, 214, 255, 0.89); height: 100%; width: 100vw; padding: 20px; @@ -37,9 +37,46 @@ padding-bottom: 20px; display: flex; justify-content: center; + + .btn { + width: 150px; + font-size: 16px; + } } } .picker_content { color: rgb(59, 59, 59); } + +.bg-caiji-success { + height: 100vh; + width: 100vw; + + text-align: center; + .title { + background-color: rgba(189, 214, 255, 0.89); + padding: 20px; + text-align: center; + font-size: 20px; + } + + .main { + margin-top: 100px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + .icon-success { + font-size: 40px; + // width: 20px; + // height: 20px; + } + + .success-content { + margin-top: 10px; + font-size: 25px; + } + } +} diff --git a/src/router/index.js b/src/router/index.js index c8eb853e..8b2d8ab6 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -53,6 +53,15 @@ export const pageRoutes = [ title: "居民信息填报", }, }, + { + path: "/caijisuccess", + props: true, + name: "caijisuccess", + component: () => import("@/views/pages/caijisuccess"), + meta: { + title: "居民信息填报", + }, + }, ]; // 模块路由(基于主入口布局页面) @@ -170,6 +179,9 @@ const router = new Router({ router.beforeEach((to, from, next) => { // 添加动态(菜单)路由 // 已添加或者当前路由为页面路由, 可直接访问 + if(to.name==='caiji'){ + return next(); + } if ( window.SITE_CONFIG["dynamicMenuRoutesHasAdded"] || fnCurrentRouteIsPageRoute(to, pageRoutes) diff --git a/src/views/modules/base/community/communityTable.vue b/src/views/modules/base/community/communityTable.vue index 458f0267..cbe00837 100644 --- a/src/views/modules/base/community/communityTable.vue +++ b/src/views/modules/base/community/communityTable.vue @@ -103,7 +103,8 @@ class="diy-button--reset" size="small" @click="handleExport">导出 - 社区二维码 @@ -173,8 +174,7 @@ class="div-table-button--qr" size="small" @click="handleDownQr(scope.row, 'neighborHood')">二维码 --> - 查看 @@ -547,7 +547,7 @@ export default { this.$message.error(msg) } }, - async handleDownQr(row, type) { + async handleDownQr (row, type) { // const url = window.SITE_CONFIG['apiURL'] + `/gov/org/icneighborhood/createQrCode/${row.neighborHoodId}` const url = '/gov/org/agency/create-qrcode' const _id = type == 'community' ? row.id : row.neighborHoodId @@ -563,11 +563,11 @@ export default { }).then(res => { console.log('res----1r', res) if (res.headers["content-disposition"]) { - let fileName = window.decodeURI(res.headers["content-disposition"].split(";")[1].split("=")[1]) - console.log('filename', fileName) - this.download(res.data, fileName) //释放掉blob对象 - } else this.$message.error('下载失败') - // this.download(res.data, '1.png') + let fileName = window.decodeURI(res.headers["content-disposition"].split(";")[1].split("=")[1]) + console.log('filename', fileName) + this.download(res.data, fileName) //释放掉blob对象 + } else this.$message.error('下载失败') + // this.download(res.data, '1.png') }) }, //导出表格 diff --git a/src/views/pages/caiji.vue b/src/views/pages/caiji.vue index 9c8fc74e..be259c60 100644 --- a/src/views/pages/caiji.vue +++ b/src/views/pages/caiji.vue @@ -1,5 +1,5 @@ - + 居民信息填报 @@ -75,7 +75,7 @@ @@ -99,14 +99,23 @@ v-model="formData.houseHolderName"> - + + {{selTotalResi.label}} + 请选择 + + + + @@ -162,6 +171,7 @@ 提交 @@ -191,6 +201,8 @@ import { requestPost } from "@/js/dai/request"; import { Toast } from "mint-ui"; +import { MessageBox } from 'mint-ui'; +import { Loading } from 'element-ui' // 引入Loading服务 let loading // 加载动画 export default { @@ -217,6 +229,10 @@ export default { selUnit: null, selHome: null, selHomeType: null, + selTotalResi: { + label: '4人', + value: 4 + }, unitContent: '', homeContent: '',////选择其他时,输入的值 @@ -229,10 +245,11 @@ export default { address: '',//外部:用户自己输入;内部:把小区名楼栋名单元名房屋名拼接起来。例如:绿地望海领域10号楼一单元101 houseType: '',//1自由0租住 houseHolderName: '',//户主姓名 - totalResi: 1,//居住成员人数 + totalResi: 4,//居住成员人数 customerId: '',//customerId }, + showMessagsBox: false,//是否显示人员未填写提示弹出框 selMemberIndex: null, @@ -246,7 +263,8 @@ export default { ymjz: '', selDetNum: {}, selDetCondition: {} - } + }, + ], roomTypeList: [ @@ -259,7 +277,7 @@ export default { label: '租住' }, ], - + totalResiList: [], detNumList: [],//参加核酸次数list detConditionList: [//参加核酸类型list { @@ -299,18 +317,20 @@ export default { this.shequName = this.$route.query.name let envShow = process.env.VUE_APP_NODE_ENV - - let internalShequId = '' - if (envShow === 'dev' || envShow === 'prod:sit') { // 开发环境 - internalShequId = '6e511da6816e53af4cda952365a26eb9' - } else if (envShow === 'prod:uat') { // 体验 - internalShequId = '6e511da6816e53af4cda952365a26eb9' - } else if (envShow === 'prod') { // 生产 - internalShequId = '1202807601961984002' - } + console.log('环境', envShow) + + // let internalShequId = ['1202807601961984002', '6e511da6816e53af4cda952365a26eb9',] + let internalShequId = ['1202807601961984002',] + // if (envShow === 'dev' || envShow === 'prod:sit') { // 开发环境 + // internalShequId = null + // } else if (envShow === 'prod:uat') { // 体验 + // internalShequId = '6e511da6816e53af4cda952365a26eb9' + // } else if (envShow === 'prod') { // 生产 + // internalShequId = '1202807601961984002' + // } this.formData.customerId = this.customerId - if (this.shequId === internalShequId) { + if (internalShequId.indexOf(this.shequId) > -1) { this.formData.origin = 'internal' } else { this.formData.origin = 'external' @@ -324,36 +344,20 @@ export default { } this.detNumList.push(obj) } - }, - methods: { - bluraa () { - let objTemp = { - name: '', - mobile: '', - idNum: '', - heSuanCount: 0, - ymjz: '', - selDetNum: {}, - customerId: '', - selDetCondition: {} + for (let i = 1; i < 9; i++) { + let obj = { + value: i, + label: i + '人', } + this.totalResiList.push(obj) + } - if (this.memberList.length > this.formData.totalResi) {//已有成员数量比设置的数量大,删除多余 - let differ = this.memberList.length - this.formData.totalResi - this.memberList.splice(this.formData.totalResi, differ) - } else if (this.memberList.length < this.formData.totalResi) {////已有成员数量比设置的数量小,补充空对象 - let differ = this.formData.totalResi - this.memberList.length - - for (let i = 0; i < differ; i++) { - let temp = JSON.parse(JSON.stringify(objTemp)) - this.memberList.push(temp) - } - } + this.bluraa() + }, + methods: { - console.log(this.memberList) - }, //根据社区id获取小区列表 async loadVillage () { @@ -526,6 +530,9 @@ export default { } + if (selType === 'totalResi') { + this.pickerData = this.totalResiList + } if (selType === 'roomType') { this.pickerData = this.roomTypeList } @@ -548,17 +555,29 @@ export default { }, async handleSubmit () { - let message = this.validataFormData() + + if (message) { - Toast({ - message: message, - duration: 3000 - }); - return false + if (this.showMessagsBox) { + MessageBox.confirm(message).then(action => { + this.submit() + }); + } else { + Toast({ + message: message, + duration: 3000 + }); + } + } else { + this.submit() } + }, + async submit () { + + if (this.formData.origin === 'internal') { this.formData.villageId = this.selVillage.value @@ -597,64 +616,71 @@ export default { this.formData.memberList = this.memberList console.log(this.formData) this.btnDisabled = true + this.startLoading() const url = "/epmetuser/icresicollect/save" const { data, code, msg } = await requestPost(url, this.formData) - + this.endLoading() + this.btnDisabled = false if (code === 0) { - Toast({ - message: '提交成功', - duration: 3000 - }); - this.btnDisabled = false + + this.$router.replace({ name: 'caijisuccess' }) + // Toast({ + // message: '提交成功', + // duration: 3000 + // }); + } else { Toast({ message: msg, duration: 3000 }); - this.btnDisabled = false + } }, + + //必填验证 validataFormData () { - let message = '' + let aletMessage = '' + this.showMessagsBox = false if (this.formData.origin === 'internal') {//内部 - if (!this.selVillage) { - message = '请选择小区' - return message + aletMessage = '请选择小区' + + return aletMessage } if (!this.selBuild) { - message = '请选择楼栋' - return message + aletMessage = '请选择楼栋' + return aletMessage } if (!this.selUnit) {//没有选择单元 - message = '请选择单元' - return message + aletMessage = '请选择单元' + return aletMessage } else {//选择了单元 if (this.selUnit.value === 'else') {//单元选择了其他 if (!this.unitContent) { - message = '请填写单元号' - return message + aletMessage = '请填写单元号' + return aletMessage } if (!this.homeContent) {//房屋必须填写内容 - message = '请填写房屋' - return message + aletMessage = '请填写房屋' + return aletMessage } } else {//单元没有选择其他 if (!this.selHome) { - message = '请选择房屋' - return message + aletMessage = '请选择房屋' + return aletMessage } else if (this.selHome.value === 'else' && !this.homeContent) { - message = '请填写房屋' - return message + aletMessage = '请填写房屋' + return aletMessage } } @@ -663,29 +689,44 @@ export default { } else { if (!this.formData.address) { - message = '请填写地址' - return message + aletMessage = '请填写地址' + return aletMessage } } if (!this.selHomeType) { - message = '请选择房屋类型' - return message + aletMessage = '请选择房屋类型' + return aletMessage } if (!this.formData.houseHolderName) { - message = '请填写户主姓名' - return message + aletMessage = '请填写户主姓名' + return aletMessage + } + let member1 = this.memberList[0] + + + if (!member1.name || !member1.mobile || !member1.idNum || !member1.selDetNum.value || !member1.selDetCondition.value) { + aletMessage = '请完整填写用户1信息' + return aletMessage } - let member = this.memberList[0] - for (let i = 0; i < this.memberList.length; i++) { + + for (let i = 1; i < this.memberList.length; i++) { let item = this.memberList[i] - if (!item.name || !item.mobile || !item.idNum || !item.selDetNum.value || !item.selDetCondition.value) { - message = '请完整填写用户' + (i + 1) + '信息' - return message + + if (item.name || item.mobile || item.idNum || item.selDetNum.value || item.selDetCondition.value) {//填写了信息的,必须填写姓名身份证 + if (!item.name || !item.idNum) { + aletMessage = '请完整填写用户' + (i + 1) + '的姓名和身份证信息' + return aletMessage + } + } else { + aletMessage = '用户' + (i + 1) + '的信息没有填写,是否继续' + this.showMessagsBox = true + return aletMessage + } - } + } }, @@ -693,9 +734,6 @@ export default { popupOk () { if (this.selType === 'community') { this.selVillage = this.selObj - - - this.selBuild = null this.selUnit = null this.selHome = null @@ -728,9 +766,13 @@ export default { } if (this.selType === 'room') { this.selHome = this.selObj - this.homeContent = '' + } + if (this.selType === 'totalResi') { + this.selTotalResi = this.selObj + this.formData.totalResi = this.selObj.value + this.bluraa() } if (this.selType === 'roomType') { @@ -754,13 +796,55 @@ export default { }, + bluraa () { + let objTemp = { + name: '', + mobile: '', + idNum: '', + heSuanCount: 0, + ymjz: '', + selDetNum: {}, + customerId: '', + selDetCondition: {} + } + + if (this.memberList.length > this.formData.totalResi) {//已有成员数量比设置的数量大,删除多余 + let differ = this.memberList.length - this.formData.totalResi + this.memberList.splice(this.formData.totalResi, differ) + } else if (this.memberList.length < this.formData.totalResi) {////已有成员数量比设置的数量小,补充空对象 + let differ = this.formData.totalResi - this.memberList.length + + for (let i = 0; i < differ; i++) { + let temp = JSON.parse(JSON.stringify(objTemp)) + this.memberList.push(temp) + } + } + + + console.log(this.memberList) + }, + onPickerChange (picker, values) { this.selObj = values[0] }, - + // 开启加载动画 + startLoading () { + loading = Loading.service({ + lock: true, // 是否锁定 + text: '正在加载……', // 加载中需要显示的文字 + background: 'rgba(0,0,0,.7)' // 背景颜色 + }) + }, + // 结束加载动画 + endLoading () { + // clearTimeout(timer); + if (loading) { + loading.close() + } + } } diff --git a/src/views/pages/caijisuccess.vue b/src/views/pages/caijisuccess.vue new file mode 100644 index 00000000..7127c126 --- /dev/null +++ b/src/views/pages/caijisuccess.vue @@ -0,0 +1,78 @@ + + + + 居民信息填报 + + + + + + + + 提交成功 + + + + + + +