Commit 87e08381 authored by “yiyousong”'s avatar “yiyousong”

feat:添加新增事项分类弹窗

parent e2d146ac
// 样表事项管理api // 样表事项管理api
import request from '@/utils/request' import request from "@/utils/request";
/** /**
* 基础事项 * 基础事项
...@@ -7,64 +7,72 @@ import request from '@/utils/request' ...@@ -7,64 +7,72 @@ import request from '@/utils/request'
// 获取基础事项列表 // 获取基础事项列表
export const getMatterList = (data) => { export const getMatterList = (data) => {
return request({ return request({
url: `/sampleform/sheet/matter/list`, url: `/sampleform/sheet/matter/list`,
method: "post", method: "post",
data, data,
}); });
}; };
// 加入样表事项 // 加入样表事项
export const createMatter = (params) => { export const createMatter = (params) => {
return request({ return request({
url: `/sampleform/matter/createMatter`, url: `/sampleform/matter/createMatter`,
method: "get", method: "get",
params, params,
}); });
}; };
// 获取基础事项差集列表 // 获取基础事项差集列表
export const getMatterSubList = (data) => { export const getMatterSubList = (data) => {
return request({ return request({
url: `/sampleform/sheet/matter/sublist`, url: `/sampleform/sheet/matter/sublist`,
method: "post", method: "post",
data, data,
}); });
}; };
// 查询样表系统事项列表 // 查询样表系统事项列表
export const getWriteMatterList = (data) => { export const getWriteMatterList = (data) => {
return request({ return request({
url: `/sampleform/matter/list`, url: `/sampleform/matter/list`,
method: "post", method: "post",
data, data,
}); });
}; };
// 保存新增样表事项 // 保存新增样表事项
export const addMatter = (data) => { export const addMatter = (data) => {
return request({ return request({
url: `/sampleform/matter/save`, url: `/sampleform/matter/save`,
method: "post", method: "post",
data, data,
}); });
}; };
// 删除样表事项 // 删除样表事项
export const delMatter = (params) => { export const delMatter = (params) => {
return request({ return request({
url: `/sampleform/matter/delete`, url: `/sampleform/matter/delete`,
method: "get", method: "get",
params, params,
}); });
}; };
// 推荐事项 // 推荐事项
export const recommendMatter = (params) => { export const recommendMatter = (params) => {
return request({ return request({
url: `/sampleform/matter/recommend`, url: `/sampleform/matter/recommend`,
method: "get", method: "get",
params, params,
}); });
}; };
// 添加事项文件夹(分类)
export const addMatterFolder = (data) => {
return request({
url: `/sampleform/matter/category/save`,
method: "post",
data,
});
};
...@@ -124,6 +124,9 @@ ...@@ -124,6 +124,9 @@
<el-button size="small" type="primary" @click="showLib" <el-button size="small" type="primary" @click="showLib"
>公共库选择</el-button >公共库选择</el-button
> >
<el-button size="small" type="primary" @click="addFolder"
>新增文件夹</el-button
>
<el-button size="small" type="danger" @click="handleDelAll" <el-button size="small" type="danger" @click="handleDelAll"
>批量删除</el-button >批量删除</el-button
> >
...@@ -275,6 +278,11 @@ ...@@ -275,6 +278,11 @@
@ok="addSuccess" @ok="addSuccess"
:libVisible.sync="libVisible" :libVisible.sync="libVisible"
></CommonLib> ></CommonLib>
<!-- 新增文件夹 -->
<addFolder
ref="addFolder"
:addFolderVisible.sync="addFolderVisible"
></addFolder>
</div> </div>
</template> </template>
...@@ -284,6 +292,7 @@ import AddMaterials from "./modal/AddMaterials.vue"; ...@@ -284,6 +292,7 @@ import AddMaterials from "./modal/AddMaterials.vue";
import PreviewMaterials from "./modal/PreviewMaterials.vue"; import PreviewMaterials from "./modal/PreviewMaterials.vue";
import CommonLib from "./modal/CommonLib.vue"; import CommonLib from "./modal/CommonLib.vue";
import Pagination from "@/components/Pagination.vue"; import Pagination from "@/components/Pagination.vue";
import addFolder from "./modal/addFolder.vue";
import { getWriteMatterList } from "@/api/matter"; import { getWriteMatterList } from "@/api/matter";
import { import {
getMaterialsList, getMaterialsList,
...@@ -299,6 +308,7 @@ export default { ...@@ -299,6 +308,7 @@ export default {
PreviewMaterials, PreviewMaterials,
CommonLib, CommonLib,
Pagination, Pagination,
addFolder,
}, },
data() { data() {
return { return {
...@@ -329,6 +339,7 @@ export default { ...@@ -329,6 +339,7 @@ export default {
depList: [], depList: [],
matterId: null, matterId: null,
recommendCount: "", // 推荐次数 recommendCount: "", // 推荐次数
addFolderVisible: false,
}; };
}, },
created() { created() {
...@@ -523,6 +534,15 @@ export default { ...@@ -523,6 +534,15 @@ export default {
this.getWriteMatterList(); this.getWriteMatterList();
this.getMaterialsList(); this.getMaterialsList();
}, },
// 新增文件夹
addFolder() {
if (!this.activeDep.id) {
this.$message.warning("请先选择事项");
return;
}
this.$refs.addFolder.onAdd(this.activeDep);
this.addFolderVisible = true;
},
}, },
}; };
</script> </script>
......
<template>
<div>
<el-dialog
title="新增文件夹"
:visible.sync="Visible"
width="30%"
@close="handleClose"
:destroy-on-close="true"
>
<el-form
size="small"
ref="form"
:model="form"
:rules="rules"
label-width="100px"
>
<el-form-item label="所属事项">
<el-input size="small" disabled :value="form.matterName"></el-input>
</el-form-item>
<el-form-item label="文件夹名称" prop="categoryName">
<el-input
size="small"
v-model="form.categoryName"
placeholder="请输入文件夹名称"
></el-input>
</el-form-item>
<el-form-item label="文件夹编码" prop="categoryCode">
<el-input
size="small"
v-model="form.categoryCode"
placeholder="请输入文件夹编码"
></el-input>
</el-form-item>
<el-form-item label="排序" prop="sort">
<el-input-number
v-model="form.sort"
controls-position="right"
:min="0"
></el-input-number>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="handleRest">重 置</el-button>
<el-button
:loading="loading"
size="small"
type="primary"
@click="handleOk"
>确 定</el-button
>
</span>
</el-dialog>
</div>
</template>
<script>
import { addMatterFolder } from "@/api/matter";
export default {
props: {
addFolderVisible: {
type: Boolean,
required: true,
default: false,
},
},
data() {
return {
form: {
categoryName: "", // 名称
categoryCode: "", // 编码
matterId: "", // 事项id
matterName: "", // 事项名称
sort: 99, // 排序
},
loading: false,
rules: {
categoryName: [
{ required: true, message: "请输入文件夹名称", trigger: "blur" },
],
categoryCode: [
{ required: true, message: "请输入文件夹编码", trigger: "blur" },
],
},
};
},
computed: {
Visible: {
get() {
return this.addFolderVisible;
},
set(val) {
this.$emit("update:addFolderVisible", val);
},
},
},
methods: {
// 确定
handleOk() {
this.$refs.form.validate(async (valid) => {
if (valid) {
this.loading = true;
let res = await addMatterFolder(this.form);
let { code, msg } = res.data;
this.loading = false;
if (code === 1) {
this.$message.success(msg);
this.$emit("addSuccess");
this.handleClose();
}
}
});
},
// 新增
onAdd(row) {
Object.assign(this.form, this.$options.data().form);
this.form.id && this.$delete(this.form, "id");
this.form.matterId = row.id;
this.form.matterName = row.matterName;
},
// 编辑
onEdit(row) {
this.form = { ...row };
},
// 重置
handleRest() {
this.$refs.form.resetFields();
},
// 关闭
handleClose() {
this.loading = false;
this.$refs.form.resetFields();
this.Visible = false;
},
},
};
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
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