fastlion-amis
Version:
一种MIS页面生成工具
133 lines (132 loc) • 9.37 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_1 = tslib_1.__importStar(require("react"));
var antd_1 = require("antd");
var helper_1 = require("../../../../../utils/helper");
var lodash_1 = require("lodash");
var utils_1 = require("../utils/utils");
var FlowCountersign_1 = (0, tslib_1.__importDefault)(require("../FlowCountersign"));
var FlowModalReturn_1 = (0, tslib_1.__importDefault)(require("../FlowModalReturn"));
var Workflow_1 = (0, tslib_1.__importDefault)(require("../../../Workflow"));
require("./index.scss");
var FlowFields = function (props) {
var env = props.env, currentProcess = props.currentProcess, val = props.val, render = props.render, onChange = props.onChange, title = props.title, isPick = props.isPick, handleBatch = props.handleBatch, batch = props.batch, handleDetail = props.handleDetail, handleOnChange = props.handleOnChange, onImageEnlarge = props.onImageEnlarge, returnNodeApi = props.returnNodeApi, attachmentApi = props.attachmentApi;
// pa端弹窗 移动端
var _a = (0, react_1.useState)(false), open = _a[0], setOpen = _a[1];
// 个人请求数据
var _b = (0, react_1.useState)(), flowDetail = _b[0], setFlowDetail = _b[1];
var ChildRef = react_1.default.createRef();
var api = val.detailApi;
var Mobile = (0, helper_1.isMobile)();
// 获取个人请求信息
var handleOk = function () { return (0, tslib_1.__awaiter)(void 0, void 0, void 0, function () {
var res;
return (0, tslib_1.__generator)(this, function (_a) {
switch (_a.label) {
case 0:
handleDetail(true);
return [4 /*yield*/, env.fetcher(api, currentProcess)];
case 1:
res = _a.sent();
if (res.status === 0) {
setFlowDetail(res.data);
setOpen(true);
handleDetail(false);
}
else {
antd_1.message.error(res.msg);
handleDetail(false);
}
return [2 /*return*/];
}
});
}); };
var handleRadio = (0, lodash_1.debounce)(function (api, value) { return (0, tslib_1.__awaiter)(void 0, void 0, void 0, function () {
var data, content, content, res;
var _a, _b, _c, _d, _e;
return (0, tslib_1.__generator)(this, function (_f) {
switch (_f.label) {
case 0:
data = (0, tslib_1.__assign)({}, currentProcess);
if (!(value == 'flow_assign')) return [3 /*break*/, 2];
return [4 /*yield*/, ((_b = (_a = ChildRef.current) === null || _a === void 0 ? void 0 : _a.handleOk) === null || _b === void 0 ? void 0 : _b.call(_a))];
case 1:
content = _f.sent();
if ((content === null || content === void 0 ? void 0 : content.assignFlag) == undefined || ((_c = content === null || content === void 0 ? void 0 : content.afterUserIds) === null || _c === void 0 ? void 0 : _c.length) == 0 || content == undefined)
return [2 /*return*/];
data = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, data), content);
return [3 /*break*/, 4];
case 2: return [4 /*yield*/, ((_e = (_d = ChildRef.current) === null || _d === void 0 ? void 0 : _d.handleOk) === null || _e === void 0 ? void 0 : _e.call(_d))];
case 3:
content = _f.sent();
data = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, data), content);
_f.label = 4;
case 4:
if (!(data != null)) return [3 /*break*/, 6];
return [4 /*yield*/, env.fetcher(api, data).finally()];
case 5:
res = _f.sent();
if (res.status === 0) {
setOpen(false);
onChange && onChange();
handleOnChange && handleOnChange();
}
else {
antd_1.message.error(res.msg);
}
_f.label = 6;
case 6: return [2 /*return*/];
}
});
}); }, 600);
var handleContainer = function (data, api) {
switch (data) {
case 'flow_assign':
case 'flow_referral':
// 加签
return react_1.default.createElement(FlowCountersign_1.default, { name: data, env: env, render: render, handleOnClick: function () { api && handleRadio(api, data); }, onRef: ChildRef, attachmentApi: attachmentApi });
// 退回 确定 拒绝
case 'flow_return':
case 'flow_agree':
case 'flow_refuse':
return (flowDetail && currentProcess.taskId) ?
react_1.default.createElement(FlowModalReturn_1.default, { name: data, env: env, flowDetail: flowDetail, render: render, onRef: ChildRef, taskId: currentProcess.taskId, onImageEnlarge: onImageEnlarge, returnNodeApi: returnNodeApi, handleOnClick: function () {
api && handleRadio(api, data);
}, attachmentApi: attachmentApi }) : react_1.default.createElement(react_1.default.Fragment, null);
// 撤回
case 'flow_revert':
return (0, utils_1.handleRevert)();
default:
return react_1.default.createElement(react_1.default.Fragment, null);
}
};
return (react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement("div", { className: "process_tabs " + (!Mobile ? 'process_pc' : '') },
isPick && react_1.default.createElement(antd_1.Checkbox, { className: 'checkbox', onChange: function (e) { return handleBatch(e.target.value, e.target.checked); }, checked: batch === null || batch === void 0 ? void 0 : batch.some(function (Item) { return Item == currentProcess.processInstanceId; }), value: currentProcess.processInstanceId }),
react_1.default.createElement("div", { className: 'process_content', onClick: function () { handleOk(); } },
react_1.default.createElement("div", { className: 'process_content_introduce' },
react_1.default.createElement("div", { className: 'process_content_title' },
react_1.default.createElement("span", { className: 'process_content_name' }, currentProcess.taskName || currentProcess.processDefinitionName),
title !== 'doneItem' && ((currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.taskStatus) ?
(0, utils_1.currentaudit)(currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.taskStatus, title) :
(currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.processStatus) &&
(0, utils_1.currentaudit)(currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.processStatus, title))),
// 显示时间
react_1.default.createElement("div", { className: 'taskEndTime' }, (currentProcess.duration && currentProcess.duration)
|| (currentProcess.taskEndTime && currentProcess.taskEndTime))),
react_1.default.createElement("div", { className: 'process_content_report_forms' },
currentProcess.workCondition && currentProcess.workCondition.map(function (Item) {
return react_1.default.createElement("div", { className: 'text' },
react_1.default.createElement("label", { className: 'text_title' }, Item.label),
"\uFF1A",
react_1.default.createElement("span", { className: 'textvalue' }, Item.value));
}),
react_1.default.createElement("div", { className: 'process_content_report_forms_icon' }, title == 'doneItem' && ((currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.taskStatus) ?
(0, utils_1.currentaudit)(currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.taskStatus, title) :
(currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.processStatus) &&
(0, utils_1.currentaudit)(currentProcess === null || currentProcess === void 0 ? void 0 : currentProcess.processStatus, title)))))),
react_1.default.createElement(Workflow_1.default, { visible: open, onClose: function (reload) { setOpen(reload); }, env: env, render: render, onImageEnlarge: onImageEnlarge, flowDetail: flowDetail, handleContainer: handleContainer, handleRadio: handleRadio })));
};
exports.default = FlowFields;
//# sourceMappingURL=./renderers/Lion/Mobileprocess/components/FlowFields/index.js.map