Commit 8f54e0eb by chenshu

feat:初始化

parent 985b02a5
...@@ -12,6 +12,7 @@ import { Input, Button, Tree } from "antd"; ...@@ -12,6 +12,7 @@ import { Input, Button, Tree } from "antd";
import "./Classification.less"; import "./Classification.less";
import User from "@/common/js/user"; import User from "@/common/js/user";
import KnowledgeAPI from "@/data-source/knowledge/request-api"; import KnowledgeAPI from "@/data-source/knowledge/request-api";
import Bus from "@/core/bus";
const { Search } = Input; const { Search } = Input;
const { DirectoryTree } = Tree; const { DirectoryTree } = Tree;
...@@ -31,6 +32,11 @@ class Classification extends Component { ...@@ -31,6 +32,11 @@ class Classification extends Component {
componentDidMount() { componentDidMount() {
this.queryCategoryTree(); this.queryCategoryTree();
Bus.bind('knowledgeCategoryTree', this.queryCategoryTree)
}
componentWillUnmount() {
Bus.unbind('knowledgeCategoryTree', this.queryCategoryTree)
} }
shouldComponentUpdate = (nextProps, nextState) => { shouldComponentUpdate = (nextProps, nextState) => {
......
...@@ -127,7 +127,6 @@ class KnowledgeBaseList extends React.Component { ...@@ -127,7 +127,6 @@ class KnowledgeBaseList extends React.Component {
// 预览文件 // 预览文件
handleScanFile = (folder) => { handleScanFile = (folder) => {
console.log(folder);
const { folderFormat, folderSize, ossUrl } = folder; const { folderFormat, folderSize, ossUrl } = folder;
switch (folderFormat) { switch (folderFormat) {
case "PDF": case "PDF":
...@@ -452,7 +451,6 @@ class KnowledgeBaseList extends React.Component { ...@@ -452,7 +451,6 @@ class KnowledgeBaseList extends React.Component {
width: 160, width: 160,
fixed: "right", fixed: "right",
render: (val, record, index) => { render: (val, record, index) => {
console.log(this.props.categoryId);
return this.props.categoryId === "0" ? ( return this.props.categoryId === "0" ? (
<div className="operate"> <div className="operate">
<div <div
...@@ -521,7 +519,6 @@ class KnowledgeBaseList extends React.Component { ...@@ -521,7 +519,6 @@ class KnowledgeBaseList extends React.Component {
// 前往上课数据页面 // 前往上课数据页面
handleLinkToClassData = (item) => { handleLinkToClassData = (item) => {
const { match } = this.props; const { match } = this.props;
console.log(item);
localStorage.setItem("WatchData_CourseName", item.name); localStorage.setItem("WatchData_CourseName", item.name);
window.RCHistory.push({ window.RCHistory.push({
// pathname: `${match.url}/course-data?type=${item.courseType}&id=${item.liveCourseId}`, // pathname: `${match.url}/course-data?type=${item.courseType}&id=${item.liveCourseId}`,
...@@ -553,12 +550,17 @@ class KnowledgeBaseList extends React.Component { ...@@ -553,12 +550,17 @@ class KnowledgeBaseList extends React.Component {
}; };
render() { render() {
const { dataSource = [], totalCount, query, match } = this.props; const { dataSource = [], totalCount, query, match, selectedRowKeys, onSelectChange } = this.props;
const { current, size } = query; const { current, size } = query;
const rowSelection = {
selectedRowKeys,
onChange: onSelectChange,
}
return ( return (
<div className="knowledge-base-list"> <div className="knowledge-base-list">
<Table <Table
rowKey={(record) => record.id} rowKey={(record) => record.id}
rowSelection={rowSelection}
size="middle" size="middle"
dataSource={dataSource} dataSource={dataSource}
columns={this.parseColumns()} columns={this.parseColumns()}
......
...@@ -9,19 +9,27 @@ ...@@ -9,19 +9,27 @@
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import { Button, Menu, Dropdown,message } from "antd"; import { Button, Menu, Dropdown,message, Modal } from "antd";
import SelectPrepareFileModal from "@/modules/prepare-lesson/modal/SelectPrepareFileModal"; import SelectPrepareFileModal from "@/modules/prepare-lesson/modal/SelectPrepareFileModal";
import { DownOutlined } from "@ant-design/icons"; import { DownOutlined } from "@ant-design/icons";
import AddCourse from "../modal/AddCourse"; import AddCourse from "../modal/AddCourse";
import User from "@/common/js/user"; import User from "@/common/js/user";
import Service from "@/common/js/service";
import KnowledgeAPI from "@/data-source/knowledge/request-api"; import KnowledgeAPI from "@/data-source/knowledge/request-api";
import MoveModal from '../../teach-tool/modal/MoveModal';
import Bus from "@/core/bus";
import './KnowledgeBaseOpt.less';
export default function KnowledgeBaseOpt({ export default function KnowledgeBaseOpt({
categoryId, categoryId,
selectedRowKeys,
updateCategoryTree, updateCategoryTree,
onChange, onChange,
onChangeKeys,
}) { }) {
const [modal, setModal] = useState(null); const [modal, setModal] = useState(null);
const [openMoveModal, setOpenMoveModal] = useState(false);
const [data, setData] = useState([]);
const menu = ( const menu = (
<Menu> <Menu>
...@@ -34,6 +42,36 @@ export default function KnowledgeBaseOpt({ ...@@ -34,6 +42,36 @@ export default function KnowledgeBaseOpt({
</Menu> </Menu>
); );
useEffect(() => {
queryCategoryTree();
}, []);
// 查询分类树
function queryCategoryTree() {
let query = {
storeId: User.getStoreId(),
withCount: true,
};
KnowledgeAPI.getCategoryTree(query).then((res) => {
const { categoryList = [] } = res.result;
let list = renderTreeNodes(categoryList);
setData(list);
});
}
function renderTreeNodes(data) {
let newTreeData = data.map((item) => {
item.title = item.categoryName;
item.value = item.id;
item.key = item.id;
if (item.sonCategoryList) {
item.children = renderTreeNodes(item.sonCategoryList);
}
return item;
});
return newTreeData;
};
function handAddCourse() { function handAddCourse() {
let modal = ( let modal = (
<AddCourse <AddCourse
...@@ -86,16 +124,126 @@ export default function KnowledgeBaseOpt({ ...@@ -86,16 +124,126 @@ export default function KnowledgeBaseOpt({
setModal(modal); setModal(modal);
} }
return ( function batchMove() {
<div className="video-course-opt"> if (_.isEmpty(selectedRowKeys)) {
<Dropdown overlay={menu}> message.warning('请先选择要移动的知识');
<Button type="primary" className="mr12"> return null;
添加知识 }
<DownOutlined /> setOpenMoveModal(true);
</Button> }
</Dropdown>
function batchMoveRemote(categoryId) {
const data = {
categoryId,
ids: selectedRowKeys,
storeId: User.getStoreId(),
};
Service.Hades('public/hades/batchMoveKnowledgeCategory', data).then((res) => {
if (res.success) {
message.success('移动成功');
onChange();
Bus.trigger('knowledgeCategoryTree');
clearSelect();
} else {
message.error('移动失败');
}
}).catch(() => {
message.error('移动失败');
})
}
function batchDelete() {
if (_.isEmpty(selectedRowKeys)) {
message.warning('请先选择要删除的知识');
return null;
}
Modal.confirm({
title: "确定要删除知识吗?",
content: "删除后,不可恢复。",
icon: (
<span className="icon iconfont default-confirm-icon">&#xe839; </span>
),
okText: "删除",
cancelText: "取消",
onOk: () => {
const data = {
ids: selectedRowKeys,
storeId: User.getStoreId(),
};
Service.Hades('public/hades/batchDelKnowledge', data).then((res) => {
if (res.success) {
message.success('删除成功');
onChange();
Bus.trigger('knowledgeCategoryTree');
clearSelect();
} else {
message.error('删除失败');
}
}).catch(() => {
message.error('删除失败');
})
},
})
}
function onSelectPaper(keys) {
if (keys.length > 50) {
message.warning('最多只能选择50个知识');
return null;
}
onChangeKeys(keys);
};
function clearSelect() {
onChangeKeys([]);
}
return (
<div className="knowledge-course-opt">
{_.isEmpty(selectedRowKeys) ?
<Dropdown overlay={menu}>
<Button type="primary" className="mr8">
添加知识
<DownOutlined />
</Button>
</Dropdown>
: <div className="select-container">
<span className="con">
<div>
<span className="icon iconfont tip">&#xe6f2;</span>
<span className="text">已选择{selectedRowKeys.length}</span>
</div>
<div>
<span className="clear" onClick={clearSelect}>清空</span>
</div>
</span>
</div>
}
<Button
className="mr8"
onClick={() => {
batchMove();
}}
>批量移动</Button>
<Button
onClick={() => {
batchDelete();
}}
>批量删除</Button>
{modal} {modal}
{openMoveModal &&
<MoveModal
visible={openMoveModal}
title="知识"
data={data}
length={selectedRowKeys.length}
onCancel={() => setOpenMoveModal(false)}
onOk={(categoryId) => {
batchMoveRemote(categoryId);
setOpenMoveModal(false);
}}
/>
}
</div> </div>
); );
} }
.knowledge-course-opt {
display: flex;
.select-container{
margin-right: 24px;
.con{
background: #FFF4DD;
border-radius: 4px;
padding: 3px 16px;
display: inline-flex;
align-items: center;
justify-content: space-between;
.tip{
font-size:14px;
color:#FF9D14;
margin-right:8px;
}
.text{
font-size:14px;
color:#666;
margin-right:30px;
}
.clear{
color:#5289FA;
font-size:14px;
}
}
}
}
\ No newline at end of file
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* @Copyright: © 2020 杭州杰竞科技有限公司 版权所有 * @Copyright: © 2020 杭州杰竞科技有限公司 版权所有
*/ */
import React from "react"; import React from "react";
import { message } from 'antd'
import KnowledgeBaseFilter from "./components/KnowledgeBaseFilter"; import KnowledgeBaseFilter from "./components/KnowledgeBaseFilter";
import KnowledgeBaseOpt from "./components/KnowledgeBaseOpt"; import KnowledgeBaseOpt from "./components/KnowledgeBaseOpt";
import KnowledgeBaseList from "./components/KnowledgeBaseList"; import KnowledgeBaseList from "./components/KnowledgeBaseList";
...@@ -30,6 +30,7 @@ export default class KnowledgeBase extends React.Component { ...@@ -30,6 +30,7 @@ export default class KnowledgeBase extends React.Component {
totalCount: 0, // 知识库数据总条数 totalCount: 0, // 知识库数据总条数
categoryId: '0', categoryId: '0',
updateCategoryFlag: false, updateCategoryFlag: false,
selectedRowKeys: [],
}; };
} }
...@@ -72,6 +73,15 @@ export default class KnowledgeBase extends React.Component { ...@@ -72,6 +73,15 @@ export default class KnowledgeBase extends React.Component {
}); });
}; };
onSelectChange = (selectedRowKeys) => {
if (selectedRowKeys.length > 50) {
message.warning('最多只能选择50个题目');
return null;
}
console.log(selectedRowKeys, 888888)
this.setState({ selectedRowKeys });
};
render() { render() {
const { const {
dataSource, dataSource,
...@@ -79,6 +89,7 @@ export default class KnowledgeBase extends React.Component { ...@@ -79,6 +89,7 @@ export default class KnowledgeBase extends React.Component {
query, query,
categoryId, categoryId,
updateCategoryFlag, updateCategoryFlag,
selectedRowKeys,
} = this.state; } = this.state;
return ( return (
<div className="page"> <div className="page">
...@@ -105,11 +116,15 @@ export default class KnowledgeBase extends React.Component { ...@@ -105,11 +116,15 @@ export default class KnowledgeBase extends React.Component {
onChange={this.handleFetchScheduleList} onChange={this.handleFetchScheduleList}
updateCategoryTree={this.updateCategoryTree} updateCategoryTree={this.updateCategoryTree}
categoryId={categoryId} categoryId={categoryId}
selectedRowKeys={selectedRowKeys}
onChangeKeys={(keys) => this.setState({ selectedRowKeys: keys })}
/>} />}
{/* 知识库列表模块 */} {/* 知识库列表模块 */}
<KnowledgeBaseList <KnowledgeBaseList
query={query} query={query}
selectedRowKeys={selectedRowKeys}
onSelectChange={this.onSelectChange}
categoryId={categoryId} categoryId={categoryId}
dataSource={dataSource} dataSource={dataSource}
totalCount={totalCount} totalCount={totalCount}
......
...@@ -27,8 +27,10 @@ import { Route, withRouter } from "react-router-dom"; ...@@ -27,8 +27,10 @@ import { Route, withRouter } from "react-router-dom";
import OperatePaper from "@/modules/teach-tool/paper-manage/OperatePaper"; import OperatePaper from "@/modules/teach-tool/paper-manage/OperatePaper";
import User from "@/common/js/user"; import User from "@/common/js/user";
import AidToolService from "@/domains/aid-tool-domain/AidToolService"; import AidToolService from "@/domains/aid-tool-domain/AidToolService";
import Service from "@/common/js/service";
import _ from "underscore"; import _ from "underscore";
import PaperPreviewModal from "../modal/PreviewPaperModal"; import PaperPreviewModal from "../modal/PreviewPaperModal";
import MoveModal from '../../modal/MoveModal';
import Bus from "@/core/bus"; import Bus from "@/core/bus";
const { Search } = Input; const { Search } = Input;
...@@ -50,11 +52,13 @@ class PaperList extends Component { ...@@ -50,11 +52,13 @@ class PaperList extends Component {
dataSource: [], dataSource: [],
paperPreviewModal: null, // 试卷预览模态框 paperPreviewModal: null, // 试卷预览模态框
loading: false, loading: false,
selectedPaperKeys: [],
}; };
} }
componentDidMount() { componentDidMount() {
this.queryPaperPageList(); this.queryPaperPageList();
this.queryCategoryTree();
Bus.bind("queryPaperPageList", (selectedCategoryId, count) => { Bus.bind("queryPaperPageList", (selectedCategoryId, count) => {
selectedCategoryId = selectedCategoryId =
selectedCategoryId === "null" ? null : selectedCategoryId; selectedCategoryId === "null" ? null : selectedCategoryId;
...@@ -72,6 +76,35 @@ class PaperList extends Component { ...@@ -72,6 +76,35 @@ class PaperList extends Component {
componentWillUnmount() { componentWillUnmount() {
Bus.unbind("queryPaperPageList", this.queryPaperPageList); Bus.unbind("queryPaperPageList", this.queryPaperPageList);
} }
// 查询分类树
queryCategoryTree = () => {
let query = {
bizType: 'PAPER',
count: true,
source: 0,
userId: User.getStoreUserId(),
tenantId: User.getStoreId(),
};
AidToolService.queryCategoryTree(query).then((res) => {
const { categoryList = [] } = res.result;
let list = this.renderTreeNodes(categoryList);
this.setState({ paperData: list });
});
}
renderTreeNodes = (data) => {
let newTreeData = data.map((item) => {
item.title = item.categoryName;
item.value = item.id;
item.key = item.id;
if (item.sonCategoryList) {
item.children = this.renderTreeNodes(item.sonCategoryList);
}
return item;
});
return newTreeData;
};
// 初始化列表查询 // 初始化列表查询
InitSearch = (categoryId) => { InitSearch = (categoryId) => {
...@@ -250,7 +283,7 @@ class PaperList extends Component { ...@@ -250,7 +283,7 @@ class PaperList extends Component {
}, },
}, },
{ {
title: "题目数量", title: "试卷数量",
key: "questionCnt", key: "questionCnt",
dataIndex: "questionCnt", dataIndex: "questionCnt",
width: this.props.type !== "modal-select" ? "12%" : "20%", width: this.props.type !== "modal-select" ? "12%" : "20%",
...@@ -371,58 +404,29 @@ class PaperList extends Component { ...@@ -371,58 +404,29 @@ class PaperList extends Component {
this.props.onSelect(selectedRows[0] || {}); this.props.onSelect(selectedRows[0] || {});
}; };
/**
* 设置【更多操作】选项
*/
setMoreOperationOption() {
return (
<Menu>
<Menu.Item key="2">
<div
key="import"
onClick={() => {
this.batchMove();
}}
>
批量移动
</div>
</Menu.Item>
<Menu.Item key="1">
<div
key="import"
onClick={() => {
this.batchDelete();
}}
>
批量删除
</div>
</Menu.Item>
</Menu>
);
}
batchMove = () => { batchMove = () => {
const { selectedRowKeys } = this.state; const { selectedPaperKeys } = this.state;
if (_.isEmpty(selectedRowKeys)) { if (_.isEmpty(selectedPaperKeys)) {
message.warning('请先选择要移动的题目'); message.warning('请先选择要移动的试卷');
return null; return null;
} }
this.setState({ openMoveModal: true }); this.setState({ openMoveModal: true });
} }
batchMoveRemote = (categoryId) => { batchMoveRemote = (categoryId) => {
const { selectedRowKeys } = this.state; const { selectedPaperKeys } = this.state;
const data = { const data = {
categoryId, categoryId,
id: selectedRowKeys, paperId: selectedPaperKeys,
source: 0, source: 0,
tenantId: User.getStoreId(), tenantId: User.getStoreId(),
userId: User.getUserId(), userId: User.getUserId(),
}; };
Service.Hades('public/hades/batchMoveQuestion', data).then((res) => { Service.Hades('public/hades/batchMovePaperCategory', data).then((res) => {
if (res.success) { if (res.success) {
message.success('移动成功'); message.success('移动成功');
this.queryQuestionPageList(); this.queryPaperPageList();
this.clearSelect();
} else { } else {
message.error('移动失败'); message.error('移动失败');
} }
...@@ -432,13 +436,13 @@ class PaperList extends Component { ...@@ -432,13 +436,13 @@ class PaperList extends Component {
} }
batchDelete = () => { batchDelete = () => {
const { selectedRowKeys } = this.state; const { selectedPaperKeys } = this.state;
if (_.isEmpty(selectedRowKeys)) { if (_.isEmpty(selectedPaperKeys)) {
message.warning('请先选择要删除的题目'); message.warning('请先选择要删除的试卷');
return null; return null;
} }
Modal.confirm({ Modal.confirm({
title: "确定要删除题目吗?", title: "确定要删除试卷吗?",
content: "删除后,不可恢复。", content: "删除后,不可恢复。",
icon: ( icon: (
<span className="icon iconfont default-confirm-icon">&#xe839; </span> <span className="icon iconfont default-confirm-icon">&#xe839; </span>
...@@ -447,15 +451,16 @@ class PaperList extends Component { ...@@ -447,15 +451,16 @@ class PaperList extends Component {
cancelText: "取消", cancelText: "取消",
onOk: () => { onOk: () => {
const data = { const data = {
id: selectedRowKeys, paperId: selectedPaperKeys,
source: 0, source: 0,
tenantId: User.getStoreId(), tenantId: User.getStoreId(),
userId: User.getUserId(), userId: User.getUserId(),
}; };
Service.Hades('public/hades/batchDeleteQuestion', data).then((res) => { Service.Hades('public/hades/batchDeletePaper', data).then((res) => {
if (res.success) { if (res.success) {
message.success('删除成功'); message.success('删除成功');
this.queryQuestionPageList(); this.queryPaperPageList();
this.clearSelect();
} else { } else {
message.error('删除失败'); message.error('删除失败');
} }
...@@ -466,6 +471,18 @@ class PaperList extends Component { ...@@ -466,6 +471,18 @@ class PaperList extends Component {
}) })
} }
onSelectPaper = (selectedPaperKeys) => {
if (selectedPaperKeys.length > 50) {
message.warning('最多只能选择50个试卷');
return null;
}
this.setState({ selectedPaperKeys });
};
clearSelect = () => {
this.setState({ selectedPaperKeys: [] });
}
render() { render() {
const { const {
dataSource = [], dataSource = [],
...@@ -474,8 +491,15 @@ class PaperList extends Component { ...@@ -474,8 +491,15 @@ class PaperList extends Component {
paperPreviewModal, paperPreviewModal,
selectedRowKeys, selectedRowKeys,
loading, loading,
selectedPaperKeys,
openMoveModal,
paperData,
} = this.state; } = this.state;
const { current, size, categoryId, paperName } = query; const { current, size, categoryId, paperName } = query;
const paperRowSelection = {
selectedRowKeys: selectedPaperKeys,
onChange: this.onSelectPaper,
}
const rowSelection = { const rowSelection = {
type: "radio", type: "radio",
selectedRowKeys, selectedRowKeys,
...@@ -515,41 +539,51 @@ class PaperList extends Component { ...@@ -515,41 +539,51 @@ class PaperList extends Component {
</Row> </Row>
</div> </div>
{this.props.type !== "modal-select" && isPermiss && categoryId && ( {this.props.type !== "modal-select" && isPermiss && categoryId && (
[_.isEmpty(selectedRowKeys) ? <div className="select-box">
{_.isEmpty(selectedPaperKeys) ?
<Button
type="primary"
className="mr8"
onClick={() => {
window.RCHistory.push({
pathname: `${match.url}/paper-operate-page?type=new&categoryId=${categoryId}`,
});
}}
>
新建试卷
</Button>
: <div className="select-container">
<span className="con">
<div>
<span className="icon iconfont tip">&#xe6f2;</span>
<span className="text">已选择{selectedPaperKeys.length}</span>
</div>
<div>
<span className="clear" onClick={this.clearSelect}>清空</span>
</div>
</span>
</div>
}
<Button <Button
type="primary" className="mr8"
onClick={() => { onClick={() => {
window.RCHistory.push({ this.batchMove();
pathname: `${match.url}/paper-operate-page?type=new&categoryId=${categoryId}`,
});
}} }}
> >批量移动</Button>
新建试卷 <Button
</Button> onClick={() => {
: <div className="select-container"> this.batchDelete();
<span className="con"> }}
<div> >批量删除</Button>
<span className="icon iconfont tip">&#xe6f2;</span> </div>
<span className="text">已选择{selectedRowKeys.length}</span>
</div>
<div>
<span className="clear" onClick={this.clearSelect}>清空</span>
</div>
</span>
</div>,
<Dropdown className="ml8" overlay={this.setMoreOperationOption()}>
<Button id="more_operate">
更多操作
<DownOutlined />
</Button>
</Dropdown>]
)} )}
<div className="paper-list-content"> <div className="paper-list-content">
<ConfigProvider renderEmpty={this.customizeRenderEmpty}> <ConfigProvider renderEmpty={this.customizeRenderEmpty}>
{this.props.type !== "modal-select" ? ( {this.props.type !== "modal-select" ? (
<Table <Table
rowKey={(record) => record.id} rowKey={(record) => record.paperId}
rowSelection={paperRowSelection}
dataSource={dataSource} dataSource={dataSource}
columns={this.parseColumns()} columns={this.parseColumns()}
pagination={false} pagination={false}
...@@ -558,7 +592,7 @@ class PaperList extends Component { ...@@ -558,7 +592,7 @@ class PaperList extends Component {
/> />
) : ( ) : (
<Table <Table
rowKey={(record) => record.id} rowKey={(record) => record.paperId}
dataSource={dataSource} dataSource={dataSource}
size={this.props.type == "modal-select"?'small':'middle'} size={this.props.type == "modal-select"?'small':'middle'}
rowKey={(item) => { rowKey={(item) => {
...@@ -591,6 +625,19 @@ class PaperList extends Component { ...@@ -591,6 +625,19 @@ class PaperList extends Component {
</div> </div>
)} )}
{paperPreviewModal} {paperPreviewModal}
{openMoveModal &&
<MoveModal
visible={openMoveModal}
title="试卷"
data={paperData}
length={selectedRowKeys.length}
onCancel={() => this.setState({ openMoveModal: false })}
onOk={(categoryId) => {
this.batchMoveRemote(categoryId);
this.setState({ openMoveModal: false });
}}
/>
}
</div> </div>
<Route <Route
path={`${match.url}/paper-operate-page`} path={`${match.url}/paper-operate-page`}
......
.paper-list { .paper-list {
.select-box {
display: flex;
align-items: center;
.select-container{
margin-right: 24px;
.con{
background: #FFF4DD;
border-radius: 4px;
padding: 3px 16px;
display: inline-flex;
align-items: center;
justify-content: space-between;
.tip{
font-size:14px;
color:#FF9D14;
margin-right:8px;
}
.text{
font-size:14px;
color:#666;
margin-right:30px;
}
.clear{
color:#5289FA;
font-size:14px;
}
}
}
}
.ant-radio-wrapper{ .ant-radio-wrapper{
left: -10px; left: -10px;
} }
......
...@@ -524,7 +524,9 @@ class QuestionList extends Component { ...@@ -524,7 +524,9 @@ class QuestionList extends Component {
Service.Hades('public/hades/batchMoveQuestion', data).then((res) => { Service.Hades('public/hades/batchMoveQuestion', data).then((res) => {
if (res.success) { if (res.success) {
message.success('移动成功'); message.success('移动成功');
Bus.trigger('queryCategoryTree', 'init');
this.queryQuestionPageList(); this.queryQuestionPageList();
this.clearSelect();
} else { } else {
message.error('移动失败'); message.error('移动失败');
} }
...@@ -557,7 +559,9 @@ class QuestionList extends Component { ...@@ -557,7 +559,9 @@ class QuestionList extends Component {
Service.Hades('public/hades/batchDeleteQuestion', data).then((res) => { Service.Hades('public/hades/batchDeleteQuestion', data).then((res) => {
if (res.success) { if (res.success) {
message.success('删除成功'); message.success('删除成功');
Bus.trigger('queryCategoryTree', 'init');
this.queryQuestionPageList(); this.queryQuestionPageList();
this.clearSelect();
} else { } else {
message.error('删除失败'); message.error('删除失败');
} }
......
...@@ -39,26 +39,26 @@ ...@@ -39,26 +39,26 @@
} }
.select-container{ .select-container{
.con{ .con {
background: #FFF4DD; background: #FFF4DD;
border-radius: 4px; border-radius: 4px;
padding:6px 16px; padding: 3px 16px;
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
.tip{ .tip {
font-size:14px; font-size: 14px;
color:#FF9D14; color: #FF9D14;
margin-right:8px; margin-right: 8px;
} }
.text{ .text {
font-size:14px; font-size: 14px;
color:#666; color: #666;
margin-right:30px; margin-right: 30px;
} }
.clear{ .clear {
color:#5289FA; color: #5289FA;
font-size:14px; font-size: 14px;
} }
} }
} }
......
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