【update】标签管理-代码的优化
This commit is contained in:
@@ -193,4 +193,16 @@ code: {
|
||||
style="width: 100%" :formatter="limitNumber" :parser="limitNumber"/>
|
||||
</a-form-model-item>
|
||||
</a-col>
|
||||
```
|
||||
```
|
||||
|
||||
5、表格内插槽 禁止用span 包裹,用template 或者div
|
||||
```html
|
||||
<div slot="action" slot-scope="text, record">
|
||||
<a class="action-edit" @click="handleEdit(record)" v-has="'area:edit'"
|
||||
>{{ $t('edit') }}</a>
|
||||
<a class="table-del" @click="handleDelete(record.id)" v-has="'area:delete'"
|
||||
>{{ $t('delete') }}</a>
|
||||
</div>
|
||||
```
|
||||
|
||||
6、
|
||||
+15
-2
@@ -99,8 +99,16 @@ export const transitRESTful = {
|
||||
}
|
||||
|
||||
// 标签管理- 展示区域查询接口
|
||||
const getShowAreaData = (params) => getAction('/tag/onlCgformArea/queryShowArea', params)
|
||||
const getShowAreaData = (params) => getAction('/tag/LawsArea/queryShowArea', params)
|
||||
// 标签管理-展示区域管理-新增
|
||||
const addAreaData = (params) => postAction('/tag/LawsArea/add', params)
|
||||
// 标签管理-展示区域管理-编辑
|
||||
const editAreaData = (params) => postAction('/tag/LawsArea/edit', params)
|
||||
|
||||
// 标签管理- 新增
|
||||
const addTag = (params) => postAction('/tag/lawsTag/add', params)
|
||||
// 标签管理- 编辑
|
||||
const editTag = (params) => postAction('/tag/lawsTag/edit', params)
|
||||
// 通过文件的id获取文件的相应信息
|
||||
const getFileInfo = (params) => getAction('/sys/oss/file/queryById', params)
|
||||
|
||||
@@ -162,5 +170,10 @@ export {
|
||||
getDictItemsFromCache,
|
||||
|
||||
getShowAreaData,
|
||||
getFileInfo
|
||||
addAreaData,
|
||||
editAreaData,
|
||||
getFileInfo,
|
||||
|
||||
addTag,
|
||||
editTag
|
||||
}
|
||||
|
||||
@@ -116,9 +116,9 @@
|
||||
<a-icon slot="addonAfter" type="setting" @click="selectIcons" />
|
||||
</a-input>
|
||||
</a-form-model-item>
|
||||
|
||||
<!--v-show="show"-->
|
||||
<a-form-model-item
|
||||
v-show="show"
|
||||
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
prop="sortNo"
|
||||
@@ -184,10 +184,11 @@
|
||||
<script>
|
||||
import { addPermission, editPermission, queryTreeList, duplicateCheck } from '@/api/api'
|
||||
import Icons from './icon/Icons'
|
||||
import JDictSelectTag from '../../../components/dict/JDictSelectTag'
|
||||
|
||||
export default {
|
||||
name: 'PermissionModal',
|
||||
components: { Icons },
|
||||
components: { Icons, JDictSelectTag },
|
||||
data () {
|
||||
return {
|
||||
drawerWidth: 700,
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<a-form-model ref="form" :model="model" :rules="validatorRules" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<!--所属模块-->
|
||||
<a-form-model-item :label="$t('system.tag.module')" prop="isModel">
|
||||
<a-select :placeholder="$t('pleaseSelect') + $t('system.tag.module')" v-model="model.isModel">
|
||||
<a-select :placeholder="$t('pleaseSelect') + $t('system.tag.module')" disabled v-model="model.isModel">
|
||||
<a-select-option v-for="item in moduleArr" :key="item.value" :value="item.value">
|
||||
{{ translate(item.langKey) }}
|
||||
</a-select-option>
|
||||
@@ -39,9 +39,9 @@
|
||||
:maxLength="50"
|
||||
></a-input>
|
||||
</a-form-model-item>
|
||||
<!--序号-->
|
||||
<a-form-model-item :label="$t('dict.rankingValue')" prop="sortOrder">
|
||||
<a-input-number :min="1" v-model="model.sortOrder" />
|
||||
<!--排序值-->
|
||||
<a-form-model-item :label="$t('dict.rankingValue')" prop="sort">
|
||||
<a-input-number :min="1" v-model="model.sort" />
|
||||
{{ $t('dict.valueSmallerIsHigher')}}
|
||||
</a-form-model-item>
|
||||
<!--<a-form-model-item :label="$t('system.tag.displayOrder')" prop="orderNum">-->
|
||||
@@ -56,6 +56,7 @@
|
||||
|
||||
<script>
|
||||
import { TagsTypeEnums } from '../../../../enums/commonEnums'
|
||||
import { addAreaData, editAreaData } from '../../../../api/api'
|
||||
|
||||
export default {
|
||||
name: 'AreaFormModal',
|
||||
@@ -102,7 +103,7 @@ export default {
|
||||
{ required: true, message: this.$t('pleaseEnter') + this.$t('system.tag.showArea'), trigger: 'blur' },
|
||||
{ min: 1, max: 50, message: this.$t('charactersLength'), trigger: 'blur' }
|
||||
],
|
||||
sortOrder: [
|
||||
sort: [
|
||||
{ required: true, message: this.$t('enterSortingNumber'), trigger: 'change' }
|
||||
]
|
||||
},
|
||||
@@ -113,14 +114,14 @@ export default {
|
||||
add () {
|
||||
// 初始化默认值
|
||||
this.edit({
|
||||
isModel: this.type
|
||||
isModel: this.type,
|
||||
sort: 1
|
||||
})
|
||||
},
|
||||
edit (record) {
|
||||
if (record.id) {
|
||||
|
||||
}
|
||||
this.model = Object.assign({}, record)
|
||||
// 所属模块-转化成NUMBER 方便回显
|
||||
this.model.isModel = Number(this.model.isModel)
|
||||
this.visible = true
|
||||
},
|
||||
translate (key) {
|
||||
@@ -129,23 +130,23 @@ export default {
|
||||
handleOk () {
|
||||
this.$refs.form.validate(valid => {
|
||||
if (valid) {
|
||||
// this.confirmLoading = true
|
||||
// const formData = Object.assign({}, this.model)
|
||||
// let Func
|
||||
// if (record.id) {
|
||||
// Func = ''
|
||||
// }
|
||||
// Func(formData).then(res => {
|
||||
// if (res.success) {
|
||||
// this.$message.success(res.message)
|
||||
// this.$emit('ok')
|
||||
// this.close()
|
||||
// } else {
|
||||
// this.$message.error(res.message)
|
||||
// }
|
||||
// }).finally(() => {
|
||||
// this.confirmLoading = false
|
||||
// })
|
||||
this.confirmLoading = true
|
||||
const formData = Object.assign({}, this.model)
|
||||
let Func = addAreaData
|
||||
if (this.model.id) {
|
||||
Func = editAreaData
|
||||
}
|
||||
Func(formData).then(res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$emit('ok')
|
||||
this.close()
|
||||
} else {
|
||||
this.$message.error(res.message)
|
||||
}
|
||||
}).finally(() => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
@cancel="handleCancel">
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<div class="table-operator">
|
||||
<div class="operator-text" @click="handleAdd">
|
||||
<div class="operator-text" @click="handleAdd" v-has="'area:add'">
|
||||
<a-icon type="plus" />
|
||||
{{$t('add')}}
|
||||
</div>
|
||||
@@ -40,15 +40,15 @@
|
||||
</template>
|
||||
|
||||
<div slot="action" slot-scope="text, record">
|
||||
<a class="action-edit" @click="handleEdit(record.id)"
|
||||
<a class="action-edit" @click="handleEdit(record)" v-has="'area:edit'"
|
||||
>{{ $t('edit') }}</a>
|
||||
<a class="table-del" @click="handleDelete(record.id)"
|
||||
<a class="table-del" @click="handleDelete(record.id)" v-has="'area:delete'"
|
||||
>{{ $t('delete') }}</a>
|
||||
</div>
|
||||
</a-table>
|
||||
</a-spin>
|
||||
<!--新增表单-->
|
||||
<area-form-modal v-bind="$props" ref="modalForm"></area-form-modal>
|
||||
<area-form-modal v-bind="$props" ref="modalForm" @ok="modalFormOk"></area-form-modal>
|
||||
</j-modal>
|
||||
</template>
|
||||
|
||||
@@ -57,6 +57,7 @@ import '@assets/less/common.less'
|
||||
import AreaFormModal from './AreaFormModal'
|
||||
import { TagsTypeEnums } from '../../../../enums/commonEnums'
|
||||
import { SimpleListMixin } from '../../../../mixins/SimpleListMixin'
|
||||
import { postAction } from '../../../../api/manage'
|
||||
|
||||
export default {
|
||||
name: 'AreaModal',
|
||||
@@ -78,6 +79,15 @@ export default {
|
||||
width: 800,
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
url: {
|
||||
list: 'tag/LawsArea/page',
|
||||
delete: 'tag/LawsArea/delete',
|
||||
deleteBatch: 'tag/LawsArea/deleteBatch'
|
||||
},
|
||||
// 其他查询参数
|
||||
filters: {
|
||||
isModel: this.type
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('system.tag.showArea'),
|
||||
@@ -115,6 +125,11 @@ export default {
|
||||
width: 60
|
||||
}
|
||||
],
|
||||
/* 排序参数--按照排序字段失序 */
|
||||
isorter: {
|
||||
column: 'sort',
|
||||
order: 'ascend'
|
||||
},
|
||||
disableMixinCreated: true // 默认不加载数据
|
||||
}
|
||||
},
|
||||
@@ -136,7 +151,38 @@ export default {
|
||||
showModal () {
|
||||
this.title = this.$t('add')
|
||||
this.newVisible = true
|
||||
}
|
||||
},
|
||||
// 新增编辑回调函数
|
||||
modalFormOk () {
|
||||
this.$emit('refresh')
|
||||
this.loadData()
|
||||
},
|
||||
handleDelete: function (id) {
|
||||
if (!this.url.delete) {
|
||||
this.$message.error('请设置url.delete属性!')
|
||||
return
|
||||
}
|
||||
const that = this
|
||||
this.$confirm({
|
||||
title: '确认删除',
|
||||
content: '确定要删除此条数据吗?',
|
||||
onOk: function () {
|
||||
postAction(that.url.delete, { id: id }).then((res) => {
|
||||
if (res.success) {
|
||||
that.$message.success(res.message)
|
||||
// 判断当前删除的数据是否是最后一页的最后一条数据,如果是的话页码减一
|
||||
if (that.ipagination.current > 1 && ((that.ipagination.current - 1) * that.ipagination.pageSize) + 1 === that.ipagination.total) {
|
||||
that.ipagination.current -= 1
|
||||
}
|
||||
this.$emit('refresh')
|
||||
that.loadData()
|
||||
} else {
|
||||
that.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -161,7 +161,7 @@
|
||||
|
||||
<script>
|
||||
|
||||
import { getShowAreaData, queryDictName } from '../../../../api/api'
|
||||
import { addTag, editTag, getShowAreaData, queryDictName } from '../../../../api/api'
|
||||
import JDictSelectTag from '../../../../components/dict/JDictSelectTag'
|
||||
import { TagsTypeEnums } from '../../../../enums/commonEnums'
|
||||
|
||||
@@ -331,6 +331,23 @@ export default {
|
||||
this.$refs.editForm.validate((valid) => {
|
||||
console.log('---err-----', valid)
|
||||
if (valid) {
|
||||
this.confirmLoading = true
|
||||
const formData = Object.assign({}, this.form)
|
||||
let Func = addTag
|
||||
if (this.isEdit) {
|
||||
Func = editTag
|
||||
}
|
||||
Func(formData).then(res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$emit('ok')
|
||||
this.onClose()
|
||||
} else {
|
||||
this.$message.error(res.message)
|
||||
}
|
||||
}).finally(() => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<j-modal
|
||||
title="title"
|
||||
:title="title"
|
||||
:width="width"
|
||||
:visible="visible"
|
||||
switchFullscreen
|
||||
@@ -49,6 +49,7 @@
|
||||
|
||||
<script>
|
||||
import JDictSelectTag from '../../../../components/dict/JDictSelectTag'
|
||||
import { addDict, editDict } from '../../../../api/api'
|
||||
|
||||
export default {
|
||||
name: 'TagContentModal',
|
||||
@@ -90,38 +91,42 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
add (dictId) {
|
||||
this.dictId = dictId
|
||||
add () {
|
||||
// this.dictId = dictId
|
||||
this.isEdit = false
|
||||
// 初始化默认值
|
||||
this.edit({})
|
||||
},
|
||||
edit (record) {
|
||||
if (record.id) {
|
||||
this.dictId = record.dictId
|
||||
this.isEdit = true
|
||||
}
|
||||
this.status = record.status
|
||||
this.visibleCheck = (record.status === 1)
|
||||
this.model = Object.assign({}, record)
|
||||
this.model.dictId = this.dictId
|
||||
this.model.status = this.status
|
||||
// this.model.dictId = this.dictI
|
||||
// this.model.status = this.status
|
||||
this.visible = true
|
||||
},
|
||||
handleOk () {
|
||||
// 这块的新增、编辑直接用数据字典的接口
|
||||
this.$refs.form.validate(valid => {
|
||||
if (valid) {
|
||||
// this.confirmLoading = true
|
||||
// const formData = Object.assign(this.model, values)
|
||||
// changePromoter(formData).then(res => {
|
||||
// if (res.success) {
|
||||
// this.$message.success(res.message)
|
||||
// this.$emit('ok')
|
||||
// this.close()
|
||||
// } else {
|
||||
// this.$message.error(res.message)
|
||||
// }
|
||||
// }).finally(() => {
|
||||
// this.confirmLoading = false
|
||||
// })
|
||||
this.confirmLoading = true
|
||||
let Func = addDict
|
||||
if (this.isEdit) {
|
||||
Func = editDict
|
||||
}
|
||||
const formData = Object.assign({}, this.model)
|
||||
Func(formData).then(res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
this.$emit('ok')
|
||||
this.close()
|
||||
} else {
|
||||
this.$message.error(res.message)
|
||||
}
|
||||
}).finally(() => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
@@ -21,11 +21,11 @@
|
||||
</a-form>
|
||||
</div>
|
||||
<div class="table-operator">
|
||||
<div class="operator-text" @click="handleAdd">
|
||||
<div class="operator-text" @click="handleAdd" v-has="'tag:add'">
|
||||
<a-icon type="plus" />
|
||||
{{ $t('newlyAdded') }}
|
||||
</div>
|
||||
<div class="operator-text" @click="batchDel">
|
||||
<div class="operator-text" @click="batchDel" v-has="'tag:logicDeleteBatch'">
|
||||
<a-icon type="delete" />
|
||||
{{ $t('batchDelete') }}
|
||||
</div>
|
||||
@@ -52,13 +52,13 @@
|
||||
</template>
|
||||
|
||||
<div slot="action" slot-scope="text, record">
|
||||
<a class="action-edit" @click="editVisible(record.id)" v-if="record.isReadOnly===0"
|
||||
<a class="action-edit" @click="handleEdit(record)" v-has="'tag:edit'" v-if="record.isReadOnly===0"
|
||||
>{{ $t('edit') }}</a>
|
||||
<a class="table-del" v-if="record.isReadOnly===2 || record.isReadOnly===0" @click="deleteVisible(record.id)"
|
||||
<a class="table-del" v-if="record.isReadOnly===2 || record.isReadOnly===0" v-has="'tag:logicDelete'" @click="handleDelete(record.id)"
|
||||
>{{ $t('delete') }}</a>
|
||||
</div>
|
||||
</a-table>
|
||||
<clause-splitting-drawer ref="modalForm" v-bind="$props"></clause-splitting-drawer>
|
||||
<clause-splitting-drawer ref="modalForm" v-bind="$props" @ok="modalFormOk"></clause-splitting-drawer>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
@@ -31,15 +31,16 @@
|
||||
</a-form>
|
||||
</div>
|
||||
<div class="table-operator">
|
||||
<div class="operator-text" @click="handleAdd">
|
||||
<div class="operator-text" @click="handleAdd" v-has="'tag:add'">
|
||||
<a-icon type="plus" />
|
||||
{{ $t('newlyAdded') }}
|
||||
</div>
|
||||
<div class="operator-text" @click="handleShow">
|
||||
<!--展示区域管理-->
|
||||
<div class="operator-text" @click="handleShow" v-has="'tag:area:list'">
|
||||
<a-icon type="unordered-list" />
|
||||
{{ $t('system.tag.exhibitionAreaManagement') }}
|
||||
</div>
|
||||
<div class="operator-text" @click="batchDel">
|
||||
<div class="operator-text" @click="batchDel" v-has="'tag:logicDeleteBatch'">
|
||||
<a-icon type="delete" />
|
||||
{{ $t('batchDelete') }}
|
||||
</div>
|
||||
@@ -67,17 +68,17 @@
|
||||
</template>
|
||||
|
||||
<div slot="action" slot-scope="text, record">
|
||||
<a class="action-edit" @click="editVisible(record.id)" v-if="record.isReadOnly===0"
|
||||
<a class="action-edit" @click="handleEdit(record)" v-if="record.isReadOnly===0" v-has="'tag:edit'"
|
||||
>{{ $t('edit') }}</a>
|
||||
<a class="table-del" v-if="record.isReadOnly===2 || record.isReadOnly===0" @click="deleteVisible(record.id)"
|
||||
<a class="table-del" v-if="record.isReadOnly===2 || record.isReadOnly===0" v-has="'tag:logicDelete'" @click="handleDelete(record.id)"
|
||||
>{{ $t('delete') }}</a>
|
||||
</div>
|
||||
</a-table>
|
||||
</div>
|
||||
<!--新增字段-->
|
||||
<standard-drawer ref="modalForm" v-bind="$props"></standard-drawer>
|
||||
<standard-drawer ref="modalForm" v-bind="$props" @ok="modalFormOk"></standard-drawer>
|
||||
<!--区域管理模态框-->
|
||||
<area-modal ref="areaModal" v-bind="$props"></area-modal>
|
||||
<area-modal ref="areaModal" v-bind="$props" @refresh="refreshAreaData"></area-modal>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -109,9 +110,9 @@ export default {
|
||||
areasArr: [],
|
||||
// 混入中查询等相关接口
|
||||
url: {
|
||||
list: 'tag/onlCgformTag/page',
|
||||
delete: 'tag/onlCgformTag/logicDelete',
|
||||
deleteBatch: 'tag/onlCgformTag/logicDeleteBatch'
|
||||
list: 'tag/lawsTag/list',
|
||||
delete: 'tag/lawsTag/logicDelete',
|
||||
deleteBatch: 'tag/lawsTag/logicDeleteBatch'
|
||||
},
|
||||
filters: {
|
||||
isModel: this.type
|
||||
@@ -166,7 +167,7 @@ export default {
|
||||
methods: {
|
||||
// 获取展示区域下拉框数据
|
||||
getShowAreaData () {
|
||||
getShowAreaData({ type: this.type }).then(res => {
|
||||
getShowAreaData({ isModel: this.type }).then(res => {
|
||||
if (res.success) {
|
||||
this.areasArr = res.result || []
|
||||
}
|
||||
@@ -175,6 +176,10 @@ export default {
|
||||
// 展示区域管理
|
||||
handleShow () {
|
||||
this.$refs.areaModal.show()
|
||||
},
|
||||
refreshAreaData () {
|
||||
this.getShowAreaData()
|
||||
this.queryParam.showArea = undefined
|
||||
}
|
||||
},
|
||||
created () {
|
||||
|
||||
@@ -133,9 +133,13 @@ export default {
|
||||
width: 170
|
||||
}
|
||||
],
|
||||
dataSource: [{}],
|
||||
// dataSource: [],
|
||||
url: {
|
||||
list: ''
|
||||
list: 'sys/dict/tagDictPage'
|
||||
},
|
||||
// 增加其他的查询条件
|
||||
filters: {
|
||||
isTagDict: 1 // 是否为标签内容(1是 0否)
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -143,7 +143,6 @@ export const TagListMixin = {
|
||||
this.loadData(1)
|
||||
},
|
||||
batchDel () {
|
||||
console.log("------batchDel-----")
|
||||
if (!this.url.deleteBatch) {
|
||||
this.$message.error('请设置url.deleteBatch属性!')
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user