Browse Source

门类管理 基本信息 后台接口调试

master
z_yu 3 years ago
parent
commit
dc0d01576f
  1. 3
      src/views/archivesConfig/dict/dictDetail.vue
  2. 69
      src/views/category/baseInfo/index.vue
  3. 1202
      src/views/category/fieldManage/data1.json
  4. 54
      src/views/category/fieldManage/index.vue
  5. 32
      src/views/category/index.vue

3
src/views/archivesConfig/dict/dictDetail.vue

@ -89,7 +89,8 @@ export default {
header(), header(),
form(function() { form(function() {
return Object.assign({ dicPid: this.dicPid }, defaultForm) return Object.assign({ dicPid: this.dicPid }, defaultForm)
})],
})
],
props: { props: {
activeAddBtn: { activeAddBtn: {
type: Boolean type: Boolean

69
src/views/category/baseInfo/index.vue

@ -1,43 +1,29 @@
<template> <template>
<div class="base-info"> <div class="base-info">
<!-- <el-form ref="form" :model="form" size="small" label-width="80px">
<el-form-item label="门类名称" prop="fieldCnName">
<el-input v-model="form.fieldCnName" class="input-width" :disabled="true" />
</el-form-item>
<el-form-item label="门类类型" prop="isDataType">
<el-select v-model="form.isDataType" placeholder="请选择" class="input-width" :disabled="true">
<el-option label="区域二" value="beijing" />
</el-select>
</el-form-item>
<el-form-item label="关联父级" prop="fieldName">
<el-input v-model="form.fieldName" class="input-width" :disabled="true" />
</el-form-item>
<el-form-item label="档号规则" prop="isColumnLength">
<el-input v-model="form.isColumnLength" class="input-width" :disabled="true" />
</el-form-item>
<el-form-item label="内容说明" prop="isDefaultValue">
<el-input v-model="form.isDefaultValue" type="textarea" :rows="4" class="input-width" :disabled="true" />
</el-form-item>
</el-form> -->
<div class="info-item"> <div class="info-item">
<span>门类名称</span> <span>门类名称</span>
<p>{{ baseInfo.fieldCnName }}</p>
<p>{{ selectedCategory.cnName }}</p>
</div> </div>
<div class="info-item"> <div class="info-item">
<span>门类类型</span> <span>门类类型</span>
<p>{{ baseInfo.isDataType }}</p>
<p v-if="selectedCategory.isType == 1">文件夹</p>
<p v-else-if="selectedCategory.isType == 2">项目</p>
<p v-else-if="selectedCategory.isType == 3">案卷</p>
<p v-else-if="selectedCategory.isType == 4">卷内</p>
<p v-else-if="selectedCategory.isType == 5">文件</p>
<p v-else />
</div> </div>
<div class="info-item">
<div v-if="selectedCategory.pid !== null" class="info-item">
<span>关联父级</span> <span>关联父级</span>
<p>{{ baseInfo.fieldName }}</p>
<p>{{ selectedCategory.parentName }}</p>
</div> </div>
<div class="info-item">
<div v-if="selectedCategory.isType !== 1 && selectedCategory.isType !== 2" class="info-item">
<span>档号规则</span> <span>档号规则</span>
<p>{{ baseInfo.isColumnLength }}</p>
<p>{{ selectedCategory.isColumnLength }}</p>
</div> </div>
<div class="info-item info-content"> <div class="info-item info-content">
<span>内容说明</span> <span>内容说明</span>
<p>{{ baseInfo.isDefaultValue }}</p>
<p>{{ selectedCategory.remark }}</p>
</div> </div>
</div> </div>
</template> </template>
@ -45,16 +31,23 @@
<script> <script>
export default { export default {
name: 'BaseInfo', name: 'BaseInfo',
props: {
selectedCategory: {
type: Object,
default: function() {
return {
cnName: '',
isType: '',
parentName: '',
isColumnLength: '',
remark: ''
}
}
}
},
data() { data() {
return { return {
showFields: [],
baseInfo: {
fieldCnName: '',
isDataType: '',
fieldName: '',
isColumnLength: '',
isDefaultValue: ''
}
showFields: []
} }
}, },
mounted() { mounted() {
@ -68,11 +61,11 @@ export default {
@import "~@/assets/styles/variables.scss"; @import "~@/assets/styles/variables.scss";
.base-info { .base-info {
padding: 20px; padding: 20px;
.info-item{
.info-item {
display: flex; display: flex;
font-size: 14px; font-size: 14px;
margin-bottom: 30px; margin-bottom: 30px;
span{
span {
display: block; display: block;
width: 80px; width: 80px;
height: 36px; height: 36px;
@ -80,7 +73,7 @@ export default {
font-weight: bold; font-weight: bold;
color: $subMenuActiveText; color: $subMenuActiveText;
} }
p{
p {
width: 340px; width: 340px;
padding: 0 10px; padding: 0 10px;
line-height: 36px; line-height: 36px;
@ -89,7 +82,7 @@ export default {
border-radius: 4px; border-radius: 4px;
} }
} }
.info-content p{
.info-content p {
height: 120px; height: 120px;
} }
} }

1202
src/views/category/fieldManage/data1.json
File diff suppressed because it is too large
View File

54
src/views/category/fieldManage/index.vue

@ -76,7 +76,6 @@ import { add, edit } from '@/api/archivesConfig/field'
import eForm from './module/form' import eForm from './module/form'
import CRUD, { presenter } from '@crud/crud' import CRUD, { presenter } from '@crud/crud'
import crudOperation from '@crud/CRUD.operation' import crudOperation from '@crud/CRUD.operation'
import data1 from './data1.json'
export default { export default {
components: { eForm, crudOperation }, components: { eForm, crudOperation },
@ -84,7 +83,7 @@ export default {
cruds() { cruds() {
return CRUD({ return CRUD({
tag: 'field', tag: 'field',
// url: 'api/field/findGroupType',
url: 'api/archives-type/manage',
crudMethod: { add, edit }, crudMethod: { add, edit },
title: '字段', title: '字段',
// delete // delete
@ -94,10 +93,17 @@ export default {
del: false, del: false,
download: false, download: false,
group: false group: false
},
queryOnPresenterCreated: false
}
}) })
}, },
props: {
selectedCategory: {
type: Object,
default: function() {
return {}
}
}
},
data() { data() {
return { return {
permission: { permission: {
@ -116,28 +122,28 @@ export default {
delLoading: false delLoading: false
} }
}, },
created() {
// this.crud.title = this.title
// this.crud.query = {
// isType: this.isType
// }
// this.crud.toQuery()
this.crud.data = data1
watch: {
selectedCategory: function(newValue, oldValue) {
this.crud.refresh()
}
}, },
// beforeCreate() {
// this.crud.query = {
// categoryId: this.selectedCategory.id
// }
// },
// created() {
// // this.crud.title = this.title
// // this.crud.query = {
// // isType: this.isType
// // }
// // this.crud.toQuery()
// },
methods: { methods: {
// [CRUD.HOOK.beforeToCU](crud, form, btn) {
// if (this.showVerifyDialog) {
// //
// this.verifyDialogVisible = true
// this.btn = btn
// return false
// }
// },
// [CRUD.HOOK.beforeToEdit](crud, form, btn) {
// if (form.isColumnLength === null) {
// form.isColumnLength = undefined
// }
// },
//
[CRUD.HOOK.beforeRefresh]() {
this.crud.query.categoryId = this.selectedCategory.id
},
clickRowHandler(row) { clickRowHandler(row) {
this.$refs.fieldTable.clearSelection() this.$refs.fieldTable.clearSelection()
this.$refs.fieldTable.toggleRowSelection(row) this.$refs.fieldTable.toggleRowSelection(row)

32
src/views/category/index.vue

@ -50,15 +50,15 @@
<span class="left-bottom-line" /> <span class="left-bottom-line" />
<ul class="tab-nav"> <ul class="tab-nav">
<li :class="{'active-tab-nav': activeIndex == 0}" @click="changeActiveTab(0)">基本信息<i /></li> <li :class="{'active-tab-nav': activeIndex == 0}" @click="changeActiveTab(0)">基本信息<i /></li>
<li :class="{'active-tab-nav': activeIndex == 1}" @click="changeActiveTab(1)">门类字段管理<i /></li>
<li :class="{'active-tab-nav': activeIndex == 2}" @click="changeActiveTab(2)">著录界面管理<i /></li>
<li :class="{'active-tab-nav': activeIndex == 3}" @click="changeActiveTab(3)">列表界面浏览设置<i /></li>
<li :class="{'active-tab-nav': activeIndex == 4}" @click="changeActiveTab(4)">浏览排序规则设置<i /></li>
<li :class="{'active-tab-nav': activeIndex == 5}" @click="changeActiveTab(5)">档号规则设置<i /></li>
<li v-if="selectedCategory.isType && selectedCategory.isType !== 1 && selectedCategory.isType !== 2" :class="{'active-tab-nav': activeIndex == 1}" @click="changeActiveTab(1)">门类字段管理<i /></li>
<li v-if="selectedCategory.isType && selectedCategory.isType !== 1 && selectedCategory.isType !== 2" :class="{'active-tab-nav': activeIndex == 2}" @click="changeActiveTab(2)">著录界面管理<i /></li>
<li v-if="selectedCategory.isType && selectedCategory.isType !== 1 && selectedCategory.isType !== 2" :class="{'active-tab-nav': activeIndex == 3}" @click="changeActiveTab(3)">列表界面浏览设置<i /></li>
<li v-if="selectedCategory.isType && selectedCategory.isType !== 1 && selectedCategory.isType !== 2" :class="{'active-tab-nav': activeIndex == 4}" @click="changeActiveTab(4)">浏览排序规则设置<i /></li>
<li v-if="selectedCategory.isType && selectedCategory.isType !== 1 && selectedCategory.isType !== 2" :class="{'active-tab-nav': activeIndex == 5}" @click="changeActiveTab(5)">档号规则设置<i /></li>
<!-- 最右侧装饰img --> <!-- 最右侧装饰img -->
<span class="tab-right-img" /> <span class="tab-right-img" />
</ul> </ul>
<component :is="comName" />
<component :is="comName" :selected-category="selectedCategory" />
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
@ -92,20 +92,13 @@ export default {
del: false, del: false,
download: false, download: false,
group: false group: false
},
confirmDeleteMsg: '确定要删除当前字典吗',
sort: ['dicSequence,asc']
}
}) })
] ]
}, },
mixins: [presenter(), header()], mixins: [presenter(), header()],
data() { data() {
return { return {
rules: {
dicName: [
{ required: true, message: '请输入字典名称', trigger: 'blur' }
]
},
permission: { permission: {
add: ['admin', 'category:add'], add: ['admin', 'category:add'],
edit: ['admin', 'category:edit'], edit: ['admin', 'category:edit'],
@ -116,10 +109,9 @@ export default {
children: 'children', children: 'children',
label: 'cnName' label: 'cnName'
}, },
// activeAddBtn: false,
deleteVisible: false, deleteVisible: false,
reconfirmDeleteVisible: false, reconfirmDeleteVisible: false,
// sortVisible: false,
selectedCategory: {},
deleteData: {}, deleteData: {},
activeIndex: 0, activeIndex: 0,
sortLoading: false sortLoading: false
@ -152,16 +144,12 @@ export default {
// } // }
// return true // return true
// }, // },
//
//
handleNodeClick(val) { handleNodeClick(val) {
if (val) { if (val) {
this.crud.selectionChangeHandler([val]) this.crud.selectionChangeHandler([val])
this.$refs.eform.pid = val.id this.$refs.eform.pid = val.id
// console.log(this.crud.selectionChangeHandler([val]))
// this.$refs.dictDetail.query.id = val.id
// this.$refs.dictDetail.dicPid = val.id
// this.$refs.dictDetail.crud.toQuery()
// this.activeAddBtn = true
this.selectedCategory = val
} }
}, },
updateKeyChildren(data) { updateKeyChildren(data) {

Loading…
Cancel
Save