lameck / smartcart

dev-master 2018-06-19 23:28 UTC

This package is not auto-updated.

Last update: 2024-10-03 01:22:31 UTC


README

Smartcart打包器

SmartCart是一个由Lameck Fernandes为laravel 5.5框架创建的打包器。它的目的是自动化使用购物车的应用程序的开发。

这个打包器是为了加速使用购物车的虚拟商店的开发而开发的。换句话说,在这个打包器中已经开发了常规应用程序的路由、表和控制器。为了举例说明其使用,还开发了一个与打包器一起的基于bootstrap 4的原型。简而言之,只需支付API即可补充。

购物车是基于会话来控制订单列表的使用。这个应用程序最初是一个服务器端模型。尚未开发客户端API,这可能在另一个版本中实现。然而,如果感兴趣,大部分项目已经开发完成,只需返回JSON即可。用于令牌的模型是本地的CSFR。对于JWT,只需进行最小更改,目的是加快开发速度。尽管DER仍然依赖于每个项目不同的特征,但使用这个打包器可以减少开发时间,根据需要定制代码。

表是根据在产品注册中常见的内容创建的,如:库存控制(库存);类别;品牌;供应商;以及产品本身。

此打包器包含


可发布文件

迁移

迁移顺序。请注意,在Linux和Windows之间,顺序是必要的。一些可能因系统和数据库而异的可能错误,可能是外键不能为空。由于表之间的组合关系,category,brand,address和status不迁移外键,但它们导出。迁移的表是:status和address的provider;provider的产品;以及产品的库存。在Linux系统上没有问题,特别是在Ubuntu 16 LTS上运行phpmyadmin和mysql。然而,在Windows上,使用wampserver出现了这些问题,这些问题通过更改表的顺序得到了解决。如果确实要使用php artisan migrate --force,那么就是这样。

  • 2018_03_26_225025_create_category
  • 2018_03_26_230229_create_brand
  • 2018_03_26_234958_create_address
  • 2018_03_27_000540_create_status
  • 2018_03_27_032617_create_provider
  • 2018_03_27_032618_create_product
  • 2018_03_27_032619_create_inventory

  • 种子文件

    可选。用于使用smartcart示例应用程序

  • smcAddressTableSeeder
  • smcBrandTableSeeder
  • smcCategoryTableSeeder
  • smcInventoryTableSeeder
  • smcProductTableSeeder
  • smcProviderTableSeeder
  • smcStatusTableSeeder

  • 资源

    视图

      布局

      包含应用程序模板的地方

    • app: 示例应用程序页面的模板
      部分

      模板的一部分,用于blade的includes

    • header: 布局的头部
      商店

      包含购物车页面

    • cart: 购物车摘要页面
    • checkout: 支付页面
    • index: 产品列表页面
      用户
    • profile 包含购买订单和其他与用户关系的页面
    • signin: 系统登录页面,用于使用smartcart
    • signup: 系统注册页面
  • home: smartcart展示页面

  • SRC

    Http

      控制器
    • AccountController: 负责管理系统用户
    • ShopController: 负责智能购物车的功能控制
      中间件
    • Authenticate: 负责限制对系统购买功能的访问
      模型
    • Product: 介于数据库和系统视图之间的层
      路由
    • api: 系统控制器的路由列表
      提供者
    • SmartCartServiceProvider: 应用提供者,Laravel中的签名

    签名:Packagerlist

    安装

    目前提供开发版本。 composer require lameck/smartcart:@dev

    提供者:app/config/app.php

    ...
    Lameck\Smartcart\SmartcartServiceProvider::class,

    内核:app/http/kernel.php

    添加到routemiddleware
    'smcAuth' => 'Lameck\Smartcart\Http\Middleware\Authenticate',

    发布

    php artisan vendor:publish --provider="Lameck\Smartcart\SmartcartServiceProvider"

    至此,所有必要的配置都已定义。如需查看示例,请继续阅读seeders

    示例

    创建数据库并配置本地文件.env

    在数据库中创建表:php artisan migrate --force

    添加到DatabaseSeeder文件

        //$this->call(UsersTableSeeder::class);
        $this->call(smcCategoryTableSeeder::class);
        $this->call(smcBrandTableSeeder::class);
        $this->call(smcAddressTableSeeder::class);
        $this->call(smcStatusTableSeeder::class);        
        $this->call(smcProviderTableSeeder::class);
        $this->call(smcProductTableSeeder::class);
        $this->call(smcInventoryTableSeeder::class);
    

    如果不输入此命令,表可能不会被填充:composer dump-autoload。可能出现的错误是“未找到smcCategoryTableSeeder表”

    填充表:php artisan db:seed

    运行服务器php artisan serve

    要访问路由,只需php artisan rout:list。原型位于localhot:8000/smc

    访问SHOP页面可能出现的错误

    Access denied for user 'homestead'@'localhost' (using password: YES)
    

    停止服务器。清除缓存:php artisan cache:clear 重启 php artisan serve

    域名

    主页

    SHOP


    创建账户

    由于购物车使用会话作为管理手段,因此需要登录系统。



    登录后,添加订单


    购物车



    购物车

    添加更多订单,删除某些项目或清除所有项目。



    结账

    只需插入支付API


    后续插件将添加多种支付方式,包括国内外。