/var/www/qr4y.com/server/delivery/api/controllers/order
NameSizeModeActions
accept.js14550644editdlrm
add_waiter.js13920644editdlrm
arrived.js14020644editdlrm
cancel.js19090644editdlrm
complete.js23280644editdlrm
confirmed.js25730644editdlrm
create.js62500644editdlrm
delete.js9120644editdlrm
delivery.js14670644editdlrm
details.js18110644editdlrm
edit.js8840644editdlrm
history.js15500644editdlrm
list.js35520644editdlrm
pay.js51080644editdlrm
printed.js12610644editdlrm
ready.js14570644editdlrm
remove_waiter.js10000644editdlrm
set_table.js11050644editdlrm
set_user.js10980644editdlrm
statistic.js61160644editdlrm
Edit: /var/www/qr4y.com/server/delivery/api/controllers/order/complete.js (2328B)
const { NotFound, BadRequest, ApiError } = require('../../responseModels/errors') const { performance } = require('perf_hooks') module.exports = function ({ db, logger }) { return async (req, res, next) => { logger.child({ path: req.path, request: req.body }).info() let transaction = await db.sequelize.transaction() try { let t1 = performance.now() // checkPermission(req, 'order_delete') const { id } = req.body if (!id) { throw new BadRequest({ lang: req.user?.languageCode }) } let order = await SERVICES.OrderService.GetOrder(id) if (!order) { throw new NotFound({ lang: req.user?.languageCode }) } // проверка оплаты if (order.pay_status_order == ORDER_PAY_STATUS.NOT_PAID) { throw new BadRequest({ lang: req.user?.languageCode, code: 1041 }) } if (order.pay_status_order == ORDER_PAY_STATUS.PAY_ERROR) { throw new BadRequest({ lang: req.user?.languageCode, code: 1042 }) } // проверка оплаты доставки // if (order.pay_status_delivery == ORDER_PAY_STATUS_DELIVERY.NOT_PAID) { // throw new BadRequest({ lang: req.user?.languageCode, code: 1043 }) // } // if (order.pay_status_delivery == ORDER_PAY_STATUS_DELIVERY.PAY_ERROR) { // throw new BadRequest({ lang: req.user?.languageCode, code: 1044 }) // } order.status = ORDER_STATUS.COMPLETE order.completeAt = Date.now() await order.save() await db.orderHistory.create({ orderId: order.id, userId: req.body.userId || null, event: ORDER_HISTORY_EVENT.COMPLETE, app: req.user?.app || APP.UNKNOWN }) if (order.userId > 0) { const user = await db.user.findOne({ where: { id: order.userId } }) if (user) { user.ordersCompleted++ user.save() } } // company counters const company = await db.company.findOne({ where: { id: order.companyId } }) if (company) { company.ordersCompleted++ company.save() } transaction.commit() transaction = null await SERVICES.OrderService.StatusOrder(order) if (order.deliveryServerId) { await SERVICES.DeliveryService.UpdateOrder(order.id) } const time = performance.now() - t1 return res.status(200).json({ status: 'success', order, time }) } catch (err) { transaction?.rollback() next(err) } } }