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__Paths__Detail__Statistic...

1632 lines
79 KiB

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[4601],{
/***/ 90817:
/*!*****************************************!*\
!*** ./src/components/NoData/index.tsx ***!
\*****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 93314);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd */ 3113);
var __defProp = Object.defineProperty;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
return a;
};
const noData = ({
img,
buttonProps = {},
styles = {},
customText,
ButtonText,
ButtonClick,
Buttonclass,
ButtonTwo,
imgStyles,
loading = false
}) => {
return /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_0__.createElement(
"section",
{
className: "tc animated fadeIn",
style: __spreadValues(__spreadValues({}, { color: "#999", margin: "100px auto", visibility: loading ? "hidden" : "visible" }), styles)
},
/* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_0__.createElement("img", { src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_1__, style: __spreadValues({}, imgStyles) }),
/* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", { className: "mt20 font14" }, customText || "\u6682\u65F6\u8FD8\u6CA1\u6709\u76F8\u5173\u6570\u636E\u54E6!"),
ButtonText && /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_0__.createElement(antd__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP, __spreadValues({ className: Buttonclass, onClick: ButtonClick }, buttonProps), ButtonText),
ButtonTwo && ButtonTwo
);
};
/* harmony default export */ __webpack_exports__.Z = (noData);
/***/ }),
/***/ 39479:
/*!******************************************************************!*\
!*** ./src/pages/Paths/Detail/Statistics/index.tsx + 12 modules ***!
\******************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
PathStatisticsStatus: function() { return /* binding */ PathStatisticsStatus; },
"default": function() { return /* binding */ Detail_Statistics; }
});
// 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 + 15 modules
var _umi_production_exports = __webpack_require__(23175);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tabs/index.js + 24 modules
var tabs = __webpack_require__(99313);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
var modal = __webpack_require__(43418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
var row = __webpack_require__(95237);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Statisticsmodules = ({"bg":"bg____jkAB","header":"header___PPltR","titleWrap":"titleWrap___pTIp8","title":"title___qTNRH","name":"name___dLrvE","info":"info___qGW_V","boxWrap":"boxWrap___n5Uc1","icon":"icon___BdgVN","bigTabs":"bigTabs___wqKPl","active":"active___rYKNJ","main":"main___MUCpu","titleItem":"titleItem___qDOI5","countcenter":"countcenter___rEj8o","tabdiv":"tabdiv___ShIOl","radiusdiv":"radiusdiv___GU9SO"});
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/spin/index.js + 1 modules
var spin = __webpack_require__(71418);
// EXTERNAL MODULE: ./node_modules/_echarts-for-react@2.0.16@echarts-for-react/lib/index.js
var lib = __webpack_require__(42441);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/Quality/Config.tsx
const getLearnTimeOptions = (seriesData = []) => {
return {
title: {
left: "center"
},
tooltip: {
trigger: "item",
formatter: "{a} <br/>{b} : {c} ({d}%)"
},
// legend: {
// type: 'scroll',
// orient: 'vertical',
// right: 10,
// top: 20,
// bottom: 20,
// data: legendData,
// selected: selected
// },
color: ["#0152d9", "#13C2C2", "#2FC25B", "#FACC14", "#F04864", "#8543E0"],
series: [
{
name: "",
type: "pie",
radius: "55%",
center: ["40%", "50%"],
data: seriesData,
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: "rgba(0, 0, 0, 0.5)"
}
}
}
]
};
};
const getAverageEvaluationTimeOptions = ({ names = [], values = [] }) => {
return {
color: ["#3398DB"],
tooltip: {
trigger: "axis",
axisPointer: {
// 坐标轴指示器,坐标轴触发有效
type: "shadow"
// 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: "3%",
right: "4%",
bottom: "3%",
containLabel: true
},
xAxis: [
{
// nameTextStyle: { padding: [5, 0, 0, 0] },
// name: '平均评测次数',
// nameLocation: 'center',
type: "category",
data: names,
axisTick: {
alignWithLabel: true
},
axisLabel: {
//坐标轴刻度标签的相关设置。
interval: 0,
rotate: "45"
}
}
],
yAxis: [
{
name: "\u4EBA\u6570",
// nameLocation: 'center',
type: "value"
}
],
series: [
{
name: "\u4EBA\u6570",
type: "bar",
barWidth: "20%",
label: {
show: true,
position: "top"
},
data: values
}
]
};
};
const getEvaluationTimeOptions = ({ names = [], values = [] }) => {
return {
color: ["#3398DB"],
tooltip: {
trigger: "axis",
axisPointer: {
// 坐标轴指示器,坐标轴触发有效
type: "shadow"
// 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: "3%",
right: "4%",
bottom: "3%",
containLabel: true
},
xAxis: [
{
// nameTextStyle: { padding: [5, 0, 0, 0] },
name: "\u5E73\u5747\n\u8BC4\u6D4B\n\u6B21\u6570",
// nameLocation: 'center',
type: "category",
data: names,
axisTick: {
alignWithLabel: true
},
axisLabel: {
//坐标轴刻度标签的相关设置。
interval: 0,
rotate: "45"
}
}
],
yAxis: [
{
name: "\u4EBA\u6570",
// nameLocation: 'center',
type: "value"
}
],
series: [
{
name: "\u4EBA\u6570",
type: "bar",
barWidth: "20%",
label: {
show: true,
position: "top"
},
data: values
}
]
};
};
const getLengthOfStudyOptions = ({ names = [], values = [] }) => {
return {
color: ["#3398DB"],
tooltip: {
trigger: "axis",
axisPointer: {
// 坐标轴指示器,坐标轴触发有效
type: "shadow"
// 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: "3%",
right: "4%",
bottom: "3%",
containLabel: true
},
xAxis: [
{
// nameTextStyle: { padding: [5, 0, 0, 0] },
name: "\u89C6\u9891\n\u5B66\u4E60\n\u65F6\u957F",
// nameLocation: 'center',
type: "category",
data: names,
axisTick: {
alignWithLabel: true
},
axisLabel: {
//坐标轴刻度标签的相关设置。
interval: 0,
rotate: "45"
}
}
],
yAxis: [
{
name: "\u4EBA\u6570",
// nameLocation: 'center',
type: "value"
}
],
series: [
{
name: "\u4EBA\u6570",
type: "bar",
barMaxWidth: "10%",
barWidth: "20%",
label: {
show: true,
position: "top"
},
data: values
}
]
};
};
// 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: ./src/utils/util.tsx
var util = __webpack_require__(19234);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/utils.tsx
const StatusEnum = {
OneWeek: 1,
OneMonth: 2,
ThreeMonth: 3,
SixMonth: 4
};
const dateFormat = "YYYY-MM-DD";
const formatTime = (status) => {
const mapping = {
[StatusEnum.OneWeek]: [dayjs_min_default()().subtract(1, "w"), dayjs_min_default()()],
[StatusEnum.OneMonth]: [dayjs_min_default()().subtract(1, "M"), dayjs_min_default()()],
[StatusEnum.ThreeMonth]: [dayjs_min_default()().subtract(3, "M"), dayjs_min_default()()],
[StatusEnum.SixMonth]: [dayjs_min_default()().subtract(6, "M"), dayjs_min_default()()]
};
return mapping[status];
};
const formatClearanceData = (data) => {
const mapping = {
"p0": "\u901A\u517320%\u4EE5\u4E0B",
"p2": "\u901A\u517320%\u4EE5\u4E0A",
"p4": "\u901A\u517340%\u4EE5\u4E0A",
"p6": "\u901A\u517360%\u4EE5\u4E0A",
"p8": "\u901A\u517380%\u4EE5\u4E0A"
};
let formatData = [];
Object.keys(data).forEach((key) => {
formatData.push({ value: data[key].count, name: mapping[key] });
});
return formatData;
};
const formatAverageClearanceTimeData = (data = []) => {
const names = data.map((item) => {
return `${toTimeFormat(item.time && item.time[0])}-${toTimeFormat(item.time && item.time[1])}`;
});
const values = data.map((item) => item.count);
return { names, values };
};
const formatUserData = (data = []) => {
const names = data.map((item) => {
return `${item.begin_at}-${item.end_at}\u79D2`;
});
const values = data.map((item) => item.user_count);
return { names, values };
};
const formatLengthOfStudyData = (data = []) => {
const names = data.map((item) => {
return `${item.begin_at}-${item.end_at}\u5206\u949F`;
});
const values = data.map((item) => item.user_count);
return { names, values };
};
const formatLearningData = (data = []) => {
const names = data.map((item) => item.name);
const values = data.map((item) => item.value);
return { names, values };
};
const formatAverageEvaluationTimeData = (data = []) => {
const names = data.map((item) => {
return `${item.num && item.num[0]}-${item.num && item.num[1]}\u6B21`;
});
const values = data.map((item) => item.count);
return { names, values };
};
const formatShixunDiffData = (data) => {
const mapping = {
1: "\u521D\u7EA7",
2: "\u4E2D\u7EA7",
3: "\u4E2D\u9AD8\u7EA7",
4: "\u9AD8\u7EA7"
};
let datas = [];
delete data.total;
Object.keys(data).forEach((key) => {
datas.push({
value: data[key],
name: mapping[key]
});
});
return datas;
};
// EXTERNAL MODULE: ./src/service/paths.ts
var paths = __webpack_require__(14961);
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
var NoData = __webpack_require__(90817);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules
var ExclamationCircleOutlined = __webpack_require__(80045);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/Quality/index.tsx
var __async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const Learn = ({
selectKey,
statisticsData,
form
}) => {
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
const { pathId } = (0,_umi_production_exports.useParams)();
const [isLoading, setIsLoading] = (0,_react_17_0_2_react.useState)(false);
const [data, setData] = (0,_react_17_0_2_react.useState)({});
const [pieTitle, setPieTitle] = (0,_react_17_0_2_react.useState)([]);
let percentage = ["100%", "80%\u4EE5\u4E0A", "60%\u4EE5\u4E0A", "40%\u4EE5\u4E0A", "20%\u4EE5\u4E0A", "20%\u4EE5\u4E0B"];
let rightPercentage = ["100%", "80%", "60%", "40%", "20%", "20%"];
let color = ["#0152d9", "#13C2C2", "#2FC25B", "#FACC14", "#F04864", "#8543E0"];
(0,_react_17_0_2_react.useEffect)(() => {
if (selectKey === PathStatisticsStatus.Quality) {
handleGetData();
}
}, [selectKey, form]);
const handleGetData = () => __async(void 0, null, function* () {
setIsLoading(true);
const time = formatTime(StatusEnum.OneMonth);
const res = yield (0,paths/* getLearnStatistics */.ef)({
id: pathId,
type: form === "spoc" ? "1" : "2",
start_at: time && time[0] && dayjs_min_default()(time[0]).format(dateFormat),
end_at: time && time[1] && dayjs_min_default()(time[1]).format(dateFormat)
});
setIsLoading(false);
if (res) {
setData(res || {});
let datas = [];
if (res == null ? void 0 : res.passed_distribution_pie) {
percentage == null ? void 0 : percentage.map((item, i) => {
let data2 = {};
data2.name = (res == null ? void 0 : res.passed_distribution_pie[i + 1]) + "\u4EBA\uFF1A" + item;
data2.value = res == null ? void 0 : res.passed_distribution_pie[i + 1];
datas.push(data2);
});
setPieTitle([...datas]);
}
}
});
return /* @__PURE__ */ _react_17_0_2_react.createElement(spin/* default */.Z, { spinning: isLoading }, pieTitle && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u5B9E\u8BAD\u901A\u5173\u60C5\u51B5\u5206\u5E03\u56FE"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: getLearnTimeOptions(pieTitle),
style: { height: 400, width: 600 },
opts: { renderer: "svg" }
}
), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("p", null, "\u5355\u4F4D\uFF1A\u4EBA"), color == null ? void 0 : color.map((item, i) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement("p", { key: i, style: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { key: i, className: Statisticsmodules.radiusdiv, style: { background: item } }), " ", `\u901A\u5173` + rightPercentage[i], i > 0 && i < 5 ? `\u4EE5\u4E0A (\u542B)` : i === 5 ? "\u4EE5\u4E0B" : "");
})))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u5B9E\u8BAD\u5173\u5361\u5E73\u5747\u8BC4\u6D4B\u6B21\u6570\u5206\u5E03\u56FE ", /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u81F3\u5C11\u8FDB\u884C\u4E00\u6B21\u8BC4\u6D4B\u7684\u5B66\u751F\u624D\u7EB3\u5165\u672C\u56FE\u7EDF\u8BA1" }, /* @__PURE__ */ _react_17_0_2_react.createElement(ExclamationCircleOutlined/* default */.Z, { style: { marginLeft: "5px" } }))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, ((_a = data == null ? void 0 : data.average_pass_num_bar) == null ? void 0 : _a.columns) ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: getEvaluationTimeOptions(
formatAverageEvaluationTimeData(data.average_pass_num_bar && data.average_pass_num_bar.columns)
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null)), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("p", { style: { display: "flex", justifyContent: "center" } }, "\u5355\u4F4D\uFF1A\u6B21/\u5173\u5361"), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { display: "flex", justifyContent: "center", color: "#999999" } }, "\u672C\u56FE\u4EE5\u5B66\u751F\u5728\u5B9E\u8BAD\u5173\u5361\u4E2D\u7684\u8BC4\u6D4B\u6B21\u6570\u5E73\u5747\u503C\u4E3A\u7EDF\u8BA1\u7EF4\u5EA6\uFF0C\u7ED9\u51FA\u6240\u6709\u5B66\u751F\u7684\u5E73\u5747\u8BC4\u6D4B\u6B21\u6570\u5206\u5E03\u72B6\u6001\u3002"), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { display: "flex", justifyContent: "center", color: "#999999" } }, "\u5F53\u524D\u5E73\u5747\u8BC4\u6D4B\u6B21\u6570\u6700\u5C0F\u503C\uFF1A", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { color: "#0DAE0A" } }, data.average_pass_num_bar && ((_b = data.average_pass_num_bar) == null ? void 0 : _b.min), "\u6B21"), "\uFF0C\u6700\u5927\u503C\uFF1A", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { color: "#0DAE0A" } }, data.average_pass_num_bar && ((_c = data.average_pass_num_bar) == null ? void 0 : _c.max), "\u6B21"), "\uFF0C\u4E2D\u4F4D\u6570\uFF1A", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { color: "#0DAE0A" } }, data.average_pass_num_bar && ((_d = data.average_pass_num_bar) == null ? void 0 : _d.mid), "\u6B21")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { height: "45px" } }))), (statisticsData == null ? void 0 : statisticsData.video_count) ? /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u89C6\u9891\u5B66\u4E60\u65F6\u957F\u5206\u5E03\u56FE", /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u81F3\u5C11\u5B66\u4E60\u4E00\u4E2A\u89C6\u9891\u5B66\u751F\u7684\u624D\u7EB3\u5165\u672C\u56FE\u7EDF\u8BA1" }, /* @__PURE__ */ _react_17_0_2_react.createElement(ExclamationCircleOutlined/* default */.Z, { style: { marginLeft: "5px" } }))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, ((_e = data == null ? void 0 : data.study_video_time_bar) == null ? void 0 : _e.user_data) ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: getLengthOfStudyOptions(
formatLengthOfStudyData(data.study_video_time_bar && data.study_video_time_bar.user_data)
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null)), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { display: ((_f = data == null ? void 0 : data.study_video_time_bar) == null ? void 0 : _f.max) ? "" : "none" } }, /* @__PURE__ */ _react_17_0_2_react.createElement("p", { style: { display: "flex", justifyContent: "center" } }, "\u5355\u4F4D\uFF1A\u5206/\u5173\u5361"), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { display: "flex", justifyContent: "center", color: "#999999" } }, "\u672C\u56FE\u4EE5\u5B66\u751F\u5728\u5B9E\u8BAD\u5173\u5361\u4E2D\u7684\u8BC4\u6D4B\u6B21\u6570\u5E73\u5747\u503C\u4E3A\u7EDF\u8BA1\u7EF4\u5EA6\uFF0C\u7ED9\u51FA\u6240\u6709\u5B66\u751F\u7684\u5E73\u5747\u8BC4\u6D4B\u6B21\u6570\u5206\u5E03\u72B6\u6001\u3002"), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { display: "flex", justifyContent: "center", color: "#999999" } }, "\u5F53\u524D\u5E73\u5747\u8BC4\u6D4B\u6B21\u6570\u6700\u5C0F\u503C\uFF1A", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { color: "#0DAE0A" } }, data.study_video_time_bar && ((_g = data.study_video_time_bar) == null ? void 0 : _g.min), "\u5206"), "\uFF0C\u6700\u5927\u503C\uFF1A", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { color: "#0DAE0A" } }, data.study_video_time_bar && ((_h = data.study_video_time_bar) == null ? void 0 : _h.max), "\u5206"), "\uFF0C\u4E2D\u4F4D\u6570\uFF1A", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { color: "#0DAE0A" } }, data.study_video_time_bar && ((_i = data.study_video_time_bar) == null ? void 0 : _i.mid), "\u5206")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { height: "45px" } }))) : "");
};
/* harmony default export */ var Quality = (Learn);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/date-picker/index.js + 66 modules
var date_picker = __webpack_require__(52409);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/ShiXunUestow/Config.tsx
const Config_getAverageEvaluationTimeOptions = (names = [], values = [], type) => {
return {
color: ["#3398DB"],
tooltip: {
trigger: "axis",
axisPointer: {
// 坐标轴指示器,坐标轴触发有效
type: "shadow"
// 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: "3%",
right: "4%",
bottom: "3%",
containLabel: true
},
xAxis: [
{
name: "\u5B9E\u8BAD",
type: "category",
data: names,
axisTick: {
alignWithLabel: true
},
axisLabel: {
//坐标轴刻度标签的相关设置。
interval: 0,
rotate: "45",
formatter: function(value) {
return (value == null ? void 0 : value.length) > 8 ? value.substr(0, 8) + "..." : value;
}
}
}
],
yAxis: [
{
name: type,
type: "value"
}
],
series: [
{
name: type,
type: "bar",
barWidth: "20%",
label: {
show: true,
position: "top"
},
data: values
}
]
};
};
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/ShiXunUestow/index.tsx
var ShiXunUestow_async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const { RangePicker } = date_picker["default"];
const ShiXunUestow_Learn = ({
selectKey
}) => {
const [isLoading, setIsLoading] = (0,_react_17_0_2_react.useState)(false);
const [time, setTime] = (0,_react_17_0_2_react.useState)();
const [active, setActive] = (0,_react_17_0_2_react.useState)(StatusEnum.OneMonth);
const [params, setParmas] = (0,_react_17_0_2_react.useState)({});
const [data, setData] = (0,_react_17_0_2_react.useState)({});
const pathId = (0,_react_17_0_2_react.useRef)();
(0,_react_17_0_2_react.useEffect)(() => {
pathId.current = window.location.pathname.split("/")[2];
if (selectKey === PathStatisticsStatus.ShiXunUsetow) {
params.time = formatTime(active);
setParmas(params);
setTime(params.time);
handleGetData(params);
}
}, [selectKey]);
const handleGetData = (postData) => ShiXunUestow_async(void 0, null, function* () {
setIsLoading(true);
const res = yield (0,paths/* getShixunAnalyzeData */.F_)({
id: pathId.current
});
setIsLoading(false);
if (res) {
setData(res || {});
}
});
return /* @__PURE__ */ _react_17_0_2_react.createElement(spin/* default */.Z, { spinning: isLoading }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u5E94\u7528\u8BFE\u5802\u6570\u6392\u884C\u699C", (data == null ? void 0 : data.used_course_num_count) >= 10 && "\uFF08Top10\uFF09"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (data == null ? void 0 : data.used_course_num) && (data == null ? void 0 : data.used_course_num_count) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Config_getAverageEvaluationTimeOptions(
Object.keys(data == null ? void 0 : data.used_course_num),
Object.values(data == null ? void 0 : data.used_course_num),
"\u88AB\u5E94\u7528\u8BFE\u5802\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u88AB\u5E94\u7528\u5355\u4F4D\u6570\u6392\u884C\u699C", (data == null ? void 0 : data.used_school_num_count) >= 10 && "\uFF08Top10\uFF09"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (data == null ? void 0 : data.used_school_num) && (data == null ? void 0 : data.used_school_num_count) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Config_getAverageEvaluationTimeOptions(
Object.keys(data == null ? void 0 : data.used_school_num),
Object.values(data == null ? void 0 : data.used_school_num),
"\u88AB\u5E94\u7528\u5355\u4F4D\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u5B66\u4E60\u4EBA\u6570\u6392\u884C\u699C", (data == null ? void 0 : data.used_study_num_count) >= 10 && "\uFF08Top10\uFF09"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (data == null ? void 0 : data.used_study_num) && (data == null ? void 0 : data.used_study_num_count) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Config_getAverageEvaluationTimeOptions(
Object.keys(data == null ? void 0 : data.used_study_num),
Object.values(data == null ? void 0 : data.used_study_num),
"\u5B66\u4E60\u4EBA\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u5168\u90E8\u5173\u5361\u901A\u5173\u4EBA\u6570\u6392\u884C\u699C", (data == null ? void 0 : data.used_pass_num_count) >= 10 && "\uFF08Top10\uFF09"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (data == null ? void 0 : data.used_pass_num) && (data == null ? void 0 : data.used_pass_num_count) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Config_getAverageEvaluationTimeOptions(
Object.keys(data == null ? void 0 : data.used_pass_num),
Object.values(data == null ? void 0 : data.used_pass_num),
"\u901A\u5173\u4EBA\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))));
};
/* harmony default export */ var ShiXunUestow = (ShiXunUestow_Learn);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/select/index.js
var es_select = __webpack_require__(57809);
// EXTERNAL MODULE: ./node_modules/_echarts@4.8.0@echarts/index.js
var _echarts_4_8_0_echarts = __webpack_require__(76411);
var _echarts_4_8_0_echarts_default = /*#__PURE__*/__webpack_require__.n(_echarts_4_8_0_echarts);
// EXTERNAL MODULE: ./node_modules/_echarts@4.8.0@echarts/map/json/china.json
var china = __webpack_require__(5278);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/Learning/Config.tsx
const Learning_Config_getAverageEvaluationTimeOptions = ({ names = [], values = [] }, type) => {
return {
color: ["#3398DB"],
tooltip: {
trigger: "axis",
axisPointer: {
// 坐标轴指示器,坐标轴触发有效
type: "shadow"
// 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: "3%",
right: "4%",
bottom: "3%",
containLabel: true
},
xAxis: [
{
name: "\u65F6\u95F4",
type: "category",
data: names,
axisTick: {
alignWithLabel: true,
interval: 0,
rotate: "45"
},
axisLabel: {
//坐标轴刻度标签的相关设置。
interval: 0,
rotate: "45"
}
}
],
yAxis: [
{
name: type,
type: "value"
}
],
series: [
{
name: type,
type: "bar",
barWidth: "20%",
label: {
show: true,
position: "top",
formatter: function(num) {
return parseInt(num == null ? void 0 : num.data) > 1e4 ? Math.round(parseInt(num == null ? void 0 : num.data) / 100) / 10 + "k" : num == null ? void 0 : num.data;
}
},
data: values
}
]
};
};
const getMapOptions = (data) => {
return {
tooltip: {
show: true,
formatter: function(params) {
if (params == null ? void 0 : params.value) {
return params.name + ":" + params.value + "\u4EBA";
} else {
return "";
}
}
},
visualMap: {
type: "continuous",
orient: "visualMap",
itemWidth: 20,
itemHeight: 120,
text: ["\u9AD8", "\u4F4E"],
showLabel: true,
seriesIndex: [0],
inRange: {
color: ["#C4EAFF", "#A1DBFF", "#3AA0FF", "#2F88DF", "#2661A8"]
},
textStyle: {
color: "#0152d9"
},
top: 100,
right: "right"
},
grid: {
right: 10,
top: 135,
bottom: 100,
width: "20%"
},
xAxis: {
show: false
},
geo: {
// roam: true,
map: "china",
left: "left",
right: "300",
// layoutSize: '80%',
label: {
emphasis: {
show: false
}
},
itemStyle: {
emphasis: {
areaColor: "#0152d9"
}
}
},
series: [{
name: "mapSer",
type: "map",
roam: false,
geoIndex: 0,
label: {
show: false
},
data
}]
};
};
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/Learning/index.tsx
var Learning_async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const { Option } = es_select["default"];
_echarts_4_8_0_echarts_default().registerMap("china", china);
const Learning_Learn = ({
selectKey,
form,
statisticsData
}) => {
const [isLoading, setIsLoading] = (0,_react_17_0_2_react.useState)(false);
const [data, setData] = (0,_react_17_0_2_react.useState)({});
const [type, setType] = (0,_react_17_0_2_react.useState)("all");
const [day, setDay] = (0,_react_17_0_2_react.useState)();
const [studyCount, setStudyCount] = (0,_react_17_0_2_react.useState)([]);
const [passedCount, setPassedCount] = (0,_react_17_0_2_react.useState)([]);
const [studypdfattachmentcount, setStudypdfattachmentCount] = (0,_react_17_0_2_react.useState)([]);
const [evaluatecount, setEvaluatCount] = (0,_react_17_0_2_react.useState)([]);
const [studyVideoCount, setStudyVideoCount] = (0,_react_17_0_2_react.useState)([]);
const { pathId } = (0,_umi_production_exports.useParams)();
let time = [{
key: 7,
value: "\u6700\u8FD17\u5929"
}, {
key: 30,
value: "\u6700\u8FD130\u5929"
}, {
key: 180,
value: "\u6700\u8FD1\u516D\u4E2A\u6708"
}];
(0,_react_17_0_2_react.useEffect)(() => {
if (selectKey === PathStatisticsStatus.LearnIng) {
handleGetData();
}
}, [selectKey, type, day, form]);
const handleGetData = () => Learning_async(void 0, null, function* () {
setIsLoading(true);
const res = yield (0,paths/* getStudentData */.DU)({
id: pathId,
type,
day,
form
});
setIsLoading(false);
if (res) {
if (type === "all") {
setData(res || {});
setStudyCount(res == null ? void 0 : res.study_count);
setPassedCount(res == null ? void 0 : res.passed_count);
setStudypdfattachmentCount(res == null ? void 0 : res.study_pdf_attachment_count);
setStudyVideoCount(res == null ? void 0 : res.study_video_count);
setEvaluatCount(res == null ? void 0 : res.evaluate_count);
}
switch (type) {
case "study_count":
setStudyCount(res);
break;
case "passed_count":
setPassedCount(res);
break;
case "study_pdf_attachment_count":
setStudypdfattachmentCount(res);
break;
case "study_video_count":
setStudyVideoCount(res);
break;
}
}
});
return /* @__PURE__ */ _react_17_0_2_react.createElement(spin/* default */.Z, { spinning: isLoading }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem }, "\u5B66\u5458\u5730\u57DF\u5206\u5E03\u56FE"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (data == null ? void 0 : data.map) && /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: getMapOptions(data == null ? void 0 : data.map),
style: { height: 400, width: 800 },
opts: { renderer: "svg" }
}
))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem, style: { justifyContent: "space-between" } }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5B66\u5458\u6570\u91CF\u589E\u957F\u56FE", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "font12 c-grey-999 ml10" }, "\u53C2\u4E0E\u8BFE\u5802\u5B66\u4E60\u7684\u7D2F\u79EF\u4EBA\u6570")), /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"], { defaultValue: 7, style: { width: "120px" }, onChange: (e) => {
setType("study_count");
setDay(e);
} }, time == null ? void 0 : time.map((item, i) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(Option, { key: i, value: item.key }, item == null ? void 0 : item.value);
}))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (studyCount == null ? void 0 : studyCount.length) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Learning_Config_getAverageEvaluationTimeOptions(
formatLearningData(studyCount),
"\u5B66\u5458\u6570\u91CF"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem, style: { justifyContent: "space-between" } }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5B9E\u8DF5\u9879\u76EE\u901A\u8FC7\u4EBA\u6570\u589E\u957F\u56FE", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "font12 c-grey-999 ml10" }, "\u5B66\u751F\u901A\u8FC7\u5B9E\u8DF5\u9879\u76EE\u7684\u7D2F\u79EF\u4EBA\u6570")), /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"], { defaultValue: 7, style: { width: "120px" }, onChange: (e) => {
setType("passed_count");
setDay(e);
} }, time == null ? void 0 : time.map((item, i) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(Option, { key: i, value: item.key }, item == null ? void 0 : item.value);
}))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (passedCount == null ? void 0 : passedCount.length) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Learning_Config_getAverageEvaluationTimeOptions(
formatLearningData(passedCount),
"\u901A\u8FC7\u4EBA\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))), (statisticsData == null ? void 0 : statisticsData.video_count) ? /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem, style: { justifyContent: "space-between" } }, "\u89C6\u9891\u5B66\u4E60\u6B21\u6570\u589E\u957F\u56FE", /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"], { defaultValue: 7, style: { width: "120px" }, onChange: (e) => {
setType("study_video_count");
setDay(e);
} }, time == null ? void 0 : time.map((item, i) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(Option, { key: i, value: item.key }, item == null ? void 0 : item.value);
}))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (studyVideoCount == null ? void 0 : studyVideoCount.length) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Learning_Config_getAverageEvaluationTimeOptions(
formatLearningData(studyVideoCount),
"\u89C6\u9891\u5B66\u4E60\u6B21\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))) : "", (statisticsData == null ? void 0 : statisticsData.pdf_attachment_count) ? /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem, style: { justifyContent: "space-between" } }, "\u8BFE\u4EF6\u5B66\u4E60\u6B21\u6570\u589E\u957F\u56FE", /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"], { defaultValue: 7, style: { width: "120px" }, onChange: (e) => {
setType("study_pdf_attachment_count");
setDay(e);
} }, time == null ? void 0 : time.map((item, i) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(Option, { key: i, value: item.key }, item == null ? void 0 : item.value);
}))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (studypdfattachmentcount == null ? void 0 : studypdfattachmentcount.length) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Learning_Config_getAverageEvaluationTimeOptions(
formatLearningData(studypdfattachmentcount),
"\u8BFE\u4EF6\u5B66\u4E60\u6B21\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))) : "", /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.tabdiv }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.titleItem, style: { justifyContent: "space-between" } }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5B9E\u8BAD\u8BC4\u6D4B\u6B21\u6570\u589E\u957F\u56FE", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "font12 c-grey-999 ml10" }, "\u5B66\u751F\u8BC4\u6D4B\u70B9\u51FB\u7684\u7D2F\u79EF\u603B\u6B21\u6570"))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.countcenter }, (evaluatecount == null ? void 0 : evaluatecount.length) > 0 ? /* @__PURE__ */ _react_17_0_2_react.createElement(
lib/* default */.Z,
{
option: Learning_Config_getAverageEvaluationTimeOptions(
formatLearningData(evaluatecount),
"\u5B9E\u8BAD\u8BC4\u6D4B\u6B21\u6570"
),
style: { height: 400, width: 1200 },
opts: { renderer: "svg" }
}
) : /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null))));
};
/* harmony default export */ var Learning = (Learning_Learn);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
var input = __webpack_require__(1056);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var message = __webpack_require__(8591);
// 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/table/index.js + 85 modules
var table = __webpack_require__(72315);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/SPOC/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var SPOCmodules = ({"row3":"row3___CeXjd","info":"info___eN7xx","title":"title___xxaug","row5":"row5___MDHEi","rule":"rule___Fgl4o","tabWrap":"tabWrap___oSS3J","tab":"tab___DEpgx","active":"active___JpKfZ"});
// EXTERNAL MODULE: ./src/utils/fetch.ts
var fetch = __webpack_require__(94754);
// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
var lodash = __webpack_require__(89392);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/SPOC/index.tsx
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
var SPOC_async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const { Search } = input["default"];
const SPOC = ({
setStatisticsData
}) => {
var _a, _b, _c, _d, _e, _f, _g, _h;
const { pathId } = (0,_umi_production_exports.useParams)();
const [loading, setLoading] = (0,_react_17_0_2_react.useState)(true);
const [tableLoading, setTableLoading] = (0,_react_17_0_2_react.useState)(true);
const [total, setTotal] = (0,_react_17_0_2_react.useState)(0);
const [data, setData] = (0,_react_17_0_2_react.useState)([]);
const [params, setParams] = (0,_react_17_0_2_react.useState)({
page: 1,
limit: 10,
order: null,
b_order: null,
school_type: null,
search_key: "",
resource_type: "shixun",
type: "subject_info"
});
(0,_react_17_0_2_react.useEffect)(() => {
getData(params, true);
}, []);
const getData = (params2, init = false) => SPOC_async(void 0, null, function* () {
var _a2, _b2, _c2, _d2, _e2, _f2, _g2, _h2, _i, _j, _k, _l, _m;
if (init) {
setLoading(true);
} else {
setTableLoading(true);
}
const res = yield (0,fetch/* default */.ZP)(`/api/paths/${pathId}/statistics_basic_info.json`, {
method: "get",
params: params2
});
if (res.status === 0) {
setData(__spreadProps(__spreadValues({}, res.data), {
basic_info_items: (0,lodash.compact)([(_b2 = (_a2 = res == null ? void 0 : res.data) == null ? void 0 : _a2.basic_info) == null ? void 0 : _b2.shixun_data, (_d2 = (_c2 = res == null ? void 0 : res.data) == null ? void 0 : _c2.basic_info) == null ? void 0 : _d2.video_data, (_f2 = (_e2 = res == null ? void 0 : res.data) == null ? void 0 : _e2.basic_info) == null ? void 0 : _f2.file_data, (_h2 = (_g2 = res == null ? void 0 : res.data) == null ? void 0 : _g2.basic_info) == null ? void 0 : _h2.group_data, (_j = (_i = res == null ? void 0 : res.data) == null ? void 0 : _i.basic_info) == null ? void 0 : _j.normal_data, (_l = (_k = res == null ? void 0 : res.data) == null ? void 0 : _k.basic_info) == null ? void 0 : _l.exam_data])
}));
setTotal((_m = res == null ? void 0 : res.data) == null ? void 0 : _m.total_count);
if (init) {
setStatisticsData(__spreadValues({}, res.data));
}
}
setLoading(false);
setTableLoading(false);
});
const smallColumns = [
{
title: "",
dataIndex: "name"
},
{
title: "\u8BFE\u5802\u603B\u4EBA\u6570",
dataIndex: "course_member_count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u4EBA`
},
{
title: "\u9009\u7528\u5355\u4F4D\u6570",
dataIndex: "school_count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u4E2A`
},
{
title: "\u5E94\u7528\u8BFE\u5802\u6570",
dataIndex: "used_count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u4E2A`
},
{
title: "\u8BC4\u6D4B\u603B\u6B21\u6570",
dataIndex: "evaluate_count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u6B21`
},
{
title: "\u89C6\u9891\u5B66\u4E60\u603B\u65F6\u957F",
dataIndex: "video_study_time",
align: "left",
render: (text) => text === "--" ? text : `${text}\u5206`
},
{
title: "\u5B8C\u6210\u603B\u6B21\u6570",
dataIndex: "complete_count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u6B21`
}
];
const columns = [
{
title: "\u5E8F\u53F7",
dataIndex: "name",
align: "left",
width: 80,
render: (text, record, index) => params.limit * (params.page - 1) + index + 1
},
{
title: "\u8BFE\u5802\u540D\u79F0",
align: "left",
dataIndex: "course_name",
render: (text, record, index) => {
if (record == null ? void 0 : record.is_accessible) {
return /* @__PURE__ */ _react_17_0_2_react.createElement(_umi_production_exports.Link, { style: { color: "#000000" }, to: record == null ? void 0 : record.first_category_url }, /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: text }, text));
} else {
return /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: text }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { onClick: () => {
message/* default */.ZP.info("\u5F53\u524D\u8BFE\u5802\u4E3A\u79C1\u6709\u8BFE\u5802\u4E0D\u80FD\u8FDB\u5165");
} }, (text == null ? void 0 : text.length) > 10 ? text.substr(0, 10) + "..." : text));
}
}
},
{
title: "\u5355\u4F4D\u540D\u79F0",
align: "left",
dataIndex: "school_name",
render: (text, record, index) => {
if (text === "***") {
return /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u672C\u5355\u4F4D\u4E0D\u5BF9\u5916\u516C\u5F00" }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, text));
} else {
return text;
}
}
},
{
title: "\u7BA1\u7406\u5458",
align: "left",
width: 120,
dataIndex: "course_admin_name",
render: (text, record, index) => /* @__PURE__ */ _react_17_0_2_react.createElement(_umi_production_exports.Link, { style: { color: "#000000" }, to: `/users/${record == null ? void 0 : record.course_admin}/classrooms` }, text)
},
{
title: "\u8BFE\u5802\u8001\u5E08",
width: 80,
align: "left",
dataIndex: "teacher_count"
},
{
title: "\u8BFE\u5802\u5B66\u751F",
width: 110,
dataIndex: "student_count",
align: "left",
sorter: true
},
{
title: "\u9009\u7528\u6570",
width: 110,
dataIndex: "choice_num",
sorter: true,
align: "left"
},
{
title: /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u5B66\u751F\u5B8C\u6210\u88AB\u9009\u7528\u8D44\u6E90\u7684\u603B\u6B21\u6570" }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5B8C\u6210\u603B\u6B21\u6570")),
width: 110,
showSorterTooltip: false,
dataIndex: "study_count",
align: "left",
sorter: true
}
];
const shixunColums = [
...columns,
{
title: "\u4EBA\u5747\u901A\u5173\u6570",
width: 110,
showSorterTooltip: false,
dataIndex: "avg_study_count",
align: "left",
sorter: true
}
];
const handleSelectChange = (value, options) => {
params.school_type = value == 0 ? null : value;
setParams(__spreadValues({}, params));
getData(params);
};
const handleChangePage = (param, limit, sorter) => {
params.page = param == null ? void 0 : param.current;
params.limit = param == null ? void 0 : param.pageSize;
if (sorter == null ? void 0 : sorter.order) {
params.order = sorter == null ? void 0 : sorter.field;
params.b_order = (sorter == null ? void 0 : sorter.order) === "ascend" ? "asc" : "desc";
} else {
params.order = null;
params.b_order = null;
}
setParams(__spreadValues({}, params));
getData(params);
};
const handleSearch = (v) => {
params.page = 1;
params.search_key = v;
setParams(__spreadValues({}, params));
getData(params);
};
const handleTabs = (v) => {
params.page = 1;
params.resource_type = v;
setParams(__spreadValues({}, params));
getData(params);
};
const tabList = [
{
id: "shixun",
name: "\u5B9E\u8DF5\u9879\u76EE"
},
{
id: "video",
name: "\u89C6\u9891\u9879\u76EE"
},
{
id: "file",
name: "\u6559\u5B66\u8BFE\u4EF6"
},
{
id: "group",
name: "\u5206\u7EC4\u4F5C\u4E1A"
},
{
id: "normal",
name: "\u56FE\u6587\u4F5C\u4E1A"
},
{
id: "exam",
name: "\u6D4B\u9A8C"
}
];
console.log(data == null ? void 0 : data.basic_info_items, 22);
return /* @__PURE__ */ _react_17_0_2_react.createElement(
skeleton/* default */.Z,
{
loading,
active: true,
paragraph: { rows: 5 }
},
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.row3 }, /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_a = data == null ? void 0 : data.spoc_data) == null ? void 0 : _a.spoc_school_count), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "SPOC\u5355\u4F4D\u6570")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_b = data == null ? void 0 : data.spoc_data) == null ? void 0 : _b.course_used_total_count), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5E94\u7528\u8BFE\u5802\u603B\u6570")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_c = data == null ? void 0 : data.spoc_data) == null ? void 0 : _c.course_study_count), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u8BFE\u5802\u5B66\u4E60\u603B\u4EBA\u6570"))),
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.info }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.title }, /* @__PURE__ */ _react_17_0_2_react.createElement("b", null, "\u57FA\u672C\u4FE1\u606F"), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u672C\u8BFE\u7A0B\u7684\u5185\u5BB9\u53D1\u9001\u5230\u8BFE\u5802\u4E2D\u4EA7\u751F\u7684\u6570\u636E\u8BE6\u60C5\uFF08\u4E0D\u540C\u8D44\u6E90\u5B58\u5728\u91CD\u590D\u7684\u5355\u4F4D\u9009\u7528\uFF09")), /* @__PURE__ */ _react_17_0_2_react.createElement(
table["default"],
{
columns: smallColumns,
dataSource: data == null ? void 0 : data.basic_info_items,
pagination: false
}
)),
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.row5 }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.title }, /* @__PURE__ */ _react_17_0_2_react.createElement("b", null, "SPOC\u5355\u4F4D\u8BE6\u60C5"), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5B66\u6821\u53EF\u80FD\u65E2\u662F985\u4E5F\u662F211\u4E5F\u662F\u672C\u79D1\u7684\u573A\u666F\uFF0C\u4E0B\u65B9\u5B58\u5728\u91CD\u590D\u9662\u6821")), /* @__PURE__ */ _react_17_0_2_react.createElement("section", null, /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_d = data == null ? void 0 : data.school_info) == null ? void 0 : _d.project_985), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "985\u9662\u6821")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_e = data == null ? void 0 : data.school_info) == null ? void 0 : _e.project_211), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "211\u9662\u6821")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_f = data == null ? void 0 : data.school_info) == null ? void 0 : _f.regular_college), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u672C\u79D1\u9662\u6821")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_g = data == null ? void 0 : data.school_info) == null ? void 0 : _g.junior_college), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u9AD8\u804C\u9AD8\u4E13")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_h = data == null ? void 0 : data.school_info) == null ? void 0 : _h.other_school), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5176\u4ED6")))),
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.rule }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.title }, "\u9009\u7528\u7EC6\u5219"), /* @__PURE__ */ _react_17_0_2_react.createElement(row/* default */.Z, { align: "middle", className: "mb20" }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SPOCmodules.tabWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u8D44\u6E90\u7C7B\u578B"), /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"], { size: "middle", value: params == null ? void 0 : params.resource_type, onChange: (e) => {
handleTabs(e);
}, style: { width: 200, textAlign: "left", margin: "0 10px" } }, tabList == null ? void 0 : tabList.map((v, k) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"].Option, { value: v == null ? void 0 : v.id, key: k }, v == null ? void 0 : v.name);
}))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { fontSize: "12px", fontWeight: "400", color: "#9096a3" } }, "\u5355\u4F4D\u7C7B\u578B"), /* @__PURE__ */ _react_17_0_2_react.createElement(
es_select["default"],
{
defaultValue: 0,
style: { width: 200, margin: "0 10px" },
onChange: handleSelectChange,
options: [
{ value: 0, label: "\u5168\u90E8" },
{ value: 1, label: "985\u9662\u6821" },
{ value: 2, label: "211\u9662\u6821" },
{ value: 3, label: "\u672C\u79D1\u9662\u6821" },
{ value: 4, label: "\u9AD8\u804C\u9AD8\u4E13" },
{ value: 5, label: "\u5176\u4ED6" }
]
}
))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { marginLeft: "auto" } }, /* @__PURE__ */ _react_17_0_2_react.createElement(
Search,
{
placeholder: "\u8BF7\u8F93\u5165\u5355\u4F4D/\u8BFE\u5802\u540D\u79F0\u641C\u7D22",
allowClear: true,
style: { width: 400 },
enterButton: "\u641C\u7D22",
size: "middle",
onSearch: handleSearch
}
))), /* @__PURE__ */ _react_17_0_2_react.createElement(
table["default"],
{
dataSource: data == null ? void 0 : data.other_info,
columns: params.resource_type == "shixun" ? shixunColums : columns,
rowKey: "id",
onChange: handleChangePage,
loading: tableLoading,
pagination: {
pageSize: params.limit,
total,
current: params.page,
showQuickJumper: true,
hideOnSinglePage: true,
position: ["bottomCenter"],
showTotal: (total2) => /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "mr10" }, "\u5171", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "c-orange" }, total2), "\u6761\u6570\u636E")
}
}
))
);
};
/* harmony default export */ var Statistics_SPOC = (SPOC);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/OWN/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var OWNmodules = ({"row4":"row4___lgLCU","info":"info___TeImt","title":"title___gQi2u","tabWrap":"tabWrap___CrXoM"});
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/OWN/index.tsx
var OWN_defProp = Object.defineProperty;
var OWN_defProps = Object.defineProperties;
var OWN_getOwnPropDescs = Object.getOwnPropertyDescriptors;
var OWN_getOwnPropSymbols = Object.getOwnPropertySymbols;
var OWN_hasOwnProp = Object.prototype.hasOwnProperty;
var OWN_propIsEnum = Object.prototype.propertyIsEnumerable;
var OWN_defNormalProp = (obj, key, value) => key in obj ? OWN_defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var OWN_spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (OWN_hasOwnProp.call(b, prop))
OWN_defNormalProp(a, prop, b[prop]);
if (OWN_getOwnPropSymbols)
for (var prop of OWN_getOwnPropSymbols(b)) {
if (OWN_propIsEnum.call(b, prop))
OWN_defNormalProp(a, prop, b[prop]);
}
return a;
};
var OWN_spreadProps = (a, b) => OWN_defProps(a, OWN_getOwnPropDescs(b));
var OWN_async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const OWN = ({
setStatisticsData
}) => {
var _a, _b, _c, _d;
const { pathId } = (0,_umi_production_exports.useParams)();
const [loading, setLoading] = (0,_react_17_0_2_react.useState)(true);
const [tableLoading, setTableLoading] = (0,_react_17_0_2_react.useState)(true);
const [params, setParams] = (0,_react_17_0_2_react.useState)({
// page: 1,
// limit: 10,
type: "subject_info",
course_id: null
});
const [data, setData] = (0,_react_17_0_2_react.useState)([]);
const [list, setList] = (0,_react_17_0_2_react.useState)([]);
(0,_react_17_0_2_react.useEffect)(() => {
getData(params, true);
}, []);
const getData = (params2, init = false) => OWN_async(void 0, null, function* () {
var _a2, _b2, _c2, _d2;
if (init) {
setLoading(true);
} else {
setTableLoading(true);
}
const res = yield (0,fetch/* default */.ZP)(`/api/paths/${pathId}/autonomic_statistics.json`, {
method: "get",
params: params2
});
if (res.status === 0) {
setData(OWN_spreadValues({}, res.data));
setList(((_a2 = res == null ? void 0 : res.data) == null ? void 0 : _a2.courses) || []);
if (init) {
setStatisticsData(OWN_spreadValues({}, res.data));
setParams(OWN_spreadProps(OWN_spreadValues({}, params2), { course_id: ((_d2 = (_c2 = (_b2 = res == null ? void 0 : res.data) == null ? void 0 : _b2.courses) == null ? void 0 : _c2[0]) == null ? void 0 : _d2.course_id) || "" }));
}
}
setLoading(false);
setTableLoading(false);
});
const smallColumns = [
{
title: "",
dataIndex: "type",
width: 120,
render: (text) => {
if (text === "\u5B9E\u8DF5\u5173\u5361") {
return /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, text, /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u5305\u62EC\u8BFE\u5802\u4E2D\u5728\u7EBF\u5B66\u4E60\u548C\u5B9E\u8BAD\u4F5C\u4E1A\u91CC\u7684\u5173\u5361\u6570\u91CF\uFF08\u53BB\u91CD\uFF09" }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "ml5 iconfont icon-tishixiaowenhao font14" }))));
}
return text;
}
},
{
title: "\u8D44\u6E90\u6570\u91CF",
dataIndex: "count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u4E2A`
},
{
title: "\u5B66\u4E60\u4EBA\u6570",
dataIndex: "study_count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u4EBA`
},
{
title: "\u8BC4\u6D4B\u603B\u6B21\u6570",
dataIndex: "evaluate_count",
align: "left",
render: (text) => text === "--" ? text : `${text}\u6B21`
},
{
title: "\u89C6\u9891\u5B66\u4E60\u603B\u65F6\u957F",
dataIndex: "time_long",
render: (text) => text === "--" ? text : `${text}\u5206`,
align: "left"
},
{
title: "\u5B8C\u6210\u603B\u6B21\u6570",
dataIndex: "finish_count",
render: (text) => text === "--" ? text : `${text}\u6B21`,
align: "left"
}
];
const handleSelect = (v) => {
params.course_id = v;
setParams(OWN_spreadValues({}, params));
getData(params);
};
return /* @__PURE__ */ _react_17_0_2_react.createElement(
skeleton/* default */.Z,
{
loading,
active: true,
paragraph: { rows: 5 }
},
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: OWNmodules.row4 }, /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_a = data == null ? void 0 : data.subject_info) == null ? void 0 : _a.initiative_study), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u7D2F\u8BA1\u5B66\u4E60\u4EBA\u6570", /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u5305\u62EC\u5F00\u8BFE\u5B66\u671F\u7ED3\u675F\u540E\uFF0C\u5B66\u751F\u5B66\u4E60\u7684\u4EBA\u6570" }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-tishixiaowenhao" })), " ")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_b = data == null ? void 0 : data.subject_info) == null ? void 0 : _b.initiative_school_used_count), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u7D2F\u8BA1\u5355\u4F4D\u6570", /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u81EA\u4E3B\u5B66\u4E60\u7684\u5B66\u751F\u6240\u5C5E\u5355\u4F4D\u6570\u91CF" }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-tishixiaowenhao" })), " ")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_c = data == null ? void 0 : data.subject_info) == null ? void 0 : _c.initiative_challenge_count), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u7D2F\u8BA1\u5B8C\u6210\u5173\u5361\u6570")), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, (_d = data == null ? void 0 : data.subject_info) == null ? void 0 : _d.initiative_evaluate_count), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u7D2F\u8BA1\u8BC4\u6D4B\u603B\u6570"))),
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: OWNmodules.info }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: OWNmodules.title }, /* @__PURE__ */ _react_17_0_2_react.createElement("b", null, "\u57FA\u672C\u4FE1\u606F"), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u672A\u5728Spoc\u8BFE\u5802\u4E2D\uFF0C\u5B66\u751F\u81EA\u4E3B\u7684\u5B66\u4E60\u8BE5\u8BFE\u7A0B\u4EA7\u751F\u7684\u6570\u636E")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: OWNmodules.tabWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, "\u5F00\u8BFE\u5B66\u671F"), /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"], { style: { width: 150 }, value: params.course_id, onChange: handleSelect }, list == null ? void 0 : list.map((e, i) => /* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"].Option, { key: e.course_id, value: e.course_id }, e.text))), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u6CE8\uFF1A\u5176\u4ED6\u4EE3\u8868\u5F00\u8BFE\u7ED3\u675F\u540E\u7684\u7D2F\u79EF\u6570\u636E")), /* @__PURE__ */ _react_17_0_2_react.createElement(
table["default"],
{
columns: smallColumns,
loading: tableLoading,
dataSource: data == null ? void 0 : data.count_data,
pagination: false
}
))
);
};
/* harmony default export */ var Statistics_OWN = (OWN);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(13316);
// EXTERNAL MODULE: ./src/utils/authority.ts
var authority = __webpack_require__(69740);
;// CONCATENATED MODULE: ./src/pages/Paths/Detail/Statistics/index.tsx
var Statistics_getOwnPropSymbols = Object.getOwnPropertySymbols;
var Statistics_hasOwnProp = Object.prototype.hasOwnProperty;
var Statistics_propIsEnum = Object.prototype.propertyIsEnumerable;
var __objRest = (source, exclude) => {
var target = {};
for (var prop in source)
if (Statistics_hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
target[prop] = source[prop];
if (source != null && Statistics_getOwnPropSymbols)
for (var prop of Statistics_getOwnPropSymbols(source)) {
if (exclude.indexOf(prop) < 0 && Statistics_propIsEnum.call(source, prop))
target[prop] = source[prop];
}
return target;
};
var Statistics_async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const { TabPane } = tabs["default"];
var PathStatisticsStatus = /* @__PURE__ */ ((PathStatisticsStatus2) => {
PathStatisticsStatus2["Quality"] = "Quality";
PathStatisticsStatus2["LearnIng"] = "LearnIng";
PathStatisticsStatus2["ShiXunUsetow"] = "shixunusetow";
return PathStatisticsStatus2;
})(PathStatisticsStatus || {});
const Statistics = (_a) => {
var _b = _a, { user, pathsDetail, globalSetting, loading, dispatch } = _b, props = __objRest(_b, ["user", "pathsDetail", "globalSetting", "loading", "dispatch"]);
var _a2;
const urlParams = (0,_umi_production_exports.useParams)();
const [indexKey, setIndexKey] = (0,_react_17_0_2_react.useState)(1);
const [bigTab, setBigTab] = (0,_react_17_0_2_react.useState)("spoc");
const [statisticsData, setStatisticsData] = (0,_react_17_0_2_react.useState)({});
const [selectKey, setSelectKey] = (0,_react_17_0_2_react.useState)("LearnIng" /* LearnIng */);
const { pathId } = (0,_umi_production_exports.useParams)();
const [data, setData] = (0,_react_17_0_2_react.useState)({});
const [btnLoading, setBtnLoading] = (0,_react_17_0_2_react.useState)(false);
const handleChangeTabs = (activeKey) => {
setSelectKey(activeKey);
};
const handleBigTabs = (type) => {
setBigTab(type);
setIndexKey(indexKey + 1);
setSelectKey("LearnIng" /* LearnIng */);
};
(0,_react_17_0_2_react.useEffect)(() => {
getData();
}, []);
const getData = () => Statistics_async(void 0, null, function* () {
const res = yield (0,fetch/* default */.ZP)(`/api/paths/${pathId}/statistics_total_info.json`, {
method: "get"
});
if (res.status === 0) {
setData((res == null ? void 0 : res.data) || {});
}
});
const updateData = () => Statistics_async(void 0, null, function* () {
var _a3, _b2, _c;
setBtnLoading(true);
const res = yield (0,fetch/* default */.ZP)(`/api/paths/${pathId}/statistics_task.json`, {
method: "post"
});
setBtnLoading(false);
if (res.status === 0) {
modal["default"].info({
title: "\u63D0\u793A",
okText: "\u786E\u5B9A",
width: 460,
centered: true,
onOk: () => {
},
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "pt10" }, (((_a3 = res == null ? void 0 : res.data) == null ? void 0 : _a3.stat) == 2 || ((_b2 = res == null ? void 0 : res.data) == null ? void 0 : _b2.stat) == 3) && /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u8BE5\u8BFE\u7A0B\u5DF2\u5B58\u5728\u7EDF\u8BA1\u4EFB\u52A1\uFF0C\u4E0D\u53EF\u91CD\u590D\u751F\u6210\u3002"), ((_c = res == null ? void 0 : res.data) == null ? void 0 : _c.stat) == 1 && /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5DF2\u751F\u6210\u66F4\u65B0\u4EFB\u52A1\uFF0C\u7531\u4E8E\u5F53\u524D\u66F4\u65B0\u5B9E\u8DF5\u8BFE\u7A0B\u7EDF\u8BA1\u4EFB\u52A1\u8F83\u591A\uFF0C", /* @__PURE__ */ _react_17_0_2_react.createElement("br", null), "\u9700\u6392\u961F\u8FDB\u884C\u66F4\u65B0\uFF0C\u9884\u8BA1\u660E\u592918\uFF1A00\u4E4B\u524D\u66F4\u65B0\u5B8C\u6210\u3002"))
});
}
});
return /* @__PURE__ */ _react_17_0_2_react.createElement("section", { className: Statisticsmodules.bg }, /* @__PURE__ */ _react_17_0_2_react.createElement("header", { className: Statisticsmodules.header }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.titleWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-fanhui2 font16", onClick: () => _umi_production_exports.history.push(`/paths/${pathId}`) }), !!(statisticsData == null ? void 0 : statisticsData.report_date) && /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Statisticsmodules.title }, "\u5B66\u4E60\u7EDF\u8BA1-", ((_a2 = data == null ? void 0 : data.subject_info) == null ? void 0 : _a2.name) || "")), /* @__PURE__ */ _react_17_0_2_react.createElement(row/* default */.Z, { style: { flexShrink: 0, marginTop: 3 }, align: "middle" }, (0,authority/* isSuperAdmins */.Ny)() && /* @__PURE__ */ _react_17_0_2_react.createElement(
"a",
{
href: env/* default */.Z.API_SERVER + `/api/paths/${urlParams.pathId}/${bigTab === "spoc" ? "statistics_basic_info" : "autonomic_statistics"}.xlsx`,
download: `\u7EDF\u8BA1\u6570\u636E.xlsx`
},
"\u5BFC\u51FA\u7EDF\u8BA1\u6570\u636E"
), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml10 mr10" }, "\u6570\u636E\u66F4\u65B0\u81F3 ", statisticsData == null ? void 0 : statisticsData.report_date), /* @__PURE__ */ _react_17_0_2_react.createElement(es_button/* default */.ZP, { type: "primary", onClick: updateData, loading: btnLoading }, "\u66F4\u65B0\u6570\u636E"))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.info }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.title }, "\u57FA\u672C\u4FE1\u606F"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.boxWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.icon }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-xuexirenshu3" })), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, (data == null ? void 0 : data.total_study_count) || "--"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u5B66\u4E60\u603B\u4EBA\u6570"))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.icon }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-danweishu" })), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, (data == null ? void 0 : data.total_school_used_count) || "--"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u603B\u5B66\u4E60\u5355\u4F4D\u6570", /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: "\u540C\u4E00\u4E2A\u5355\u4F4D\u53EF\u80FD\u540C\u65F6\u5B58\u5728SPOC\u5B66\u4E60\u548C\u81EA\u4E3B\u5B66\u4E60\uFF0C\u6B64\u5904\u4E3A\u53BB\u91CD\u540E\u603B\u5B66\u4E60\u5355\u4F4D\u6570" }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-xiaowenhao1 font14 c-grey-999 ml5" }))))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.icon }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-guankashu2" })), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, (data == null ? void 0 : data.total_challenge_count) || "--"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u5B8C\u6210\u5173\u5361\u603B\u6B21\u6570"))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.icon }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-pingceshu" })), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, (data == null ? void 0 : data.total_evaluate_count) || "--"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u8BC4\u6D4B\u603B\u6B21\u6570"))))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Statisticsmodules.bigTabs }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { onClick: () => handleBigTabs("spoc"), className: bigTab === "spoc" ? Statisticsmodules.active : "" }, "SPOC\u5B66\u4E60\u60C5\u51B5"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { onClick: () => handleBigTabs("initiative"), className: bigTab === "initiative" ? Statisticsmodules.active : "" }, "\u81EA\u4E3B\u5B66\u4E60\u60C5\u51B5")), bigTab === "spoc" ? /* @__PURE__ */ _react_17_0_2_react.createElement(Statistics_SPOC, { setStatisticsData }) : /* @__PURE__ */ _react_17_0_2_react.createElement(Statistics_OWN, { setStatisticsData }), /* @__PURE__ */ _react_17_0_2_react.createElement("main", { className: Statisticsmodules.main }, /* @__PURE__ */ _react_17_0_2_react.createElement(
tabs["default"],
{
activeKey: selectKey,
onChange: handleChangeTabs,
tabBarExtraContent: /* @__PURE__ */ _react_17_0_2_react.createElement("span", { style: { color: "#FA6400", fontSize: 12 } }, "\u6CE8\uFF1A\u672C\u8BFE\u7A0B\u4E3B\u8981\u7EDF\u8BA1\u5B9E\u8DF5\u5173\u5361\u7684\u60C5\u51B5")
},
/* @__PURE__ */ _react_17_0_2_react.createElement(TabPane, { tab: "\u5B66\u4E60\u6982\u51B5\u7EDF\u8BA1", key: "LearnIng" /* LearnIng */ }, /* @__PURE__ */ _react_17_0_2_react.createElement(Learning, { key: indexKey, form: bigTab, selectKey, statisticsData })),
/* @__PURE__ */ _react_17_0_2_react.createElement(TabPane, { tab: "\u5B66\u4E60\u8D28\u91CF\u5206\u6790", key: "Quality" /* Quality */ }, /* @__PURE__ */ _react_17_0_2_react.createElement(Quality, { form: bigTab, selectKey, statisticsData })),
(statisticsData == null ? void 0 : statisticsData.shixun_count) > 0 && bigTab === "spoc" && /* @__PURE__ */ _react_17_0_2_react.createElement(TabPane, { tab: "\u5B9E\u8BAD\u4F7F\u7528\u5206\u6790", key: "shixunusetow" /* ShiXunUsetow */ }, /* @__PURE__ */ _react_17_0_2_react.createElement(ShiXunUestow, { selectKey }))
)));
};
/* harmony default export */ var Detail_Statistics = ((0,_umi_production_exports.connect)(({ user, pathsDetail, loading, globalSetting }) => ({
user,
pathsDetail,
globalSetting,
loading
}))(Statistics));
/***/ })
}]);