├── .DS_Store ├── .gitattributes ├── README.md ├── pom.xml └── src └── main ├── java └── ltd │ └── mall │ ├── MallApplication.java │ ├── common │ ├── Constants.java │ ├── IndexConfigTypeEnum.java │ ├── MallCategoryLevelEnum.java │ ├── MallException.java │ ├── MallOrderStatusEnum.java │ ├── PayStatusEnum.java │ ├── PayTypeEnum.java │ └── ServiceResultEnum.java │ ├── config │ └── MallWebMvcConfigurer.java │ ├── controller │ ├── admin │ │ ├── AdminController.java │ │ ├── MallCarouselController.java │ │ ├── MallGoodsCategoryController.java │ │ ├── MallGoodsController.java │ │ ├── MallGoodsIndexConfigController.java │ │ ├── MallOrderController.java │ │ └── MallUserController.java │ ├── common │ │ ├── CommonController.java │ │ ├── ErrorPageController.java │ │ ├── MallExceptionHandler.java │ │ └── UploadController.java │ ├── mall │ │ ├── GoodsController.java │ │ ├── IndexController.java │ │ ├── OrderController.java │ │ ├── PersonalController.java │ │ └── ShoppingCartController.java │ └── vo │ │ ├── MallGoodsDetailVO.java │ │ ├── MallIndexCarouselVO.java │ │ ├── MallIndexCategoryVO.java │ │ ├── MallIndexConfigGoodsVO.java │ │ ├── MallOrderDetailVO.java │ │ ├── MallOrderItemVO.java │ │ ├── MallOrderListVO.java │ │ ├── MallSearchGoodsVO.java │ │ ├── MallShoppingCartItemVO.java │ │ ├── MallUserVO.java │ │ ├── SearchPageCategoryVO.java │ │ ├── SecondLevelCategoryVO.java │ │ └── ThirdLevelCategoryVO.java │ ├── dao │ ├── AdminUserMapper.java │ ├── CarouselMapper.java │ ├── GoodsCategoryMapper.java │ ├── IndexConfigMapper.java │ ├── MallGoodsMapper.java │ ├── MallOrderItemMapper.java │ ├── MallOrderMapper.java │ ├── MallShoppingCartItemMapper.java │ └── MallUserMapper.java │ ├── entity │ ├── AdminUser.java │ ├── Carousel.java │ ├── GoodsCategory.java │ ├── IndexConfig.java │ ├── MallGoods.java │ ├── MallOrder.java │ ├── MallOrderItem.java │ ├── MallShoppingCartItem.java │ ├── MallUser.java │ └── StockNumDTO.java │ ├── interceptor │ ├── AdminLoginInterceptor.java │ ├── MallCartNumberInterceptor.java │ └── MallLoginInterceptor.java │ ├── service │ ├── AdminUserService.java │ ├── MallCarouselService.java │ ├── MallCategoryService.java │ ├── MallGoodsService.java │ ├── MallIndexConfigService.java │ ├── MallOrderService.java │ ├── MallShoppingCartService.java │ ├── MallUserService.java │ └── impl │ │ ├── AdminUserServiceImpl.java │ │ ├── MallCarouselServiceImpl.java │ │ ├── MallCategoryServiceImpl.java │ │ ├── MallGoodsServiceImpl.java │ │ ├── MallIndexConfigServiceImpl.java │ │ ├── MallOrderServiceImpl.java │ │ ├── MallShoppingCartServiceImpl.java │ │ └── MallUserServiceImpl.java │ └── util │ ├── BeanUtil.java │ ├── JsonUtil.java │ ├── MD5Util.java │ ├── MallUtils.java │ ├── NumberUtil.java │ ├── PageQueryUtil.java │ ├── PageResult.java │ ├── PatternUtil.java │ ├── Result.java │ ├── ResultGenerator.java │ └── SystemUtil.java └── resources ├── application.properties ├── mapper ├── AdminUserMapper.xml ├── CarouselMapper.xml ├── GoodsCategoryMapper.xml ├── IndexConfigMapper.xml ├── MallGoodsMapper.xml ├── MallOrderItemMapper.xml ├── MallOrderMapper.xml ├── MallShoppingCartItemMapper.xml └── MallUserMapper.xml ├── static ├── admin │ ├── dist │ │ ├── css │ │ │ ├── adminlte.css │ │ │ ├── adminlte.css.map │ │ │ ├── adminlte.min.css │ │ │ ├── font-awesome.min.css │ │ │ ├── ionicons.min.css │ │ │ └── main.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ ├── img │ │ │ ├── AdminLTELogo.png │ │ │ ├── boxed-bg.jpg │ │ │ ├── boxed-bg.png │ │ │ ├── default-150x150.png │ │ │ ├── favicon.ico │ │ │ ├── icons.png │ │ │ ├── img-upload.png │ │ │ ├── new-bee-logo-1.png │ │ │ ├── new-bee-logo.png │ │ │ ├── newbee-logo.png │ │ │ └── no-img.png │ │ └── js │ │ │ ├── adminlte.js │ │ │ ├── adminlte.js.map │ │ │ ├── adminlte.min.js │ │ │ ├── adminlte.min.js.map │ │ │ ├── demo.js │ │ │ ├── mall_carousel.js │ │ │ ├── mall_category.js │ │ │ ├── mall_goods.js │ │ │ ├── mall_goods_edit.js │ │ │ ├── mall_index_config.js │ │ │ ├── mall_order.js │ │ │ ├── mall_user.js │ │ │ ├── plugins │ │ │ ├── bootstrap │ │ │ │ ├── css │ │ │ │ │ ├── bootstrap-grid.css │ │ │ │ │ ├── bootstrap-grid.css.map │ │ │ │ │ ├── bootstrap-grid.min.css │ │ │ │ │ ├── bootstrap-grid.min.css.map │ │ │ │ │ ├── bootstrap-reboot.css │ │ │ │ │ ├── bootstrap-reboot.css.map │ │ │ │ │ ├── bootstrap-reboot.min.css │ │ │ │ │ ├── bootstrap-reboot.min.css.map │ │ │ │ │ ├── bootstrap.css │ │ │ │ │ ├── bootstrap.css.map │ │ │ │ │ ├── bootstrap.min.css │ │ │ │ │ └── bootstrap.min.css.map │ │ │ │ └── js │ │ │ │ │ ├── bootstrap.bundle.js │ │ │ │ │ ├── bootstrap.bundle.js.map │ │ │ │ │ ├── bootstrap.bundle.min.js │ │ │ │ │ ├── bootstrap.bundle.min.js.map │ │ │ │ │ ├── bootstrap.js │ │ │ │ │ ├── bootstrap.js.map │ │ │ │ │ ├── bootstrap.min.js │ │ │ │ │ └── bootstrap.min.js.map │ │ │ ├── chart.js │ │ │ ├── chart.js2 │ │ │ ├── chartjs2 │ │ │ │ ├── Chart.bundle.js │ │ │ │ ├── Chart.bundle.min.js │ │ │ │ ├── Chart.js │ │ │ │ ├── Chart.min.js │ │ │ │ └── docs │ │ │ │ │ ├── axes │ │ │ │ │ ├── cartesian │ │ │ │ │ │ ├── category.html │ │ │ │ │ │ ├── index.html │ │ │ │ │ │ ├── linear.html │ │ │ │ │ │ ├── logarithmic.html │ │ │ │ │ │ └── time.html │ │ │ │ │ ├── index.html │ │ │ │ │ ├── labelling.html │ │ │ │ │ ├── radial │ │ │ │ │ │ ├── index.html │ │ │ │ │ │ └── linear.html │ │ │ │ │ └── styling.html │ │ │ │ │ ├── charts │ │ │ │ │ ├── area.html │ │ │ │ │ ├── bar.html │ │ │ │ │ ├── bubble.html │ │ │ │ │ ├── doughnut.html │ │ │ │ │ ├── index.html │ │ │ │ │ ├── line.html │ │ │ │ │ ├── mixed.html │ │ │ │ │ ├── polar.html │ │ │ │ │ ├── radar.html │ │ │ │ │ └── scatter.html │ │ │ │ │ ├── configuration │ │ │ │ │ ├── animations.html │ │ │ │ │ ├── elements.html │ │ │ │ │ ├── index.html │ │ │ │ │ ├── layout.html │ │ │ │ │ ├── legend.html │ │ │ │ │ ├── title.html │ │ │ │ │ └── tooltip.html │ │ │ │ │ ├── developers │ │ │ │ │ ├── api.html │ │ │ │ │ ├── axes.html │ │ │ │ │ ├── charts.html │ │ │ │ │ ├── contributing.html │ │ │ │ │ ├── index.html │ │ │ │ │ ├── plugins.html │ │ │ │ │ └── updates.html │ │ │ │ │ ├── general │ │ │ │ │ ├── colors.html │ │ │ │ │ ├── device-pixel-ratio.md │ │ │ │ │ ├── fonts.html │ │ │ │ │ ├── index.html │ │ │ │ │ ├── interactions │ │ │ │ │ │ ├── events.html │ │ │ │ │ │ ├── index.html │ │ │ │ │ │ └── modes.html │ │ │ │ │ ├── options.html │ │ │ │ │ └── responsive.html │ │ │ │ │ ├── getting-started │ │ │ │ │ ├── index.html │ │ │ │ │ ├── installation.html │ │ │ │ │ ├── integration.html │ │ │ │ │ └── usage.html │ │ │ │ │ ├── gitbook │ │ │ │ │ ├── fonts │ │ │ │ │ │ └── fontawesome │ │ │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ │ │ ├── gitbook-plugin-anchorjs │ │ │ │ │ │ └── anchor-style.js │ │ │ │ │ ├── gitbook-plugin-chartjs │ │ │ │ │ │ ├── Chart.bundle.js │ │ │ │ │ │ ├── Chart.bundle.min.js │ │ │ │ │ │ ├── Chart.js │ │ │ │ │ │ ├── Chart.min.js │ │ │ │ │ │ ├── chartjs-plugin-deferred.js │ │ │ │ │ │ ├── chartjs-plugin-deferred.min.js │ │ │ │ │ │ └── style.css │ │ │ │ │ ├── gitbook-plugin-fontsettings │ │ │ │ │ │ ├── fontsettings.js │ │ │ │ │ │ └── website.css │ │ │ │ │ ├── gitbook-plugin-ga │ │ │ │ │ │ └── plugin.js │ │ │ │ │ ├── gitbook-plugin-highlight │ │ │ │ │ │ ├── ebook.css │ │ │ │ │ │ └── website.css │ │ │ │ │ ├── gitbook-plugin-search-plus │ │ │ │ │ │ ├── jquery.mark.min.js │ │ │ │ │ │ ├── search.css │ │ │ │ │ │ └── search.js │ │ │ │ │ ├── gitbook-plugin-sharing │ │ │ │ │ │ └── buttons.js │ │ │ │ │ ├── gitbook.js │ │ │ │ │ ├── images │ │ │ │ │ │ ├── apple-touch-icon-precomposed-152.png │ │ │ │ │ │ └── favicon.ico │ │ │ │ │ ├── style.css │ │ │ │ │ └── theme.js │ │ │ │ │ ├── index.html │ │ │ │ │ ├── notes │ │ │ │ │ ├── comparison.html │ │ │ │ │ ├── extensions.html │ │ │ │ │ ├── index.html │ │ │ │ │ └── license.html │ │ │ │ │ ├── search_plus_index.json │ │ │ │ │ └── style.css │ │ │ ├── font-awesome │ │ │ │ ├── css │ │ │ │ │ ├── font-awesome.css │ │ │ │ │ ├── font-awesome.css.map │ │ │ │ │ └── font-awesome.min.css │ │ │ │ └── fonts │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ ├── jquery │ │ │ │ ├── core.js │ │ │ │ ├── jquery.js │ │ │ │ ├── jquery.min.js │ │ │ │ ├── jquery.min.map │ │ │ │ ├── jquery.slim.js │ │ │ │ ├── jquery.slim.min.js │ │ │ │ └── jquery.slim.min.map │ │ │ ├── login-bg-particles.js │ │ │ ├── particles.js │ │ │ └── popper │ │ │ │ ├── esm │ │ │ │ ├── popper-utils.js │ │ │ │ ├── popper-utils.js.map │ │ │ │ ├── popper-utils.min.js │ │ │ │ ├── popper-utils.min.js.map │ │ │ │ ├── popper.js │ │ │ │ ├── popper.js.map │ │ │ │ ├── popper.min.js │ │ │ │ └── popper.min.js.map │ │ │ │ ├── popper-utils.js │ │ │ │ ├── popper-utils.js.map │ │ │ │ ├── popper-utils.min.js │ │ │ │ ├── popper-utils.min.js.map │ │ │ │ ├── popper.js │ │ │ │ ├── popper.js.map │ │ │ │ ├── popper.min.js │ │ │ │ ├── popper.min.js.map │ │ │ │ └── umd │ │ │ │ ├── popper-utils.js │ │ │ │ ├── popper-utils.js.map │ │ │ │ ├── popper-utils.min.js │ │ │ │ ├── popper-utils.min.js.map │ │ │ │ ├── popper.js │ │ │ │ ├── popper.js.map │ │ │ │ ├── popper.min.js │ │ │ │ └── popper.min.js.map │ │ │ ├── profile.js │ │ │ ├── public.js │ │ │ └── test.js │ └── plugins │ │ ├── ajaxupload │ │ └── ajaxupload.js │ │ ├── bootstrap │ │ ├── css │ │ │ ├── bootstrap-grid.css │ │ │ ├── bootstrap-grid.css.map │ │ │ ├── bootstrap-grid.min.css │ │ │ ├── bootstrap-grid.min.css.map │ │ │ ├── bootstrap-reboot.css │ │ │ ├── bootstrap-reboot.css.map │ │ │ ├── bootstrap-reboot.min.css │ │ │ ├── bootstrap-reboot.min.css.map │ │ │ ├── bootstrap.css │ │ │ ├── bootstrap.css.map │ │ │ ├── bootstrap.min.css │ │ │ ├── bootstrap.min.css.map │ │ │ └── bootstrap3.3.7.min.css │ │ ├── fonts │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ └── js │ │ │ ├── bootstrap.bundle.js │ │ │ ├── bootstrap.bundle.js.map │ │ │ ├── bootstrap.bundle.min.js │ │ │ ├── bootstrap.bundle.min.js.map │ │ │ ├── bootstrap.js │ │ │ ├── bootstrap.js.map │ │ │ ├── bootstrap.min.js │ │ │ └── bootstrap.min.js.map │ │ ├── jqgrid-5.5.2 │ │ ├── grid.locale-cn.js │ │ ├── jquery.jqGrid.min.js │ │ ├── jquery.jqGrid.min.js.map │ │ ├── ui.jqgrid-bootstrap-ui.css │ │ ├── ui.jqgrid-bootstrap.css │ │ ├── ui.jqgrid-bootstrap4.css │ │ └── ui.jqgrid.css │ │ ├── jquery │ │ ├── core.js │ │ ├── jquery.js │ │ ├── jquery.min.js │ │ ├── jquery.min.map │ │ ├── jquery.slim.js │ │ ├── jquery.slim.min.js │ │ └── jquery.slim.min.map │ │ ├── select2 │ │ ├── i18n │ │ │ ├── az.js │ │ │ ├── bg.js │ │ │ ├── ca.js │ │ │ ├── cs.js │ │ │ ├── da.js │ │ │ ├── de.js │ │ │ ├── en.js │ │ │ ├── es.js │ │ │ ├── et.js │ │ │ ├── eu.js │ │ │ ├── fa.js │ │ │ ├── fi.js │ │ │ ├── fr.js │ │ │ ├── gl.js │ │ │ ├── he.js │ │ │ ├── hi.js │ │ │ ├── hr.js │ │ │ ├── hu.js │ │ │ ├── id.js │ │ │ ├── is.js │ │ │ ├── it.js │ │ │ ├── ko.js │ │ │ ├── lt.js │ │ │ ├── lv.js │ │ │ ├── mk.js │ │ │ ├── nb.js │ │ │ ├── nl.js │ │ │ ├── pl.js │ │ │ ├── pt-BR.js │ │ │ ├── pt.js │ │ │ ├── ro.js │ │ │ ├── ru.js │ │ │ ├── sk.js │ │ │ ├── sr.js │ │ │ ├── sv.js │ │ │ ├── th.js │ │ │ ├── tr.js │ │ │ ├── uk.js │ │ │ ├── vi.js │ │ │ ├── zh-CN.js │ │ │ └── zh-TW.js │ │ ├── select2.css │ │ ├── select2.full.js │ │ ├── select2.full.min.js │ │ ├── select2.js │ │ ├── select2.min.css │ │ └── select2.min.js │ │ └── sweetalert │ │ ├── sweetalert.css │ │ └── sweetalert.min.js ├── favicon.ico └── mall │ ├── css │ ├── bootstrap-modal.css │ ├── common.css │ ├── iconfont.css │ └── swiper-bundle.min.css │ ├── fonts │ ├── iconfont.eot │ ├── iconfont.svg │ ├── iconfont.ttf │ ├── iconfont.woff │ └── iconfont.woff2 │ ├── image │ ├── 7d.jpg │ ├── card.png │ ├── close.png │ ├── donate.png │ ├── hua.png │ ├── indexlogo.png │ ├── indexlogo2.png │ ├── indexlogo3.png │ ├── indexlogo4.png │ ├── ji.png │ ├── login-logo-2.png │ ├── login_bg.png │ ├── logobg.jpg │ ├── logobg2.jpg │ ├── new-bee-logo-3.png │ ├── null-content.png │ ├── pay │ │ ├── alipay_code.png │ │ ├── alipay_logo.jpg │ │ ├── payOnline_gdyh.png │ │ ├── payOnline_gfyh.png │ │ ├── payOnline_gsyh.png │ │ ├── payOnline_jiangsshuyh.png │ │ ├── payOnline_jsyh.png │ │ ├── payOnline_jtyh.png │ │ ├── payOnline_nyyh.png │ │ ├── payOnline_pufa.png │ │ ├── payOnline_shncsyyh.png │ │ ├── payOnline_xyyh.png │ │ ├── payOnline_youzheng.png │ │ ├── payOnline_zfb.png │ │ ├── payOnline_zgyh.png │ │ ├── payOnline_zsyh.png │ │ ├── payOnline_zxyh.png │ │ ├── scan-alipay.png │ │ ├── scan-wx.png │ │ ├── unionpay.png │ │ ├── wave-repeat.png │ │ ├── weixinpay.png │ │ ├── wx_logo.jpg │ │ └── wxpay_qrcode.png │ ├── right-@1x.png │ ├── search-cart.png │ ├── search.png │ ├── sub_banner │ │ ├── air.jpg │ │ ├── baby-car.jpg │ │ ├── headphones.jpg │ │ ├── hot1.png │ │ ├── hot2.jpg │ │ ├── hot3.jpg │ │ ├── hot4.jpg │ │ ├── m6.jpg │ │ ├── pc.jpg │ │ ├── r1.jpg │ │ ├── r2.jpg │ │ ├── r3.jpg │ │ ├── r4.jpg │ │ ├── r5.jpg │ │ └── r6.jpg │ ├── swiper │ │ ├── banner01.jpg │ │ ├── banner02.jpg │ │ └── banner03.jpg │ └── tel.png │ ├── js │ ├── bootstrap3.js │ ├── detail.js │ ├── index.js │ ├── jquery-1.8.0.js │ ├── search.js │ └── swiper-bundle.min.js │ └── styles │ ├── addresses.css │ ├── cart.css │ ├── detail.css │ ├── header.css │ ├── index.css │ ├── login.css │ ├── my-orders.css │ ├── order-detail.css │ ├── order-settle.css │ ├── pay-select.css │ ├── pay.css │ ├── personal.css │ └── search.css ├── templates ├── admin │ ├── footer.html │ ├── header.html │ ├── index.html │ ├── login.html │ ├── mall_carousel.html │ ├── mall_category.html │ ├── mall_goods.html │ ├── mall_goods_edit.html │ ├── mall_index_config.html │ ├── mall_order.html │ ├── mall_user.html │ ├── profile.html │ └── sidebar.html ├── error │ ├── error.html │ ├── error_400.html │ ├── error_404.html │ └── error_5xx.html └── mall │ ├── alipay.html │ ├── cart.html │ ├── detail.html │ ├── footer.html │ ├── header.html │ ├── index.html │ ├── login.html │ ├── my-orders.html │ ├── order-detail.html │ ├── order-settle.html │ ├── pay-select.html │ ├── personal-sidebar.html │ ├── personal.html │ ├── register.html │ ├── search.html │ └── wxpay.html └── upload ├── 00a5036a-07d3-4131-b677-956312bbbc2c.jpg ├── 00e53d76-db08-4ae2-864f-ca1cd7c8c32b.jpg ├── 0a592388-1535-4f9f-8201-ecb78c48bb3d.jpg ├── 0a91f05d-948b-48d4-aac5-5cbd2e85238f.jpg ├── 0ae89667-8a69-4efc-b8d8-c0ebaf56753a.jpg ├── 0b02244f-6908-4ccb-a9d2-ccb5a462e30e.jpg ├── 0b1e57bf-b4fd-40df-9832-4749d7d69db9.jpg ├── 0bc4f5ac-d601-421d-8131-81958a195705.jpg ├── 0c76bb32-2d34-4738-94a2-0fbf0451fc12.jpg └── 0c91c849-fc0f-44ea-a094-f105c3c81c3c.jpg /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/.DS_Store -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.js linguist-language=java 2 | *.css linguist-language=java 3 | *.html linguist-language=java -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 全目录 2 | 3 | [更多系统、论文,供君选择 ~~>](https://www.yuque.com/wisebit/blog) 4 | 5 | # 78.SCUMElectronicMallManagementSystem 6 | 7 |

群: 983063232(大佬群 2TB学习资料,讲解)(入群获取sql文件)

8 |

QQ: 206157502(加好友获取sql文件)

9 | 10 |

78.SCUM电子商城管理系统

11 | 12 | 13 |

14 | 15 | 16 | 17 | 18 |

19 | 20 | # 简介 21 | 22 | 23 | > 本代码来源于网络,仅供学习参考使用,请入群(983063232)后联系群主索要sql文件! 24 | 25 | 26 | 27 | # 环境 28 | 29 | - IntelliJ IDEA 2009.3 30 | 31 | - Mysql 5.7.26 32 | 33 | - Tomcat 7.0.73 34 | 35 | - JDK 1.8 36 | 37 | 38 | 39 | 40 | ## 缩略图 41 | 42 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/4793ee5a-f604-45db-baa7-bdcaf9b5d2df.png) 43 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/a7ae163a-d924-4867-8baf-73ba89fc57ec.png) 44 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/8bdb6dda-9ceb-4f0e-8339-6e936c584a45.png) 45 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/2e45d446-8399-4583-810e-2b753a714272.png) 46 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/93682259-1f0e-414d-96c0-81be39c52b11.png) 47 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/331213bd-fd7a-4ca0-ba17-7783e15bb8d4.png) 48 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/12921809-aa85-4ab1-9e20-463cc4f32fbe.png) 49 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/6c8fe57e-6b1d-41d9-9d84-9d4e8db09589.png) 50 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/1b71699e-0469-4bb8-b66e-b358093f755c.png) 51 | ![](https://bitwise.oss-cn-heyuan.aliyuncs.com/2024/9/10/0931be4f-55ba-4164-92f3-12665145b9f5.png) 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/MallApplication.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall; 3 | 4 | import org.mybatis.spring.annotation.MapperScan; 5 | import org.springframework.boot.SpringApplication; 6 | import org.springframework.boot.autoconfigure.SpringBootApplication; 7 | 8 | 9 | @MapperScan("ltd.mall.dao") 10 | @SpringBootApplication 11 | public class MallApplication { 12 | public static void main(String[] args) { 13 | SpringApplication.run(MallApplication.class, args); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/Constants.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | 5 | public class Constants { 6 | //public final static String FILE_UPLOAD_DIC = "/opt/image/upload/";//上传文件的默认url前缀,根据部署设置自行修改 7 | public final static String FILE_UPLOAD_DIC = "D:\\mall\\src\\main\\resources\\upload\\";//上传文件的默认url前缀,根据部署设置自行修改 8 | 9 | public final static int INDEX_CAROUSEL_NUMBER = 5;//首页轮播图数量(可根据自身需求修改) 10 | 11 | public final static int INDEX_CATEGORY_NUMBER = 10;//首页一级分类的最大数量 12 | 13 | public final static int SEARCH_CATEGORY_NUMBER = 8;//搜索页一级分类的最大数量 14 | 15 | public final static int INDEX_GOODS_HOT_NUMBER = 4;//首页热卖商品数量 16 | public final static int INDEX_GOODS_NEW_NUMBER = 5;//首页新品数量 17 | public final static int INDEX_GOODS_RECOMMOND_NUMBER = 10;//首页推荐商品数量 18 | 19 | public final static int SHOPPING_CART_ITEM_TOTAL_NUMBER = 13;//购物车中商品的最大数量(可根据自身需求修改) 20 | 21 | public final static int SHOPPING_CART_ITEM_LIMIT_NUMBER = 5;//购物车中单个商品的最大购买数量(可根据自身需求修改) 22 | 23 | public final static String MALL_VERIFY_CODE_KEY = "mallVerifyCode";//验证码key 24 | 25 | public final static String MALL_USER_SESSION_KEY = "mallUser";//session中user的key 26 | 27 | public final static int GOODS_SEARCH_PAGE_LIMIT = 10;//搜索分页的默认条数(每页10条) 28 | 29 | public final static int ORDER_SEARCH_PAGE_LIMIT = 3;//我的订单列表分页的默认条数(每页3条) 30 | 31 | public final static int SELL_STATUS_UP = 0;//商品上架状态 32 | public final static int SELL_STATUS_DOWN = 1;//商品下架状态 33 | 34 | } 35 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/IndexConfigTypeEnum.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | /** 5 | * @apiNote 首页配置项 1-搜索框热搜 2-搜索下拉框热搜 3-(首页)热销商品 4-(首页)新品上线 5-(首页)为你推荐 6 | */ 7 | public enum IndexConfigTypeEnum { 8 | 9 | DEFAULT(0, "DEFAULT"), 10 | INDEX_SEARCH_HOTS(1, "INDEX_SEARCH_HOTS"), 11 | INDEX_SEARCH_DOWN_HOTS(2, "INDEX_SEARCH_DOWN_HOTS"), 12 | INDEX_GOODS_HOT(3, "INDEX_GOODS_HOTS"), 13 | INDEX_GOODS_NEW(4, "INDEX_GOODS_NEW"), 14 | INDEX_GOODS_RECOMMOND(5, "INDEX_GOODS_RECOMMOND"); 15 | 16 | private int type; 17 | 18 | private String name; 19 | 20 | IndexConfigTypeEnum(int type, String name) { 21 | this.type = type; 22 | this.name = name; 23 | } 24 | 25 | public static IndexConfigTypeEnum getIndexConfigTypeEnumByType(int type) { 26 | for (IndexConfigTypeEnum indexConfigTypeEnum : IndexConfigTypeEnum.values()) { 27 | if (indexConfigTypeEnum.getType() == type) { 28 | return indexConfigTypeEnum; 29 | } 30 | } 31 | return DEFAULT; 32 | } 33 | 34 | public int getType() { 35 | return type; 36 | } 37 | 38 | public void setType(int type) { 39 | this.type = type; 40 | } 41 | 42 | public String getName() { 43 | return name; 44 | } 45 | 46 | public void setName(String name) { 47 | this.name = name; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/MallCategoryLevelEnum.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | 5 | public enum MallCategoryLevelEnum { 6 | 7 | DEFAULT(0, "ERROR"), 8 | LEVEL_ONE(1, "一级分类"), 9 | LEVEL_TWO(2, "二级分类"), 10 | LEVEL_THREE(3, "三级分类"); 11 | 12 | private int level; 13 | 14 | private String name; 15 | 16 | MallCategoryLevelEnum(int level, String name) { 17 | this.level = level; 18 | this.name = name; 19 | } 20 | 21 | public static MallCategoryLevelEnum getMallOrderStatusEnumByLevel(int level) { 22 | for (MallCategoryLevelEnum mallCategoryLevelEnum : MallCategoryLevelEnum.values()) { 23 | if (mallCategoryLevelEnum.getLevel() == level) { 24 | return mallCategoryLevelEnum; 25 | } 26 | } 27 | return DEFAULT; 28 | } 29 | 30 | public int getLevel() { 31 | return level; 32 | } 33 | 34 | public void setLevel(int level) { 35 | this.level = level; 36 | } 37 | 38 | public String getName() { 39 | return name; 40 | } 41 | 42 | public void setName(String name) { 43 | this.name = name; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/MallException.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | public class MallException extends RuntimeException { 5 | 6 | public MallException() { 7 | } 8 | 9 | public MallException(String message) { 10 | super(message); 11 | } 12 | 13 | /** 14 | * 丢出一个异常 15 | * 16 | * @param message 17 | */ 18 | public static void fail(String message) { 19 | throw new MallException(message); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/MallOrderStatusEnum.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | /** 5 | 6 | * @apiNote 订单状态:0.待支付 1.已支付 2.配货完成 3:出库成功 4.交易成功 -1.手动关闭 -2.超时关闭 -3.商家关闭 7 | */ 8 | public enum MallOrderStatusEnum { 9 | 10 | DEFAULT(-9, "ERROR"), 11 | ORDER_PRE_PAY(0, "待支付"), 12 | ORDER_PAID(1, "已支付"), 13 | ORDER_PACKAGED(2, "配货完成"), 14 | ORDER_EXPRESS(3, "出库成功"), 15 | ORDER_SUCCESS(4, "交易成功"), 16 | ORDER_CLOSED_BY_MALLUSER(-1, "手动关闭"), 17 | ORDER_CLOSED_BY_EXPIRED(-2, "超时关闭"), 18 | ORDER_CLOSED_BY_JUDGE(-3, "商家关闭"); 19 | 20 | private int orderStatus; 21 | 22 | private String name; 23 | 24 | MallOrderStatusEnum(int orderStatus, String name) { 25 | this.orderStatus = orderStatus; 26 | this.name = name; 27 | } 28 | 29 | public static MallOrderStatusEnum getMallOrderStatusEnumByStatus(int orderStatus) { 30 | for (MallOrderStatusEnum mallOrderStatusEnum : MallOrderStatusEnum.values()) { 31 | if (mallOrderStatusEnum.getOrderStatus() == orderStatus) { 32 | return mallOrderStatusEnum; 33 | } 34 | } 35 | return DEFAULT; 36 | } 37 | 38 | public int getOrderStatus() { 39 | return orderStatus; 40 | } 41 | 42 | public void setOrderStatus(int orderStatus) { 43 | this.orderStatus = orderStatus; 44 | } 45 | 46 | public String getName() { 47 | return name; 48 | } 49 | 50 | public void setName(String name) { 51 | this.name = name; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/PayStatusEnum.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | 5 | public enum PayStatusEnum { 6 | 7 | DEFAULT(-1, "支付失败"), 8 | PAY_ING(0, "支付中"), 9 | PAY_SUCCESS(1, "支付成功"); 10 | 11 | private int payStatus; 12 | 13 | private String name; 14 | 15 | PayStatusEnum(int payStatus, String name) { 16 | this.payStatus = payStatus; 17 | this.name = name; 18 | } 19 | 20 | public static PayStatusEnum getPayStatusEnumByStatus(int payStatus) { 21 | for (PayStatusEnum payStatusEnum : PayStatusEnum.values()) { 22 | if (payStatusEnum.getPayStatus() == payStatus) { 23 | return payStatusEnum; 24 | } 25 | } 26 | return DEFAULT; 27 | } 28 | 29 | public int getPayStatus() { 30 | return payStatus; 31 | } 32 | 33 | public void setPayStatus(int payStatus) { 34 | this.payStatus = payStatus; 35 | } 36 | 37 | public String getName() { 38 | return name; 39 | } 40 | 41 | public void setName(String name) { 42 | this.name = name; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/PayTypeEnum.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | /** 5 | 6 | * @apiNote 订单状态:0.无 1.支付宝 2.微信支付 7 | */ 8 | public enum PayTypeEnum { 9 | 10 | DEFAULT(-1, "ERROR"), 11 | NOT_PAY(0, "无"), 12 | ALI_PAY(1, "支付宝"), 13 | WEIXIN_PAY(2, "微信支付"); 14 | 15 | private int payType; 16 | 17 | private String name; 18 | 19 | PayTypeEnum(int payType, String name) { 20 | this.payType = payType; 21 | this.name = name; 22 | } 23 | 24 | public static PayTypeEnum getPayTypeEnumByType(int payType) { 25 | for (PayTypeEnum payTypeEnum : PayTypeEnum.values()) { 26 | if (payTypeEnum.getPayType() == payType) { 27 | return payTypeEnum; 28 | } 29 | } 30 | return DEFAULT; 31 | } 32 | 33 | public int getPayType() { 34 | return payType; 35 | } 36 | 37 | public void setPayType(int payType) { 38 | this.payType = payType; 39 | } 40 | 41 | public String getName() { 42 | return name; 43 | } 44 | 45 | public void setName(String name) { 46 | this.name = name; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/common/ServiceResultEnum.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.common; 3 | 4 | 5 | public enum ServiceResultEnum { 6 | ERROR("error"), 7 | 8 | SUCCESS("success"), 9 | 10 | DATA_NOT_EXIST("未查询到记录!"), 11 | 12 | SAME_CATEGORY_EXIST("有同级同名的分类!"), 13 | 14 | SAME_LOGIN_NAME_EXIST("用户名已存在!"), 15 | 16 | LOGIN_NAME_NULL("请输入登录名!"), 17 | 18 | LOGIN_PASSWORD_NULL("请输入密码!"), 19 | 20 | LOGIN_VERIFY_CODE_NULL("请输入验证码!"), 21 | 22 | LOGIN_VERIFY_CODE_ERROR("验证码错误!"), 23 | 24 | GOODS_NOT_EXIST("商品不存在!"), 25 | 26 | GOODS_PUT_DOWN("商品已下架!"), 27 | 28 | SHOPPING_CART_ITEM_LIMIT_NUMBER_ERROR("超出单个商品的最大购买数量!"), 29 | 30 | SHOPPING_CART_ITEM_TOTAL_NUMBER_ERROR("超出购物车最大容量!"), 31 | 32 | LOGIN_ERROR("登录失败!"), 33 | 34 | LOGIN_USER_LOCKED("用户已被禁止登录!"), 35 | 36 | ORDER_NOT_EXIST_ERROR("订单不存在!"), 37 | 38 | NULL_ADDRESS_ERROR("地址不能为空!"), 39 | 40 | ORDER_PRICE_ERROR("订单价格异常!"), 41 | 42 | ORDER_GENERATE_ERROR("生成订单异常!"), 43 | 44 | SHOPPING_ITEM_ERROR("购物车数据异常!"), 45 | 46 | SHOPPING_ITEM_COUNT_ERROR("库存不足!"), 47 | 48 | ORDER_STATUS_ERROR("订单状态异常!"), 49 | 50 | OPERATE_ERROR("操作失败!"), 51 | 52 | DB_ERROR("database error"); 53 | 54 | private String result; 55 | 56 | ServiceResultEnum(String result) { 57 | this.result = result; 58 | } 59 | 60 | public String getResult() { 61 | return result; 62 | } 63 | 64 | public void setResult(String result) { 65 | this.result = result; 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/admin/MallUserController.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.controller.admin; 3 | 4 | import ltd.mall.service.MallUserService; 5 | import ltd.mall.util.PageQueryUtil; 6 | import ltd.mall.util.Result; 7 | import ltd.mall.util.ResultGenerator; 8 | import org.springframework.stereotype.Controller; 9 | import org.springframework.util.StringUtils; 10 | import org.springframework.web.bind.annotation.*; 11 | 12 | import javax.annotation.Resource; 13 | import javax.servlet.http.HttpServletRequest; 14 | import java.util.Map; 15 | 16 | 17 | @Controller 18 | @RequestMapping("/admin") 19 | public class MallUserController { 20 | 21 | @Resource 22 | private MallUserService mallUserService; 23 | 24 | @GetMapping("/users") 25 | public String usersPage(HttpServletRequest request) { 26 | request.setAttribute("path", "users"); 27 | return "admin/mall_user"; 28 | } 29 | 30 | /** 31 | * 列表 32 | */ 33 | @RequestMapping(value = "/users/list", method = RequestMethod.GET) 34 | @ResponseBody 35 | public Result list(@RequestParam Map params) { 36 | if (StringUtils.isEmpty(params.get("page")) || StringUtils.isEmpty(params.get("limit"))) { 37 | return ResultGenerator.genFailResult("参数异常!"); 38 | } 39 | PageQueryUtil pageUtil = new PageQueryUtil(params); 40 | return ResultGenerator.genSuccessResult(mallUserService.getMallUsersPage(pageUtil)); 41 | } 42 | 43 | /** 44 | * 用户禁用与解除禁用(0-未锁定 1-已锁定) 45 | */ 46 | @RequestMapping(value = "/users/lock/{lockStatus}", method = RequestMethod.POST) 47 | @ResponseBody 48 | public Result delete(@RequestBody Integer[] ids, @PathVariable int lockStatus) { 49 | if (ids.length < 1) { 50 | return ResultGenerator.genFailResult("参数异常!"); 51 | } 52 | if (lockStatus != 0 && lockStatus != 1) { 53 | return ResultGenerator.genFailResult("操作非法!"); 54 | } 55 | if (mallUserService.lockUsers(ids, lockStatus)) { 56 | return ResultGenerator.genSuccessResult(); 57 | } else { 58 | return ResultGenerator.genFailResult("禁用失败"); 59 | } 60 | } 61 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/common/CommonController.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.controller.common; 3 | 4 | import com.wf.captcha.SpecCaptcha; 5 | import com.wf.captcha.base.Captcha; 6 | import ltd.mall.common.Constants; 7 | import org.springframework.stereotype.Controller; 8 | import org.springframework.web.bind.annotation.GetMapping; 9 | 10 | import javax.servlet.http.HttpServletRequest; 11 | import javax.servlet.http.HttpServletResponse; 12 | 13 | @Controller 14 | public class CommonController { 15 | 16 | @GetMapping("/common/kaptcha") 17 | public void defaultKaptcha(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { 18 | httpServletResponse.setHeader("Cache-Control", "no-store"); 19 | httpServletResponse.setHeader("Pragma", "no-cache"); 20 | httpServletResponse.setDateHeader("Expires", 0); 21 | httpServletResponse.setContentType("image/png"); 22 | 23 | // 三个参数分别为宽、高、位数 24 | SpecCaptcha captcha = new SpecCaptcha(150, 40, 4); 25 | 26 | // 设置类型 数字和字母混合 27 | captcha.setCharType(Captcha.TYPE_DEFAULT); 28 | 29 | //设置字体 30 | captcha.setCharType(Captcha.FONT_9); 31 | 32 | // 验证码存入session 33 | httpServletRequest.getSession().setAttribute("verifyCode", captcha.text().toLowerCase()); 34 | 35 | // 输出图片流 36 | captcha.out(httpServletResponse.getOutputStream()); 37 | } 38 | 39 | @GetMapping("/common/mall/kaptcha") 40 | public void mallKaptcha(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { 41 | httpServletResponse.setHeader("Cache-Control", "no-store"); 42 | httpServletResponse.setHeader("Pragma", "no-cache"); 43 | httpServletResponse.setDateHeader("Expires", 0); 44 | httpServletResponse.setContentType("image/png"); 45 | 46 | // 三个参数分别为宽、高、位数 47 | SpecCaptcha captcha = new SpecCaptcha(110, 40, 4); 48 | 49 | // 设置类型 数字和字母混合 50 | captcha.setCharType(Captcha.TYPE_DEFAULT); 51 | 52 | //设置字体 53 | captcha.setCharType(Captcha.FONT_9); 54 | 55 | // 验证码存入session 56 | httpServletRequest.getSession().setAttribute(Constants.MALL_VERIFY_CODE_KEY, captcha.text().toLowerCase()); 57 | 58 | // 输出图片流 59 | captcha.out(httpServletResponse.getOutputStream()); 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/common/MallExceptionHandler.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.controller.common; 3 | 4 | import ltd.mall.common.MallException; 5 | import ltd.mall.util.Result; 6 | import org.springframework.web.bind.annotation.ExceptionHandler; 7 | import org.springframework.web.bind.annotation.RestControllerAdvice; 8 | import org.springframework.web.servlet.ModelAndView; 9 | 10 | import javax.servlet.http.HttpServletRequest; 11 | 12 | 13 | @RestControllerAdvice 14 | public class MallExceptionHandler { 15 | 16 | @ExceptionHandler(Exception.class) 17 | public Object handleException(Exception e, HttpServletRequest req) { 18 | Result result = new Result(); 19 | result.setResultCode(500); 20 | //区分是否为自定义异常 21 | if (e instanceof MallException) { 22 | result.setMessage(e.getMessage()); 23 | } else { 24 | e.printStackTrace(); 25 | result.setMessage("未知异常"); 26 | } 27 | //检查请求是否为ajax, 如果是 ajax 请求则返回 Result json串, 如果不是 ajax 请求则返回 error 视图 28 | String contentTypeHeader = req.getHeader("Content-Type"); 29 | String acceptHeader = req.getHeader("Accept"); 30 | String xRequestedWith = req.getHeader("X-Requested-With"); 31 | if ((contentTypeHeader != null && contentTypeHeader.contains("application/json")) 32 | || (acceptHeader != null && acceptHeader.contains("application/json")) 33 | || "XMLHttpRequest".equalsIgnoreCase(xRequestedWith)) { 34 | return result; 35 | } else { 36 | ModelAndView modelAndView = new ModelAndView(); 37 | modelAndView.addObject("message", e.getMessage()); 38 | modelAndView.addObject("url", req.getRequestURL()); 39 | modelAndView.addObject("stackTrace", e.getStackTrace()); 40 | modelAndView.addObject("ltd", "SCUM"); 41 | modelAndView.setViewName("error/error"); 42 | return modelAndView; 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/mall/IndexController.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.controller.mall; 3 | 4 | import ltd.mall.common.Constants; 5 | import ltd.mall.common.IndexConfigTypeEnum; 6 | import ltd.mall.controller.vo.MallIndexCarouselVO; 7 | import ltd.mall.controller.vo.MallIndexCategoryVO; 8 | import ltd.mall.controller.vo.MallIndexConfigGoodsVO; 9 | import ltd.mall.service.MallCarouselService; 10 | import ltd.mall.service.MallCategoryService; 11 | import ltd.mall.service.MallIndexConfigService; 12 | import org.springframework.stereotype.Controller; 13 | import org.springframework.util.CollectionUtils; 14 | import org.springframework.web.bind.annotation.GetMapping; 15 | 16 | import javax.annotation.Resource; 17 | import javax.servlet.http.HttpServletRequest; 18 | import java.util.List; 19 | 20 | @Controller 21 | public class IndexController { 22 | 23 | @Resource 24 | private MallCarouselService mallCarouselService; 25 | 26 | @Resource 27 | private MallIndexConfigService mallIndexConfigService; 28 | 29 | @Resource 30 | private MallCategoryService mallCategoryService; 31 | 32 | @GetMapping({"/index", "/", "/index.html"}) 33 | public String indexPage(HttpServletRequest request) { 34 | List categories = mallCategoryService.getCategoriesForIndex(); 35 | if (CollectionUtils.isEmpty(categories)) { 36 | return "error/error_5xx"; 37 | } 38 | List carousels = mallCarouselService.getCarouselsForIndex(Constants.INDEX_CAROUSEL_NUMBER); 39 | List hotGoodses = mallIndexConfigService.getConfigGoodsesForIndex(IndexConfigTypeEnum.INDEX_GOODS_HOT.getType(), Constants.INDEX_GOODS_HOT_NUMBER); 40 | List newGoodses = mallIndexConfigService.getConfigGoodsesForIndex(IndexConfigTypeEnum.INDEX_GOODS_NEW.getType(), Constants.INDEX_GOODS_NEW_NUMBER); 41 | List recommendGoodses = mallIndexConfigService.getConfigGoodsesForIndex(IndexConfigTypeEnum.INDEX_GOODS_RECOMMOND.getType(), Constants.INDEX_GOODS_RECOMMOND_NUMBER); 42 | request.setAttribute("categories", categories);//分类数据 43 | request.setAttribute("carousels", carousels);//轮播图 44 | request.setAttribute("hotGoodses", hotGoodses);//热销商品 45 | request.setAttribute("newGoodses", newGoodses);//新品 46 | request.setAttribute("recommendGoodses", recommendGoodses);//推荐商品 47 | return "mall/index"; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallGoodsDetailVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 商品详情页VO 7 | */ 8 | public class MallGoodsDetailVO implements Serializable { 9 | 10 | private Long goodsId; 11 | 12 | private String goodsName; 13 | 14 | private String goodsIntro; 15 | 16 | private String goodsCoverImg; 17 | 18 | private String[] goodsCarouselList; 19 | 20 | private Integer sellingPrice; 21 | 22 | private Integer originalPrice; 23 | 24 | private String goodsDetailContent; 25 | 26 | public Long getGoodsId() { 27 | return goodsId; 28 | } 29 | 30 | public void setGoodsId(Long goodsId) { 31 | this.goodsId = goodsId; 32 | } 33 | 34 | public String getGoodsName() { 35 | return goodsName; 36 | } 37 | 38 | public void setGoodsName(String goodsName) { 39 | this.goodsName = goodsName; 40 | } 41 | 42 | public String getGoodsIntro() { 43 | return goodsIntro; 44 | } 45 | 46 | public void setGoodsIntro(String goodsIntro) { 47 | this.goodsIntro = goodsIntro; 48 | } 49 | 50 | public String getGoodsCoverImg() { 51 | return goodsCoverImg; 52 | } 53 | 54 | public void setGoodsCoverImg(String goodsCoverImg) { 55 | this.goodsCoverImg = goodsCoverImg; 56 | } 57 | 58 | public Integer getSellingPrice() { 59 | return sellingPrice; 60 | } 61 | 62 | public void setSellingPrice(Integer sellingPrice) { 63 | this.sellingPrice = sellingPrice; 64 | } 65 | 66 | public Integer getOriginalPrice() { 67 | return originalPrice; 68 | } 69 | 70 | public void setOriginalPrice(Integer originalPrice) { 71 | this.originalPrice = originalPrice; 72 | } 73 | 74 | public String getGoodsDetailContent() { 75 | return goodsDetailContent; 76 | } 77 | 78 | public void setGoodsDetailContent(String goodsDetailContent) { 79 | this.goodsDetailContent = goodsDetailContent; 80 | } 81 | 82 | public String[] getGoodsCarouselList() { 83 | return goodsCarouselList; 84 | } 85 | 86 | public void setGoodsCarouselList(String[] goodsCarouselList) { 87 | this.goodsCarouselList = goodsCarouselList; 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallIndexCarouselVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 首页轮播图VO 7 | */ 8 | public class MallIndexCarouselVO implements Serializable { 9 | 10 | private String carouselUrl; 11 | 12 | private String redirectUrl; 13 | 14 | public String getCarouselUrl() { 15 | return carouselUrl; 16 | } 17 | 18 | public void setCarouselUrl(String carouselUrl) { 19 | this.carouselUrl = carouselUrl; 20 | } 21 | 22 | public String getRedirectUrl() { 23 | return redirectUrl; 24 | } 25 | 26 | public void setRedirectUrl(String redirectUrl) { 27 | this.redirectUrl = redirectUrl; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallIndexCategoryVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | import java.util.List; 5 | 6 | /** 7 | * 首页分类数据VO 8 | */ 9 | public class MallIndexCategoryVO implements Serializable { 10 | 11 | private Long categoryId; 12 | 13 | private Byte categoryLevel; 14 | 15 | private String categoryName; 16 | 17 | private List secondLevelCategoryVOS; 18 | 19 | public Long getCategoryId() { 20 | return categoryId; 21 | } 22 | 23 | public void setCategoryId(Long categoryId) { 24 | this.categoryId = categoryId; 25 | } 26 | 27 | public Byte getCategoryLevel() { 28 | return categoryLevel; 29 | } 30 | 31 | public void setCategoryLevel(Byte categoryLevel) { 32 | this.categoryLevel = categoryLevel; 33 | } 34 | 35 | public String getCategoryName() { 36 | return categoryName; 37 | } 38 | 39 | public void setCategoryName(String categoryName) { 40 | this.categoryName = categoryName; 41 | } 42 | 43 | public List getSecondLevelCategoryVOS() { 44 | return secondLevelCategoryVOS; 45 | } 46 | 47 | public void setSecondLevelCategoryVOS(List secondLevelCategoryVOS) { 48 | this.secondLevelCategoryVOS = secondLevelCategoryVOS; 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallIndexConfigGoodsVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 首页配置商品VO 7 | */ 8 | public class MallIndexConfigGoodsVO implements Serializable { 9 | 10 | private Long goodsId; 11 | 12 | private String goodsName; 13 | 14 | private String goodsIntro; 15 | 16 | private String goodsCoverImg; 17 | 18 | private Integer sellingPrice; 19 | 20 | private String tag; 21 | 22 | public Long getGoodsId() { 23 | return goodsId; 24 | } 25 | 26 | public void setGoodsId(Long goodsId) { 27 | this.goodsId = goodsId; 28 | } 29 | 30 | public String getGoodsName() { 31 | return goodsName; 32 | } 33 | 34 | public void setGoodsName(String goodsName) { 35 | this.goodsName = goodsName; 36 | } 37 | 38 | public String getGoodsIntro() { 39 | return goodsIntro; 40 | } 41 | 42 | public void setGoodsIntro(String goodsIntro) { 43 | this.goodsIntro = goodsIntro; 44 | } 45 | 46 | public String getGoodsCoverImg() { 47 | return goodsCoverImg; 48 | } 49 | 50 | public void setGoodsCoverImg(String goodsCoverImg) { 51 | this.goodsCoverImg = goodsCoverImg; 52 | } 53 | 54 | public Integer getSellingPrice() { 55 | return sellingPrice; 56 | } 57 | 58 | public void setSellingPrice(Integer sellingPrice) { 59 | this.sellingPrice = sellingPrice; 60 | } 61 | 62 | public String getTag() { 63 | return tag; 64 | } 65 | 66 | public void setTag(String tag) { 67 | this.tag = tag; 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallOrderItemVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 订单详情页页面订单项VO 7 | */ 8 | public class MallOrderItemVO implements Serializable { 9 | 10 | private Long goodsId; 11 | 12 | private Integer goodsCount; 13 | 14 | private String goodsName; 15 | 16 | private String goodsCoverImg; 17 | 18 | private Integer sellingPrice; 19 | 20 | public Long getGoodsId() { 21 | return goodsId; 22 | } 23 | 24 | public void setGoodsId(Long goodsId) { 25 | this.goodsId = goodsId; 26 | } 27 | 28 | public String getGoodsName() { 29 | return goodsName; 30 | } 31 | 32 | public void setGoodsName(String goodsName) { 33 | this.goodsName = goodsName; 34 | } 35 | 36 | public String getGoodsCoverImg() { 37 | return goodsCoverImg; 38 | } 39 | 40 | public void setGoodsCoverImg(String goodsCoverImg) { 41 | this.goodsCoverImg = goodsCoverImg; 42 | } 43 | 44 | public Integer getSellingPrice() { 45 | return sellingPrice; 46 | } 47 | 48 | public void setSellingPrice(Integer sellingPrice) { 49 | this.sellingPrice = sellingPrice; 50 | } 51 | 52 | public Integer getGoodsCount() { 53 | return goodsCount; 54 | } 55 | 56 | public void setGoodsCount(Integer goodsCount) { 57 | this.goodsCount = goodsCount; 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallOrderListVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | import java.util.Date; 5 | import java.util.List; 6 | 7 | /** 8 | * 订单列表页面VO 9 | */ 10 | public class MallOrderListVO implements Serializable { 11 | 12 | private Long orderId; 13 | 14 | private String orderNo; 15 | 16 | private Integer totalPrice; 17 | 18 | private Byte payType; 19 | 20 | private Byte orderStatus; 21 | 22 | private String orderStatusString; 23 | 24 | private String userAddress; 25 | 26 | private Date createTime; 27 | 28 | private List mallOrderItemVOS; 29 | 30 | public Long getOrderId() { 31 | return orderId; 32 | } 33 | 34 | public void setOrderId(Long orderId) { 35 | this.orderId = orderId; 36 | } 37 | 38 | public String getOrderNo() { 39 | return orderNo; 40 | } 41 | 42 | public void setOrderNo(String orderNo) { 43 | this.orderNo = orderNo; 44 | } 45 | 46 | public Integer getTotalPrice() { 47 | return totalPrice; 48 | } 49 | 50 | public void setTotalPrice(Integer totalPrice) { 51 | this.totalPrice = totalPrice; 52 | } 53 | 54 | public Byte getPayType() { 55 | return payType; 56 | } 57 | 58 | public void setPayType(Byte payType) { 59 | this.payType = payType; 60 | } 61 | 62 | public Byte getOrderStatus() { 63 | return orderStatus; 64 | } 65 | 66 | public void setOrderStatus(Byte orderStatus) { 67 | this.orderStatus = orderStatus; 68 | } 69 | 70 | public String getOrderStatusString() { 71 | return orderStatusString; 72 | } 73 | 74 | public void setOrderStatusString(String orderStatusString) { 75 | this.orderStatusString = orderStatusString; 76 | } 77 | 78 | public String getUserAddress() { 79 | return userAddress; 80 | } 81 | 82 | public void setUserAddress(String userAddress) { 83 | this.userAddress = userAddress; 84 | } 85 | 86 | public Date getCreateTime() { 87 | return createTime; 88 | } 89 | 90 | public void setCreateTime(Date createTime) { 91 | this.createTime = createTime; 92 | } 93 | 94 | public List getMallOrderItemVOS() { 95 | return mallOrderItemVOS; 96 | } 97 | 98 | public void setMallOrderItemVOS(List mallOrderItemVOS) { 99 | this.mallOrderItemVOS = mallOrderItemVOS; 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallSearchGoodsVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 搜索列表页商品VO 7 | */ 8 | public class MallSearchGoodsVO implements Serializable { 9 | 10 | private Long goodsId; 11 | 12 | private String goodsName; 13 | 14 | private String goodsIntro; 15 | 16 | private String goodsCoverImg; 17 | 18 | private Integer sellingPrice; 19 | 20 | public Long getGoodsId() { 21 | return goodsId; 22 | } 23 | 24 | public void setGoodsId(Long goodsId) { 25 | this.goodsId = goodsId; 26 | } 27 | 28 | public String getGoodsName() { 29 | return goodsName; 30 | } 31 | 32 | public void setGoodsName(String goodsName) { 33 | this.goodsName = goodsName; 34 | } 35 | 36 | public String getGoodsIntro() { 37 | return goodsIntro; 38 | } 39 | 40 | public void setGoodsIntro(String goodsIntro) { 41 | this.goodsIntro = goodsIntro; 42 | } 43 | 44 | public String getGoodsCoverImg() { 45 | return goodsCoverImg; 46 | } 47 | 48 | public void setGoodsCoverImg(String goodsCoverImg) { 49 | this.goodsCoverImg = goodsCoverImg; 50 | } 51 | 52 | public Integer getSellingPrice() { 53 | return sellingPrice; 54 | } 55 | 56 | public void setSellingPrice(Integer sellingPrice) { 57 | this.sellingPrice = sellingPrice; 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallShoppingCartItemVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 购物车页面购物项VO 7 | */ 8 | public class MallShoppingCartItemVO implements Serializable { 9 | 10 | private Long cartItemId; 11 | 12 | private Long goodsId; 13 | 14 | private Integer goodsCount; 15 | 16 | private String goodsName; 17 | 18 | private String goodsCoverImg; 19 | 20 | private Integer sellingPrice; 21 | 22 | public Long getGoodsId() { 23 | return goodsId; 24 | } 25 | 26 | public void setGoodsId(Long goodsId) { 27 | this.goodsId = goodsId; 28 | } 29 | 30 | public String getGoodsName() { 31 | return goodsName; 32 | } 33 | 34 | public void setGoodsName(String goodsName) { 35 | this.goodsName = goodsName; 36 | } 37 | 38 | public String getGoodsCoverImg() { 39 | return goodsCoverImg; 40 | } 41 | 42 | public void setGoodsCoverImg(String goodsCoverImg) { 43 | this.goodsCoverImg = goodsCoverImg; 44 | } 45 | 46 | public Integer getSellingPrice() { 47 | return sellingPrice; 48 | } 49 | 50 | public void setSellingPrice(Integer sellingPrice) { 51 | this.sellingPrice = sellingPrice; 52 | } 53 | 54 | public Long getCartItemId() { 55 | return cartItemId; 56 | } 57 | 58 | public void setCartItemId(Long cartItemId) { 59 | this.cartItemId = cartItemId; 60 | } 61 | 62 | public Integer getGoodsCount() { 63 | return goodsCount; 64 | } 65 | 66 | public void setGoodsCount(Integer goodsCount) { 67 | this.goodsCount = goodsCount; 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/MallUserVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | public class MallUserVO implements Serializable { 6 | 7 | private Long userId; 8 | 9 | private String nickName; 10 | 11 | private String loginName; 12 | 13 | private String introduceSign; 14 | 15 | private String address; 16 | 17 | private int shopCartItemCount; 18 | 19 | public Long getUserId() { 20 | return userId; 21 | } 22 | 23 | public void setUserId(Long userId) { 24 | this.userId = userId; 25 | } 26 | 27 | public String getNickName() { 28 | return nickName; 29 | } 30 | 31 | public void setNickName(String nickName) { 32 | this.nickName = nickName; 33 | } 34 | 35 | public String getLoginName() { 36 | return loginName; 37 | } 38 | 39 | public void setLoginName(String loginName) { 40 | this.loginName = loginName; 41 | } 42 | 43 | public String getIntroduceSign() { 44 | return introduceSign; 45 | } 46 | 47 | public void setIntroduceSign(String introduceSign) { 48 | this.introduceSign = introduceSign; 49 | } 50 | 51 | public String getAddress() { 52 | return address; 53 | } 54 | 55 | public void setAddress(String address) { 56 | this.address = address; 57 | } 58 | 59 | public int getShopCartItemCount() { 60 | return shopCartItemCount; 61 | } 62 | 63 | public void setShopCartItemCount(int shopCartItemCount) { 64 | this.shopCartItemCount = shopCartItemCount; 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/SearchPageCategoryVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import ltd.mall.entity.GoodsCategory; 4 | 5 | import java.io.Serializable; 6 | import java.util.List; 7 | 8 | /** 9 | * 搜索页面分类数据VO 10 | */ 11 | public class SearchPageCategoryVO implements Serializable { 12 | 13 | private String firstLevelCategoryName; 14 | 15 | private List secondLevelCategoryList; 16 | 17 | private String secondLevelCategoryName; 18 | 19 | private List thirdLevelCategoryList; 20 | 21 | private String currentCategoryName; 22 | 23 | public String getFirstLevelCategoryName() { 24 | return firstLevelCategoryName; 25 | } 26 | 27 | public void setFirstLevelCategoryName(String firstLevelCategoryName) { 28 | this.firstLevelCategoryName = firstLevelCategoryName; 29 | } 30 | 31 | public List getSecondLevelCategoryList() { 32 | return secondLevelCategoryList; 33 | } 34 | 35 | public void setSecondLevelCategoryList(List secondLevelCategoryList) { 36 | this.secondLevelCategoryList = secondLevelCategoryList; 37 | } 38 | 39 | public String getSecondLevelCategoryName() { 40 | return secondLevelCategoryName; 41 | } 42 | 43 | public void setSecondLevelCategoryName(String secondLevelCategoryName) { 44 | this.secondLevelCategoryName = secondLevelCategoryName; 45 | } 46 | 47 | public List getThirdLevelCategoryList() { 48 | return thirdLevelCategoryList; 49 | } 50 | 51 | public void setThirdLevelCategoryList(List thirdLevelCategoryList) { 52 | this.thirdLevelCategoryList = thirdLevelCategoryList; 53 | } 54 | 55 | public String getCurrentCategoryName() { 56 | return currentCategoryName; 57 | } 58 | 59 | public void setCurrentCategoryName(String currentCategoryName) { 60 | this.currentCategoryName = currentCategoryName; 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/SecondLevelCategoryVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | import java.util.List; 5 | 6 | /** 7 | * 首页分类数据VO(第二级) 8 | */ 9 | public class SecondLevelCategoryVO implements Serializable { 10 | 11 | private Long categoryId; 12 | 13 | private Long parentId; 14 | 15 | private Byte categoryLevel; 16 | 17 | private String categoryName; 18 | 19 | private List thirdLevelCategoryVOS; 20 | 21 | public Long getCategoryId() { 22 | return categoryId; 23 | } 24 | 25 | public void setCategoryId(Long categoryId) { 26 | this.categoryId = categoryId; 27 | } 28 | 29 | public Byte getCategoryLevel() { 30 | return categoryLevel; 31 | } 32 | 33 | public void setCategoryLevel(Byte categoryLevel) { 34 | this.categoryLevel = categoryLevel; 35 | } 36 | 37 | public String getCategoryName() { 38 | return categoryName; 39 | } 40 | 41 | public void setCategoryName(String categoryName) { 42 | this.categoryName = categoryName; 43 | } 44 | 45 | public List getThirdLevelCategoryVOS() { 46 | return thirdLevelCategoryVOS; 47 | } 48 | 49 | public void setThirdLevelCategoryVOS(List thirdLevelCategoryVOS) { 50 | this.thirdLevelCategoryVOS = thirdLevelCategoryVOS; 51 | } 52 | 53 | public Long getParentId() { 54 | return parentId; 55 | } 56 | 57 | public void setParentId(Long parentId) { 58 | this.parentId = parentId; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/controller/vo/ThirdLevelCategoryVO.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.controller.vo; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 首页分类数据VO(第三级) 7 | */ 8 | public class ThirdLevelCategoryVO implements Serializable { 9 | 10 | private Long categoryId; 11 | 12 | private Byte categoryLevel; 13 | 14 | private String categoryName; 15 | 16 | public Long getCategoryId() { 17 | return categoryId; 18 | } 19 | 20 | public void setCategoryId(Long categoryId) { 21 | this.categoryId = categoryId; 22 | } 23 | 24 | public Byte getCategoryLevel() { 25 | return categoryLevel; 26 | } 27 | 28 | public void setCategoryLevel(Byte categoryLevel) { 29 | this.categoryLevel = categoryLevel; 30 | } 31 | 32 | public String getCategoryName() { 33 | return categoryName; 34 | } 35 | 36 | public void setCategoryName(String categoryName) { 37 | this.categoryName = categoryName; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/AdminUserMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.AdminUser; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | public interface AdminUserMapper { 8 | int insert(AdminUser record); 9 | 10 | int insertSelective(AdminUser record); 11 | 12 | /** 13 | * 登陆方法 14 | * 15 | * @param userName 16 | * @param password 17 | * @return 18 | */ 19 | AdminUser login(@Param("userName") String userName, @Param("password") String password); 20 | 21 | AdminUser selectByPrimaryKey(Integer adminUserId); 22 | 23 | int updateByPrimaryKeySelective(AdminUser record); 24 | 25 | int updateByPrimaryKey(AdminUser record); 26 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/CarouselMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.Carousel; 5 | import ltd.mall.util.PageQueryUtil; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | import java.util.List; 9 | 10 | public interface CarouselMapper { 11 | int deleteByPrimaryKey(Integer carouselId); 12 | 13 | int insert(Carousel record); 14 | 15 | int insertSelective(Carousel record); 16 | 17 | Carousel selectByPrimaryKey(Integer carouselId); 18 | 19 | int updateByPrimaryKeySelective(Carousel record); 20 | 21 | int updateByPrimaryKey(Carousel record); 22 | 23 | List findCarouselList(PageQueryUtil pageUtil); 24 | 25 | int getTotalCarousels(PageQueryUtil pageUtil); 26 | 27 | int deleteBatch(Integer[] ids); 28 | 29 | List findCarouselsByNum(@Param("number") int number); 30 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/GoodsCategoryMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.GoodsCategory; 5 | import ltd.mall.util.PageQueryUtil; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | import java.util.List; 9 | 10 | public interface GoodsCategoryMapper { 11 | int deleteByPrimaryKey(Long categoryId); 12 | 13 | int insert(GoodsCategory record); 14 | 15 | int insertSelective(GoodsCategory record); 16 | 17 | GoodsCategory selectByPrimaryKey(Long categoryId); 18 | 19 | GoodsCategory selectByLevelAndName(@Param("categoryLevel") Byte categoryLevel, @Param("categoryName") String categoryName); 20 | 21 | int updateByPrimaryKeySelective(GoodsCategory record); 22 | 23 | int updateByPrimaryKey(GoodsCategory record); 24 | 25 | List findGoodsCategoryList(PageQueryUtil pageUtil); 26 | 27 | int getTotalGoodsCategories(PageQueryUtil pageUtil); 28 | 29 | int deleteBatch(Integer[] ids); 30 | 31 | List selectByLevelAndParentIdsAndNumber(@Param("parentIds") List parentIds, @Param("categoryLevel") int categoryLevel, @Param("number") int number); 32 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/IndexConfigMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.IndexConfig; 5 | import ltd.mall.util.PageQueryUtil; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | import java.util.List; 9 | 10 | public interface IndexConfigMapper { 11 | int deleteByPrimaryKey(Long configId); 12 | 13 | int insert(IndexConfig record); 14 | 15 | int insertSelective(IndexConfig record); 16 | 17 | IndexConfig selectByPrimaryKey(Long configId); 18 | 19 | int updateByPrimaryKeySelective(IndexConfig record); 20 | 21 | int updateByPrimaryKey(IndexConfig record); 22 | 23 | List findIndexConfigList(PageQueryUtil pageUtil); 24 | 25 | int getTotalIndexConfigs(PageQueryUtil pageUtil); 26 | 27 | int deleteBatch(Long[] ids); 28 | 29 | List findIndexConfigsByTypeAndNum(@Param("configType") int configType, @Param("number") int number); 30 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/MallGoodsMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.MallGoods; 5 | import ltd.mall.entity.StockNumDTO; 6 | import ltd.mall.util.PageQueryUtil; 7 | import org.apache.ibatis.annotations.Param; 8 | 9 | import java.util.List; 10 | 11 | public interface MallGoodsMapper { 12 | int deleteByPrimaryKey(Long goodsId); 13 | 14 | int insert(MallGoods record); 15 | 16 | int insertSelective(MallGoods record); 17 | 18 | MallGoods selectByPrimaryKey(Long goodsId); 19 | 20 | int updateByPrimaryKeySelective(MallGoods record); 21 | 22 | int updateByPrimaryKeyWithBLOBs(MallGoods record); 23 | 24 | int updateByPrimaryKey(MallGoods record); 25 | 26 | List findMallGoodsList(PageQueryUtil pageUtil); 27 | 28 | int getTotalMallGoods(PageQueryUtil pageUtil); 29 | 30 | List selectByPrimaryKeys(List goodsIds); 31 | 32 | List findMallGoodsListBySearch(PageQueryUtil pageUtil); 33 | 34 | int getTotalMallGoodsBySearch(PageQueryUtil pageUtil); 35 | 36 | int batchInsert(@Param("mallGoodsList") List mallGoodsList); 37 | 38 | int updateStockNum(@Param("stockNumDTOS") List stockNumDTOS); 39 | 40 | int batchUpdateSellStatus(@Param("orderIds")Long[] orderIds,@Param("sellStatus") int sellStatus); 41 | 42 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/MallOrderItemMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.MallOrderItem; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface MallOrderItemMapper { 10 | int deleteByPrimaryKey(Long orderItemId); 11 | 12 | int insert(MallOrderItem record); 13 | 14 | int insertSelective(MallOrderItem record); 15 | 16 | MallOrderItem selectByPrimaryKey(Long orderItemId); 17 | 18 | /** 19 | * 根据订单id获取订单项列表 20 | * 21 | * @param orderId 22 | * @return 23 | */ 24 | List selectByOrderId(Long orderId); 25 | 26 | /** 27 | * 根据订单ids获取订单项列表 28 | * 29 | * @param orderIds 30 | * @return 31 | */ 32 | List selectByOrderIds(@Param("orderIds") List orderIds); 33 | 34 | /** 35 | * 批量insert订单项数据 36 | * 37 | * @param orderItems 38 | * @return 39 | */ 40 | int insertBatch(@Param("orderItems") List orderItems); 41 | 42 | int updateByPrimaryKeySelective(MallOrderItem record); 43 | 44 | int updateByPrimaryKey(MallOrderItem record); 45 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/MallOrderMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.MallOrder; 5 | import ltd.mall.util.PageQueryUtil; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | import java.util.List; 9 | 10 | public interface MallOrderMapper { 11 | int deleteByPrimaryKey(Long orderId); 12 | 13 | int insert(MallOrder record); 14 | 15 | int insertSelective(MallOrder record); 16 | 17 | MallOrder selectByPrimaryKey(Long orderId); 18 | 19 | MallOrder selectByOrderNo(String orderNo); 20 | 21 | int updateByPrimaryKeySelective(MallOrder record); 22 | 23 | int updateByPrimaryKey(MallOrder record); 24 | 25 | List findMallOrderList(PageQueryUtil pageUtil); 26 | 27 | int getTotalMallOrders(PageQueryUtil pageUtil); 28 | 29 | List selectByPrimaryKeys(@Param("orderIds") List orderIds); 30 | 31 | int checkOut(@Param("orderIds") List orderIds); 32 | 33 | int closeOrder(@Param("orderIds") List orderIds, @Param("orderStatus") int orderStatus); 34 | 35 | int checkDone(@Param("orderIds") List asList); 36 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/MallShoppingCartItemMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.MallShoppingCartItem; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface MallShoppingCartItemMapper { 10 | int deleteByPrimaryKey(Long cartItemId); 11 | 12 | int insert(MallShoppingCartItem record); 13 | 14 | int insertSelective(MallShoppingCartItem record); 15 | 16 | MallShoppingCartItem selectByPrimaryKey(Long cartItemId); 17 | 18 | MallShoppingCartItem selectByUserIdAndGoodsId(@Param("mallUserId") Long mallUserId, @Param("goodsId") Long goodsId); 19 | 20 | List selectByUserId(@Param("mallUserId") Long mallUserId, @Param("number") int number); 21 | 22 | int selectCountByUserId(Long mallUserId); 23 | 24 | int updateByPrimaryKeySelective(MallShoppingCartItem record); 25 | 26 | int updateByPrimaryKey(MallShoppingCartItem record); 27 | 28 | int deleteBatch(List ids); 29 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/dao/MallUserMapper.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.dao; 3 | 4 | import ltd.mall.entity.MallUser; 5 | import ltd.mall.util.PageQueryUtil; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | import java.util.List; 9 | 10 | public interface MallUserMapper { 11 | int deleteByPrimaryKey(Long userId); 12 | 13 | int insert(MallUser record); 14 | 15 | int insertSelective(MallUser record); 16 | 17 | MallUser selectByPrimaryKey(Long userId); 18 | 19 | MallUser selectByLoginName(String loginName); 20 | 21 | MallUser selectByLoginNameAndPasswd(@Param("loginName") String loginName, @Param("password") String password); 22 | 23 | int updateByPrimaryKeySelective(MallUser record); 24 | 25 | int updateByPrimaryKey(MallUser record); 26 | 27 | List findMallUserList(PageQueryUtil pageUtil); 28 | 29 | int getTotalMallUsers(PageQueryUtil pageUtil); 30 | 31 | int lockUserBatch(@Param("ids") Integer[] ids, @Param("lockStatus") int lockStatus); 32 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/entity/AdminUser.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.entity; 3 | 4 | public class AdminUser { 5 | private Integer adminUserId; 6 | 7 | private String loginUserName; 8 | 9 | private String loginPassword; 10 | 11 | private String nickName; 12 | 13 | private Byte locked; 14 | 15 | public Integer getAdminUserId() { 16 | return adminUserId; 17 | } 18 | 19 | public void setAdminUserId(Integer adminUserId) { 20 | this.adminUserId = adminUserId; 21 | } 22 | 23 | public String getLoginUserName() { 24 | return loginUserName; 25 | } 26 | 27 | public void setLoginUserName(String loginUserName) { 28 | this.loginUserName = loginUserName == null ? null : loginUserName.trim(); 29 | } 30 | 31 | public String getLoginPassword() { 32 | return loginPassword; 33 | } 34 | 35 | public void setLoginPassword(String loginPassword) { 36 | this.loginPassword = loginPassword == null ? null : loginPassword.trim(); 37 | } 38 | 39 | public String getNickName() { 40 | return nickName; 41 | } 42 | 43 | public void setNickName(String nickName) { 44 | this.nickName = nickName == null ? null : nickName.trim(); 45 | } 46 | 47 | public Byte getLocked() { 48 | return locked; 49 | } 50 | 51 | public void setLocked(Byte locked) { 52 | this.locked = locked; 53 | } 54 | 55 | @Override 56 | public String toString() { 57 | StringBuilder sb = new StringBuilder(); 58 | sb.append(getClass().getSimpleName()); 59 | sb.append(" ["); 60 | sb.append("Hash = ").append(hashCode()); 61 | sb.append(", adminUserId=").append(adminUserId); 62 | sb.append(", loginUserName=").append(loginUserName); 63 | sb.append(", loginPassword=").append(loginPassword); 64 | sb.append(", nickName=").append(nickName); 65 | sb.append(", locked=").append(locked); 66 | sb.append("]"); 67 | return sb.toString(); 68 | } 69 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/entity/MallShoppingCartItem.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.entity; 3 | 4 | import java.util.Date; 5 | 6 | public class MallShoppingCartItem { 7 | private Long cartItemId; 8 | 9 | private Long userId; 10 | 11 | private Long goodsId; 12 | 13 | private Integer goodsCount; 14 | 15 | private Byte isDeleted; 16 | 17 | private Date createTime; 18 | 19 | private Date updateTime; 20 | 21 | public Long getCartItemId() { 22 | return cartItemId; 23 | } 24 | 25 | public void setCartItemId(Long cartItemId) { 26 | this.cartItemId = cartItemId; 27 | } 28 | 29 | public Long getUserId() { 30 | return userId; 31 | } 32 | 33 | public void setUserId(Long userId) { 34 | this.userId = userId; 35 | } 36 | 37 | public Long getGoodsId() { 38 | return goodsId; 39 | } 40 | 41 | public void setGoodsId(Long goodsId) { 42 | this.goodsId = goodsId; 43 | } 44 | 45 | public Integer getGoodsCount() { 46 | return goodsCount; 47 | } 48 | 49 | public void setGoodsCount(Integer goodsCount) { 50 | this.goodsCount = goodsCount; 51 | } 52 | 53 | public Byte getIsDeleted() { 54 | return isDeleted; 55 | } 56 | 57 | public void setIsDeleted(Byte isDeleted) { 58 | this.isDeleted = isDeleted; 59 | } 60 | 61 | public Date getCreateTime() { 62 | return createTime; 63 | } 64 | 65 | public void setCreateTime(Date createTime) { 66 | this.createTime = createTime; 67 | } 68 | 69 | public Date getUpdateTime() { 70 | return updateTime; 71 | } 72 | 73 | public void setUpdateTime(Date updateTime) { 74 | this.updateTime = updateTime; 75 | } 76 | 77 | @Override 78 | public String toString() { 79 | StringBuilder sb = new StringBuilder(); 80 | sb.append(getClass().getSimpleName()); 81 | sb.append(" ["); 82 | sb.append("Hash = ").append(hashCode()); 83 | sb.append(", cartItemId=").append(cartItemId); 84 | sb.append(", userId=").append(userId); 85 | sb.append(", goodsId=").append(goodsId); 86 | sb.append(", goodsCount=").append(goodsCount); 87 | sb.append(", isDeleted=").append(isDeleted); 88 | sb.append(", createTime=").append(createTime); 89 | sb.append(", updateTime=").append(updateTime); 90 | sb.append("]"); 91 | return sb.toString(); 92 | } 93 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/entity/StockNumDTO.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.entity; 3 | 4 | /** 5 | * 库存修改所需实体 6 | */ 7 | public class StockNumDTO { 8 | private Long goodsId; 9 | 10 | private Integer goodsCount; 11 | 12 | public Long getGoodsId() { 13 | return goodsId; 14 | } 15 | 16 | public void setGoodsId(Long goodsId) { 17 | this.goodsId = goodsId; 18 | } 19 | 20 | public Integer getGoodsCount() { 21 | return goodsCount; 22 | } 23 | 24 | public void setGoodsCount(Integer goodsCount) { 25 | this.goodsCount = goodsCount; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/interceptor/AdminLoginInterceptor.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.interceptor; 3 | 4 | import org.springframework.stereotype.Component; 5 | import org.springframework.web.servlet.HandlerInterceptor; 6 | import org.springframework.web.servlet.ModelAndView; 7 | 8 | import javax.servlet.http.HttpServletRequest; 9 | import javax.servlet.http.HttpServletResponse; 10 | 11 | @Component 12 | public class AdminLoginInterceptor implements HandlerInterceptor { 13 | 14 | @Override 15 | public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o) throws Exception { 16 | String requestServletPath = request.getServletPath(); 17 | if (requestServletPath.startsWith("/admin") && null == request.getSession().getAttribute("loginUser")) { 18 | request.getSession().setAttribute("errorMsg", "请登陆"); 19 | response.sendRedirect(request.getContextPath() + "/admin/login"); 20 | return false; 21 | } else { 22 | request.getSession().removeAttribute("errorMsg"); 23 | return true; 24 | } 25 | } 26 | 27 | @Override 28 | public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception { 29 | } 30 | 31 | @Override 32 | public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception { 33 | 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/interceptor/MallCartNumberInterceptor.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.interceptor; 3 | 4 | import ltd.mall.common.Constants; 5 | import ltd.mall.controller.vo.MallUserVO; 6 | import ltd.mall.dao.MallShoppingCartItemMapper; 7 | import org.springframework.beans.factory.annotation.Autowired; 8 | import org.springframework.stereotype.Component; 9 | import org.springframework.web.servlet.HandlerInterceptor; 10 | import org.springframework.web.servlet.ModelAndView; 11 | 12 | import javax.servlet.http.HttpServletRequest; 13 | import javax.servlet.http.HttpServletResponse; 14 | 15 | 16 | @Component 17 | public class MallCartNumberInterceptor implements HandlerInterceptor { 18 | 19 | @Autowired 20 | private MallShoppingCartItemMapper mallShoppingCartItemMapper; 21 | 22 | @Override 23 | public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o) throws Exception { 24 | //购物车中的数量会更改,但是在这些接口中并没有对session中的数据做修改,这里统一处理一下 25 | if (null != request.getSession() && null != request.getSession().getAttribute(Constants.MALL_USER_SESSION_KEY)) { 26 | //如果当前为登陆状态,就查询数据库并设置购物车中的数量值 27 | MallUserVO mallUserVO = (MallUserVO) request.getSession().getAttribute(Constants.MALL_USER_SESSION_KEY); 28 | //设置购物车中的数量 29 | mallUserVO.setShopCartItemCount(mallShoppingCartItemMapper.selectCountByUserId(mallUserVO.getUserId())); 30 | request.getSession().setAttribute(Constants.MALL_USER_SESSION_KEY, mallUserVO); 31 | } 32 | return true; 33 | } 34 | 35 | @Override 36 | public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception { 37 | } 38 | 39 | @Override 40 | public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception { 41 | 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/interceptor/MallLoginInterceptor.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.interceptor; 3 | 4 | import ltd.mall.common.Constants; 5 | import org.springframework.stereotype.Component; 6 | import org.springframework.web.servlet.HandlerInterceptor; 7 | import org.springframework.web.servlet.ModelAndView; 8 | 9 | import javax.servlet.http.HttpServletRequest; 10 | import javax.servlet.http.HttpServletResponse; 11 | 12 | 13 | @Component 14 | public class MallLoginInterceptor implements HandlerInterceptor { 15 | 16 | @Override 17 | public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o) throws Exception { 18 | if (null == request.getSession().getAttribute(Constants.MALL_USER_SESSION_KEY)) { 19 | response.sendRedirect(request.getContextPath() + "/login"); 20 | return false; 21 | } else { 22 | return true; 23 | } 24 | } 25 | 26 | @Override 27 | public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception { 28 | } 29 | 30 | @Override 31 | public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception { 32 | 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/AdminUserService.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.service; 2 | 3 | import ltd.mall.entity.AdminUser; 4 | 5 | public interface AdminUserService { 6 | 7 | AdminUser login(String userName, String password); 8 | 9 | /** 10 | * 获取用户信息 11 | * 12 | * @param loginUserId 13 | * @return 14 | */ 15 | AdminUser getUserDetailById(Integer loginUserId); 16 | 17 | /** 18 | * 修改当前登录用户的密码 19 | * 20 | * @param loginUserId 21 | * @param originalPassword 22 | * @param newPassword 23 | * @return 24 | */ 25 | Boolean updatePassword(Integer loginUserId, String originalPassword, String newPassword); 26 | 27 | /** 28 | * 修改当前登录用户的名称信息 29 | * 30 | * @param loginUserId 31 | * @param loginUserName 32 | * @param nickName 33 | * @return 34 | */ 35 | Boolean updateName(Integer loginUserId, String loginUserName, String nickName); 36 | 37 | } 38 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/MallCarouselService.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.service; 2 | 3 | import ltd.mall.controller.vo.MallIndexCarouselVO; 4 | import ltd.mall.entity.Carousel; 5 | import ltd.mall.util.PageQueryUtil; 6 | import ltd.mall.util.PageResult; 7 | 8 | import java.util.List; 9 | 10 | public interface MallCarouselService { 11 | /** 12 | * 后台分页 13 | * 14 | * @param pageUtil 15 | * @return 16 | */ 17 | PageResult getCarouselPage(PageQueryUtil pageUtil); 18 | 19 | String saveCarousel(Carousel carousel); 20 | 21 | String updateCarousel(Carousel carousel); 22 | 23 | Carousel getCarouselById(Integer id); 24 | 25 | Boolean deleteBatch(Integer[] ids); 26 | 27 | /** 28 | * 返回固定数量的轮播图对象(首页调用) 29 | * 30 | * @param number 31 | * @return 32 | */ 33 | List getCarouselsForIndex(int number); 34 | } 35 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/MallCategoryService.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.service; 3 | 4 | import ltd.mall.controller.vo.MallIndexCategoryVO; 5 | import ltd.mall.controller.vo.SearchPageCategoryVO; 6 | import ltd.mall.entity.GoodsCategory; 7 | import ltd.mall.util.PageQueryUtil; 8 | import ltd.mall.util.PageResult; 9 | 10 | import java.util.List; 11 | 12 | public interface MallCategoryService { 13 | /** 14 | * 后台分页 15 | * 16 | * @param pageUtil 17 | * @return 18 | */ 19 | PageResult getCategorisPage(PageQueryUtil pageUtil); 20 | 21 | String saveCategory(GoodsCategory goodsCategory); 22 | 23 | String updateGoodsCategory(GoodsCategory goodsCategory); 24 | 25 | GoodsCategory getGoodsCategoryById(Long id); 26 | 27 | Boolean deleteBatch(Integer[] ids); 28 | 29 | /** 30 | * 返回分类数据(首页调用) 31 | * 32 | * @return 33 | */ 34 | List getCategoriesForIndex(); 35 | 36 | /** 37 | * 返回分类数据(搜索页调用) 38 | * 39 | * @param categoryId 40 | * @return 41 | */ 42 | SearchPageCategoryVO getCategoriesForSearch(Long categoryId); 43 | 44 | /** 45 | * 根据parentId和level获取分类列表 46 | * 47 | * @param parentIds 48 | * @param categoryLevel 49 | * @return 50 | */ 51 | List selectByLevelAndParentIdsAndNumber(List parentIds, int categoryLevel); 52 | } 53 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/MallGoodsService.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.service; 3 | 4 | import ltd.mall.entity.MallGoods; 5 | import ltd.mall.util.PageQueryUtil; 6 | import ltd.mall.util.PageResult; 7 | 8 | import java.util.List; 9 | 10 | public interface MallGoodsService { 11 | /** 12 | * 后台分页 13 | * 14 | * @param pageUtil 15 | * @return 16 | */ 17 | PageResult getMallGoodsPage(PageQueryUtil pageUtil); 18 | 19 | /** 20 | * 添加商品 21 | * 22 | * @param goods 23 | * @return 24 | */ 25 | String saveMallGoods(MallGoods goods); 26 | 27 | /** 28 | * 批量新增商品数据 29 | * 30 | * @param mallGoodsList 31 | * @return 32 | */ 33 | void batchSaveMallGoods(List mallGoodsList); 34 | 35 | /** 36 | * 修改商品信息 37 | * 38 | * @param goods 39 | * @return 40 | */ 41 | String updateMallGoods(MallGoods goods); 42 | 43 | /** 44 | * 获取商品详情 45 | * 46 | * @param id 47 | * @return 48 | */ 49 | MallGoods getMallGoodsById(Long id); 50 | 51 | /** 52 | * 批量修改销售状态(上架下架) 53 | * 54 | * @param ids 55 | * @return 56 | */ 57 | Boolean batchUpdateSellStatus(Long[] ids,int sellStatus); 58 | 59 | /** 60 | * 商品搜索 61 | * 62 | * @param pageUtil 63 | * @return 64 | */ 65 | PageResult searchMallGoods(PageQueryUtil pageUtil); 66 | } 67 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/MallIndexConfigService.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.service; 3 | 4 | import ltd.mall.controller.vo.MallIndexConfigGoodsVO; 5 | import ltd.mall.entity.IndexConfig; 6 | import ltd.mall.util.PageQueryUtil; 7 | import ltd.mall.util.PageResult; 8 | 9 | import java.util.List; 10 | 11 | public interface MallIndexConfigService { 12 | /** 13 | * 后台分页 14 | * 15 | * @param pageUtil 16 | * @return 17 | */ 18 | PageResult getConfigsPage(PageQueryUtil pageUtil); 19 | 20 | String saveIndexConfig(IndexConfig indexConfig); 21 | 22 | String updateIndexConfig(IndexConfig indexConfig); 23 | 24 | IndexConfig getIndexConfigById(Long id); 25 | 26 | /** 27 | * 返回固定数量的首页配置商品对象(首页调用) 28 | * 29 | * @param number 30 | * @return 31 | */ 32 | List getConfigGoodsesForIndex(int configType, int number); 33 | 34 | Boolean deleteBatch(Long[] ids); 35 | } 36 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/MallOrderService.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.service; 3 | 4 | import ltd.mall.controller.vo.MallOrderDetailVO; 5 | import ltd.mall.controller.vo.MallOrderItemVO; 6 | import ltd.mall.controller.vo.MallShoppingCartItemVO; 7 | import ltd.mall.controller.vo.MallUserVO; 8 | import ltd.mall.entity.MallOrder; 9 | import ltd.mall.util.PageQueryUtil; 10 | import ltd.mall.util.PageResult; 11 | 12 | import java.util.List; 13 | 14 | public interface MallOrderService { 15 | /** 16 | * 后台分页 17 | * 18 | * @param pageUtil 19 | * @return 20 | */ 21 | PageResult getMallOrdersPage(PageQueryUtil pageUtil); 22 | 23 | /** 24 | * 订单信息修改 25 | * 26 | * @param mallOrder 27 | * @return 28 | */ 29 | String updateOrderInfo(MallOrder mallOrder); 30 | 31 | /** 32 | * 配货 33 | * 34 | * @param ids 35 | * @return 36 | */ 37 | String checkDone(Long[] ids); 38 | 39 | /** 40 | * 出库 41 | * 42 | * @param ids 43 | * @return 44 | */ 45 | String checkOut(Long[] ids); 46 | 47 | /** 48 | * 关闭订单 49 | * 50 | * @param ids 51 | * @return 52 | */ 53 | String closeOrder(Long[] ids); 54 | 55 | /** 56 | * 保存订单 57 | * 58 | * @param user 59 | * @param myShoppingCartItems 60 | * @return 61 | */ 62 | String saveOrder(MallUserVO user, List myShoppingCartItems); 63 | 64 | /** 65 | * 获取订单详情 66 | * 67 | * @param orderNo 68 | * @param userId 69 | * @return 70 | */ 71 | MallOrderDetailVO getOrderDetailByOrderNo(String orderNo, Long userId); 72 | 73 | /** 74 | * 获取订单详情 75 | * 76 | * @param orderNo 77 | * @return 78 | */ 79 | MallOrder getMallOrderByOrderNo(String orderNo); 80 | 81 | /** 82 | * 我的订单列表 83 | * 84 | * @param pageUtil 85 | * @return 86 | */ 87 | PageResult getMyOrders(PageQueryUtil pageUtil); 88 | 89 | /** 90 | * 手动取消订单 91 | * 92 | * @param orderNo 93 | * @param userId 94 | * @return 95 | */ 96 | String cancelOrder(String orderNo, Long userId); 97 | 98 | /** 99 | * 确认收货 100 | * 101 | * @param orderNo 102 | * @param userId 103 | * @return 104 | */ 105 | String finishOrder(String orderNo, Long userId); 106 | 107 | String paySuccess(String orderNo, int payType); 108 | 109 | List getOrderItems(Long id); 110 | } 111 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/MallShoppingCartService.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.service; 3 | 4 | import ltd.mall.controller.vo.MallShoppingCartItemVO; 5 | import ltd.mall.entity.MallShoppingCartItem; 6 | 7 | import java.util.List; 8 | 9 | public interface MallShoppingCartService { 10 | 11 | /** 12 | * 保存商品至购物车中 13 | * 14 | * @param mallShoppingCartItem 15 | * @return 16 | */ 17 | String saveMallCartItem(MallShoppingCartItem mallShoppingCartItem); 18 | 19 | /** 20 | * 修改购物车中的属性 21 | * 22 | * @param mallShoppingCartItem 23 | * @return 24 | */ 25 | String updateMallCartItem(MallShoppingCartItem mallShoppingCartItem); 26 | 27 | /** 28 | * 获取购物项详情 29 | * 30 | * @param mallShoppingCartItemId 31 | * @return 32 | */ 33 | MallShoppingCartItem getMallCartItemById(Long mallShoppingCartItemId); 34 | 35 | /** 36 | * 删除购物车中的商品 37 | * 38 | * @param mallShoppingCartItemId 39 | * @return 40 | */ 41 | Boolean deleteById(Long mallShoppingCartItemId); 42 | 43 | /** 44 | * 获取我的购物车中的列表数据 45 | * 46 | * @param mallUserId 47 | * @return 48 | */ 49 | List getMyShoppingCartItems(Long mallUserId); 50 | } 51 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/MallUserService.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.service; 3 | 4 | import ltd.mall.controller.vo.MallUserVO; 5 | import ltd.mall.entity.MallUser; 6 | import ltd.mall.util.PageQueryUtil; 7 | import ltd.mall.util.PageResult; 8 | 9 | import javax.servlet.http.HttpSession; 10 | 11 | public interface MallUserService { 12 | /** 13 | * 后台分页 14 | * 15 | * @param pageUtil 16 | * @return 17 | */ 18 | PageResult getMallUsersPage(PageQueryUtil pageUtil); 19 | 20 | /** 21 | * 用户注册 22 | * 23 | * @param loginName 24 | * @param password 25 | * @return 26 | */ 27 | String register(String loginName, String password); 28 | 29 | /** 30 | * 登录 31 | * 32 | * @param loginName 33 | * @param passwordMD5 34 | * @param httpSession 35 | * @return 36 | */ 37 | String login(String loginName, String passwordMD5, HttpSession httpSession); 38 | 39 | /** 40 | * 用户信息修改并返回最新的用户信息 41 | * 42 | * @param mallUser 43 | * @return 44 | */ 45 | MallUserVO updateUserInfo(MallUser mallUser, HttpSession httpSession); 46 | 47 | /** 48 | * 用户禁用与解除禁用(0-未锁定 1-已锁定) 49 | * 50 | * @param ids 51 | * @param lockStatus 52 | * @return 53 | */ 54 | Boolean lockUsers(Integer[] ids, int lockStatus); 55 | } 56 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/service/impl/AdminUserServiceImpl.java: -------------------------------------------------------------------------------- 1 | 2 | package ltd.mall.service.impl; 3 | 4 | import ltd.mall.entity.AdminUser; 5 | import ltd.mall.dao.AdminUserMapper; 6 | import ltd.mall.service.AdminUserService; 7 | import ltd.mall.util.MD5Util; 8 | import org.springframework.stereotype.Service; 9 | 10 | import javax.annotation.Resource; 11 | 12 | @Service 13 | public class AdminUserServiceImpl implements AdminUserService { 14 | 15 | @Resource 16 | private AdminUserMapper adminUserMapper; 17 | 18 | @Override 19 | public AdminUser login(String userName, String password) { 20 | String passwordMd5 = MD5Util.MD5Encode(password, "UTF-8"); 21 | return adminUserMapper.login(userName, passwordMd5); 22 | } 23 | 24 | @Override 25 | public AdminUser getUserDetailById(Integer loginUserId) { 26 | return adminUserMapper.selectByPrimaryKey(loginUserId); 27 | } 28 | 29 | @Override 30 | public Boolean updatePassword(Integer loginUserId, String originalPassword, String newPassword) { 31 | AdminUser adminUser = adminUserMapper.selectByPrimaryKey(loginUserId); 32 | //当前用户非空才可以进行更改 33 | if (adminUser != null) { 34 | String originalPasswordMd5 = MD5Util.MD5Encode(originalPassword, "UTF-8"); 35 | String newPasswordMd5 = MD5Util.MD5Encode(newPassword, "UTF-8"); 36 | //比较原密码是否正确 37 | if (originalPasswordMd5.equals(adminUser.getLoginPassword())) { 38 | //设置新密码并修改 39 | adminUser.setLoginPassword(newPasswordMd5); 40 | if (adminUserMapper.updateByPrimaryKeySelective(adminUser) > 0) { 41 | //修改成功则返回true 42 | return true; 43 | } 44 | } 45 | } 46 | return false; 47 | } 48 | 49 | @Override 50 | public Boolean updateName(Integer loginUserId, String loginUserName, String nickName) { 51 | AdminUser adminUser = adminUserMapper.selectByPrimaryKey(loginUserId); 52 | //当前用户非空才可以进行更改 53 | if (adminUser != null) { 54 | //设置新名称并修改 55 | adminUser.setLoginUserName(loginUserName); 56 | adminUser.setNickName(nickName); 57 | if (adminUserMapper.updateByPrimaryKeySelective(adminUser) > 0) { 58 | //修改成功则返回true 59 | return true; 60 | } 61 | } 62 | return false; 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/JsonUtil.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | 4 | import java.io.IOException; 5 | 6 | import com.fasterxml.jackson.core.JsonParseException; 7 | import com.fasterxml.jackson.core.JsonProcessingException; 8 | import com.fasterxml.jackson.databind.JsonMappingException; 9 | import com.fasterxml.jackson.databind.ObjectMapper; 10 | 11 | /** 12 | * 操作json的封装方法 13 | * use:jackson 14 | */ 15 | public class JsonUtil { 16 | /* 17 | * 001.json转换成对象 18 | * @param:传入对象,json字符串 19 | * @return:Object 20 | */ 21 | public static Object jsonToObj(Class objClass, String jsonStr) throws JsonParseException, JsonMappingException, IOException { 22 | ObjectMapper mapper = new ObjectMapper(); 23 | return mapper.readValue(jsonStr, objClass); 24 | } 25 | 26 | /* 27 | * 002.对象转换成json 28 | * @param:传入对象 29 | * @return:json字符串 30 | */ 31 | public static String objToJson(Object obj) throws JsonProcessingException { 32 | ObjectMapper mapper = new ObjectMapper(); 33 | return mapper.writeValueAsString(obj); 34 | } 35 | } -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/MD5Util.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import java.security.MessageDigest; 4 | 5 | 6 | public class MD5Util { 7 | 8 | private static String byteArrayToHexString(byte b[]) { 9 | StringBuffer resultSb = new StringBuffer(); 10 | for (int i = 0; i < b.length; i++) 11 | resultSb.append(byteToHexString(b[i])); 12 | 13 | return resultSb.toString(); 14 | } 15 | 16 | private static String byteToHexString(byte b) { 17 | int n = b; 18 | if (n < 0) 19 | n += 256; 20 | int d1 = n / 16; 21 | int d2 = n % 16; 22 | return hexDigits[d1] + hexDigits[d2]; 23 | } 24 | 25 | public static String MD5Encode(String origin, String charsetname) { 26 | String resultString = null; 27 | try { 28 | resultString = new String(origin); 29 | MessageDigest md = MessageDigest.getInstance("MD5"); 30 | if (charsetname == null || "".equals(charsetname)) 31 | resultString = byteArrayToHexString(md.digest(resultString 32 | .getBytes())); 33 | else 34 | resultString = byteArrayToHexString(md.digest(resultString 35 | .getBytes(charsetname))); 36 | } catch (Exception exception) { 37 | } 38 | return resultString; 39 | } 40 | 41 | private static final String hexDigits[] = {"0", "1", "2", "3", "4", "5", 42 | "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"}; 43 | } 44 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/MallUtils.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import org.springframework.util.StringUtils; 4 | 5 | import java.net.URI; 6 | 7 | /** 8 | * @author 13 9 | */ 10 | public class MallUtils { 11 | 12 | public static URI getHost(URI uri) { 13 | URI effectiveURI = null; 14 | try { 15 | effectiveURI = new URI(uri.getScheme(), uri.getUserInfo(), uri.getHost(), uri.getPort(), null, null, null); 16 | } catch (Throwable var4) { 17 | effectiveURI = null; 18 | } 19 | return effectiveURI; 20 | } 21 | 22 | public static String cleanString(String value) { 23 | if (StringUtils.isEmpty(value)) { 24 | return ""; 25 | } 26 | value = value.toLowerCase(); 27 | value = value.replaceAll("<", "& lt;").replaceAll(">", "& gt;"); 28 | value = value.replaceAll("\\(", "& #40;").replaceAll("\\)", "& #41;"); 29 | value = value.replaceAll("'", "& #39;"); 30 | value = value.replaceAll("onload", "0nl0ad"); 31 | value = value.replaceAll("xml", "xm1"); 32 | value = value.replaceAll("window", "wind0w"); 33 | value = value.replaceAll("click", "cl1ck"); 34 | value = value.replaceAll("var", "v0r"); 35 | value = value.replaceAll("let", "1et"); 36 | value = value.replaceAll("function", "functi0n"); 37 | value = value.replaceAll("return", "retu1n"); 38 | value = value.replaceAll("$", ""); 39 | value = value.replaceAll("document", "d0cument"); 40 | value = value.replaceAll("const", "c0nst"); 41 | value = value.replaceAll("eval\\((.*)\\)", ""); 42 | value = value.replaceAll("[\\\"\\\'][\\s]*javascript:(.*)[\\\"\\\']", "\"\""); 43 | value = value.replaceAll("script", "scr1pt"); 44 | value = value.replaceAll("insert", "1nsert"); 45 | value = value.replaceAll("drop", "dr0p"); 46 | value = value.replaceAll("create", "cre0ate"); 47 | value = value.replaceAll("update", "upd0ate"); 48 | value = value.replaceAll("alter", "a1ter"); 49 | value = value.replaceAll("from", "fr0m"); 50 | value = value.replaceAll("where", "wh1re"); 51 | value = value.replaceAll("database", "data1base"); 52 | value = value.replaceAll("table", "tab1e"); 53 | value = value.replaceAll("tb", "tb0"); 54 | return value; 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/NumberUtil.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import java.util.regex.Matcher; 4 | import java.util.regex.Pattern; 5 | 6 | 7 | public class NumberUtil { 8 | 9 | private NumberUtil() { 10 | } 11 | 12 | 13 | /** 14 | * 判断是否为11位电话号码 15 | * 16 | * @param phone 17 | * @return 18 | */ 19 | public static boolean isPhone(String phone) { 20 | Pattern pattern = Pattern.compile("^((13[0-9])|(14[5,7])|(15[^4,\\D])|(17[0-8])|(18[0-9]))\\d{8}$"); 21 | Matcher matcher = pattern.matcher(phone); 22 | return matcher.matches(); 23 | } 24 | 25 | /** 26 | * 生成指定长度的随机数 27 | * 28 | * @param length 29 | * @return 30 | */ 31 | public static int genRandomNum(int length) { 32 | int num = 1; 33 | double random = Math.random(); 34 | if (random < 0.1) { 35 | random = random + 0.1; 36 | } 37 | for (int i = 0; i < length; i++) { 38 | num = num * 10; 39 | } 40 | return (int) ((random * num)); 41 | } 42 | 43 | /** 44 | * 生成订单流水号 45 | * 46 | * @return 47 | */ 48 | public static String genOrderNo() { 49 | StringBuffer buffer = new StringBuffer(String.valueOf(System.currentTimeMillis())); 50 | int num = genRandomNum(4); 51 | buffer.append(num); 52 | return buffer.toString(); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/PageQueryUtil.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import java.util.LinkedHashMap; 4 | import java.util.Map; 5 | 6 | 7 | public class PageQueryUtil extends LinkedHashMap { 8 | //当前页码 9 | private int page; 10 | //每页条数 11 | private int limit; 12 | 13 | public PageQueryUtil(Map params) { 14 | this.putAll(params); 15 | 16 | //分页参数 17 | this.page = Integer.parseInt(params.get("page").toString()); 18 | this.limit = Integer.parseInt(params.get("limit").toString()); 19 | this.put("start", (page - 1) * limit); 20 | this.put("page", page); 21 | this.put("limit", limit); 22 | } 23 | 24 | 25 | public int getPage() { 26 | return page; 27 | } 28 | 29 | public void setPage(int page) { 30 | this.page = page; 31 | } 32 | 33 | public int getLimit() { 34 | return limit; 35 | } 36 | 37 | public void setLimit(int limit) { 38 | this.limit = limit; 39 | } 40 | 41 | @Override 42 | public String toString() { 43 | return "PageUtil{" + 44 | "page=" + page + 45 | ", limit=" + limit + 46 | '}'; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/PageResult.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import java.io.Serializable; 4 | import java.util.List; 5 | 6 | 7 | public class PageResult implements Serializable { 8 | 9 | //总记录数 10 | private int totalCount; 11 | //每页记录数 12 | private int pageSize; 13 | //总页数 14 | private int totalPage; 15 | //当前页数 16 | private int currPage; 17 | //列表数据 18 | private List list; 19 | 20 | /** 21 | * 分页 22 | * 23 | * @param list 列表数据 24 | * @param totalCount 总记录数 25 | * @param pageSize 每页记录数 26 | * @param currPage 当前页数 27 | */ 28 | public PageResult(List list, int totalCount, int pageSize, int currPage) { 29 | this.list = list; 30 | this.totalCount = totalCount; 31 | this.pageSize = pageSize; 32 | this.currPage = currPage; 33 | this.totalPage = (int) Math.ceil((double) totalCount / pageSize); 34 | } 35 | 36 | public int getTotalCount() { 37 | return totalCount; 38 | } 39 | 40 | public void setTotalCount(int totalCount) { 41 | this.totalCount = totalCount; 42 | } 43 | 44 | public int getPageSize() { 45 | return pageSize; 46 | } 47 | 48 | public void setPageSize(int pageSize) { 49 | this.pageSize = pageSize; 50 | } 51 | 52 | public int getTotalPage() { 53 | return totalPage; 54 | } 55 | 56 | public void setTotalPage(int totalPage) { 57 | this.totalPage = totalPage; 58 | } 59 | 60 | public int getCurrPage() { 61 | return currPage; 62 | } 63 | 64 | public void setCurrPage(int currPage) { 65 | this.currPage = currPage; 66 | } 67 | 68 | public List getList() { 69 | return list; 70 | } 71 | 72 | public void setList(List list) { 73 | this.list = list; 74 | } 75 | 76 | } 77 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/PatternUtil.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import java.util.regex.Matcher; 4 | import java.util.regex.Pattern; 5 | 6 | /** 7 | * 正则工具类 8 | * 9 | */ 10 | public class PatternUtil { 11 | 12 | /** 13 | * 匹配邮箱正则 14 | */ 15 | private static final Pattern VALID_EMAIL_ADDRESS_REGEX = 16 | Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE); 17 | 18 | /** 19 | * 验证只包含中英文和数字的字符串 20 | * 21 | * @param keyword 22 | * @return 23 | */ 24 | public static Boolean validKeyword(String keyword) { 25 | String regex = "^[a-zA-Z0-9\u4E00-\u9FA5]+$"; 26 | Pattern pattern = Pattern.compile(regex); 27 | Matcher match = pattern.matcher(keyword); 28 | return match.matches(); 29 | } 30 | 31 | 32 | /** 33 | * 判断是否是邮箱 34 | * 35 | * @param emailStr 36 | * @return 37 | */ 38 | public static boolean isEmail(String emailStr) { 39 | Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr); 40 | return matcher.find(); 41 | } 42 | 43 | /** 44 | * 判断是否是网址 45 | * 46 | * @param urlString 47 | * @return 48 | */ 49 | public static boolean isURL(String urlString) { 50 | String regex = "^([hH][tT]{2}[pP]:/*|[hH][tT]{2}[pP][sS]:/*|[fF][tT][pP]:/*)(([A-Za-z0-9-~]+).)+([A-Za-z0-9-~\\/])+(\\?{0,1}(([A-Za-z0-9-~]+\\={0,1})([A-Za-z0-9-~]*)\\&{0,1})*)$"; 51 | Pattern pattern = Pattern.compile(regex); 52 | if (pattern.matcher(urlString).matches()) { 53 | return true; 54 | } else { 55 | return false; 56 | } 57 | } 58 | 59 | } 60 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/Result.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import java.io.Serializable; 4 | 5 | public class Result implements Serializable { 6 | private static final long serialVersionUID = 1L; 7 | private int resultCode; 8 | private String message; 9 | private T data; 10 | 11 | public Result() { 12 | } 13 | 14 | public Result(int resultCode, String message) { 15 | this.resultCode = resultCode; 16 | this.message = message; 17 | } 18 | 19 | public int getResultCode() { 20 | return resultCode; 21 | } 22 | 23 | public void setResultCode(int resultCode) { 24 | this.resultCode = resultCode; 25 | } 26 | 27 | public String getMessage() { 28 | return message; 29 | } 30 | 31 | public void setMessage(String message) { 32 | this.message = message; 33 | } 34 | 35 | public T getData() { 36 | return data; 37 | } 38 | 39 | public void setData(T data) { 40 | this.data = data; 41 | } 42 | 43 | @Override 44 | public String toString() { 45 | return "Result{" + 46 | "resultCode=" + resultCode + 47 | ", message='" + message + '\'' + 48 | ", data=" + data + 49 | '}'; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/ResultGenerator.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import org.springframework.util.StringUtils; 4 | 5 | /** 6 | * 响应结果生成工具 7 | */ 8 | public class ResultGenerator { 9 | private static final String DEFAULT_SUCCESS_MESSAGE = "SUCCESS"; 10 | private static final String DEFAULT_FAIL_MESSAGE = "FAIL"; 11 | private static final int RESULT_CODE_SUCCESS = 200; 12 | private static final int RESULT_CODE_SERVER_ERROR = 500; 13 | 14 | public static Result genSuccessResult() { 15 | Result result = new Result(); 16 | result.setResultCode(RESULT_CODE_SUCCESS); 17 | result.setMessage(DEFAULT_SUCCESS_MESSAGE); 18 | return result; 19 | } 20 | 21 | public static Result genSuccessResult(String message) { 22 | Result result = new Result(); 23 | result.setResultCode(RESULT_CODE_SUCCESS); 24 | result.setMessage(message); 25 | return result; 26 | } 27 | 28 | public static Result genSuccessResult(Object data) { 29 | Result result = new Result(); 30 | result.setResultCode(RESULT_CODE_SUCCESS); 31 | result.setMessage(DEFAULT_SUCCESS_MESSAGE); 32 | result.setData(data); 33 | return result; 34 | } 35 | 36 | public static Result genFailResult(String message) { 37 | Result result = new Result(); 38 | result.setResultCode(RESULT_CODE_SERVER_ERROR); 39 | if (StringUtils.isEmpty(message)) { 40 | result.setMessage(DEFAULT_FAIL_MESSAGE); 41 | } else { 42 | result.setMessage(message); 43 | } 44 | return result; 45 | } 46 | 47 | public static Result genErrorResult(int code, String message) { 48 | Result result = new Result(); 49 | result.setResultCode(code); 50 | result.setMessage(message); 51 | return result; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /src/main/java/ltd/mall/util/SystemUtil.java: -------------------------------------------------------------------------------- 1 | package ltd.mall.util; 2 | 3 | import java.math.BigInteger; 4 | import java.security.MessageDigest; 5 | 6 | /** 7 | */ 8 | public class SystemUtil { 9 | 10 | private SystemUtil() { 11 | } 12 | 13 | 14 | /** 15 | * 登录或注册成功后,生成保持用户登录状态会话token值 16 | * 17 | * @param src:为用户最新一次登录时的now()+user.id+random(4) 18 | * @return 19 | */ 20 | public static String genToken(String src) { 21 | if (null == src || "".equals(src)) { 22 | return null; 23 | } 24 | try { 25 | MessageDigest md = MessageDigest.getInstance("MD5"); 26 | md.update(src.getBytes()); 27 | String result = new BigInteger(1, md.digest()).toString(16); 28 | if (result.length() == 31) { 29 | result = result + "-"; 30 | } 31 | System.out.println(result); 32 | return result; 33 | } catch (Exception e) { 34 | return null; 35 | } 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | server.port=8088 3 | spring.thymeleaf.cache=false 4 | spring.datasource.name=datasource 5 | spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver 6 | spring.datasource.url=jdbc:mysql://localhost:3306/graduation_mall_db?useUnicode=true&serverTimezone=Asia/Shanghai&characterEncoding=utf8&autoReconnect=true&useSSL=false&allowMultiQueries=true 7 | spring.datasource.username=root 8 | spring.datasource.password=123456 9 | spring.datasource.hikari.minimum-idle=5 10 | spring.datasource.hikari.maximum-pool-size=15 11 | spring.datasource.hikari.auto-commit=true 12 | spring.datasource.hikari.idle-timeout=30000 13 | spring.datasource.hikari.pool-name=hikariCP 14 | spring.datasource.hikari.max-lifetime=30000 15 | spring.datasource.hikari.connection-timeout=30000 16 | spring.datasource.hikari.connection-test-query=SELECT 1 17 | # mybatis config 18 | mybatis.mapper-locations=classpath:mapper/*Mapper.xml -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/css/main.css: -------------------------------------------------------------------------------- 1 | html { overflow-x:hidden; } 2 | .content-header { 3 | position: relative; 4 | padding: 0 0 3px 8px 5 | } 6 | 7 | .content-header>.breadcrumb { 8 | position: relative; 9 | top: 0; 10 | right: 0; 11 | float: none; 12 | margin-top: 0px; 13 | padding-left: 10px; 14 | background: #ecf0f5; 15 | } 16 | 17 | .main-footer { 18 | padding: 7px; 19 | color: #444; 20 | border-top: 1px solid #eee; 21 | } 22 | 23 | [v-cloak] { 24 | display: none; 25 | } 26 | 27 | .grid-btn{ 28 | margin-bottom:12px; 29 | display:flex; 30 | } 31 | .grid-btn .btn{ 32 | margin-right:10px; 33 | } 34 | .pointer{cursor: pointer;} 35 | 36 | .ml-10 { margin-left:0 !important; } 37 | @media (min-width: 768px) { 38 | .ml-10 { margin-left:10px !important; } 39 | .col-sm-10 {width: 70%;padding-left: 0px;} 40 | .col-sm-2 {width: 24%;} 41 | } 42 | tbody > tr > th {font-weight: normal; } 43 | .panel .table { margin:0 0; } 44 | .panel .pagination { margin:0; } 45 | .panel-default>.panel-heading {background-color: #f5f5f5;} 46 | .row{ 47 | border-top: 1px solid #ddd; 48 | margin:0; 49 | padding:20px 2px 0px 2px; 50 | } 51 | .col-xs-6{padding-left: 0px;padding-right: 0px;} 52 | .form-horizontal .form-group {margin-left:0px;margin-right:0px;} 53 | .form-horizontal{ 54 | width:550px;padding-top:20px; 55 | } 56 | 57 | .dropdown-donate-lg { 58 | min-width: 120px; 59 | max-width: 120px; 60 | padding: 0; 61 | } 62 | 63 | ul.thumbnails.image_picker_selector { 64 | overflow: auto; 65 | list-style-image: none; 66 | list-style-position: outside; 67 | list-style-type: none; 68 | padding: 0px; 69 | margin: 0px; } 70 | ul.thumbnails.image_picker_selector li { 71 | margin: 0px 12px 12px 0px; 72 | float: left; } 73 | ul.thumbnails.image_picker_selector li .thumbnail { 74 | padding: 6px; 75 | border: 1px solid #dddddd; } 76 | ul.thumbnails.image_picker_selector li .thumbnail.selected { 77 | background: #0088cc; } 78 | -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/AdminLTELogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/AdminLTELogo.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/boxed-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/boxed-bg.jpg -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/boxed-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/boxed-bg.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/default-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/default-150x150.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/favicon.ico -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/icons.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/img-upload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/img-upload.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/new-bee-logo-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/new-bee-logo-1.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/new-bee-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/new-bee-logo.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/newbee-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/newbee-logo.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/img/no-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/img/no-img.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.css.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.min.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.min.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-grid.min.css.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.css.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.min.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.min.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap-reboot.min.css.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.css.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.min.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.min.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/css/bootstrap.min.css.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.bundle.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/bootstrap/js/bootstrap.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/general/device-pixel-ratio.md: -------------------------------------------------------------------------------- 1 | # Device Pixel Ratio 2 | 3 | By default the chart's canvas will use a 1:1 pixel ratio, unless the physical display has a higher pixel ratio (e.g. Retina displays). 4 | 5 | For applications where a chart will be converted to a bitmap, or printed to a higher DPI medium it can be desirable to render the chart at a higher resolution than the default. 6 | 7 | Setting `devicePixelRatio` to a value other than 1 will force the canvas size to be scaled by that amount, relative to the container size. There should be no visible difference on screen; the difference will only be visible when the image is zoomed or printed. 8 | 9 | ## Configuration Options 10 | 11 | | Name | Type | Default | Description 12 | | ---- | ---- | ------- | ----------- 13 | | `devicePixelRatio` | `Number` | window.devicePixelRatio | Override the window's default devicePixelRatio. 14 | -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/FontAwesome.otf -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.eot -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.woff -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/fonts/fontawesome/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/gitbook-plugin-anchorjs/anchor-style.js: -------------------------------------------------------------------------------- 1 | gitbook.events.bind('start', function(e, config) { 2 | anchors.options = config.anchorjs || {}; 3 | }); 4 | 5 | gitbook.events.bind('page.change', function() { 6 | anchors.add('h1,h2,h3,h4,h5'); 7 | }); 8 | -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/gitbook-plugin-chartjs/chartjs-plugin-deferred.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * chartjs-plugin-deferred 3 | * http://chartjs.org/ 4 | * Version: 0.2.0 5 | * 6 | * Copyright 2016 Simon Brunel 7 | * Released under the MIT license 8 | * https://github.com/chartjs/chartjs-plugin-deferred/blob/master/LICENSE.md 9 | */ 10 | "use strict";!function(){function e(e,t){var n=parseInt(e,10);return isNaN(n)?0:"string"==typeof e&&e.indexOf("%")!==-1?n/100*t:n}function t(t){var n=t[s],r=t.chart.canvas;if(null===r.offsetParent)return!1;var a=r.getBoundingClientRect(),f=e(n.yOffset||0,a.height),d=e(n.xOffset||0,a.width);return a.right-d>=0&&a.bottom-f>=0&&a.left+d<=window.innerWidth&&a.top+f<=window.innerHeight}function n(e){var t=l.Deferred.defaults,n=e.options.deferred,r=o.getValueOrDefault;return void 0===n?n={}:"boolean"==typeof n&&(n={enabled:n}),{enabled:r(n.enabled,t.enabled),xOffset:r(n.xOffset,t.xOffset),yOffset:r(n.yOffset,t.yOffset),delay:r(n.delay,t.delay),appeared:!1,delayed:!1,loaded:!1,elements:[]}}function r(e){var n=e.target,r=n[i];r.ticking||(r.ticking=!0,l.platform.defer(function(){var e,n,a=r.instances.slice(),f=a.length;for(n=0;n0)return n.delayed=!0,l.platform.defer(function(){n.delayed=!1,e.update()},n.delay),!1}return!n.delayed&&void 0}})}(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/gitbook-plugin-chartjs/style.css: -------------------------------------------------------------------------------- 1 | .chartjs-wrapper canvas { 2 | -webkit-user-select: none; 3 | -moz-user-select: none; 4 | -ms-user-select: none; 5 | user-select: none; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/gitbook-plugin-ga/plugin.js: -------------------------------------------------------------------------------- 1 | require(["gitbook"], function(gitbook) { 2 | // Load analytics.js 3 | gitbook.events.bind("start", function(e, config) { 4 | (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 5 | (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 6 | m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 7 | })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 8 | 9 | var cfg = config.ga; 10 | ga('create', cfg.token, cfg.configuration); 11 | }); 12 | 13 | // Notify pageview 14 | gitbook.events.bind("page.change", function() { 15 | ga('send', 'pageview', window.location.pathname+window.location.search); 16 | }); 17 | }); 18 | -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/gitbook-plugin-search-plus/search.css: -------------------------------------------------------------------------------- 1 | /* 2 | This CSS only styled the search results section, not the search input 3 | It defines the basic interraction to hide content when displaying results, etc 4 | */ 5 | #book-search-input { 6 | background: inherit; 7 | } 8 | #book-search-results .search-results { 9 | display: none; 10 | } 11 | #book-search-results .search-results ul.search-results-list { 12 | list-style-type: none; 13 | padding-left: 0; 14 | } 15 | #book-search-results .search-results ul.search-results-list li { 16 | margin-bottom: 1.5rem; 17 | padding-bottom: 0.5rem; 18 | /* Highlight results */ 19 | } 20 | #book-search-results .search-results ul.search-results-list li p em { 21 | background-color: rgba(255, 220, 0, 0.4); 22 | font-style: normal; 23 | } 24 | #book-search-results .search-results .no-results { 25 | display: none; 26 | } 27 | #book-search-results.open .search-results { 28 | display: block; 29 | } 30 | #book-search-results.open .search-noresults { 31 | display: none; 32 | } 33 | #book-search-results.no-results .search-results .has-results { 34 | display: none; 35 | } 36 | #book-search-results.no-results .search-results .no-results { 37 | display: block; 38 | } 39 | #book-search-results span.search-highlight-keyword { 40 | background: #ff0; 41 | } 42 | #book-search-results.search-plus .search-results .has-results .search-results-item { 43 | color: inherit; 44 | } -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/images/apple-touch-icon-precomposed-152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/images/apple-touch-icon-precomposed-152.png -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/gitbook/images/favicon.ico -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/chartjs2/docs/style.css: -------------------------------------------------------------------------------- 1 | a.anchorjs-link { 2 | color: rgba(65, 131, 196, 0.1); 3 | font-weight: 400; 4 | text-decoration: none; 5 | transition: color 100ms ease-out; 6 | z-index: 999; 7 | } 8 | 9 | a.anchorjs-link:hover { 10 | color: rgba(65, 131, 196, 1); 11 | } 12 | 13 | sup { 14 | font-size: 0.75em !important; 15 | } 16 | -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/css/font-awesome.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/css/font-awesome.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/css/font-awesome.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/css/font-awesome.css.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/css/font-awesome.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/css/font-awesome.min.css -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.svg -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/jquery/core.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/jquery/core.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/jquery/jquery.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/jquery/jquery.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/jquery/jquery.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/jquery/jquery.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/jquery/jquery.min.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/jquery/jquery.min.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/jquery/jquery.slim.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/jquery/jquery.slim.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/jquery/jquery.slim.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/jquery/jquery.slim.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/jquery/jquery.slim.min.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/jquery/jquery.slim.min.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper-utils.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/esm/popper.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper-utils.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/popper.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/popper.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper-utils.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.min.js -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/dist/js/plugins/popper/umd/popper.min.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admin/dist/js/test.js: -------------------------------------------------------------------------------- 1 | $(function () { 2 | new AjaxUpload('#uploadButton', { 3 | action: '/admin/upload/file', 4 | name: 'file', 5 | autoSubmit: true, 6 | responseType: "json", 7 | onSubmit: function (file, extension) { 8 | if (!(extension && /^(jpg|jpeg|png|gif)$/.test(extension.toLowerCase()))) { 9 | alert('只支持jpg、png、gif格式的文件!'); 10 | return false; 11 | } 12 | }, 13 | onComplete: function (file, r) { 14 | if (r != null && r.resultCode == 200) { 15 | console.log(r.data); 16 | $("#img").attr("src", r.data); 17 | $("#img").attr("style", "width: 100px;display:block;"); 18 | return false; 19 | } else { 20 | alert("error"); 21 | } 22 | } 23 | }); 24 | }); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/admin/plugins/bootstrap/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/jqgrid-5.5.2/ui.jqgrid-bootstrap-ui.css: -------------------------------------------------------------------------------- 1 | /* 2 | To change this license header, choose License Headers in Project Properties. 3 | To change this template file, choose Tools | Templates 4 | and open the template in the editor. 5 | */ 6 | /* 7 | Created on : Mar 16, 2015, 10:24:01 AM 8 | Author : tony 9 | */ 10 | 11 | .ui-jqgrid tr.jqgrow td { height: 26px;} 12 | .ui-jqgrid .ui-pg-input,.ui-jqgrid .ui-jqgrid-toppager .ui-pg-input { height:20px } 13 | .ui-state-hover 14 | { 15 | border: .15em solid; 16 | border-color: inherit; 17 | 18 | } 19 | .ui-jqdialog .ui-jqdialog-titlebar { 20 | height:29px; 21 | border-color: inherit; 22 | } 23 | 24 | .ui-jqdialog-content input.FormElement { 25 | padding: 0.25em; 26 | } 27 | 28 | .fm-button { 29 | height:30px; 30 | } 31 | #nData, #pData { height:20px; width:18px; } -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/az.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/az",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return t+" simvol silin"},inputTooShort:function(e){var t=e.minimum-e.input.length;return t+" simvol daxil edin"},loadingMore:function(){return"Daha çox nəticə yüklənir…"},maximumSelected:function(e){return"Sadəcə "+e.maximum+" element seçə bilərsiniz"},noResults:function(){return"Nəticə tapılmadı"},searching:function(){return"Axtarılır…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/bg.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/bg",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Моля въведете с "+t+" по-малко символ";return t>1&&(n+="a"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Моля въведете още "+t+" символ";return t>1&&(n+="a"),n},loadingMore:function(){return"Зареждат се още…"},maximumSelected:function(e){var t="Можете да направите до "+e.maximum+" ";return e.maximum>1?t+="избора":t+="избор",t},noResults:function(){return"Няма намерени съвпадения"},searching:function(){return"Търсене…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/ca.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ca",[],function(){return{errorLoading:function(){return"La càrrega ha fallat"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Si us plau, elimina "+t+" car";return t==1?n+="àcter":n+="àcters",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Si us plau, introdueix "+t+" car";return t==1?n+="àcter":n+="àcters",n},loadingMore:function(){return"Carregant més resultats…"},maximumSelected:function(e){var t="Només es pot seleccionar "+e.maximum+" element";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No s'han trobat resultats"},searching:function(){return"Cercant…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/cs.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/cs",[],function(){function e(e,t){switch(e){case 2:return t?"dva":"dvě";case 3:return"tři";case 4:return"čtyři"}return""}return{errorLoading:function(){return"Výsledky nemohly být načteny."},inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím zadejte o jeden znak méně":n<=4?"Prosím zadejte o "+e(n,!0)+" znaky méně":"Prosím zadejte o "+n+" znaků méně"},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím zadejte ještě jeden znak":n<=4?"Prosím zadejte ještě další "+e(n,!0)+" znaky":"Prosím zadejte ještě dalších "+n+" znaků"},loadingMore:function(){return"Načítají se další výsledky…"},maximumSelected:function(t){var n=t.maximum;return n==1?"Můžete zvolit jen jednu položku":n<=4?"Můžete zvolit maximálně "+e(n,!1)+" položky":"Můžete zvolit maximálně "+n+" položek"},noResults:function(){return"Nenalezeny žádné položky"},searching:function(){return"Vyhledávání…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/da.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/da",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Angiv venligst "+t+" tegn mindre";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Angiv venligst "+t+" tegn mere";return n},loadingMore:function(){return"Indlæser flere resultater…"},maximumSelected:function(e){var t="Du kan kun vælge "+e.maximum+" emne";return e.maximum!=1&&(t+="r"),t},noResults:function(){return"Ingen resultater fundet"},searching:function(){return"Søger…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/de.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/de",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Bitte "+t+" Zeichen weniger eingeben"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Bitte "+t+" Zeichen mehr eingeben"},loadingMore:function(){return"Lade mehr Ergebnisse…"},maximumSelected:function(e){var t="Sie können nur "+e.maximum+" Eintr";return e.maximum===1?t+="ag":t+="äge",t+=" auswählen",t},noResults:function(){return"Keine Übereinstimmungen gefunden"},searching:function(){return"Suche…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/en.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Please delete "+t+" character";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Please enter "+t+" or more characters";return n},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var t="You can only select "+e.maximum+" item";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/es.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/es",[],function(){return{errorLoading:function(){return"La carga falló"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor, elimine "+t+" car";return t==1?n+="ácter":n+="acteres",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Por favor, introduzca "+t+" car";return t==1?n+="ácter":n+="acteres",n},loadingMore:function(){return"Cargando más resultados…"},maximumSelected:function(e){var t="Sólo puede seleccionar "+e.maximum+" elemento";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No se encontraron resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/et.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/et",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" vähem",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" rohkem",n},loadingMore:function(){return"Laen tulemusi…"},maximumSelected:function(e){var t="Saad vaid "+e.maximum+" tulemus";return e.maximum==1?t+="e":t+="t",t+=" valida",t},noResults:function(){return"Tulemused puuduvad"},searching:function(){return"Otsin…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/eu.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/eu",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gutxiago",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gehiago",n},loadingMore:function(){return"Emaitza gehiago kargatzen…"},maximumSelected:function(e){return e.maximum===1?"Elementu bakarra hauta dezakezu":e.maximum+" elementu hauta ditzakezu soilik"},noResults:function(){return"Ez da bat datorrenik aurkitu"},searching:function(){return"Bilatzen…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/fa.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fa",[],function(){return{errorLoading:function(){return"امکان بارگذاری نتایج وجود ندارد."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="لطفاً "+t+" کاراکتر را حذف نمایید";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="لطفاً تعداد "+t+" کاراکتر یا بیشتر وارد نمایید";return n},loadingMore:function(){return"در حال بارگذاری نتایج بیشتر..."},maximumSelected:function(e){var t="شما تنها می‌توانید "+e.maximum+" آیتم را انتخاب نمایید";return t},noResults:function(){return"هیچ نتیجه‌ای یافت نشد"},searching:function(){return"در حال جستجو..."}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/fi.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fi",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Ole hyvä ja anna "+t+" merkkiä vähemmän"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Ole hyvä ja anna "+t+" merkkiä lisää"},loadingMore:function(){return"Ladataan lisää tuloksia…"},maximumSelected:function(e){return"Voit valita ainoastaan "+e.maximum+" kpl"},noResults:function(){return"Ei tuloksia"},searching:function(){}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/fr.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fr",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Supprimez "+t+" caractère";return t!==1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Saisissez "+t+" caractère";return t!==1&&(n+="s"),n},loadingMore:function(){return"Chargement de résultats supplémentaires…"},maximumSelected:function(e){var t="Vous pouvez seulement sélectionner "+e.maximum+" élément";return e.maximum!==1&&(t+="s"),t},noResults:function(){return"Aucun résultat trouvé"},searching:function(){return"Recherche en cours…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/gl.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/gl",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Engada ";return t===1?n+="un carácter":n+=t+" caracteres",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Elimine ";return t===1?n+="un carácter":n+=t+" caracteres",n},loadingMore:function(){return"Cargando máis resultados…"},maximumSelected:function(e){var t="Só pode ";return e.maximum===1?t+="un elemento":t+=e.maximum+" elementos",t},noResults:function(){return"Non se atoparon resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/he.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/he",[],function(){return{errorLoading:function(){return"התוצאות לא נטענו בהלכה"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="נא למחוק "+t+" תווים";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="נא להכניס "+t+" תווים או יותר";return n},loadingMore:function(){return"טען תוצאות נוספות…"},maximumSelected:function(e){var t="באפשרותך לבחור רק "+e.maximum+" פריטים";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"לא נמצאו תוצאות"},searching:function(){return"מחפש…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/hi.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hi",[],function(){return{errorLoading:function(){return"परिणामों को लोड नहीं किया जा सका।"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" अक्षर को हटा दें";return t>1&&(n=t+" अक्षरों को हटा दें "),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="कृपया "+t+" या अधिक अक्षर दर्ज करें";return n},loadingMore:function(){return"अधिक परिणाम लोड हो रहे है..."},maximumSelected:function(e){var t="आप केवल "+e.maximum+" आइटम का चयन कर सकते हैं";return t},noResults:function(){return"कोई परिणाम नहीं मिला"},searching:function(){return"खोज रहा है..."}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/hr.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hr",[],function(){function e(e){var t=" "+e+" znak";return e%10<5&&e%10>0&&(e%100<5||e%100>19)?e%10>1&&(t+="a"):t+="ova",t}return{inputTooLong:function(t){var n=t.input.length-t.maximum;return"Unesite "+e(n)},inputTooShort:function(t){var n=t.minimum-t.input.length;return"Unesite još "+e(n)},loadingMore:function(){return"Učitavanje rezultata…"},maximumSelected:function(e){return"Maksimalan broj odabranih stavki je "+e.maximum},noResults:function(){return"Nema rezultata"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/hu.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hu",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Túl hosszú. "+t+" karakterrel több, mint kellene."},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Túl rövid. Még "+t+" karakter hiányzik."},loadingMore:function(){return"Töltés…"},maximumSelected:function(e){return"Csak "+e.maximum+" elemet lehet kiválasztani."},noResults:function(){return"Nincs találat."},searching:function(){return"Keresés…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/id.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/id",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Hapuskan "+t+" huruf"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Masukkan "+t+" huruf lagi"},loadingMore:function(){return"Mengambil data…"},maximumSelected:function(e){return"Anda hanya dapat memilih "+e.maximum+" pilihan"},noResults:function(){return"Tidak ada data yang sesuai"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/is.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/is",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vinsamlegast styttið texta um "+t+" staf";return t<=1?n:n+"i"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vinsamlegast skrifið "+t+" staf";return t>1&&(n+="i"),n+=" í viðbót",n},loadingMore:function(){return"Sæki fleiri niðurstöður…"},maximumSelected:function(e){return"Þú getur aðeins valið "+e.maximum+" atriði"},noResults:function(){return"Ekkert fannst"},searching:function(){return"Leita…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/it.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/it",[],function(){return{errorLoading:function(){return"I risultati non possono essere caricati."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Per favore cancella "+t+" caratter";return t!==1?n+="i":n+="e",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Per favore inserisci "+t+" o più caratteri";return n},loadingMore:function(){return"Caricando più risultati…"},maximumSelected:function(e){var t="Puoi selezionare solo "+e.maximum+" element";return e.maximum!==1?t+="i":t+="o",t},noResults:function(){return"Nessun risultato trovato"},searching:function(){return"Sto cercando…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/ko.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ko",[],function(){return{errorLoading:function(){return"결과를 불러올 수 없습니다."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="너무 깁니다. "+t+" 글자 지워주세요.";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="너무 짧습니다. "+t+" 글자 더 입력해주세요.";return n},loadingMore:function(){return"불러오는 중…"},maximumSelected:function(e){var t="최대 "+e.maximum+"개까지만 선택 가능합니다.";return t},noResults:function(){return"결과가 없습니다."},searching:function(){return"검색 중…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/lt.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lt",[],function(){function e(e,t,n,r){return e%100>9&&e%100<21||e%10===0?e%10>1?n:r:t}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Pašalinkite "+n+" simbol";return r+=e(n,"ių","ius","į"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Įrašykite dar "+n+" simbol";return r+=e(n,"ių","ius","į"),r},loadingMore:function(){return"Kraunama daugiau rezultatų…"},maximumSelected:function(t){var n="Jūs galite pasirinkti tik "+t.maximum+" element";return n+=e(t.maximum,"ų","us","ą"),n},noResults:function(){return"Atitikmenų nerasta"},searching:function(){return"Ieškoma…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/lv.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lv",[],function(){function e(e,t,n,r){return e===11?t:e%10===1?n:r}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Lūdzu ievadiet par "+n;return r+=" simbol"+e(n,"iem","u","iem"),r+" mazāk"},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Lūdzu ievadiet vēl "+n;return r+=" simbol"+e(n,"us","u","us"),r},loadingMore:function(){return"Datu ielāde…"},maximumSelected:function(t){var n="Jūs varat izvēlēties ne vairāk kā "+t.maximum;return n+=" element"+e(t.maximum,"us","u","us"),n},noResults:function(){return"Sakritību nav"},searching:function(){return"Meklēšana…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/mk.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/mk",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Ве молиме внесете "+e.maximum+" помалку карактер";return e.maximum!==1&&(n+="и"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Ве молиме внесете уште "+e.maximum+" карактер";return e.maximum!==1&&(n+="и"),n},loadingMore:function(){return"Вчитување резултати…"},maximumSelected:function(e){var t="Можете да изберете само "+e.maximum+" ставк";return e.maximum===1?t+="а":t+="и",t},noResults:function(){return"Нема пронајдено совпаѓања"},searching:function(){return"Пребарување…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/nb.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nb",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Vennligst fjern "+t+" tegn"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vennligst skriv inn ";return t>1?n+=" flere tegn":n+=" tegn til",n},loadingMore:function(){return"Laster flere resultater…"},maximumSelected:function(e){return"Du kan velge maks "+e.maximum+" elementer"},noResults:function(){return"Ingen treff"},searching:function(){return"Søker…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/nl.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nl",[],function(){return{errorLoading:function(){return"De resultaten konden niet worden geladen."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Gelieve "+t+" karakters te verwijderen";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Gelieve "+t+" of meer karakters in te voeren";return n},loadingMore:function(){return"Meer resultaten laden…"},maximumSelected:function(e){var t="Er kunnen maar "+e.maximum+" item";return e.maximum!=1&&(t+="s"),t+=" worden geselecteerd",t},noResults:function(){return"Geen resultaten gevonden…"},searching:function(){return"Zoeken…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/pl.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pl",[],function(){var e=["znak","znaki","znaków"],t=["element","elementy","elementów"],n=function(t,n){if(t===1)return n[0];if(t>1&&t<=4)return n[1];if(t>=5)return n[2]};return{errorLoading:function(){return"Nie można załadować wyników."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Usuń "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Podaj przynajmniej "+r+" "+n(r,e)},loadingMore:function(){return"Trwa ładowanie…"},maximumSelected:function(e){return"Możesz zaznaczyć tylko "+e.maximum+" "+n(e.maxiumum,t)},noResults:function(){return"Brak wyników"},searching:function(){return"Trwa wyszukiwanie…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/pt-BR.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt-BR",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Apague "+t+" caracter";return t!=1&&(n+="es"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Digite "+t+" ou mais caracteres";return n},loadingMore:function(){return"Carregando mais resultados…"},maximumSelected:function(e){var t="Você só pode selecionar "+e.maximum+" ite";return e.maximum==1?t+="m":t+="ns",t},noResults:function(){return"Nenhum resultado encontrado"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/pt.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor apague "+t+" ";return n+=t!=1?"caracteres":"carácter",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Introduza "+t+" ou mais caracteres";return n},loadingMore:function(){return"A carregar mais resultados…"},maximumSelected:function(e){var t="Apenas pode seleccionar "+e.maximum+" ";return t+=e.maximum!=1?"itens":"item",t},noResults:function(){return"Sem resultados"},searching:function(){return"A procurar…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/ro.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ro",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vă rugăm să introduceți mai puțin de "+t;return n+=" caracter",n!==1&&(n+="e"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vă rugăm să introduceți incă "+t;return n+=" caracter",n!==1&&(n+="e"),n},loadingMore:function(){return"Se încarcă…"},maximumSelected:function(e){var t="Aveți voie să selectați cel mult "+e.maximum;return t+=" element",t!==1&&(t+="e"),t},noResults:function(){return"Nu a fost găsit nimic"},searching:function(){return"Căutare…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/ru.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ru",[],function(){function e(e,t,n,r){return e%10<5&&e%10>0&&e%100<5||e%100>20?e%10>1?n:t:r}return{errorLoading:function(){return"Невозможно загрузить результаты"},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Пожалуйста, введите на "+n+" символ";return r+=e(n,"","a","ов"),r+=" меньше",r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Пожалуйста, введите еще хотя бы "+n+" символ";return r+=e(n,"","a","ов"),r},loadingMore:function(){return"Загрузка данных…"},maximumSelected:function(t){var n="Вы можете выбрать не более "+t.maximum+" элемент";return n+=e(t.maximum,"","a","ов"),n},noResults:function(){return"Совпадений не найдено"},searching:function(){return"Поиск…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/sk.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sk",[],function(){var e={2:function(e){return e?"dva":"dve"},3:function(){return"tri"},4:function(){return"štyri"}};return{inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím, zadajte o jeden znak menej":n>=2&&n<=4?"Prosím, zadajte o "+e[n](!0)+" znaky menej":"Prosím, zadajte o "+n+" znakov menej"},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím, zadajte ešte jeden znak":n<=4?"Prosím, zadajte ešte ďalšie "+e[n](!0)+" znaky":"Prosím, zadajte ešte ďalších "+n+" znakov"},loadingMore:function(){return"Loading more results…"},maximumSelected:function(t){return t.maximum==1?"Môžete zvoliť len jednu položku":t.maximum>=2&&t.maximum<=4?"Môžete zvoliť najviac "+e[t.maximum](!1)+" položky":"Môžete zvoliť najviac "+t.maximum+" položiek"},noResults:function(){return"Nenašli sa žiadne položky"},searching:function(){return"Vyhľadávanie…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/sr.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sr",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Obrišite "+n+" simbol";return r+=e(n,"","a","a"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Ukucajte bar još "+n+" simbol";return r+=e(n,"","a","a"),r},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(t){var n="Možete izabrati samo "+t.maximum+" stavk";return n+=e(t.maximum,"u","e","i"),n},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/sv.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sv",[],function(){return{errorLoading:function(){return"Resultat kunde inte laddas."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vänligen sudda ut "+t+" tecken";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vänligen skriv in "+t+" eller fler tecken";return n},loadingMore:function(){return"Laddar fler resultat…"},maximumSelected:function(e){var t="Du kan max välja "+e.maximum+" element";return t},noResults:function(){return"Inga träffar"},searching:function(){return"Söker…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/th.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/th",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="โปรดลบออก "+t+" ตัวอักษร";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="โปรดพิมพ์เพิ่มอีก "+t+" ตัวอักษร";return n},loadingMore:function(){return"กำลังค้นข้อมูลเพิ่ม…"},maximumSelected:function(e){var t="คุณสามารถเลือกได้ไม่เกิน "+e.maximum+" รายการ";return t},noResults:function(){return"ม่พบข้อมูล"},searching:function(){return"กำลังค้นข้อมูล…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/tr.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/tr",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" karakter daha girmelisiniz";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="En az "+t+" karakter daha girmelisiniz";return n},loadingMore:function(){return"Daha fazla…"},maximumSelected:function(e){var t="Sadece "+e.maximum+" seçim yapabilirsiniz";return t},noResults:function(){return"Sonuç bulunamadı"},searching:function(){return"Aranıyor…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/uk.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/uk",[],function(){function e(e,t,n,r){return e%100>10&&e%100<15?r:e%10===1?t:e%10>1&&e%10<5?n:r}return{errorLoading:function(){return"Неможливо завантажити результати"},inputTooLong:function(t){var n=t.input.length-t.maximum;return"Будь ласка, видаліть "+n+" "+e(t.maximum,"літеру","літери","літер")},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Будь ласка, введіть "+t+" або більше літер"},loadingMore:function(){return"Завантаження інших результатів…"},maximumSelected:function(t){return"Ви можете вибрати лише "+t.maximum+" "+e(t.maximum,"пункт","пункти","пунктів")},noResults:function(){return"Нічого не знайдено"},searching:function(){return"Пошук…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/vi.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/vi",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vui lòng nhập ít hơn "+t+" ký tự";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vui lòng nhập nhiều hơn "+t+' ký tự"';return n},loadingMore:function(){return"Đang lấy thêm kết quả…"},maximumSelected:function(e){var t="Chỉ có thể chọn được "+e.maximum+" lựa chọn";return t},noResults:function(){return"Không tìm thấy kết quả"},searching:function(){return"Đang tìm…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/zh-CN.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-CN",[],function(){return{errorLoading:function(){return"无法载入结果。"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="请删除"+t+"个字符";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="请再输入至少"+t+"个字符";return n},loadingMore:function(){return"载入更多结果…"},maximumSelected:function(e){var t="最多只能选择"+e.maximum+"个项目";return t},noResults:function(){return"未找到结果"},searching:function(){return"搜索中…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/admin/plugins/select2/i18n/zh-TW.js: -------------------------------------------------------------------------------- 1 | /*! Select2 4.0.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ 2 | 3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-TW",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="請刪掉"+t+"個字元";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="請再輸入"+t+"個字元";return n},loadingMore:function(){return"載入中…"},maximumSelected:function(e){var t="你只能選擇最多"+e.maximum+"項";return t},noResults:function(){return"沒有找到相符的項目"},searching:function(){return"搜尋中…"}}}),{define:e.define,require:e.require}})(); -------------------------------------------------------------------------------- /src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /src/main/resources/static/mall/css/common.css: -------------------------------------------------------------------------------- 1 | * { 2 | margin: 0; 3 | padding: 0; 4 | text-decoration: none; 5 | list-style-type: none; 6 | font-family: Microsoft Yahei; 7 | } 8 | @media screen and (max-width: 1225px) { 9 | body { 10 | width: 1226px; 11 | } 12 | } 13 | img { 14 | border: none; 15 | max-width: 100%; 16 | max-height: 100%; 17 | } 18 | a { 19 | border: none; 20 | text-decoration: none; 21 | color: #000; 22 | } 23 | .border { 24 | border: 1px solid #f00; 25 | } 26 | .center { 27 | margin: 0 auto; 28 | } 29 | .w { 30 | width: 1226px; 31 | margin: 0 auto; 32 | } 33 | .fl { 34 | float: left; 35 | } 36 | .fr { 37 | float: right; 38 | } 39 | .clear { 40 | clear: both; 41 | } 42 | .clearfix::after { 43 | content: ""; 44 | height: 0; 45 | display: block; 46 | clear: both; 47 | visibility: hidden; 48 | } 49 | .mt20 { 50 | margin-top: 20px; 51 | } 52 | .mt10 { 53 | margin-top: 10px; 54 | } 55 | .ml20 { 56 | margin-left: 20px; 57 | } 58 | .ml40 { 59 | margin-left: 40px; 60 | } 61 | .mr40 { 62 | margin-right: 40px; 63 | } 64 | .mb20 { 65 | margin-bottom: 20px; 66 | } 67 | .border2 { 68 | border: 2px solid #ff6700; 69 | } 70 | .ft20 { 71 | font-size: 20px; 72 | } 73 | .ftbc { 74 | color: #ff6700; 75 | font-weight: bold; 76 | } 77 | .pr { 78 | padding-right: 40px; 79 | } 80 | .h3 { 81 | font-size: 22px; 82 | font-weight: bold; 83 | } 84 | -------------------------------------------------------------------------------- /src/main/resources/static/mall/fonts/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/fonts/iconfont.eot -------------------------------------------------------------------------------- /src/main/resources/static/mall/fonts/iconfont.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | Created by iconfont 9 | 10 | 11 | 12 | 13 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /src/main/resources/static/mall/fonts/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/fonts/iconfont.ttf -------------------------------------------------------------------------------- /src/main/resources/static/mall/fonts/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/fonts/iconfont.woff -------------------------------------------------------------------------------- /src/main/resources/static/mall/fonts/iconfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/fonts/iconfont.woff2 -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/7d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/7d.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/card.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/card.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/close.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/donate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/donate.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/hua.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/hua.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/indexlogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/indexlogo.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/indexlogo2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/indexlogo2.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/indexlogo3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/indexlogo3.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/indexlogo4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/indexlogo4.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/ji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/ji.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/login-logo-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/login-logo-2.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/login_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/login_bg.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/logobg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/logobg.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/logobg2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/logobg2.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/new-bee-logo-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/new-bee-logo-3.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/null-content.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/null-content.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/alipay_code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/alipay_code.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/alipay_logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/alipay_logo.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_gdyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_gdyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_gfyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_gfyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_gsyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_gsyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_jiangsshuyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_jiangsshuyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_jsyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_jsyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_jtyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_jtyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_nyyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_nyyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_pufa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_pufa.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_shncsyyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_shncsyyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_xyyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_xyyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_youzheng.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_youzheng.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_zfb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_zfb.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_zgyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_zgyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_zsyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_zsyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/payOnline_zxyh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/payOnline_zxyh.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/scan-alipay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/scan-alipay.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/scan-wx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/scan-wx.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/unionpay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/unionpay.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/wave-repeat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/wave-repeat.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/weixinpay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/weixinpay.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/wx_logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/wx_logo.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/pay/wxpay_qrcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/pay/wxpay_qrcode.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/right-@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/right-@1x.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/search-cart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/search-cart.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/search.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/air.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/air.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/baby-car.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/baby-car.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/headphones.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/headphones.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/hot1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/hot1.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/hot2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/hot2.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/hot3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/hot3.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/hot4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/hot4.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/m6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/m6.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/pc.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/pc.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/r1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/r1.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/r2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/r2.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/r3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/r3.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/r4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/r4.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/r5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/r5.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/sub_banner/r6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/sub_banner/r6.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/swiper/banner01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/swiper/banner01.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/swiper/banner02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/swiper/banner02.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/swiper/banner03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/swiper/banner03.jpg -------------------------------------------------------------------------------- /src/main/resources/static/mall/image/tel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/static/mall/image/tel.png -------------------------------------------------------------------------------- /src/main/resources/static/mall/js/detail.js: -------------------------------------------------------------------------------- 1 | var swiper = new Swiper('.swiper-container', { 2 | //设置自动播放 3 | autoplay: { 4 | delay: 3000, 5 | disableOnInteraction: false 6 | }, 7 | //设置无限循环播放 8 | loop: true, 9 | //设置圆点指示器 10 | pagination: { 11 | el: '.swiper-pagination', 12 | }, 13 | //设置上下页按钮 14 | navigation: { 15 | nextEl: '.swiper-button-next', 16 | prevEl: '.swiper-button-prev', 17 | } 18 | }) -------------------------------------------------------------------------------- /src/main/resources/static/mall/js/index.js: -------------------------------------------------------------------------------- 1 | var swiper = new Swiper('.swiper-container', { 2 | //设置自动播放 3 | autoplay: { 4 | delay: 2000, 5 | disableOnInteraction: false 6 | }, 7 | //设置无限循环播放 8 | loop: true, 9 | //设置圆点指示器 10 | pagination: { 11 | el: '.swiper-pagination', 12 | }, 13 | //设置上下页按钮 14 | navigation: { 15 | nextEl: '.swiper-button-next', 16 | prevEl: '.swiper-button-prev', 17 | } 18 | }) 19 | 20 | $('.all-sort-list > .item').hover(function () { 21 | var eq = $('.all-sort-list > .item').index(this), //获取当前滑过是第几个元素 22 | h = $('.all-sort-list').offset().top, //获取当前下拉菜单距离窗口多少像素 23 | s = $(window).scrollTop(), //获取游览器滚动了多少高度 24 | i = $(this).offset().top, //当前元素滑过距离窗口多少像素 25 | item = $(this).children('.item-list').height(), //下拉菜单子类内容容器的高度 26 | sort = $('.all-sort-list').height(); //父类分类列表容器的高度 27 | 28 | if (item < sort) { //如果子类的高度小于父类的高度 29 | if (eq == 0) { 30 | $(this).children('.item-list').css('top', (i - h)); 31 | } else { 32 | $(this).children('.item-list').css('top', (i - h) + 1); 33 | } 34 | } else { 35 | if (s > h) { //判断子类的显示位置,如果滚动的高度大于所有分类列表容器的高度 36 | if (i - s > 0) { //则 继续判断当前滑过容器的位置 是否有一半超出窗口一半在窗口内显示的Bug, 37 | $(this).children('.item-list').css('top', (s - h) + 2); 38 | } else { 39 | $(this).children('.item-list').css('top', (s - h) - (-(i - s)) + 2); 40 | } 41 | } else { 42 | $(this).children('.item-list').css('top', 3); 43 | } 44 | } 45 | 46 | $(this).addClass('hover'); 47 | $(this).children('.item-list').css('display', 'block'); 48 | }, function () { 49 | $(this).removeClass('hover'); 50 | $(this).children('.item-list').css('display', 'none'); 51 | }); -------------------------------------------------------------------------------- /src/main/resources/static/mall/js/search.js: -------------------------------------------------------------------------------- 1 | $(function () { 2 | $('#keyword').keypress(function (e) { 3 | var key = e.which; //e.which是按键的值 4 | if (key == 13) { 5 | var q = $(this).val(); 6 | if (q && q != '') { 7 | window.location.href = '/search?keyword=' + q; 8 | } 9 | } 10 | }); 11 | }); 12 | 13 | function search() { 14 | var q = $('#keyword').val(); 15 | if (q && q != '') { 16 | window.location.href = '/search?keyword=' + q; 17 | } 18 | } -------------------------------------------------------------------------------- /src/main/resources/static/mall/styles/personal.css: -------------------------------------------------------------------------------- 1 | #personal { 2 | width: 100%; 3 | height: auto; 4 | background: #f5f5f5; 5 | padding-bottom: 20px; 6 | padding-top: 20px; 7 | } 8 | 9 | #personal .self-info { 10 | width: 1226px; 11 | } 12 | 13 | #personal .self-info .lfnav { 14 | width: 234px; 15 | height: 500px; 16 | background: #fff; 17 | } 18 | 19 | #personal .self-info .lfnav .nav_title { 20 | width: 234px; 21 | height: 40px; 22 | line-height: 40px; 23 | font-size: 19px; 24 | margin: 30px 20px 10px 40px; 25 | color: #333; 26 | } 27 | 28 | #personal .self-info .lfnav .title_list ul li { 29 | display: block; 30 | width: 194px; 31 | height: 40px; 32 | line-height: 40px; 33 | padding-left: 40px; 34 | } 35 | 36 | #personal .self-info .lfnav .title_list ul li .active { 37 | color: #1baeae; 38 | font-weight: bold; 39 | } 40 | 41 | #personal .self-info .lfnav .title_list ul li a { 42 | color: #757575; 43 | } 44 | 45 | #personal .self-info .lfnav .title_list ul li a:hover { 46 | color: #333; 47 | } 48 | 49 | #personal .self-info .intro { 50 | width: 978px; 51 | height: 500px; 52 | background: #fff; 53 | } 54 | 55 | #personal .self-info .intro .grzlbt { 56 | width: 938px; 57 | height: 60px; 58 | line-height: 60px; 59 | font-size: 20px; 60 | color: #757575; 61 | } 62 | 63 | #personal .self-info .intro .info_item { 64 | height: 45px; 65 | line-height: 45px; 66 | width: 900px; 67 | background: #fdfdfd; 68 | border: 1px solid #aaa; 69 | margin-top: 10px; 70 | margin-bottom: 10px; 71 | border-radius: 3px; 72 | } 73 | 74 | #personal .self-info .intro .info_item span:nth-of-type(1) { 75 | display: inline-block; 76 | font-size: 15px; 77 | font-weight: bold; 78 | color: #757575; 79 | width: 70px; 80 | height: 45px; 81 | line-height: 45px; 82 | padding-left: 20px; 83 | } 84 | 85 | #personal .self-info .intro .info_item span:nth-of-type(2) { 86 | display: inline-block; 87 | font-size: 15px; 88 | color: #757575; 89 | width: 480px; 90 | height: 45px; 91 | line-height: 45px; 92 | padding-left: 120px; 93 | } 94 | 95 | #personal .self-info .intro .info_item span:nth-of-type(3) { 96 | display: inline-block; 97 | font-size: 15px; 98 | width: 160px; 99 | height: 45px; 100 | line-height: 45px; 101 | text-align: right; 102 | } 103 | 104 | #personal .self-info .intro .info_item span a { 105 | color: #008080; 106 | } 107 | 108 | #personal .self-info .intro .info_item span a:hover { 109 | color: #1baeae; 110 | } -------------------------------------------------------------------------------- /src/main/resources/templates/admin/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 | All rights reserved. 7 |
8 | 9 |
10 |
11 | -------------------------------------------------------------------------------- /src/main/resources/templates/admin/header.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | SCUM | 后台管理系统 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 39 | 40 | -------------------------------------------------------------------------------- /src/main/resources/templates/admin/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 |
7 | 8 |
9 | 10 |
11 | 12 |
13 | 14 |
15 |
16 |
17 |
18 | 19 |
20 |
21 |
22 |

首页

23 |
24 |
25 |
26 |
27 |
  • 我的邮箱:905462360@qq.com
  • 28 | 29 |
    30 |
    31 |
    32 |
    33 |
    34 | 35 |
    36 | 37 | 38 |
    39 |
    40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /src/main/resources/templates/mall/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 20 | -------------------------------------------------------------------------------- /src/main/resources/templates/mall/personal-sidebar.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
    5 | 6 |
    7 | 12 |
    13 |
    14 | -------------------------------------------------------------------------------- /src/main/resources/upload/00a5036a-07d3-4131-b677-956312bbbc2c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/00a5036a-07d3-4131-b677-956312bbbc2c.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/00e53d76-db08-4ae2-864f-ca1cd7c8c32b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/00e53d76-db08-4ae2-864f-ca1cd7c8c32b.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0a592388-1535-4f9f-8201-ecb78c48bb3d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0a592388-1535-4f9f-8201-ecb78c48bb3d.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0a91f05d-948b-48d4-aac5-5cbd2e85238f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0a91f05d-948b-48d4-aac5-5cbd2e85238f.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0ae89667-8a69-4efc-b8d8-c0ebaf56753a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0ae89667-8a69-4efc-b8d8-c0ebaf56753a.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0b02244f-6908-4ccb-a9d2-ccb5a462e30e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0b02244f-6908-4ccb-a9d2-ccb5a462e30e.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0b1e57bf-b4fd-40df-9832-4749d7d69db9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0b1e57bf-b4fd-40df-9832-4749d7d69db9.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0bc4f5ac-d601-421d-8131-81958a195705.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0bc4f5ac-d601-421d-8131-81958a195705.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0c76bb32-2d34-4738-94a2-0fbf0451fc12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0c76bb32-2d34-4738-94a2-0fbf0451fc12.jpg -------------------------------------------------------------------------------- /src/main/resources/upload/0c91c849-fc0f-44ea-a094-f105c3c81c3c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JavaGraduationProject/SCUMElectronicMallManagementSystem/a14e1de9eab47118e5868c18e9c5f7c191e861e8/src/main/resources/upload/0c91c849-fc0f-44ea-a094-f105c3c81c3c.jpg --------------------------------------------------------------------------------