UNPKG

dareway-rui

Version:

852 lines (703 loc) 29.7 kB
'use strict'; var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault'); Object.defineProperty(exports, '__esModule', { value: true }); exports.doNewProcess = doNewProcess; exports.completeTask = completeTask; exports.createPI = createPI; exports.goAgg = goAgg; var _regenerator = _interopRequireDefault(require('@babel/runtime/regenerator')); var _objectSpread2 = _interopRequireDefault(require('@babel/runtime/helpers/objectSpread')); var _typeof2 = _interopRequireDefault(require('@babel/runtime/helpers/typeof')); var _isPlainObject = _interopRequireDefault(require('is-plain-object')); var _util = require('../util'); var _taglib = require('../taglib'); var _openRES = _interopRequireDefault(require('../taglib/res/openRES')); var _WorkFlowUtil = _interopRequireDefault(require('./WorkFlowUtil')); var _marked = /*#__PURE__*/ _regenerator.default.mark(doNewProcess), _marked2 = /*#__PURE__*/ _regenerator.default.mark(afterChosePDA), _marked3 = /*#__PURE__*/ _regenerator.default.mark(isAggLaneNewable), _marked4 = /*#__PURE__*/ _regenerator.default.mark(goAgg); // TODO callback ??? function doNewProcess(pdid, pjson) { var pbiz, bljgid, json, getUserUrl, userResultVdo, _process_start_user_id, _process_start_user_name, _process_biz_from, urlNewProcess, key, value, newProcessResultVdo, newprocess_code, newprocess_info, newprocess_info_obj, tid, piid, laneContainer, currentLane, currentLaneID, pdlabel, _pdid, rolelist, detailMsg, i, roleStr, pdaid, resRet, _piid, _tid, _pdaid, _resRet, _piid2, multiPDAParams, _pdaid2; return _regenerator.default.wrap(function doNewProcess$(_context) { while (1) { switch ((_context.prev = _context.next)) { case 0: if ((0, _isPlainObject.default)(pjson)) { _context.next = 2; break; } throw new Error( '\u51FD\u6570\u5B9A\u4E49\uFF1AdoNewProcess(pdid, pjson)\n\u51FD\u6570\u8C03\u7528\uFF1A.doNewProcess(' .concat(pdid, ', ') .concat( pjson, ')\n\u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 pjson \u4E3A\u975E\u7A7A\u7B80\u5355\u5BF9\u8C61\u7C7B\u578B\uFF08\u4F8B\u5982\uFF1A{biz: "370303"}\uFF09\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A ' ) .concat((0, _typeof2.default)(pjson), '\uFF0C\u503C\u4E3A ') .concat(pjson, '\n\u8BF7\u68C0\u67E5!') ); case 2: // pjson 中必须包含参数 biz // pjson 中必须包含参数 bljgid pbiz = pjson.biz; bljgid = pjson.bljgid; if (pbiz) { _context.next = 6; break; } throw new Error( '\u51FD\u6570\u5B9A\u4E49\uFF1AdoNewProcess(pdid, pjson)\n\u51FD\u6570\u8C03\u7528\uFF1A.doNewProcess(' .concat(pdid, ', ') .concat( JSON.stringify(pjson), ')\n\u5F02\u5E38\u4FE1\u606F\uFF1A\u5165\u53C2 pjson \u4E2D\u5FC5\u987B\u5305\u542B\u5B57\u6BB5 biz\n\u8BF7\u68C0\u67E5!' ) ); case 6: if (bljgid) { _context.next = 8; break; } throw new Error( '\u51FD\u6570\u5B9A\u4E49\uFF1AdoNewProcess(pdid, pjson)\n\u51FD\u6570\u8C03\u7528\uFF1A.doNewProcess(' .concat(pdid, ', ') .concat( JSON.stringify(pjson), ')\n\u5F02\u5E38\u4FE1\u606F\uFF1A\u5165\u53C2 pjson \u4E2D\u5FC5\u987B\u5305\u542B\u5B57\u6BB5 bljgid\n\u8BF7\u68C0\u67E5!' ) ); case 8: /////////////////////////////////////////////////////////////////////////////////////////////////////////// json = (0, _objectSpread2.default)({}, pjson); //发送请求获取开启人信息 getUserUrl = new _util.URL('process/getPIStartInfo'); _context.next = 12; return (0, _util.request)(getUserUrl); case 12: userResultVdo = _context.sent; (_process_start_user_id = userResultVdo._process_start_user_id), (_process_start_user_name = userResultVdo._process_start_user_name), (_process_biz_from = userResultVdo._process_biz_from); json = (0, _objectSpread2.default)({}, json, { _process_start_user_id: _process_start_user_id, _process_start_user_name: _process_start_user_name, _process_biz_from: _process_biz_from }); // 发起请求,开启流程实例 urlNewProcess = new _util.URL('process/doNewProcess'); urlNewProcess.addPara('pdid', pdid); urlNewProcess.addPara('_process_biz', pbiz); for (key in json) { value = json[key]; urlNewProcess.addPara(key, value); } _context.next = 21; return (0, _util.request)(urlNewProcess); case 21: newProcessResultVdo = _context.sent; // 分析后台返回结果 (newprocess_code = newProcessResultVdo.newprocess_code), (newprocess_info = newProcessResultVdo.newprocess_info); newprocess_info_obj = JSON.parse(newprocess_info); (tid = newprocess_info_obj.tid), (piid = newprocess_info_obj.piid); _context.t0 = newprocess_code; _context.next = _context.t0 === '1' ? 28 : _context.t0 === '2' ? 44 : _context.t0 === '3' ? 55 : _context.t0 === '4' ? 73 : _context.t0 === '5' ? 86 : _context.t0 === '6' ? 89 : 96; break; case 28: if (!(!tid || tid == 'undefined')) { _context.next = 32; break; } _context.next = 31; return _WorkFlowUtil.default.openTaskAboutNewProcess(piid); case 31: return _context.abrupt('return'); case 32: _context.next = 34; return (0, _taglib.getLaneContainer)(); case 34: laneContainer = _context.sent; _context.next = 37; return laneContainer.getCurrentLane(); case 37: currentLane = _context.sent; _context.next = 40; return currentLane.getID(); case 40: currentLaneID = _context.sent; _context.next = 43; return _WorkFlowUtil.default.doTask(tid, currentLaneID); case 43: return _context.abrupt('break', 96); case 44: // 无权开启流程 (pdlabel = newprocess_info_obj.pdlabel), (_pdid = newprocess_info_obj.pdid), (rolelist = newprocess_info_obj.rolelist); detailMsg = '\u60A8\u5C1D\u8BD5\u529E\u7406\u7684\u662F[' .concat(bljgid, ']\u4E0B\u7684[') .concat(_pdid, ':') .concat(pdlabel, ']\u4E1A\u52A1\u3002'); if (!(!rolelist || rolelist.length == 0)) { _context.next = 50; break; } detailMsg = detailMsg + '这个业务没有配置岗位,请联系系统管理员。'; _util.MsgBox.show('你没有权限办理[' + bljgid + ']下的业务[' + pdlabel + ']。', detailMsg); return _context.abrupt('break', 96); case 50: detailMsg += '可以办理这个业务的岗位有:'; for (i = 0; i < rolelist.length; i++) { roleStr = rolelist[i]; if (roleStr) { detailMsg = detailMsg + '\n' + ' ' + roleStr; } } detailMsg = detailMsg + '\n' + '您可以请上述岗位的人员来办理这笔业务。'; _util.MsgBox.show('你没有权限办理[' + bljgid + ']下的业务[' + pdlabel + ']。', detailMsg); return _context.abrupt('break', 96); case 55: // 需要转向一主体多流程——警告页面 pdaid = newprocess_info_obj.pdaid; _context.next = 58; return (0, _openRES.default)( '正在办理的业务', null, '_lib/workflow/vm/ViewActivePIAboutBO_jg.js', 1000, 600, { pbiz: pbiz, pdaid: pdaid, json: json } ); case 58: resRet = _context.sent; if (!resRet) { _context.next = 72; break; } // 判定一下,直接关闭RES,是没有返回值的; (_piid = resRet.piid), (_tid = resRet.tid); if (!_piid) { _context.next = 66; break; } _context.next = 64; return _WorkFlowUtil.default.goProcessInPara(_piid); case 64: _context.next = 72; break; case 66: if (!_tid) { _context.next = 71; break; } _context.next = 69; return _WorkFlowUtil.default.openTaskByPara(_tid); case 69: _context.next = 72; break; case 71: throw new Error('不应该跑到这CASE3.......'); case 72: return _context.abrupt('break', 96); case 73: // 需要转向一主体多流程——禁止页面 _pdaid = newprocess_info_obj.pdaid; _context.next = 76; return (0, _openRES.default)( '正在办理的业务', null, '_lib/workflow/vm/ViewActivePIAboutBO_jz.js', 1000, 600, { pbiz: pbiz, pdaid: _pdaid, json: json } ); case 76: _resRet = _context.sent; if (!_resRet) { _context.next = 85; break; } _piid2 = _resRet.piid; if (!_piid2) { _context.next = 84; break; } _context.next = 82; return _WorkFlowUtil.default.goProcessInPara(_piid2); case 82: _context.next = 85; break; case 84: throw new Error('不应该跑到这CASE4.......'); case 85: return _context.abrupt('break', 96); case 86: _context.next = 88; return _WorkFlowUtil.default.goProcess(piid); case 88: return _context.abrupt('break', 96); case 89: // 一个流程定定义下 有多个流程版本 multiPDAParams = { pdid: pdid, bljgid: bljgid }; _context.next = 92; return (0, _openRES.default)( '选择流程版本', null, '_lib/workflow/vm/SelectPdaVersionRES.js', 1000, 600, multiPDAParams ); case 92: _pdaid2 = _context.sent; _context.next = 95; return afterChosePDA(_pdaid2, json); case 95: return _context.abrupt('break', 96); case 96: case 'end': return _context.stop(); } } }, _marked); } function afterChosePDA(pdaid, pjson) { var json, pbiz, bljgid, urlNewProcess, key, value, newProcessResultVdo, newprocess_code, newprocess_info, newprocess_info_obj, tid, piid, pdlabel, pdid, rolelist, detailMsg, i, roleStr; return _regenerator.default.wrap(function afterChosePDA$(_context2) { while (1) { switch ((_context2.prev = _context2.next)) { case 0: if (pdaid) { _context2.next = 2; break; } return _context2.abrupt('return'); case 2: json = pjson; // pjson 中必须包含参数 biz // pjson 中必须包含参数 bljgid pbiz = json.biz; bljgid = json.bljgid; if (pbiz) { _context2.next = 7; break; } throw new Error( '\u51FD\u6570\u5B9A\u4E49\uFF1AafterChosePDA(pdaid, pjson)\n\u51FD\u6570\u8C03\u7528\uFF1A.afterChosePDA(' .concat(pdaid, ', ') .concat( JSON.stringify(pjson), ')\n\u5F02\u5E38\u4FE1\u606F\uFF1A\u5165\u53C2 pjson \u4E2D\u5FC5\u987B\u5305\u542B\u5B57\u6BB5 biz\n\u8BF7\u68C0\u67E5!' ) ); case 7: if (bljgid) { _context2.next = 9; break; } throw new Error( '\u51FD\u6570\u5B9A\u4E49\uFF1AafterChosePDA(pdaid, pjson)\n\u51FD\u6570\u8C03\u7528\uFF1A.afterChosePDA(' .concat(pdaid, ', ') .concat( JSON.stringify(pjson), ')\n\u5F02\u5E38\u4FE1\u606F\uFF1A\u5165\u53C2 pjson \u4E2D\u5FC5\u987B\u5305\u542B\u5B57\u6BB5 bljgid\n\u8BF7\u68C0\u67E5!' ) ); case 9: // 发起请求,开启流程实例 urlNewProcess = new _util.URL('process/doNewProcessByPdaid'); urlNewProcess.addPara('pdaid', pdaid); urlNewProcess.addPara('pdid', ''); urlNewProcess.addPara('_process_biz', pbiz); for (key in json) { value = json[key]; urlNewProcess.addPara(key, value); } _context2.next = 16; return (0, _util.request)(urlNewProcess); case 16: newProcessResultVdo = _context2.sent; // 分析后台返回结果 (newprocess_code = newProcessResultVdo.newprocess_code), (newprocess_info = newProcessResultVdo.newprocess_info); newprocess_info_obj = JSON.parse(newprocess_info); (tid = newprocess_info_obj.tid), (piid = newprocess_info_obj.piid); _context2.t0 = newprocess_code; _context2.next = _context2.t0 === '1' ? 23 : _context2.t0 === '2' ? 28 : _context2.t0 === '3' ? 39 : _context2.t0 === '4' ? 41 : _context2.t0 === '5' ? 43 : 46; break; case 23: if (!(!tid || tid == 'undefined')) { _context2.next = 25; break; } return _context2.abrupt('return'); case 25: _context2.next = 27; return _WorkFlowUtil.default.doTask(tid); case 27: return _context2.abrupt('break', 47); case 28: // 无权开启流程 (pdlabel = newprocess_info_obj.pdlabel), (pdid = newprocess_info_obj.pdid), (rolelist = newprocess_info_obj.rolelist); detailMsg = '\u60A8\u5C1D\u8BD5\u529E\u7406\u7684\u662F[' .concat(bljgid, ']\u4E0B\u7684[') .concat(pdid, ':') .concat(pdlabel, ']\u4E1A\u52A1\u3002'); if (!(!rolelist || rolelist.length == 0)) { _context2.next = 34; break; } detailMsg = detailMsg + '这个业务没有配置岗位,请联系系统管理员。'; _util.MsgBox.show('你没有权限办理[' + bljgid + ']下的业务[' + pdlabel + ']。', detailMsg); return _context2.abrupt('break', 47); case 34: detailMsg += '可以办理这个业务的岗位有:'; for (i = 0; i < rolelist.length; i++) { roleStr = rolelist[i]; if (roleStr) { detailMsg = detailMsg + '\n' + ' ' + roleStr; } } detailMsg = detailMsg + '\n' + '您可以请上述岗位的人员来办理这笔业务。'; _util.MsgBox.show('你没有权限办理[' + bljgid + ']下的业务[' + pdlabel + ']。', detailMsg); return _context2.abrupt('break', 47); case 39: // 需要转向一主体多流程——警告页面 alert('2需要转向一主体多流程——警告页面'); return _context2.abrupt('break', 47); case 41: // 需要转向一主体多流程——禁止页面 alert('2需要转向一主体多流程——禁止页面'); return _context2.abrupt('break', 47); case 43: _context2.next = 45; return _WorkFlowUtil.default.goProcess(piid); case 45: return _context2.abrupt('break', 47); case 46: return _context2.abrupt('break', 47); case 47: case 'end': return _context2.stop(); } } }, _marked2); } function completeTask(tid, piid, eid, pdaid, tpid, FlowPath, desktopadjustjsp, desktopadjustjs) { var urlCom = new _util.URL('process/completeTask'); urlCom.addPara('tid', tid); urlCom.addPara('piid', piid); urlCom.addPara('eid', eid); urlCom.addPara('pdaid', pdaid); urlCom.addPara('tpid', tpid); urlCom.addPara('FlowPath', FlowPath); urlCom.addPara('desktopadjustjsp', desktopadjustjsp); urlCom.addPara('desktopadjustjs', desktopadjustjs); return (0, _util.request)(urlCom); } function createPI(pbiz, pdaid, json) { // 启动流程获取流程实例ID var url = new _util.URL('process/createPI'); url.addPara('pdaid', pdaid); url.addPara('_process_biz', pbiz); for (var key in json) { var value = json[key]; url.addPara(key, value); } return (0, _util.request)(url).then(function(vdo) { var piid = vdo.piid; return piid; }); } function isAggLaneNewable(adid) { var laneContainer, keyset, aggLaneList, aggLane, laneID; return _regenerator.default.wrap(function isAggLaneNewable$(_context3) { while (1) { switch ((_context3.prev = _context3.next)) { case 0: _context3.next = 2; return (0, _taglib.getLaneContainer)(); case 2: laneContainer = _context3.sent; keyset = { adid: adid }; _context3.next = 6; return laneContainer.searchLanesByKeySet(keyset); case 6: aggLaneList = _context3.sent; if (!(aggLaneList.length > 1)) { _context3.next = 9; break; } throw new Error('关于聚集' + adid + '存在多个Lane,不合法。'); case 9: if (!(aggLaneList.length == 1)) { _context3.next = 19; break; } _context3.next = 12; return aggLaneList[0]; case 12: aggLane = _context3.sent; _context3.next = 15; return aggLane.getID(); case 15: laneID = _context3.sent; _context3.next = 18; return laneContainer.activeLane(laneID); case 18: return _context3.abrupt('return', false); case 19: return _context3.abrupt('return', true); case 20: case 'end': return _context3.stop(); } } }, _marked3); } function goAgg(adid, scope, urlPara, showtlsj) { var getAgg, aggInfo, l1, currentl, currenId, aggInfoObj, jjfs, title, aggregation_width, aggregation_height, keysetForNewLane, newLane, newLaneID, paraAgg, urlAgg, key, _key; return _regenerator.default.wrap(function goAgg$(_context4) { while (1) { switch ((_context4.prev = _context4.next)) { case 0: _context4.next = 2; return isAggLaneNewable(adid); case 2: if (_context4.sent) { _context4.next = 4; break; } return _context4.abrupt('return'); case 4: getAgg = new _util.URL('wlEngine/getAggInfoByAdid'); getAgg.addPara('adid', adid); _context4.next = 8; return (0, _util.request)(getAgg); case 8: aggInfo = _context4.sent; if (aggInfo) { _context4.next = 11; break; } return _context4.abrupt('return'); case 11: _context4.next = 13; return isAggLaneNewable(adid); case 13: if (_context4.sent) { _context4.next = 15; break; } return _context4.abrupt('return'); case 15: _context4.next = 17; return (0, _taglib.getLaneContainer)(); case 17: l1 = _context4.sent; _context4.next = 20; return l1.getCurrentLane(); case 20: currentl = _context4.sent; _context4.next = 23; return currentl.getID(); case 23: currenId = _context4.sent; aggInfoObj = JSON.parse(aggInfo); jjfs = aggInfoObj.jjfs; title = aggInfoObj.title; aggregation_width = aggInfoObj.aggregation_width; aggregation_height = aggInfoObj.aggregation_height; keysetForNewLane = { adid: adid, fromlaneid: currenId }; _context4.next = 32; return l1.addLane(keysetForNewLane, title); case 32: newLane = _context4.sent; _context4.next = 35; return newLane.getID(); case 35: newLaneID = _context4.sent; _context4.next = 38; return l1.activeLane(newLaneID); case 38: paraAgg = {}; urlAgg = null; _context4.t0 = jjfs; _context4.next = _context4.t0 === 'J03' ? 43 : 48; break; case 43: //聚集处理 urlAgg = '_lib/workflow/vm/pageAggFree.js'; paraAgg = (0, _objectSpread2.default)({}, paraAgg, { _config_adid: adid, showtlsj: showtlsj }); if (scope) { paraAgg = (0, _objectSpread2.default)({}, paraAgg, { scope: scope }); } if (urlPara) { for (key in urlPara) { paraAgg = (0, _objectSpread2.default)({}, paraAgg, { key: urlPara[key] }); } } return _context4.abrupt('break', 53); case 48: urlAgg = '_lib/workflow/vm/ViewWorklistForAgg.js'; paraAgg = (0, _objectSpread2.default)({}, paraAgg, { _config_adid: adid, showtlsj: showtlsj }); alert('!!' + adid); if (scope) { paraAgg = (0, _objectSpread2.default)({}, paraAgg, { scope: scope }); } if (urlPara) { for (_key in urlPara) { paraAgg = (0, _objectSpread2.default)({}, paraAgg, { key: urlPara[_key] }); } } case 53: _context4.next = 55; return newLane.openBeacon( adid, title, null, urlAgg, aggregation_width, aggregation_height, paraAgg ); case 55: case 'end': return _context4.stop(); } } }, _marked4); } //@ sourceMappingURL=workflow.js.map