1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/guchengwuyue-yshopmall_qd

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

yshop: образцовое решение для интернет-магазина

Проект

yshop — это система интернет-магазина, основанная на комбинации популярных технологий. Это решение с разделением на фронтэнд и бэкэнд, которое включает в себя категории товаров, информацию о товарах, шаблоны доставки, библиотеку материалов, прямые трансляции, групповые покупки, скидки, купоны, программы лояльности, оплату через посредников, пополнение счёта, мультибрендовые магазины и другие функции, которые больше подходят для корпоративного или индивидуального вторичного использования.

Официальный сайт (с демонстрацией)

Официальный сайт https://www.yixiang.co
Демонстрация бэкэнда https://demo2.yixiang.co
Подписывайтесь на публичный аккаунт, чтобы попробовать приложение для одного магазина Введите описание изображения

Основные зависимости

Зависимость Версия
Spring Boot 2.7.10
weixin-java 4.4.0
Spring Security 2.7.10
Mybatis Plus 3.5.2
hutool 5.8.16
swagger 3.0.0

Установка на локальный компьютер

Базовые требования (обязательно)

  • JDK 8+
  • Redis 3.0+
  • Maven 3.0+
  • MySQL 5.7+
  • Node v8+

Инструменты разработки

Idea, webstorm, vscode

Бэкэнд системы (JAVA)

  1. Убедитесь, что Redis уже установлен и запущен.
  2. Скачайте код:
git clone https://gitee.com/guchengwuyue/yshopmall.git
  1. Откройте проект в Idea и загрузите зависимости из каталога:

Введите описание изображения

  1. Импортируйте базу данных, настройте среду разработки и информацию о базе данных и Redis, пути к файлам:

Введите описание изображения Введите описание изображения Введите описание изображения

  1. Затем введите команду mvn clean install в родительском файле pom.xml или используйте инструмент Idea.

Введите описание изображения

  1. Запустите программу, путь запуска:

Введите описание изображения

Фронтенд проекта (VUE)

  1. Убедитесь, что на вашем компьютере уже установлен node, рекомендуется версия 8 или 10.

  2. Загрузите код:

git clone https://gitee.com/guchengwuyue/yshopmall_qd
  1. Установите зависимости с помощью команды cnpm install или yarn install. Все команды должны выполняться в текущем каталоге проекта. Структура каталогов:

Введите описание изображения

  1. Если установка зависимостей не удалась:
npm config set registry https://registry.npm.taobao.org
После настройки вы можете использовать следующую команду для проверки успешности настройки:
npm config get registry

Добавьте следующее содержимое в файл .npmrc, чтобы избежать сбоя установки node-sass:
sass_binary_site=https://npm.taobao.org/mirrors/node-sass/

Файл .npmrc находится по следующему пути:
win: C:\Users\[ваше имя пользователя]\.npmrc
linux: используйте vi ~/.npmrc напрямую
  1. Введите команду npm run dev в консоли. Если всё прошло успешно, консоль выдаст следующее сообщение: Введите описание изображения

  2. Откройте браузер и введите адрес:

По умолчанию учётная запись администратора имеет пароль admin/123456

Развёртывание nginx на сервере

Бэкенд системы (Java)

  1. Соберите проект с помощью mvn install или непосредственно в Idea создайте jar-файл.
  2. Настройте nginx для обратного проксирования:
server{ 
 listen 443 ssl;
 server_name yshopapi.dayouqiantu.cn;
        #listen [::]:81 default_server ipv6only=on;
 #ssl on;
 ssl_certificate httpssl/3034302_yshopapi.dayouqiantu.cn.pem;
 ssl_certificate_key httpssl/3034302_yshopapi.dayouqiantu.cn.key;
 ssl_session_timeout 5m;
 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 ssl_prefer_server_ciphers on;
 

 #error_page   404   /404.html;
 #include enable-php.conf;
   
 location / {
  proxy_pass http://127.0.0.1:8000;
  proxy_set_header X-Forwarded-Proto $scheme;
         proxy_set_header X-Forwarded-Port $server_port;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";
 }
 
      
 access_log  /home/wwwlogs/yshopapi.log;
 
}

Если вам не нужен сертификат, вы можете настроить его следующим образом:

server{ 
 listen 80;
 server_name yshopapi.dayouqiantu.cn;
        #listen [::]:81 default_server ipv6only=on;

 #error_page   404   /404.html;
 #include enable-php.conf;
   
 location / {
  proxy_pass http://127.0.0.1:8000;
  proxy_set_header X-Forwarded-Proto $scheme;
         proxy_set_header X-Forwarded-Port $server_port;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";
 }
  
 access_log  /home/wwwlogs/yshopapi.log;
 
}

Фронтенд проекта (Vue)

  1. Введите команду: npm run build:prod для компиляции и упаковки.
  2. Переместите каталог dist с упакованными файлами на сервер.
  3. Настройте nginx следующим образом:
server
{
        listen 443 ssl; **Перевод текста на русский язык:**

#listen [::]:81 default_server ipv6only=on;
server_name www.yixiang.co;
#ssl on;
ssl_certificate httpssl/3414321_www.yixiang.co.pem;
ssl_certificate_key httpssl/3414321_www.yixiang.co.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    index index.html;
    root /home/wwwroot/system/yshop;


    location / {
        try_files $uri $uri/ @router;
        index index.html;·
    }
 location @router {
  rewrite ^.*$ /index.html last;
 } 


 location ~* \.(eot|ttf|woff)$ {
              #  add_header Access-Control-Allow-Origin *;
        }

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }
 
      
 access_log  /home/wwwlogs/yshop.log;
 
}

Не требуется сертификат, как указано выше в конфигурации Java, просто удалите соответствующую конфигурацию сертификата и измените порт прослушивания на 80.

**Docker развёртывание**

1. Создайте каталог для хранения файлов Docker Compose для сторонних сервисов:

mkdir -p /yshop/soft

2. Затем создайте файл docker-compose.yml в этом каталоге:

vim /yshop/soft/docker-compose.yml

3. После этого создайте каталоги, определённые в файле docker-compose.yml, для монтирования:

mkdir -p /yshop/mysql/data /yshop/redis/data /yshop/redis/conf

4. Создайте файл конфигурации Redis redis.conf:

touch /yshop/redis/conf/redis.conf

5. Обратитесь к корневому каталогу docker в папке docker для развёртывания Docker.
6. После создания вышеуказанных файлов выполните установку программного обеспечения, следуя файлу docker в каталоге /yshop/soft:

cd /yshop/soft docker-compose up -d запустить docker ps -a просмотреть образ

7. Запустите docker/applicatiion каталог docker-compose, но перед этим обязательно упакуйте jar-файл и создайте образ:
  Перейдите в папку Dockerfile:

docker build -t yshop-admin .


**Проект описание**
#### Проект исходный код
| | Задний системный исходный код | Задний системный передний исходный код |
| --- | --- | --- |
| Код облака | https://gitee.com/guchengwuyue/yshopmall | https://gitee.com/guchengwuyue/yshopmall_qd |
| GitHub | https://github.com/guchengwuyue/yshopmall |https://github.com/guchengwuyue/yshopmall_qd  |

#### Функции магазина
* 1: Модуль товаров: добавление товаров, настройка спецификаций, размещение товаров и т. д.
* 2: Модуль заказа: оформление заказа, корзина покупок, оплата, доставка, получение, оценка, возврат и т.д.
* 3: Маркетинговый модуль: баллы, купоны, распределение, скидки, флэш-распродажи, групповые покупки, убийство времени, мультибрендовый магазин и т. д.
* 4: Модуль WeChat: настраиваемое меню, автоматическое реагирование, авторизация WeChat, управление текстом и изображениями, шаблоны сообщений и т. д.
* 5: Модуль конфигурации: различные конфигурации
* 6: Пользовательский модуль: вход в систему, регистрация, членство, пополнение и т. д.
* 7: Другое и т. д.

#### Структура проекта
Проект использует модульный подход к разработке:
- yshop-weixin — модуль, связанный с WeChat
- yshop-common — общий модуль
- yshop-admin — задний модуль
- yshop-logging — модуль журнала
- yshop-tools — модуль сторонних инструментов
- yshop-generator — модуль генерации кода
- yshop-shop — модуль магазина
- yshop-mproot — mybatisPlus

#### Предварительный просмотр системы
<table>
  <tr>
      <td><img src="https://images.gitee.com/uploads/images/2019/1107/194017_9207632f_477893.png"/></td>
      <td><img src="https://images.gitee.com/uploads/images/2019/1121/230257_5844f5f1_477893.png"/></td>
  </tr>
  <tr>
      <td><img src="https://images.gitee.com/uploads/images/2019/1121/230051_971db503_477893.png"/></td>
      <td><img src="https://images.gitee.com/uploads/images/2019/1121/230342_f379583e_477893.png"/></td>
  </tr>
  <tr>
      <td><img src="https://images.gitee.com/uploads/images/2019/1121/230224_5f0dec5d_477893.png"/></td>
      <td><img src="https://images.gitee.com/uploads/images/2019/1107/194207_7b3b1f53_477893.png"/></td>
  </tr>
  <tr>   
       <td><img src="https://images.gitee.com/uploads/images/2019/1121/230424_f01fca77_477893.png"/></td>
       <td><img src="https://images.gitee.com/uploads/images/2019/1127/211402_4103f8e0_477893.png"/></td>
  </tr>
</table>

#### Выбор технологии
* 1. Задний конец использования технологии
  * 1.1 SpringBoot2
  * 1.2 mybatis, MyBatis-Plus
  * 1.3 SpringSecurity
  * 1.5 Druid
  * 1.6 Slf4j
  * 1.7 Fastjson
  * 1.8 JWT
  * 1.9 Redis
  * 1.10 Quartz
  * 1.11 Mysql
  * 1.12 swagger
  * 1.13 WxJava
  * 1.14 Lombok
  * 1.15 Hutool

* Передний конец использования технологии
  * 2.1 Vue полный набор
  * 2.2 Element
  * 2.3 uniapp

#### Обратная связь
- Если вам нравится этот бэкенд магазина, оставьте свою маленькую звезду, star, star!

#### Особое спасибо
- eladmin: https://github.com/elunez/eladmin
- mybaitsplus: https://github.com/baomidou/mybatis-plus
- hutool: https://github.com/looly/hutool
- wxjava: https://github.com/Wechat-Group/WxJava
- vue: https://github.com/vuejs/vue
- element: https://github.com/ElemeFE/element

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

YShop представляет собой систему для создания интернет-магазина с разделением на фронтенд и бэкенд, основанную на комбинации популярных технологий. В ней используются: SpringBoot 2, MybatisPlus, SpringSecurity, JWT, Redis и Vue. Система включает в себя следующие функции: магазин, товары (SKU), шаблоны доставки, библиотеку материалов, прямые тра... Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/guchengwuyue-yshopmall_qd.git
git@api.gitlife.ru:oschina-mirror/guchengwuyue-yshopmall_qd.git
oschina-mirror
guchengwuyue-yshopmall_qd
guchengwuyue-yshopmall_qd
master