@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
JavaScript
;
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;