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.
691 lines
35 KiB
691 lines
35 KiB
"use strict";
|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[1621],{
|
|
|
|
/***/ 90190:
|
|
/*!********************************************************************!*\
|
|
!*** ./src/pages/Competitions/Detail/component/index.less?modules ***!
|
|
\********************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__) {
|
|
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ __webpack_exports__.Z = ({"modal":"modal___A9Ovz","colorBlue":"colorBlue___XSmR5","formWrap":"formWrap___wRvaA","flexRow":"flexRow___C40dc","flexColumn":"flexColumn___LkZfj","example":"example___bz7Hw","exampleImg":"exampleImg___gNkC_","colorOrange":"colorOrange___Ka6zf","uploader":"uploader___plQRr","uploadImg":"uploadImg___cjOpL","imageTip":"imageTip___p1_lZ","uploadTipIcon":"uploadTipIcon___SpsS2","uploadTip":"uploadTip___e9JlL","color05101a":"color05101a___CDEUv","viewLargerImg":"viewLargerImg___IclRX","footerWrap":"footerWrap___beWC6","note":"note___CXi9y","schoolHintWrap":"schoolHintWrap___Ma6ly","colorCDCDCD":"colorCDCDCD___D0UWo","color0152d9":"color0152d9___hF3Bb"});
|
|
|
|
/***/ }),
|
|
|
|
/***/ 61621:
|
|
/*!***************************************************************************************!*\
|
|
!*** ./src/pages/Competitions/Detail/component/ProfessionalAuthModal.tsx + 2 modules ***!
|
|
\***************************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
Z: function() { return /* binding */ component_ProfessionalAuthModal; }
|
|
});
|
|
|
|
// 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__(67866);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/select/index.js
|
|
var es_select = __webpack_require__(57809);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/upload/index.js + 24 modules
|
|
var upload = __webpack_require__(46651);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
|
|
var es_form = __webpack_require__(78241);
|
|
// 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/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/col/index.js
|
|
var col = __webpack_require__(43604);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/spin/index.js + 1 modules
|
|
var spin = __webpack_require__(71418);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
|
|
var input = __webpack_require__(98135);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/auto-complete/index.js
|
|
var auto_complete = __webpack_require__(88522);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
|
|
var es_button = __webpack_require__(3113);
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
var env = __webpack_require__(21873);
|
|
// EXTERNAL MODULE: ./src/assets/images/account/job.png
|
|
var job = __webpack_require__(51941);
|
|
// EXTERNAL MODULE: ./src/pages/Competitions/Detail/component/index.less?modules
|
|
var componentmodules = __webpack_require__(90190);
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
var util = __webpack_require__(13462);
|
|
// EXTERNAL MODULE: ./src/components/AppplyDepartmentModal/index.tsx
|
|
var AppplyDepartmentModal = __webpack_require__(5603);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/cascader/index.js + 18 modules
|
|
var cascader = __webpack_require__(19842);
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.7@@ant-design/icons/es/icons/CheckCircleFilled.js + 1 modules
|
|
var CheckCircleFilled = __webpack_require__(2720);
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.7@@ant-design/icons/es/icons/CloseCircleFilled.js + 1 modules
|
|
var CloseCircleFilled = __webpack_require__(97650);
|
|
// EXTERNAL MODULE: ./src/utils/cityData.ts
|
|
var cityData = __webpack_require__(96443);
|
|
;// CONCATENATED MODULE: ./src/pages/Competitions/Detail/components/AppplySchoolModal/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var AppplySchoolModalmodules = ({"flexRow":"flexRow___jGYtM","flexColumn":"flexColumn___NPMB3","formWrap":"formWrap___vwH9N","example":"example____BmJC","footerWrap":"footerWrap___lp1L0"});
|
|
;// CONCATENATED MODULE: ./src/pages/Competitions/Detail/components/AppplySchoolModal/index.tsx
|
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
var __objRest = (source, exclude) => {
|
|
var target = {};
|
|
for (var prop in source)
|
|
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
target[prop] = source[prop];
|
|
if (source != null && __getOwnPropSymbols)
|
|
for (var prop of __getOwnPropSymbols(source)) {
|
|
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
target[prop] = source[prop];
|
|
}
|
|
return target;
|
|
};
|
|
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 filter = (inputValue, path) => {
|
|
return path.some((option) => option.label.toLowerCase().indexOf(inputValue.toLowerCase()) > -1);
|
|
};
|
|
const TextArea = input["default"].TextArea;
|
|
const AppplySchoolModal = (_a) => {
|
|
var _b = _a, {
|
|
account,
|
|
globalSetting,
|
|
loading,
|
|
dispatch,
|
|
schoolName,
|
|
visible,
|
|
onClose = () => {
|
|
},
|
|
onSuccess = () => {
|
|
}
|
|
} = _b, props = __objRest(_b, [
|
|
"account",
|
|
"globalSetting",
|
|
"loading",
|
|
"dispatch",
|
|
"schoolName",
|
|
"visible",
|
|
"onClose",
|
|
"onSuccess"
|
|
]);
|
|
const [form] = es_form["default"].useForm();
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
form.setFieldsValue({ name: schoolName });
|
|
}, [schoolName]);
|
|
const handleFinish = (values) => __async(void 0, null, function* () {
|
|
const { name, city = [], address, remarks } = values || {};
|
|
const res = yield dispatch({
|
|
type: "account/appplySchool",
|
|
payload: {
|
|
name,
|
|
province: city[0],
|
|
city: city[1],
|
|
address,
|
|
remarks
|
|
}
|
|
});
|
|
onClose();
|
|
if (res) {
|
|
message/* default */.ZP.success("\u65B0\u589E\u5B66\u6821/\u5355\u4F4D\u6210\u529F\uFF01");
|
|
onSuccess(name);
|
|
}
|
|
});
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
modal["default"],
|
|
{
|
|
centered: true,
|
|
keyboard: false,
|
|
closable: false,
|
|
destroyOnClose: true,
|
|
open: visible,
|
|
title: "\u7533\u8BF7\u6DFB\u52A0\u5355\u4F4D\u540D\u79F0",
|
|
width: "600px",
|
|
footer: null
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"],
|
|
{
|
|
className: AppplySchoolModalmodules.formWrap,
|
|
form,
|
|
labelCol: { span: 4 },
|
|
wrapperCol: { span: 20 },
|
|
onFinish: handleFinish
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { label: "\u5355\u4F4D\u5168\u79F0\uFF1A", name: "name", rules: [{ required: true, message: "\u8BF7\u8F93\u5165\u5B66\u6821\u6216\u5DE5\u4F5C\u5355\u4F4D" }] }, /* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { placeholder: "\u5B66\u6821\u6216\u5DE5\u4F5C\u5355\u4F4D" })),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: `${AppplySchoolModalmodules.flexRow} ${AppplySchoolModalmodules.example}` }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u793A\u4F8B\uFF1A"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: AppplySchoolModalmodules.flexColumn }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement(CheckCircleFilled/* default */.Z, { style: { color: "rgb(82, 196, 26)" } }), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: `font14 ml5` }, "\u6B63\u786E\u793A\u4F8B\uFF1A\u6570\u636E\u7ED3\u6784")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement(CloseCircleFilled/* default */.Z, { style: { color: "red" } }), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: `font14 ml5` }, "\u9519\u8BEF\u793A\u4F8B\uFF1A\u6570\u636E\u7ED3\u67842019\u6625")))),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { label: "\u5730\u533A\uFF1A", name: "city" }, /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
cascader/* default */.Z,
|
|
{
|
|
allowClear: true,
|
|
size: "middle",
|
|
options: cityData/* CityData */.P,
|
|
placeholder: "\u8BF7\u9009\u62E9\u6240\u5728\u5730",
|
|
showSearch: { matchInputWidth: true, filter }
|
|
}
|
|
)),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { label: "\u8BE6\u7EC6\u5730\u5740\uFF1A", name: "address" }, /* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { placeholder: "\u8BF7\u586B\u5199\u5B8C\u6574\u7684\u5730\u5740\u4FE1\u606F" })),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { label: "\u8BF4\u660E\uFF1A", name: "remarks" }, /* @__PURE__ */ _react_17_0_2_react.createElement(TextArea, { placeholder: "\u518D\u6B21\u8BF4\u660E\u7279\u522B\u60C5\u51B5\uFF08\u9009\u586B\uFF09" })),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: AppplySchoolModalmodules.footerWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, null, /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_button/* default */.ZP,
|
|
{
|
|
className: "mr5",
|
|
size: "middle",
|
|
onClick: () => {
|
|
onClose();
|
|
}
|
|
},
|
|
"\u53D6\u6D88"
|
|
), /* @__PURE__ */ _react_17_0_2_react.createElement(es_button/* default */.ZP, { size: "middle", type: "primary", htmlType: "submit", loading: loading["account/appplySchool"] }, "\u4FDD\u5B58")))
|
|
)
|
|
);
|
|
};
|
|
/* harmony default export */ var components_AppplySchoolModal = ((0,_umi_production_exports.connect)(
|
|
({
|
|
account,
|
|
loading,
|
|
globalSetting
|
|
}) => ({
|
|
account,
|
|
globalSetting,
|
|
loading: loading.effects
|
|
})
|
|
)(AppplySchoolModal));
|
|
|
|
// EXTERNAL MODULE: ./src/service/home.ts
|
|
var home = __webpack_require__(18916);
|
|
// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
|
|
var lodash = __webpack_require__(89392);
|
|
;// CONCATENATED MODULE: ./src/pages/Competitions/Detail/component/ProfessionalAuthModal.tsx
|
|
/* provided dependency */ var React = __webpack_require__(/*! react */ 59301);
|
|
var __defProp = Object.defineProperty;
|
|
var __defProps = Object.defineProperties;
|
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
var ProfessionalAuthModal_getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
var ProfessionalAuthModal_hasOwnProp = Object.prototype.hasOwnProperty;
|
|
var ProfessionalAuthModal_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 (ProfessionalAuthModal_hasOwnProp.call(b, prop))
|
|
__defNormalProp(a, prop, b[prop]);
|
|
if (ProfessionalAuthModal_getOwnPropSymbols)
|
|
for (var prop of ProfessionalAuthModal_getOwnPropSymbols(b)) {
|
|
if (ProfessionalAuthModal_propIsEnum.call(b, prop))
|
|
__defNormalProp(a, prop, b[prop]);
|
|
}
|
|
return a;
|
|
};
|
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
var ProfessionalAuthModal_objRest = (source, exclude) => {
|
|
var target = {};
|
|
for (var prop in source)
|
|
if (ProfessionalAuthModal_hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
target[prop] = source[prop];
|
|
if (source != null && ProfessionalAuthModal_getOwnPropSymbols)
|
|
for (var prop of ProfessionalAuthModal_getOwnPropSymbols(source)) {
|
|
if (exclude.indexOf(prop) < 0 && ProfessionalAuthModal_propIsEnum.call(source, prop))
|
|
target[prop] = source[prop];
|
|
}
|
|
return target;
|
|
};
|
|
var ProfessionalAuthModal_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"].Option;
|
|
const Dragger = upload["default"].Dragger;
|
|
var Type = /* @__PURE__ */ ((Type2) => {
|
|
Type2[Type2["Professor"] = 1] = "Professor";
|
|
Type2[Type2["AssistantProfessor"] = 2] = "AssistantProfessor";
|
|
Type2[Type2["Student"] = 3] = "Student";
|
|
return Type2;
|
|
})(Type || {});
|
|
const ProfessionalAuthModal = (_a) => {
|
|
var _b = _a, {
|
|
user,
|
|
account,
|
|
globalSetting,
|
|
loading,
|
|
dispatch,
|
|
Scoid
|
|
} = _b, props = ProfessionalAuthModal_objRest(_b, [
|
|
"user",
|
|
"account",
|
|
"globalSetting",
|
|
"loading",
|
|
"dispatch",
|
|
"Scoid"
|
|
]);
|
|
var _a2, _b2;
|
|
const [form] = es_form["default"].useForm();
|
|
const [formValue, setFormValue] = (0,_react_17_0_2_react.useState)({});
|
|
const [schoolList, setSchoolList] = (0,_react_17_0_2_react.useState)([]);
|
|
const [filterSchoolList, setFilterSchoolList] = (0,_react_17_0_2_react.useState)([]);
|
|
const [departmentList, setDepartmentList] = (0,_react_17_0_2_react.useState)([]);
|
|
const [filterDepartmentList, setFilterDepartmentList] = (0,_react_17_0_2_react.useState)([]);
|
|
const [image, setImage] = (0,_react_17_0_2_react.useState)();
|
|
const [fileId, setFileId] = (0,_react_17_0_2_react.useState)();
|
|
const [isLoading, setIsLoading] = (0,_react_17_0_2_react.useState)();
|
|
const [visibleAppplySchool, setVisibleAppplySchool] = (0,_react_17_0_2_react.useState)();
|
|
const [visibleAppplyDepartment, setVisibleAppplyDepartment] = (0,_react_17_0_2_react.useState)();
|
|
const throttleGetSchoolOption = (0,_react_17_0_2_react.useRef)(
|
|
(0,lodash.throttle)((value) => getSchoolOption(value), 1200, { leading: true, trailing: true })
|
|
).current;
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
}, []);
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
(() => ProfessionalAuthModal_async(void 0, null, function* () {
|
|
if (!Scoid) {
|
|
return;
|
|
}
|
|
const res = yield getDepartmentOption(Scoid);
|
|
setDepartmentList(res == null ? void 0 : res.departments);
|
|
}))();
|
|
}, [Scoid]);
|
|
const getSchoolOption = (value) => ProfessionalAuthModal_async(void 0, null, function* () {
|
|
var _a3, _b3;
|
|
const res = yield dispatch({
|
|
type: "account/getSchoolOption",
|
|
payload: {
|
|
keyword: value,
|
|
limit: 10
|
|
}
|
|
});
|
|
setSchoolList(res == null ? void 0 : res.schools);
|
|
if (value && value != "") {
|
|
setFilterSchoolList((_a3 = res == null ? void 0 : res.schools) == null ? void 0 : _a3.filter((item) => item.name.includes(value)));
|
|
const findSchoolId = (((_b3 = res == null ? void 0 : res.schools) == null ? void 0 : _b3.find((item) => item.name === value)) || {}).id;
|
|
if (findSchoolId) {
|
|
handleSetDepartment(value, null, res == null ? void 0 : res.schools);
|
|
} else {
|
|
form.setFieldsValue({ department: "" });
|
|
setFormValue(__spreadValues(__spreadValues({}, formValue), { school: value, department: "" }));
|
|
}
|
|
}
|
|
});
|
|
const getDepartmentOption = (schoolId) => {
|
|
if (!schoolId) {
|
|
return;
|
|
}
|
|
return dispatch({
|
|
type: "account/getDepartmentOption",
|
|
payload: { id: schoolId }
|
|
});
|
|
};
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
if (!account.basicInfo) {
|
|
return;
|
|
}
|
|
const { basicInfo } = account;
|
|
const formData = {
|
|
identity: basicInfo.identity,
|
|
school: basicInfo.school_name,
|
|
department: basicInfo.department_name,
|
|
studentNo: basicInfo.student_id,
|
|
jobTitle: basicInfo.identity == "teacher" ? basicInfo.technical_title : "\u6559\u6388",
|
|
manager: basicInfo.identity == "professional" ? basicInfo.technical_title : "\u4F01\u4E1A\u7BA1\u7406\u8005"
|
|
};
|
|
form.setFieldsValue(formData);
|
|
setFormValue(formData);
|
|
}, [account.basicInfo]);
|
|
const handleApplySchool = () => {
|
|
setVisibleAppplySchool(true);
|
|
};
|
|
const handleApplyDepartment = () => {
|
|
if (!schoolList.find((item) => item.name === formValue.school)) {
|
|
message/* default */.ZP.info("\u8BF7\u5148\u9009\u62E9\u6B63\u786E\u7684\u5355\u4F4D\u6216\u8005\u5B66\u6821\uFF01");
|
|
return;
|
|
}
|
|
setVisibleAppplyDepartment(true);
|
|
};
|
|
const handleValuesChange = (changedValues) => {
|
|
setFormValue(__spreadValues({}, form.getFieldsValue()));
|
|
if ("school" in changedValues) {
|
|
setFilterSchoolList(schoolList.filter((item) => item.name.includes(changedValues.school)));
|
|
const findSchoolId = (schoolList.find((item) => item.name === changedValues.school) || {}).id;
|
|
if (findSchoolId) {
|
|
handleSetDepartment(changedValues.school);
|
|
} else {
|
|
form.setFieldsValue({ department: "" });
|
|
setFormValue(__spreadValues(__spreadValues({}, formValue), { school: changedValues.school, department: "" }));
|
|
}
|
|
}
|
|
};
|
|
const handlePrompt = (course_id, message2) => {
|
|
if (account.actionTabs.checkedList.includes(1 /* Professor */)) {
|
|
modal["default"].confirm({
|
|
centered: true,
|
|
okText: "\u786E\u5B9A",
|
|
cancelText: "\u53D6\u6D88",
|
|
title: "\u63D0\u793A",
|
|
content: /* @__PURE__ */ React.createElement("div", { className: "tc" }, message2 || "\u7533\u8BF7\u5DF2\u63D0\u4EA4\uFF0C\u8BF7\u7B49\u5F85\u5BA1\u6838"),
|
|
onOk: () => {
|
|
window.location.href = `/classrooms/${course_id}/students`;
|
|
}
|
|
});
|
|
return;
|
|
}
|
|
window.location.href = `/classrooms/${course_id}/students`;
|
|
};
|
|
const handleSetDepartment = (school, departmentName, schoolData) => ProfessionalAuthModal_async(void 0, null, function* () {
|
|
var _a3, _b3, _c;
|
|
const findSchoolId = (_a3 = (schoolData || schoolList).find((item) => item.name === school)) == null ? void 0 : _a3.id;
|
|
const res = (yield getDepartmentOption(findSchoolId)) || {};
|
|
setDepartmentList(res == null ? void 0 : res.departments);
|
|
const name = departmentName || ((_c = (_b3 = res == null ? void 0 : res.departments) == null ? void 0 : _b3[0]) == null ? void 0 : _c.name);
|
|
form.setFieldsValue({ department: name });
|
|
setFormValue(__spreadValues(__spreadValues({}, formValue), { school, department: name }));
|
|
});
|
|
const handleSchoolSuccess = (schoolName) => ProfessionalAuthModal_async(void 0, null, function* () {
|
|
yield getSchoolOption();
|
|
form.setFieldsValue({ school: schoolName, department: "" });
|
|
setFormValue(__spreadValues(__spreadValues({}, formValue), { school: schoolName, department: "" }));
|
|
});
|
|
const handleUploadChange = (info) => {
|
|
var _a3;
|
|
if (info.file.status === "uploading") {
|
|
setIsLoading(true);
|
|
return;
|
|
}
|
|
if (info.file.status === "done") {
|
|
console.log(info.file, info.file.response);
|
|
setFileId((_a3 = info.file.response) == null ? void 0 : _a3.id);
|
|
(0,util/* getBase64 */.y3)(info.file.originFileObj, (base64Img) => {
|
|
setImage(base64Img);
|
|
setIsLoading(false);
|
|
});
|
|
}
|
|
};
|
|
const handleFinish = (values) => ProfessionalAuthModal_async(void 0, null, function* () {
|
|
var _a3, _b3, _c, _d, _e;
|
|
const { school, department, identity, studentNo, jobTitle, manager } = values || {};
|
|
if (!image) {
|
|
message/* default */.ZP.info("\u8BF7\u5148\u4E0A\u4F20\u7167\u7247\uFF01");
|
|
return;
|
|
}
|
|
const school_id = (_a3 = schoolList.find((item) => item.name === school)) == null ? void 0 : _a3.id;
|
|
const department_id = (_b3 = departmentList.find((item) => item.name === department)) == null ? void 0 : _b3.id;
|
|
let extra;
|
|
if (identity === "student") {
|
|
extra = studentNo;
|
|
} else if (identity === "teacher") {
|
|
extra = jobTitle;
|
|
} else {
|
|
extra = manager;
|
|
}
|
|
const res = yield dispatch({
|
|
type: "account/applyProfessionalAuth",
|
|
payload: {
|
|
id: ((_c = account.basicInfo) == null ? void 0 : _c.id) || ((_d = user.userInfo) == null ? void 0 : _d.login),
|
|
school_id,
|
|
department_id,
|
|
identity,
|
|
extra,
|
|
attachment_ids: [fileId]
|
|
}
|
|
});
|
|
if (account.actionTabs.code) {
|
|
let res2 = yield (0,home/* applyToJoinCourse */.cR)({
|
|
invite_code: account.actionTabs.code,
|
|
professor: account.actionTabs.checkedList.includes(1 /* Professor */) ? 1 : null,
|
|
assistant_professor: account.actionTabs.checkedList.includes(2 /* AssistantProfessor */) ? 1 : null,
|
|
student: account.actionTabs.checkedList.includes(3 /* Student */) ? 1 : null
|
|
});
|
|
if (res2.message === "\u52A0\u5165\u6210\u529F") {
|
|
if (res2 == null ? void 0 : res2.course_id) {
|
|
handlePrompt(res2.course_id, res2.message);
|
|
} else {
|
|
message/* default */.ZP.success(res2.message);
|
|
}
|
|
}
|
|
}
|
|
handleClose();
|
|
if (res) {
|
|
message/* default */.ZP.info("\u7533\u8BF7\u5DF2\u63D0\u4EA4\uFF0C\u8BF7\u7B49\u5F85\u5BA1\u6838!");
|
|
dispatch({
|
|
type: "account/getBasicInfo",
|
|
payload: { login: (_e = user.userInfo) == null ? void 0 : _e.login }
|
|
});
|
|
}
|
|
});
|
|
const handleClose = () => {
|
|
dispatch({
|
|
type: "account/setActionTabs",
|
|
payload: {}
|
|
});
|
|
};
|
|
const uploadProps = {
|
|
data: { type: "professional" },
|
|
multiple: true,
|
|
showUploadList: false,
|
|
action: `${env/* default */.Z.API_SERVER}/api/attachments.json`,
|
|
className: componentmodules/* default */.Z.uploader,
|
|
onChange: handleUploadChange,
|
|
beforeUpload: (file) => {
|
|
const isJpgOrPng = file.type === "image/jpeg" || file.type === "image/png" || file.type === "image/jpg" || file.type === "image/bmp";
|
|
if (!isJpgOrPng) {
|
|
message/* default */.ZP.info("\u8BF7\u4E0A\u4F20\u6B63\u786E\u6587\u4EF6\u683C\u5F0F");
|
|
}
|
|
return isJpgOrPng;
|
|
}
|
|
};
|
|
return /* @__PURE__ */ React.createElement(
|
|
modal["default"],
|
|
{
|
|
centered: true,
|
|
keyboard: false,
|
|
closable: false,
|
|
destroyOnClose: true,
|
|
className: componentmodules/* default */.Z.modal,
|
|
open: account.actionTabs.key === "Account-ProfessionalAuth",
|
|
title: /* @__PURE__ */ React.createElement(row/* default */.Z, { style: { padding: "25px" }, align: "middle", justify: "space-between" }, /* @__PURE__ */ React.createElement(col/* default */.Z, null, "\u804C\u4E1A\u8BA4\u8BC1"), /* @__PURE__ */ React.createElement(col/* default */.Z, null, /* @__PURE__ */ React.createElement("i", { className: "iconfont icon-guanbi11", style: { color: "#979797", cursor: "pointer" }, onClick: handleClose }))),
|
|
width: "660px",
|
|
footer: null
|
|
},
|
|
/* @__PURE__ */ React.createElement(spin/* default */.Z, { spinning: !!isLoading }, /* @__PURE__ */ React.createElement(
|
|
es_form["default"],
|
|
{
|
|
className: componentmodules/* default */.Z.formWrap,
|
|
form,
|
|
colon: false,
|
|
onValuesChange: handleValuesChange,
|
|
onFinish: handleFinish
|
|
},
|
|
/* @__PURE__ */ React.createElement(row/* default */.Z, { gutter: [10, 0] }, /* @__PURE__ */ React.createElement(col/* default */.Z, { flex: "300px" }, /* @__PURE__ */ React.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u804C\u4E1A",
|
|
name: "identity",
|
|
rules: [{ required: true, message: "\u8BF7\u5148\u9009\u62E9\u804C\u4E1A" }]
|
|
},
|
|
/* @__PURE__ */ React.createElement(es_select["default"], null, /* @__PURE__ */ React.createElement(Option, { value: "teacher" }, "\u6559\u5E08"), /* @__PURE__ */ React.createElement(Option, { value: "student" }, "\u5B66\u751F"), /* @__PURE__ */ React.createElement(Option, { value: "professional" }, "\u4E13\u4E1A\u4EBA\u58EB"))
|
|
)), formValue.identity === "student" && /* @__PURE__ */ React.createElement(col/* default */.Z, { flex: "200px" }, /* @__PURE__ */ React.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
initialValue: formValue.studentNo,
|
|
name: "studentNo",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u5148\u8F93\u5165\u5B66\u53F7"
|
|
}]
|
|
},
|
|
/* @__PURE__ */ React.createElement(input["default"], { type: "text", placeholder: "\u8BF7\u8F93\u5165\u5B66\u53F7" })
|
|
)), formValue.identity === "teacher" && /* @__PURE__ */ React.createElement(col/* default */.Z, { flex: "200px" }, /* @__PURE__ */ React.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
initialValue: formValue.jobTitle,
|
|
name: "jobTitle",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u5148\u9009\u62E9\u804C\u79F0"
|
|
}]
|
|
},
|
|
/* @__PURE__ */ React.createElement(es_select["default"], null, /* @__PURE__ */ React.createElement(Option, { value: "\u6559\u6388" }, "\u6559\u6388"), /* @__PURE__ */ React.createElement(Option, { value: "\u526F\u6559\u6388" }, "\u526F\u6559\u6388"), /* @__PURE__ */ React.createElement(Option, { value: "\u8BB2\u5E08" }, "\u8BB2\u5E08"), /* @__PURE__ */ React.createElement(Option, { value: "\u52A9\u6559" }, "\u52A9\u6559"))
|
|
)), formValue.identity === "professional" && /* @__PURE__ */ React.createElement(col/* default */.Z, { flex: "200px" }, /* @__PURE__ */ React.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
initialValue: formValue.manager,
|
|
name: "manager",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u5148\u9009\u62E9\u804C\u79F0"
|
|
}]
|
|
},
|
|
/* @__PURE__ */ React.createElement(es_select["default"], null, /* @__PURE__ */ React.createElement(Option, { value: "\u4F01\u4E1A\u7BA1\u7406\u8005" }, "\u4F01\u4E1A\u7BA1\u7406\u8005"), /* @__PURE__ */ React.createElement(Option, { value: "\u90E8\u95E8\u7BA1\u7406\u8005" }, "\u90E8\u95E8\u7BA1\u7406\u8005"), /* @__PURE__ */ React.createElement(Option, { value: "\u9AD8\u7EA7\u5DE5\u7A0B\u5E08" }, "\u9AD8\u7EA7\u5DE5\u7A0B\u5E08"), /* @__PURE__ */ React.createElement(Option, { value: "\u5DE5\u7A0B\u5E08" }, "\u5DE5\u7A0B\u5E08"), /* @__PURE__ */ React.createElement(Option, { value: "\u52A9\u7406\u5DE5\u7A0B\u5E08" }, "\u52A9\u7406\u5DE5\u7A0B\u5E08"))
|
|
))),
|
|
/* @__PURE__ */ React.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u5B66\u6821/\u5355\u4F4D",
|
|
name: "school",
|
|
extra: formValue.school && !(schoolList == null ? void 0 : schoolList.find((item) => item.name === formValue.school)) && /* @__PURE__ */ React.createElement("div", { className: componentmodules/* default */.Z.schoolHintWrap }, /* @__PURE__ */ React.createElement("span", { className: componentmodules/* default */.Z.colorCDCDCD }, "\u672A\u627E\u5230\u5305\u542B\u201C", formValue.school, "\u201D\u7684\u9AD8\u6821\uFF0C"), /* @__PURE__ */ React.createElement("span", { className: `${componentmodules/* default */.Z.color0152d9} current`, onClick: handleApplySchool }, "\u7533\u8BF7\u65B0\u589E")),
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u5148\u9009\u62E9\u5B66\u6821/\u5355\u4F4D"
|
|
}]
|
|
},
|
|
/* @__PURE__ */ React.createElement(
|
|
auto_complete/* default */.Z,
|
|
{
|
|
showSearch: true,
|
|
onSearch: throttleGetSchoolOption,
|
|
options: filterSchoolList == null ? void 0 : filterSchoolList.map((item) => ({ value: item.name }))
|
|
}
|
|
)
|
|
),
|
|
/* @__PURE__ */ React.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u9662\u7CFB/\u90E8\u95E8",
|
|
name: "department",
|
|
extra: formValue.department && !(departmentList == null ? void 0 : departmentList.find((item) => item.name === formValue.department)) && /* @__PURE__ */ React.createElement("div", { className: componentmodules/* default */.Z.schoolHintWrap }, /* @__PURE__ */ React.createElement("span", { className: componentmodules/* default */.Z.colorCDCDCD }, formValue.department ? `\u672A\u627E\u5230\u5305\u542B\u201C${formValue.department}\u201D\u7684\u9AD8\u6821\uFF0C` : "\u672A\u627E\u5230\u9662\u7CFB\uFF0C"), /* @__PURE__ */ React.createElement("span", { className: `${componentmodules/* default */.Z.color0152d9} current`, onClick: handleApplyDepartment }, "\u7533\u8BF7\u65B0\u589E")),
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u5148\u9009\u62E9\u9662\u7CFB/\u90E8\u95E8"
|
|
}]
|
|
},
|
|
/* @__PURE__ */ React.createElement(
|
|
auto_complete/* default */.Z,
|
|
{
|
|
showSearch: true,
|
|
onChange: (value) => setFilterDepartmentList(departmentList.filter((item) => item.name.includes(value))),
|
|
options: filterDepartmentList == null ? void 0 : filterDepartmentList.map((item) => ({ value: item.name }))
|
|
}
|
|
)
|
|
),
|
|
/* @__PURE__ */ React.createElement(es_form["default"].Item, { label: "\u804C\u4E1A\u8BC1\u4E0A\u4F20" }, /* @__PURE__ */ React.createElement("div", { className: componentmodules/* default */.Z.flexRow }, /* @__PURE__ */ React.createElement("div", { className: componentmodules/* default */.Z.flexColumn }, /* @__PURE__ */ React.createElement(
|
|
Dragger,
|
|
__spreadProps(__spreadValues({}, uploadProps), {
|
|
accept: ".png,.jpg,.bmp,.jpeg"
|
|
}),
|
|
image ? /* @__PURE__ */ React.createElement("img", { src: image, className: componentmodules/* default */.Z.uploadImg }) : /* @__PURE__ */ React.createElement("div", { className: componentmodules/* default */.Z.imageTip }, /* @__PURE__ */ React.createElement("p", null, /* @__PURE__ */ React.createElement("i", { className: `iconfont icon-cuban2shangchuanyunduan ${componentmodules/* default */.Z.uploadTipIcon}` })), /* @__PURE__ */ React.createElement("p", { className: componentmodules/* default */.Z.uploadTip }, /* @__PURE__ */ React.createElement("a", { className: componentmodules/* default */.Z.color05101a }, "\u70B9\u51FB\u6216\u62D6\u62FD\u4E0A\u4F20\u56FE\u7247")))
|
|
), /* @__PURE__ */ React.createElement("span", { className: "tc" }, /* @__PURE__ */ React.createElement("p", { className: componentmodules/* default */.Z.viewLargerImg }, "\u67E5\u770B\u5927\u56FE"))), /* @__PURE__ */ React.createElement("div", { className: `${componentmodules/* default */.Z.flexColumn} ${componentmodules/* default */.Z.example}` }, /* @__PURE__ */ React.createElement("span", { className: componentmodules/* default */.Z.exampleImg }, /* @__PURE__ */ React.createElement("img", { src: job })), /* @__PURE__ */ React.createElement("span", { className: "tc" }, /* @__PURE__ */ React.createElement("p", null, "\u793A\u4F8B\u56FE\u7247"), /* @__PURE__ */ React.createElement("p", { className: `${componentmodules/* default */.Z.colorOrange} font12` }, "\uFF08png/jpg/bmp\u683C\u5F0F\uFF0C\u4E0D\u8D85\u8FC72MB\uFF09"))))),
|
|
/* @__PURE__ */ React.createElement("div", { className: componentmodules/* default */.Z.footerWrap }, /* @__PURE__ */ React.createElement(es_form["default"].Item, null, /* @__PURE__ */ React.createElement(
|
|
es_button/* default */.ZP,
|
|
{
|
|
className: "mr5",
|
|
size: "middle",
|
|
onClick: handleClose
|
|
},
|
|
"\u53D6\u6D88"
|
|
), /* @__PURE__ */ React.createElement(es_button/* default */.ZP, { size: "middle", type: "primary", htmlType: "submit", loading: loading["account/applyProfessionalAuth"] }, "\u4FDD\u5B58"))),
|
|
/* @__PURE__ */ React.createElement("div", { className: componentmodules/* default */.Z.note }, /* @__PURE__ */ React.createElement("p", null, "\u8BA4\u8BC1\u987B\u77E5\uFF1A"), /* @__PURE__ */ React.createElement("p", null, "1.\u6839\u636E\u804C\u4E1A\u4E0A\u4F20\u76F8\u5E94\u7684\u8BC1\u4EF6\u7167\uFF1A\u6559\u5E08\uFF08\u6559\u5E08\u8BC1\uFF09\uFF0C\u4E13\u4E1A\u4EBA\u58EB\uFF08\u5458\u5DE5\u8BC1\uFF09\u3001\u5B66\u751F\uFF08\u5B66\u751F\u8BC1\uFF09\uFF0C\u8BF7\u786E\u4FDD\u8BC1\u4EF6\u7167\u5185\u5BB9\u5B8C\u6574\u5E76\u4E14\u6E05\u6670\u53EF\u89C1\uFF0C\u4E25\u7981PS\uFF1B"), /* @__PURE__ */ React.createElement("p", null, "2.\u6211\u4EEC\u5C06\u5728\u4F60\u63D0\u4EA4\u804C\u4E1A\u8BC1\u4FE1\u606F\u540E\u768424\u5C0F\u65F6\uFF08\u4E0D\u5305\u542B\u8282\u5047\u65E5\uFF09\u5185\u5B8C\u6210\u5BA1\u6838\uFF0C\u5BA1\u6838\u7ED3\u679C\u5C06\u4F1A\u4EE5\u7CFB\u7EDF\u6D88\u606F\u7684\u5F62\u5F0F\u53D1\u9001\u7ED9\u4F60\uFF1B"), /* @__PURE__ */ React.createElement("p", null, "3.\u804C\u4E1A\u8BA4\u8BC1\u5BA1\u6838\u5B8C\u6210\u540E\uFF0C\u65E0\u6CD5\u5220\u9664\uFF0C\u8BF7\u8C28\u614E\u586B\u5199\uFF1B\u804C\u4E1A\u53D8\u66F4\u8BF7\u9009\u62E9\u91CD\u65B0\u8BA4\u8BC1\uFF1B"), /* @__PURE__ */ React.createElement("p", null, "4.\u804C\u4E1A\u8BA4\u8BC1\u5BA1\u6838\u5B8C\u6210\u540E\uFF0C\u7CFB\u7EDF\u5C06\u81EA\u52A8\u53D1\u653E500\u4E2A\u91D1\u5E01\u4F5C\u4E3A\u5956\u52B1\uFF1B"), /* @__PURE__ */ React.createElement("p", null, "5.\u6211\u4EEC\u4F1A\u786E\u4FDD\u4F60\u6240\u63D0\u4F9B\u7684\u4FE1\u606F\u5747\u5904\u4E8E\u4E25\u683C\u7684\u4FDD\u5BC6\u72B6\u6001\uFF0C\u4E0D\u4F1A\u6CC4\u9732\uFF1B"), /* @__PURE__ */ React.createElement("p", null, "6.\u5982\u5B58\u5728\u6076\u610F\u4E71\u586B\u5199\u59D3\u540D\uFF0C\u5B66\u53F7\uFF0C\u53CA\u4E0A\u4F20\u4E0E\u804C\u4E1A\u8BC1\u4EF6\u65E0\u5173\u56FE\u7247\u8005\uFF0C\u4E00\u7ECF\u53D1\u73B0\u5C06\u51BB\u7ED3", !((_a2 = globalSetting == null ? void 0 : globalSetting.setting) == null ? void 0 : _a2.is_local) && "EduCoder", "\u8D26\u53F7\u3002"), /* @__PURE__ */ React.createElement("p", null, "7.\u975E\u8001\u5E08\u8EAB\u4EFD\u63D0\u4EA4\u804C\u4E1A\u8BA4\u8BC1\u540E\u7CFB\u7EDF\u4F1A\u81EA\u52A8\u5C06\u72B6\u6001\u6539\u4E3A\u5DF2\u8BA4\u8BC1\uFF0C\u4F60\u5C06\u53EF\u4EE5\u4F53\u9A8C\u5E73\u53F0\u9700\u8981\u804C\u4E1A\u8BA4\u8BC1\u7684\u529F\u80FD\uFF1B\u5982\u679C\u5728\u8BA4\u8BC1\u540E\u7684\u4F7F\u7528\u8FC7\u7A0B\u4E2D\u672A\u901A\u8FC7\u5BA1\u6838\uFF0C\u4F60\u5C06\u4E0D\u80FD\u7EE7\u7EED\u4F53\u9A8C\u9700\u8981\u8BA4\u8BC1\u7684\u529F\u80FD\u3002"))
|
|
)),
|
|
/* @__PURE__ */ React.createElement(
|
|
components_AppplySchoolModal,
|
|
{
|
|
visible: visibleAppplySchool,
|
|
onClose: () => setVisibleAppplySchool(false),
|
|
schoolName: formValue.school,
|
|
onSuccess: handleSchoolSuccess
|
|
}
|
|
),
|
|
/* @__PURE__ */ React.createElement(
|
|
AppplyDepartmentModal/* default */.Z,
|
|
{
|
|
visible: visibleAppplyDepartment,
|
|
onClose: () => setVisibleAppplyDepartment(false),
|
|
schoolId: (_b2 = schoolList.find((item) => item.name === formValue.school)) == null ? void 0 : _b2.id,
|
|
schoolName: formValue.school,
|
|
departmentName: formValue.department,
|
|
onSuccess: (departmentName) => handleSetDepartment(formValue.school, departmentName)
|
|
}
|
|
)
|
|
);
|
|
};
|
|
/* harmony default export */ var component_ProfessionalAuthModal = ((0,_umi_production_exports.connect)(
|
|
({
|
|
user,
|
|
account,
|
|
loading,
|
|
globalSetting
|
|
}) => ({
|
|
user,
|
|
account,
|
|
globalSetting,
|
|
loading: loading.effects
|
|
})
|
|
)(ProfessionalAuthModal));
|
|
|
|
|
|
/***/ })
|
|
|
|
}]); |