diff --git a/package.json b/package.json
index c0c964d..b409304 100644
--- a/package.json
+++ b/package.json
@@ -16,6 +16,8 @@
"dependencies": {
"@smallwei/avue": "^2.9.15",
"@tinymce/tinymce-vue": "^3.0.1",
+ "@wangeditor/editor": "^5.1.23",
+ "@wangeditor/editor-for-vue": "^1.0.2",
"af-table-column": "^1.0.3",
"avue-plugin-map": "^1.0.1",
"axios": "0.18.1",
@@ -24,6 +26,7 @@
"element-ui": "2.15.13",
"file-saver": "^2.0.5",
"js-cookie": "2.2.0",
+ "less": "^3.13.1",
"less-loader": "^5.0.0",
"moment": "^2.29.2",
"normalize.css": "7.0.0",
diff --git a/public/favicon.ico b/public/favicon.ico
index c48d62c..66e12c6 100644
Binary files a/public/favicon.ico and b/public/favicon.ico differ
diff --git a/public/favicon1.ico b/public/favicon1.ico
new file mode 100644
index 0000000..c48d62c
Binary files /dev/null and b/public/favicon1.ico differ
diff --git a/src/api/system/baseForm.js b/src/api/system/baseForm.js
index d16d26a..88e2206 100644
--- a/src/api/system/baseForm.js
+++ b/src/api/system/baseForm.js
@@ -1,58 +1,66 @@
-import request from "@/utils/request";
-function customParamsSerializer(params) {
- let result = '';
- for (let key in params) {
- if (params.hasOwnProperty(key)) {
- if (Array.isArray(params[key])) {
- params[key].forEach((item,index) => {
- result += `${key}[${index}][key]=${item.key}&${key}[${index}][op]=${item.op}&${key}[${index}][value]=${item.value}&`;
- });
- } else {
- result += `${key}=${params[key]}&`;
- }
- }
- }
- return result.slice(0, -1);
-}
-export function index(params,isLoading = false) {
- return request({
- method: "get",
- url: "/api/admin/base-form/index",
- params,
- paramsSerializer: customParamsSerializer,
- isLoading
- })
-}
-
-export function show(params, isLoading = true) {
- return request({
- method: "get",
- url: "/api/admin/base-form/show",
- params,
- isLoading
- })
-}
-
-export function save(data) {
- return request({
- method: "post",
- url: "/api/admin/base-form/save",
- data
- })
-}
-
-export function destroy(params) {
- return request({
- method: "get",
- url: "/api/admin/base-form/destroy",
- params
- })
-}
-
-export function imports(data) {
- return request({
- method: "post",
- url: "/api/admin/base-form/import",
- data
- })
+import request from "@/utils/request";
+
+function customParamsSerializer(params) {
+ let result = '';
+ for (let key in params) {
+ if (params.hasOwnProperty(key)) {
+ if (Array.isArray(params[key])) {
+ params[key].forEach((item, index) => {
+ if (item.key) {
+ result +=
+ `${key}[${index}][key]=${item.key}&${key}[${index}][op]=${item.op}&${key}[${index}][value]=${item.value}&`;
+
+ } else {
+ result += `${key}[${index}]=${item}&`
+ }
+ });
+ } else {
+ result += `${key}=${params[key]}&`;
+ }
+ }
+ }
+ return result.slice(0, -1);
+}
+export function index(params, isLoading = false) {
+ return request({
+ method: "get",
+ url: "/api/admin/base-form/index",
+ params,
+ paramsSerializer: customParamsSerializer,
+ isLoading
+ })
+}
+
+export function show(params, isLoading = true) {
+ return request({
+ method: "get",
+ url: "/api/admin/base-form/show",
+ params,
+ // paramsSerializer: customParamsSerializer,
+ isLoading
+ })
+}
+
+export function save(data) {
+ return request({
+ method: "post",
+ url: "/api/admin/base-form/save",
+ data
+ })
+}
+
+export function destroy(params) {
+ return request({
+ method: "get",
+ url: "/api/admin/base-form/destroy",
+ params
+ })
+}
+
+export function imports(data) {
+ return request({
+ method: "post",
+ url: "/api/admin/base-form/import",
+ data
+ })
}
diff --git a/src/assets/logo-mini.png b/src/assets/logo-mini.png
index 8ecb6ba..66e12c6 100644
Binary files a/src/assets/logo-mini.png and b/src/assets/logo-mini.png differ
diff --git a/src/assets/logo.png b/src/assets/logo.png
index 6405818..ab9c765 100644
Binary files a/src/assets/logo.png and b/src/assets/logo.png differ
diff --git a/src/assets/logo1.png b/src/assets/logo1.png
new file mode 100644
index 0000000..131732d
Binary files /dev/null and b/src/assets/logo1.png differ
diff --git a/src/assets/logo2.png b/src/assets/logo2.png
new file mode 100644
index 0000000..d441963
Binary files /dev/null and b/src/assets/logo2.png differ
diff --git a/src/components/XyTinymce/index.vue b/src/components/XyTinymce/index.vue
index eb2dda5..560469d 100644
--- a/src/components/XyTinymce/index.vue
+++ b/src/components/XyTinymce/index.vue
@@ -96,7 +96,8 @@
return false;
}
let formdate = new FormData();
- formdate.append("file", blobInfo.blob()); //imageFile文件名和后端统一
+ formdate.append("file", blobInfo.blob()); //imageFile文件名和后端统一
+ console.log("formdate",formdate)
uploads(formdate).then(res => {
if (res) {
let url = res.url;
diff --git a/src/components/wangEditor/index.vue b/src/components/wangEditor/index.vue
new file mode 100644
index 0000000..950ab6d
--- /dev/null
+++ b/src/components/wangEditor/index.vue
@@ -0,0 +1,154 @@
+
+
+
+
+
+ {{ useLen }}/{{ maxlength }}
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Logo.vue b/src/layout/components/Sidebar/Logo.vue
index 5f7632d..a8c0da2 100644
--- a/src/layout/components/Sidebar/Logo.vue
+++ b/src/layout/components/Sidebar/Logo.vue
@@ -36,8 +36,8 @@
transition: opacity 1.5s;
}
.sidebar-name-logo {
- width: 120px;
- height: 22px;
+ width: 75px;
+ // height: 22px;
}
.sidebarLogoFade-enter,
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index c288974..bd0cacb 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -16,6 +16,7 @@ const getDefaultState = () => {
return {
token: getToken(),
name: '',
+ login_id: '',
avatar: '',
roles: []
}
@@ -38,7 +39,10 @@ const mutations = {
},
SET_ROLES: (state, roles) => {
state.roles = roles
- }
+ },
+ SET_LOGINID: (state, login_id) => {
+ state.login_id = login_id
+ },
}
const actions = {
@@ -80,18 +84,21 @@ const actions = {
if (!response) {
reject('身份验证失败请重新登录')
}
- response["roles"] = ["admin"];
+ response["roles"] = ["admin"];
+ response["login_id"] = response['id'];
const {
roles,
name,
- avatar
+ avatar,
+ login_id,
} = response
commit('SET_ROLES', roles)
commit('SET_NAME', name)
- commit('SET_AVATAR', avatar)
+ commit('SET_AVATAR', avatar)
+ commit('SET_LOGINID', login_id)
resolve(response)
}).catch(error => {
reject(error)
diff --git a/src/utils/common.js b/src/utils/common.js
index f5d400e..eb59e7e 100644
--- a/src/utils/common.js
+++ b/src/utils/common.js
@@ -336,7 +336,6 @@ let base = {
flatData.forEach(item => {
idMap[item.id] = item;
});
-
// 创建根节点集合
const rootNodes = [];
@@ -345,13 +344,18 @@ let base = {
if (parseInt(item.pid) === 0) {
rootNodes.push(item);
} else {
- // 否则,将该项添加到父节点的 children 数组中
- const parent = idMap[item.pid];
- console.log("par",parent)
- if (!parent.hasOwnProperty('children')) {
- parent.children = [];
+ // 否则,将该项添加到父节点的 children 数组中
+ if(idMap[item.pid]){
+ const parent = idMap[item.pid];
+ // console.log("par",parent)
+ if (!parent.hasOwnProperty('children')) {
+ parent.children = [];
+ }
+ parent.children.push(item);
+ }else{
+ rootNodes.push(item);
}
- parent.children.push(item);
+
}
});
diff --git a/src/views/organize/index.vue b/src/views/organize/index.vue
index 5353fda..c8c13b1 100644
--- a/src/views/organize/index.vue
+++ b/src/views/organize/index.vue
@@ -24,12 +24,32 @@
+ :table-item="table_item">
+
+
+
+
+
+ {{item.name}}
+
+
+
+
+
+
+
+
+
+ {{item.name}}
+
+
+
+
-
+
- 编辑
+ 编辑
删除
@@ -60,21 +80,21 @@
table_name: 'organizes',
page: 1,
page_size: 10,
- },
- total:0,
+ },
+ total: 0,
list: [],
- table_item: [{
- type:'index',
- width:50
- },{
+ table_item: [{
+ type: 'index',
+ width: 50
+ }, {
prop: 'name',
label: '组织名称',
align: 'left',
- },{
+ }, {
prop: 'originize_type_name',
label: '组织类型',
align: 'left',
- },{
+ }, {
prop: 'area_name',
label: '所属区域',
align: 'left',
@@ -86,36 +106,38 @@
this.getList()
},
methods: {
- editIndex(type, id,pName) {
+ editIndex(type, id, pName) {
if (type == 'editor') {
this.$refs.addIndex.id = id
}
this.$refs.addIndex.type = type
this.$refs.addIndex.isShow = true
- },
- pageIndexChange(e) {
- this.select.page = e
- this.getList()
- },
- pageSizeChange(e) {
- this.select.page_size = e
- this.select.page = 1
- this.getList()
+ },
+ pageIndexChange(e) {
+ this.select.page = e
+ this.getList()
+ },
+ pageSizeChange(e) {
+ this.select.page_size = e
+ this.select.page = 1
+ this.getList()
},
async getList() {
const res = await index({
page_size: this.select.page_size,
page: this.select.page,
- table_name: this.select.table_name,
- sort_type:'ASC',
- sort_name:'sort',
+ table_name: this.select.table_name,
+ sort_type: 'ASC',
+ sort_name: 'sort',
+
+ json_data_fields: ['originize_type_id','area_id'],
filter: [{
"key": "name",
"op": "like",
"value": this.select.name
}],
- })
- this.list = res.data
+ })
+ this.list = res.data
this.total = res.total
},
deleteList(id) {
diff --git a/src/views/organize/type.vue b/src/views/organize/type.vue
index 4c6f8cd..f62bd60 100644
--- a/src/views/organize/type.vue
+++ b/src/views/organize/type.vue
@@ -24,7 +24,17 @@
+ :table-item="table_item">
+
+
+
+
+
+ {{item.name}}
+
+
+
+
@@ -116,6 +126,8 @@
page_size: this.select.page_size,
page: this.select.page,
table_name: this.select.table_name,
+
+ json_data_fields: ['catalog_ids'],
sort_type:'ASC',
sort_name:'sort',
filter: [{
diff --git a/src/views/record/components/addRecord.vue b/src/views/record/components/addRecord.vue
index 6892445..5174ec6 100644
--- a/src/views/record/components/addRecord.vue
+++ b/src/views/record/components/addRecord.vue
@@ -30,13 +30,9 @@
*所属区域:
-
-
-
+
+
+
@@ -44,16 +40,12 @@
@@ -90,7 +82,8 @@
内容:
-
+
+
@@ -105,6 +98,8 @@
show,
index
} from "@/api/system/baseForm.js"
+
+ import wangEditor from '@/components/wangEditor';
import {
deepCopy,
isNull
@@ -114,7 +109,7 @@
} from '@/utils/auth'
export default {
components: {
-
+ wangEditor
},
data() {
return {
@@ -153,21 +148,24 @@
area_ids: [{
required: true,
message: '请选择所属区域'
- }],
- tag_ids: [{
- required: true,
- message: '请选择标签'
}],
+ // tag_ids: [{
+ // required: true,
+ // message: '请选择标签'
+ // }],
}
}
},
created() {
this.uploadOther.token = getToken();
- this.getCatalogList()
- this.getAreaList()
+ this.getCatalogList()
+ this.getAreaList()
this.getTagList()
},
- methods: {
+ methods: {
+ changeEditor(e){
+ this.form.content = e
+ },
async getCatalogList() {
const res = await index({
page_size: 999,
@@ -175,6 +173,7 @@
sort_type: 'ASC',
sort_name: 'sort',
table_name: 'catalogs',
+ is_auth: 1
})
if (res.data.length > 0) {
this.catalogList = this.base.buildTree(res.data)
@@ -198,6 +197,7 @@
sort_type: 'ASC',
sort_name: 'sort',
table_name: 'record_tags',
+ is_auth: 1
})
this.tagList = res.data
@@ -256,7 +256,7 @@
}).then(res => {
this.$message({
type: 'success',
- message: '授权成功'
+ message: '保存成功'
})
this.isShow = false
this.$emit('refresh')
@@ -267,17 +267,20 @@
show({
id: this.id,
table_name: this.table_name,
- }).then(res => {
- console.log("res---",res)
- this.form = this.base.requestToForm(res, this.form)
- console.log("form---",this.form)
- this.checkArr = res.catalog_id ? [res.catalog_id] : [],
- this.form.area_ids = res.area_ids?res.area_ids:[]
- this.form.tag_ids = res.tag_ids?res.tag_ids:[]
- this.form.files = res.files?res.files:[]
- if (res.files_upload_details && res.files_upload_details.length > 0) {
+
+ json_data_fields: ['files']
+ }).then(res => {
+ console.log("res---", res)
+ this.form = this.base.requestToForm(res, this.form)
+ console.log("form---", this.form)
+ this.checkArr = res.catalog_id ? [res.catalog_id] : [],
+ this.form.area_ids = res.area_ids ? res.area_ids : []
+ this.form.tag_ids = res.tag_ids ? res.tag_ids : []
+ this.form.files = res.files ? res.files : [],
+ this.form.content = res.content?res.content:''
+ if (res.files_details && res.files_details.length > 0) {
this.filesList = []
- res.files_upload_details.map(item => {
+ res.files_details.map(item => {
this.filesList.push({
name: item.original_name,
id: item.id,
diff --git a/src/views/record/components/showRecord.vue b/src/views/record/components/showRecord.vue
index 90292ca..14abb36 100644
--- a/src/views/record/components/showRecord.vue
+++ b/src/views/record/components/showRecord.vue
@@ -9,19 +9,31 @@
发布时间:{{form.date}}
-
所属目录:{{form.catalog_name}}
+
所属目录:
+ {{form.catalog_name}}
+
所属区域:
-
+
+
+ {{item.name}}
+
+
+
+
标签:
+
+
+ {{item.name}}
+
+
-
-
+
@@ -62,12 +74,14 @@
show({
id: this.id,
table_name: this.table_name,
+ json_data_fields: ['files', 'area_ids','tag_ids']
}).then(res => {
- this.form = this.base.deepCopy(res)
- console.log("this.form",this.form)
+ this.form = this.base.deepCopy(res)
+ console.log("this.form", this.form)
})
},
- toshowFile(url) {
+ toshowFile(url) {
+ console.log("url",url)
this.$refs.viewFile.url = url
this.$refs.viewFile.diaShow = true
},
@@ -103,8 +117,9 @@
&-time {
display: flex;
justify-content: center;
- font-size: 20px;
+ font-size: 16px;
color: rgba(0, 0, 0, 0.6);
+ align-items: center;
&>div {
margin: 0 10px;
diff --git a/src/views/record/index.vue b/src/views/record/index.vue
index f8700d2..1de46e9 100644
--- a/src/views/record/index.vue
+++ b/src/views/record/index.vue
@@ -7,12 +7,12 @@
-
+
查询
-
@@ -31,14 +31,35 @@
+
+
+
+
+
+ {{item.name}}
+
+
+
+
+
+
+
+
+
+ {{item.name}}
+
+
+
+
+
-
+
查看
- 编辑
-
+ 编辑
+
删除
@@ -61,9 +82,10 @@
index,
destroy
} from "@/api/system/baseForm.js"
+ import state from '@/store/modules/user.js'
export default {
components: {
- addRecord,
+ addRecord,
showRecord
},
data() {
@@ -74,7 +96,8 @@
page: 1,
page_size: 10,
catalog_id: ''
- },
+ },
+ stateObj:{},
total: 0,
list: [],
defaultProps: {
@@ -89,12 +112,26 @@
prop: 'title',
label: '标题',
align: 'left',
+ width: 360
},
// {
// prop: 'catalog_name',
// label: '所属目录',
- // align: 'left',
+ // align: 'center',
+ // width: 120
// },
+ {
+ prop: 'area_name',
+ label: '区域',
+ align: 'center',
+ width: 240
+ },
+ {
+ prop: 'tag_name',
+ label: '标签',
+ align: 'center',
+ width: 240
+ },
{
prop: 'date',
label: '发布日期',
@@ -106,7 +143,9 @@
}
},
created() {
- //
+ //
+ this.stateObj = state.state
+ console.log("this.stateObj",this.stateObj)
this.getCatalogList()
this.getList()
},
@@ -117,7 +156,8 @@
page: 1,
sort_type: 'ASC',
sort_name: 'sort',
- table_name: 'catalogs'
+ table_name: 'catalogs',
+ is_auth: 1,
})
if (res.data.length > 0) {
this.catalogList = this.base.buildTree(res.data)
@@ -135,9 +175,9 @@
editIndex(type, id) {
if (type == 'editor') {
this.$refs.addRecord.id = id
- }
- // if(this.select.catalog_id){
- // this.$refs.addRecord.setCatalogId(this.select.catalog_id)
+ }
+ // if(this.select.catalog_id){
+ // this.$refs.addRecord.setCatalogId(this.select.catalog_id)
// }
this.$refs.addRecord.type = type
this.$refs.addRecord.isShow = true
@@ -162,6 +202,8 @@
page_size: this.select.page_size,
page: this.select.page,
table_name: this.select.table_name,
+ json_data_fields: ['files', 'area_ids', 'tag_ids', 'catalog_id'],
+ is_auth: 1,
filter: [{
"key": "title",
"op": "like",
@@ -169,7 +211,7 @@
}, {
key: 'catalog_id',
op: 'eq',
- value: this.select.catalog_id
+ value: this.select.catalog_id ? this.select.catalog_id : ''
}]
})
this.list = res.data
@@ -214,13 +256,13 @@
justify-content: space-between;
&_left {
- width: 30%;
+ width: 20%;
background: #fff;
padding: 10px;
}
&_right {
- width: 68%
+ width: 79%
}
}
diff --git a/src/views/record/tags.vue b/src/views/record/tags.vue
index ef3fe13..5626455 100644
--- a/src/views/record/tags.vue
+++ b/src/views/record/tags.vue
@@ -24,7 +24,17 @@
+ :table-item="table_item">
+
+
+
+
+
+ {{item.name}}
+
+
+
+
@@ -104,6 +114,8 @@
page_size: this.select.page_size,
page: this.select.page,
table_name: this.select.table_name,
+ json_data_fields: ['user_ids'],
+
sort_type:'ASC',
sort_name:'sort',
filter: [{
diff --git a/src/views/system/components/editPane.vue b/src/views/system/components/editPane.vue
index cab8ea9..014fb4c 100644
--- a/src/views/system/components/editPane.vue
+++ b/src/views/system/components/editPane.vue
@@ -112,6 +112,22 @@
style="width: 100%"
>
+
+
+
+
+
+
保存
{
+ return { name: i, table_name: i };
+ })
+ ]
},
saveField() {
diff --git a/src/views/system/user.vue b/src/views/system/user.vue
index 12aace4..49b88b4 100644
--- a/src/views/system/user.vue
+++ b/src/views/system/user.vue
@@ -20,6 +20,9 @@
+
+ {{scope.row.organize.name}}
+