You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
771 lines
30 KiB
771 lines
30 KiB
"use strict";
|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[98885],{
|
|
|
|
/***/ 72020:
|
|
/*!*****************************************!*\
|
|
!*** ./src/components/NoData/index.tsx ***!
|
|
\*****************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js */ 26801);
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
|
|
/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 4977);
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 3113);
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var noData = function noData(_ref) {
|
|
var img = _ref.img,
|
|
_ref$buttonProps = _ref.buttonProps,
|
|
buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
|
|
_ref$styles = _ref.styles,
|
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
|
customText = _ref.customText,
|
|
ButtonText = _ref.ButtonText,
|
|
ButtonClick = _ref.ButtonClick,
|
|
Buttonclass = _ref.Buttonclass,
|
|
ButtonTwo = _ref.ButtonTwo,
|
|
imgStyles = _ref.imgStyles,
|
|
_ref$loading = _ref.loading,
|
|
loading = _ref$loading === void 0 ? false : _ref$loading;
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("section", {
|
|
className: "tc animated fadeIn",
|
|
style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, {
|
|
color: '#999',
|
|
margin: '100px auto',
|
|
visibility: loading ? 'hidden' : 'visible'
|
|
}), styles),
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
|
|
src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__,
|
|
style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, imgStyles)
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("p", {
|
|
className: "mt20 font14",
|
|
children: customText || '暂时还没有相关数据哦!'
|
|
}), ButtonText && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
|
|
className: Buttonclass,
|
|
onClick: ButtonClick
|
|
}, buttonProps), {}, {
|
|
children: ButtonText
|
|
})), ButtonTwo && ButtonTwo]
|
|
});
|
|
};
|
|
/* harmony default export */ __webpack_exports__.Z = (noData);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 31854:
|
|
/*!***************************************************************************************!*\
|
|
!*** ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/index.tsx + 2 modules ***!
|
|
\***************************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
// ESM COMPAT FLAG
|
|
__webpack_require__.r(__webpack_exports__);
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"default": function() { return /* binding */ Statistics_StudentStatistics; }
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/regeneratorRuntime.js
|
|
var regeneratorRuntime = __webpack_require__(10574);
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/asyncToGenerator.js
|
|
var asyncToGenerator = __webpack_require__(39343);
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js
|
|
var objectSpread2 = __webpack_require__(26801);
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/slicedToArray.js
|
|
var slicedToArray = __webpack_require__(11006);
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
|
|
var _umi_production_exports = __webpack_require__(66660);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/index.js + 3 modules
|
|
var es_checkbox = __webpack_require__(24905);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
|
|
var skeleton = __webpack_require__(59981);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/menu/index.js + 11 modules
|
|
var menu = __webpack_require__(20834);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
|
|
var table = __webpack_require__(72315);
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
var fetch = __webpack_require__(97174);
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var StudentStatisticsmodules = ({"flex_box_center":"flex_box_center___t6ZRf","flex_space_between":"flex_space_between___iLqvT","flex_box_vertical_center":"flex_box_vertical_center___vhciq","flex_box_center_end":"flex_box_center_end___Ajnyq","flex_box_column":"flex_box_column___voQHo","containerTitle":"containerTitle___jrfsf","menu":"menu___hWawk","export":"export___p1CrQ","selecGroup":"selecGroup___npKNz","zhankai":"zhankai___HixZB"});
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
var util = __webpack_require__(27291);
|
|
// EXTERNAL MODULE: ./node_modules/_dayjs@1.11.10@dayjs/dayjs.min.js
|
|
var dayjs_min = __webpack_require__(9498);
|
|
var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/columns.tsx
|
|
|
|
|
|
|
|
|
|
var columns = [{
|
|
type: 'shixun',
|
|
sorter: {
|
|
field: '',
|
|
order: ''
|
|
},
|
|
column: function column(params) {
|
|
var param = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
var _param$field = param.field,
|
|
field = _param$field === void 0 ? '' : _param$field,
|
|
_param$order = param.order,
|
|
order = _param$order === void 0 ? '' : _param$order;
|
|
return [{
|
|
title: '序号',
|
|
dataIndex: 'number',
|
|
align: 'center',
|
|
width: 70,
|
|
render: function render(a, b, i) {
|
|
return params.limit * (params.page - 1) + i + 1;
|
|
}
|
|
}, {
|
|
title: '姓名',
|
|
dataIndex: 'user_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '分班',
|
|
dataIndex: 'course_group_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '挑战实训数',
|
|
dataIndex: 'shixuns_count',
|
|
sortOrder: field === 'shixuns_count' && order,
|
|
sorter: true,
|
|
width: 104,
|
|
render: function render(text) {
|
|
return text || 0;
|
|
}
|
|
}, {
|
|
title: '通关实训数',
|
|
dataIndex: 'passed_count',
|
|
sortOrder: field === 'passed_count' && order,
|
|
sorter: true,
|
|
width: 104,
|
|
render: function render(text) {
|
|
return text || 0;
|
|
}
|
|
}, {
|
|
title: '完成关卡数',
|
|
dataIndex: 'passed_game_count',
|
|
sortOrder: field === 'passed_game_count' && order,
|
|
sorter: true,
|
|
width: 104,
|
|
render: function render(text) {
|
|
return text || 0;
|
|
}
|
|
}, {
|
|
title: '评测次数',
|
|
dataIndex: 'evaluate_count',
|
|
sortOrder: field === 'evaluate_count' && order,
|
|
sorter: true,
|
|
width: 90,
|
|
render: function render(text) {
|
|
return text || 0;
|
|
}
|
|
}, {
|
|
title: '所用时间',
|
|
dataIndex: 'cost_time',
|
|
sortOrder: field === 'cost_time' && order,
|
|
sorter: true,
|
|
width: 130,
|
|
render: function render(text) {
|
|
return text && (0,util/* toTimeFormat */.li)(text) || 0;
|
|
}
|
|
}, {
|
|
title: '操作',
|
|
width: 60,
|
|
dataIndex: 'user_id',
|
|
render: function render(id, record) {
|
|
return (record === null || record === void 0 ? void 0 : record.shixuns_count) === null ? '' : /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
href: "/classrooms/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/student_statistics/").concat(params === null || params === void 0 ? void 0 : params.categoryId, "/").concat(id, "/shixun"),
|
|
target: "_blank",
|
|
children: "\u8BE6\u60C5"
|
|
});
|
|
}
|
|
}];
|
|
}
|
|
}, {
|
|
type: 'video',
|
|
sorter: {
|
|
field: '',
|
|
order: ''
|
|
},
|
|
column: function column(params) {
|
|
var param = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
var _param$field2 = param.field,
|
|
field = _param$field2 === void 0 ? '' : _param$field2,
|
|
_param$order2 = param.order,
|
|
order = _param$order2 === void 0 ? '' : _param$order2;
|
|
return [{
|
|
title: '序号',
|
|
dataIndex: 'number',
|
|
align: 'center',
|
|
width: 70,
|
|
render: function render(a, b, i) {
|
|
return params.limit * (params.page - 1) + i + 1;
|
|
}
|
|
}, {
|
|
title: '姓名',
|
|
width: 120,
|
|
dataIndex: 'user_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '分班',
|
|
width: 100,
|
|
dataIndex: 'course_group_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '学习视频数',
|
|
dataIndex: 'num',
|
|
sortOrder: field === 'num' && order,
|
|
sorter: true,
|
|
width: 104
|
|
}, {
|
|
title: '累计学习时长',
|
|
dataIndex: 'total_duration',
|
|
sortOrder: field === 'total_duration' && order,
|
|
sorter: true,
|
|
width: 130,
|
|
render: function render(text) {
|
|
return text && (0,util/* toTimeFormat */.li)(text) || 0;
|
|
}
|
|
}, {
|
|
title: '平均学习完成度',
|
|
dataIndex: 'rate',
|
|
sortOrder: field === 'rate' && order,
|
|
sorter: true,
|
|
width: 130,
|
|
render: function render(text) {
|
|
return text && "".concat(text, "%") || 0;
|
|
}
|
|
}, {
|
|
title: '开始学习时间',
|
|
dataIndex: 'start_at',
|
|
width: 100,
|
|
render: function render(text) {
|
|
return text && dayjs_min_default()(text).format("YYYY-MM-DD") || '-';
|
|
}
|
|
}, {
|
|
title: '最后学习时间',
|
|
dataIndex: 'end_at',
|
|
width: 100,
|
|
render: function render(text) {
|
|
return text && dayjs_min_default()(text).format("YYYY-MM-DD") || '-';
|
|
}
|
|
}, {
|
|
title: '操作',
|
|
width: 60,
|
|
dataIndex: 'user_id',
|
|
render: function render(id, record) {
|
|
return (record === null || record === void 0 ? void 0 : record.total_duration) === '' ? '' : /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
href: "/classrooms/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/student_statistics/").concat(params === null || params === void 0 ? void 0 : params.categoryId, "/").concat(id, "/video"),
|
|
target: "_blank",
|
|
children: "\u8BE6\u60C5"
|
|
});
|
|
}
|
|
}];
|
|
}
|
|
}, {
|
|
type: 'files',
|
|
sorter: {
|
|
field: '',
|
|
order: ''
|
|
},
|
|
column: function column(params) {
|
|
var param = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
var _param$field3 = param.field,
|
|
field = _param$field3 === void 0 ? '' : _param$field3,
|
|
_param$order3 = param.order,
|
|
order = _param$order3 === void 0 ? '' : _param$order3;
|
|
return [{
|
|
title: '序号',
|
|
dataIndex: 'number',
|
|
align: 'center',
|
|
width: 70,
|
|
render: function render(a, b, i) {
|
|
return params.limit * (params.page - 1) + i + 1;
|
|
}
|
|
}, {
|
|
title: '姓名',
|
|
dataIndex: 'user_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '下载资源次数',
|
|
dataIndex: 'num',
|
|
sortOrder: field === 'num' && order,
|
|
sorter: true,
|
|
render: function render(text) {
|
|
return text || 0;
|
|
}
|
|
}, {
|
|
title: '最后下载时间',
|
|
dataIndex: 'end_at',
|
|
render: function render(text) {
|
|
return text && dayjs_min_default()(text).format("YYYY-MM-DD HH:mm:ss") || '-';
|
|
}
|
|
}, {
|
|
title: '操作',
|
|
dataIndex: 'user_id',
|
|
width: 60,
|
|
render: function render(id, record) {
|
|
return (record === null || record === void 0 ? void 0 : record.num) === null ? '' : /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
href: "/classrooms/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/student_statistics/").concat(params === null || params === void 0 ? void 0 : params.categoryId, "/").concat(id, "/files"),
|
|
target: "_blank",
|
|
children: "\u8BE6\u60C5"
|
|
});
|
|
}
|
|
}];
|
|
}
|
|
}];
|
|
// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
|
|
var lodash = __webpack_require__(89392);
|
|
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
|
|
var NoData = __webpack_require__(72020);
|
|
// EXTERNAL MODULE: ./src/utils/export.ts
|
|
var utils_export = __webpack_require__(64125);
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var StudentStatistics = function StudentStatistics(_ref) {
|
|
var classroomList = _ref.classroomList,
|
|
globalSetting = _ref.globalSetting,
|
|
dispatch = _ref.dispatch;
|
|
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
|
|
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
|
|
searchParams = _useSearchParams2[0];
|
|
var urlParams = (0,_umi_production_exports.useParams)();
|
|
var _useState = (0,_react_17_0_2_react.useState)(objectSpread2_default()(objectSpread2_default()({}, urlParams), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
})),
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
params = _useState2[0],
|
|
setParams = _useState2[1];
|
|
var _useState3 = (0,_react_17_0_2_react.useState)(true),
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
loading = _useState4[0],
|
|
setLoading = _useState4[1];
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(true),
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
pageLoading = _useState6[0],
|
|
setPageLoading = _useState6[1];
|
|
var _useState7 = (0,_react_17_0_2_react.useState)(searchParams.get("type") || 'shixun'),
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
menuKey = _useState8[0],
|
|
setMenuKey = _useState8[1];
|
|
var _useState9 = (0,_react_17_0_2_react.useState)([]),
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
list = _useState10[0],
|
|
setList = _useState10[1];
|
|
var getColumn = function getColumn(type) {
|
|
return columns.find(function (e) {
|
|
return e.type === type;
|
|
});
|
|
};
|
|
var _useState11 = (0,_react_17_0_2_react.useState)(getColumn(menuKey).column(params)),
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
column = _useState12[0],
|
|
setColumn = _useState12[1];
|
|
var _useState13 = (0,_react_17_0_2_react.useState)(getColumn(menuKey).sorter),
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
sorter = _useState14[0],
|
|
setSorter = _useState14[1];
|
|
var _useState15 = (0,_react_17_0_2_react.useState)(0),
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
total = _useState16[0],
|
|
setTotal = _useState16[1];
|
|
var _useState17 = (0,_react_17_0_2_react.useState)([]),
|
|
_useState18 = slicedToArray_default()(_useState17, 2),
|
|
numItems = _useState18[0],
|
|
setNumItems = _useState18[1];
|
|
var _useState19 = (0,_react_17_0_2_react.useState)([]),
|
|
_useState20 = slicedToArray_default()(_useState19, 2),
|
|
plainOptions = _useState20[0],
|
|
setplainOptions = _useState20[1];
|
|
var Menus = [{
|
|
name: '实践项目',
|
|
id: 'shixun'
|
|
}, {
|
|
name: '视频',
|
|
id: 'video'
|
|
}, {
|
|
name: '教学课件',
|
|
id: 'files'
|
|
}];
|
|
var CheckboxGroup = es_checkbox/* default */.Z.Group;
|
|
var _useState21 = (0,_react_17_0_2_react.useState)(),
|
|
_useState22 = slicedToArray_default()(_useState21, 2),
|
|
checkedList = _useState22[0],
|
|
setCheckedList = _useState22[1];
|
|
var _useState23 = (0,_react_17_0_2_react.useState)(false),
|
|
_useState24 = slicedToArray_default()(_useState23, 2),
|
|
indeterminate = _useState24[0],
|
|
setIndeterminate = _useState24[1];
|
|
var _useState25 = (0,_react_17_0_2_react.useState)(true),
|
|
_useState26 = slicedToArray_default()(_useState25, 2),
|
|
checkAll = _useState26[0],
|
|
setCheckAll = _useState26[1]; //是否全选
|
|
var _useState27 = (0,_react_17_0_2_react.useState)(0),
|
|
_useState28 = slicedToArray_default()(_useState27, 2),
|
|
GroupsShow = _useState28[0],
|
|
setGroupsShow = _useState28[1];
|
|
var onChange = function onChange(list) {
|
|
// console.log(list);//选中的班级id
|
|
setCheckedList(list);
|
|
setIndeterminate(!!list.length && list.length < plainOptions.length);
|
|
setCheckAll(list.length === plainOptions.length);
|
|
var newData = objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}, getColumn(menuKey).sorter), {}, {
|
|
course_group_id: list || []
|
|
});
|
|
getData(newData);
|
|
};
|
|
var onCheckAllChange = /*#__PURE__*/function () {
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(gather) {
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
while (1) switch (_context.prev = _context.next) {
|
|
case 0:
|
|
// console.log(gather.checkAll, gather.checkAll ? '12345' : []);
|
|
setCheckedList(gather.checkAll ? plainOptions.map(function (item) {
|
|
return item.value;
|
|
}) : []);
|
|
setIndeterminate(false);
|
|
setCheckAll(gather.checkAll);
|
|
getData(objectSpread2_default()(objectSpread2_default()({}, gather), {}, {
|
|
course_group_id: gather.checkAll ? '' : []
|
|
}));
|
|
case 4:
|
|
case "end":
|
|
return _context.stop();
|
|
}
|
|
}, _callee);
|
|
}));
|
|
return function onCheckAllChange(_x) {
|
|
return _ref2.apply(this, arguments);
|
|
};
|
|
}();
|
|
var getData = /*#__PURE__*/function () {
|
|
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(gather) {
|
|
var _gather$order;
|
|
var res;
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
case 0:
|
|
setLoading(true);
|
|
_context2.next = 3;
|
|
return (0,fetch/* default */.ZP)("/api/courses/".concat(gather === null || gather === void 0 ? void 0 : gather.coursesId, "/").concat(gather === null || gather === void 0 ? void 0 : gather.menuKey, "_statistic.json"), {
|
|
params: {
|
|
sort_by: gather === null || gather === void 0 ? void 0 : gather.field,
|
|
// sort_by:'cost_time',
|
|
sort_direction: gather !== null && gather !== void 0 && gather.order ? gather === null || gather === void 0 || (_gather$order = gather.order) === null || _gather$order === void 0 ? void 0 : _gather$order.slice(0, -3) : '',
|
|
page: gather === null || gather === void 0 ? void 0 : gather.page,
|
|
limit: gather === null || gather === void 0 ? void 0 : gather.limit,
|
|
course_group_id: gather === null || gather === void 0 ? void 0 : gather.course_group_id
|
|
}
|
|
});
|
|
case 3:
|
|
res = _context2.sent;
|
|
if (!(res !== null && res !== void 0 && res.data)) {
|
|
_context2.next = 18;
|
|
break;
|
|
}
|
|
setList((res === null || res === void 0 ? void 0 : res.data) || []);
|
|
setTotal(res === null || res === void 0 ? void 0 : res.count);
|
|
setLoading(false);
|
|
if (!(numItems.length === 0)) {
|
|
_context2.next = 18;
|
|
break;
|
|
}
|
|
setNumItems([res === null || res === void 0 ? void 0 : res.shixuns_count, res === null || res === void 0 ? void 0 : res.videos_count, res === null || res === void 0 ? void 0 : res.files_count]);
|
|
setPageLoading(false);
|
|
if (res !== null && res !== void 0 && res.shixuns_count) {
|
|
_context2.next = 18;
|
|
break;
|
|
}
|
|
if (!(res !== null && res !== void 0 && res.videos_count)) {
|
|
_context2.next = 15;
|
|
break;
|
|
}
|
|
setMenuKey('video');
|
|
return _context2.abrupt("return");
|
|
case 15:
|
|
if (!(res !== null && res !== void 0 && res.files_count)) {
|
|
_context2.next = 18;
|
|
break;
|
|
}
|
|
setMenuKey('files');
|
|
return _context2.abrupt("return");
|
|
case 18:
|
|
case "end":
|
|
return _context2.stop();
|
|
}
|
|
}, _callee2);
|
|
}));
|
|
return function getData(_x2) {
|
|
return _ref3.apply(this, arguments);
|
|
};
|
|
}();
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
if (checkAll) {
|
|
setCheckedList(plainOptions.map(function (item) {
|
|
return item.value;
|
|
}));
|
|
}
|
|
}, [plainOptions]);
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
(0,fetch/* default */.ZP)("/api/courses/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/course_group_list_other.json"), {}).then(function (res) {
|
|
if (res.course_groups) {
|
|
if (res.course_groups.length > 6) {
|
|
setGroupsShow(1);
|
|
}
|
|
setplainOptions(res.course_groups.map(function (item) {
|
|
return {
|
|
label: item.name,
|
|
value: item.id
|
|
};
|
|
}));
|
|
}
|
|
});
|
|
var newData = objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}, getColumn(menuKey).sorter), {}, {
|
|
course_group_id: checkedList || ''
|
|
});
|
|
setParams(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}));
|
|
setColumn(getColumn(menuKey).column(newData));
|
|
getData(newData);
|
|
}, [menuKey]);
|
|
var handleChange = function handleChange(pagination, filters, sorterData) {
|
|
// console.log(sorterData, 'sorterData')
|
|
var newSorter = {
|
|
field: sorterData.field,
|
|
order: sorterData.order
|
|
};
|
|
if ((sorterData === null || sorterData === void 0 ? void 0 : sorterData.order) === false) {
|
|
newSorter = {
|
|
field: '',
|
|
order: ''
|
|
};
|
|
}
|
|
if (!(0,lodash.isEqual)(newSorter, sorter)) {
|
|
if (!sorterData.order) {
|
|
newSorter = getColumn(menuKey).sorter;
|
|
}
|
|
var _newData = objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}, newSorter), {}, {
|
|
course_group_id: checkedList || ''
|
|
});
|
|
setParams(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}));
|
|
setSorter(newSorter);
|
|
getData(_newData);
|
|
setColumn(getColumn(menuKey).column(_newData, newSorter));
|
|
return;
|
|
}
|
|
var newData = objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: pagination.current,
|
|
limit: pagination.pageSize
|
|
}, newSorter), {}, {
|
|
course_group_id: checkedList || ''
|
|
});
|
|
setParams(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
page: pagination.current,
|
|
limit: pagination.pageSize
|
|
}));
|
|
setColumn(getColumn(menuKey).column(newData, newSorter));
|
|
getData(newData);
|
|
};
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
className: StudentStatisticsmodules.bg,
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
className: StudentStatisticsmodules.containerTitle,
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
className: "font16",
|
|
children: "\u5B66\u751F\u5206\u6790"
|
|
})
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(skeleton/* default */.Z, {
|
|
loading: pageLoading,
|
|
active: true,
|
|
paragraph: {
|
|
rows: 5
|
|
},
|
|
children: numItems.every(function (e) {
|
|
return !e;
|
|
}) ? /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {}) : /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(menu/* default */.Z, {
|
|
style: {
|
|
position: "relative"
|
|
},
|
|
className: StudentStatisticsmodules.menu,
|
|
mode: "horizontal",
|
|
onClick: function onClick(e) {
|
|
setMenuKey(e.key);
|
|
},
|
|
selectedKeys: menuKey,
|
|
children: [Menus.map(function (v, k) {
|
|
if (!numItems[k]) return null;
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(menu/* default */.Z.Item, {
|
|
className: "font16",
|
|
style: {
|
|
padding: "0 0 12px 0 ",
|
|
margin: "0 30px"
|
|
},
|
|
children: v.name
|
|
}, v.id);
|
|
}), menuKey !== "files" && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
className: StudentStatisticsmodules["export"],
|
|
onClick: function onClick() {
|
|
(0,utils_export/* ExportStudentanalysis */.D9)(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
checkedList: checkedList,
|
|
menuKey: menuKey
|
|
}));
|
|
},
|
|
children: "\u5BFC\u51FA"
|
|
})]
|
|
}), menuKey !== "files" && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
style: {
|
|
display: "flex",
|
|
padding: "10px 0",
|
|
position: "relative",
|
|
overflow: "hidden",
|
|
height: GroupsShow === 1 ? 70 : "auto"
|
|
},
|
|
className: "bg-white",
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
className: StudentStatisticsmodules.selecGroup,
|
|
style: {
|
|
width: plainOptions.length > 5 ? "116px" : "56px",
|
|
whiteSpace: 'nowrap'
|
|
},
|
|
children: "\u9009\u62E9\u73ED\u7EA7:"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
style: {
|
|
width: "121px",
|
|
fontSize: "13px",
|
|
whiteSpace: 'nowrap'
|
|
},
|
|
indeterminate: indeterminate,
|
|
onChange: function onChange(e) {
|
|
return onCheckAllChange(objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}, getColumn(menuKey).sorter), {}, {
|
|
checkAll: e.target.checked
|
|
}));
|
|
},
|
|
checked: checkAll,
|
|
children: "\u5168\u90E8"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(CheckboxGroup, {
|
|
options: plainOptions,
|
|
value: checkedList,
|
|
onChange: onChange
|
|
}), !!GroupsShow && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
className: StudentStatisticsmodules.zhankai,
|
|
children: [GroupsShow === 1 && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
onClick: function onClick() {
|
|
return setGroupsShow(2);
|
|
},
|
|
style: {
|
|
whiteSpace: 'nowrap'
|
|
},
|
|
children: ["\u5C55\u5F00", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
className: "iconfont icon-xiala"
|
|
})]
|
|
}), GroupsShow === 2 && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
onClick: function onClick() {
|
|
return setGroupsShow(1);
|
|
},
|
|
style: {
|
|
whiteSpace: 'nowrap'
|
|
},
|
|
children: ["\u6536\u8D77", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
style: {
|
|
transform: 'scale(0.5) rotate(180deg) translateY(2px)'
|
|
},
|
|
className: "iconfont icon-xiala"
|
|
})]
|
|
})]
|
|
})]
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
className: "table-layout bg-white mb20",
|
|
columns: column,
|
|
dataSource: list,
|
|
rowKey: function rowKey(v) {
|
|
return v.id;
|
|
},
|
|
loading: loading,
|
|
onChange: handleChange,
|
|
pagination: {
|
|
pageSize: params.limit,
|
|
total: total,
|
|
current: params.page,
|
|
showQuickJumper: true,
|
|
hideOnSinglePage: true,
|
|
position: ["bottomCenter"]
|
|
}
|
|
})]
|
|
})
|
|
})]
|
|
});
|
|
};
|
|
/* harmony default export */ var Statistics_StudentStatistics = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
var classroomList = _ref4.classroomList,
|
|
globalSetting = _ref4.globalSetting;
|
|
return {
|
|
classroomList: classroomList,
|
|
globalSetting: globalSetting
|
|
};
|
|
})(StudentStatistics));
|
|
|
|
/***/ })
|
|
|
|
}]); |