yylib-quick-mobile
Version:
yylib-quick-mobile
321 lines (270 loc) • 11.7 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _modal = require('antd-mobile/lib/modal');
var _modal2 = _interopRequireDefault(_modal);
var _navBar = require('antd-mobile/lib/nav-bar');
var _navBar2 = _interopRequireDefault(_navBar);
var _icon = require('antd-mobile/lib/icon');
var _icon2 = _interopRequireDefault(_icon);
var _popover = require('antd-mobile/lib/popover');
var _popover2 = _interopRequireDefault(_popover);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
require('antd-mobile/lib/modal/style/css');
require('antd-mobile/lib/nav-bar/style/css');
require('antd-mobile/lib/icon/style/css');
require('antd-mobile/lib/popover/style/css');
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _YYIcon = require('./../icon/YYIcon');
var _YYIcon2 = _interopRequireDefault(_YYIcon);
var _YYToast = require('./../toast/YYToast');
var _YYToast2 = _interopRequireDefault(_YYToast);
var _YYApprove = require('./YYApprove');
var _YYApprove2 = _interopRequireDefault(_YYApprove);
var _YYApproveHistory = require('./YYApproveHistory');
var _YYApproveHistory2 = _interopRequireDefault(_YYApproveHistory);
require('./YYApprove.less');
var _RestUrl = require('../../common/RestUrl');
var _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
var _lfwUtil = require('../../utils/lfwUtil');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var Item = _popover2.default.Item;
var BILL_STATE = {
STORAGE: -1,
FREE: 0,
COMMIT: 1,
APPROVING: 2,
APPROVED: 3,
UNAPPROVED: 4,
APPROVED2: 5 };
var YYApproveNavBar = function (_React$Component) {
_inherits(YYApproveNavBar, _React$Component);
function YYApproveNavBar(props) {
_classCallCheck(this, YYApproveNavBar);
var _this = _possibleConstructorReturn(this, (YYApproveNavBar.__proto__ || Object.getPrototypeOf(YYApproveNavBar)).call(this, props));
_this.onLeftClick = function (e) {
if (_this.props.RunInDesign) {
return;
}
if (_this.props.onLeftClick) {
_this.props.onLeftClick(e);
} else {
(0, _lfwUtil.backOrClose)();
}
};
_this.onSelect = function (opt, index) {
var ajax = window.YYUtils.Ajax;
var self = _this;
var _this$props = _this.props,
billId = _this$props.billId,
billTypeId = _this$props.billTypeId;
var userId = window.YYUtils.AuthToken.getUserId();
_this.setState({
visible: false
});
var url = null;
if (index == 0) {
_this.showApprove();
} else if (index == 1) {
_this.setState({
showApprove: false
});
url = _RestUrl.MODULE_URL.unapprove;
} else if (index == 2) {
_this.setState({
showApprove: false
});
_this.setState({
showApproveHistory: true
});
} else if (index == 3) {
_this.setState({
showApprove: false
});
url = _RestUrl.MODULE_URL.doCallBack;
}
if (index == 1 || index == 3) {
if (!billId) {
_YYToast2.default.info("找不到对应的表单!", 2);
} else if (!billTypeId) {
_YYToast2.default.info("找不到对应的单据类型!", 2);
} else {
_YYToast2.default.loading('Loading...', 0, null, false);
ajax.postJSON(url, { userId: userId, billId: billId, billTypeId: billTypeId }, null, function (error) {}, function (data) {
if (data != null && data.status == 200) {
var param = eval("(" + data.text + ")");
if (param != null) {
if (param.success == true && param.msg) {
_YYToast2.default.success(param.msg, 2);
if (self.props.onSelect) {
self.props.onSelect(true, index);
}
} else {
_YYToast2.default.info(param.msg, 2);
if (self.props.onSelect) {
self.props.onSelect(false, index);
}
}
}
}
});
}
}
};
_this.showApprove = function () {
_this.setState({
showApprove: true
});
};
_this.closeApprove = function () {
_this.setState({
showApprove: false
});
};
_this.state = {
showApprove: false,
visible: false,
showApproveHistory: false
};
return _this;
}
_createClass(YYApproveNavBar, [{
key: 'onClose',
value: function onClose() {
this.setState({
showApproveHistory: false
});
}
}, {
key: 'onBpmApprove',
value: function onBpmApprove(flag) {
this.setState({
showApprove: false
});
this.props.onSelect(flag);
}
}, {
key: 'render',
value: function render() {
var _props = this.props,
mode = _props.mode,
leftIcon = _props.leftIcon,
leftContent = _props.leftContent,
children = _props.children,
className = _props.className,
billId = _props.billId,
billTypeId = _props.billTypeId,
billState = _props.billState,
restProps = _objectWithoutProperties(_props, ['mode', 'leftIcon', 'leftContent', 'children', 'className', 'billId', 'billTypeId', 'billState']);
var userId = window.YYUtils.AuthToken.getUserId();
var wrapClz = (0, _classnames2.default)('yy-approve-navBar', className);
var leftIconCom = typeof leftIcon === 'string' ? _react2.default.createElement(_YYIcon2.default, { type: leftIcon }) : leftIcon;
return _react2.default.createElement(
'div',
null,
_react2.default.createElement(
_navBar2.default,
{
className: wrapClz,
mode: mode,
icon: leftIconCom,
leftContent: leftContent,
onLeftClick: this.onLeftClick,
rightContent: billState || billState === 0 ? billState === BILL_STATE.FREE ? null : _react2.default.createElement(
_popover2.default,
{
visible: this.state.visible,
overlay: billState === BILL_STATE.COMMIT ? [_react2.default.createElement(
Item,
{ icon: _react2.default.createElement(_YYIcon2.default, { type: 'edit', size: 'xs' }) },
'\u6267\u884C\u5BA1\u6279'
), _react2.default.createElement(
Item,
{ disabled: true, icon: _react2.default.createElement(_icon2.default, { type: 'cross', size: 'xs' }) },
'\u6267\u884C\u5F03\u5BA1'
), _react2.default.createElement(
Item,
{ icon: _react2.default.createElement(_YYIcon2.default, { type: 'more', size: 'xs' }) },
'\u5BA1\u6279\u5386\u53F2'
), _react2.default.createElement(
Item,
{ icon: _react2.default.createElement(_YYIcon2.default, { type: 'triangle_up_fill', size: 'xs' }) },
'\u6536\u56DE'
)] : [billState === BILL_STATE.APPROVED ? _react2.default.createElement(
Item,
{ disabled: true, icon: _react2.default.createElement(_YYIcon2.default, { type: 'edit', size: 'xs' }) },
'\u6267\u884C\u5BA1\u6279'
) : _react2.default.createElement(
Item,
{ icon: _react2.default.createElement(_YYIcon2.default, { type: 'edit', size: 'xs' }) },
'\u6267\u884C\u5BA1\u6279'
), billState === BILL_STATE.APPROVING || billState === BILL_STATE.APPROVED ? _react2.default.createElement(
Item,
{ icon: _react2.default.createElement(_icon2.default, { type: 'cross', size: 'xs' }) },
'\u6267\u884C\u5F03\u5BA1'
) : _react2.default.createElement(
Item,
{ disabled: true, icon: _react2.default.createElement(_icon2.default, { type: 'cross', size: 'xs' }) },
'\u6267\u884C\u5F03\u5BA1'
), _react2.default.createElement(
Item,
{ icon: _react2.default.createElement(_YYIcon2.default, { type: 'more', size: 'xs' }) },
'\u5BA1\u6279\u5386\u53F2'
)],
onSelect: this.onSelect.bind(this)
},
_react2.default.createElement(
'div',
null,
'\u5BA1\u6279'
)
) : null
},
children
),
this.state.showApprove ? _react2.default.createElement(_YYApprove2.default, {
showApprove: this.state.showApprove,
billTypeId: billTypeId,
userId: userId,
billId: billId,
onBpmApprove: this.onBpmApprove.bind(this),
onCloseApprove: this.closeApprove.bind(this) }) : null,
_react2.default.createElement(
_modal2.default,
{
visible: this.state.showApproveHistory,
style: { backgroundColor: "black" },
className: 'yy-modal-approvehistory yy-modal-fill',
popup: true,
closable: true,
animationType: 'slide-up',
title: '\u67E5\u770B\u5BA1\u6279\u6D41',
maskClosable: true,
onClose: this.onClose.bind(this) },
_react2.default.createElement(_YYApproveHistory2.default, {
userId: userId,
billId: billId })
)
);
}
}]);
return YYApproveNavBar;
}(_react2.default.Component);
YYApproveNavBar.defaultProps = {
mode: 'light',
leftIcon: null,
leftContent: null,
onLeftClick: null,
visible: true,
userId: '',
billId: '',
billTypeId: '',
billState: '' };
exports.default = YYApproveNavBar;