Commit 87e23b52 authored by Gakki's avatar Gakki

功能完成

parent 5ac2335c
// 小区列表 // 小区列表
<template> <template>
<div class="routerWapper"> <div class="routerWapper">
{{checkedKeys}} <!-- {{checkedKeys}} -->
<a-row type='flex'> <a-row type='flex'>
<a-col flex='250px' style="overflow: hidden"> <a-col flex='250px' style="overflow: hidden">
<div v-if="$route.path == '/houseData/basicInfoByLabel'" class="layoutMargin layoutPadding"> <div v-if="$route.path == '/houseData/basicInfoByLabel'" class="layoutMargin layoutPadding" style="height: 100%">
<!-- <a-row style="font-weight: bold">标签筛选条件</a-row>
<a-divider /> -->
<a-tree <a-tree
@check='onCheck' @check='onCheck'
checkable checkable
...@@ -445,6 +447,16 @@ export default { ...@@ -445,6 +447,16 @@ export default {
console.log(keys, node) console.log(keys, node)
for(let i = 0; i < keys.length; i++) { for(let i = 0; i < keys.length; i++) {
console.log(keys[i]) console.log(keys[i])
// this.$ajax.get({
// url: this.$api.DELETE_SINGLE_LABEL.replace('{id}', keys[i]),
// }).then(res => {
// if (res.code == 200) {
// if(res.data.content.parentId == '0') {} else {
// this.checkedKeys.push(keys[i])
// }
// }
// })
this.checkedKeys.push(keys[i])
} }
// if(node.node.$children.length > 0) { // 一级菜单(有若干个二级菜单) // if(node.node.$children.length > 0) { // 一级菜单(有若干个二级菜单)
// console.log('一级菜单') // console.log('一级菜单')
...@@ -957,6 +969,6 @@ export default { ...@@ -957,6 +969,6 @@ export default {
} }
</script> </script>
<style scoped> <style>
</style> </style>
...@@ -10,9 +10,9 @@ ...@@ -10,9 +10,9 @@
</div> </div>
<div v-if="$route.name=='lvot'"> <div v-if="$route.name=='lvot'">
<a-row> <a-row>
<a-col :span='4' class="layoutMargin layoutPadding"> <a-col :span='4' class="layoutMargin layoutPadding" style="height: 680px">
<a-row> <a-row style="height: 36px">
<a-button size='small' type="default" @click="addLabel"> <a-icon type="plus" />添加标签 </a-button> <a-button style="width: 100%" size='small' type="default" @click="addLabel"> <a-icon type="plus" />添加标签 </a-button>
</a-row> </a-row>
<a-tree <a-tree
:tree-data="treeData" :tree-data="treeData"
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
/> />
</a-col> </a-col>
<a-col :span='1'></a-col> <a-col :span='1'></a-col>
<a-col :span='18' class="layoutMargin layoutPadding"> <a-col :span='18' class="layoutMargin layoutPadding" style="height: 680px">
<RightPanel v-if="currentState == 'create'" :trigger-type='currentState' @finish='getFinishState' /> <RightPanel v-if="currentState == 'create'" :trigger-type='currentState' @finish='getFinishState' />
<RightPanel v-else-if="currentState == 'loadChildLabel'" :trigger-type='currentState' :label-id='labelId' @finish='getFinishState' /> <RightPanel v-else-if="currentState == 'loadChildLabel'" :trigger-type='currentState' :label-id='labelId' @finish='getFinishState' />
<ParentRightPanel v-else-if="currentState == 'loadParentLabel'" :trigger-type='currentState' :label-id='labelId' @finish='getFinishState' /> <ParentRightPanel v-else-if="currentState == 'loadParentLabel'" :trigger-type='currentState' :label-id='labelId' @finish='getFinishState' />
...@@ -112,7 +112,17 @@ export default { ...@@ -112,7 +112,17 @@ export default {
} }
</script> </script>
<style scoped> <style>
.ant-tree li {
margin: 0;
padding: 10px 0;
white-space: nowrap;
list-style: none;
outline: 0;
}
.ant-tree-child-tree > li:first-child {
padding-top: 20px;
}
</style> </style>
...@@ -2,12 +2,16 @@ ...@@ -2,12 +2,16 @@
<div class="routerWapper"> <div class="routerWapper">
<div> <div>
<!-- {{triggerType}} - {{labelId}} - {{finish}} - {{jsonData}} - {{initKey}} --> <!-- {{triggerType}} - {{labelId}} - {{finish}} - {{jsonData}} - {{initKey}} -->
<!-- {{loopContent.data}} -->
<a-row> <a-row>
<a-col :span='1' v-if="triggerType == 'create'"> <!-- <a-col :span='1' v-if="triggerType == 'create'"> -->
<a-button type='default' @click="backPage()">返回</a-button> <a-col :span='1'>
<div class="detailOperations">
<a-button @click="backPage"> 返回 </a-button>
</div>
</a-col> </a-col>
<a-col :span='1' v-else> <a-col :span='1' v-if="triggerType !== 'create' && triggerType !== 'loadParentLabel'" :offset='1'>
<a-button type='default' @click="deleteLabel(labelId)">删除</a-button> <a-button type='danger' @click="deleteLabel(labelId)">删除</a-button>
</a-col> </a-col>
<!-- <a-col :span='1' :offset='1'> <!-- <a-col :span='1' :offset='1'>
<a-button type='default'>编辑</a-button> <a-button type='default'>编辑</a-button>
...@@ -19,28 +23,38 @@ ...@@ -19,28 +23,38 @@
</a-row> </a-row>
</div> </div>
<a-divider type='horizontal' /> <a-divider type='horizontal' />
<div style="height: 580px; overflow: scroll">
<a-form :form='labelForm'> <a-form :form='labelForm'>
<a-form-item label='标签名' :label-col="{span:3}" :wrapper-col="{span:15}"> <a-form-item label='标签名' :label-col="{span:3}" :wrapper-col="{span:15}">
<a-input placeholder='请输入标签名' v-decorator="['labelName',{validateTrigger:'blur', initialValue: jsonData.labelName?jsonData.labelName: '', rules: [{required: true, message: '请填写标签名!'}]}]"></a-input> <a-input placeholder='请输入标签名' v-decorator="['labelName',{validateTrigger:'blur', initialValue: jsonData.labelName?jsonData.labelName: '', rules: [{required: true, message: '请填写标签名!'}]}]"></a-input>
</a-form-item> </a-form-item>
<a-form-item label='标签分组' :label-col="{span:3}" :wrapper-col="{span:7}"> <a-row>
<a-select v-decorator="['parentId',{validateTrigger:'blur', initialValue: jsonData.parentId?jsonData.parentId: '0', rules: []}]"> <a-col :span='12'>
<a-select-option value='0'>无(将改标签设为一级标签)</a-select-option> <a-form-item label='标签分组' :label-col="{span:6}" :wrapper-col="{span:16}">
<a-select v-decorator="['parentId',{validateTrigger:'blur', initialValue: jsonData.parentId?jsonData.parentId: '', rules: [{required: verifySelect, message: '请选择标签分组!'}]}] " placeholder='请选择分组'>
<a-select-option value=''>其他</a-select-option>
<a-select-option v-for="(item, index) in parentLabelList" :key='index' :value='item.id'> <a-select-option v-for="(item, index) in parentLabelList" :key='index' :value='item.id'>
{{item.labelName}} {{item.labelName}}
</a-select-option> </a-select-option>
</a-select> </a-select>
<!-- <a-input placeholder='请输入分组名称' v-decorator="['parentName',{validateTrigger:'blur', initialValue: jsonData.parentName?jsonData.parentName: '', rules: [{required: true, message: '请填写标签分组名!'}]}]"></a-input> -->
</a-form-item> </a-form-item>
</a-col>
<a-col :span='12'>
<a-form-item :label-col="{span:1}" :wrapper-col="{span:12}" v-if="labelForm.getFieldValue('parentId') == ''">
<a-input placeholder='请输入分组名称' v-decorator="['parentName',{validateTrigger:'blur', initialValue: jsonData.parentName?jsonData.parentName: '', rules: [{required: verifyInput, message: '请填写标签分组名!'}]}]"></a-input>
</a-form-item>
</a-col>
</a-row>
<a-form-item label='业务对象' :label-col="{span:3}" :wrapper-col="{span:15}"> <a-form-item label='业务对象' :label-col="{span:3}" :wrapper-col="{span:15}">
<a-select placeholder='请选择业务对象' :disabled="triggerType == 'loadChildLabel'" @change='handleObjChange' v-decorator="['tableName',{validateTrigger:'blur', initialValue: jsonData.tableName?jsonData.tableName: '', rules: [{required: true, message: '请选择业务对象!'}]}]"> <!-- <a-select placeholder='请选择业务对象' :disabled="triggerType == 'loadChildLabel'" @change='handleObjChange' v-decorator="['tableName',{validateTrigger:'blur', initialValue: jsonData.tableName?jsonData.tableName: '', rules: [{required: true, message: '请选择业务对象!'}]}]"> -->
<a-select placeholder='请选择业务对象' @change='handleObjChange' v-decorator="['tableName',{validateTrigger:'blur', initialValue: jsonData.tableName?jsonData.tableName: '', rules: [{required: true, message: '请选择业务对象!'}]}]">
<a-select-option value='tbl_community'>小区</a-select-option> <a-select-option value='tbl_community'>小区</a-select-option>
<a-select-option value='tbl_building'>门牌幢</a-select-option> <a-select-option value='tbl_building'>门牌幢</a-select-option>
</a-select> </a-select>
</a-form-item> </a-form-item>
</a-form> </a-form>
<a-divider type='horizontal' />
<a-row style="font-weight: bold; font-size: 16px;">信息筛选配置</a-row> <a-row style="font-weight: bold; font-size: 16px;">信息筛选配置</a-row>
<a-divider type='horizontal' dashed />
<a-form :form='infoSettingForm' layout='inline'> <a-form :form='infoSettingForm' layout='inline'>
<div v-for="(item, index) in loopContent.data" :key='index'> <div v-for="(item, index) in loopContent.data" :key='index'>
<a-form-item v-if="!!item.relation"> <a-form-item v-if="!!item.relation">
...@@ -91,7 +105,9 @@ ...@@ -91,7 +105,9 @@
</div> </div>
</a-form> </a-form>
<a-button type='link' v-if="loopContent.data.length == 0" @click="addInitRow()"><a-icon type="plus" />新增配置</a-button> <!-- <a-button type='link' v-if="loopContent.data.length == 0" @click="addInitRow()"><a-icon type="plus" />新增配置</a-button> -->
<a-row v-if="loopContent.data.length == 0">请选择业务对象后填写筛选配置</a-row>
</div>
<!-- <div v-if="resultList.length > 0"> <!-- <div v-if="resultList.length > 0">
<a-divider type='horizontal' /> <a-divider type='horizontal' />
<a-row style="font-weight: bold">筛选结果</a-row> <a-row style="font-weight: bold">筛选结果</a-row>
...@@ -120,6 +136,8 @@ export default { ...@@ -120,6 +136,8 @@ export default {
selMet: '' selMet: ''
}] }]
}, },
verifySelect: false,
verifyInput: false,
jsonData: {}, jsonData: {},
deleteVisible: false, deleteVisible: false,
confirmVisible: false, confirmVisible: false,
...@@ -202,6 +220,15 @@ export default { ...@@ -202,6 +220,15 @@ export default {
}, },
handleObjChange(val) { handleObjChange(val) {
this.getKeyList(val) this.getKeyList(val)
this.loopContent.data = [{
key: '',
codition: 'eq',
val: '',
selMet: ''
}]
this.infoSettingForm.resetFields()
// 重置key表项的值为空 或 业务对象干脆disable掉 // 重置key表项的值为空 或 业务对象干脆disable掉
}, },
getKeyList(val) { getKeyList(val) {
...@@ -323,8 +350,9 @@ export default { ...@@ -323,8 +350,9 @@ export default {
}, },
resetFormFields() { resetFormFields() {
this.loopContent.data = [] this.loopContent.data = []
this.labelForm.resetFields()
this.resultList = [] this.resultList = []
this.labelForm.resetFields()
this.jsonData = {selParams: []}
}, },
handleConfirmVisible() { handleConfirmVisible() {
if(!!this.labelId) { if(!!this.labelId) {
...@@ -337,8 +365,6 @@ export default { ...@@ -337,8 +365,6 @@ export default {
this.resetFormFields() this.resetFormFields()
this.finish = true this.finish = true
this.$emit('finish', this.finish) this.$emit('finish', this.finish)
} else {
this.$message.success('修改失败!')
} }
}) })
} else { } else {
...@@ -361,6 +387,19 @@ export default { ...@@ -361,6 +387,19 @@ export default {
this.confirmVisible = !this.confirmVisible this.confirmVisible = !this.confirmVisible
}, },
save() { save() {
if(this.loopContent.data.length == 0) {
this.$message.error('请至少添加一项配置')
} else {
// 判断是否选择分组或填写分组
console.log(!!this.labelForm.getFieldValue('parentId'))
if(!!this.labelForm.getFieldValue('parentId')) {
this.verifyInput = false
this.verifySelect = true
} else {
this.verifyInput = true
this.verifySelect = false
}
this.jsonData = {selParams: []} this.jsonData = {selParams: []}
this.labelForm.validateFields((err, values) => { this.labelForm.validateFields((err, values) => {
if(!err) { if(!err) {
...@@ -386,28 +425,18 @@ export default { ...@@ -386,28 +425,18 @@ export default {
}).then(res => { }).then(res => {
if (res.code == 200) { if (res.code == 200) {
if(res.data == null) { if(res.data == null) {
console.log(1)
this.$message.error('该标签无搜索结果,标签添加失败!') this.$message.error('该标签无搜索结果,标签添加失败!')
} else if(!!res.data.content) { } else if(!!res.data.content) {
if(res.data.content.length > 0) { if(res.data.content.length > 0) {
this.resultList = res.data.content this.resultList = res.data.content
this.confirmVisible = !this.confirmVisible this.confirmVisible = !this.confirmVisible
} else { } else {
console.log(2)
this.$message.error('该标签无搜索结果,标签添加失败!') this.$message.error('该标签无搜索结果,标签添加失败!')
} }
} else { } else {
} }
// 如果查询到content里有内容,则在下方以表格的形式展示出来。否则提示无匹配数据。
// if(res.data !== null || res.data.content.length !== 0) {
// this.resultList = res.data.content
// this.confirmVisible = !this.confirmVisible
// // 提交标签内容, 如果有labelId则调用put接口,反之调用post接口
// } else {
// this.$message.error('该标签无搜索结果,标签添加失败!')
// }
// this.$message.success('修改成功!')
// this.resetFormFields()
// this.finish = true
// this.$emit('finish', this.finish)
} else { } else {
this.$message.error('接口报错,报错码 ' + res.code + ', 请稍后重试!') this.$message.error('接口报错,报错码 ' + res.code + ', 请稍后重试!')
} }
...@@ -416,6 +445,7 @@ export default { ...@@ -416,6 +445,7 @@ export default {
}) })
} }
}) })
}
}, },
}, },
} }
......
...@@ -4,7 +4,9 @@ ...@@ -4,7 +4,9 @@
<div> <div>
<a-row> <a-row>
<a-col :span='1'> <a-col :span='1'>
<a-button type='default' @click="backPage()">返回</a-button> <div class="detailOperations">
<a-button @click="backPage"> 返回 </a-button>
</div>
</a-col> </a-col>
<a-col :span='1' :offset='1'> <a-col :span='1' :offset='1'>
<a-button type='primary' @click="save()">保存</a-button> <a-button type='primary' @click="save()">保存</a-button>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment