diff --git a/src/views/modules/workSys/serviceMatters.vue b/src/views/modules/workSys/serviceMatters.vue index bc07d8573..a42b659f0 100644 --- a/src/views/modules/workSys/serviceMatters.vue +++ b/src/views/modules/workSys/serviceMatters.vue @@ -46,12 +46,13 @@ import { requestPost } from '@/js/dai/request'; import nextTick from 'dai-js/tools/nextTick'; import { mapGetters } from 'vuex'; -import addForm from './residentCategoryComponents/addForm.vue'; +import addForm from './serviceMattersComponents/addForm.vue'; import axios from 'axios'; export default { data() { return { + dialogVisible: false, warnFlagList: [{ value: '0', label: '否' }, { value: '1', label: '是' }], intelligentFlagList: [{ value: '0', label: '不开启' }, { value: '1', label: '开启' }], diff --git a/src/views/modules/workSys/serviceMattersComponents/addForm.vue b/src/views/modules/workSys/serviceMattersComponents/addForm.vue index fa4f2c085..5fba2f134 100644 --- a/src/views/modules/workSys/serviceMattersComponents/addForm.vue +++ b/src/views/modules/workSys/serviceMattersComponents/addForm.vue @@ -6,19 +6,12 @@ - - + + - - - - - - - - - - + + + @@ -63,6 +56,10 @@ export default { data() { return { + props: { multiple: true }, + categoryCodeArr: {}, + demandOptions: [], + commonServiceTypeOptions: [], index: -1, //判断这个是arr中的第几个 arr: ['育龄妇女', '老年人', '空巢老人', '独居老人', '租户', '残疾', '大病', '慢病'], btnDisable: false, @@ -71,16 +68,12 @@ export default { marryList: [{ value: '-1', label: '不限制' }, { value: '0', label: '未婚' }, { value: '1', label: '已婚' }], list: {}, formData: { - equipmentName: '', - scaleTotal: '', - gridId: '', - equipmentCategoryCode: '', - placeType: '', - principalName: '', - location: '', - contactNum: '', - // result: '', - remark: '' + awardPoint: '', + categoryId: '', + categoryName: '', + demandList: '', + commonServiceTypeList: '', + }, dataRule: { // name: [{ required: true, message: '场所名称不能为空', trigger: 'bulr' }], @@ -98,14 +91,126 @@ export default { this.agencyId = this.user.agencyId; this.startLoading(); this.getDetail(); - + this.getDemandOptions(); + this.getCommonServiceTypeOptions(); await this.endLoading(); this.endLoading(); }, methods: { + // 服务类型下拉框选中事件 + handleChangeServiceTypeLevel1() { + this.formData.serviceTypeLevel2Id = ''; + this.$http + .get('/governance/commonServiceType/selectList/' + this.formData.serviceTypeLevel1Id) + .then(({ data: res }) => { + if (res.code !== 0) { + return this.$message.error(res.msg); + } else { + this.serviceTypesLevel2 = res.data; + } + }) + .catch(() => { + return this.$message.error('网络错误'); + }); + }, + getTreeData(data) { + if (!Array.isArray(data)) return []; + let arr = data.map(item => { + let _item = {}; + if (item.children) { + if (item.children.length === 0) _item = { ...item, children: undefined }; + else _item = { ...item, children: this.getTreeData(item.children) }; + } else { + _item = { ...item }; + } + return _item; + }); + return arr; + }, + getFlagData(data, flag) { + if (!Array.isArray(data)) return []; + let arr1 = data.filter(item => item[flag]); + let arr2 = arr1.map(item => { + if (item.children) return { ...item, children: this.getFlagData(item.children, flag) }; + else return item; + }); + return arr2; + }, + // getTreeData(data) { + // if (!Array.isArray(data)) return []; + // let arr = data.map(item => { + // let obj = {}; + // if (item.children) + // obj = { + // label: item.label, + // value: item.value, + // children: this.getTreeData(item.children), + // pid: item.pid + // }; + // else { + // obj = { + // label: item.label, + // value: item.value, + // pid: item.pid + // }; + // console.log('douzo ', obj.label); + // } + + // return obj; + // }); + // return arr; + // }, + getTreeData2(data) { + if (!Array.isArray(data)) return []; + let arr = data.map(item => { + let obj = {}; + if (item.childrenList) + obj = { + label: item.name, + value: item.id, + children: this.getTreeData2(item.childrenList), + pid: item.pid + }; + else { + obj = { + label: item.name, + value: item.id, + pid: item.pid + }; + console.log('douzo ', obj.label); + } + + return obj; + }); + return arr; + }, + async getDemandOptions() { + const url = `/governance/icresidemanddict/demandoption`; + const { data, code, msg } = await requestPost(url); + if (code === 0) { + console.log('1', data); + this.demandOptions = this.getFlagData( + this.getTreeData(data), + "usableFlag" + ); + console.log('2', this.demandOptions); + } else { + this.$message.error(msg); + } + }, + + async getCommonServiceTypeOptions() { + const url = `/governance/commonServiceType/selectList/0`; + const { data, code, msg } = await requestGet(url); + if (code === 0) { + this.commonServiceTypeOptions = this.getTreeData2(data); + } else { + this.$message.error(msg); + } + }, async getDetail() { - const url = `/actual/base/residentCategoryConfig/detail/${this.detailId}`; + const url = `/actual/base/serviceitem/detail/${this.detailId}`; const { data, code, msg } = await requestPost(url); if (code === 0) { console.log('详情数据', data); @@ -121,6 +226,9 @@ export default { }, async save() { + let form=this.formData; + + console.log('this.formData', this.formData); const url = '/actual/base/serviceitem/saveorupdate'; var params = {};