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.
NewEduCoderBuild/p__Classrooms__Lists__Stati...

682 lines
22 KiB

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[17806],{
/***/ 68795:
/*!*******************************************************************************!*\
!*** ./node_modules/@ant-design/icons/es/icons/SearchOutlined.js + 1 modules ***!
\*******************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"Z": function() { return /* binding */ icons_SearchOutlined; }
});
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(87462);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
;// CONCATENATED MODULE: ./node_modules/@ant-design/icons-svg/es/asn/SearchOutlined.js
// This icon file is generated automatically.
var SearchOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z" } }] }, "name": "search", "theme": "outlined" };
/* harmony default export */ var asn_SearchOutlined = (SearchOutlined);
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/AntdIcon.js + 8 modules
var AntdIcon = __webpack_require__(74643);
;// CONCATENATED MODULE: ./node_modules/@ant-design/icons/es/icons/SearchOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var SearchOutlined_SearchOutlined = function SearchOutlined(props, ref) {
return /*#__PURE__*/react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
icon: asn_SearchOutlined
}));
};
if (false) {}
/* harmony default export */ var icons_SearchOutlined = (/*#__PURE__*/react.forwardRef(SearchOutlined_SearchOutlined));
/***/ }),
/***/ 87579:
/*!***************************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/Statistics/StatisticsQuality/index.tsx + 1 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 */ StatisticsQuality; }
});
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(17061);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(17156);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(42122);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(27424);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
var _umi_production_exports = __webpack_require__(89214);
// EXTERNAL MODULE: ./node_modules/antd/es/select/index.js + 42 modules
var es_select = __webpack_require__(79035);
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
var es_button = __webpack_require__(71577);
// EXTERNAL MODULE: ./node_modules/antd/es/skeleton/index.js + 12 modules
var skeleton = __webpack_require__(21687);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StatisticsQuality/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var StatisticsQualitymodules = ({"wrap":"wrap___sKc1R","headWrap":"headWrap___S5CVJ","head":"head___VBue_","deal":"deal___mWVJv","two":"two___h7Vsd","one":"one___dXkJk"});
// EXTERNAL MODULE: ./node_modules/echarts-for-react/lib/index.js
var lib = __webpack_require__(50976);
// EXTERNAL MODULE: ./src/utils/fetch.ts
var fetch = __webpack_require__(84519);
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__(85893);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StatisticsQuality/index.tsx
//新建数值
var ShixunsListPage = function ShixunsListPage(_ref) {
var _data$control_degree, _data$control_degree2, _data$control_degree3, _data$control_degree4, _data$control_degree5, _teacherList$teacher_;
var classroomList = _ref.classroomList,
globalSetting = _ref.globalSetting,
dispatch = _ref.dispatch;
var _useState = (0,react.useState)(objectSpread2_default()(objectSpread2_default()({}, (0,_umi_production_exports.useParams)()), {
page: 1,
limit: 2000
})),
_useState2 = slicedToArray_default()(_useState, 2),
params = _useState2[0],
setParams = _useState2[1];
var _useState3 = (0,react.useState)(),
_useState4 = slicedToArray_default()(_useState3, 2),
teacherValue = _useState4[0],
setTeacherValue = _useState4[1];
var _useState5 = (0,react.useState)(1),
_useState6 = slicedToArray_default()(_useState5, 2),
arithmeticValue = _useState6[0],
setArithmeticValue = _useState6[1];
var _useState7 = (0,react.useState)(false),
_useState8 = slicedToArray_default()(_useState7, 2),
loading = _useState8[0],
setLoading = _useState8[1];
var _useState9 = (0,react.useState)({}),
_useState10 = slicedToArray_default()(_useState9, 2),
data = _useState10[0],
setData = _useState10[1];
var _useState11 = (0,react.useState)({}),
_useState12 = slicedToArray_default()(_useState11, 2),
teacherList = _useState12[0],
setTeacherList = _useState12[1];
(0,react.useEffect)(function () {
getList();
}, []);
(0,react.useEffect)(function () {
if (teacherValue) getData();
}, [teacherValue]);
var getList = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _res$teacher_list, _res$teacher_list$;
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return dispatch({
type: 'teachers/getList',
payload: objectSpread2_default()({}, params)
});
case 2:
res = _context.sent;
setTeacherValue(res === null || res === void 0 ? void 0 : (_res$teacher_list = res.teacher_list) === null || _res$teacher_list === void 0 ? void 0 : (_res$teacher_list$ = _res$teacher_list[0]) === null || _res$teacher_list$ === void 0 ? void 0 : _res$teacher_list$.user_id);
setTeacherList(res);
case 5:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getList() {
return _ref2.apply(this, arguments);
};
}();
var getData = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
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/teacher_id.json", {
method: 'get',
params: {
teacherId: teacherValue
}
});
case 3:
res = _context2.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
setData((res === null || res === void 0 ? void 0 : res.data) || {});
}
setLoading(false);
case 6:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function getData() {
return _ref3.apply(this, arguments);
};
}();
// const teacher = [
// {
// "tcId": 1,
// "teacherId": 101,
// "teacherName": "周老师",
// "courseId": 101,
// "courseName": "数据结构"
// },
// {
// "tcId": 2,
// "teacherId": 102,
// "teacherName": "曾老师",
// "courseId": 102,
// "courseName": "C语言"
// },
// {
// "tcId": 3,
// "teacherId": 103,
// "teacherName": "陈老师",
// "courseId": 103,
// "courseName": "计算机网络"
// },
// {
// "tcId": 4,
// "teacherId": 104,
// "teacherName": "赵老师",
// "courseId": 104,
// "courseName": "大数据"
// },
// {
// "tcId": 5,
// "teacherId": 105,
// "teacherName": "李老师",
// "courseId": 105,
// "courseName": "数学"
// }
// ]
// const data = {
// "control_degree": [
// [4, 30, 77, 34, 33],
// [36, 95, 52, 76, 97],
// [320, 332, 301, 334, 390, 330, 320],
// [320, 332, 301, 334, 390, 330, 320],
// [320, 332, 301, 334, 390, 330, 320]
// ],
// "commiment": [
// 19,
// 91,
// 37,
// 14,
// 10
// ],
// "recongnition": [
// {
// "value": 53,
// "itemStyle": {
// "color": "#fa0a0f"
// }
// },
// {
// "value": 65,
// "itemStyle": {
// "color": "#a0ffa0"
// }
// },
// {
// "value": 33,
// "itemStyle": {
// "color": "#faa0f0"
// }
// },
// {
// "value": 65,
// "itemStyle": {
// "color": "#ffa0a0"
// }
// },
// {
// "value": 60,
// "itemStyle": {
// "color": "#0ffaa0"
// }
// }
// ],
// "promotion": [
// {
// "value": 2,
// "name": "促进参与"
// },
// {
// "value": 76,
// "name": "促进绩效"
// }
// ]
// }
var option1 = {
title: {
text: '教师'
},
legend: {
top: '0%',
left: 'right',
data: ['课前', '课中', '课后']
},
tooltip: {
trigger: 'axis'
},
radar: {
// shape: 'circle',
indicator: [{
name: '投入度',
max: 6500
}, {
name: '促进度',
max: 16000
}, {
name: '调控度',
max: 30000
}, {
name: '认可度',
max: 38000
}],
center: ['50%', '50%'],
radius: 120
},
series: [{
name: 'Budget vs spending',
type: 'radar',
tooltip: {
trigger: 'item'
},
data: [{
value: [4200, 3000, 20000, 35000, 50000, 18000],
name: '课前'
}, {
value: [5000, 14000, 28000, 26000, 42000, 21000],
name: '课中'
}, {
value: [4200, 14000, 20000, 26000, 50000, 26000],
name: '课后'
}]
}]
};
var option2 = {
color: "#0F7858",
title: {
text: '投入度'
},
legend: {
// data: ['估计值', '实际值'],
orient: 'vertical',
left: 'right'
},
tooltip: {
trigger: "item",
zlevel: 0
},
radar: {
// shape: 'circle',
indicator: [{
name: '教学准备',
max: 100
}, {
name: '组织学习',
max: 100
}, {
name: '建设资源',
max: 100
}, {
name: '互动答疑',
max: 100
}, {
name: '学习评价',
max: 100
}]
},
series: [{
type: 'radar',
data: [{
// value: [80, 70, 90, 65, 45],
value: data === null || data === void 0 ? void 0 : data.commiment,
name: '评测值'
}]
}]
};
var option3 = {
title: {
text: '调控度',
left: 'left'
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross',
label: {
backgroundColor: '#6a7985'
}
}
},
legend: {
data: ['查看学习任务次数', '查看测验次数', '提醒任务次数', '小组发帖次数', '学习资源更新次数'],
// orient: 'vertical',
left: 'right'
},
// toolbox: {
// feature: {
// saveAsImage: {}
// }
// },
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [{
type: 'category',
boundaryGap: false,
data: ['一', '二', '三', '四', '五', '六', '七']
}],
yAxis: [{
type: 'value'
}],
series: [{
name: '查看学习任务次数',
type: 'line',
stack: '总量',
areaStyle: {},
emphasis: {
focus: 'series'
},
data: data === null || data === void 0 ? void 0 : (_data$control_degree = data.control_degree) === null || _data$control_degree === void 0 ? void 0 : _data$control_degree[0]
}, {
name: '查看测验次数',
type: 'line',
stack: '总量',
areaStyle: {},
emphasis: {
focus: 'series'
},
data: data === null || data === void 0 ? void 0 : (_data$control_degree2 = data.control_degree) === null || _data$control_degree2 === void 0 ? void 0 : _data$control_degree2[1]
}, {
name: '提醒任务次数',
type: 'line',
stack: '总量',
areaStyle: {},
emphasis: {
focus: 'series'
},
data: data === null || data === void 0 ? void 0 : (_data$control_degree3 = data.control_degree) === null || _data$control_degree3 === void 0 ? void 0 : _data$control_degree3[2]
}, {
name: '小组发帖次数',
type: 'line',
stack: '总量',
areaStyle: {},
emphasis: {
focus: 'series'
},
data: data === null || data === void 0 ? void 0 : (_data$control_degree4 = data.control_degree) === null || _data$control_degree4 === void 0 ? void 0 : _data$control_degree4[3]
}, {
name: '学习资源更新次数',
type: 'line',
stack: '总量',
areaStyle: {},
emphasis: {
focus: 'series'
},
data: data === null || data === void 0 ? void 0 : (_data$control_degree5 = data.control_degree) === null || _data$control_degree5 === void 0 ? void 0 : _data$control_degree5[4]
}]
};
var option4 = {
title: {
text: '认可度'
},
tooltip: {
trigger: 'axis',
axisPointer: {
// 坐标轴指示器,坐标轴触发有效
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
legend: {
data: ['学习资源认可', '学习任务认可', '辅导答疑认可', '作业批改认可', '小组指导认可'],
orient: 'vertical'
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [{
type: 'category',
data: ['学习资源认可', '学习任务认可', '辅导答疑认可', '作业批改认可', '小组指导认可']
}],
yAxis: [{
type: 'value'
}],
series: [{
// name: '学习资源认可',
type: 'bar',
// emphasis: {
//     focus: 'series'
// },
// data: data_set
data: data === null || data === void 0 ? void 0 : data.recongnition
}]
};
var option5 = {
title: {
text: '促进度',
left: 'left'
},
legend: {
// orient: 'vertical',
left: 'right'
},
tooltip: {
trigger: "item",
zlevel: 0
},
series: [{
type: 'pie',
radius: '45%',
center: ['55%', '60%'],
// data: [
//     { value: 80, name: '促进参与' },
//     { value: 50, name: '促进绩效' }
// ]
data: data === null || data === void 0 ? void 0 : data.promotion
}]
};
var handleClick = function handleClick() {
getData();
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: StatisticsQualitymodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: StatisticsQualitymodules.headWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: StatisticsQualitymodules.head,
children: "\u6559\u5B66\u8D28\u91CF\u5206\u6790"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: StatisticsQualitymodules.deal,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u9009\u62E9\u8BC4\u6D4B\u6559\u5E08"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select/* default */.Z, {
value: teacherValue,
onChange: function onChange(v) {
return setTeacherValue(v);
},
style: {
width: 200
},
children: teacherList === null || teacherList === void 0 ? void 0 : (_teacherList$teacher_ = teacherList.teacher_list) === null || _teacherList$teacher_ === void 0 ? void 0 : _teacherList$teacher_.map(function (e) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_select/* default.Option */.Z.Option, {
value: e.user_id,
children: [e.name, " "]
}, e.user_id);
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "ml30",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u9009\u62E9\u8BC4\u6D4B\u7B97\u6CD5"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_select/* default */.Z, {
value: arithmeticValue,
onChange: function onChange(v) {
return setArithmeticValue(v);
},
style: {
width: 200
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_select/* default.Option */.Z.Option, {
value: 1,
children: "\u6559\u5E08\u5728\u7EBF\u6559\u5B66\u8D28\u91CF\u6210\u6548\u8BC4\u6D4B"
}, 1), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select/* default.Option */.Z.Option, {
value: 2,
children: "\u673A\u5668\u8F85\u52A9\u6559\u5B66\u8D28\u91CF\u6210\u6548\u8BC4\u6D4B"
}, 2)]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
onClick: handleClick,
disabled: loading,
style: {
marginLeft: 'auto'
},
type: "primary",
children: "\u5F00\u59CB\u5206\u6790"
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(skeleton/* default */.Z, {
className: "mt10",
loading: loading,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: StatisticsQualitymodules.two,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(lib/* default */.Z, {
option: option1,
style: {
height: 400
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(lib/* default */.Z, {
option: option2,
style: {
height: 400
}
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: StatisticsQualitymodules.one,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(lib/* default */.Z, {
option: option3,
style: {
height: 300
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: StatisticsQualitymodules.two,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(lib/* default */.Z, {
option: option4,
style: {
height: 400
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(lib/* default */.Z, {
option: option5,
style: {
height: 400
}
})
})]
})]
})]
});
};
/* harmony default export */ var StatisticsQuality = ((0,_umi_production_exports.connect)(function (_ref4) {
var classroomList = _ref4.classroomList,
globalSetting = _ref4.globalSetting;
return {
classroomList: classroomList,
globalSetting: globalSetting
};
})(ShixunsListPage));
/***/ }),
/***/ 9708:
/*!***************************************************!*\
!*** ./node_modules/antd/es/_util/statusUtils.js ***!
\***************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "F": function() { return /* binding */ getMergedStatus; },
/* harmony export */ "Z": function() { return /* binding */ getStatusClassNames; }
/* harmony export */ });
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 94184);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
const InputStatuses = (/* unused pure expression or super */ null && (['warning', 'error', '']));
function getStatusClassNames(prefixCls, status, hasFeedback) {
return classnames__WEBPACK_IMPORTED_MODULE_0___default()({
[`${prefixCls}-status-success`]: status === 'success',
[`${prefixCls}-status-warning`]: status === 'warning',
[`${prefixCls}-status-error`]: status === 'error',
[`${prefixCls}-status-validating`]: status === 'validating',
[`${prefixCls}-has-feedback`]: hasFeedback
});
}
const getMergedStatus = (contextStatus, customStatus) => customStatus || contextStatus;
/***/ })
}]);