Repository: 71yuu/YMall
Branch: master
Commit: 73787a3f021b
Files: 928
Total size: 10.1 MB
Directory structure:
gitextract_igooiayh/
├── .gitattributes
├── .gitignore
├── README.md
├── pom.xml
├── sql/
│ └── ymall.sql
├── ymall-commons/
│ ├── pom.xml
│ └── src/
│ └── main/
│ └── java/
│ └── com.yuu.ymall.commons/
│ ├── consts/
│ │ └── Consts.java
│ ├── dto/
│ │ └── BaseResult.java
│ ├── execption/
│ │ └── YmallUploadException.java
│ ├── geetest/
│ │ ├── GeetInit.java
│ │ └── GeetestLib.java
│ ├── persistence/
│ │ └── BaseMapper.java
│ ├── redis/
│ │ └── RedisCacheManager.java
│ └── utils/
│ ├── EsUtil.java
│ ├── HttpUtil.java
│ ├── IDUtil.java
│ ├── MapperUtil.java
│ ├── SendSmsUtil.java
│ └── TimeUtil.java
├── ymall-dependencies/
│ ├── libs/
│ │ └── alipay-trade-sdk-20161215.jar
│ └── pom.xml
├── ymall-domain/
│ ├── pom.xml
│ └── src/
│ └── main/
│ └── java/
│ └── com/
│ └── yuu/
│ └── ymall/
│ └── domain/
│ ├── TbAddress.java
│ ├── TbExpress.java
│ ├── TbItem.java
│ ├── TbItemCat.java
│ ├── TbItemDesc.java
│ ├── TbMember.java
│ ├── TbOrder.java
│ ├── TbOrderItem.java
│ ├── TbOrderShipping.java
│ ├── TbPanel.java
│ ├── TbPanelContent.java
│ └── TbUser.java
├── ymall-web-admin/
│ ├── .rebel.xml.bak
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── yuu/
│ │ └── ymall/
│ │ └── web/
│ │ └── admin/
│ │ ├── commons/
│ │ │ ├── consts/
│ │ │ │ └── Consts.java
│ │ │ ├── dto/
│ │ │ │ ├── ChartData.java
│ │ │ │ ├── City.java
│ │ │ │ ├── DataTablesResult.java
│ │ │ │ ├── IpWeatherResult.java
│ │ │ │ ├── ItemDto.java
│ │ │ │ ├── OrderChartData.java
│ │ │ │ ├── OrderDetail.java
│ │ │ │ └── ZTreeNode.java
│ │ │ ├── es/
│ │ │ │ └── ESItem.java
│ │ │ ├── shiro/
│ │ │ │ └── MyRealm.java
│ │ │ ├── swagger/
│ │ │ │ └── SwaggerConfiguration.java
│ │ │ └── utils/
│ │ │ ├── DtoUtil.java
│ │ │ ├── IDUtil.java
│ │ │ ├── IPInfoUtil.java
│ │ │ ├── ObjectUtil.java
│ │ │ ├── QiniuUtil.java
│ │ │ └── ThreadPoolUtil.java
│ │ ├── mapper/
│ │ │ ├── TbAddressMapper.java
│ │ │ ├── TbExpressMapper.java
│ │ │ ├── TbItemCatMapper.java
│ │ │ ├── TbItemDescMapper.java
│ │ │ ├── TbItemMapper.java
│ │ │ ├── TbMemberMapper.java
│ │ │ ├── TbOrderItemMapper.java
│ │ │ ├── TbOrderMapper.java
│ │ │ ├── TbOrderShippingMapper.java
│ │ │ ├── TbPanelContentMapper.java
│ │ │ ├── TbPanelMapper.java
│ │ │ └── TbUserMapper.java
│ │ ├── repositories/
│ │ │ └── ItemRepository.java
│ │ ├── service/
│ │ │ ├── ContentService.java
│ │ │ ├── CountService.java
│ │ │ ├── ExpressService.java
│ │ │ ├── ItemCatService.java
│ │ │ ├── ItemService.java
│ │ │ ├── MemberService.java
│ │ │ ├── OrderService.java
│ │ │ ├── PanelService.java
│ │ │ ├── SearchService.java
│ │ │ ├── SystemService.java
│ │ │ ├── UserService.java
│ │ │ └── impl/
│ │ │ ├── ContentServiceImpl.java
│ │ │ ├── CountServiceImpl.java
│ │ │ ├── ExpressServiceImpl.java
│ │ │ ├── ItemCatServiceImpl.java
│ │ │ ├── ItemServiceImpl.java
│ │ │ ├── MemberServiceImpl.java
│ │ │ ├── OrderServiceImpl.java
│ │ │ ├── PanelServiceImpl.java
│ │ │ ├── SearchServiceImpl.java
│ │ │ ├── SystemServiceImpl.java
│ │ │ └── UserServiceImpl.java
│ │ └── web/
│ │ ├── controller/
│ │ │ ├── ContentController.java
│ │ │ ├── CountController.java
│ │ │ ├── ExpressController.java
│ │ │ ├── ItemCatController.java
│ │ │ ├── ItemController.java
│ │ │ ├── MemberController.java
│ │ │ ├── OrderController.java
│ │ │ ├── PageController.java
│ │ │ ├── PanelController.java
│ │ │ ├── SwaggerController.java
│ │ │ ├── SystemController.java
│ │ │ ├── UploadController.java
│ │ │ └── UserController.java
│ │ └── interceptor/
│ │ └── PermissionInterceptor.java
│ ├── resources/
│ │ ├── generatorConfig.xml
│ │ ├── log4j.properties
│ │ ├── mapper/
│ │ │ ├── TbAddressMapper.xml
│ │ │ ├── TbExpressMapper.xml
│ │ │ ├── TbItemCatMapper.xml
│ │ │ ├── TbItemDescMapper.xml
│ │ │ ├── TbItemMapper.xml
│ │ │ ├── TbMemberMapper.xml
│ │ │ ├── TbOrderItemMapper.xml
│ │ │ ├── TbOrderMapper.xml
│ │ │ ├── TbOrderShippingMapper.xml
│ │ │ ├── TbPanelContentMapper.xml
│ │ │ ├── TbPanelMapper.xml
│ │ │ └── TbUserMapper.xml
│ │ ├── mybatis-config.xml
│ │ ├── resource.properties
│ │ ├── spring-context-druid.xml
│ │ ├── spring-context-elasticsearch.xml
│ │ ├── spring-context-mybatis.xml
│ │ ├── spring-context-redis.xml
│ │ ├── spring-context-shiro.xml
│ │ ├── spring-context.xml
│ │ ├── spring-mvc.xml
│ │ └── ymall.properties
│ └── webapp/
│ ├── WEB-INF/
│ │ ├── includes/
│ │ │ ├── footer.jsp
│ │ │ └── header.jsp
│ │ ├── views/
│ │ │ ├── admin-form.jsp
│ │ │ ├── admin-list.jsp
│ │ │ ├── change-admin-password.jsp
│ │ │ ├── change-password.jsp
│ │ │ ├── chart-order.jsp
│ │ │ ├── choose-category.jsp
│ │ │ ├── choose-parent-category.jsp
│ │ │ ├── choose-product.jsp
│ │ │ ├── content-common-form.jsp
│ │ │ ├── content-common-list.jsp
│ │ │ ├── content-header-list.jsp
│ │ │ ├── content-panel-add.jsp
│ │ │ ├── content-panel.jsp
│ │ │ ├── index.jsp
│ │ │ ├── lock-screen.jsp
│ │ │ ├── login.jsp
│ │ │ ├── member-ban.jsp
│ │ │ ├── member-form.jsp
│ │ │ ├── member-list.jsp
│ │ │ ├── order-deliver.jsp
│ │ │ ├── order-list.jsp
│ │ │ ├── order-print.jsp
│ │ │ ├── product-category-add.jsp
│ │ │ ├── product-category.jsp
│ │ │ ├── product-form.jsp
│ │ │ ├── product-list.jsp
│ │ │ ├── system-express-form.jsp
│ │ │ ├── system-express.jsp
│ │ │ └── welcome.jsp
│ │ └── web.xml
│ └── static/
│ └── assets/
│ ├── app/
│ │ ├── app.js
│ │ ├── common.js
│ │ ├── const.js
│ │ └── validate.js
│ ├── lib/
│ │ ├── DD_belatedPNG_0.0.8a-min.js
│ │ ├── Hui-iconfont/
│ │ │ └── 1.0.8/
│ │ │ ├── demo.html
│ │ │ └── iconfont.css
│ │ ├── My97DatePicker/
│ │ │ └── 4.8/
│ │ │ ├── WdatePicker.js
│ │ │ ├── calendar.js
│ │ │ ├── lang/
│ │ │ │ ├── en.js
│ │ │ │ ├── zh-cn.js
│ │ │ │ └── zh-tw.js
│ │ │ └── skin/
│ │ │ ├── WdatePicker.css
│ │ │ ├── default/
│ │ │ │ └── datepicker.css
│ │ │ ├── twoer/
│ │ │ │ ├── datepicker-dev.css
│ │ │ │ └── datepicker.css
│ │ │ └── whyGreen/
│ │ │ └── datepicker.css
│ │ ├── busuanzi.pure.mini.js
│ │ ├── changyan.js
│ │ ├── datatables/
│ │ │ └── Chinese.json
│ │ ├── expressInstall.swf
│ │ ├── flatlab/
│ │ │ ├── assets/
│ │ │ │ ├── font-awesome/
│ │ │ │ │ ├── css/
│ │ │ │ │ │ ├── font-awesome-ie7.css
│ │ │ │ │ │ └── font-awesome.css
│ │ │ │ │ ├── font/
│ │ │ │ │ │ └── FontAwesome.otf
│ │ │ │ │ ├── less/
│ │ │ │ │ │ ├── bootstrap.less
│ │ │ │ │ │ ├── core.less
│ │ │ │ │ │ ├── extras.less
│ │ │ │ │ │ ├── font-awesome-ie7.less
│ │ │ │ │ │ ├── font-awesome.less
│ │ │ │ │ │ ├── icons.less
│ │ │ │ │ │ ├── mixins.less
│ │ │ │ │ │ ├── path.less
│ │ │ │ │ │ └── variables.less
│ │ │ │ │ └── scss/
│ │ │ │ │ ├── _bootstrap.scss
│ │ │ │ │ ├── _core.scss
│ │ │ │ │ ├── _extras.scss
│ │ │ │ │ ├── _icons.scss
│ │ │ │ │ ├── _mixins.scss
│ │ │ │ │ ├── _path.scss
│ │ │ │ │ ├── _variables.scss
│ │ │ │ │ ├── font-awesome-ie7.scss
│ │ │ │ │ └── font-awesome.scss
│ │ │ │ └── jquery-easy-pie-chart/
│ │ │ │ ├── Makefile
│ │ │ │ ├── Readme.md
│ │ │ │ ├── examples/
│ │ │ │ │ ├── excanvas.js
│ │ │ │ │ ├── index.html
│ │ │ │ │ └── style.css
│ │ │ │ ├── jquery.easy-pie-chart.coffee
│ │ │ │ ├── jquery.easy-pie-chart.css
│ │ │ │ └── jquery.easy-pie-chart.js
│ │ │ ├── css/
│ │ │ │ ├── bootstrap-reset.css
│ │ │ │ ├── bootstrap.css
│ │ │ │ ├── owl.carousel.css
│ │ │ │ ├── style-responsive.css
│ │ │ │ └── style.css
│ │ │ └── js/
│ │ │ ├── bootstrap.js
│ │ │ ├── common-scripts.js
│ │ │ ├── count.js
│ │ │ ├── easy-pie-chart.js
│ │ │ ├── html5shiv.js
│ │ │ ├── jquery.dcjqaccordion.2.7.js
│ │ │ ├── jquery.js
│ │ │ ├── jquery.nicescroll.js
│ │ │ ├── jquery.sparkline.js
│ │ │ ├── owl.carousel.js
│ │ │ └── sparkline-chart.js
│ │ ├── fonts/
│ │ │ └── FontAwesome.otf
│ │ ├── gt.js
│ │ ├── html5shiv.js
│ │ ├── jQuery.print.js
│ │ ├── jquery/
│ │ │ └── 1.9.1/
│ │ │ └── jquery.js
│ │ ├── jquery.contextmenu/
│ │ │ └── jquery.contextmenu.r2.js
│ │ ├── jquery.validation/
│ │ │ └── 1.14.0/
│ │ │ ├── additional-methods.js
│ │ │ ├── jquery.validate.js
│ │ │ ├── messages_zh.js
│ │ │ └── validate-methods.js
│ │ ├── jselect-1.0.js
│ │ ├── kindeditor/
│ │ │ ├── kindeditor.js
│ │ │ ├── lang/
│ │ │ │ ├── ar.js
│ │ │ │ ├── en.js
│ │ │ │ ├── ko.js
│ │ │ │ ├── ru.js
│ │ │ │ ├── zh-CN.js
│ │ │ │ └── zh-TW.js
│ │ │ ├── plugins/
│ │ │ │ ├── anchor/
│ │ │ │ │ └── anchor.js
│ │ │ │ ├── autoheight/
│ │ │ │ │ └── autoheight.js
│ │ │ │ ├── baidumap/
│ │ │ │ │ ├── baidumap.js
│ │ │ │ │ ├── index.html
│ │ │ │ │ └── map.html
│ │ │ │ ├── clearhtml/
│ │ │ │ │ └── clearhtml.js
│ │ │ │ ├── code/
│ │ │ │ │ ├── code.js
│ │ │ │ │ ├── prettify.css
│ │ │ │ │ └── prettify.js
│ │ │ │ ├── emoticons/
│ │ │ │ │ └── emoticons.js
│ │ │ │ ├── filemanager/
│ │ │ │ │ └── filemanager.js
│ │ │ │ ├── fixtoolbar/
│ │ │ │ │ └── fixtoolbar.js
│ │ │ │ ├── flash/
│ │ │ │ │ └── flash.js
│ │ │ │ ├── image/
│ │ │ │ │ └── image.js
│ │ │ │ ├── insertfile/
│ │ │ │ │ └── insertfile.js
│ │ │ │ ├── lineheight/
│ │ │ │ │ └── lineheight.js
│ │ │ │ ├── link/
│ │ │ │ │ └── link.js
│ │ │ │ ├── map/
│ │ │ │ │ ├── map.html
│ │ │ │ │ └── map.js
│ │ │ │ ├── media/
│ │ │ │ │ └── media.js
│ │ │ │ ├── multiimage/
│ │ │ │ │ ├── images/
│ │ │ │ │ │ └── swfupload.swf
│ │ │ │ │ └── multiimage.js
│ │ │ │ ├── pagebreak/
│ │ │ │ │ └── pagebreak.js
│ │ │ │ ├── plainpaste/
│ │ │ │ │ └── plainpaste.js
│ │ │ │ ├── preview/
│ │ │ │ │ └── preview.js
│ │ │ │ ├── quickformat/
│ │ │ │ │ └── quickformat.js
│ │ │ │ ├── table/
│ │ │ │ │ └── table.js
│ │ │ │ ├── template/
│ │ │ │ │ ├── html/
│ │ │ │ │ │ ├── 1.html
│ │ │ │ │ │ ├── 2.html
│ │ │ │ │ │ └── 3.html
│ │ │ │ │ └── template.js
│ │ │ │ └── wordpaste/
│ │ │ │ └── wordpaste.js
│ │ │ └── themes/
│ │ │ ├── default/
│ │ │ │ └── default.css
│ │ │ ├── qq/
│ │ │ │ └── qq.css
│ │ │ └── simple/
│ │ │ └── simple.css
│ │ ├── layer/
│ │ │ └── 2.4/
│ │ │ ├── layer.js
│ │ │ └── skin/
│ │ │ └── layer.css
│ │ ├── laypage/
│ │ │ └── 1.2/
│ │ │ ├── laypage.js
│ │ │ └── skin/
│ │ │ └── laypage.css
│ │ ├── lightbox2/
│ │ │ └── 2.8.1/
│ │ │ ├── css/
│ │ │ │ └── lightbox.css
│ │ │ ├── examples.html
│ │ │ └── js/
│ │ │ ├── lightbox-plus-jquery.js
│ │ │ └── lightbox.js
│ │ ├── login/
│ │ │ ├── font-awesome.css
│ │ │ └── style.css
│ │ ├── nprogress/
│ │ │ └── 0.2.0/
│ │ │ ├── nprogress.css
│ │ │ └── nprogress.js
│ │ ├── province/
│ │ │ ├── distpicker.data.js
│ │ │ └── distpicker.js
│ │ ├── squid.js
│ │ ├── swfobject.js
│ │ ├── webuploader/
│ │ │ └── 0.1.5/
│ │ │ ├── README.md
│ │ │ ├── Uploader.swf
│ │ │ ├── cropper/
│ │ │ │ ├── cropper.js
│ │ │ │ ├── index.html
│ │ │ │ └── uploader.js
│ │ │ ├── expressInstall.swf
│ │ │ ├── image-upload/
│ │ │ │ ├── index.html
│ │ │ │ └── upload.js
│ │ │ ├── images/
│ │ │ │ ├── icons.psd
│ │ │ │ └── progress.psd
│ │ │ ├── md5-demo/
│ │ │ │ ├── index.html
│ │ │ │ └── script.js
│ │ │ ├── requirejs/
│ │ │ │ ├── app.js
│ │ │ │ ├── index.html
│ │ │ │ └── require.js
│ │ │ ├── server/
│ │ │ │ ├── crossdomain.xml
│ │ │ │ ├── fileupload.php
│ │ │ │ ├── fileupload2.php
│ │ │ │ └── preview.php
│ │ │ ├── webuploader.css
│ │ │ ├── webuploader.custom.js
│ │ │ ├── webuploader.fis.js
│ │ │ ├── webuploader.flashonly.js
│ │ │ ├── webuploader.html5only.js
│ │ │ ├── webuploader.js
│ │ │ ├── webuploader.noimage.js
│ │ │ ├── webuploader.nolog.js
│ │ │ └── webuploader.withoutimage.js
│ │ └── zTree/
│ │ └── v3/
│ │ ├── api/
│ │ │ ├── API_cn.html
│ │ │ ├── API_en.html
│ │ │ ├── apiCss/
│ │ │ │ ├── api.js
│ │ │ │ ├── common.css
│ │ │ │ ├── common_ie6.css
│ │ │ │ ├── jquery.ztree.core-3.5.js
│ │ │ │ └── zTreeStyleForApi.css
│ │ │ ├── cn/
│ │ │ │ ├── fn.zTree._z.html
│ │ │ │ ├── fn.zTree.destroy.html
│ │ │ │ ├── fn.zTree.getZTreeObj.html
│ │ │ │ ├── fn.zTree.init.html
│ │ │ │ ├── setting.async.autoParam.html
│ │ │ │ ├── setting.async.contentType.html
│ │ │ │ ├── setting.async.dataFilter.html
│ │ │ │ ├── setting.async.dataType.html
│ │ │ │ ├── setting.async.enable.html
│ │ │ │ ├── setting.async.otherParam.html
│ │ │ │ ├── setting.async.type.html
│ │ │ │ ├── setting.async.url.html
│ │ │ │ ├── setting.callback.beforeAsync.html
│ │ │ │ ├── setting.callback.beforeCheck.html
│ │ │ │ ├── setting.callback.beforeClick.html
│ │ │ │ ├── setting.callback.beforeCollapse.html
│ │ │ │ ├── setting.callback.beforeDblClick.html
│ │ │ │ ├── setting.callback.beforeDrag.html
│ │ │ │ ├── setting.callback.beforeDragOpen.html
│ │ │ │ ├── setting.callback.beforeDrop.html
│ │ │ │ ├── setting.callback.beforeEditName.html
│ │ │ │ ├── setting.callback.beforeExpand.html
│ │ │ │ ├── setting.callback.beforeMouseDown.html
│ │ │ │ ├── setting.callback.beforeMouseUp.html
│ │ │ │ ├── setting.callback.beforeRemove.html
│ │ │ │ ├── setting.callback.beforeRename.html
│ │ │ │ ├── setting.callback.beforeRightClick.html
│ │ │ │ ├── setting.callback.onAsyncError.html
│ │ │ │ ├── setting.callback.onAsyncSuccess.html
│ │ │ │ ├── setting.callback.onCheck.html
│ │ │ │ ├── setting.callback.onClick.html
│ │ │ │ ├── setting.callback.onCollapse.html
│ │ │ │ ├── setting.callback.onDblClick.html
│ │ │ │ ├── setting.callback.onDrag.html
│ │ │ │ ├── setting.callback.onDragMove.html
│ │ │ │ ├── setting.callback.onDrop.html
│ │ │ │ ├── setting.callback.onExpand.html
│ │ │ │ ├── setting.callback.onMouseDown.html
│ │ │ │ ├── setting.callback.onMouseUp.html
│ │ │ │ ├── setting.callback.onNodeCreated.html
│ │ │ │ ├── setting.callback.onRemove.html
│ │ │ │ ├── setting.callback.onRename.html
│ │ │ │ ├── setting.callback.onRightClick.html
│ │ │ │ ├── setting.check.autoCheckTrigger.html
│ │ │ │ ├── setting.check.chkDisabledInherit.html
│ │ │ │ ├── setting.check.chkStyle.html
│ │ │ │ ├── setting.check.chkboxType.html
│ │ │ │ ├── setting.check.enable.html
│ │ │ │ ├── setting.check.nocheckInherit.html
│ │ │ │ ├── setting.check.radioType.html
│ │ │ │ ├── setting.data.keep.leaf.html
│ │ │ │ ├── setting.data.keep.parent.html
│ │ │ │ ├── setting.data.key.checked.html
│ │ │ │ ├── setting.data.key.children.html
│ │ │ │ ├── setting.data.key.name.html
│ │ │ │ ├── setting.data.key.title.html
│ │ │ │ ├── setting.data.key.url.html
│ │ │ │ ├── setting.data.simpleData.enable.html
│ │ │ │ ├── setting.data.simpleData.idKey.html
│ │ │ │ ├── setting.data.simpleData.pIdKey.html
│ │ │ │ ├── setting.data.simpleData.rootPId.html
│ │ │ │ ├── setting.edit.drag.autoExpandTrigger.html
│ │ │ │ ├── setting.edit.drag.autoOpenTime.html
│ │ │ │ ├── setting.edit.drag.borderMax.html
│ │ │ │ ├── setting.edit.drag.borderMin.html
│ │ │ │ ├── setting.edit.drag.inner.html
│ │ │ │ ├── setting.edit.drag.isCopy.html
│ │ │ │ ├── setting.edit.drag.isMove.html
│ │ │ │ ├── setting.edit.drag.maxShowNodeNum.html
│ │ │ │ ├── setting.edit.drag.minMoveSize.html
│ │ │ │ ├── setting.edit.drag.next.html
│ │ │ │ ├── setting.edit.drag.prev.html
│ │ │ │ ├── setting.edit.editNameSelectAll.html
│ │ │ │ ├── setting.edit.enable.html
│ │ │ │ ├── setting.edit.removeTitle.html
│ │ │ │ ├── setting.edit.renameTitle.html
│ │ │ │ ├── setting.edit.showRemoveBtn.html
│ │ │ │ ├── setting.edit.showRenameBtn.html
│ │ │ │ ├── setting.treeId.html
│ │ │ │ ├── setting.treeObj.html
│ │ │ │ ├── setting.view.addDiyDom.html
│ │ │ │ ├── setting.view.addHoverDom.html
│ │ │ │ ├── setting.view.autoCancelSelected.html
│ │ │ │ ├── setting.view.dblClickExpand.html
│ │ │ │ ├── setting.view.expandSpeed.html
│ │ │ │ ├── setting.view.fontCss.html
│ │ │ │ ├── setting.view.nameIsHTML.html
│ │ │ │ ├── setting.view.removeHoverDom.html
│ │ │ │ ├── setting.view.selectedMulti.html
│ │ │ │ ├── setting.view.showIcon.html
│ │ │ │ ├── setting.view.showLine.html
│ │ │ │ ├── setting.view.showTitle.html
│ │ │ │ ├── setting.view.txtSelectedEnable.html
│ │ │ │ ├── treeNode.check_Child_State.html
│ │ │ │ ├── treeNode.check_Focus.html
│ │ │ │ ├── treeNode.checked.html
│ │ │ │ ├── treeNode.checkedOld.html
│ │ │ │ ├── treeNode.children.html
│ │ │ │ ├── treeNode.chkDisabled.html
│ │ │ │ ├── treeNode.click.html
│ │ │ │ ├── treeNode.diy.html
│ │ │ │ ├── treeNode.editNameFlag.html
│ │ │ │ ├── treeNode.getCheckStatus.html
│ │ │ │ ├── treeNode.getNextNode.html
│ │ │ │ ├── treeNode.getParentNode.html
│ │ │ │ ├── treeNode.getPreNode.html
│ │ │ │ ├── treeNode.halfCheck.html
│ │ │ │ ├── treeNode.icon.html
│ │ │ │ ├── treeNode.iconClose.html
│ │ │ │ ├── treeNode.iconOpen.html
│ │ │ │ ├── treeNode.iconSkin.html
│ │ │ │ ├── treeNode.isAjaxing.html
│ │ │ │ ├── treeNode.isFirstNode.html
│ │ │ │ ├── treeNode.isHidden.html
│ │ │ │ ├── treeNode.isHover.html
│ │ │ │ ├── treeNode.isLastNode.html
│ │ │ │ ├── treeNode.isParent.html
│ │ │ │ ├── treeNode.level.html
│ │ │ │ ├── treeNode.name.html
│ │ │ │ ├── treeNode.nocheck.html
│ │ │ │ ├── treeNode.open.html
│ │ │ │ ├── treeNode.parentTId.html
│ │ │ │ ├── treeNode.tId.html
│ │ │ │ ├── treeNode.target.html
│ │ │ │ ├── treeNode.url.html
│ │ │ │ ├── treeNode.zAsync.html
│ │ │ │ ├── zTreeObj.addNodes.html
│ │ │ │ ├── zTreeObj.cancelEditName.html
│ │ │ │ ├── zTreeObj.cancelSelectedNode.html
│ │ │ │ ├── zTreeObj.checkAllNodes.html
│ │ │ │ ├── zTreeObj.checkNode.html
│ │ │ │ ├── zTreeObj.copyNode.html
│ │ │ │ ├── zTreeObj.destroy.html
│ │ │ │ ├── zTreeObj.editName.html
│ │ │ │ ├── zTreeObj.expandAll.html
│ │ │ │ ├── zTreeObj.expandNode.html
│ │ │ │ ├── zTreeObj.getChangeCheckedNodes.html
│ │ │ │ ├── zTreeObj.getCheckedNodes.html
│ │ │ │ ├── zTreeObj.getNodeByParam.html
│ │ │ │ ├── zTreeObj.getNodeByTId.html
│ │ │ │ ├── zTreeObj.getNodeIndex.html
│ │ │ │ ├── zTreeObj.getNodes.html
│ │ │ │ ├── zTreeObj.getNodesByFilter.html
│ │ │ │ ├── zTreeObj.getNodesByParam.html
│ │ │ │ ├── zTreeObj.getNodesByParamFuzzy.html
│ │ │ │ ├── zTreeObj.getSelectedNodes.html
│ │ │ │ ├── zTreeObj.hideNode.html
│ │ │ │ ├── zTreeObj.hideNodes.html
│ │ │ │ ├── zTreeObj.moveNode.html
│ │ │ │ ├── zTreeObj.reAsyncChildNodes.html
│ │ │ │ ├── zTreeObj.refresh.html
│ │ │ │ ├── zTreeObj.removeChildNodes.html
│ │ │ │ ├── zTreeObj.removeNode.html
│ │ │ │ ├── zTreeObj.selectNode.html
│ │ │ │ ├── zTreeObj.setChkDisabled.html
│ │ │ │ ├── zTreeObj.setEditable.html
│ │ │ │ ├── zTreeObj.setting.html
│ │ │ │ ├── zTreeObj.showNode.html
│ │ │ │ ├── zTreeObj.showNodes.html
│ │ │ │ ├── zTreeObj.transformToArray.html
│ │ │ │ ├── zTreeObj.transformTozTreeNodes.html
│ │ │ │ └── zTreeObj.updateNode.html
│ │ │ └── en/
│ │ │ ├── fn.zTree._z.html
│ │ │ ├── fn.zTree.destroy.html
│ │ │ ├── fn.zTree.getZTreeObj.html
│ │ │ ├── fn.zTree.init.html
│ │ │ ├── setting.async.autoParam.html
│ │ │ ├── setting.async.contentType.html
│ │ │ ├── setting.async.dataFilter.html
│ │ │ ├── setting.async.dataType.html
│ │ │ ├── setting.async.enable.html
│ │ │ ├── setting.async.otherParam.html
│ │ │ ├── setting.async.type.html
│ │ │ ├── setting.async.url.html
│ │ │ ├── setting.callback.beforeAsync.html
│ │ │ ├── setting.callback.beforeCheck.html
│ │ │ ├── setting.callback.beforeClick.html
│ │ │ ├── setting.callback.beforeCollapse.html
│ │ │ ├── setting.callback.beforeDblClick.html
│ │ │ ├── setting.callback.beforeDrag.html
│ │ │ ├── setting.callback.beforeDragOpen.html
│ │ │ ├── setting.callback.beforeDrop.html
│ │ │ ├── setting.callback.beforeEditName.html
│ │ │ ├── setting.callback.beforeExpand.html
│ │ │ ├── setting.callback.beforeMouseDown.html
│ │ │ ├── setting.callback.beforeMouseUp.html
│ │ │ ├── setting.callback.beforeRemove.html
│ │ │ ├── setting.callback.beforeRename.html
│ │ │ ├── setting.callback.beforeRightClick.html
│ │ │ ├── setting.callback.onAsyncError.html
│ │ │ ├── setting.callback.onAsyncSuccess.html
│ │ │ ├── setting.callback.onCheck.html
│ │ │ ├── setting.callback.onClick.html
│ │ │ ├── setting.callback.onCollapse.html
│ │ │ ├── setting.callback.onDblClick.html
│ │ │ ├── setting.callback.onDrag.html
│ │ │ ├── setting.callback.onDragMove.html
│ │ │ ├── setting.callback.onDrop.html
│ │ │ ├── setting.callback.onExpand.html
│ │ │ ├── setting.callback.onMouseDown.html
│ │ │ ├── setting.callback.onMouseUp.html
│ │ │ ├── setting.callback.onNodeCreated.html
│ │ │ ├── setting.callback.onRemove.html
│ │ │ ├── setting.callback.onRename.html
│ │ │ ├── setting.callback.onRightClick.html
│ │ │ ├── setting.check.autoCheckTrigger.html
│ │ │ ├── setting.check.chkDisabledInherit.html
│ │ │ ├── setting.check.chkStyle.html
│ │ │ ├── setting.check.chkboxType.html
│ │ │ ├── setting.check.enable.html
│ │ │ ├── setting.check.nocheckInherit.html
│ │ │ ├── setting.check.radioType.html
│ │ │ ├── setting.data.keep.leaf.html
│ │ │ ├── setting.data.keep.parent.html
│ │ │ ├── setting.data.key.checked.html
│ │ │ ├── setting.data.key.children.html
│ │ │ ├── setting.data.key.name.html
│ │ │ ├── setting.data.key.title.html
│ │ │ ├── setting.data.key.url.html
│ │ │ ├── setting.data.simpleData.enable.html
│ │ │ ├── setting.data.simpleData.idKey.html
│ │ │ ├── setting.data.simpleData.pIdKey.html
│ │ │ ├── setting.data.simpleData.rootPId.html
│ │ │ ├── setting.edit.drag.autoExpandTrigger.html
│ │ │ ├── setting.edit.drag.autoOpenTime.html
│ │ │ ├── setting.edit.drag.borderMax.html
│ │ │ ├── setting.edit.drag.borderMin.html
│ │ │ ├── setting.edit.drag.inner.html
│ │ │ ├── setting.edit.drag.isCopy.html
│ │ │ ├── setting.edit.drag.isMove.html
│ │ │ ├── setting.edit.drag.maxShowNodeNum.html
│ │ │ ├── setting.edit.drag.minMoveSize.html
│ │ │ ├── setting.edit.drag.next.html
│ │ │ ├── setting.edit.drag.prev.html
│ │ │ ├── setting.edit.editNameSelectAll.html
│ │ │ ├── setting.edit.enable.html
│ │ │ ├── setting.edit.removeTitle.html
│ │ │ ├── setting.edit.renameTitle.html
│ │ │ ├── setting.edit.showRemoveBtn.html
│ │ │ ├── setting.edit.showRenameBtn.html
│ │ │ ├── setting.treeId.html
│ │ │ ├── setting.treeObj.html
│ │ │ ├── setting.view.addDiyDom.html
│ │ │ ├── setting.view.addHoverDom.html
│ │ │ ├── setting.view.autoCancelSelected.html
│ │ │ ├── setting.view.dblClickExpand.html
│ │ │ ├── setting.view.expandSpeed.html
│ │ │ ├── setting.view.fontCss.html
│ │ │ ├── setting.view.nameIsHTML.html
│ │ │ ├── setting.view.removeHoverDom.html
│ │ │ ├── setting.view.selectedMulti.html
│ │ │ ├── setting.view.showIcon.html
│ │ │ ├── setting.view.showLine.html
│ │ │ ├── setting.view.showTitle.html
│ │ │ ├── setting.view.txtSelectedEnable.html
│ │ │ ├── treeNode.check_Child_State.html
│ │ │ ├── treeNode.check_Focus.html
│ │ │ ├── treeNode.checked.html
│ │ │ ├── treeNode.checkedOld.html
│ │ │ ├── treeNode.children.html
│ │ │ ├── treeNode.chkDisabled.html
│ │ │ ├── treeNode.click.html
│ │ │ ├── treeNode.diy.html
│ │ │ ├── treeNode.editNameFlag.html
│ │ │ ├── treeNode.getCheckStatus.html
│ │ │ ├── treeNode.getNextNode.html
│ │ │ ├── treeNode.getParentNode.html
│ │ │ ├── treeNode.getPreNode.html
│ │ │ ├── treeNode.halfCheck.html
│ │ │ ├── treeNode.icon.html
│ │ │ ├── treeNode.iconClose.html
│ │ │ ├── treeNode.iconOpen.html
│ │ │ ├── treeNode.iconSkin.html
│ │ │ ├── treeNode.isAjaxing.html
│ │ │ ├── treeNode.isFirstNode.html
│ │ │ ├── treeNode.isHidden.html
│ │ │ ├── treeNode.isHover.html
│ │ │ ├── treeNode.isLastNode.html
│ │ │ ├── treeNode.isParent.html
│ │ │ ├── treeNode.level.html
│ │ │ ├── treeNode.name.html
│ │ │ ├── treeNode.nocheck.html
│ │ │ ├── treeNode.open.html
│ │ │ ├── treeNode.parentTId.html
│ │ │ ├── treeNode.tId.html
│ │ │ ├── treeNode.target.html
│ │ │ ├── treeNode.url.html
│ │ │ ├── treeNode.zAsync.html
│ │ │ ├── zTreeObj.addNodes.html
│ │ │ ├── zTreeObj.cancelEditName.html
│ │ │ ├── zTreeObj.cancelSelectedNode.html
│ │ │ ├── zTreeObj.checkAllNodes.html
│ │ │ ├── zTreeObj.checkNode.html
│ │ │ ├── zTreeObj.copyNode.html
│ │ │ ├── zTreeObj.destroy.html
│ │ │ ├── zTreeObj.editName.html
│ │ │ ├── zTreeObj.expandAll.html
│ │ │ ├── zTreeObj.expandNode.html
│ │ │ ├── zTreeObj.getChangeCheckedNodes.html
│ │ │ ├── zTreeObj.getCheckedNodes.html
│ │ │ ├── zTreeObj.getNodeByParam.html
│ │ │ ├── zTreeObj.getNodeByTId.html
│ │ │ ├── zTreeObj.getNodeIndex.html
│ │ │ ├── zTreeObj.getNodes.html
│ │ │ ├── zTreeObj.getNodesByFilter.html
│ │ │ ├── zTreeObj.getNodesByParam.html
│ │ │ ├── zTreeObj.getNodesByParamFuzzy.html
│ │ │ ├── zTreeObj.getSelectedNodes.html
│ │ │ ├── zTreeObj.hideNode.html
│ │ │ ├── zTreeObj.hideNodes.html
│ │ │ ├── zTreeObj.moveNode.html
│ │ │ ├── zTreeObj.reAsyncChildNodes.html
│ │ │ ├── zTreeObj.refresh.html
│ │ │ ├── zTreeObj.removeChildNodes.html
│ │ │ ├── zTreeObj.removeNode.html
│ │ │ ├── zTreeObj.selectNode.html
│ │ │ ├── zTreeObj.setChkDisabled.html
│ │ │ ├── zTreeObj.setEditable.html
│ │ │ ├── zTreeObj.setting.html
│ │ │ ├── zTreeObj.showNode.html
│ │ │ ├── zTreeObj.showNodes.html
│ │ │ ├── zTreeObj.transformToArray.html
│ │ │ ├── zTreeObj.transformTozTreeNodes.html
│ │ │ └── zTreeObj.updateNode.html
│ │ ├── css/
│ │ │ ├── metroStyle/
│ │ │ │ └── metroStyle.css
│ │ │ └── zTreeStyle/
│ │ │ └── zTreeStyle.css
│ │ └── js/
│ │ ├── jquery.ztree.all-3.5.js
│ │ ├── jquery.ztree.core-3.5.js
│ │ ├── jquery.ztree.excheck-3.5.js
│ │ ├── jquery.ztree.exedit-3.5.js
│ │ ├── jquery.ztree.exedit.js
│ │ └── jquery.ztree.exhide-3.5.js
│ ├── plugins/
│ │ ├── ajaxfileupload/
│ │ │ └── ajaxfileupload.js
│ │ ├── dropzone/
│ │ │ ├── basic.css
│ │ │ ├── dropzone-amd-module.js
│ │ │ ├── dropzone.css
│ │ │ ├── dropzone.js
│ │ │ └── readme.md
│ │ ├── iCheck/
│ │ │ ├── all.css
│ │ │ ├── flat/
│ │ │ │ ├── _all.css
│ │ │ │ ├── aero.css
│ │ │ │ ├── blue.css
│ │ │ │ ├── flat.css
│ │ │ │ ├── green.css
│ │ │ │ ├── grey.css
│ │ │ │ ├── orange.css
│ │ │ │ ├── pink.css
│ │ │ │ ├── purple.css
│ │ │ │ ├── red.css
│ │ │ │ └── yellow.css
│ │ │ ├── futurico/
│ │ │ │ └── futurico.css
│ │ │ ├── icheck.js
│ │ │ ├── line/
│ │ │ │ ├── _all.css
│ │ │ │ ├── aero.css
│ │ │ │ ├── blue.css
│ │ │ │ ├── green.css
│ │ │ │ ├── grey.css
│ │ │ │ ├── line.css
│ │ │ │ ├── orange.css
│ │ │ │ ├── pink.css
│ │ │ │ ├── purple.css
│ │ │ │ ├── red.css
│ │ │ │ └── yellow.css
│ │ │ ├── minimal/
│ │ │ │ ├── _all.css
│ │ │ │ ├── aero.css
│ │ │ │ ├── blue.css
│ │ │ │ ├── green.css
│ │ │ │ ├── grey.css
│ │ │ │ ├── minimal.css
│ │ │ │ ├── orange.css
│ │ │ │ ├── pink.css
│ │ │ │ ├── purple.css
│ │ │ │ ├── red.css
│ │ │ │ └── yellow.css
│ │ │ ├── polaris/
│ │ │ │ └── polaris.css
│ │ │ └── square/
│ │ │ ├── _all.css
│ │ │ ├── aero.css
│ │ │ ├── blue.css
│ │ │ ├── green.css
│ │ │ ├── grey.css
│ │ │ ├── orange.css
│ │ │ ├── pink.css
│ │ │ ├── purple.css
│ │ │ ├── red.css
│ │ │ ├── square.css
│ │ │ └── yellow.css
│ │ ├── treeTable/
│ │ │ ├── demo/
│ │ │ │ ├── style/
│ │ │ │ │ └── demo.css
│ │ │ │ └── treeTable.html
│ │ │ ├── jquery.treeTable.js
│ │ │ └── themes/
│ │ │ ├── default/
│ │ │ │ └── treeTable.css
│ │ │ └── vsStyle/
│ │ │ ├── allbgs.psd
│ │ │ └── treeTable.css
│ │ └── wangEditor/
│ │ ├── wangEditor-fullscreen-plugin.css
│ │ ├── wangEditor-fullscreen-plugin.js
│ │ ├── wangEditor.css
│ │ └── wangEditor.js
│ └── static/
│ ├── h-ui/
│ │ ├── css/
│ │ │ ├── H-ui.css
│ │ │ ├── H-ui.ie.css
│ │ │ └── H-ui.reset.css
│ │ └── js/
│ │ └── H-ui.js
│ ├── h-ui.admin/
│ │ ├── css/
│ │ │ ├── H-ui.admin.css
│ │ │ ├── H-ui.login.css
│ │ │ └── style.css
│ │ ├── js/
│ │ │ ├── H-ui.admin.js
│ │ │ └── de_DE.txt
│ │ └── skin/
│ │ ├── black/
│ │ │ └── skin.css
│ │ ├── default/
│ │ │ └── skin.css
│ │ ├── green/
│ │ │ └── skin.css
│ │ ├── orange/
│ │ │ └── skin.css
│ │ ├── red/
│ │ │ └── skin.css
│ │ └── yellow/
│ │ └── skin.css
│ └── swagger/
│ ├── css/
│ │ ├── print.css
│ │ ├── reset.css
│ │ ├── screen.css
│ │ ├── style.css
│ │ └── typography.css
│ ├── index.html
│ ├── lang/
│ │ ├── el.js
│ │ ├── en.js
│ │ ├── es.js
│ │ ├── fr.js
│ │ ├── geo.js
│ │ ├── it.js
│ │ ├── ja.js
│ │ ├── ko-kr.js
│ │ ├── pl.js
│ │ ├── pt.js
│ │ ├── ru.js
│ │ ├── tr.js
│ │ ├── translator.js
│ │ └── zh-cn.js
│ ├── lib/
│ │ ├── backbone-min.js
│ │ ├── es5-shim.js
│ │ ├── handlebars-4.0.5.js
│ │ ├── highlight.9.1.0.pack.js
│ │ ├── highlight.9.1.0.pack_extended.js
│ │ ├── marked.js
│ │ ├── object-assign-pollyfill.js
│ │ └── swagger-oauth.js
│ ├── o2c.html
│ └── swagger-ui.js
├── ymall-web-api/
│ ├── pom.xml
│ ├── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── yuu/
│ │ │ └── ymall/
│ │ │ └── web/
│ │ │ └── api/
│ │ │ ├── common/
│ │ │ │ ├── config/
│ │ │ │ │ ├── AlipayConfig.java
│ │ │ │ │ ├── SwaggerConfiguration.java
│ │ │ │ │ └── ThymeleafConfig.java
│ │ │ │ └── utils/
│ │ │ │ ├── EmailUtil.java
│ │ │ │ ├── IPInfoUtil.java
│ │ │ │ ├── ObjectUtil.java
│ │ │ │ └── QiniuUtil.java
│ │ │ ├── controller/
│ │ │ │ ├── CartController.java
│ │ │ │ ├── GoodsController.java
│ │ │ │ ├── MemberController.java
│ │ │ │ └── OrderController.java
│ │ │ ├── domain/
│ │ │ │ └── ESItem.java
│ │ │ ├── dto/
│ │ │ │ ├── Cart.java
│ │ │ │ ├── CartProduct.java
│ │ │ │ ├── CateProductsResult.java
│ │ │ │ ├── CategoryProductPageInfo.java
│ │ │ │ ├── EmailCode.java
│ │ │ │ ├── Member.java
│ │ │ │ ├── MemberLogin.java
│ │ │ │ ├── Order.java
│ │ │ │ ├── OrderInfo.java
│ │ │ │ ├── OrderPay.java
│ │ │ │ ├── PageOrder.java
│ │ │ │ ├── ProductDet.java
│ │ │ │ ├── TbCate.java
│ │ │ │ ├── TbPanelContentDto.java
│ │ │ │ ├── TbPanelDto.java
│ │ │ │ └── UploadImg.java
│ │ │ ├── job/
│ │ │ │ └── OrderCloseJob.java
│ │ │ ├── mapper/
│ │ │ │ ├── TbAddressMapper.java
│ │ │ │ ├── TbExpressMapper.java
│ │ │ │ ├── TbItemCatMapper.java
│ │ │ │ ├── TbItemDescMapper.java
│ │ │ │ ├── TbItemMapper.java
│ │ │ │ ├── TbMemberMapper.java
│ │ │ │ ├── TbOrderItemMapper.java
│ │ │ │ ├── TbOrderMapper.java
│ │ │ │ ├── TbOrderShippingMapper.java
│ │ │ │ ├── TbPanelContentMapper.java
│ │ │ │ ├── TbPanelMapper.java
│ │ │ │ └── TbUserMapper.java
│ │ │ ├── repositories/
│ │ │ │ └── ItemRepository.java
│ │ │ └── service/
│ │ │ ├── CartService.java
│ │ │ ├── ContentService.java
│ │ │ ├── ItemCatService.java
│ │ │ ├── MemberService.java
│ │ │ ├── OrderService.java
│ │ │ ├── ProductService.java
│ │ │ └── impl/
│ │ │ ├── CartServiceImpl.java
│ │ │ ├── ContentServiceImpl.java
│ │ │ ├── ItemCatServiceImpl.java
│ │ │ ├── MemberServieImpl.java
│ │ │ ├── OrderServiceImpl.java
│ │ │ └── ProductServiceImpl.java
│ │ ├── resources/
│ │ │ ├── generatorConfig.xml
│ │ │ ├── log4j.properties
│ │ │ ├── log4j2.properties
│ │ │ ├── mapper/
│ │ │ │ ├── TbAddressMapper.xml
│ │ │ │ ├── TbExpressMapper.xml
│ │ │ │ ├── TbItemCatMapper.xml
│ │ │ │ ├── TbItemDescMapper.xml
│ │ │ │ ├── TbItemMapper.xml
│ │ │ │ ├── TbMemberMapper.xml
│ │ │ │ ├── TbOrderItemMapper.xml
│ │ │ │ ├── TbOrderMapper.xml
│ │ │ │ ├── TbOrderShippingMapper.xml
│ │ │ │ ├── TbPanelContentMapper.xml
│ │ │ │ ├── TbPanelMapper.xml
│ │ │ │ └── TbUserMapper.xml
│ │ │ ├── mybatis-config.xml
│ │ │ ├── resource.properties
│ │ │ ├── spring-context-druid.xml
│ │ │ ├── spring-context-elasticsearch.xml
│ │ │ ├── spring-context-mybatis.xml
│ │ │ ├── spring-context-redis.xml
│ │ │ ├── spring-context.xml
│ │ │ ├── spring-mvc.xml
│ │ │ ├── ymall.properties
│ │ │ └── zfbinfo.properties
│ │ └── webapp/
│ │ └── WEB-INF/
│ │ ├── templates/
│ │ │ ├── reset-pass.html
│ │ │ └── update-email.html
│ │ └── web.xml
│ └── test/
│ └── com/
│ └── yuu/
│ └── ymall/
│ └── web/
│ └── api/
│ └── test/
│ └── EsTest.java
└── ymall-web-ui/
├── .babelrc
├── .editorconfig
├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── .postcssrc.js
├── build/
│ ├── build.js
│ ├── check-versions.js
│ ├── dev-client.js
│ ├── dev-server.js
│ ├── utils.js
│ ├── vue-loader.conf.js
│ ├── webpack.base.conf.js
│ ├── webpack.dev.conf.js
│ └── webpack.prod.conf.js
├── config/
│ ├── dev.env.js
│ ├── index.js
│ └── prod.env.js
├── index.html
├── package.json
├── src/
│ ├── App.vue
│ ├── api/
│ │ ├── cart.js
│ │ ├── goods.js
│ │ ├── index.js
│ │ ├── member.js
│ │ ├── order.js
│ │ └── public.js
│ ├── assets/
│ │ ├── icon/
│ │ │ └── iconfont.css
│ │ └── style/
│ │ ├── common.scss
│ │ ├── index.scss
│ │ ├── mixin.scss
│ │ ├── reset.scss
│ │ └── theme.scss
│ ├── common/
│ │ ├── footer.vue
│ │ └── header.vue
│ ├── components/
│ │ ├── YButton.vue
│ │ ├── buynum.vue
│ │ ├── countDown.vue
│ │ ├── mallGoods.vue
│ │ ├── popup.vue
│ │ ├── product.vue
│ │ └── shelf.vue
│ ├── main.js
│ ├── page/
│ │ ├── Cart/
│ │ │ └── cart.vue
│ │ ├── Checkout/
│ │ │ └── checkout.vue
│ │ ├── Goods/
│ │ │ ├── goods.vue
│ │ │ └── goodsDetails.vue
│ │ ├── Home/
│ │ │ └── home.vue
│ │ ├── Login/
│ │ │ ├── forgetPassword.vue
│ │ │ ├── login.vue
│ │ │ └── register.vue
│ │ ├── Order/
│ │ │ ├── order.vue
│ │ │ ├── payment.vue
│ │ │ └── paysuccess.vue
│ │ ├── Refresh/
│ │ │ └── refreshsearch.vue
│ │ ├── Search/
│ │ │ └── search.vue
│ │ ├── User/
│ │ │ ├── children/
│ │ │ │ ├── addressList.vue
│ │ │ │ ├── information.vue
│ │ │ │ ├── order.vue
│ │ │ │ └── orderDetail.vue
│ │ │ └── user.vue
│ │ └── index.vue
│ ├── router/
│ │ └── index.js
│ ├── store/
│ │ ├── action.js
│ │ ├── index.js
│ │ ├── mutation-types.js
│ │ └── mutations.js
│ └── utils/
│ └── storage.js
└── static/
├── .gitkeep
├── geetest/
│ └── gt.js
├── images/
│ └── global-logo-red@2x.psd
└── js/
├── 3.c565d4ee71bdb3ac0105.js
├── 7.0814cc986a8375eb2381.js
└── app.e28b119acf7c187f0fbf.js
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitattributes
================================================
# Windows-specific files that require CRLF:
*.bat eol=crlf
*.txt eol=crlf
# Unix-specific files that require LF:
*.java eol=lf
*.sh eol=lf
*.js linguist-language=Java
================================================
FILE: .gitignore
================================================
target/
!.mvn/wrapper/maven-wrapper.jar
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
### IntelliJ IDEA ###
.idea/*
*.iws
*.iml
*.ipr
### JRebel ###
rebel.xml
### MAC ###
.DS_Store
### Other ###
logs/
temp/
/.idea/
================================================
FILE: README.md
================================================
## YMall
## 开发环境
- 操作系统:Windows 10 Enterprise
- 开发工具:Intellij IDEA
- 数据库:MySQL 8.0.13
- Java SDK:Oracle JDK 1.8.152
## 项目管理工具
- 项目构建:Maven
- 代码管理:Git
## 后台主要技术栈
- 核心框架:Spring + Spring MVC + MyBatis
- 数据库连接池:Alibaba Druid
- 数据库缓存:Redis
- 接口文档引擎:Swagger2 RESTful 风格 API 文档生成
- 全文检索引擎:Elasticsearch
- 系统任务调度:Quartz
## 前后分离
- 前端框架:NodeJS + Vue + Axios
- 前端模板:ElementUI
## 项目截图
### YMall 商城前台
- 首页



- 分类商品页

- 商品详情页


- 购物车

- 下单


- 支付


- 会员中心-我的订单


- 会员中心-账号资料

- 会员中心-修改地址

- 注册

- 登录

- 忘记密码

### YMall 商城后台
- 首页

## 项目部署
### 1. 运行项目所需环境
- JDK 1.8
- IDEA
- MySQL 5.5 以上
- Tomcat 8
- Elasticsearch 5.6
- Redis
确保你已经安装上述环境,以上安装教程可自行百度...,安装记得修改 `ymall-web-api` 和 `ymall-web-admin` 的 Redis 和 Elasticsearch 的连接地址

- 还需要七牛云的图片服务器和阿里云沙箱支付的密钥,请自行申请


### 2. 导入项目
- `IDEA` -> `open`

- 手动安装 `alipay` 依赖到本地仓库
因为 Mavan 中央仓库没有 alipay 的依赖所以需要手动安装依赖本地仓库,`alipay` 的 jar 文件在 `ymall-dependencies` 下的 `lib` 目录
在 jar 包的目录,执行 Maven 安装依赖的命令:
```java
mvn install:install-file -DgroupId=com.alipay -DartifactId=alipay-trade-sdk -Dversion=20161215 -Dpackaging=jar -Dfile=alipay-trade-sdk-20161215.jar
```
- 刷新依赖

### 3. 导入 SQL 文件
sql 文件在 `sql\ymall.sql`

### 4. 部署接口项目
由于前台使用的是前后分离,所以接口项目是给前台 Vue 项目使用的
- 配置 `Tomcat`


- 选择文件部署

- 配置端口号 `9090` JMX port `1100`

- 运行

### 5. 部署后台项目
后台项目暂时为 SSM + Jsp 项目,后期可能会重构为 VUE 项目
部署方式与接口项目一致,只需要改端口号和 JMX port 即可

### 6. 启动前台 vue 项目
- 确保已安装 `node.js`
- `npm install` 安装依赖
- `npm install node-sass` 安装 sass
- `npm run dev` 运行项目
================================================
FILE: pom.xml
================================================