tianq 3 years ago
parent
commit
0dfadbccdf
  1. 3
      src/views/modules/workSys/serviceMatters.vue
  2. 156
      src/views/modules/workSys/serviceMattersComponents/addForm.vue

3
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: '开启' }],

156
src/views/modules/workSys/serviceMattersComponents/addForm.vue

@ -6,19 +6,12 @@
<el-input v-model="formData.categoryName" disabled class="u-item-width-normal" size="small" clearable placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="奖励积分" prop="yellowThreshold">
<el-input-number v-model="formData.yellowThreshold" class="u-item-width-normal" size="small" clearable placeholder="请输入"></el-input-number>
<el-form-item label="奖励积分" prop="awardPoint">
<el-input-number v-model="formData.awardPoint" class="u-item-width-normal" size="small" clearable placeholder="请输入"></el-input-number>
</el-form-item>
<el-form-item label="对应个性需求" prop="maritalStatus" v-if="index == 0">
<el-select class="u-item-width-normal" v-model="formData.maritalStatus" placeholder="全部" size="small" clearable>
<el-option v-for="item in marryList" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="对应公共服务" prop="maritalStatus" v-if="index == 0">
<el-select class="u-item-width-normal" v-model="formData.maritalStatus" placeholder="全部" size="small" clearable>
<el-option v-for="item in marryList" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
<el-form-item label="对应个性需求" prop="demandList"><el-cascader :options="demandOptions" :props="props" clearable></el-cascader></el-form-item>
<el-form-item label="对应公共服务" prop="commonServiceTypeList">
<el-cascader :options="commonServiceTypeOptions" :props="props" clearable></el-cascader>
</el-form-item>
</el-form>
</div>
@ -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 = {};

Loading…
Cancel
Save