Compare commits
5 Commits
42944af2d3
...
feature/dr
| Author | SHA1 | Date | |
|---|---|---|---|
| 1788f90cde | |||
| a37f7ea8a8 | |||
| 18b63bed21 | |||
| 707c3be3ec | |||
| 3d52ef9d4c |
@@ -48,6 +48,8 @@ app.use('/dogsitters-finder', require('./routers/dogsitters-finder'))
|
||||
app.use('/kazan-explore', require('./routers/kazan-explore'))
|
||||
app.use('/edateam', require('./routers/edateam-legacy'))
|
||||
app.use('/dry-wash', require('./routers/dry-wash'))
|
||||
app.use('/freetracker', require('./routers/freetracker'))
|
||||
app.use('/dhs-testing', require('./routers/dhs-testing'))
|
||||
|
||||
app.use(require('./error'))
|
||||
|
||||
|
||||
37
server/routers/dry-wash/arm.js
Normal file
37
server/routers/dry-wash/arm.js
Normal file
@@ -0,0 +1,37 @@
|
||||
const router = require('express').Router()
|
||||
const {MasterModel} = require('./model/master')
|
||||
|
||||
router.post('/master', async (req, res,next) => {
|
||||
|
||||
const {name, phone} = req.body
|
||||
|
||||
if (!name || !phone ){
|
||||
throw new Error('Enter name and phone')
|
||||
}
|
||||
try {
|
||||
const master = await MasterModel.create({name, phone})
|
||||
res.status(200).send({success: true, body: master})
|
||||
} catch (error) {
|
||||
next(error)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
router.get('/masters', async (req, res,next) => {
|
||||
try {
|
||||
const master = await MasterModel.find({})
|
||||
res.status(200).send({success: true, body: master})
|
||||
} catch (error) {
|
||||
next(error)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
router.get('/orders', (req, res) => {
|
||||
res
|
||||
.status(200)
|
||||
.send(require(`./json/arm-orders/success.json`))
|
||||
})
|
||||
|
||||
module.exports = router
|
||||
@@ -1,15 +1,8 @@
|
||||
const router = require('express').Router()
|
||||
const armRouter = require('./arm')
|
||||
|
||||
router.get('/arm/masters', (req, res) => {
|
||||
res
|
||||
.status(200)
|
||||
.send(require("./json/arm-masters/success.json"))
|
||||
})
|
||||
|
||||
router.get('/arm/orders', (req, res) => {
|
||||
res
|
||||
.status(200)
|
||||
.send(require(`./json/arm-orders/success.json`))
|
||||
})
|
||||
router.use('/arm', armRouter)
|
||||
|
||||
|
||||
module.exports = router
|
||||
|
||||
20
server/routers/dry-wash/model/master.js
Normal file
20
server/routers/dry-wash/model/master.js
Normal file
@@ -0,0 +1,20 @@
|
||||
const { Schema, model } = require('mongoose')
|
||||
|
||||
const schema = new Schema({
|
||||
name: {type: String, required: true},
|
||||
phone: {type: String, required: true,unique: true,},
|
||||
created: {
|
||||
type: Date, default: () => new Date().toISOString(),
|
||||
},
|
||||
})
|
||||
|
||||
schema.set('toJSON', {
|
||||
virtuals: true,
|
||||
versionKey: false,
|
||||
})
|
||||
|
||||
schema.virtual('id').get(function () {
|
||||
return this._id.toHexString()
|
||||
})
|
||||
|
||||
exports.MasterModel = model('dry-wash-master', schema)
|
||||
30
server/routers/dry-wash/model/order.js
Normal file
30
server/routers/dry-wash/model/order.js
Normal file
@@ -0,0 +1,30 @@
|
||||
const { Schema, model } = require('mongoose')
|
||||
|
||||
const schema = new Schema({
|
||||
startWashTime: {type: String, required: true},
|
||||
endWashTime: {type: String, required: true},
|
||||
orderDate: {type: String, required: true},
|
||||
location: {type: String, required: true},
|
||||
phone: {type: String, required: true},
|
||||
status: {type: String, required: true},
|
||||
carNumber: {type: String, required: true},
|
||||
created: {
|
||||
type: Date, default: () => new Date().toISOString(),
|
||||
},
|
||||
updated: {
|
||||
type: Date, default: () => new Date().toISOString(),
|
||||
},
|
||||
master: {type: Schema.Types.ObjectId, ref: 'dry-wash-master'},
|
||||
notes: String,
|
||||
})
|
||||
|
||||
schema.set('toJSON', {
|
||||
virtuals: true,
|
||||
versionKey: false,
|
||||
})
|
||||
|
||||
schema.virtual('id').get(function () {
|
||||
return this._id.toHexString()
|
||||
})
|
||||
|
||||
exports.OrderModel = model('dry-wash-order', schema)
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"info": {
|
||||
"_postman_id": "e91fbcf7-3c7b-420d-a49e-4dbb6199c14a",
|
||||
"name": "dry-wash",
|
||||
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
|
||||
"_exporter_id": "27705820"
|
||||
},
|
||||
"item": [
|
||||
{
|
||||
"name": "arm",
|
||||
"item": [
|
||||
{
|
||||
"name": "create master",
|
||||
"request": {
|
||||
"method": "POST",
|
||||
"header": [],
|
||||
"body": {
|
||||
"mode": "raw",
|
||||
"raw": "{\n \"name\":\"Anton\",\n \"phone\": \"89172420577\"\n}",
|
||||
"options": {
|
||||
"raw": {
|
||||
"language": "json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"url": {
|
||||
"raw": "{{host}}/arm/master",
|
||||
"host": [
|
||||
"{{host}}"
|
||||
],
|
||||
"path": [
|
||||
"arm",
|
||||
"master"
|
||||
]
|
||||
}
|
||||
},
|
||||
"response": []
|
||||
},
|
||||
{
|
||||
"name": "get masters",
|
||||
"request": {
|
||||
"method": "GET",
|
||||
"header": [],
|
||||
"url": {
|
||||
"raw": "{{host}}/arm/masters",
|
||||
"host": [
|
||||
"{{host}}"
|
||||
],
|
||||
"path": [
|
||||
"arm",
|
||||
"masters"
|
||||
]
|
||||
}
|
||||
},
|
||||
"response": []
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
23
server/routers/freetracker/dashboard-performer/index.js
Normal file
23
server/routers/freetracker/dashboard-performer/index.js
Normal file
@@ -0,0 +1,23 @@
|
||||
const Router = require('express').Router;
|
||||
|
||||
const router = Router()
|
||||
|
||||
const timer = (_req, _res, next) => {
|
||||
setTimeout(() => next(), 500)
|
||||
}
|
||||
|
||||
router.use(timer)
|
||||
|
||||
router.get(
|
||||
'/active',
|
||||
(req, res) =>
|
||||
res.send(require(`./json/active-order-success.json`))
|
||||
)
|
||||
|
||||
router.get(
|
||||
'/history',
|
||||
(req, res) =>
|
||||
res.send(require(`./json/history-success.json`))
|
||||
)
|
||||
|
||||
module.exports = router
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"success": false,
|
||||
"errors": [
|
||||
"Не получилось получить заказ с id = 123123"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"success": true,
|
||||
"body": {
|
||||
"id": "1212",
|
||||
"createdAt": "2024-11-29 13:24:08",
|
||||
"updatedAt": "2024-11-29 13:24:10",
|
||||
"status": "in_progress",
|
||||
"timeline": [
|
||||
{
|
||||
"color": "gray",
|
||||
"children": "Москва"
|
||||
},
|
||||
{
|
||||
"children": "Владимир, 25.10.2024 18:02"
|
||||
},
|
||||
{
|
||||
"children": "Нижний новгород, 25.10.2024 12:21"
|
||||
},
|
||||
{
|
||||
"children": "Казань, 25.10.2024 03:00"
|
||||
}
|
||||
],
|
||||
"statistics": [
|
||||
{
|
||||
"key": "address-from",
|
||||
"value": "г. Казань, ул Ильи Давыдова, стр. 87а"
|
||||
},
|
||||
{
|
||||
"key": "address-to",
|
||||
"value": "г. Москва, ул. Тверская, д. 12"
|
||||
},
|
||||
{
|
||||
"key": "delivery",
|
||||
"value": "26.10.2024 23:08"
|
||||
},
|
||||
{
|
||||
"key": "cost",
|
||||
"value": "100500₽"
|
||||
},
|
||||
{
|
||||
"key": "customer",
|
||||
"value": "ООО \"Сидоров\""
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"success": false,
|
||||
"body": {
|
||||
"history": []
|
||||
},
|
||||
"errors": [
|
||||
"Что-то пошло не так"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,187 @@
|
||||
{
|
||||
"success": true,
|
||||
"body": {
|
||||
"history": [
|
||||
{
|
||||
"key": 1,
|
||||
"number": "12324",
|
||||
"cost": 15000,
|
||||
"dateEnd": 1685998800000,
|
||||
"customer": "ООО \"Иванов\"",
|
||||
"cityFrom": "Псков",
|
||||
"cityTo": "Мурманск"
|
||||
},
|
||||
{
|
||||
"key": 2,
|
||||
"number": "12323",
|
||||
"cost": 10000,
|
||||
"dateEnd": 1686085200000,
|
||||
"customer": "ООО \"Попов\"",
|
||||
"cityFrom": "Астрахань",
|
||||
"cityTo": "Ставрополь"
|
||||
},
|
||||
{
|
||||
"key": 3,
|
||||
"number": "12325",
|
||||
"cost": 12000,
|
||||
"dateEnd": 1686171600000,
|
||||
"customer": "ООО \"Сидоров\"",
|
||||
"cityFrom": "Москва",
|
||||
"cityTo": "Казань"
|
||||
},
|
||||
{
|
||||
"key": 4,
|
||||
"number": "12326",
|
||||
"cost": 9000,
|
||||
"dateEnd": 1686258000000,
|
||||
"customer": "ООО \"Петров\"",
|
||||
"cityFrom": "Новосибирск",
|
||||
"cityTo": "Томск"
|
||||
},
|
||||
{
|
||||
"key": 5,
|
||||
"number": "12327",
|
||||
"cost": 13000,
|
||||
"dateEnd": 1686344400000,
|
||||
"customer": "ООО \"Смирнов\"",
|
||||
"cityFrom": "Омск",
|
||||
"cityTo": "Тюмень"
|
||||
},
|
||||
{
|
||||
"key": 6,
|
||||
"number": "12328",
|
||||
"cost": 14000,
|
||||
"dateEnd": 1686430800000,
|
||||
"customer": "ООО \"Кузнецов\"",
|
||||
"cityFrom": "Саратов",
|
||||
"cityTo": "Самара"
|
||||
},
|
||||
{
|
||||
"key": 7,
|
||||
"number": "12329",
|
||||
"cost": 11000,
|
||||
"dateEnd": 1686517200000,
|
||||
"customer": "ООО \"Васильев\"",
|
||||
"cityFrom": "Краснодар",
|
||||
"cityTo": "Сочи"
|
||||
},
|
||||
{
|
||||
"key": 8,
|
||||
"number": "12330",
|
||||
"cost": 8000,
|
||||
"dateEnd": 1686603600000,
|
||||
"customer": "ООО \"Зайцев\"",
|
||||
"cityFrom": "Пермь",
|
||||
"cityTo": "Екатеринбург"
|
||||
},
|
||||
{
|
||||
"key": 9,
|
||||
"number": "12331",
|
||||
"cost": 7000,
|
||||
"dateEnd": 1686690000000,
|
||||
"customer": "ООО \"Морозов\"",
|
||||
"cityFrom": "Челябинск",
|
||||
"cityTo": "Уфа"
|
||||
},
|
||||
{
|
||||
"key": 10,
|
||||
"number": "12332",
|
||||
"cost": 16000,
|
||||
"dateEnd": 1686776400000,
|
||||
"customer": "ООО \"Павлов\"",
|
||||
"cityFrom": "Волгоград",
|
||||
"cityTo": "Ростов-на-Дону"
|
||||
},
|
||||
{
|
||||
"key": 11,
|
||||
"number": "12333",
|
||||
"cost": 9000,
|
||||
"dateEnd": 1686862800000,
|
||||
"customer": "ООО \"Фролов\"",
|
||||
"cityFrom": "Калининград",
|
||||
"cityTo": "Смоленск"
|
||||
},
|
||||
{
|
||||
"key": 12,
|
||||
"number": "12334",
|
||||
"cost": 15500,
|
||||
"dateEnd": 1686949200000,
|
||||
"customer": "ООО \"Богданов\"",
|
||||
"cityFrom": "Нижний Новгород",
|
||||
"cityTo": "Киров"
|
||||
},
|
||||
{
|
||||
"key": 13,
|
||||
"number": "12335",
|
||||
"cost": 13500,
|
||||
"dateEnd": 1687035600000,
|
||||
"customer": "ООО \"Григорьев\"",
|
||||
"cityFrom": "Тверь",
|
||||
"cityTo": "Ярославль"
|
||||
},
|
||||
{
|
||||
"key": 14,
|
||||
"number": "12336",
|
||||
"cost": 12500,
|
||||
"dateEnd": 1687122000000,
|
||||
"customer": "ООО \"Дмитриев\"",
|
||||
"cityFrom": "Сургут",
|
||||
"cityTo": "Ханты-Мансийск"
|
||||
},
|
||||
{
|
||||
"key": 15,
|
||||
"number": "12337",
|
||||
"cost": 14500,
|
||||
"dateEnd": 1687208400000,
|
||||
"customer": "ООО \"Михайлов\"",
|
||||
"cityFrom": "Иркутск",
|
||||
"cityTo": "Братск"
|
||||
},
|
||||
{
|
||||
"key": 16,
|
||||
"number": "12338",
|
||||
"cost": 10500,
|
||||
"dateEnd": 1687294800000,
|
||||
"customer": "ООО \"Романов\"",
|
||||
"cityFrom": "Владивосток",
|
||||
"cityTo": "Хабаровск"
|
||||
},
|
||||
{
|
||||
"key": 17,
|
||||
"number": "12339",
|
||||
"cost": 9500,
|
||||
"dateEnd": 1687381200000,
|
||||
"customer": "ООО \"Федоров\"",
|
||||
"cityFrom": "Якутск",
|
||||
"cityTo": "Магадан"
|
||||
},
|
||||
{
|
||||
"key": 18,
|
||||
"number": "12340",
|
||||
"cost": 8500,
|
||||
"dateEnd": 1687467600000,
|
||||
"customer": "ООО \"Жуков\"",
|
||||
"cityFrom": "Симферополь",
|
||||
"cityTo": "Севастополь"
|
||||
},
|
||||
{
|
||||
"key": 19,
|
||||
"number": "12341",
|
||||
"cost": 11500,
|
||||
"dateEnd": 1687554000000,
|
||||
"customer": "ООО \"Николаев\"",
|
||||
"cityFrom": "Барнаул",
|
||||
"cityTo": "Бийск"
|
||||
},
|
||||
{
|
||||
"key": 20,
|
||||
"number": "12342",
|
||||
"cost": 10000,
|
||||
"dateEnd": 1687640400000,
|
||||
"customer": "ООО \"Орлов\"",
|
||||
"cityFrom": "Кемерово",
|
||||
"cityTo": "Новокузнецк"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
5
server/routers/freetracker/index.js
Normal file
5
server/routers/freetracker/index.js
Normal file
@@ -0,0 +1,5 @@
|
||||
const router = require('express').Router();
|
||||
|
||||
router.use('/performer', require('./dashboard-performer'))
|
||||
|
||||
module.exports = router;
|
||||
Reference in New Issue
Block a user