├── public ├── favicon.ico ├── robots.txt ├── img │ ├── c1.png │ ├── c2.png │ ├── c3.png │ ├── c4.png │ ├── c5.png │ ├── c6.png │ └── banner.png └── .htaccess ├── database ├── .gitignore ├── seeds │ ├── AdvertTableSeeder.php │ └── DatabaseSeeder.php ├── factories │ └── UserFactory.php └── migrations │ ├── 2014_10_12_100000_create_password_resets_table.php │ └── 2014_10_12_000000_create_users_table.php ├── bootstrap └── cache │ └── .gitignore ├── storage ├── logs │ └── .gitignore ├── app │ ├── public │ │ └── .gitignore │ └── .gitignore └── framework │ ├── cache │ └── .gitignore │ ├── testing │ └── .gitignore │ ├── views │ └── .gitignore │ ├── sessions │ └── .gitignore │ └── .gitignore ├── modules ├── component │ ├── Point │ │ ├── .gitignore │ │ ├── README.md │ │ ├── .travis.yml │ │ ├── scrutinizer.yml │ │ ├── src │ │ │ └── Repository │ │ │ │ └── PointRepository.php │ │ ├── .php_cs │ │ └── phpunit.xml │ ├── Address │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ ├── src │ │ │ ├── Address.php │ │ │ └── RepositoryContract.php │ │ ├── composer.json │ │ └── phpunit.xml │ ├── Advert │ │ ├── .gitignore │ │ ├── config │ │ │ └── advert.php │ │ ├── .travis.yml │ │ ├── src │ │ │ ├── Repositories │ │ │ │ ├── AdvertItemRepository.php │ │ │ │ └── AdvertRepository.php │ │ │ └── Models │ │ │ │ └── MicroPageAdvert.php │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ ├── composer.json │ │ └── phpunit.xml │ ├── Discount │ │ ├── .gitignore │ │ ├── README.md │ │ ├── .travis.yml │ │ ├── tests │ │ │ ├── Models │ │ │ │ └── User.php │ │ │ └── Repositories │ │ │ │ └── DiscountRepositoryTest.php │ │ ├── src │ │ │ ├── Repositories │ │ │ │ └── DiscountRepository.php │ │ │ ├── Policies │ │ │ │ └── CouponPolicy.php │ │ │ ├── Contracts │ │ │ │ ├── RuleCheckerContract.php │ │ │ │ └── AdjustmentContract.php │ │ │ ├── Models │ │ │ │ ├── Rule.php │ │ │ │ └── Action.php │ │ │ └── Checkers │ │ │ │ ├── ItemTotalRuleChecker.php │ │ │ │ └── UsageLimitEligibilityChecker.php │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ └── phpunit.xml │ ├── Payment │ │ ├── README.md │ │ ├── .gitignore │ │ ├── config │ │ │ └── payment.php │ │ ├── .travis.yml │ │ ├── composer.json │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ ├── src │ │ │ └── Contracts │ │ │ │ └── PaymentsSubjectContract.php │ │ └── phpunit.xml │ ├── Balance │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ ├── src │ │ │ └── BalanceOrder.php │ │ └── phpunit.xml │ ├── Category │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ ├── src │ │ │ └── Category.php │ │ └── phpunit.xml │ ├── Favorite │ │ ├── .gitignore │ │ ├── config │ │ │ └── favorite.php │ │ ├── .travis.yml │ │ ├── tests │ │ │ ├── Goods.php │ │ │ └── Activity.php │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ ├── src │ │ │ └── Favorite.php │ │ └── phpunit.xml │ ├── Order │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── src │ │ │ └── Repositories │ │ │ │ └── CommentRepository.php │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ └── phpunit.xml │ ├── Product │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── src │ │ │ ├── Models │ │ │ │ ├── Model.php │ │ │ │ ├── AttributeValue.php │ │ │ │ ├── AttributeRelation.php │ │ │ │ ├── GoodsPhoto.php │ │ │ │ ├── Specification.php │ │ │ │ ├── SpecificationValue.php │ │ │ │ ├── Attribute.php │ │ │ │ └── SpecificationRelation.php │ │ │ └── Repositories │ │ │ │ ├── GoodsRepository.php │ │ │ │ └── ProductRepository.php │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ └── phpunit.xml │ ├── Shipping │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── composer.json │ │ ├── scrutinizer.yml │ │ ├── src │ │ │ └── Models │ │ │ │ └── ShippingMethod.php │ │ ├── .php_cs │ │ └── phpunit.xml │ └── User │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── src │ │ └── Repository │ │ │ └── UserRepository.php │ │ ├── scrutinizer.yml │ │ ├── .php_cs │ │ └── phpunit.xml ├── EC.Open.Backend │ ├── Member │ │ ├── .gitignore │ │ ├── resources │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── qc_code.png │ │ │ │ │ └── titlebar.png │ │ │ │ ├── libs │ │ │ │ │ └── element │ │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── element-icons.ttf │ │ │ │ │ │ └── element-icons.woff │ │ │ │ └── template │ │ │ │ │ ├── user_point_import_template.xlsx │ │ │ │ │ └── user_balance_import_template.xlsx │ │ │ └── views │ │ │ │ ├── bootstrap_modal.blade.php │ │ │ │ ├── layouts │ │ │ │ └── bootstrap_modal.blade.php │ │ │ │ ├── auth │ │ │ │ └── includes │ │ │ │ │ ├── search-user.blade.php │ │ │ │ │ └── user-list.blade.php │ │ │ │ └── point │ │ │ │ └── includes │ │ │ │ └── script.blade.php │ │ ├── composer.json │ │ ├── .php_cs │ │ └── src │ │ │ ├── Models │ │ │ └── UserBind.php │ │ │ ├── MemberBackend.php │ │ │ └── Http │ │ │ └── Controllers │ │ │ └── Controller.php │ ├── Store │ │ ├── .gitignore │ │ ├── resources │ │ │ ├── views │ │ │ │ ├── commodity │ │ │ │ │ ├── create_before.blade.php │ │ │ │ │ └── includes │ │ │ │ │ │ └── attribute_template.blade.php │ │ │ │ ├── comments │ │ │ │ │ └── includes │ │ │ │ │ │ ├── goods_list.blade.php │ │ │ │ │ │ └── users_list.blade.php │ │ │ │ ├── layouts │ │ │ │ │ └── bootstrap_modal.blade.php │ │ │ │ ├── orders │ │ │ │ │ └── includes │ │ │ │ │ │ ├── order_discount.blade.php │ │ │ │ │ │ ├── order_points.blade.php │ │ │ │ │ │ ├── order_deliver_message.blade.php │ │ │ │ │ │ ├── order_cost.blade.php │ │ │ │ │ │ ├── order_logs.blade.php │ │ │ │ │ │ ├── order_comment.blade.php │ │ │ │ │ │ └── order_address.blade.php │ │ │ │ ├── micro_page │ │ │ │ │ ├── bootstrap_modal.blade.php │ │ │ │ │ └── compoent │ │ │ │ │ │ └── common │ │ │ │ │ │ └── style.blade.php │ │ │ │ └── shippingmethod │ │ │ │ │ └── script.blade.php │ │ │ └── assets │ │ │ │ ├── images │ │ │ │ ├── close.gif │ │ │ │ ├── open.gif │ │ │ │ ├── coupon-bg.jpg │ │ │ │ ├── no-image.jpg │ │ │ │ ├── tb_icon_0.png │ │ │ │ ├── tb_icon_3.png │ │ │ │ ├── tb_icon_4.png │ │ │ │ ├── travel_1.jpg │ │ │ │ ├── travel_2.jpg │ │ │ │ ├── travel_3.jpg │ │ │ │ ├── alipay_icon.jpg │ │ │ │ ├── cube-new │ │ │ │ │ ├── 1 │ │ │ │ │ │ ├── 1.png │ │ │ │ │ │ └── 1-1.png │ │ │ │ │ ├── 2 │ │ │ │ │ │ ├── 2-1.png │ │ │ │ │ │ ├── 2-2.png │ │ │ │ │ │ ├── 2-3.png │ │ │ │ │ │ ├── 2-4.png │ │ │ │ │ │ ├── 2-5.png │ │ │ │ │ │ └── 2-6.png │ │ │ │ │ ├── 3 │ │ │ │ │ │ ├── 3-1.png │ │ │ │ │ │ ├── 3-2.png │ │ │ │ │ │ ├── 3-3.png │ │ │ │ │ │ ├── 3-4.png │ │ │ │ │ │ ├── 3-5.png │ │ │ │ │ │ └── 3-6.png │ │ │ │ │ └── 4 │ │ │ │ │ │ ├── 4-1.png │ │ │ │ │ │ ├── 4-2.png │ │ │ │ │ │ ├── 4-3.png │ │ │ │ │ │ └── 4-4.png │ │ │ │ ├── tb_icon_0_a.png │ │ │ │ ├── tb_icon_3_a.png │ │ │ │ ├── tb_icon_4_a.png │ │ │ │ ├── mini_pay_icon.jpg │ │ │ │ ├── multi_groupon.png │ │ │ │ ├── vipeak2_r4_c4.png │ │ │ │ ├── wechat_pay_icon.jpg │ │ │ │ ├── default_head_ico.png │ │ │ │ ├── category_left_right.jpg │ │ │ │ ├── category_upper_lower.jpg │ │ │ │ ├── goods_create_before.jpg │ │ │ │ └── multi_groupon_number.png │ │ │ │ ├── template │ │ │ │ ├── 商品注册模板.xls │ │ │ │ ├── 导入库存模板.xls │ │ │ │ ├── bar_code.xlsx │ │ │ │ ├── import_goods.xlsx │ │ │ │ ├── shipping_code.doc │ │ │ │ ├── staffImport.xlsx │ │ │ │ ├── 批量导入单品折扣模板.xlsx │ │ │ │ ├── member_import.xlsx │ │ │ │ ├── role_user_import.xlsx │ │ │ │ ├── order_send_template.xlsx │ │ │ │ └── discount_import_template.xlsx │ │ │ │ └── libs │ │ │ │ ├── loader │ │ │ │ └── loader.gif │ │ │ │ ├── jquery.zclip │ │ │ │ └── ZeroClipboard.swf │ │ │ │ ├── webuploader-0.1.5 │ │ │ │ ├── Uploader.swf │ │ │ │ ├── webuploader.css │ │ │ │ └── README.md │ │ │ │ ├── jquery.el │ │ │ │ └── el.common.js │ │ │ │ ├── ladda │ │ │ │ └── ladda.jquery.min.js │ │ │ │ ├── datepicker │ │ │ │ └── bootstrap-datetimepicker.zh-CN.js │ │ │ │ └── linkchecked │ │ │ │ └── jquery.linkchecked.min.js │ │ ├── src │ │ │ ├── Exceptions │ │ │ │ ├── GeneralException.php │ │ │ │ └── Displayers │ │ │ │ │ └── DisplayerInterface.php │ │ │ ├── Extensions │ │ │ │ ├── bootstrap.php │ │ │ │ └── Tags.php │ │ │ ├── Model │ │ │ │ ├── SpecialType.php │ │ │ │ ├── Relations │ │ │ │ │ └── BelongToUserTrait.php │ │ │ │ ├── Payment.php │ │ │ │ ├── Brand.php │ │ │ │ ├── Category.php │ │ │ │ ├── GoodsCategory.php │ │ │ │ ├── GoodsAttr.php │ │ │ │ ├── AttributeValue.php │ │ │ │ ├── Shipping.php │ │ │ │ ├── Spec.php │ │ │ │ ├── ShippingMethod.php │ │ │ │ ├── SpecsValue.php │ │ │ │ ├── OrderAdjustment.php │ │ │ │ └── GoodsPhoto.php │ │ │ ├── Repositories │ │ │ │ ├── MicroPageRepository.php │ │ │ │ ├── BrandRepository.php │ │ │ │ ├── ModelsRepository.php │ │ │ │ ├── SpecRepository.php │ │ │ │ └── AttributeRepository.php │ │ │ ├── config.php │ │ │ ├── Facades │ │ │ │ ├── GoodsService.php │ │ │ │ ├── OrderService.php │ │ │ │ ├── DiscountService.php │ │ │ │ └── ExcelExportsService.php │ │ │ └── StoreBackend.php │ │ └── composer.json │ └── AlbumBackend │ │ ├── resources │ │ ├── assets │ │ │ ├── img │ │ │ │ ├── nav.png │ │ │ │ ├── column.png │ │ │ │ ├── nav2.png │ │ │ │ └── upload.png │ │ │ ├── el-Upload │ │ │ │ └── img │ │ │ │ │ ├── column.png │ │ │ │ │ └── upload.png │ │ │ └── bootstrap-treeview │ │ │ │ └── bootstrap-treeview.min.css │ │ └── views │ │ │ └── layouts │ │ │ ├── bootstrap_modal.blade.php │ │ │ └── default.blade.php │ │ ├── src │ │ ├── config.php │ │ ├── Models │ │ │ ├── Image.php │ │ │ └── ImageCategory.php │ │ ├── Repository │ │ │ └── ImageRepository.php │ │ └── Listeners │ │ │ └── UploadListeners.php │ │ └── composer.json ├── EC.Open.Core │ ├── .gitignore │ ├── .travis.yml │ ├── src │ │ ├── Models │ │ │ ├── Product.php │ │ │ └── Goods.php │ │ ├── helpers.php │ │ ├── Discount │ │ │ └── Contracts │ │ │ │ └── DiscountItemContract.php │ │ ├── Jobs │ │ │ └── AutoCancelOrder.php │ │ └── Auth │ │ │ └── User.php │ ├── scrutinizer.yml │ ├── .php_cs │ └── phpunit.xml └── EC.Open.Server │ ├── .gitignore │ ├── resources │ └── assets │ │ └── img │ │ ├── c1.png │ │ ├── c2.png │ │ ├── c3.png │ │ ├── c4.png │ │ ├── c5.png │ │ ├── c6.png │ │ └── banner.png │ ├── .travis.yml │ ├── src │ ├── routes │ │ └── web.php │ ├── config.php │ ├── Transformers │ │ ├── CommentTransformer.php │ │ ├── FavoriteTransformer.php │ │ ├── CouponTransformer.php │ │ └── UserTransformer.php │ ├── Http │ │ └── Controllers │ │ │ └── ShippingController.php │ └── Schedule │ │ └── OrderRemindSchedule.php │ ├── scrutinizer.yml │ ├── .php_cs │ ├── composer.json │ └── phpunit.xml ├── config ├── barcode.php ├── ibrand │ ├── payment.php │ ├── setting.php │ ├── favorite.php │ ├── ec-open-api.php │ └── cart.php ├── image.php └── cors.php ├── .gitattributes ├── tests ├── TestCase.php ├── Unit │ └── ExampleTest.php ├── Feature │ └── ExampleTest.php └── CreatesApplication.php ├── resources ├── assets │ ├── sass │ │ └── app.scss │ └── js │ │ ├── components │ │ └── ExampleComponent.vue │ │ └── app.js └── lang │ └── en │ ├── pagination.php │ ├── auth.php │ └── passwords.php ├── .gitignore ├── app ├── Http │ ├── Middleware │ │ ├── EncryptCookies.php │ │ ├── VerifyCsrfToken.php │ │ ├── TrimStrings.php │ │ ├── RedirectIfAuthenticated.php │ │ └── TrustProxies.php │ └── Controllers │ │ ├── Controller.php │ │ └── Auth │ │ └── ForgotPasswordController.php ├── Providers │ ├── BroadcastServiceProvider.php │ ├── AppServiceProvider.php │ ├── AuthServiceProvider.php │ └── EventServiceProvider.php ├── User.php └── Console │ └── Kernel.php ├── routes ├── web.php ├── channels.php ├── api.php └── console.php ├── webpack.mix.js ├── server.php └── .env.example /public/favicon.ico: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /database/.gitignore: -------------------------------------------------------------------------------- 1 | *.sqlite 2 | -------------------------------------------------------------------------------- /bootstrap/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/logs/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | -------------------------------------------------------------------------------- /storage/app/public/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /modules/component/Point/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock -------------------------------------------------------------------------------- /storage/app/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !public/ 3 | !.gitignore 4 | -------------------------------------------------------------------------------- /storage/framework/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/testing/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/views/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /modules/component/Address/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock -------------------------------------------------------------------------------- /modules/component/Advert/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock -------------------------------------------------------------------------------- /modules/component/Discount/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock -------------------------------------------------------------------------------- /modules/component/Point/README.md: -------------------------------------------------------------------------------- 1 | # iBrand Point Component 2 | -------------------------------------------------------------------------------- /storage/framework/sessions/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /modules/component/Payment/README.md: -------------------------------------------------------------------------------- 1 | # iBrand Point Component 2 | -------------------------------------------------------------------------------- /modules/component/Payment/.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | .idea -------------------------------------------------------------------------------- /config/barcode.php: -------------------------------------------------------------------------------- 1 | public_path("/"), 5 | ]; 6 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | .idea -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | .idea -------------------------------------------------------------------------------- /public/img/c1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/public/img/c1.png -------------------------------------------------------------------------------- /public/img/c2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/public/img/c2.png -------------------------------------------------------------------------------- /public/img/c3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/public/img/c3.png -------------------------------------------------------------------------------- /public/img/c4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/public/img/c4.png -------------------------------------------------------------------------------- /public/img/c5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/public/img/c5.png -------------------------------------------------------------------------------- /public/img/c6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/public/img/c6.png -------------------------------------------------------------------------------- /modules/EC.Open.Core/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /public/img/banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/public/img/banner.png -------------------------------------------------------------------------------- /modules/EC.Open.Server/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/Balance/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/Category/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/Favorite/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/Order/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/Product/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/Shipping/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/User/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | tests/codeCoverage 4 | .idea 5 | /.php_cs.cache 6 | -------------------------------------------------------------------------------- /modules/component/Discount/README.md: -------------------------------------------------------------------------------- 1 | # iBrand Discount Component 2 | 3 | Discount Component for iBrand Application. 4 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/commodity/create_before.blade.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /storage/framework/.gitignore: -------------------------------------------------------------------------------- 1 | config.php 2 | routes.php 3 | schedule-* 4 | compiled.php 5 | services.json 6 | events.scanned.php 7 | routes.scanned.php 8 | down 9 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/resources/assets/img/c1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/modules/EC.Open.Server/resources/assets/img/c1.png -------------------------------------------------------------------------------- /modules/EC.Open.Server/resources/assets/img/c2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/modules/EC.Open.Server/resources/assets/img/c2.png -------------------------------------------------------------------------------- /modules/EC.Open.Server/resources/assets/img/c3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/modules/EC.Open.Server/resources/assets/img/c3.png -------------------------------------------------------------------------------- /modules/EC.Open.Server/resources/assets/img/c4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/modules/EC.Open.Server/resources/assets/img/c4.png -------------------------------------------------------------------------------- /modules/EC.Open.Server/resources/assets/img/c5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/modules/EC.Open.Server/resources/assets/img/c5.png -------------------------------------------------------------------------------- /modules/EC.Open.Server/resources/assets/img/c6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/modules/EC.Open.Server/resources/assets/img/c6.png -------------------------------------------------------------------------------- /modules/EC.Open.Server/resources/assets/img/banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guojiangclub/ecommerce-open-api/HEAD/modules/EC.Open.Server/resources/assets/img/banner.png -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Exceptions/GeneralException.php: -------------------------------------------------------------------------------- 1 | '{Y}{m}{d}/', 10 | 'size'=>2, 11 | 'num'=>5, 12 | 'mimes' => ['jpg','jpeg', 'png', 'bmp', 'gif'], 13 | ]; -------------------------------------------------------------------------------- /database/seeds/AdvertTableSeeder.php: -------------------------------------------------------------------------------- 1 | call(UsersTableSeeder::class); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /config/ibrand/payment.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 'debug' => env('PAY_DEBUG', false) 14 | ]; -------------------------------------------------------------------------------- /modules/component/Advert/config/advert.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 'models' => [ 14 | ], 15 | ]; 16 | -------------------------------------------------------------------------------- /modules/component/Favorite/config/favorite.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 14 | 'models' => [] 15 | ]; 16 | -------------------------------------------------------------------------------- /modules/component/Payment/config/payment.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 'debug' => env('PAY_DEBUG', false) 14 | ]; -------------------------------------------------------------------------------- /modules/EC.Open.Core/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Order/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Point/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/User/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Address/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Advert/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Balance/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Category/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Discount/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Favorite/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Payment/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Product/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/component/Shipping/.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | # using major version aliases 5 | 6 | # aliased to a recent 7.x version 7 | - 7.0 8 | # aliased to a recent 7.x version 9 | - 7.1 10 | # aliased to a recent 7.x version 11 | - 7.2 12 | 13 | 14 | before_script: 15 | - composer self-update 16 | - composer install --prefer-source --no-interaction --dev 17 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/comments/includes/goods_list.blade.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/Http/Middleware/EncryptCookies.php: -------------------------------------------------------------------------------- 1 | assertTrue(true); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/src/routes/web.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | Route::get('goods/share/view', 'GoodsController@shareView')->name('goods.share.view'); 13 | -------------------------------------------------------------------------------- /app/Http/Middleware/VerifyCsrfToken.php: -------------------------------------------------------------------------------- 1 | 3 | @foreach($users as $k=>$item) 4 | @if($k==0) 5 | 6 | @endif 7 | 8 | @endforeach 9 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Repositories/MicroPageRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 'table_name' => 'ibrand_system_settings', 14 | 15 | 'cache' => true, 16 | 17 | 'minute' => 120 18 | ]; 19 | -------------------------------------------------------------------------------- /config/ibrand/favorite.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | use iBrand\Component\Product\Models\Goods; 13 | 14 | return [ 15 | 16 | 'models' => ['goods' => Goods::class,] 17 | 18 | ]; 19 | -------------------------------------------------------------------------------- /app/Http/Controllers/Controller.php: -------------------------------------------------------------------------------- 1 | get('/'); 18 | 19 | $response->assertStatus(200); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/AlbumBackend/src/Models/Image.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'images'); 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /modules/EC.Open.Backend/AlbumBackend/src/Repository/ImageRepository.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'images_category'); 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /app/Providers/BroadcastServiceProvider.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 'routeAttributes' => [ 14 | 'middleware' => ['api', 'cors'], 15 | ], 16 | 17 | 'routeAuthAttributes' => [ 18 | 'middleware' => ['auth:api'], 19 | ], 20 | ]; 21 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/src/config.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 'routeAttributes' => [ 14 | 'middleware' => ['api', 'cors'], 15 | ], 16 | 17 | 'routeAuthAttributes' => [ 18 | 'middleware' => ['auth:api'], 19 | ], 20 | ]; 21 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/config.php: -------------------------------------------------------------------------------- 1 | [ 10 | '黑色', 11 | '绿色', 12 | '白色', 13 | '紫色', 14 | '红色', 15 | '黄色', 16 | '蓝色', 17 | '棕色', 18 | '灰色' 19 | ], 20 | 21 | 'page_title' => env('BACKEND_PAGE_TITLE', 'ibrand后台管理系统'), 22 | 23 | 'short_title' => env('BACKEND_PAGE_TITLE', 'ibrand'), 24 | 25 | ]; -------------------------------------------------------------------------------- /modules/EC.Open.Core/src/Models/Product.php: -------------------------------------------------------------------------------- 1 | goods->getCategories(); 19 | } 20 | } -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Facades/GoodsService.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | return [ 13 | 'storage' => \iBrand\Shoppingcart\Storage\DatabaseStorage::class, 14 | 15 | /** @lang guards alias name. */ 16 | 'aliases' => [ 17 | 'web' => 'default', 18 | 'api' => 'default' 19 | ] 20 | ]; 21 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/resources/views/bootstrap_modal.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Facades/ExcelExportsService.php: -------------------------------------------------------------------------------- 1 | 3 | 11 | 12 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/resources/views/layouts/bootstrap_modal.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /app/Providers/AppServiceProvider.php: -------------------------------------------------------------------------------- 1 | 3 | 11 | 12 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/orders/includes/order_discount.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | @foreach($adjustments as $item) 11 | 12 | 13 | 14 | 15 | 16 | @endforeach 17 | 18 |
所享优惠描述优惠金额所用优惠券码
{{$item->label}}{{$item->amount/100}}{!! $item->coupon_code !!}
-------------------------------------------------------------------------------- /modules/EC.Open.Server/src/Transformers/CommentTransformer.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Server\Transformers; 13 | 14 | class CommentTransformer extends BaseTransformer 15 | { 16 | public function transformData($model) 17 | { 18 | return $model->toArray(); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /routes/web.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Server\Transformers; 13 | 14 | class FavoriteTransformer extends BaseTransformer 15 | { 16 | public function transformData($model) 17 | { 18 | return $model->toArray(); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /tests/CreatesApplication.php: -------------------------------------------------------------------------------- 1 | make(Kernel::class)->bootstrap(); 20 | 21 | Hash::setRounds(4); 22 | 23 | return $app; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /routes/channels.php: -------------------------------------------------------------------------------- 1 | id === (int) $id; 16 | }); 17 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/micro_page/bootstrap_modal.blade.php: -------------------------------------------------------------------------------- 1 | 11 | 12 | -------------------------------------------------------------------------------- /config/image.php: -------------------------------------------------------------------------------- 1 | 'gd' 19 | 20 | ]; 21 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/src/Transformers/CouponTransformer.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Server\Transformers; 13 | 14 | class CouponTransformer extends BaseTransformer 15 | { 16 | public function transformData($model) 17 | { 18 | $coupons = $model->toArray(); 19 | 20 | return $coupons; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /modules/component/Shipping/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/shipping", 3 | "description": "iBrand's shipping component", 4 | "keywords": [ 5 | "iBrand", 6 | "shipping", 7 | "component" 8 | ], 9 | "license": "MIT", 10 | "authors": [ 11 | { 12 | "name": "shjchen", 13 | "email": "ibrand.shjchen@foxmail.com" 14 | } 15 | ], 16 | "require": { 17 | "php": ">=7.0" 18 | }, 19 | 20 | "autoload": { 21 | "psr-4": { 22 | "GuoJiangClub\\Component\\Shipping\\": "src/" 23 | } 24 | }, 25 | "minimum-stability": "dev", 26 | "prefer-stable": true 27 | } -------------------------------------------------------------------------------- /routes/api.php: -------------------------------------------------------------------------------- 1 | get('/user', function (Request $request) { 17 | return $request->user(); 18 | }); 19 | -------------------------------------------------------------------------------- /config/cors.php: -------------------------------------------------------------------------------- 1 | false, 16 | 'allowedOrigins' => ['*'], 17 | 'allowedHeaders' => ['*'], 18 | 'allowedMethods' => ['*'], 19 | 'exposedHeaders' => [], 20 | 'maxAge' => 0, 21 | 22 | ]; 23 | -------------------------------------------------------------------------------- /webpack.mix.js: -------------------------------------------------------------------------------- 1 | let mix = require('laravel-mix'); 2 | 3 | /* 4 | |-------------------------------------------------------------------------- 5 | | Mix Asset Management 6 | |-------------------------------------------------------------------------- 7 | | 8 | | Mix provides a clean, fluent API for defining some Webpack build steps 9 | | for your Laravel application. By default, we are compiling the Sass 10 | | file for the application as well as bundling up all the JS files. 11 | | 12 | */ 13 | 14 | mix.js('resources/assets/js/app.js', 'public/js') 15 | .sass('resources/assets/sass/app.scss', 'public/css'); 16 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/Relations/BelongToUserTrait.php: -------------------------------------------------------------------------------- 1 | 11 | */ 12 | trait BelongToUserTrait 13 | { 14 | /** 15 | * Get the page relation. 16 | * 17 | * @return \Illuminate\Database\Eloquent\Relations\HasOneOrMany 18 | */ 19 | public function user() 20 | { 21 | return $this->belongsTo(User::class); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/assets/libs/jquery.el/el.common.js: -------------------------------------------------------------------------------- 1 | /*去掉URL中page参数*/ 2 | function funcUrlDel(name) { 3 | var loca = window.location; 4 | var query = loca.search.substr(1); 5 | if (query.indexOf(name) > -1) { 6 | var obj = {}; 7 | var arr = query.split("&"); 8 | for (var i = 0; i < arr.length; i++) { 9 | arr[i] = arr[i].split("="); 10 | obj[arr[i][0]] = arr[i][1]; 11 | } 12 | delete obj[name]; 13 | return JSON.stringify(obj).replace(/[\"\{\}]/g, "").replace(/\:/g, "=").replace(/\,/g, "&"); 14 | 15 | } 16 | return query; 17 | } -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/orders/includes/order_points.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | @foreach($orderPoint as $item) 9 | 10 | 11 | 12 | 13 | 14 | @endforeach 15 | 16 | @foreach($orderConsumePoint as $item) 17 | 18 | 19 | 20 | 21 | @endforeach 22 | 23 | 24 |
描述积分值
{{$item->note}}{{$item->value}}
{{$item->note}}{{$item->value}}
-------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/Payment.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Backend\Store\Model; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | /** 17 | * Created by PhpStorm. 18 | * User: Administrator 19 | * Date: 2016/10/7 20 | * Time: 16:35. 21 | */ 22 | class Payment extends \GuoJiangClub\Component\Payment\Models\Payment 23 | { 24 | 25 | } 26 | -------------------------------------------------------------------------------- /resources/lang/en/pagination.php: -------------------------------------------------------------------------------- 1 | '« Previous', 17 | 'next' => 'Next »', 18 | 19 | ]; 20 | -------------------------------------------------------------------------------- /routes/console.php: -------------------------------------------------------------------------------- 1 | comment(Inspiring::quote()); 18 | })->describe('Display an inspiring quote'); 19 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/ec-open-member-backend", 3 | "description": "member backend cart for Laravel Application.", 4 | "keywords": [ 5 | "member backend ", 6 | "backend", 7 | "laravel" 8 | ], 9 | "authors": [ 10 | { 11 | "name": "shjchen", 12 | "email": "ibrand.shjchen@foxmail.com" 13 | } 14 | ], 15 | "require": { 16 | 17 | }, 18 | 19 | "autoload": { 20 | "psr-4": { 21 | "GuoJiangClub\\EC\\Open\\Backend\\Member\\": "src/" 22 | } 23 | }, 24 | "license": "MIT" 25 | } 26 | -------------------------------------------------------------------------------- /app/User.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_brand'); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/src/Http/Controllers/ShippingController.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Server\Http\Controllers; 13 | 14 | use GuoJiangClub\Component\Shipping\Models\ShippingMethod; 15 | 16 | class ShippingController extends Controller 17 | { 18 | public function getMethods() 19 | { 20 | return $this->success(ShippingMethod::all()); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/orders/includes/order_deliver_message.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | @if($shipping = $order->shipping) 9 | @foreach($shipping as $item) 10 | 11 | 12 | 13 | 14 | 15 | @endforeach 16 | @endif 17 | 18 |
发货时间物流公司物流单号
{{$item->delivery_time}}{{$item->shippingMethod->name}}{{$item->tracking}}
19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/Category.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'category'); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/AlbumBackend/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/ec-open-album-backend", 3 | "description": "GuoJiangClub EC's open source album backend.", 4 | "keywords": [ 5 | "GuoJiangClub", 6 | "e-commerce", 7 | "open source", 8 | "server", 9 | "backend", 10 | "album" 11 | ], 12 | "license": "MIT", 13 | "authors": [ 14 | { 15 | "name": "shjchen", 16 | "email": "ibrand.shjchen@foxmail.com" 17 | } 18 | ], 19 | "autoload": { 20 | "psr-4": { 21 | "GuoJiangClub\\EC\\Open\\Backend\\Album\\": "src/" 22 | } 23 | }, 24 | "minimum-stability": "dev", 25 | "prefer-stable": true 26 | } -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/assets/libs/ladda/ladda.jquery.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Ladda for jQuery 3 | * http://lab.hakim.se/ladda 4 | * MIT licensed 5 | * 6 | * Copyright (C) 2015 Hakim El Hattab, http://hakim.se 7 | */ 8 | (function(t,e){if(void 0===e)return console.error("jQuery required for Ladda.jQuery");var i=[];e=e.extend(e,{ladda:function(e){"stopAll"===e&&t.stopAll()}}),e.fn=e.extend(e.fn,{ladda:function(n){var r=i.slice.call(arguments,1);return"bind"===n?(r.unshift(e(this).selector),t.bind.apply(t,r)):e(this).each(function(){var i,o=e(this);void 0===n?o.data("ladda",t.create(this)):(i=o.data("ladda"),i[n].apply(i,r))}),this}})})(this.Ladda,this.jQuery); -------------------------------------------------------------------------------- /server.php: -------------------------------------------------------------------------------- 1 | 8 | */ 9 | 10 | $uri = urldecode( 11 | parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH) 12 | ); 13 | 14 | // This file allows us to emulate Apache's "mod_rewrite" functionality from the 15 | // built-in PHP web server. This provides a convenient way to test a Laravel 16 | // application without having installed a "real" web server software here. 17 | if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) { 18 | return false; 19 | } 20 | 21 | require_once __DIR__.'/public/index.php'; 22 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/GoodsCategory.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_category'); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/orders/includes/order_cost.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
应付商品金额实付商品金额应付运费金额实付运费金额促销优惠金额订单总金额
{{$order->items_total}}{{$order->total}}{{$order->payable_freight}}{{$order->real_freight}}{{$order->adjustments_total}}{{$order->total}}
21 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/GoodsAttr.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'goods_attribute_relation'); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /modules/EC.Open.Core/src/helpers.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | if (!function_exists('collect_to_array')) { 13 | /** 14 | * @param $collection 15 | * 16 | * @return array 17 | */ 18 | function collect_to_array($collection) 19 | { 20 | $array = []; 21 | foreach ($collection as $item) { 22 | $array[] = $item; 23 | } 24 | 25 | return $array; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /app/Http/Middleware/RedirectIfAuthenticated.php: -------------------------------------------------------------------------------- 1 | check()) { 21 | return redirect('/home'); 22 | } 23 | 24 | return $next($request); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/AttributeValue.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'goods_attribute_value'); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/shippingmethod/script.blade.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /public/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | 3 | Options -MultiViews -Indexes 4 | 5 | 6 | RewriteEngine On 7 | 8 | # Handle Authorization Header 9 | RewriteCond %{HTTP:Authorization} . 10 | RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 11 | 12 | # Redirect Trailing Slashes If Not A Folder... 13 | RewriteCond %{REQUEST_FILENAME} !-d 14 | RewriteCond %{REQUEST_URI} (.+)/$ 15 | RewriteRule ^ %1 [L,R=301] 16 | 17 | # Handle Front Controller... 18 | RewriteCond %{REQUEST_FILENAME} !-d 19 | RewriteCond %{REQUEST_FILENAME} !-f 20 | RewriteRule ^ index.php [L] 21 | 22 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/AlbumBackend/resources/views/layouts/default.blade.php: -------------------------------------------------------------------------------- 1 |
  • 2 | 3 | 图片管理 4 | 5 | 6 | 15 |
  • -------------------------------------------------------------------------------- /modules/component/Advert/src/Repositories/AdvertItemRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Advert\Repositories; 13 | 14 | use Prettus\Repository\Contracts\RepositoryInterface; 15 | 16 | interface AdvertItemRepository extends RepositoryInterface 17 | { 18 | public function getItemsByCode($code,$associate_with = [],$depth = 0, $status = 1); 19 | 20 | public function create(array $attributes, $parentId = 0); 21 | 22 | } 23 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/src/Transformers/UserTransformer.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Server\Transformers; 13 | 14 | class UserTransformer extends BaseTransformer 15 | { 16 | public static $excludeable = [ 17 | 'password', 18 | 'confirmation_code', 19 | 'remember_token', 20 | ]; 21 | 22 | public function transformData($model) 23 | { 24 | return $model->toArray(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/component/Advert/src/Repositories/AdvertRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Advert\Repositories; 13 | 14 | use Prettus\Repository\Contracts\RepositoryInterface; 15 | 16 | interface AdvertRepository extends RepositoryInterface 17 | { 18 | /** 19 | * get advert by code. 20 | * 21 | * @param $code 22 | * 23 | * @return mixed 24 | */ 25 | public function getByCode($code,$status=1); 26 | } 27 | -------------------------------------------------------------------------------- /resources/assets/js/components/ExampleComponent.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 24 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/assets/libs/webuploader-0.1.5/webuploader.css: -------------------------------------------------------------------------------- 1 | .webuploader-container { 2 | position: relative; 3 | } 4 | .webuploader-element-invisible { 5 | position: absolute !important; 6 | clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ 7 | clip: rect(1px,1px,1px,1px); 8 | } 9 | .webuploader-pick { 10 | position: relative; 11 | display: inline-block; 12 | cursor: pointer; 13 | background: #00b7ee; 14 | padding: 5px 10px; 15 | color: #fff; 16 | text-align: center; 17 | border-radius: 3px; 18 | overflow: hidden; 19 | } 20 | .webuploader-pick-hover { 21 | background: #00a2d4; 22 | } 23 | 24 | .webuploader-pick-disable { 25 | opacity: 0.6; 26 | pointer-events:none; 27 | } 28 | 29 | -------------------------------------------------------------------------------- /resources/lang/en/auth.php: -------------------------------------------------------------------------------- 1 | 'These credentials do not match our records.', 17 | 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', 18 | 19 | ]; 20 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/micro_page/compoent/common/style.blade.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /modules/component/Order/src/Repositories/CommentRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Order\Repositories; 13 | 14 | use Prettus\Repository\Contracts\RepositoryInterface; 15 | 16 | interface CommentRepository extends RepositoryInterface 17 | { 18 | /** 19 | * get recommend comments by item id. 20 | * 21 | * @param $itemId 22 | * 23 | * @return mixed 24 | */ 25 | public function getRecommendByItem($itemId); 26 | } 27 | -------------------------------------------------------------------------------- /app/Providers/AuthServiceProvider.php: -------------------------------------------------------------------------------- 1 | 'App\Policies\ModelPolicy', 17 | ]; 18 | 19 | /** 20 | * Register any authentication / authorization services. 21 | * 22 | * @return void 23 | */ 24 | public function boot() 25 | { 26 | $this->registerPolicies(); 27 | 28 | // 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /modules/component/Discount/src/Repositories/DiscountRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Repositories; 13 | 14 | use Prettus\Repository\Contracts\RepositoryInterface; 15 | 16 | /** 17 | * Interface DiscountRepository. 18 | */ 19 | interface DiscountRepository extends RepositoryInterface 20 | { 21 | /** 22 | * @param int $isCoupon 23 | * 24 | * @return mixed 25 | */ 26 | public function findActive($isCoupon = 0); 27 | } 28 | -------------------------------------------------------------------------------- /modules/component/User/src/Repository/UserRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\User\Repository; 13 | 14 | use Prettus\Repository\Contracts\RepositoryInterface; 15 | 16 | interface UserRepository extends RepositoryInterface 17 | { 18 | /** 19 | * Get a user by the given credentials. 20 | * 21 | * @param array $credentials 22 | * 23 | * @return mixed 24 | */ 25 | public function getUserByCredentials(array $credentials); 26 | } 27 | -------------------------------------------------------------------------------- /resources/assets/js/app.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * First we will load all of this project's JavaScript dependencies which 4 | * includes Vue and other libraries. It is a great starting point when 5 | * building robust, powerful web applications using Vue and Laravel. 6 | */ 7 | 8 | require('./bootstrap'); 9 | 10 | window.Vue = require('vue'); 11 | 12 | /** 13 | * Next, we will create a fresh Vue application instance and attach it to 14 | * the page. Then, you may begin adding components to this application 15 | * or customize the JavaScript scaffolding to fit your unique needs. 16 | */ 17 | 18 | Vue.component('example-component', require('./components/ExampleComponent.vue')); 19 | 20 | const app = new Vue({ 21 | el: '#app' 22 | }); 23 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/orders/includes/order_logs.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | @if(isset($orderLog) && $orderLog->count()>0) 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | @foreach($orderLog as $item) 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | @endforeach 20 | @endif 21 | 22 |
    操作者动作操作时间订单号备注
    {!! \App\User::find($item->user_id)->name!!}{{$item->action}}{{$item->created_at}}{{$item->order_no}}{{$item->note}}
    23 | -------------------------------------------------------------------------------- /modules/component/Discount/src/Policies/CouponPolicy.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Policies; 13 | 14 | use GuoJiangClub\Component\Discount\Models\Coupon; 15 | use Illuminate\Auth\Access\HandlesAuthorization; 16 | use Illuminate\Foundation\Auth\User; 17 | 18 | class CouponPolicy 19 | { 20 | use HandlesAuthorization; 21 | 22 | public function update(User $user, Coupon $coupon) 23 | { 24 | return $user->id === $coupon->user_id; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/component/Product/src/Models/Model.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model as BaseModel; 15 | 16 | class Model extends BaseModel 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | 24 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_model'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/assets/libs/datepicker/bootstrap-datetimepicker.zh-CN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Simplified Chinese translation for bootstrap-datetimepicker 3 | * Yuan Cheung 4 | */ 5 | ;(function($){ 6 | $.fn.datetimepicker.dates['zh-CN'] = { 7 | days: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"], 8 | daysShort: ["周日", "周一", "周二", "周三", "周四", "周五", "周六", "周日"], 9 | daysMin: ["日", "一", "二", "三", "四", "五", "六", "日"], 10 | months: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], 11 | monthsShort: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], 12 | today: "今天", 13 | suffix: [], 14 | meridiem: ["上午", "下午"] 15 | }; 16 | }(jQuery)); 17 | -------------------------------------------------------------------------------- /modules/component/Product/src/Models/AttributeValue.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class AttributeValue extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | 24 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_attribute_value'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/component/Product/src/Models/AttributeRelation.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class AttributeRelation extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | 24 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_attribute_relation'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/Providers/EventServiceProvider.php: -------------------------------------------------------------------------------- 1 | [ 17 | 'App\Listeners\EventListener', 18 | ], 19 | ]; 20 | 21 | /** 22 | * Register any events for your application. 23 | * 24 | * @return void 25 | */ 26 | public function boot() 27 | { 28 | parent::boot(); 29 | 30 | // 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/orders/includes/order_comment.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | @foreach($order->comments as $item) 11 | 12 | 15 | 16 | 17 | 18 | 19 | 20 | @endforeach 21 | 22 | 23 |
    商品名称评价分数评价内容评价图片
    13 |      14 | {{$item->orderItem->item_name}}{{$item->point}} 星{{$item->contents}}{!! $item->CommentPic !!}
    -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/ec-open-backend", 3 | "type": "library", 4 | "description": "GuoJiangClub EC's open source backend.", 5 | "keywords": [ 6 | "GuoJiangClub", 7 | "e-commerce", 8 | "open source", 9 | "server", 10 | "backend" 11 | ], 12 | "authors": [ 13 | { 14 | "name": "shjchen", 15 | "email": "ibrand.shjchen@foxmail.com" 16 | } 17 | ], 18 | "autoload": { 19 | "files": [ 20 | "src/helpers.php" 21 | ], 22 | 23 | "psr-4": { 24 | "GuoJiangClub\\EC\\Open\\Backend\\Store\\": "src/" 25 | } 26 | }, 27 | "license": "MIT", 28 | "minimum-stability": "dev", 29 | "prefer-stable": true 30 | } 31 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/Shipping.php: -------------------------------------------------------------------------------- 1 | setTable($prefix . 'shipping'); 24 | } 25 | 26 | public function shippingMethod() 27 | { 28 | return $this->belongsTo('GuoJiangClub\EC\Open\Backend\Store\Model\ShippingMethod', 'method_id'); 29 | } 30 | 31 | } -------------------------------------------------------------------------------- /modules/component/Product/src/Repositories/GoodsRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Repositories; 13 | 14 | /* 15 | * Created by PhpStorm. 16 | * User: Administrator 17 | * Date: 2016-09-27 18 | * Time: 17:31 19 | */ 20 | use Prettus\Repository\Contracts\RepositoryInterface; 21 | 22 | interface GoodsRepository extends RepositoryInterface 23 | { 24 | /** 25 | * get one goods on sale. 26 | * 27 | * @param $id 28 | * 29 | * @return mixed 30 | */ 31 | public function findOneById($id); 32 | } 33 | -------------------------------------------------------------------------------- /modules/component/Favorite/tests/Goods.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Favorite\Test; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class Goods extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | /** 21 | * Address constructor. 22 | * 23 | * @param array $attributes 24 | */ 25 | public function __construct(array $attributes = []) 26 | { 27 | parent::__construct($attributes); 28 | 29 | $prefix = config('ibrand.app.database.prefix', 'ibrand_'); 30 | 31 | $this->setTable($prefix . 'goods'); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /modules/component/Payment/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/payment", 3 | "type": "library", 4 | "description": "iBrand payment component", 5 | "keywords": [ 6 | "iBrand", 7 | "payment", 8 | "component" 9 | ], 10 | "license": "MIT", 11 | "authors": [ 12 | { 13 | "name": "shjchen", 14 | "email": "ibrand.shjchen@foxmail.com" 15 | } 16 | ], 17 | "require": { 18 | "php": ">=7.0", 19 | "yansongda/pay":"^2.0" 20 | }, 21 | "autoload": { 22 | "psr-4": { 23 | "GuoJiangClub\\Component\\Payment\\": "src/" 24 | } 25 | }, 26 | "require-dev": { 27 | "mockery/mockery": "~1.0", 28 | "phpunit/phpunit": "~6.0", 29 | "orchestra/testbench": "~3.5", 30 | "orchestra/database": "~3.5" 31 | }, 32 | "minimum-stability": "dev", 33 | "prefer-stable": true 34 | } -------------------------------------------------------------------------------- /modules/component/Product/src/Repositories/ProductRepository.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Repositories; 13 | 14 | /* 15 | * Created by PhpStorm. 16 | * User: Administrator 17 | * Date: 2016-09-27 18 | * Time: 17:30 19 | */ 20 | 21 | use Prettus\Repository\Contracts\RepositoryInterface; 22 | 23 | interface ProductRepository extends RepositoryInterface 24 | { 25 | /** 26 | * get one product by sku. 27 | * 28 | * @param $sku 29 | * 30 | * @return mixed 31 | */ 32 | public function findOneBySku($sku); 33 | } 34 | -------------------------------------------------------------------------------- /modules/EC.Open.Core/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/EC.Open.Server/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Advert/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Discount/src/Contracts/RuleCheckerContract.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Contracts; 13 | 14 | /** 15 | * Interface RuleCheckerContract. 16 | */ 17 | interface RuleCheckerContract 18 | { 19 | /** 20 | * @param DiscountSubjectContract $subject 21 | * @param array $configuration 22 | * @param DiscountContract $discount 23 | * 24 | * @return mixed 25 | */ 26 | public function isEligible(DiscountSubjectContract $subject, array $configuration, DiscountContract $discount); 27 | } 28 | -------------------------------------------------------------------------------- /modules/component/Favorite/tests/Activity.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Favorite\Test; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class Activity extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | /** 21 | * Address constructor. 22 | * 23 | * @param array $attributes 24 | */ 25 | public function __construct(array $attributes = []) 26 | { 27 | parent::__construct($attributes); 28 | 29 | $prefix = config('ibrand.app.database.prefix', 'ibrand_'); 30 | 31 | $this->setTable($prefix . 'activitys'); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /modules/component/Order/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Point/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Point/src/Repository/PointRepository.php: -------------------------------------------------------------------------------- 1 | StoreBackendTablesSeeder::class]); 32 | } 33 | } -------------------------------------------------------------------------------- /modules/component/Address/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Balance/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Category/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Discount/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Favorite/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Payment/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Product/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /modules/component/Shipping/scrutinizer.yml: -------------------------------------------------------------------------------- 1 | checks: 2 | php: 3 | code_rating: true 4 | duplication: true 5 | 6 | tools: 7 | # external_code_coverage: true 8 | php_mess_detector: true 9 | php_code_sniffer: true 10 | sensiolabs_security_checker: true 11 | # php_code_coverage: true 12 | php_pdepend: true 13 | php_loc: 14 | enabled: true 15 | excluded_dirs: [vendor, tests] 16 | filter: 17 | excluded_paths: 18 | - 'tests/*' 19 | 20 | build: 21 | dependencies: 22 | before: 23 | - composer install 24 | tests: 25 | override: 26 | - 27 | command: vendor/bin/phpunit --coverage-clover=my-coverage-file 28 | coverage: 29 | file: my-coverage-file 30 | format: clover -------------------------------------------------------------------------------- /app/Http/Middleware/TrustProxies.php: -------------------------------------------------------------------------------- 1 | 'FORWARDED', 24 | Request::HEADER_X_FORWARDED_FOR => 'X_FORWARDED_FOR', 25 | Request::HEADER_X_FORWARDED_HOST => 'X_FORWARDED_HOST', 26 | Request::HEADER_X_FORWARDED_PORT => 'X_FORWARDED_PORT', 27 | Request::HEADER_X_FORWARDED_PROTO => 'X_FORWARDED_PROTO', 28 | ]; 29 | } 30 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/resources/views/auth/includes/search-user.blade.php: -------------------------------------------------------------------------------- 1 |
    2 |
    3 | 4 |
    5 |
    6 |
    7 | 8 |
    9 |
    10 | 11 |
    12 |
    13 |
    14 | 15 |
    16 |
    17 |
    -------------------------------------------------------------------------------- /database/factories/UserFactory.php: -------------------------------------------------------------------------------- 1 | define(App\User::class, function (Faker $faker) { 17 | return [ 18 | 'name' => $faker->name, 19 | 'email' => $faker->unique()->safeEmail, 20 | 'password' => '$2y$10$TKh8H1.PfQx37YgCzwiKb.KjNyWgaHb9cbcoQgdIVFlYg7B77UdFm', // secret 21 | 'remember_token' => str_random(10), 22 | ]; 23 | }); 24 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Extensions/Tags.php: -------------------------------------------------------------------------------- 1 | formatName($this->column); 22 | 23 | $this->script = <<$item) 11 | { 12 | Image::create([ 13 | 'url'=>$item['path'], 14 | 'remote_url'=>$item['url'], 15 | 'name'=>$item['name'], 16 | 'category_id'=>$category_id 17 | ]); 18 | } 19 | } 20 | 21 | public function subscribe($events) 22 | { 23 | $events->listen( 24 | 'image.uploaded', 25 | 'GuoJiangClub\EC\Open\Backend\Album\Listeners\UploadListeners@onUploaded' 26 | ); 27 | } 28 | } -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Repositories/BrandRepository.php: -------------------------------------------------------------------------------- 1 | pushCriteria(app(RequestCriteria::class)); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /modules/EC.Open.Core/src/Models/Goods.php: -------------------------------------------------------------------------------- 1 | products; 19 | foreach ($products as $product) { 20 | $codes[] = $product->getKeyCode(); 21 | } 22 | return $codes; 23 | } 24 | 25 | /** 26 | * get item categories. 27 | * 28 | * @return mixed 29 | */ 30 | public function getCategories() 31 | { 32 | return $this->categories; 33 | } 34 | } -------------------------------------------------------------------------------- /modules/component/Product/src/Models/GoodsPhoto.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class GoodsPhoto extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | 24 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_photo'); 25 | } 26 | 27 | public function goods() 28 | { 29 | return $this->belongsTo('App\Entities\Goods', 'goods_id'); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/resources/views/auth/includes/user-list.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | @foreach ($users as $user) 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 25 | 26 | @endforeach 27 | 28 |
    ID昵称电话积分注册时间操作
    {!! $user->id !!}{!! $user->nick_name !!}{!! $user->mobile !!}{!! $user->available_integral !!}{!! $user->created_at !!} 23 | {!! $user->action_buttons !!} 24 |
    -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Repositories/ModelsRepository.php: -------------------------------------------------------------------------------- 1 | pushCriteria(app(RequestCriteria::class)); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /modules/component/Shipping/src/Models/ShippingMethod.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Shipping\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | /** 17 | * Created by PhpStorm. 18 | * User: Administrator 19 | * Date: 2016/10/29 20 | * Time: 16:01. 21 | */ 22 | class ShippingMethod extends Model 23 | { 24 | protected $guarded = ['id']; 25 | 26 | public function __construct(array $attributes = []) 27 | { 28 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'shipping_method'); 29 | 30 | parent::__construct($attributes); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/commodity/includes/attribute_template.blade.php: -------------------------------------------------------------------------------- 1 | 2 | {{--@foreach($model->attribute as $item)--}} 3 | @foreach($attribute as $item) 4 | 5 | 6 | 18 | 19 | @endforeach 20 |
    {{$item->name}} 7 | @if($item->type == 1) 8 | 14 | @else 15 | 16 | @endif 17 |
    21 | -------------------------------------------------------------------------------- /modules/component/User/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/EC.Open.Core/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Address/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Advert/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Balance/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Discount/src/Models/Rule.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class Rule extends Model 17 | { 18 | public $timestamps = false; 19 | 20 | protected $guarded = ['id']; 21 | 22 | /** 23 | * Address constructor. 24 | * 25 | * @param array $attributes 26 | */ 27 | public function __construct(array $attributes = []) 28 | { 29 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'discount_rule'); 30 | 31 | parent::__construct($attributes); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /modules/component/Order/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Payment/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Point/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Product/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Product/src/Models/Specification.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class Specification extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | 24 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_spec'); 25 | } 26 | 27 | public function values() 28 | { 29 | return $this->hasMany(SpecificationValue::class, 'spec_id', 'id'); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /modules/component/Product/src/Models/SpecificationValue.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class SpecificationValue extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_spec_value'); 24 | } 25 | 26 | public function spec() 27 | { 28 | return $this->belongsTo(Specification::class, 'spec_id'); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /database/migrations/2014_10_12_100000_create_password_resets_table.php: -------------------------------------------------------------------------------- 1 | string('email')->index(); 18 | $table->string('token'); 19 | $table->timestamp('created_at')->nullable(); 20 | }); 21 | } 22 | 23 | /** 24 | * Reverse the migrations. 25 | * 26 | * @return void 27 | */ 28 | public function down() 29 | { 30 | Schema::dropIfExists('password_resets'); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/assets/libs/webuploader-0.1.5/README.md: -------------------------------------------------------------------------------- 1 | 目录说明 2 | ======================== 3 | 4 | ```bash 5 | ├── Uploader.swf # SWF文件,当使用Flash运行时需要引入。 6 | ├ 7 | ├── webuploader.js # 完全版本。 8 | ├── webuploader.min.js # min版本 9 | ├ 10 | ├── webuploader.flashonly.js # 只有Flash实现的版本。 11 | ├── webuploader.flashonly.min.js # min版本 12 | ├ 13 | ├── webuploader.html5only.js # 只有Html5实现的版本。 14 | ├── webuploader.html5only.min.js # min版本 15 | ├ 16 | ├── webuploader.noimage.js # 去除图片处理的版本,包括HTML5和FLASH. 17 | ├── webuploader.noimage.min.js # min版本 18 | ├ 19 | ├── webuploader.custom.js # 自定义打包方案,请查看 Gruntfile.js,满足移动端使用。 20 | └── webuploader.custom.min.js # min版本 21 | ``` 22 | 23 | ## 示例 24 | 25 | 请把整个 Git 包下载下来放在 php 服务器下,因为默认提供的文件接受是用 php 编写的,打开 examples 页面便能查看示例效果。 -------------------------------------------------------------------------------- /modules/EC.Open.Server/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Category/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Discount/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Discount/src/Models/Action.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class Action extends Model 17 | { 18 | public $timestamps = false; 19 | 20 | protected $guarded = ['id']; 21 | 22 | /** 23 | * Address constructor. 24 | * 25 | * @param array $attributes 26 | */ 27 | public function __construct(array $attributes = []) 28 | { 29 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'discount_action'); 30 | 31 | parent::__construct($attributes); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /modules/component/Discount/tests/Repositories/DiscountRepositoryTest.php: -------------------------------------------------------------------------------- 1 | app->make(DiscountRepository::class); 18 | 19 | $discounts = $repository->findActive(); 20 | 21 | $this->assertEquals(3,count($discounts)); 22 | 23 | 24 | $repository =$this->app->make(DiscountRepository::class); 25 | 26 | $discounts = $repository->findActive(1); 27 | 28 | $this->assertEquals(4,count($discounts)); 29 | } 30 | } -------------------------------------------------------------------------------- /modules/component/Favorite/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/component/Shipping/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/.php_cs: -------------------------------------------------------------------------------- 1 | 6 | 7 | For the full copyright and license information, please view the LICENSE 8 | file that was distributed with this source code. 9 | EOF; 10 | return PhpCsFixer\Config::create() 11 | ->setRiskyAllowed(true) 12 | ->setRules(array( 13 | '@Symfony' => true, 14 | 'header_comment' => array('header' => $header), 15 | 'array_syntax' => array('syntax' => 'short'), 16 | 'ordered_imports' => true, 17 | 'no_useless_else' => true, 18 | 'no_useless_return' => true, 19 | 'php_unit_construct' => true, 20 | 'php_unit_strict' => true, 21 | )) 22 | ->setFinder( 23 | PhpCsFixer\Finder::create() 24 | ->exclude('vendor') 25 | ->in(__DIR__) 26 | ) 27 | ; -------------------------------------------------------------------------------- /resources/lang/en/passwords.php: -------------------------------------------------------------------------------- 1 | 'Passwords must be at least six characters and match the confirmation.', 17 | 'reset' => 'Your password has been reset!', 18 | 'sent' => 'We have e-mailed your password reset link!', 19 | 'token' => 'This password reset token is invalid.', 20 | 'user' => "We can't find a user with that e-mail address.", 21 | 22 | ]; 23 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Exceptions/Displayers/DisplayerInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Backend\Store\Exceptions\Displayers; 13 | 14 | use Exception; 15 | 16 | /** 17 | * This is the displayer interface. 18 | * 19 | * @author Graham Campbell 20 | */ 21 | interface DisplayerInterface 22 | { 23 | /** 24 | * Get the content associated with the given exception. 25 | * 26 | * @param \Exception $exception 27 | * @param int $code 28 | * 29 | * @return string|array 30 | */ 31 | public function display(Exception $exception, $code); 32 | } 33 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/Spec.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_spec'); 19 | } 20 | 21 | public function getTypeNameAttribute() 22 | { 23 | return $this->attributes['type'] == 1?'文字':'图片'; 24 | } 25 | 26 | public function specValue() 27 | { 28 | return $this->hasMany(SpecsValue::class,'spec_id'); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /modules/component/Address/src/Address.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Address; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | /** 17 | * Class Address. 18 | */ 19 | class Address extends Model 20 | { 21 | /** 22 | * @var array 23 | */ 24 | protected $guarded = ['id']; 25 | 26 | /** 27 | * Address constructor. 28 | * @param array $attributes 29 | */ 30 | public function __construct(array $attributes = []) 31 | { 32 | parent::__construct($attributes); 33 | 34 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'addresses'); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /modules/component/Balance/src/BalanceOrder.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Balance; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class BalanceOrder extends Model 17 | { 18 | const STATUS_NEW = 0; //待支付 19 | 20 | const STATUS_PAY = 1; //已支付 21 | 22 | const STATUS_REFUND = 2; //已退款 23 | 24 | protected $guarded = ['id']; 25 | 26 | public function __construct(array $attributes = []) 27 | { 28 | parent::__construct($attributes); 29 | 30 | $prefix = config('ibrand.app.database.prefix', 'ibrand_'); 31 | 32 | $this->setTable($prefix.'balance_order'); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/src/Models/UserBind.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Backend\Member\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | use Prettus\Repository\Contracts\Transformable; 16 | use Prettus\Repository\Traits\TransformableTrait; 17 | 18 | class UserBind extends Model implements Transformable 19 | { 20 | use TransformableTrait; 21 | 22 | protected $guarded = ['id']; 23 | 24 | public function __construct(array $attributes = []) 25 | { 26 | parent::__construct($attributes); 27 | 28 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'user_bind'); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /modules/component/Discount/src/Checkers/ItemTotalRuleChecker.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Checkers; 13 | 14 | use GuoJiangClub\Component\Discount\Contracts\DiscountContract; 15 | use GuoJiangClub\Component\Discount\Contracts\DiscountSubjectContract; 16 | use GuoJiangClub\Component\Discount\Contracts\RuleCheckerContract; 17 | 18 | class ItemTotalRuleChecker implements RuleCheckerContract 19 | { 20 | const TYPE = 'item_total'; 21 | 22 | public function isEligible(DiscountSubjectContract $subject, array $configuration, DiscountContract $discount) 23 | { 24 | return $subject->getCurrentTotal() >= $configuration['amount']; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /database/migrations/2014_10_12_000000_create_users_table.php: -------------------------------------------------------------------------------- 1 | increments('id'); 18 | $table->string('name'); 19 | $table->string('email')->unique(); 20 | $table->string('password'); 21 | $table->rememberToken(); 22 | $table->timestamps(); 23 | }); 24 | } 25 | 26 | /** 27 | * Reverse the migrations. 28 | * 29 | * @return void 30 | */ 31 | public function down() 32 | { 33 | Schema::dropIfExists('users'); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /modules/component/Discount/src/Contracts/AdjustmentContract.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Contracts; 13 | 14 | /** 15 | * Interface AdjustmentContract. 16 | */ 17 | interface AdjustmentContract 18 | { 19 | const ORDER_DISCOUNT_ADJUSTMENT = 'order_discount'; 20 | 21 | const ORDER_ITEM_DISCOUNT_ADJUSTMENT = 'order_item_discount'; 22 | 23 | /** 24 | * create a adjustment. 25 | * 26 | * @param $type 27 | * @param $label 28 | * @param $amount 29 | * @param $originId 30 | * @param $originType 31 | * 32 | * @return mixed 33 | */ 34 | public function createNew($type, $label, $amount, $originId, $originType); 35 | } 36 | -------------------------------------------------------------------------------- /modules/component/Payment/src/Contracts/PaymentsSubjectContract.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Payment\Contracts; 13 | 14 | use GuoJiangClub\Component\Payment\Models\Payment; 15 | 16 | /** 17 | * Created by PhpStorm. 18 | * User: Administrator 19 | * Date: 2016/10/7 20 | * Time: 16:40. 21 | */ 22 | interface PaymentsSubjectContract 23 | { 24 | /** 25 | * add payment item. 26 | * 27 | * @param Payment $payment 28 | * 29 | * @return mixed 30 | */ 31 | public function addPayment(Payment $payment); 32 | 33 | /** 34 | * get payment subject. 35 | * 36 | * @return mixed 37 | */ 38 | public function getSubject(); 39 | } 40 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/src/Schedule/OrderRemindSchedule.php: -------------------------------------------------------------------------------- 1 | schedule->call(function () { 14 | $orders = Order::where('status', 1)->where('pay_status', 0)->where('is_remind', 0)->where('type', '!=', 7)->get(); 15 | if (count($orders)) { 16 | foreach ($orders as $order) { 17 | $order_created_at = strtotime($order->created_at); 18 | $order_close_time = app('system_setting')->getSetting('order_auto_cancel_time'); 19 | if ($order_close_time > 15 && (time() - $order_created_at) >= ($order_close_time - 15) * 60) { 20 | $order->update(['is_remind' => 1]); 21 | } 22 | } 23 | } 24 | })->everyMinute(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Repositories/SpecRepository.php: -------------------------------------------------------------------------------- 1 | pushCriteria(app(RequestCriteria::class)); 33 | } 34 | 35 | public function getSpecColorList() 36 | { 37 | return $this->find(2); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /modules/component/Favorite/src/Favorite.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Favorite; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class Favorite extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | /** 21 | * Address constructor. 22 | * 23 | * @param array $attributes 24 | */ 25 | public function __construct(array $attributes = []) 26 | { 27 | parent::__construct($attributes); 28 | 29 | $prefix = config('ibrand.app.database.prefix', 'ibrand_'); 30 | 31 | $this->setTable($prefix.'favorite'); 32 | } 33 | 34 | public function favoriteable() 35 | { 36 | return $this->morphTo(); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /modules/component/Advert/src/Models/MicroPageAdvert.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Advert\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class MicroPageAdvert extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | /** 21 | * Address constructor. 22 | * 23 | * @param array $attributes 24 | */ 25 | public function __construct(array $attributes = []) 26 | { 27 | 28 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'micro_page_advert'); 29 | 30 | parent::__construct($attributes); 31 | } 32 | 33 | public function advert(){ 34 | 35 | return $this->belongsTo(Advert::class,'advert_id'); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/ShippingMethod.php: -------------------------------------------------------------------------------- 1 | setTable($prefix . 'shipping_method'); 22 | } 23 | 24 | public function scopeCheckShipping($query, $code, $name, $id = 0) 25 | { 26 | return $query->where(function ($query) use ($code, $name) { 27 | $query->where('code', $code)->orWhere('name', $name); 28 | })->where('id', '<>', $id); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/SpecsValue.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_spec_value'); 19 | } 20 | 21 | public function belongToSpec() 22 | { 23 | return $this->belongsTo(Spec::class,'spec_id'); 24 | } 25 | 26 | public function scopeJudge($query, $name, $spec_id, $id = 0) 27 | { 28 | return $query->where('name', $name)->where('spec_id', $spec_id)->where('id', '<>' ,$id)->get(); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /modules/component/Address/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/address", 3 | "type": "library", 4 | "description": "ibrand address component", 5 | "keywords": [ 6 | "iBrand", 7 | "Address", 8 | "component" 9 | ], 10 | "license": "MIT", 11 | "authors": [ 12 | { 13 | "name": "shjchen", 14 | "email": "ibrand.shjchen@foxmail.com" 15 | } 16 | ], 17 | "require": { 18 | "php": ">=7.0", 19 | "prettus/l5-repository": "^2.1" 20 | }, 21 | "require-dev": { 22 | "mockery/mockery": "~1.0", 23 | "phpunit/phpunit": "~6.0", 24 | "orchestra/testbench": "~3.5", 25 | "orchestra/database": "~3.5" 26 | }, 27 | "autoload": { 28 | "psr-4": { 29 | "GuoJiangClub\\Component\\Address\\": "src/" 30 | } 31 | }, 32 | "extra": { 33 | "laravel": { 34 | "providers": [ 35 | "GuoJiangClub\\Component\\Address\\ServiceProvider" 36 | ] 37 | } 38 | }, 39 | "minimum-stability": "dev", 40 | "prefer-stable": true 41 | } -------------------------------------------------------------------------------- /modules/component/Advert/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/advert", 3 | "type": "library", 4 | "description": "ibrand advert component", 5 | "keywords": [ 6 | "iBrand", 7 | "advert", 8 | "component" 9 | ], 10 | "license": "MIT", 11 | "authors": [ 12 | { 13 | "name": "shjchen", 14 | "email": "ibrand.shjchen@foxmail.com" 15 | } 16 | ], 17 | "require": { 18 | "php": ">=7.0", 19 | "prettus/l5-repository": "^2.1" 20 | }, 21 | "require-dev": { 22 | "mockery/mockery": "~1.0", 23 | "phpunit/phpunit": "~6.0", 24 | "orchestra/testbench": "~3.5", 25 | "orchestra/database": "~3.5" 26 | }, 27 | "autoload": { 28 | "psr-4": { 29 | "GuoJiangClub\\Component\\Advert\\": "src/" 30 | } 31 | }, 32 | "extra": { 33 | "laravel": { 34 | "providers": [ 35 | "GuoJiangClub\\Component\\Advert\\AdvertServiceProvider" 36 | ] 37 | } 38 | }, 39 | "minimum-stability": "dev", 40 | "prefer-stable": true 41 | } -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/src/MemberBackend.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Backend\Member; 13 | 14 | use GuoJiangClub\EC\Open\Backend\Member\Seeds\MemberBackendTablesSeeder; 15 | use Encore\Admin\Admin; 16 | use Encore\Admin\Extension; 17 | use Illuminate\Support\Facades\Artisan; 18 | 19 | class MemberBackend extends Extension 20 | { 21 | /** 22 | * Bootstrap this package. 23 | */ 24 | public static function boot() 25 | { 26 | Admin::extend('ibrand-member-backend', __CLASS__); 27 | } 28 | 29 | /** 30 | * {@inheritdoc} 31 | */ 32 | public static function import() 33 | { 34 | Artisan::call('db:seed', ['--class' => MemberBackendTablesSeeder::class]); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/OrderAdjustment.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'order_adjustment'); 19 | } 20 | 21 | public function discount() 22 | { 23 | return $this->hasOne('ElementVip\Component\Discount\Models\Discount', 'id', 'origin_id'); 24 | } 25 | 26 | public function order() 27 | { 28 | return $this->hasOne('GuoJiangClub\EC\Open\Backend\Store\Model\Order', 'id', 'order_id'); 29 | } 30 | 31 | 32 | } 33 | -------------------------------------------------------------------------------- /modules/EC.Open.Core/src/Discount/Contracts/DiscountItemContract.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Core\Discount\Contracts; 13 | 14 | interface DiscountItemContract 15 | { 16 | /** 17 | * get item key code. 18 | * 19 | * @return int 20 | */ 21 | public function getKeyCode($type = 'sku'); 22 | 23 | /** 24 | * get item relation key codes. 25 | * 26 | * @return mixed 27 | */ 28 | public function getChildKeyCodes(); 29 | 30 | /** 31 | * get item type. 32 | * 33 | * @return string 34 | */ 35 | public function getItemType(); 36 | 37 | /** 38 | * get item categories. 39 | * 40 | * @return mixed 41 | */ 42 | public function getCategories(); 43 | } 44 | -------------------------------------------------------------------------------- /modules/component/Discount/src/Checkers/UsageLimitEligibilityChecker.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Discount\Checkers; 13 | 14 | use GuoJiangClub\Component\Discount\Contracts\DiscountContract; 15 | use GuoJiangClub\Component\Discount\Models\Discount; 16 | 17 | class UsageLimitEligibilityChecker 18 | { 19 | /** 20 | * @param Discount $discount 21 | * 22 | * @return bool 23 | */ 24 | public function isEligible(DiscountContract $discount) 25 | { 26 | if (null === $usageLimit = $discount->getUsageLimit()) { 27 | return true; 28 | } 29 | 30 | if ($discount->getUsed() < $usageLimit) { 31 | return true; 32 | } 33 | 34 | return false; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | APP_NAME=Laravel 2 | APP_ENV=local 3 | APP_KEY= 4 | APP_DEBUG=true 5 | APP_LOG_LEVEL=debug 6 | APP_URL=http://localhost 7 | SECURE=false 8 | 9 | DB_CONNECTION=mysql 10 | DB_HOST=127.0.0.1 11 | DB_PORT=3306 12 | DB_DATABASE=homestead 13 | DB_USERNAME=homestead 14 | DB_PASSWORD=secret 15 | 16 | BROADCAST_DRIVER=log 17 | CACHE_DRIVER=file 18 | SESSION_DRIVER=file 19 | SESSION_LIFETIME=120 20 | QUEUE_DRIVER=sync 21 | 22 | REDIS_HOST=127.0.0.1 23 | REDIS_PASSWORD=null 24 | REDIS_PORT=6379 25 | 26 | MAIL_DRIVER=smtp 27 | MAIL_HOST=smtp.mailtrap.io 28 | MAIL_PORT=2525 29 | MAIL_USERNAME=null 30 | MAIL_PASSWORD=null 31 | MAIL_ENCRYPTION=null 32 | 33 | PUSHER_APP_ID= 34 | PUSHER_APP_KEY= 35 | PUSHER_APP_SECRET= 36 | PUSHER_APP_CLUSTER=mt1 37 | 38 | API_STANDARDS_TREE=vnd 39 | API_PREFIX=api 40 | API_VERSION=v1 41 | API_DEBUG=true 42 | 43 | PAY_DEBUG=true 44 | 45 | 46 | WECHAT_PAYMENT_MINIAPP_ID= 47 | WECHAT_PAYMENT_MCH_ID= 48 | WECHAT_PAYMENT_KEY= 49 | 50 | WECHAT_MINI_PROGRAM_APPID= 51 | WECHAT_MINI_PROGRAM_SECRET= -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/ForgotPasswordController.php: -------------------------------------------------------------------------------- 1 | middleware('guest'); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/resources/views/point/includes/script.blade.php: -------------------------------------------------------------------------------- 1 | {{--@section('before-scripts-end')--}} 2 | {!! Html::script(env("APP_URL").'/assets/backend/libs/datepicker/bootstrap-datetimepicker.js') !!} 3 | {!! Html::script(env("APP_URL").'/assets/backend/libs/datepicker/bootstrap-datetimepicker.zh-CN.js') !!} 4 | 25 | {{--@stop--}} -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Model/GoodsPhoto.php: -------------------------------------------------------------------------------- 1 | setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_photo'); 19 | } 20 | 21 | public function goods(){ 22 | return $this->belongsTo('GuoJiangClub\EC\Open\Backend\Store\Model\Goods','goods_id'); 23 | } 24 | 25 | public function getCheckedStatusAttribute() 26 | { 27 | if($this->attributes['is_default'] == 1) 28 | { 29 | return 'checked'; 30 | } 31 | return ''; 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /modules/EC.Open.Core/src/Jobs/AutoCancelOrder.php: -------------------------------------------------------------------------------- 1 | order = $order; 27 | } 28 | 29 | /** 30 | * Execute the job. 31 | * 32 | * @return void 33 | */ 34 | public function handle(OrderProcessor $orderProcessor) 35 | { 36 | $orderProcessor->cancel($this->order, '超时未付款自动取消'); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/views/orders/includes/order_address.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
    收货人电话收货地址收货时间
    {{$order->accept_name}} {{$order->mobile}} {{$order->address_name}} {{$order->address}}{{$order->accept_time ? $order->accept_time:'/'}}
    18 | 19 | @if($order->pay_status==1 AND $order->distribution_status==0 AND !session('admin_check_supplier')) 20 | 修改收货地址 24 | @endif 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/src/Repositories/AttributeRepository.php: -------------------------------------------------------------------------------- 1 | pushCriteria(app(RequestCriteria::class)); 33 | } 34 | 35 | public function getAttrDataByModelID($model_id) 36 | { 37 | return $this->findByField('model_id', $model_id); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ibrand/ec-open-server", 3 | "type": "library", 4 | "description": "GuoJiangClub EC's open source server.", 5 | "keywords": [ 6 | "GuoJiangClub", 7 | "e-commerce", 8 | "open source", 9 | "server" 10 | ], 11 | "license": "MIT", 12 | "authors": [ 13 | { 14 | "name": "shjchen", 15 | "email": "ibrand.shjchen@foxmail.com" 16 | } 17 | ], 18 | "require": { 19 | "php": ">=7.0" 20 | }, 21 | "require-dev": { 22 | "phpunit/phpunit": "~6.0", 23 | "orchestra/testbench": "~3.5", 24 | "orchestra/database": "~3.5" 25 | }, 26 | "autoload": { 27 | "psr-4": { 28 | "GuoJiangClub\\EC\\Open\\Server\\": "src/" 29 | } 30 | }, 31 | "autoload-dev": { 32 | "psr-4": { 33 | "GuoJiangClub\\EC\\Open\\Server\\Test\\": "tests" 34 | } 35 | }, 36 | "extra": { 37 | "laravel": { 38 | "providers": [ 39 | ] 40 | } 41 | }, 42 | "minimum-stability": "dev", 43 | "prefer-stable": true 44 | } 45 | -------------------------------------------------------------------------------- /modules/component/Category/src/Category.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Category; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | use Kalnoy\Nestedset\NodeTrait; 16 | 17 | class Category extends Model 18 | { 19 | use NodeTrait; 20 | 21 | const STATUS_OPEN = 1; // 可用状态 22 | 23 | const STATUS_CLOSE = 0; // 关闭状态 24 | 25 | /** 26 | * @var array 27 | */ 28 | 29 | protected $guarded = ['id']; 30 | 31 | /** 32 | * Address constructor. 33 | * @param array $attributes 34 | */ 35 | public function __construct(array $attributes = []) 36 | { 37 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_') . 'category'); 38 | 39 | parent::__construct($attributes); 40 | 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Member/src/Http/Controllers/Controller.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Backend\Member\Http\Controllers; 13 | 14 | use Illuminate\Foundation\Auth\Access\AuthorizesRequests; 15 | use Illuminate\Foundation\Bus\DispatchesJobs; 16 | use Illuminate\Foundation\Validation\ValidatesRequests; 17 | use Illuminate\Routing\Controller as BaseController; 18 | 19 | abstract class Controller extends BaseController 20 | { 21 | use AuthorizesRequests, DispatchesJobs, ValidatesRequests; 22 | 23 | public function ajaxJson($status = true, $data = [], $code = 200, $message = '') 24 | { 25 | return response()->json( 26 | ['status' => $status, 'code' => $code, 'message' => $message, 'data' => $data] 27 | ); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /modules/component/Product/src/Models/Attribute.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class Attribute extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_attribute'); 24 | } 25 | 26 | public function values() 27 | { 28 | return $this->hasMany(AttributeValue::class); 29 | } 30 | 31 | public function scopeOfModelIds($query, $modelIds) 32 | { 33 | return $query->with('values')->whereIn('model_id', $modelIds)->where('is_search', 1); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /modules/component/Product/src/Models/SpecificationRelation.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Product\Models; 13 | 14 | use Illuminate\Database\Eloquent\Model; 15 | 16 | class SpecificationRelation extends Model 17 | { 18 | protected $guarded = ['id']; 19 | 20 | public function __construct(array $attributes = []) 21 | { 22 | parent::__construct($attributes); 23 | 24 | $this->setTable(config('ibrand.app.database.prefix', 'ibrand_').'goods_spec_relation'); 25 | } 26 | 27 | public function spec() 28 | { 29 | return $this->belongsTo(Specification::class, 'spec_id'); 30 | } 31 | 32 | public function specValue() 33 | { 34 | return $this->belongsTo(SpecificationValue::class, 'spec_value_id'); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /app/Console/Kernel.php: -------------------------------------------------------------------------------- 1 | command('inspire') 28 | // ->hourly(); 29 | } 30 | 31 | /** 32 | * Register the commands for the application. 33 | * 34 | * @return void 35 | */ 36 | protected function commands() 37 | { 38 | $this->load(__DIR__.'/Commands'); 39 | 40 | require base_path('routes/console.php'); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /modules/EC.Open.Backend/Store/resources/assets/libs/linkchecked/jquery.linkchecked.min.js: -------------------------------------------------------------------------------- 1 | /* jQuery LinkChecked - v0.1.1 - 2014-09-25; Copyright (c) 2014 MouLingtao; Licensed MIT */ 2 | (function(a){a.fn.linkchecked=function(d,c,b){a.linkchecked(d,c,b,a(this))};a.linkchecked=function(d,c,h,j){c=c?c:"linkchecked-name";h=h?h:"linkchecked-parent";j=j?j:a(document);var i=j.find("input["+c+"^="+d+"]:checkbox");i.each(function(){var m=a(this);var k=m.attr(c);var l=k.substr(0,k.lastIndexOf("_"));a(this).attr(h,l)});i.on("change",function(){b(a(this));g(a(this))});var f={};i.filter(":checked").each(function(){var k=a(this);var l=k.attr(h);if(!f[l]){f[l]=true;g(k)}});function b(m){var n=m.is(":checked");var l=m.attr(c);var k=i.filter("["+h+"^="+l+"]");if(n){k.prop("checked","true")}else{k.removeAttr("checked")}}function g(l){var n=l.attr(h);if(!n){return}var m=i.filter("["+c+"="+n+"]:first");var k=i.filter("["+h+"="+n+"]");if(e(k)){m.prop("checked","true")}else{m.removeAttr("checked")}g(m)}function e(k){var l=true;k.each(function(){return l=this.checked});return l}}})(jQuery); -------------------------------------------------------------------------------- /modules/EC.Open.Core/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/EC.Open.Core/src/Auth/User.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\EC\Open\Core\Auth; 13 | 14 | use GuoJiangClub\Component\User\Models\User as BaseUser; 15 | use Laravel\Passport\HasApiTokens; 16 | 17 | class User extends BaseUser 18 | { 19 | use HasApiTokens; 20 | 21 | /** 22 | * @param $value 23 | * 24 | * @return \Illuminate\Contracts\Routing\UrlGenerator|mixed|string 25 | */ 26 | public function getAvatarAttribute($value) 27 | { 28 | if (!empty($value)) { 29 | if (str_contains($value, 'http://wx.qlogo.cn')) { 30 | return str_replace('http://wx.qlogo.cn', 'https://wx.qlogo.cn', $value); 31 | } 32 | 33 | return url($value); 34 | } 35 | 36 | return $value; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /modules/EC.Open.Server/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Address/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Advert/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Balance/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Order/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Payment/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Point/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Product/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/User/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Address/src/RepositoryContract.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace GuoJiangClub\Component\Address; 13 | 14 | use Prettus\Repository\Contracts\RepositoryInterface; 15 | 16 | /** 17 | * Interface RepositoryContract. 18 | */ 19 | interface RepositoryContract extends RepositoryInterface 20 | { 21 | /** 22 | * @param $userId 23 | * 24 | * @return mixed 25 | */ 26 | public function getByUser($userId); 27 | 28 | /** 29 | * @param $userId 30 | * 31 | * @return mixed 32 | */ 33 | public function getDefaultByUser($userId); 34 | 35 | /** 36 | * @param array $attributes 37 | * @param $id 38 | * @param $userId 39 | * 40 | * @return mixed 41 | */ 42 | public function updateByUser(array $attributes, $id, $userId); 43 | } 44 | -------------------------------------------------------------------------------- /modules/component/Category/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Discount/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Favorite/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/component/Shipping/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | vendor 15 | 16 | 17 | 18 | 19 | src/ 20 | 21 | vendor/ 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | --------------------------------------------------------------------------------