@ozdao/prometheus-framework 0.2.68 → 0.2.70
Sign up to get free protection for your applications and to get access to all the features.
- package/package.json +1 -1
- package/src/components/ButtonSegmented/ButtonSegmented.vue +78 -0
- package/src/components/Completion/Completion.vue +76 -0
- package/src/components/Feed/Feed.vue +46 -18
- package/src/components/Tab/Tab.vue +11 -30
- package/src/modules/auth/components/pages/Invite.vue +1 -1
- package/src/modules/auth/controllers/auth.controller.js +10 -21
- package/src/modules/backoffice/router/backoffice.js +3 -3
- package/src/modules/events/components/elements/ButtonCheck.vue +15 -15
- package/src/modules/events/components/pages/EditEventTickets.vue +39 -13
- package/src/modules/events/components/pages/Event.vue +1 -2
- package/src/modules/events/controllers/tickets.controller.js +151 -98
- package/src/modules/events/controllers/utils/templateEmail.js +14 -0
- package/src/modules/events/controllers/utils/templateTicket.js +194 -0
- package/src/modules/events/router/events.js +3 -0
- package/src/modules/events/store/tickets.js +2 -2
- package/src/modules/globals/controllers/utils/queryProcessor.js +31 -6
- package/src/modules/globals/utils/mailing.js +19 -12
- package/src/modules/icons/entities/IconEvents.vue +7 -2
- package/src/modules/landing/components/pages/Home.vue +1 -1
- package/src/modules/orders/components/blocks/CardOrder.vue +1 -1
- package/src/modules/orders/components/blocks/CardOrderVar1.vue +97 -0
- package/src/modules/orders/components/pages/{FormOrder.vue → OrderCreate.vue} +20 -11
- package/src/modules/orders/components/pages/{EditOrder.vue → OrderCreateBackoffice.vue} +74 -17
- package/src/modules/orders/components/pages/Orders.vue +181 -70
- package/src/modules/orders/components/pages/Orders_refact.vue +2 -2
- package/src/modules/orders/components/sections/FormClientDetails.vue +24 -26
- package/src/modules/{applications → orders}/components/sections/SubscribeNewsletter.vue +1 -1
- package/src/modules/orders/controllers/orders.controller.js +46 -7
- package/src/modules/orders/models/customer.model.js +31 -0
- package/src/modules/orders/models/order.model.js +8 -13
- package/src/modules/orders/orders.client.js +67 -0
- package/src/modules/orders/orders.server.js +15 -0
- package/src/modules/orders/router/orders.router.js +1 -1
- package/src/modules/orders/store/orders.js +17 -2
- package/src/modules/users/components/pages/Profile.vue +6 -4
- package/src/modules/users/components/sections/ProfileCompletion.vue +30 -15
- package/src/modules/users/controllers/users.controller.js +0 -2
- package/src/modules/users/models/user.model.js +6 -5
- package/src/modules/users/users.server.js +1 -0
- package/src/styles/base/borders.scss +5 -2
- package/src/styles/config.scss +3 -4
- package/src/modules/applications/applications.client.js +0 -1
- package/src/modules/orders/components/blocks/Positions.vue +0 -177
- package/src/modules/users/models/client.model.js +0 -60
- /package/src/modules/{applications → orders}/controllers/applications.controller.js +0 -0
- /package/src/modules/{testimonials → orders}/controllers/testimonials.controller.js +0 -0
- /package/src/modules/{applications → orders}/models/application.model.js +0 -0
- /package/src/modules/{testimonials → orders}/models/testimonial.model.js +0 -0
- /package/src/modules/{applications → orders}/routes/applications.routes.js +0 -0
- /package/src/modules/{testimonials → orders}/routes/testimonials.routes.js +0 -0
- /package/src/modules/{applications → orders}/store/applications.js +0 -0
- /package/src/modules/{testimonials → orders}/store/testimonials.js +0 -0
- /package/src/modules/{payments → wallet}/components/pages/Payments.vue +0 -0
- /package/src/modules/{payments → wallet}/controllers/payments.controller.js +0 -0
- /package/src/modules/{payments → wallet}/controllers/payments.tinkoff.controller.js +0 -0
- /package/src/modules/{payments → wallet}/models/payment.model.js +0 -0
- /package/src/modules/{payments → wallet}/models/payment.tinkoff.model.js +0 -0
- /package/src/modules/{payments → wallet}/routes/payments.routes.js +0 -0
- /package/src/modules/{payments → wallet}/routes/payments.tinkoff.routes.js +0 -0
- /package/src/modules/{payments → wallet}/store/payments.js +0 -0
@@ -1,177 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<div class="order-list">
|
3
|
-
<div class="flex">
|
4
|
-
<h5 class="mn-b-small">
|
5
|
-
Состав заказа
|
6
|
-
|
7
|
-
</h5>
|
8
|
-
<div>
|
9
|
-
|
10
|
-
<a v-if="showAddNew === false" class="t-main h5" @click="changeAdd()">Добавить</a>
|
11
|
-
<a v-else class="t-main h5" @click="changeAdd()">Закрыть</a>
|
12
|
-
<a v-if="showAddNew === false" class="mn-l-small t-main h5" @click="reserOrderList()">Сбросить</a>
|
13
|
-
<a v-if="showAddNew === false" class="mn-l-small t-main h5" @click="saveItemList()">Сохранить</a>
|
14
|
-
|
15
|
-
</div>
|
16
|
-
|
17
|
-
</div>
|
18
|
-
|
19
|
-
<div v-if="showAddNew !== false" class="mn-b-small w-100 block">
|
20
|
-
<vue-select :options="products" v-model="techStack" :label-by="'name'" searchable clear-on-close :close-on-select="true"> </vue-select>
|
21
|
-
<button @click="addProductToOrder()" class="w-25 button">Добавить в заказ</button>
|
22
|
-
</div>
|
23
|
-
|
24
|
-
<ul class="mn-b-semi">
|
25
|
-
<li v-for="(product, index) in orderProducts" :key="product._id" class="shop-cart-item mn-b-small ">
|
26
|
-
<!-- <img v-if="product.images" :src="(FILE_SERVER_URL || '') + require( `@/assets/images/products/${product.images.links[0]}`)"> -->
|
27
|
-
<!-- <img v-if="!product.images" :src="(FILE_SERVER_URL || '') + require( `@/assets/icons/photo.svg`)"> -->
|
28
|
-
<div class="text-left">
|
29
|
-
<p class="name">{{ product.name }}</p>
|
30
|
-
|
31
|
-
<div class="mn-b-small flex">
|
32
|
-
<div class="small-underline variant">
|
33
|
-
<span v-if="!product.size && !product.color" class="">One-size</span>
|
34
|
-
<span v-if="product.size" class="">{{ product.size}}</span>
|
35
|
-
<span v-if="product.color && product.size" class="">, </span>
|
36
|
-
<span v-if="product.color" class="">{{ product.color}}</span>
|
37
|
-
<div v-if="product.edit">{{product.edit}}</div>
|
38
|
-
</div>
|
39
|
-
|
40
|
-
<p class="t-demi">{{product.quantity}} x $ {{product.price}}</p>
|
41
|
-
</div>
|
42
|
-
|
43
|
-
<div v-if="data[index]" class="flex-nowrap flex w-100">
|
44
|
-
<select
|
45
|
-
v-if="product.size"
|
46
|
-
@input="updateInputText('orders', 'current.positions[' + index + '].size', $event)"
|
47
|
-
:value="product.size"
|
48
|
-
placeholder="hello@example.com"
|
49
|
-
class="mn-r-small mn-b-small input-text input"
|
50
|
-
>
|
51
|
-
<option v-for="size in productSizes(product)" :value="size" >{{size}}</option>
|
52
|
-
</select>
|
53
|
-
|
54
|
-
<select
|
55
|
-
v-if="product.color"
|
56
|
-
|
57
|
-
@input="updateInputText('orders', 'current.positions[' + index + '].color', $event)"
|
58
|
-
placeholder="hello@example.com"
|
59
|
-
class="mn-r-small mn-b-small input-text input"
|
60
|
-
>
|
61
|
-
|
62
|
-
<option :value="product.color" selected disabled>{{product.color}}</option>
|
63
|
-
<option v-for="(color, index) in productColors(product)" :value="color" >{{color}}</option>
|
64
|
-
</select>
|
65
|
-
|
66
|
-
|
67
|
-
<input
|
68
|
-
@input="updateInputText('orders', 'current.positions[' + index + '].quantity', $event)"
|
69
|
-
:value="product.quantity"
|
70
|
-
placeholder="Маргарита"
|
71
|
-
class="mn-b-small input-text input"
|
72
|
-
/>
|
73
|
-
</div>
|
74
|
-
<a v-if="!data[index]" @click="changeEdit(index)">Редактировать</a>
|
75
|
-
<a v-if="data[index]" @click="deleteItem(product)">Удалить</a>
|
76
|
-
<a v-if="data[index]" @click="changeEdit(index)">Закрыть</a>
|
77
|
-
</div>
|
78
|
-
</li>
|
79
|
-
</ul>
|
80
|
-
|
81
|
-
|
82
|
-
<div class=" w-100 flex-center flex block">
|
83
|
-
<p class="p-big">Сумма к оплате:<br>
|
84
|
-
<span v-if="order.info.delivery === 'Самовывоз'" class="p-big t-semi">$ {{ orderTotalPrice }}</span>
|
85
|
-
<span v-if="order.info.delivery === 'Курьером'" class="p-big t-semi">$ {{ orderTotalPrice + 10 }}</span>
|
86
|
-
<span v-if="order.info.delivery === 'Почтой'" class="p-big t-semi">$ {{ orderTotalPrice + 20 }}</span>
|
87
|
-
(Заказ $ {{orderTotalPrice}} + доставка
|
88
|
-
<span v-if="order.info.delivery === 'Самовывоз'" >0</span>
|
89
|
-
<span v-if="order.info.delivery === 'Курьером'" >10</span>
|
90
|
-
<span v-if="order.info.delivery === 'Почтой'">20</span>
|
91
|
-
₽)
|
92
|
-
</p>
|
93
|
-
</div>
|
94
|
-
</div>
|
95
|
-
</template>
|
96
|
-
|
97
|
-
|
98
|
-
<script setup="props">
|
99
|
-
// GLOBAL
|
100
|
-
import InputText from '@/components/elements/InputText.vue'
|
101
|
-
import InputSelect from '@/components/elements/InputSelect.vue'
|
102
|
-
|
103
|
-
import {ref,computed,reactive,toRefs } from 'vue'
|
104
|
-
|
105
|
-
import { useRouter,useRoute } from 'vue-router'
|
106
|
-
|
107
|
-
const store = useStore()
|
108
|
-
const router = useRouter()
|
109
|
-
const route = useRoute()
|
110
|
-
|
111
|
-
const props = defineProps({
|
112
|
-
order: Object,
|
113
|
-
products: Array,
|
114
|
-
});
|
115
|
-
|
116
|
-
const orderTotalPrice = computed(() => store.getters['orders/orderTotalPrice'])
|
117
|
-
const orderProducts = computed(() => store.getters['orders/orderProducts'])
|
118
|
-
|
119
|
-
let data = reactive([])
|
120
|
-
let reactiveData = toRefs(data)
|
121
|
-
|
122
|
-
const techStack = ref(null)
|
123
|
-
|
124
|
-
function test () {
|
125
|
-
console.log(techStack)
|
126
|
-
}
|
127
|
-
|
128
|
-
function addProductToOrder () {
|
129
|
-
store.dispatch('orders/addProductToOrder', techStack)
|
130
|
-
showAddNew.value = !showAddNew.value;
|
131
|
-
}
|
132
|
-
|
133
|
-
function deleteItem (item) {
|
134
|
-
store.commit('orders/deleteItemFromOrder', item)
|
135
|
-
}
|
136
|
-
|
137
|
-
function saveItemList () {
|
138
|
-
store.dispatch('orders/updateOrderpositions', route.params._id)
|
139
|
-
}
|
140
|
-
|
141
|
-
|
142
|
-
function changeEdit (index) {
|
143
|
-
data[index] = !data[index];
|
144
|
-
}
|
145
|
-
|
146
|
-
var showAddNew = ref(false)
|
147
|
-
// const reactshowAddNew = toRefs(showAddNew)
|
148
|
-
|
149
|
-
function reserOrderList () {
|
150
|
-
store.dispatch('orders/fetchOrder', route.params._id)
|
151
|
-
}
|
152
|
-
|
153
|
-
function changeAdd () {
|
154
|
-
showAddNew.value = !showAddNew.value;
|
155
|
-
}
|
156
|
-
|
157
|
-
function productSizes (product) {
|
158
|
-
const productData = store.state.products.all.find(p => p._id === product._id)
|
159
|
-
var computedProduct = computed(() => store.getters['orders/getProductSizes'](productData))
|
160
|
-
return computedProduct.value
|
161
|
-
}
|
162
|
-
function productColors (product) {
|
163
|
-
const productData = store.state.products.all.find(p => p._id === product._id)
|
164
|
-
var computedProduct = computed(() => store.getters['orders/getProductColors']({product, productData}))
|
165
|
-
return computedProduct.value
|
166
|
-
}
|
167
|
-
|
168
|
-
</script>
|
169
|
-
|
170
|
-
<style lang="scss" scoped>
|
171
|
-
.shop-cart-item {
|
172
|
-
&:first-of-type { padding-top: 0;}
|
173
|
-
}
|
174
|
-
|
175
|
-
</style>
|
176
|
-
|
177
|
-
|
@@ -1,60 +0,0 @@
|
|
1
|
-
module.exports = (mongoose) => {
|
2
|
-
|
3
|
-
const ClientSchema = new mongoose.Schema({
|
4
|
-
phone: String,
|
5
|
-
email: String,
|
6
|
-
|
7
|
-
status: {
|
8
|
-
type: String,
|
9
|
-
enum: ['new','lost','converted'],
|
10
|
-
default: 'new',
|
11
|
-
required: true,
|
12
|
-
},
|
13
|
-
|
14
|
-
profile: {
|
15
|
-
photo: {
|
16
|
-
type: String,
|
17
|
-
default: ''
|
18
|
-
},
|
19
|
-
name: {
|
20
|
-
type: String,
|
21
|
-
default: ''
|
22
|
-
},
|
23
|
-
description: {
|
24
|
-
type: String,
|
25
|
-
default: ''
|
26
|
-
},
|
27
|
-
birthday: {
|
28
|
-
type: Date,
|
29
|
-
}
|
30
|
-
},
|
31
|
-
|
32
|
-
socials: {
|
33
|
-
telegram: {
|
34
|
-
type: String,
|
35
|
-
default: ''
|
36
|
-
},
|
37
|
-
twitter: {
|
38
|
-
type: String,
|
39
|
-
default: ''
|
40
|
-
},
|
41
|
-
facebook: {
|
42
|
-
type: String,
|
43
|
-
default: ''
|
44
|
-
},
|
45
|
-
instagram: {
|
46
|
-
type: String,
|
47
|
-
default: ''
|
48
|
-
}
|
49
|
-
},
|
50
|
-
},{
|
51
|
-
// Creation Date
|
52
|
-
timestamps: { currentTime: () => Date.now()
|
53
|
-
}
|
54
|
-
|
55
|
-
});
|
56
|
-
|
57
|
-
const Client = mongoose.model("Client", ClientSchema);
|
58
|
-
|
59
|
-
return Client;
|
60
|
-
}
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|