内容管理

This commit is contained in:
caoyang
2022-02-14 18:12:56 +08:00
parent 3d570c0d8c
commit d3923db674
4 changed files with 99 additions and 25 deletions
@@ -25,7 +25,7 @@
<j-dict-select-tag type="list" v-decorator="['fieldShowType', validatorRules.fieldShowType]" :trigger-change="true" dictCode="attribute_type" placeholder="请选择属性类型" />
</a-form-item>
</a-col>
<a-col :span="24">
<a-col :span="24" v-if="isTagContent">
<a-form-item label="选项内容" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-dict-select-tag type="list" v-decorator="['dictName', validatorRules.dictName]" :trigger-change="true" dictCode="sys_dict,选项内容,dict_name" placeholder="请选择选项内容" />
</a-form-item>
@@ -115,6 +115,10 @@
type: Boolean,
default: false,
required: false
},
isTagContent:{
type: Boolean,
default: false,
}
},
data () {
@@ -270,7 +274,7 @@
httpAction(httpurl,formData,method).then((res)=>{
if(res.success){
that.$message.success(res.message);
that.$emit('ok');
that.$emit('ok',false);
}else{
that.$message.warning(res.message);
@@ -1,6 +1,6 @@
<template>
<div class="new-tag-drawer">
<onl-cgform-tag-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit" normal></onl-cgform-tag-form>
<onl-cgform-tag-form ref="realForm" @ok="submitCallback" :isTagContent="isTagContent" :disabled="disableSubmit" normal> </onl-cgform-tag-form>
<div class="drawer-footer">
<a-button v-if="!disableSubmit" @click="handleOk" type="primary" style="margin-bottom: 0;">保存</a-button>
@@ -28,6 +28,7 @@
},
props:{
drawerVisible:Boolean,
isTagContent:Boolean
},
mounted() {
this.visible=this.drawerVisible
@@ -48,11 +49,12 @@
close () {
this.$emit('close');
this.visible = false;
this.$emit('closeTag',this.visible)
},
submitCallback(){
this.$emit('ok');
this.visible = false;
this.$emit('closeTag',this.visible)
},
handleOk () {
this.$refs.realForm.submitForm();
@@ -20,9 +20,10 @@
<div class="table-operator" style="border-top: 5px">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
</div>
<a-modal class="show-content" v-model="contentVisible" title="新增" ok-text="保存" cancel-text="取消" @ok="hideModal" @cancel="cancelModel">
<a-modal class="show-content" v-model="contentVisible" title="新增" ok-text="保存" cancel-text="取消" @ok="hideModal" @cancel="cancelModel" v-if="contentVisible">
<a-form-model
class="tag-content"
ref="ruleForm"
:model="form"
:rules="rules"
@@ -40,14 +41,7 @@
/>
</a-form-model-item>
<a-form-model-item label="标签类型" prop="tagType">
<a-select v-model="form.tagType" placeholder="请选择标签类型">
<a-select-option value="1">
文本框
</a-select-option>
<a-select-option value="2">
下拉单选
</a-select-option>
</a-select>
<j-dict-select-tag type="list" v-model="form.tagType" dictCode="attribute_type" placeholder="请选择标签类型" />
</a-form-model-item>
<a-form-model-item ref="describe" label="描述" prop="describe">
@@ -62,7 +56,23 @@
</a-form-model-item>
</a-form-model>
</a-modal>
<tab-table :tableData="tableData" :columns="columns"></tab-table>
<a-table bordered :data-source="tableData" :columns="columns" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }">
<template slot="name" slot-scope="text, record">
<editable-cell :text="text" @change="onCellChange(record.key, 'name', $event)" />
</template>
<template slot="operation" slot-scope="text, record">
<a-popconfirm
v-if="dataSource.length"
title="Sure to delete?"
@confirm="() => onDelete(record.key)"
>
<a href="javascript:;">Delete</a>
</a-popconfirm>
</template>
</a-table>
<!-- <tab-table :tableData="tableData" :columns="columns"></tab-table>-->
</div>
</template>
@@ -78,6 +88,7 @@
queryParam:{
tagName:'',
},
selectedRowKeys: [],
contentVisible:false,
tableData:[
{
@@ -123,11 +134,7 @@
],
labelCol: { span: 4 },
wrapperCol: { span: 14 },
form:{
tagName:'',
tagType:'',
describe:''
},
form:{},
rules:{
tagName:[{ required: true, message: '请输入标签名称', trigger: 'change' },
{ min: 1, max: 100, message: 'Length should be 1 to 100', trigger: 'blur' }],
@@ -137,6 +144,12 @@
],
}
}
},
computed:{
},
mounted() {
},
methods:{
searchQuery(){
@@ -149,11 +162,29 @@
this.contentVisible=true
},
hideModal(){
this.contentVisible=false
console.log('form',this.form)
this.$refs.ruleForm.validate((valide)=>{
// console.log('valide',valide)
if(valide){
this.contentVisible=false
}
})
},
cancelModel(){
this.contentVisible=false
}
},
onCellChange(){
},
onDelete(){
},
onSelectChange(selectedRowKeys) {
console.log('selectedRowKeys changed: ', selectedRowKeys);
this.selectedRowKeys = selectedRowKeys;
},
}
}
</script>
@@ -25,11 +25,20 @@
</a-form>
</div>
<div class="table-operator" style="border-top: 5px">
<a-button @click="handleAdd" type="primary" icon="plus">{{$t('add')}}</a-button>
<a-popover placement="right" v-model="typeVisible" trigger="click">
<template slot="content" class="type-popover-content">
<div class="type-popover">
<p class="type type-input" @click="handleAddPop('input')">输入框类型</p>
<p class="type type-select" @click="handleAddPop('select')">下拉选类型</p>
</div>
</template>
<a-button type="primary">{{$t('add')}}</a-button>
</a-popover>
<a-button type="primary" @click="handleShow">展示区域管理</a-button>
</div>
<a-drawer class="show-drawer" title="新增标签项" placement="right" width="1000px" @close="close" :visible="drawerVisible">
<new-drawer v-if="drawerVisible" :editData="editData"></new-drawer>
<a-drawer class="show-drawer" :title="titleTag" placement="right" width="1000px" @close="close" :visible="drawerVisible" :after-visible-change="afterVisibleChange" >
<new-drawer v-if="drawerVisible" :isTagContent="isTagContent" :editData="editData" @closeTag="closeTag"></new-drawer>
</a-drawer>
<a-modal class="show-area" v-model="areaVisible" title="展示区域管理" :footer="null" @cancel="hideModal">
<area-manage v-if="areaVisible" @diaHide="diaHide" :areaTable="areaTable" @submitOk="submitOk" @deleteOk="deleteOk" @updateOk="updateOk"></area-manage>
@@ -69,6 +78,9 @@
page:1,
pageSize:10,
},
titleTag:'新增标签项',
typeVisible:false,
isTagContent:false,
editData:[], //编辑的数据
areas:[
{
@@ -268,13 +280,38 @@
this.editData=res.result
}
})
},
//新增关闭
closeTag(val){
this.drawerVisible=val
},
afterVisibleChange(val){
// console.log('val',val)
},
handleAddPop(val){
this.drawerVisible=true
if(val=='input'){
this.typeVisible=false
this.isTagContent=false
} else if(val='select'){
this.typeVisible=false
this.isTagContent=true
}
}
}
}
</script>
<style lang="less" scoped>
.type-popover{
p{
margin:5px;
}
p:hover{
color: #0c8fcf;
cursor: pointer;
}
}
</style>
<style lang="less">