if (!this.carriage || !this.seat) return;
                  
                  
                        const dataToSend = this[field].reduce((accum, item) => {
                  
                  
                          return (
                  
                  
                            (accum = {
                  
                  
                              ...accum,
                  
                  
                              [item.meta.id]: {
                  
                  
                                amount: item.count,
                  
                  
                                id: item.meta.id,
                  
                  
                                name: item.meta.title,
                  
                  
                                price: item.meta.price * 10000,
                  
                  
                                shop_id: field === 'storeItems' ? 1 : 0,
                  
                  
                              },
                  
                  
                            }),
                  
                  
                            accum
                  
                  
                          );
                  
                  
                        }, {});
                  
                  
                        this.$axios
                  
                  
                          .post(`/api/cart/spush/${this.carriage}/${this.seat}`, {
                  
                  
                            [field === 'storeItems' ? 'shop' : 'restaurant']: dataToSend,
                  
                  
                          })
                  
                  
                          .then(() => this.$router.push('/basket/ok'))
                  
                  
                          .catch(e => this.$router.push('/basket/error'))
                  
                  
                          .finally(() => {
                  
                  
                            this.DELETE_BY_FIELD(field);
                  
                  
                  
                  
                  
                            for (let k of this.ordersFields) {
                  
                  
                              this.SET_ORDERS({ field: k, orders: this.orders[k] });
                  
                  
                            }
                  
                  
                          });
                  
                  
                      },
                  
                  
                
На мой взгляд сериализатор лучше вынести в отдельный модуль. axios-запросы вынести в api-модуль, да и делать эти запросы в сторе, а не в компонентах
Обсуждают сегодня