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.
559 lines
27 KiB
559 lines
27 KiB
"use strict";
|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[4715],{
|
|
|
|
/***/ 14661:
|
|
/*!************************************************************!*\
|
|
!*** ./src/components/ui-customization/reset.less?modules ***!
|
|
\************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__) {
|
|
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ __webpack_exports__.Z = ({"flex_box_center":"flex_box_center___vG4eV","flex_space_between":"flex_space_between___qVVxe","flex_box_vertical_center":"flex_box_vertical_center___P8Z8s","flex_box_center_end":"flex_box_center_end___VMme3","flex_box_column":"flex_box_column___VMHwm","dropdownmenus":"dropdownmenus___oVzoj","popupClassNames":"popupClassNames___OcZq7","selectdown":"selectdown___mmcA8"});
|
|
|
|
/***/ }),
|
|
|
|
/***/ 12804:
|
|
/*!********************************************************************************!*\
|
|
!*** ./src/pages/virtualSpaces/Lists/Material/AddOrEdit/index.tsx + 1 modules ***!
|
|
\********************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
Z: function() { return /* binding */ Material_AddOrEdit; }
|
|
});
|
|
|
|
// 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/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/input/index.js + 5 modules
|
|
var input = __webpack_require__(98135);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/upload/index.js + 24 modules
|
|
var upload = __webpack_require__(46651);
|
|
;// CONCATENATED MODULE: ./src/pages/virtualSpaces/Lists/Material/AddOrEdit/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var AddOrEditmodules = ({"flex_box_center":"flex_box_center___eFoM9","flex_space_between":"flex_space_between___Wg6Gr","flex_box_vertical_center":"flex_box_vertical_center___TqrrQ","flex_box_center_end":"flex_box_center_end___L9c4u","flex_box_column":"flex_box_column___SvH8v","form":"form___LQCl5","btn":"btn___l3d4K","img":"img___CeTIL"});
|
|
// EXTERNAL MODULE: ./src/components/ui-customization/reset.less?modules
|
|
var resetmodules = __webpack_require__(14661);
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
var env = __webpack_require__(21873);
|
|
// 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/components/ui-customization/index.tsx + 34 modules
|
|
var ui_customization = __webpack_require__(26324);
|
|
;// CONCATENATED MODULE: ./src/pages/virtualSpaces/Lists/Material/AddOrEdit/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 AddOrEdit = ({
|
|
visible,
|
|
onOk,
|
|
onCancel,
|
|
title = ""
|
|
}) => {
|
|
var _a, _b;
|
|
const [form] = es_form["default"].useForm();
|
|
const [btnLoading, setBtnLoading] = (0,_react_17_0_2_react.useState)(false);
|
|
const [fileList, setFileList] = (0,_react_17_0_2_react.useState)([]);
|
|
const [imgLoading, setImgLoading] = (0,_react_17_0_2_react.useState)(false);
|
|
console.log(visible, 22);
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
var _a2, _b2;
|
|
if (visible == null ? void 0 : visible.id) {
|
|
form.setFieldsValue(__spreadProps(__spreadValues({}, visible), { attachment_id: (_a2 = visible == null ? void 0 : visible.attachment) == null ? void 0 : _a2.id }));
|
|
const newFileList = [__spreadProps(__spreadValues({}, visible == null ? void 0 : visible.attachment), { response: { id: (_b2 = visible == null ? void 0 : visible.attachment) == null ? void 0 : _b2.id } })];
|
|
setFileList(newFileList);
|
|
}
|
|
}, [visible]);
|
|
const handleOk = () => {
|
|
form.submit();
|
|
};
|
|
const handleCancel = () => {
|
|
onCancel();
|
|
};
|
|
const handleFinish = (values) => __async(void 0, null, function* () {
|
|
var _a2, _b2;
|
|
setBtnLoading(true);
|
|
const param = __spreadProps(__spreadValues({}, values), {
|
|
attachment_id: ((_b2 = (_a2 = fileList == null ? void 0 : fileList[0]) == null ? void 0 : _a2.response) == null ? void 0 : _b2.id) || ""
|
|
});
|
|
onOk(param);
|
|
});
|
|
const handleFileChange = (info) => {
|
|
var _a2, _b2, _c;
|
|
form.setFieldsValue({ attachment_id: "" });
|
|
const statusList = ["uploading", "done", "removed"];
|
|
if (statusList.includes(info.file.status)) {
|
|
if (info.file.status === "uploading") {
|
|
setImgLoading(true);
|
|
}
|
|
if (info.file.status === "done") {
|
|
setImgLoading(false);
|
|
}
|
|
setFileList(info.fileList);
|
|
form.setFieldsValue({ attachment_id: (_c = (_b2 = (_a2 = info.fileList) == null ? void 0 : _a2[0]) == null ? void 0 : _b2.response) == null ? void 0 : _c.id });
|
|
}
|
|
};
|
|
const handleFileRemove = (file) => {
|
|
setFileList([]);
|
|
};
|
|
const handleFileBeforeUpload = (file) => {
|
|
const isJpgOrPng = file.type === "image/jpeg" || file.type === "image/png";
|
|
if (!isJpgOrPng) {
|
|
message/* default */.ZP.error("\u8BF7\u4E0A\u4F20jpg\u6216png\u7684\u56FE\u7247!");
|
|
return Promise.reject();
|
|
}
|
|
const is150M = file.size / 1024 / 1024 > 2;
|
|
if (is150M) {
|
|
message/* default */.ZP.info("\u6587\u4EF6\u5927\u5C0F\u5FC5\u987B\u5C0F\u4E8E2MB");
|
|
return Promise.reject();
|
|
}
|
|
setFileList([]);
|
|
return true;
|
|
};
|
|
const renderImg = () => {
|
|
var _a2, _b2;
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: AddOrEditmodules.img }, /* @__PURE__ */ _react_17_0_2_react.createElement("img", { src: env/* default */.Z.API_SERVER + "/api/attachments/" + ((_b2 = (_a2 = fileList == null ? void 0 : fileList[0]) == null ? void 0 : _a2.response) == null ? void 0 : _b2.id), alt: "avatar", style: { width: "100%" } }), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement(CloseCircleFilled/* default */.Z, { onClick: () => {
|
|
setFileList([]);
|
|
form.setFieldsValue({ attachment_id: "" });
|
|
}, style: { fontSize: "16px", color: "red" } })));
|
|
};
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
modal["default"],
|
|
{
|
|
title: `${(visible == null ? void 0 : visible.id) ? "\u7F16\u8F91" : "\u65B0\u5EFA"}${title}`,
|
|
open: visible,
|
|
onOk: handleOk,
|
|
centered: true,
|
|
onCancel: handleCancel,
|
|
confirmLoading: btnLoading,
|
|
okButtonProps: {
|
|
disabled: imgLoading
|
|
},
|
|
width: 686,
|
|
afterClose: () => {
|
|
setBtnLoading(false);
|
|
setFileList([]);
|
|
form.resetFields();
|
|
},
|
|
okText: "\u786E\u8BA4",
|
|
cancelText: "\u53D6\u6D88",
|
|
wrapClassName: resetmodules/* default */.Z.CustomCss
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"],
|
|
{
|
|
form,
|
|
colon: false,
|
|
labelCol: { span: 4 },
|
|
wrapperCol: { span: 18 },
|
|
onFinish: handleFinish,
|
|
className: AddOrEditmodules.form
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: `${title}\u540D\u79F0`,
|
|
name: "name",
|
|
rules: [{
|
|
required: true,
|
|
message: `\u8BF7\u8F93\u5165${title}\u540D\u79F0`
|
|
}, { whitespace: true, message: `\u8BF7\u8F93\u5165${title}\u540D\u79F0` }, { max: 100, message: "\u53EA\u80FD\u8F93\u516560\u4E2A\u5B57\u7B26" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { maxLength: 100, placeholder: `\u8BF7\u8F93\u5165${title}\u540D\u79F0` })
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u4F5C\u8005",
|
|
name: "author",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u8F93\u5165\u4F5C\u8005"
|
|
}, { whitespace: true, message: "\u8BF7\u8F93\u5165\u4F5C\u8005" }, { max: 50, message: "\u53EA\u80FD\u8F93\u516550\u4E2A\u5B57\u7B26" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { maxLength: 50, placeholder: "\u8BF7\u8F93\u5165\u4F5C\u8005" })
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u51FA\u7248\u793E",
|
|
name: "publisher",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u8F93\u5165\u51FA\u7248\u793E"
|
|
}, { whitespace: true, message: "\u5B9E\u8DF5\u51FA\u7248\u793E" }, { max: 50, message: "\u53EA\u80FD\u8F93\u516550\u4E2A\u5B57\u7B26" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { maxLength: 50, placeholder: "\u8BF7\u8F93\u5165\u51FA\u7248\u793E" })
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u51FA\u7248\u65F6\u95F4",
|
|
name: "publication_time",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u8F93\u5165\u51FA\u7248\u65F6\u95F4"
|
|
}, { whitespace: true, message: "\u8BF7\u8F93\u5165\u51FA\u7248\u65F6\u95F4" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { maxLength: 60, placeholder: "\u8BF7\u8F93\u5165\u51FA\u7248\u65F6\u95F4" })
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "ISBN",
|
|
name: "number",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u8F93\u5165ISBN"
|
|
}, { whitespace: true, message: "\u8BF7\u8F93\u5165ISBN" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { maxLength: 60, placeholder: "\u8BF7\u8F93\u5165ISBN" })
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
name: "attachment_id",
|
|
label: "\u5C01\u9762\u56FE\u7247",
|
|
rules: [{
|
|
required: true,
|
|
message: "\u8BF7\u4E0A\u4F20\u5C01\u9762\u56FE\u7247"
|
|
}]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: AddOrEditmodules.upload }, ((_b = (_a = fileList == null ? void 0 : fileList[0]) == null ? void 0 : _a.response) == null ? void 0 : _b.id) ? renderImg() : /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
upload["default"],
|
|
{
|
|
fileList,
|
|
action: `${env/* default */.Z.API_SERVER}/api/attachments.json`,
|
|
onChange: (e) => handleFileChange(e),
|
|
onRemove: (e) => handleFileRemove(e),
|
|
beforeUpload: (e) => handleFileBeforeUpload(e),
|
|
withCredentials: true,
|
|
accept: "image/*"
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(ui_customization/* CustomButton */.op, { style: { borderRadius: "2px", marginLeft: 4, marginTop: 3 } }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-shangchuantupian2 mr5" }), "\u4E0A\u4F20\u56FE\u7247")
|
|
))
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { label: "\u8D2D\u4E66\u94FE\u63A5", name: "buy_url", rules: [{ type: "url", message: "\u8D2D\u4E66\u94FE\u63A5\u683C\u5F0F\u4E0D\u6B63\u786E" }] }, /* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { placeholder: "\u8BF7\u8F93\u5165\u8D2D\u4E66\u94FE\u63A5", maxLength: 150 })),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { label: "\u76F8\u5173\u8BFE\u7A0B\u94FE\u63A5", name: "relevance_url", rules: [{ type: "url", message: "\u76F8\u5173\u8BFE\u7A0B\u94FE\u63A5\u683C\u5F0F\u4E0D\u6B63\u786E" }] }, /* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { placeholder: "\u8BF7\u8F93\u5165\u76F8\u5173\u8BFE\u7A0B\u94FE\u63A5", maxLength: 150 }))
|
|
)
|
|
);
|
|
};
|
|
/* harmony default export */ var Material_AddOrEdit = (AddOrEdit);
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 72816:
|
|
/*!*****************************************************************************!*\
|
|
!*** ./src/pages/virtualSpaces/Lists/Material/Detail/index.tsx + 1 modules ***!
|
|
\*****************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
// ESM COMPAT FLAG
|
|
__webpack_require__.r(__webpack_exports__);
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"default": function() { return /* binding */ Material_Detail; }
|
|
});
|
|
|
|
// 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/modal/index.js + 16 modules
|
|
var modal = __webpack_require__(43418);
|
|
// 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/tooltip/index.js + 3 modules
|
|
var tooltip = __webpack_require__(6848);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
|
|
var row = __webpack_require__(95237);
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
var fetch = __webpack_require__(51165);
|
|
;// CONCATENATED MODULE: ./src/pages/virtualSpaces/Lists/Material/Detail/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var Detailmodules = ({"flex_box_center":"flex_box_center___lxATc","flex_space_between":"flex_space_between___tK2pC","flex_box_vertical_center":"flex_box_vertical_center___cjSuT","flex_box_center_end":"flex_box_center_end___KwKQj","flex_box_column":"flex_box_column___EDD9l","Onerow":"Onerow___QbfBb","MultiLine":"MultiLine___Uix9V","wrap":"wrap___cwBRd","editor":"editor___arbaB","btns":"btns___HTQm5","list":"list___tBaoe","left":"left___GF5gU","right":"right___MFAP_","title":"title___piSmp"});
|
|
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx
|
|
var RenderHtml = __webpack_require__(16921);
|
|
// EXTERNAL MODULE: ./src/pages/virtualSpaces/Lists/Material/AddOrEdit/index.tsx + 1 modules
|
|
var AddOrEdit = __webpack_require__(12804);
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
var env = __webpack_require__(21873);
|
|
// EXTERNAL MODULE: ./src/components/ui-customization/index.tsx + 34 modules
|
|
var ui_customization = __webpack_require__(26324);
|
|
// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 15 modules
|
|
var markdown_editor = __webpack_require__(96180);
|
|
// EXTERNAL MODULE: ./src/components/ui-customization/reset.less?modules
|
|
var resetmodules = __webpack_require__(14661);
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
|
|
var _umi_production_exports = __webpack_require__(67866);
|
|
// EXTERNAL MODULE: ./src/utils/authority.ts
|
|
var authority = __webpack_require__(88141);
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
var util = __webpack_require__(13462);
|
|
;// CONCATENATED MODULE: ./src/pages/virtualSpaces/Lists/Material/Detail/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 Detail = ({
|
|
globalSetting,
|
|
dispatch,
|
|
virtualSpaces
|
|
}) => {
|
|
const query = (0,_umi_production_exports.useParams)();
|
|
const { id, virtual_spacesId } = query;
|
|
const [active, setActive] = (0,_react_17_0_2_react.useState)("description");
|
|
const [data, setData] = (0,_react_17_0_2_react.useState)({});
|
|
const [loading, setLoading] = (0,_react_17_0_2_react.useState)(true);
|
|
const [visible, setVisible] = (0,_react_17_0_2_react.useState)(false);
|
|
const [description, setDescription] = (0,_react_17_0_2_react.useState)("");
|
|
const saveDescription = (0,_react_17_0_2_react.useRef)("");
|
|
const [edit, setEdit] = (0,_react_17_0_2_react.useState)(false);
|
|
const [btnLoading, setBtnLoading] = (0,_react_17_0_2_react.useState)(false);
|
|
const { virtualSpacesDetails } = virtualSpaces;
|
|
const { name, attachment, author, publisher, number, publication_time, material_type, buy_url, relevance_url } = data;
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
getData();
|
|
}, [id]);
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
getTabsData();
|
|
}, [active]);
|
|
const tabs = [{
|
|
id: "description",
|
|
name: "\u7B80\u4ECB"
|
|
}, {
|
|
id: "directory",
|
|
name: "\u76EE\u5F55"
|
|
}, {
|
|
id: "foreword",
|
|
name: "\u524D\u8A00"
|
|
}];
|
|
const verify = (user_id) => {
|
|
const bool = (0,authority/* isSuperAdmins */.Ny)() || (virtualSpacesDetails == null ? void 0 : virtualSpacesDetails.is_creator) || (virtualSpacesDetails == null ? void 0 : virtualSpacesDetails.is_member) && (virtualSpacesDetails == null ? void 0 : virtualSpacesDetails.user_id) === user_id;
|
|
return bool;
|
|
};
|
|
const getData = () => __async(void 0, null, function* () {
|
|
setLoading(true);
|
|
const res = yield (0,fetch/* default */.ZP)(`/api/virtual_classrooms/${query.virtual_spacesId}/subject_materials/${id}.json`, {
|
|
method: "get"
|
|
});
|
|
if ((res == null ? void 0 : res.status) !== -1) {
|
|
setData(__spreadValues({}, res));
|
|
}
|
|
setLoading(false);
|
|
});
|
|
const getTabsData = () => __async(void 0, null, function* () {
|
|
setLoading(true);
|
|
const res = yield (0,fetch/* default */.ZP)(`/api/virtual_classrooms/${query.virtual_spacesId}/subject_materials/${id}/show_desc.json`, {
|
|
method: "get",
|
|
params: {
|
|
column: active
|
|
}
|
|
});
|
|
if ((res == null ? void 0 : res.status) !== -1) {
|
|
setDescription((res == null ? void 0 : res[active]) || "");
|
|
saveDescription.current = (res == null ? void 0 : res[active]) || "";
|
|
}
|
|
setLoading(false);
|
|
});
|
|
const handleDelete = () => {
|
|
modal["default"].confirm({
|
|
title: "\u63D0\u793A",
|
|
okText: "\u786E\u5B9A\u5220\u9664",
|
|
okButtonProps: {
|
|
danger: true
|
|
},
|
|
icon: false,
|
|
className: resetmodules/* default */.Z.CustomTipsModalCss,
|
|
cancelText: "\u53D6\u6D88",
|
|
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u786E\u8BA4\u5220\u9664\u300A", name, "\u300B\u5417\uFF1F"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "mt10" }, "\u5220\u9664\u540E\uFF0C\u5C06\u65E0\u6CD5\u6062\u590D\uFF0C\u8BF7\u8C28\u614E\u64CD\u4F5C")),
|
|
onOk: () => __async(void 0, null, function* () {
|
|
const res = yield (0,fetch/* default */.ZP)(`/api/virtual_classrooms/${query.virtual_spacesId}/subject_materials/${id}.json`, {
|
|
method: "delete"
|
|
});
|
|
if ((res == null ? void 0 : res.status) !== -1) {
|
|
message/* default */.ZP.success("\u64CD\u4F5C\u6210\u529F");
|
|
_umi_production_exports.history.push(`/${util/* vtrsKey */.AS}/${virtual_spacesId}/material?leftMenuId=${window.localStorage.getItem("vtrsModuleId")}`);
|
|
}
|
|
})
|
|
});
|
|
};
|
|
const handleOk = (values) => __async(void 0, null, function* () {
|
|
const res = yield (0,fetch/* default */.ZP)(`/api/virtual_classrooms/${query.virtual_spacesId}/subject_materials/${id}.json`, {
|
|
method: "put",
|
|
body: __spreadValues({
|
|
material_type: String(material_type)
|
|
}, values)
|
|
});
|
|
if ((res == null ? void 0 : res.status) !== -1) {
|
|
getData();
|
|
setVisible(false);
|
|
}
|
|
});
|
|
const handleEdit = () => __async(void 0, null, function* () {
|
|
setBtnLoading(true);
|
|
const body = {};
|
|
body[active] = description;
|
|
let res = yield (0,fetch/* default */.ZP)(`/api/virtual_classrooms/${query.virtual_spacesId}/subject_materials/${id}/update_desc.json`, {
|
|
method: "put",
|
|
body
|
|
});
|
|
if ((res == null ? void 0 : res.status) !== -1) {
|
|
getTabsData();
|
|
setEdit(false);
|
|
}
|
|
setBtnLoading(false);
|
|
});
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Detailmodules.wrap }, /* @__PURE__ */ _react_17_0_2_react.createElement(ui_customization/* HeadBack */.qE, { title: "\u6559\u6750\u8BE6\u60C5", onClick: () => _umi_production_exports.history.push(`/${util/* vtrsKey */.AS}/${virtual_spacesId}/material?leftMenuId=${window.localStorage.getItem("vtrsModuleId")}`) }, verify(data.user_id) && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Detailmodules.btns }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { onClick: () => {
|
|
setVisible(__spreadValues({}, data));
|
|
} }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "primary-hover" }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-bianji7 font14 mr5" }), "\u7F16\u8F91")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { onClick: () => handleDelete() }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "delete-hover" }, " ", /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-piliangshanchubeifen font14 mr5" }), "\u5220\u9664")))), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Detailmodules.list }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Detailmodules.left }, /* @__PURE__ */ _react_17_0_2_react.createElement("img", { src: env/* default */.Z.API_SERVER + (attachment == null ? void 0 : attachment.url) })), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Detailmodules.right }, /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: name }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Detailmodules.title, style: { width: !(relevance_url || buy_url) ? 786 : 550 } }, name)), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: author }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u4F5C\u8005\uFF1A", author)), /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: publisher }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u51FA\u7248\u793E\uFF1A", publisher))), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", null, /* @__PURE__ */ _react_17_0_2_react.createElement(tooltip/* default */.Z, { title: number }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "ISBN\uFF1A", number)), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u51FA\u7248\u65F6\u95F4\uFF1A", publication_time))), /* @__PURE__ */ _react_17_0_2_react.createElement(row/* default */.Z, { align: "middle" }, relevance_url && /* @__PURE__ */ _react_17_0_2_react.createElement(ui_customization/* CustomButton */.op, { onClick: () => window.open(relevance_url) }, "\u8FDB\u5165\u8BFE\u7A0B"), buy_url && /* @__PURE__ */ _react_17_0_2_react.createElement(ui_customization/* CustomButton */.op, { className: "ml20", type: "primary", icon: /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-goumai" }), onClick: () => window.open(buy_url) }, "\u8D2D\u4E70\u6559\u6750"))), /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
ui_customization/* CustomTabs */.YG,
|
|
{
|
|
value: active,
|
|
onChange: (k) => {
|
|
setActive(k);
|
|
},
|
|
tabBarExtraContent: verify(data.user_id) && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Detailmodules.btns }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { onClick: () => {
|
|
setEdit(true);
|
|
} }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "primary-hover" }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-bianji7 font14 mr5" }), "\u7F16\u8F91"))),
|
|
dataSource: tabs
|
|
}
|
|
), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "mt20" }, edit ? /* @__PURE__ */ _react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
markdown_editor/* default */.Z,
|
|
{
|
|
onChange: (v) => setDescription(v),
|
|
watch: true,
|
|
defaultValue: description
|
|
}
|
|
), /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
ui_customization/* ConfirmAndCancel */.QD,
|
|
{
|
|
confirmTitle: "\u4FDD\u5B58",
|
|
confirmLoading: btnLoading,
|
|
confirmClick: handleEdit,
|
|
cancelClick: () => {
|
|
setEdit(false);
|
|
setDescription(saveDescription.current);
|
|
},
|
|
cancelTitle: "\u53D6\u6D88",
|
|
className: "mb25"
|
|
}
|
|
)) : /* @__PURE__ */ _react_17_0_2_react.createElement(RenderHtml/* default */.Z, { className: Detailmodules.editor, value: description })), /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
AddOrEdit/* default */.Z,
|
|
{
|
|
visible,
|
|
title: material_type === 1 ? "\u4E3B\u6559\u6750" : "\u5B9E\u8DF5\u6559\u6750",
|
|
onCancel: () => setVisible(false),
|
|
onOk: handleOk
|
|
}
|
|
));
|
|
};
|
|
/* harmony default export */ var Material_Detail = ((0,_umi_production_exports.connect)(
|
|
({
|
|
virtualSpaces,
|
|
globalSetting
|
|
}) => ({
|
|
globalSetting,
|
|
virtualSpaces
|
|
})
|
|
)(Detail));
|
|
|
|
|
|
/***/ })
|
|
|
|
}]); |