"use strict"; (self["webpackChunk"] = self["webpackChunk"] || []).push([[3706],{ /***/ 30598: /*!**************************************************************************!*\ !*** ./src/pages/Graduations/components/HeadTitle/index.tsx + 1 modules ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { Z: function() { return /* binding */ components_HeadTitle; } }); // EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js var _react_17_0_2_react = __webpack_require__(59301); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/HeadTitle/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var HeadTitlemodules = ({"flex_box_center":"flex_box_center___oGGi8","flex_space_between":"flex_space_between___e1At5","flex_box_vertical_center":"flex_box_vertical_center___K1Nl5","flex_box_center_end":"flex_box_center_end___IP1rf","flex_box_column":"flex_box_column____nxPW","title":"title___Ynb7w","time":"time___dxFRB"}); // EXTERNAL MODULE: ./node_modules/_classnames@2.3.2@classnames/index.js var _classnames_2_3_2_classnames = __webpack_require__(12124); var _classnames_2_3_2_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_3_2_classnames); // EXTERNAL MODULE: ./src/pages/Graduations/components/Tags/index.tsx + 1 modules var Tags = __webpack_require__(26767); // 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); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/HeadTitle/index.tsx const HeadTitle = ({ className, status, style = {}, startAt, endAt, title }) => { return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: _classnames_2_3_2_classnames_default()(HeadTitlemodules.title, className), style }, /* @__PURE__ */ _react_17_0_2_react.createElement("b", null, title), /* @__PURE__ */ _react_17_0_2_react.createElement(Tags/* default */.Z, { className: "ml10", status }), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: HeadTitlemodules.time }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5F00\u542F\u65F6\u95F4", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml10" }, startAt ? dayjs_min_default()(startAt).format("YYYY-MM-DD HH:mm") : "--")), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml30" }, "\u622A\u6B62\u65F6\u95F4", /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml10" }, endAt ? dayjs_min_default()(endAt).format("YYYY-MM-DD HH:mm") : "--")))); }; /* harmony default export */ var components_HeadTitle = (HeadTitle); /***/ }), /***/ 33871: /*!*****************************************************************************!*\ !*** ./src/pages/Graduations/components/SettingModal/index.tsx + 1 modules ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { Z: function() { return /* binding */ components_SettingModal; } }); // EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js var _react_17_0_2_react = __webpack_require__(59301); // 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/upload/index.js + 24 modules var upload = __webpack_require__(6557); // 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/date-picker/index.js + 66 modules var date_picker = __webpack_require__(52409); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/SettingModal/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var SettingModalmodules = ({"flex_box_center":"flex_box_center___cQ5Sl","flex_space_between":"flex_space_between___BU1Wl","flex_box_vertical_center":"flex_box_vertical_center___jBfz4","flex_box_center_end":"flex_box_center_end___mFYce","flex_box_column":"flex_box_column___jBfuW","wrap":"wrap___npJKs","label":"label___mSlLf"}); // EXTERNAL MODULE: ./src/utils/env.ts + 1 modules var env = __webpack_require__(13316); // EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules var _umi_production_exports = __webpack_require__(23175); // EXTERNAL MODULE: ./src/components/ui-customization/index.tsx + 34 modules var ui_customization = __webpack_require__(89112); // EXTERNAL MODULE: ./src/utils/fetch.ts var fetch = __webpack_require__(94754); // EXTERNAL MODULE: ./src/utils/util.tsx var util = __webpack_require__(19234); // EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 14 modules var markdown_editor = __webpack_require__(45707); // 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/pages/Classrooms/Lists/ShixunHomeworks/Detail/components/ConfigWorks/Releasesetting.tsx var Releasesetting = __webpack_require__(58919); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/SettingModal/index.tsx 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; }; 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 SettingModal = ({ visible, data, onClose = () => { }, onSuccess = () => { } }) => { const [fileList, setFileList] = (0,_react_17_0_2_react.useState)([]); const [startAt, setStartAt] = (0,_react_17_0_2_react.useState)(""); const [endAt, setEndAt] = (0,_react_17_0_2_react.useState)(""); const [description, setDescription] = (0,_react_17_0_2_react.useState)(""); const [btnLoading, setBtnLoading] = (0,_react_17_0_2_react.useState)(false); const query = (0,_umi_production_exports.useParams)(); (0,_react_17_0_2_react.useEffect)(() => { var _a; if (visible) { setDescription((data == null ? void 0 : data.description) || ""); setStartAt((data == null ? void 0 : data.start_at) || ""); setEndAt((data == null ? void 0 : data.end_at) || ""); setFileList(((_a = data == null ? void 0 : data.attachments) == null ? void 0 : _a.map((e) => ({ name: e.name || e.title, status: "done", response: { id: e.id } }))) || []); } }, [visible]); const uploadProps = { multiple: true, withCredentials: true, fileList, beforeUpload: (file) => { const fileSize = file.size / 1024 / 1024; if (fileSize > 150) { message/* default */.ZP.error(`\u300A${file.name}\u300B\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(150M)`); return upload["default"].LIST_IGNORE; } return true; }, action: `${env/* default */.Z.API_SERVER}/api/attachments.json`, onChange(info) { setFileList((0,util/* dealUploadChange */.uD)(info)); } }; const handleOk = () => __async(void 0, null, function* () { if (!startAt || !endAt) { message/* default */.ZP.warning(`\u8BF7\u9009\u62E9${timeName}`); return; } setBtnLoading(true); console.log(fileList, "fileList"); const res = yield (0,fetch/* default */.ZP)(`/api/graduations/${query.id}/graduation_stages/${data.id}.json`, { method: "put", body: { start_at: startAt, end_at: endAt, description, attachment_ids: fileList.map((e) => { var _a; return (_a = e == null ? void 0 : e.response) == null ? void 0 : _a.id; }) } }); if ((res == null ? void 0 : res.status) === 0) { message/* default */.ZP.success("\u4FDD\u5B58\u8BBE\u7F6E\u6210\u529F"); (0,_umi_production_exports.getDvaApp)()._store.dispatch({ type: "graduations/getGraduationsDetails", payload: { id: query == null ? void 0 : query.id } }); onSuccess(); return; } setBtnLoading(false); }); console.log(data, "data"); const jsonItem = [ { name: "\u5B66\u751F\u9009\u9898", key: "student_selection", timeName: "\u5B66\u751F\u9009\u9898\u8D77\u6B62\u65F6\u95F4", width: 460, text: "\u5728\u6B64\u65F6\u95F4\u5185\uFF0C\u5B66\u751F\u53EF\u81EA\u52A9\u64CD\u4F5C\u9009\u9898\u548C\u66F4\u6539\u9009\u9898" }, { name: "\u4EFB\u52A1\u4E66", key: "tasks", width: 460, timeName: "\u4EFB\u52A1\u4E66\u8D77\u6B62\u65F6\u95F4", text: "" }, { name: "\u5F00\u9898\u62A5\u544A", key: "opening_report", width: 1146, timeName: "\u5B66\u751F\u63D0\u4EA4\u5F00\u9898\u62A5\u544A\u8D77\u6B62\u65F6\u95F4", text: "\u5728\u8BE5\u9636\u6BB5\u5185\u6216\u8005\u8001\u5E08\u8BC4\u9605\u901A\u8FC7\u4E4B\u524D\uFF0C\u5B66\u751F\u53EF\u4EE5\u81EA\u7531\u63D0\u4EA4\u6587\u6863\uFF0C\u4E00\u65E6\u8FC7\u4E86\u622A\u6B62\u65F6\u95F4\uFF0C\u5219\u9700\u8981\u7BA1\u7406\u5458\u6388\u6743\u8865\u4EA4" }, { name: "\u4E2D\u671F\u68C0\u67E5", key: "midterm_report", width: 1146, timeName: "\u5B66\u751F\u63D0\u4EA4\u4E2D\u671F\u68C0\u67E5\u8D77\u6B62\u65F6\u95F4", text: "\u5728\u8BE5\u9636\u6BB5\u5185\u6216\u8005\u8001\u5E08\u8BC4\u9605\u901A\u8FC7\u4E4B\u524D\uFF0C\u5B66\u751F\u53EF\u4EE5\u81EA\u7531\u63D0\u4EA4\u6587\u6863\uFF0C\u4E00\u65E6\u8FC7\u4E86\u622A\u6B62\u65F6\u95F4\uFF0C\u5219\u9700\u8981\u7BA1\u7406\u5458\u6388\u6743\u8865\u4EA4" }, { name: "\u6BD5\u4E1A\u8BBA\u6587", key: "thesis", width: 1146, timeName: "\u5B66\u751F\u63D0\u4EA4\u6BD5\u4E1A\u8BBA\u6587\u8D77\u6B62\u65F6\u95F4", text: "\u5728\u8BE5\u9636\u6BB5\u5185\u6216\u8005\u8001\u5E08\u8BC4\u9605\u901A\u8FC7\u4E4B\u524D\uFF0C\u5B66\u751F\u53EF\u4EE5\u81EA\u7531\u63D0\u4EA4\u6587\u6863\uFF0C\u4E00\u65E6\u8FC7\u4E86\u622A\u6B62\u65F6\u95F4\uFF0C\u5219\u9700\u8981\u7BA1\u7406\u5458\u6388\u6743\u8865\u4EA4" }, { name: "\u6BD5\u4E1A\u7B54\u8FA9", key: "final_defense", width: 1146, timeName: "\u5B66\u751F\u63D0\u4EA4\u6BD5\u4E1A\u7B54\u8FA9\u8D77\u6B62\u65F6\u95F4", text: "\u5728\u8BE5\u9636\u6BB5\u5185\u6216\u8005\u8001\u5E08\u8BC4\u9605\u901A\u8FC7\u4E4B\u524D\uFF0C\u5B66\u751F\u53EF\u4EE5\u81EA\u7531\u63D0\u4EA4\u6587\u6863\uFF0C\u4E00\u65E6\u8FC7\u4E86\u622A\u6B62\u65F6\u95F4\uFF0C\u5219\u9700\u8981\u7BA1\u7406\u5458\u6388\u6743\u8865\u4EA4" }, { name: "\u8BBA\u6587\u5B9A\u7A3F", key: "final_thesis", width: 1146, timeName: "\u5B66\u751F\u63D0\u4EA4\u8BBA\u6587\u5B9A\u7A3F\u8D77\u6B62\u65F6\u95F4", text: "\u5728\u8BE5\u9636\u6BB5\u5185\u6216\u8005\u8001\u5E08\u8BC4\u9605\u901A\u8FC7\u4E4B\u524D\uFF0C\u5B66\u751F\u53EF\u4EE5\u81EA\u7531\u63D0\u4EA4\u6587\u6863\uFF0C\u4E00\u65E6\u8FC7\u4E86\u622A\u6B62\u65F6\u95F4\uFF0C\u5219\u9700\u8981\u7BA1\u7406\u5458\u6388\u6743\u8865\u4EA4" }, { name: "\u5F52\u6863", key: "archives", width: 1146, timeName: "\u5B66\u751F\u63D0\u4EA4\u5F52\u6863\u8D77\u6B62\u65F6\u95F4", text: "\u5728\u8BE5\u9636\u6BB5\u5185\u6216\u8005\u8001\u5E08\u8BC4\u9605\u901A\u8FC7\u4E4B\u524D\uFF0C\u5B66\u751F\u53EF\u4EE5\u81EA\u7531\u63D0\u4EA4\u6587\u6863\uFF0C\u4E00\u65E6\u8FC7\u4E86\u622A\u6B62\u65F6\u95F4\uFF0C\u5219\u9700\u8981\u7BA1\u7406\u5458\u6388\u6743\u8865\u4EA4" } ]; const stageItem = ["opening_report", "midterm_report", "thesis", "final_defense", "final_thesis", "archives"]; const disabled = fileList.some((e) => !(e == null ? void 0 : e.response)); const { timeName, text, width, key } = (jsonItem == null ? void 0 : jsonItem.find((e) => e.key === (data == null ? void 0 : data.clazz))) || {}; return /* @__PURE__ */ _react_17_0_2_react.createElement( modal["default"], { centered: true, destroyOnClose: true, confirmLoading: btnLoading, okButtonProps: { disabled }, onCancel: onClose, onOk: handleOk, open: visible, title: `${data.name}\u8BBE\u7F6E`, width, afterClose: () => { setFileList([]); setStartAt(""); setDescription(""); setEndAt(""); setBtnLoading(false); }, okText: "\u4FDD\u5B58\u8BBE\u7F6E", cancelText: "\u53D6\u6D88" }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SettingModalmodules.wrap }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SettingModalmodules.label }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "*"), timeName), /* @__PURE__ */ _react_17_0_2_react.createElement(row/* default */.Z, { align: "middle", className: stageItem.includes(key) ? "mb20" : "" }, /* @__PURE__ */ _react_17_0_2_react.createElement( date_picker["default"], { format: "YYYY-MM-DD HH:mm", value: startAt ? dayjs_min_default()(startAt) : "", disabledDate: (current) => (0,Releasesetting/* disabledDate */.Q8)(current, "", data == null ? void 0 : data.disabled_time), disabledTime: (current) => (0,Releasesetting/* disabledTime */.d0)(current, data == null ? void 0 : data.disabled_time), showTime: { format: "HH:mm" }, onChange: (v, f) => { setStartAt(f); } } ), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml10 mr10" }, "\u81F3"), /* @__PURE__ */ _react_17_0_2_react.createElement( date_picker["default"], { format: "YYYY-MM-DD HH:mm", value: endAt ? dayjs_min_default()(endAt) : "", disabledDate: (current) => (0,Releasesetting/* disabledDate */.Q8)(current, "", data == null ? void 0 : data.disabled_time), disabledTime: (current) => (0,Releasesetting/* disabledTime */.d0)(current, data == null ? void 0 : data.disabled_time), showTime: { format: "HH:mm" }, onChange: (v, f) => { setEndAt(f); } } ), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: `${key === "student_selection" ? "mt10" : "ml10"} font14`, style: { color: "#9096A3" } }, text)), stageItem.includes(key) && /* @__PURE__ */ _react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: SettingModalmodules.label }, "\u9636\u6BB5\u63CF\u8FF0"), /* @__PURE__ */ _react_17_0_2_react.createElement( markdown_editor/* default */.Z, { height: 140, defaultValue: description, onChange: (v) => { setDescription(v); } } ), /* @__PURE__ */ _react_17_0_2_react.createElement(upload["default"], __spreadValues({}, uploadProps), /* @__PURE__ */ _react_17_0_2_react.createElement(row/* default */.Z, { align: "middle", className: "mt10" }, /* @__PURE__ */ _react_17_0_2_react.createElement(ui_customization/* CustomButton */.op, { style: { borderRadius: 2 } }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "icon-shangchuan3 mr5" }), "\u4E0A\u4F20\u6587\u6863"), /* @__PURE__ */ _react_17_0_2_react.createElement( "div", { className: "ml10 font14", style: { color: "#5F6367" }, onClick: (e) => { e.stopPropagation(); } }, "\u4E0A\u4F20\u6B64\u9636\u6BB5\u7684\u6587\u6863\u6A21\u7248\u3001\u6279\u9605\u8981\u6C42\u7B49\u6587\u6863\uFF0C\u5355\u4E2A\u6587\u6863\u5927\u5C0F\u4E0D\u8D85\u8FC7150M" ))))) ); }; /* harmony default export */ var components_SettingModal = (SettingModal); /***/ }), /***/ 26767: /*!*********************************************************************!*\ !*** ./src/pages/Graduations/components/Tags/index.tsx + 1 modules ***! \*********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { Z: function() { return /* binding */ components_Tags; } }); // EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js var _react_17_0_2_react = __webpack_require__(59301); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/Tags/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var Tagsmodules = ({"flex_box_center":"flex_box_center___Sswcw","flex_space_between":"flex_space_between___nBexI","flex_box_vertical_center":"flex_box_vertical_center___sPXvb","flex_box_center_end":"flex_box_center_end___c6nca","flex_box_column":"flex_box_column___Bq_gi","tag":"tag___NEywM"}); // EXTERNAL MODULE: ./node_modules/_classnames@2.3.2@classnames/index.js var _classnames_2_3_2_classnames = __webpack_require__(12124); var _classnames_2_3_2_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_3_2_classnames); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/Tags/index.tsx const Tags = ({ className, status }) => { return /* @__PURE__ */ _react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, status === 0 && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: _classnames_2_3_2_classnames_default()(Tagsmodules.tag, className) }, "\u672A\u5F00\u59CB"), status === 1 && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: _classnames_2_3_2_classnames_default()(Tagsmodules.tag, className), style: { background: "#19CB70" } }, "\u8FDB\u884C\u4E2D"), status === 2 && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: _classnames_2_3_2_classnames_default()(Tagsmodules.tag, className), style: { background: "#EE5D5D" } }, "\u5DF2\u7ED3\u675F")); }; /* harmony default export */ var components_Tags = (Tags); /***/ }), /***/ 93706: /*!******************************************************************************!*\ !*** ./src/pages/Graduations/components/TeacherModule/index.tsx + 1 modules ***! \******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { Z: function() { return /* binding */ TeacherModule; } }); // EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js var _react_17_0_2_react = __webpack_require__(59301); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/TeacherModule/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var TeacherModulemodules = ({"flex_box_center":"flex_box_center___Q4rC9","flex_space_between":"flex_space_between___pzGZc","flex_box_vertical_center":"flex_box_vertical_center___DhNf8","flex_box_center_end":"flex_box_center_end___ALRjT","flex_box_column":"flex_box_column___p6z9Y","wrap":"wrap____H2XH"}); // 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/row/index.js var row = __webpack_require__(95237); // EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules var table = __webpack_require__(72315); // EXTERNAL MODULE: ./src/components/ui-customization/index.tsx + 34 modules var ui_customization = __webpack_require__(89112); // EXTERNAL MODULE: ./src/pages/Graduations/components/HeadTitle/index.tsx + 1 modules var HeadTitle = __webpack_require__(30598); // EXTERNAL MODULE: ./src/utils/fetch.ts var fetch = __webpack_require__(94754); // EXTERNAL MODULE: ./src/pages/Graduations/components/SettingModal/index.tsx + 1 modules var SettingModal = __webpack_require__(33871); // EXTERNAL MODULE: ./src/components/NoData/index.tsx var NoData = __webpack_require__(90817); // EXTERNAL MODULE: ./src/utils/util.tsx var util = __webpack_require__(19234); ;// CONCATENATED MODULE: ./src/pages/Graduations/components/TeacherModule/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 __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 Page = ({ graduations, dispatch, tags, tagsTitle, tagsTitleWidth, placeholder, columns, updateKey, inputWidth = 214 }) => { var _a, _b, _c; const urlParams = (0,_umi_production_exports.useParams)(); const [searchParams] = (0,_umi_production_exports.useSearchParams)(); const [loading, setLoading] = (0,_react_17_0_2_react.useState)(false); const [total, setTotal] = (0,_react_17_0_2_react.useState)(0); const [list, setList] = (0,_react_17_0_2_react.useState)([]); const [settingVisible, setSettingVisible] = (0,_react_17_0_2_react.useState)(false); const { menus } = graduations; const tabKey = (_a = location.pathname.split("/")) == null ? void 0 : _a[3]; const tabParams = menus.find((e) => e.clazz === tabKey) || {}; const tabIndex = menus.find((e) => e.clazz === tabKey) || 1; const getUrlState = (searchParams == null ? void 0 : searchParams.get("state")) ? Number(searchParams == null ? void 0 : searchParams.get("state")) : ""; const [params, setParams] = (0,_react_17_0_2_react.useState)({ keyword: "", status: getUrlState, page: 1, limit: 20 }); (0,_react_17_0_2_react.useEffect)(() => { if (tabParams == null ? void 0 : tabParams.id) { getList(params); } }, [tabParams == null ? void 0 : tabParams.id, updateKey]); const getList = (record) => __async(void 0, null, function* () { setLoading(true); const res = yield (0,fetch/* default */.ZP)(`/api/graduations/${urlParams.id}/graduation_stages/${tabParams == null ? void 0 : tabParams.id}.json`, { method: "get", params: record }); if (res.status === 0) { setList((res == null ? void 0 : res.data) || []); setTotal(res == null ? void 0 : res.total_count); } setLoading(false); }); const handleChangeStatus = (status) => { params.status = status; params.page = 1; setParams(params); getList(params); }; const handleSearch = (v) => { params.keyword = v; params.page = 1; setParams(params); getList(params); }; const handlePagination = (page, pageSize) => { params.page = page; params.limit = pageSize; setParams(params); getList(params); }; const jsonItem = [{ name: "\u4EFB\u52A1\u4E66", key: "tasks", notStartText: "\u5F53\u524D\u9636\u6BB5\u8FD8\u672A\u5F00\u542F" }, { name: "\u5F00\u9898\u62A5\u544A", key: "opening_report", notStartText: "\u5F53\u524D\u9636\u6BB5\u8FD8\u672A\u5F00\u542F" }, { name: "\u4E2D\u671F\u68C0\u67E5", key: "midterm_report", notStartText: "\u5F53\u524D\u9636\u6BB5\u8FD8\u672A\u5F00\u542F" }, { name: "\u6BD5\u4E1A\u8BBA\u6587", key: "thesis", notStartText: "\u5F53\u524D\u9636\u6BB5\u8FD8\u672A\u5F00\u542F" }, { name: "\u6BD5\u4E1A\u7B54\u8FA9", key: "final_defense", notStartText: "\u5F53\u524D\u9636\u6BB5\u8FD8\u672A\u5F00\u542F" }, { name: "\u8BBA\u6587\u5B9A\u7A3F", key: "final_thesis", notStartText: "\u5F53\u524D\u9636\u6BB5\u8FD8\u672A\u5F00\u542F" }]; const notStartText = (_b = jsonItem == null ? void 0 : jsonItem.find((e) => e.key === (tabParams == null ? void 0 : tabParams.clazz))) == null ? void 0 : _b.notStartText; return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: TeacherModulemodules.wrap }, /* @__PURE__ */ _react_17_0_2_react.createElement( HeadTitle/* default */.Z, { title: tabParams == null ? void 0 : tabParams.name, className: "mb10", status: tabParams == null ? void 0 : tabParams.status, startAt: tabParams == null ? void 0 : tabParams.start_at, endAt: tabParams == null ? void 0 : tabParams.end_at } ), /* @__PURE__ */ _react_17_0_2_react.createElement(row/* default */.Z, { align: "middle", justify: "end", style: { height: 66 } }, !!(tabParams == null ? void 0 : tabParams.status) && /* @__PURE__ */ _react_17_0_2_react.createElement(row/* default */.Z, { align: "middle", style: { flex: 1 } }, /* @__PURE__ */ _react_17_0_2_react.createElement( ui_customization/* CustomTags */.qp, { title: tagsTitle, value: params.status, onChange: handleChangeStatus, dataSource: tags, className: "mt20", titleWidth: tagsTitleWidth } ), /* @__PURE__ */ _react_17_0_2_react.createElement( ui_customization/* CustomInput */.t7, { style: { width: inputWidth, marginLeft: "auto" }, placeholder, value: params.keyword, onChange: handleSearch } )), (0,util/* timeContrast */.QB)(tabParams == null ? void 0 : tabParams.next_start_at) && /* @__PURE__ */ _react_17_0_2_react.createElement(ui_customization/* CustomButton */.op, { style: { marginLeft: 15 }, onClick: () => setSettingVisible(true) }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-anquanshezhi font14 mr5" }), tabParams == null ? void 0 : tabParams.name, "\u8BBE\u7F6E")), (tabParams == null ? void 0 : tabParams.status) === 0 && /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, { customText: notStartText }), !!(tabParams == null ? void 0 : tabParams.status) && /* @__PURE__ */ _react_17_0_2_react.createElement( table["default"], { columns, dataSource: list, loading, rowKey: "id", locale: { emptyText: /* @__PURE__ */ _react_17_0_2_react.createElement(NoData/* default */.Z, null) }, pagination: { current: params.page, hideOnSinglePage: !total, showQuickJumper: true, showSizeChanger: true, pageSize: params.limit, pageSizeOptions: ["10", "20", "50", "100", "200"], total, size: "default", showTotal: util/* showTotal */.rU, onChange: handlePagination } } ), /* @__PURE__ */ _react_17_0_2_react.createElement( SettingModal/* default */.Z, { visible: settingVisible, data: __spreadProps(__spreadValues({}, tabParams), { disabled_time: (_c = menus == null ? void 0 : menus[tabIndex - 1]) == null ? void 0 : _c.end_at }), onClose: () => setSettingVisible(false), onSuccess: () => { setSettingVisible(false); } } )); }; /* harmony default export */ var TeacherModule = ((0,_umi_production_exports.connect)(({ graduations }) => ({ graduations }))(Page)); /***/ }) }]);