UNPKG

@rnga/orders

Version:

## Get schema from @prisma-cms 1. yarn get-api-schema -e http://localhost:4000 2. yarn build-api-fragments

1,266 lines (1,003 loc) 38.5 kB
'use strict'; exports.__esModule = true; exports.OrdersOrder = undefined; var _regenerator = require('babel-runtime/regenerator'); var _regenerator2 = _interopRequireDefault(_regenerator); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _class, _temp; /* eslint-disable no-script-url */ /* eslint-disable jsx-a11y/anchor-is-valid */ // import gql from 'graphql-tag'; var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _reactApollo = require('react-apollo'); var _moment = require('moment'); var _moment2 = _interopRequireDefault(_moment); var _OrderItem = require('./OrderItem'); var _OrderItem2 = _interopRequireDefault(_OrderItem); var _query = require('query'); var _Editable = require('apollo-cms/lib/DataView/Object/Editable'); var _Editable2 = _interopRequireDefault(_Editable); var _Modal = require('../../../Modal'); var _Modal2 = _interopRequireDefault(_Modal); var _materialUi = require('material-ui'); var _Progress = require('material-ui/Progress'); var _green = require('material-ui/colors/green'); var _green2 = _interopRequireDefault(_green); var _reactNumberFormat = require('react-number-format'); var _reactNumberFormat2 = _interopRequireDefault(_reactNumberFormat); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } 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 styles = { buttonWrapper: { position: "relative", display: "inline-block" }, buttonLoading: { opacity: 0.2 }, buttonProgress: { color: _green2.default[500], position: 'absolute', top: '50%', left: '50%', marginTop: -12, marginLeft: -12 }, link: { cursor: "pointer" } }; var OrdersOrder = exports.OrdersOrder = (_temp = _class = function (_EditableView) { _inherits(OrdersOrder, _EditableView); function OrdersOrder(props) { _classCallCheck(this, OrdersOrder); var _this = _possibleConstructorReturn(this, _EditableView.call(this, props)); _this.canEdit = function () { var order = _this.getObjectWithMutations() || {}; var archived = order.archived; var canEdit = archived === false || archived === null ? true : false; return canEdit; }; var _props$opened = props.opened, opened = _props$opened === undefined ? false : _props$opened, _props$confirmOpened = props.confirmOpened, confirmOpened = _props$confirmOpened === undefined ? false : _props$confirmOpened, _props$showSuccess = props.showSuccess, showSuccess = _props$showSuccess === undefined ? false : _props$showSuccess; _this.state = _extends({}, _this.state, { opened: opened, confirmOpened: confirmOpened, showSuccess: showSuccess }); return _this; } OrdersOrder.prototype.renderHeader = function renderHeader() { return null; }; OrdersOrder.prototype.updateItem = function updateItem(item, data) { var itemsDirty = this.getItemsDirty() || []; var itemId = item.id; var existsItem = itemsDirty.find(function (n) { return n.id === itemId; }) || itemsDirty[itemsDirty.push({ id: itemId }) - 1]; Object.assign(existsItem, data); this.updateObject({ itemsDirty: itemsDirty }); }; OrdersOrder.prototype.getItemsDirty = function getItemsDirty() { var activeOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; var _ref = this.state._dirty || {}, itemsDirty = _ref.itemsDirty; // return itemsDirty; return activeOnly === true ? itemsDirty ? itemsDirty.filter(function (n) { // n.selectedServices && n.selectedServices.findIndex(n => n._selected === true) !== -1 var dirty = false; if (!n) { return false; } var selectedServices = n.selectedServices; // if ( // dirtyItemId === id // ) { if (selectedServices && selectedServices.find(function (n) { return n._selected === true; })) // || (other && Object.keys(other).length) { dirty = true; } // } return dirty; }) : [] : itemsDirty; }; OrdersOrder.prototype.printOrder = function printOrder() { var _this2 = this; this.setState({ opened: true }, function () { setTimeout(function () { // const { // orderTable, // } = this.refs; var orderTable = _this2.orderTableRef; if (!orderTable) { return; } var clone = orderTable.cloneNode(true); // const wrapper = <div // className={"print-wrapper"} // > // {this.renderOrderTable()} // </div> var wrapper = global.document.querySelector(".print-wrapper"); if (!wrapper) { return; } wrapper.innerHTML = null; wrapper.appendChild(clone); // $(this).closest('.open-tab-wrapper').find('.selection-block').removeClass('open'); // var thisOrder = $(this).closest('.open-tab-wrapper.client-order'); // var userName = $(this).closest('.orders-wrapper').attr('data-login'); // var userFullName = $(this).closest('.orders-wrapper').attr('data-username'); // var orderNum = $(this).closest('.orders-wrapper').find('.open-tab-title').attr('data-order'); // var orderDate = $(this).closest('.orders-wrapper').find('.open-tab-title').attr('data-orderdate'); // $('.print-wrapper').empty(); // $('title').empty(); // $('title').append('Личный кабинет пользователя ' + userName + ' заказ № ' + orderNum + ' от ' + orderDate); // $(thisOrder).clone().appendTo('.print-wrapper'); // window.print(); // $(this).closest('.open-tab-wrapper').find('.selection-block').removeClass('open'); // var thisOrder = $(this).closest('.open-tab-wrapper.client-order'); // var userName = $(this).closest('.orders-wrapper').attr('data-login'); // var userFullName = $(this).closest('.orders-wrapper').attr('data-username'); // var orderNum = $(this).closest('.orders-wrapper').find('.open-tab-title').attr('data-order'); // var orderDate = $(this).closest('.orders-wrapper').find('.open-tab-title').attr('data-orderdate'); // $('.print-wrapper').empty(); // $('title').empty(); // $('title').append('Личный кабинет пользователя ' + userName + ' заказ № ' + orderNum + ' от ' + orderDate); // $(thisOrder).clone().appendTo('.print-wrapper'); window.print(); }, 500); }); }; OrdersOrder.prototype.renderEditableView = function renderEditableView() { return this.renderDefaultView(); }; OrdersOrder.prototype.canOrderSlab = function canOrderSlab(item) { var showErrors = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; var preGrade = item.preGrade; if (this.notGradable(item)) { showErrors && this.addError("Нельзя заказать услугу для этой монеты"); return false; } if (!preGrade) { showErrors && this.addError("Дождитесь получения прегрейда."); return false; } return true; }; OrdersOrder.prototype.notGradable = function notGradable(item) { var _ref2 = item || {}, preGrade = _ref2.preGrade, sheldon_grade = _ref2.sheldon_grade; return preGrade === "NOTGENUINE" || preGrade === "NOTGRADABLE" || sheldon_grade === "NOTGENUINE" || sheldon_grade === "NOTGRADABLE"; }; OrdersOrder.prototype.addError = function addError(error) { _EditableView.prototype.addError.call(this, error); return false; }; OrdersOrder.prototype.getDirty = function getDirty(item) { var _dirty = item._dirty; return _dirty; }; OrdersOrder.prototype.isSlabServiceOrdered = function isSlabServiceOrdered(item) { var _ref3 = this.getDirty(item) || {}, selectedServices = _ref3.selectedServices; var slabServiceSelected = selectedServices && selectedServices.find(function (n) { return n.code === "slab" && n._selected === true; }) ? true : false; var ServiceOrders = item.ServiceOrders; var SlabServiceOrder = ServiceOrders.find(function (n) { return n.Service.code === "slab"; }); /** * Определяем выбран ли заказ на слаб. * Если да, но не выбран тариф, надо подсветить тариф */ // let SlabServiceOrdered = true; // let SlabServiceOrdered = slabServiceSelected ? true : false; var SlabServiceOrdered = SlabServiceOrder || slabServiceSelected ? true : false; return SlabServiceOrdered; }; /** * Выбираем услугу */ OrdersOrder.prototype.setService = function setService(item, service) { var canEdit = this.canEdit(); // console.log("setService service", service); // console.log("canEdit", canEdit); if (!canEdit) { return; } /** * Когда пользователь отменяет выбор тарифа, * удаляем его из массива */ // if (!selectedService._selected) { // selectedServices.splice(selectedServices.indexOf(selectedService), 1); // } var serviceId = service.id, code = service.code; var _ref4 = this.getDirty(item) || {}, selectedServices = _ref4.selectedServices; selectedServices = selectedServices || []; // const index = selectedServices.findIndex(n => n.id === serviceId); var selectedService = selectedServices.find(function (n) { return n.id === serviceId; }); if (!selectedService) { selectedService = _extends({}, service); /** * Проверяем если выбирает слабирование, то должен быть указан прегрейд */ switch (code) { case "slab": if (!this.canOrderSlab(item)) { return false; } break; default: ; } selectedServices.push(selectedService); } selectedService._selected = selectedService._selected ? false : true; this.updateItem(item, { selectedServices: selectedServices }); }; OrdersOrder.prototype.getItems = function getItems() { var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var order = this.getObjectWithMutations(); if (!order) { return []; } var services = this.props.services; var diffsOnly = options.diffsOnly; var Items = order.Items; var itemsDirty = this.getItemsDirty() || []; return Items && Items.length ? Items.map(function (n) { var id = n.id, itemPrice = n.price, ServiceOrders = n.ServiceOrders, _n$InvoiceItems = n.InvoiceItems, InvoiceItems = _n$InvoiceItems === undefined ? [] : _n$InvoiceItems; // if(ServiceOrders && ServiceOrders.length) { // dirty = true; // } // else { // } var dirtyItem = itemsDirty.find(function (n) { var dirty = false; if (!n) { return null; } // if (ServiceOrders && ServiceOrders.length) { // dirty = true; // } // else { var dirtyItemId = n.id, selectedServices = n.selectedServices, other = _objectWithoutProperties(n, ['id', 'selectedServices']); if (dirtyItemId === id) { if (selectedServices && selectedServices.find(function (n) { return n._selected === true; }) || other && Object.keys(other).length) { dirty = true; } // } } return dirty; }); if (diffsOnly && !dirtyItem && (!ServiceOrders || !ServiceOrders.length)) { return null; } var amount = InvoiceItems.reduce(function (a, _ref5) { var b = _ref5.cost; return a + b; }, 0); var _ref6 = dirtyItem || {}, selectedServices = _ref6.selectedServices, slabTarif = _ref6.slabTarif; var slabSelected = ServiceOrders && ServiceOrders.find(function (n) { return n.Service.code === "slab"; }) ? true : false; var dirtySlab = selectedServices && selectedServices.find(function (n) { return n.code === "slab" && n._selected === true; }) || null; // console.log("selectedServices", selectedServices); // console.log("dirtySlab", dirtySlab); if (dirtySlab) { slabSelected = true; } /** * Высчитываем стоимость данного изделия. * Для этого проходим по каждой услуге и проверяем выбранные. * * Считать надо: * - Услугу * - Тариф */ // ServiceOrders services.map(function (i) { var serviceId = i.id, code = i.code; var service = void 0; var tarif = void 0; var selectedService = selectedServices && selectedServices.find(function (s) { return s.id === serviceId && s._selected === true; }); /** * Флаг того, что услуга в отказе */ // let rejected; /** * Надо брать данные из базы данных (самой услуги) */ var serviceOrderAmount = void 0; switch (code) { case "photo": /** * Если заказано слабирование, то фото бесплатно */ if (slabSelected) { return null; } break; default: ; } if (selectedService) { service = selectedService; // tarif = selectedService.Tarif; var _service = service, _code = _service.code, Tarifs = _service.Tarifs; if (_code === "slab") { tarif = slabTarif ? Tarifs.find(function (t) { return t.id === slabTarif; }) : undefined; } } else { var ServiceOrder = ServiceOrders.find(function (i) { return i.Service.id === serviceId; }); if (ServiceOrder) { var Service = ServiceOrder.Service, Tarif = ServiceOrder.Tarif, _amount = ServiceOrder.amount; serviceOrderAmount = _amount; service = Service; tarif = Tarif; } } if (serviceOrderAmount !== undefined) { if (serviceOrderAmount) { amount += serviceOrderAmount; } } else if (service) { var _service2 = service, price = _service2.price, priceCooficient = _service2.priceCooficient; if (tarif) { amount += tarif.price; } if (priceCooficient) { if (itemPrice) { amount += itemPrice * (priceCooficient / 100); } } else if (price) { amount += price; } } return null; }); // total += price ? parseFloat(price) : 0; amount = amount && parseInt(amount) || 0; // total += amount; return { item: _extends({}, n, { _dirty: dirtyItem }), services: services, amount: amount }; // return <OrderItem // key={id} // item={{ // ...n, // _dirty: dirtyItem, // }} // services={services} // amount={amount} // classes={classes} // updateItem={(item, data) => this.updateItem(item, data)} // canEdit={() => this.canEdit()} // canOrderSlab={item => this.canOrderSlab(item)} // notGradable={item => this.notGradable(item)} // getDirty={item => this.getDirty(item)} // setService={(item, service) => this.setService(item, service)} // /> }).filter(function (n) { return n; }) : []; }; OrdersOrder.prototype.renderOrderTable = function renderOrderTable() { var _this3 = this; var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var diffsOnly = options.diffsOnly; var order = this.getObjectWithMutations(); if (!order) { return null; } var opened = this.state.opened; var classes = this.props.classes; // let canEdit = archived === false || archived === null ? true : false; // console.log("canEdit", canEdit, archived); var total = 0; var items = this.getItems(options).map(function (n) { var item = n.item, services = n.services, amount = n.amount; if (amount) { total += amount; } return _react2.default.createElement(_OrderItem2.default, { key: item.id, item: item, services: services, amount: amount, classes: classes, updateItem: function updateItem(item, data) { return _this3.updateItem(item, data); }, canEdit: function canEdit() { return _this3.canEdit(); }, canOrderSlab: function canOrderSlab(item) { return _this3.canOrderSlab(item); }, notGradable: function notGradable(item) { return _this3.notGradable(item); }, getDirty: function getDirty(item) { return _this3.getDirty(item); }, isSlabServiceOrdered: function isSlabServiceOrdered(item) { return _this3.isSlabServiceOrdered(item); }, setService: function setService(item, service) { return _this3.setService(item, service); } }); }); var hasActiveItems = this.getItemsDirty(true).length; // let servicesTitles = services && services.map(n => { // const { // id, // name, // short_name, // } = n; // return <th // key={id} // > // {short_name || name} // </th> // }) || []; var tableServicesTitles = this.getTableServicesTitles("Заказ услуг"); var tableServicesTitles2 = this.getTableServicesTitles("Готовность"); return _react2.default.createElement( 'div', { className: 'client-order' // ref={!diffsOnly ? "orderTable" : undefined} , ref: function ref(element) { if (!diffsOnly) { _this3.orderTableRef = element; } } }, _react2.default.createElement( 'div', { className: 'open-tab-content', style: { display: "block" } }, _react2.default.createElement( 'table', { className: ["order-table", ""].join(" "), border: '0', cellSpacing: '0', cellPadding: '0', id: '103595180', style: { maxWidth: "100%", minWidth: 1000 } }, _react2.default.createElement( 'tbody', null, opened && items ? _react2.default.createElement( _react.Fragment, null, _react2.default.createElement( 'tr', null, _react2.default.createElement( 'th', { className: ["num-th", ""].join(" ") }, '\u2116' ), _react2.default.createElement( 'th', { className: ["name-th", ""].join(" ") }, '\u041F\u0440\u0435\u0434\u043C\u0435\u0442' ), _react2.default.createElement( 'th', { className: ["year-th", ""].join(" ") }, '\u0413\u043E\u0434' ), _react2.default.createElement( 'th', { className: ["metal-th", ""].join(" ") }, '\u041C\u0435\u0442\u0430\u043B\u043B' ), _react2.default.createElement( 'th', { className: ["otsenka-th", ""].join(" ") }, '\u041E\u0446\u0435\u043D\u043A\u0430 (\u0440\u0443\u0431.)' ), _react2.default.createElement( 'th', { className: ["pregdare-th", ""].join(" ") }, '\u041F\u0440\u0435\u0433\u0440\u0435\u0439\u0434' ), tableServicesTitles, _react2.default.createElement( 'th', { className: ["graid-th", ""].join(" ") }, '\u0413\u0440\u0435\u0439\u0434 \u043F\u043E \u0428\u0435\u043B\u0434\u043E\u043D\u0443' ), _react2.default.createElement( 'th', { className: ["tarif-th", ""].join(" ") }, '\u0422\u0430\u0440\u0438\u0444' ), _react2.default.createElement( 'th', { className: ["order-date-th", ""].join(" ") }, '\u0414\u0430\u0442\u0430 \u0437\u0430\u043A\u0430\u0437\u0430' ), tableServicesTitles2, _react2.default.createElement( 'th', { className: ["price-th", ""].join(" ") }, '\u0421\u0442\u043E\u0438\u043C\u043E\u0441\u0442\u044C (\u0440\u0443\u0431.)' ) ), items, _react2.default.createElement( 'tr', { className: 'result-order-row' }, _react2.default.createElement( 'td', { colSpan: '11' }, _react2.default.createElement( 'span', { className: 'text-block' }, '\u0418\u0442\u043E\u0433\u043E' ) ), _react2.default.createElement( 'td', null, _react2.default.createElement( 'span', { className: 'text-block' }, _react2.default.createElement(_reactNumberFormat2.default, { value: total || 0, displayType: 'text', thousandSeparator: ' ' }) ) ) ) ) : null, !diffsOnly && hasActiveItems ? _react2.default.createElement( 'tr', { className: 'accept-grade-button-wrapper', style: { display: !this.isDirty() ? "none" : undefined } }, _react2.default.createElement( 'td', { className: 'accept-grade-block', colSpan: '15' }, _react2.default.createElement( 'div', { className: 'accept-grade-button confirm_order', title: '\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u043F\u043E\u0437\u0438\u0446\u0438\u0438', onClick: function onClick(event) { // this.save(); _this3.setState({ confirmOpened: true }); } }, '\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C' ), _react2.default.createElement( 'div', { className: 'refuse-accept-grade-button', title: '\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u043F\u043E\u0437\u0438\u0446\u0438\u0438', onClick: function onClick(event) { _this3.resetEdit(); } }, 'x' ) ) ) : null ) ) ) ); }; OrdersOrder.prototype.getTableServicesTitles = function getTableServicesTitles(title) { var _this4 = this; // const { // classes, // } = this.props; return _react2.default.createElement( 'th', { className: ["service-th service-ready", ""].join(" ") }, _react2.default.createElement( 'div', { className: 'service-ready-title' }, title ), _react2.default.createElement( 'div', { className: 'tab-block services ready-service' }, _react2.default.createElement( 'div', { title: '\u0421\u043B\u0430\u0431\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432\u0441\u0435', className: ["service_accept "].join(" ") // className={["service_accept ", classes.link].join(" ")} }, _react2.default.createElement( 'a', { href: 'javascript:;' // className={classes.link} , style: { cursor: "pointer" }, onClick: function onClick(event) { if (window.confirm("Заказать слабирование по всем позициям?")) { _this4.orderAllSlabs(); } } }, '\u0421\u043B\u0430\u0431' ) ), _react2.default.createElement( 'div', { title: '\u042D\u043A\u0441\u043F\u0435\u0440\u0442\u043D\u043E\u0435 \u0437\u0430\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435', className: 'service_accept ' }, '\u042D\u043A\u0441\u043F' ), _react2.default.createElement( 'div', { title: '\u0424\u043E\u0442\u043E', className: 'service_accept ' }, '\u0424\u043E\u0442\u043E' ), _react2.default.createElement( 'div', { title: '\u041E\u0446\u0435\u043D\u043A\u0430', className: 'service_accept ' }, '\u041E\u0446\u0435\u043D\u043A\u0430' ) ) ); }; OrdersOrder.prototype.orderAllSlabs = function orderAllSlabs() { var _this5 = this; // const items = this.getItems().map(({ item }) => item); var items = this.getItems(); // console.log("orderAllSlabs items", items); items.map(function (n) { var item = n.item, services = n.services; var slabService = services && services.find(function (n) { return n.code === "slab"; }); if (slabService && _this5.canOrderSlab(item, false) && !_this5.isSlabServiceOrdered(item)) { // console.log("orderAllSlabs item", item); // console.log("orderAllSlabs services", services); _this5.setService(item, slabService); } return null; }); }; OrdersOrder.prototype.renderDefaultView = function renderDefaultView() { var _this6 = this; var order = this.getObjectWithMutations(); console.log("renderDefaultView order", order); if (!order) { return null; } var classes = this.props.classes; var _state = this.state, opened = _state.opened, confirmOpened = _state.confirmOpened, showSuccess = _state.showSuccess, loading = _state.loading; var number = order.number, date = order.date; // if(!order){ // return null; // } var orderTitle = '\u0417\u0430\u043A\u0430\u0437 \u2116 ' + number + ' ' + (date && (0, _moment2.default)(date).format('DD.MM.YY') || ""); var orderTable = this.renderOrderTable(); var confirmModal = void 0; if (confirmOpened) { confirmModal = _react2.default.createElement( 'div', { className: 'order-profile' }, _react2.default.createElement( _Modal2.default, { opened: true, handleClose: function handleClose(event) { _this6.setState({ confirmOpened: false }); }, title: orderTitle // className="popup2" }, _react2.default.createElement( 'div', { className: 'window', style: { width: "auto", padding: 0 } }, this.renderOrderTable({ diffsOnly: true }), _react2.default.createElement( 'div', { className: 'confirm-send-wrapper', style: { display: "block" } }, _react2.default.createElement( 'div', { className: 'confirm-send-cansel-wrapper' }, _react2.default.createElement( 'div', { className: 'confirm-button confirm_cansel', onClick: function onClick(event) { event.preventDefault(); _this6.setState({ confirmOpened: false }); } }, '\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C' ), _react2.default.createElement( 'div', { className: classes.buttonWrapper }, _react2.default.createElement( 'div', { className: ["confirm-button confirm_send", loading ? classes.buttonLoading : ""].join(" "), onClick: function () { var _ref7 = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee(event) { return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: event.preventDefault(); _context.next = 3; return _this6.save().then(function (r) { var _ref8 = r.data || {}, response = _ref8.response; var _ref9 = response || {}, success = _ref9.success; if (success) { _this6.setState({ confirmOpened: false }); _this6.setState({ showSuccess: true }); setTimeout(function () { _this6.setState({ showSuccess: false }); }, 3000); } }); case 3: case 'end': return _context.stop(); } } }, _callee, _this6); })); return function (_x5) { return _ref7.apply(this, arguments); }; }() }, '\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C' ), loading ? _react2.default.createElement(_Progress.CircularProgress, { size: 24, className: classes.buttonProgress }) : null ) ) ) ) ) ); } var successMessage = void 0; if (showSuccess) { successMessage = _react2.default.createElement( 'div', { className: 'order-profile' }, _react2.default.createElement( _Modal2.default, { opened: true, handleClose: function handleClose(event) { _this6.setState({ confirmOpened: false }); }, title: "Успешно" // className="popup2" }, _react2.default.createElement( 'div', { className: 'window' // style={{ // width: "auto", // padding: 0, // }} }, _react2.default.createElement( 'div', { className: 'insText' }, _react2.default.createElement( 'p', null, '\u0421\u043F\u0430\u0441\u0438\u0431\u043E \u0437\u0430 \u0412\u0430\u0448 \u0437\u0430\u043A\u0430\u0437.', _react2.default.createElement('br', null), '\u041C\u044B \u0441 \u0412\u0430\u043C\u0438 \u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E \u0441\u0432\u044F\u0436\u0435\u043C\u0441\u044F.' ) ) ) ) ); } return _react2.default.createElement( _react.Fragment, null, _react2.default.createElement( 'div', { className: 'orders-wrapper' }, _react2.default.createElement( 'div', { className: 'open-tab-wrapper client-order' }, _react2.default.createElement( 'div', { className: ["open-tab-title", opened ? "open" : ""].join(" "), onClick: function onClick(event) { _this6.setState({ opened: !opened }); } }, orderTitle, _react2.default.createElement('i', { className: 'menu-expand' }) ), _react2.default.createElement('div', { className: 'print_order print-button', title: '\u0420\u0430\u0441\u043F\u0435\u0447\u0430\u0442\u0430\u0442\u044C \u0437\u0430\u043A\u0430\u0437', onClick: function onClick(event) { return _this6.printOrder(); } }), _react2.default.createElement( 'div', { className: 'open-tab-content', style: { display: "block" } }, orderTable, _react2.default.createElement( 'div', { className: 'popup-grade' }, '\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C' ) ) ) ), confirmModal, successMessage ); // return (<View // // object={order} // // data={data} // // saveObject={this.saveOrder} // // {...other} // data={{ // }} // />) }; return OrdersOrder; }(_Editable2.default), _class.propTypes = _extends({}, _Editable2.default.propTypes, { services: _propTypes2.default.array, // match: PropTypes.object.isRequired, // View: PropTypes.func.isRequired, // order: PropTypes.object.isRequired, classes: _propTypes2.default.object.isRequired }), _class.defaultProps = _extends({}, _Editable2.default.defaultProps), _temp); exports.default = (0, _reactApollo.compose)( // graphql(order, { // // name: 'order', // }), (0, _reactApollo.graphql)(_query.updateOrderProcessor, { // name: 'updateOrder', options: function options() { return { variables: { orderGetItems: false } }; } }) // graphql(updateUserProcessor, { // name: 'updateUser', // }), )((0, _materialUi.withStyles)(styles)(function (props) { return _react2.default.createElement(OrdersOrder, props); })); // export default OrdersOrder;