- db
- fuint-db.sql[30KB]
 
 - fuint-application
- application-core
- src
- main
- java
- com
- fuint
- application
- App.java[180B]
 - BaseController.java[2KB]
 - BaseService.java[981B]
 - FrameworkConstants.java[181B]
 - PropertiesUtil.java[1KB]
 - ResponseObject.java[1KB]
 
 
 - application
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[656B]
 - application-core.iml[7KB]
 
 - src
 - application-dao
- src
- main
- java
- com
- fuint
- application
- dao
- entities
- MtAddress.java[3KB]
 - MtBalance.java[3KB]
 - MtBanner.java[2KB]
 - MtCart.java[2KB]
 - MtConfirmLog.java[4KB]
 - MtCoupon.java[7KB]
 - MtCouponGoods.java[2KB]
 - MtCouponGroup.java[2KB]
 - MtGive.java[4KB]
 - MtGiveItem.java[2KB]
 - MtGoods.java[6KB]
 - MtGoodsCate.java[2KB]
 - MtGoodsSku.java[2KB]
 - MtGoodsSpec.java[1KB]
 - MtMessage.java[2KB]
 - MtOpenGift.java[3KB]
 - MtOpenGiftItem.java[1KB]
 - MtOrder.java[6KB]
 - MtOrderAddress.java[3KB]
 - MtOrderGoods.java[2KB]
 - MtPoint.java[2KB]
 - MtRefund.java[3KB]
 - MtRegion.java[1KB]
 - MtSendLog.java[4KB]
 - MtSetting.java[2KB]
 - MtSmsSendedLog.java[2KB]
 - MtSmsTemplate.java[2KB]
 - MtStaff.java[3KB]
 - MtStore.java[4KB]
 - MtUser.java[6KB]
 - MtUserCoupon.java[4KB]
 - MtUserGrade.java[3KB]
 - MtUserGroup.java[1KB]
 - MtVerifyCode.java[2KB]
 - UvCouponInfo.java[7KB]
 
 - generator
- GenEntityMysql.java[14KB]
 
 - repositories
- MtAddressRepository.java[923B]
 - MtBalanceRepository.java[410B]
 - MtBannerRepository.java[394B]
 - MtCartRepository.java[1KB]
 - MtConfirmLogRepository.java[1KB]
 - MtCouponGoodsRepository.java[811B]
 - MtCouponGroupRepository.java[525B]
 - MtCouponInfoRepository.java[797B]
 - MtCouponRepository.java[1KB]
 - MtGiveItemRepository.java[403B]
 - MtGiveRepository.java[958B]
 - MtGoodsCateRepository.java[407B]
 - MtGoodsRepository.java[1KB]
 - MtGoodsSkuRepository.java[727B]
 - MtGoodsSpecRepository.java[407B]
 - MtMessageRepository.java[791B]
 - MtOpenGiftItemRepository.java[420B]
 - MtOpenGiftRepository.java[403B]
 - MtOrderAddressRepository.java[731B]
 - MtOrderGoodsRepository.java[411B]
 - MtOrderRepository.java[3KB]
 - MtPointRepository.java[390B]
 - MtRefundRepository.java[798B]
 - MtRegionRepository.java[394B]
 - MtSendLogRepository.java[1KB]
 - MtSettingRepository.java[780B]
 - MtSmsSendedLogRepository.java[433B]
 - MtSmsTemplateRepository.java[415B]
 - MtStaffRepository.java[1KB]
 - MtStoreRepository.java[1KB]
 - MtUserCouponRepository.java[3KB]
 - MtUserGradeRepository.java[407B]
 - MtUserGroupRepository.java[407B]
 - MtUserRepository.java[3KB]
 - MtVerifyCodeRepository.java[1KB]
 
 
 - entities
 - dto
- GiveDto.java[3KB]
 - GiveItemDto.java[2KB]
 - MtSmsTemplateDto.java[1KB]
 - MtStoreDto.java[3KB]
 
 - util
- Constant.java[8KB]
 - JsonDateDeserializer.java[1KB]
 
 - App.java[184B]
 
 - dao
 
 - application
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[805B]
 - application-dao.iml[11KB]
 
 - src
 - application-service
- src
- main
- java
- com
- fuint
- application
- annoation
- RefreshCache.java[290B]
 
 - config
- CacheAspect.java[1KB]
 - Constants.java[1KB]
 - Message.java[604B]
 - RedisCacheConfig.java[2KB]
 - SlaveRedisTemplate.java[7KB]
 - WXPayConfigImpl.java[1KB]
 
 - dto
- AddressDto.java[2KB]
 - AssetDto.java[582B]
 - BalanceDto.java[2KB]
 - BannerDto.java[1KB]
 - Body.java[1KB]
 - ConfirmLogDto.java[3KB]
 - ContentDto.java[532B]
 - CouponCellDto.java[665B]
 - CouponDto.java[3KB]
 - CouponTotalDto.java[1KB]
 - DateDto.java[428B]
 - ExceptionDto.java[4KB]
 - ExpressDto.java[753B]
 - GoodsDetailDto.java[5KB]
 - GoodsDto.java[5KB]
 - GoodsSkuDto.java[1KB]
 - GoodsSpecChildDto.java[674B]
 - GoodsSpecDto.java[816B]
 - GoodsSpecItemDto.java[764B]
 - GoodsSpecValueDto.java[807B]
 - GroupDataDto.java[971B]
 - GroupDataListDto.java[393B]
 - Head.java[1KB]
 - Message.java[1KB]
 - MessageStatusEnum.java[951B]
 - MessageUtil.java[1KB]
 - MyCouponDto.java[3KB]
 - OpenGiftDto.java[2KB]
 - OrderDto.java[5KB]
 - OrderGoodsDto.java[1KB]
 - OrderUserDto.java[1KB]
 - Page.java[2KB]
 - PointDto.java[2KB]
 - PreStoreRuleDto.java[596B]
 - RechargeRuleDto.java[582B]
 - RefundDto.java[2KB]
 - RegionDto.java[1KB]
 - ReqCouponDto.java[6KB]
 - ReqCouponGroupDto.java[1KB]
 - ReqResult.java[882B]
 - ReqSendCouponDto.java[810B]
 - ReqSendLogDto.java[3KB]
 - ResCartDto.java[1KB]
 - ResCateDto.java[1KB]
 - ResMyCouponDto.java[1KB]
 - ResUserOrderDto.java[1KB]
 - SubMessageDto.java[983B]
 - TokenDto.java[938B]
 - UserCouponDto.java[3KB]
 - UserOrderDto.java[6KB]
 
 - enums
- ApplyGoodsEnum.java[1KB]
 - BalanceSettingEnum.java[1KB]
 - CouponContentEnum.java[741B]
 - CouponTypeEnum.java[674B]
 - OrderModeEnum.java[649B]
 - OrderStatusEnum.java[808B]
 - OrderTypeEnum.java[788B]
 - PayStatusEnum.java[640B]
 - PayTypeEnum.java[735B]
 - PlatformTypeEnum.java[711B]
 - PointSettingEnum.java[1KB]
 - RefundStatusEnum.java[693B]
 - SendWayEnum.java[1KB]
 - SettingTypeEnum.java[1KB]
 - StatusEnum.java[729B]
 - UserCouponStatusEnum.java[1KB]
 - UserGradeCatchTypeEnum.java[791B]
 - UserSettingEnum.java[1KB]
 - WxMessageEnum.java[1KB]
 
 - http
 - job
- CacheClearJob.java[818B]
 
 - service
- address
- AddressService.java[861B]
 - AddressServiceImpl.java[3KB]
 
 - balance
- BalanceService.java[865B]
 - BalanceServiceImpl.java[3KB]
 
 - banner
- BannerService.java[1KB]
 - BannerServiceImpl.java[5KB]
 
 - cart
- CartService.java[1KB]
 - CartServiceImpl.java[4KB]
 
 - confirmlog
- ConfirmLogService.java[1004B]
 - ConfirmLogServiceImpl.java[3KB]
 
 - coupon
- CouponService.java[3KB]
 - CouponServiceImpl.java[35KB]
 
 - coupongroup
 - give
- GiveService.java[1KB]
 - GiveServiceImpl.java[17KB]
 
 - goods
- CateService.java[1KB]
 - CateServiceImpl.java[4KB]
 - GoodsService.java[2KB]
 - GoodsServiceImpl.java[12KB]
 
 - member
- MemberService.java[3KB]
 - MemberServiceImpl.java[16KB]
 
 - message
- MessageService.java[1KB]
 - MessageServiceImpl.java[2KB]
 
 - opengift
- OpenGiftService.java[1KB]
 - OpenGiftServiceImpl.java[12KB]
 
 - order
- OrderService.java[2KB]
 - OrderServiceImpl.java[39KB]
 
 - point
- PointService.java[850B]
 - PointServiceImpl.java[3KB]
 
 - refund
- RefundService.java[1KB]
 - RefundServiceImpl.java[9KB]
 
 - sendlog
- SendLogService.java[1KB]
 - SendLogServiceImpl.java[3KB]
 
 - setting
- SettingService.java[1KB]
 - SettingServiceImpl.java[3KB]
 
 - sms
- MessageResInfo.java[700B]
 - SendSmsInterface.java[1KB]
 - SmsPlatformSendSms.java[3KB]
 - SmsPlatformService.java[7KB]
 
 - smstemplate
 - staff
- StaffService.java[1KB]
 - StaffServiceImpl.java[9KB]
 
 - store
- StoreService.java[2KB]
 - StoreServiceImpl.java[7KB]
 
 - token
- TokenService.java[3KB]
 
 - usercoupon
- UserCouponService.java[2KB]
 - UserCouponServiceImpl.java[19KB]
 
 - usergrade
 - verifycode
 - weixin
- WeixinService.java[1KB]
 - WeixinServiceimpl.java[19KB]
 
 
 - address
 - util
- AliyunOssUtil.java[3KB]
 - Base64Util.java[2KB]
 - BeanUtil.java[6KB]
 - BizCodeGenerator.java[1KB]
 - CommonUtil.java[18KB]
 - DateUtil.java[6KB]
 - DtoConversionEntity.java[3KB]
 - HtmlEncode.java[1KB]
 - HttpPostUploadUtil.java[6KB]
 - JsonUtil.java[1KB]
 - ListUtil.java[810B]
 - MD5Util.java[1KB]
 - PhoneFormatCheckUtils.java[1KB]
 - QRCodeUtil.java[5KB]
 - QuartzCronUtil.java[1KB]
 - RedisUtil.java[1KB]
 - RegexUtil.java[2KB]
 - SeqUtil.java[3KB]
 - TimeUtils.java[3KB]
 - XlsUtil.java[6KB]
 
 - App.java[224B]
 
 - annoation
 
 - application
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[3KB]
 - application-service.iml[16KB]
 
 - src
 - application-web
- src
- main
- java
- com
- fuint
- application
- web
- backend
- account
 - balance
- balanceController.java[10KB]
 
 - base
- BaseController.java[678B]
 
 - cashierManager
 - components
- FileController.java[7KB]
 
 - config
- ApplicationConfig.java[390B]
 
 - confirmLog
 - content
 - coupon
- couponController.java[21KB]
 - doConfirmController.java[6KB]
 
 - couponGroup
 - give
 - goods
- cateController.java[6KB]
 - goodsController.java[27KB]
 
 - home
- homeController.java[7KB]
 
 - member
- MemberController.java[12KB]
 
 - openGift
 - orderManager
 - point
- pointController.java[9KB]
 
 - refundManager
 - sendLog
 - smsManager
 - smsTemplate
 - staff
 - store
- storeController.java[10KB]
 
 - subMessage
 - userCoupon
 - userGrade
 - util
- ExcelUtil.java[3KB]
 - JSONUtil.java[3KB]
 - UploadResult.java[1KB]
 
 
 - rest
- AddressController.java[7KB]
 - CaptchaApiController.java[2KB]
 - CartController.java[8KB]
 - CashierController.java[1KB]
 - ConfirmController.java[5KB]
 - ConfirmerController.java[4KB]
 - CouponApiController.java[5KB]
 - GiveController.java[5KB]
 - GoodsApiController.java[11KB]
 - HelpController.java[1KB]
 - MerchantController.java[3KB]
 - MessageController.java[4KB]
 - MyCouponController.java[3KB]
 - OrderController.java[5KB]
 - PageController.java[3KB]
 - PayController.java[9KB]
 - PointsController.java[2KB]
 - RefundController.java[4KB]
 - RegionController.java[3KB]
 - SettlementController.java[17KB]
 - SignController.java[6KB]
 - SmsController.java[3KB]
 - StoreApiController.java[2KB]
 - SystemController.java[3KB]
 - UserController.java[10KB]
 - UserCouponApiController.java[6KB]
 
 
 - backend
 
 - web
 
 - application
 
 - fuint
 
 - com
 - resources
- config
- application.properties[1KB]
 
 - international
- message_en_US.properties[752B]
 - message_zh_CN.properties[752B]
 
 - template
- couponCode.xlsx[9KB]
 - couponCodeList.ftl[6KB]
 - importRuleTemplate.xlsx[9KB]
 - importTemplate.xlsx[9KB]
 
 - applicationContext.xml[312B]
 
 - config
 - webapp
- static
- assets
- css
- theme
- default.css[4KB]
 
 - animate.min.css[46KB]
 - style-responsive.min.css[14KB]
 - style.min.css[110KB]
 
 - theme
 - img
- avatar
- user-1.png[1KB]
 - user-10.png[1KB]
 - user-11.png[1KB]
 - user-12.png[1KB]
 - user-2.png[1KB]
 - user-3.png[1KB]
 - user-4.png[1KB]
 - user-5.png[1KB]
 - user-6.png[1KB]
 - user-7.png[1KB]
 - user-8.png[1KB]
 - user-9.png[1KB]
 
 - login-bg
- 1.jpg[115KB]
 - 111.jpg[146KB]
 - 2.jpg[111KB]
 - 222.jpg[145KB]
 - bg.png[134KB]
 
 - transparent
- black-0.1.png[924B]
 - black-0.2.png[924B]
 - black-0.3.png[924B]
 - black-0.4.png[924B]
 - black-0.5.png[924B]
 - black-0.6.png[924B]
 - black-0.7.png[924B]
 - black-0.8.png[924B]
 - black-0.9.png[924B]
 - white-0.1.png[925B]
 - white-0.2.png[925B]
 - white-0.3.png[925B]
 - white-0.4.png[925B]
 - white-0.5.png[925B]
 - white-0.6.png[925B]
 - white-0.7.png[925B]
 - white-0.8.png[925B]
 - white-0.9.png[925B]
 - white-0.98.png[925B]
 
 
 - avatar
 - js
- apps.min.js[17KB]
 
 - pace
- pace.min.js[12KB]
 
 - plugins
- bootstrap
- css
- bootstrap.min.css[114KB]
 
 - js
- bootstrap.min.js[35KB]
 
 
 - css
 - bootstrap-calendar
- css
 - js
 
 - cashier
- assets
- images
- product-1.jpg[75KB]
 - product-10.jpg[264KB]
 - product-11.jpg[118KB]
 - product-12.jpg[60KB]
 - product-13.jpg[45KB]
 - product-14.jpg[60KB]
 - product-15.jpg[279KB]
 - product-16.jpg[194KB]
 - product-17.jpg[96KB]
 - product-2.jpg[142KB]
 - product-3.jpg[585KB]
 - product-4.jpg[608KB]
 - product-5.jpg[135KB]
 - product-6.jpg[55KB]
 - product-7.jpg[71KB]
 - product-8.jpg[225KB]
 - product-9.jpg[61KB]
 
 - all-cate.svg[1KB]
 - icon-cart.svg[2KB]
 - icon-table.svg[1KB]
 - logo.svg[1KB]
 
 - images
 - webfonts
- fa-brands-400.ttf[175KB]
 - fa-brands-400.woff2[102KB]
 - fa-solid-900.ttf[296KB]
 - fa-solid-900.woff2[123KB]
 
 - app.min.css[942KB]
 - app.min.js[55KB]
 - pos.js[32KB]
 - readme.txt[72B]
 - vendor.min.css[244KB]
 - vendor.min.js[444KB]
 
 - assets
 - datatables
- css
- data-table.css[19KB]
 
 
 - css
 - datetimepicker
- css
 - js
 
 - echarts
- echarts-data.js[6KB]
 - echarts.js[318KB]
 
 - font-awesome
- css
- font-awesome.min.css[23KB]
 
 - fonts
- fontawesome-webfont.eot[59KB]
 - fontawesome-webfont.svg[306KB]
 - fontawesome-webfont.ttf[119KB]
 - fontawesome-webfont.woff[69KB]
 - fontawesome-webfont.woff2[55KB]
 - FontAwesome.otf[91KB]
 
 
 - css
 - gritter
- css
- jquery.gritter.css[2KB]
 
 - js
- jquery.gritter.js[14KB]
 
 
 - css
 - jquery
- jquery-1.9.1.min.js[90KB]
 - jquery-migrate-1.1.0.min.js[6KB]
 - jquery.fullscreen-min.js[1KB]
 
 - jquery-file-upload
- blueimp-gallery
 - cors
- postmessage.html[2KB]
 - result.html[537B]
 
 - css
- demo-ie8.css[396B]
 - demo.css[1KB]
 - jquery.fileupload-noscript.css[431B]
 - jquery.fileupload-ui-noscript.css[371B]
 - jquery.fileupload-ui.css[1KB]
 - jquery.fileupload.css[655B]
 - style.css[294B]
 
 - img
- loading.gif[3KB]
 - progressbar.gif[3KB]
 
 - js
- cors
 - vendor
- canvas-to-blob.min.js[1KB]
 - jquery.ui.widget.js[18KB]
 - load-image.min.js[15KB]
 - tmpl.min.js[980B]
 
 - app.js[3KB]
 - jquery.fileupload-angular.js[16KB]
 - jquery.fileupload-audio.js[3KB]
 - jquery.fileupload-image.js[11KB]
 - jquery.fileupload-jquery-ui.js[4KB]
 - jquery.fileupload-process.js[5KB]
 - jquery.fileupload-ui.js[26KB]
 - jquery.fileupload-validate.js[3KB]
 - jquery.fileupload-video.js[3KB]
 - jquery.fileupload.js[60KB]
 - jquery.iframe-transport.js[10KB]
 - main.js[2KB]
 
 - server
- gae-go
- app
- main.go[8KB]
 
 - static
- robots.txt[24B]
 - favicon.ico[1KB]
 
 - app.yaml[214B]
 
 - app
 - gae-python
- static
- robots.txt[24B]
 - favicon.ico[1KB]
 
 - main.py[5KB]
 - app.yaml[262B]
 
 - static
 - node
- package.json[1KB]
 - server.js[11KB]
 
 
 - gae-go
 - README.md[7KB]
 
 - jquery-jvectormap
 - jquery-ui
- themes
- base
- minified
- jquery-ui.min.css[25KB]
 
 
 - minified
 
 - base
 - ui
- minified
- jquery-ui.min.js[223KB]
 
 
 - minified
 
 - themes
 - morris
- morris.css[433B]
 - morris.js[64KB]
 - raphael.min.js[90KB]
 
 - pace
- pace.min.js[12KB]
 
 - skuTable
- images
- pikachu.png[64KB]
 - sku-add.png[1KB]
 
 - json
- specCreate.json[82B]
 - specValueCreate.json[85B]
 - upload.json[102B]
 
 - layui
- css
- modules
- laydate
- default
- laydate.css[7KB]
 
 
 - default
 - layer
- default
- layer.css[13KB]
 - icon-ext.png[5KB]
 - icon.png[11KB]
 - loading-0.gif[5KB]
 - loading-1.gif[701B]
 - loading-2.gif[1KB]
 
 
 - default
 - code.css[1KB]
 
 - laydate
 - layui.css[78KB]
 
 - modules
 - font
- iconfont.eot[45KB]
 - iconfont.svg[299KB]
 - iconfont.ttf[45KB]
 - iconfont.woff[29KB]
 - iconfont.woff2[25KB]
 
 - layui.js[284KB]
 
 - css
 - skuTable.html[7KB]
 - skuTable.js[24KB]
 
 - images
 - slimscroll
 - ueditor
- dialogs
- anchor
- anchor.html[1KB]
 
 - attachment
- fileTypeImages
- icon_chm.gif[923B]
 - icon_default.png[841B]
 - icon_doc.gif[1012B]
 - icon_exe.gif[949B]
 - icon_jpg.gif[950B]
 - icon_mp3.gif[986B]
 - icon_mv.gif[1001B]
 - icon_pdf.gif[996B]
 - icon_ppt.gif[1001B]
 - icon_psd.gif[1009B]
 - icon_rar.gif[1007B]
 - icon_txt.gif[970B]
 - icon_xls.gif[1005B]
 
 - images
- alignicon.gif[1KB]
 - alignicon.png[3KB]
 - bg.png[2KB]
 - file-icons.gif[19KB]
 - file-icons.png[43KB]
 - icons.gif[453B]
 - icons.png[2KB]
 - image.png[1KB]
 - progress.png[1KB]
 - success.gif[445B]
 - success.png[1KB]
 
 - attachment.css[14KB]
 - attachment.html[2KB]
 - attachment.js[29KB]
 
 - fileTypeImages
 - background
- images
- bg.png[2KB]
 - success.png[1KB]
 
 - background.css[2KB]
 - background.html[2KB]
 - background.js[14KB]
 
 - images
 - charts
- images
- charts0.png[24KB]
 - charts1.png[18KB]
 - charts2.png[22KB]
 - charts3.png[7KB]
 - charts4.png[8KB]
 - charts5.png[45KB]
 
 - chart.config.js[1KB]
 - charts.css[2KB]
 - charts.html[4KB]
 - charts.js[10KB]
 
 - images
 - emotion
- images
- 0.gif[43B]
 - bface.gif[26KB]
 - cface.gif[8KB]
 - fface.gif[18KB]
 - jxface2.gif[39KB]
 - neweditor-tab-bg.png[216B]
 - tface.gif[19KB]
 - wface.gif[48KB]
 - yface.gif[27KB]
 
 - emotion.css[1KB]
 - emotion.html[5KB]
 - emotion.js[6KB]
 
 - images
 - gmap
- gmap.html[3KB]
 
 - help
 - image
- images
- alignicon.jpg[15KB]
 - bg.png[2KB]
 - icons.gif[453B]
 - icons.png[2KB]
 - image.png[1KB]
 - progress.png[1KB]
 - success.gif[445B]
 - success.png[1KB]
 
 - image.css[17KB]
 - image.html[5KB]
 - image.js[42KB]
 
 - images
 - insertframe
- insertframe.html[4KB]
 
 - link
- link.html[4KB]
 
 - map
 - music
- music.css[1KB]
 - music.html[950B]
 - music.js[7KB]
 
 - preview
- preview.html[1KB]
 
 - scrawl
- images
- addimg.png[628B]
 - brush.png[608B]
 - delimg.png[516B]
 - delimgH.png[578B]
 - empty.png[519B]
 - emptyH.png[657B]
 - eraser.png[42KB]
 - redo.png[454B]
 - redoH.png[536B]
 - scale.png[435B]
 - scaleH.png[330B]
 - size.png[775B]
 - undo.png[444B]
 - undoH.png[511B]
 
 - scrawl.css[3KB]
 - scrawl.html[3KB]
 - scrawl.js[26KB]
 
 - images
 - searchreplace
- searchreplace.html[4KB]
 - searchreplace.js[4KB]
 
 - snapscreen
- snapscreen.html[1KB]
 
 - spechars
- spechars.html[829B]
 - spechars.js[4KB]
 
 - table
- edittable.css[1KB]
 - edittable.html[2KB]
 - edittable.js[8KB]
 - edittd.html[1KB]
 - edittip.html[863B]
 - dragicon.png[304B]
 
 - template
- images
- bg.gif[84B]
 - pre0.png[250B]
 - pre1.png[291B]
 - pre2.png[394B]
 - pre3.png[485B]
 - pre4.png[393B]
 
 - config.js[12KB]
 - template.css[1KB]
 - template.html[922B]
 - template.js[1KB]
 
 - images
 - video
- images
- bg.png[2KB]
 - center_focus.jpg[11KB]
 - file-icons.gif[19KB]
 - file-icons.png[43KB]
 - icons.gif[453B]
 - icons.png[2KB]
 - image.png[1KB]
 - left_focus.jpg[11KB]
 - none_focus.jpg[11KB]
 - progress.png[1KB]
 - right_focus.jpg[11KB]
 - success.gif[445B]
 - success.png[1KB]
 
 - video.css[14KB]
 - video.html[4KB]
 - video.js[29KB]
 
 - images
 - webapp
- webapp.html[2KB]
 
 - wordimage
- tangram.js[47KB]
 - wordimage.html[6KB]
 - wordimage.js[4KB]
 - fClipboard_ueditor.swf[1KB]
 - imageUploader.swf[61KB]
 
 - internal.js[2KB]
 
 - anchor
 - lang
- en
- images
- addimage.png[3KB]
 - alldeletebtnhoverskin.png[743B]
 - alldeletebtnupskin.png[743B]
 - background.png[3KB]
 - button.png[4KB]
 - copy.png[1KB]
 - deletedisable.png[649B]
 - deleteenable.png[664B]
 - listbackground.png[3KB]
 - localimage.png[3KB]
 - music.png[89KB]
 - rotateleftdisable.png[719B]
 - rotateleftenable.png[952B]
 - rotaterightdisable.png[754B]
 - rotaterightenable.png[1007B]
 - upload.png[3KB]
 
 - en.js[28KB]
 
 - images
 - zh-cn
- images
- copy.png[4KB]
 - localimage.png[6KB]
 - music.png[22KB]
 - upload.png[6KB]
 
 - zh-cn.js[28KB]
 
 - images
 
 - en
 - themes
- default
- css
- ueditor.css[42KB]
 - ueditor.min.css[34KB]
 
 - images
- anchor.gif[184B]
 - arrow.png[1KB]
 - arrow_down.png[1KB]
 - arrow_up.png[1KB]
 - button-bg.gif[1KB]
 - cancelbutton.gif[1KB]
 - charts.png[518B]
 - cursor_h.gif[253B]
 - cursor_h.png[175B]
 - cursor_v.gif[370B]
 - cursor_v.png[177B]
 - dialog-title-bg.png[938B]
 - filescan.png[4KB]
 - highlighted.gif[111B]
 - icons-all.gif[3KB]
 - icons.gif[20KB]
 - icons.png[19KB]
 - img-cracked.png[1KB]
 - loaderror.png[3KB]
 - loading.gif[734B]
 - lock.gif[1KB]
 - neweditor-tab-bg.png[216B]
 - pagebreak.gif[54B]
 - scale.png[167B]
 - sortable.png[2KB]
 - spacer.gif[43B]
 - sparator_v.png[122B]
 - table-cell-align.png[1KB]
 - tangram-colorpicker.png[16KB]
 - toolbar_bg.png[170B]
 - unhighlighted.gif[111B]
 - upload.png[6KB]
 - videologo.gif[1KB]
 - word.gif[1019B]
 - wordpaste.png[6KB]
 
 - dialogbase.css[1KB]
 
 - css
 - iframe.css[345B]
 
 - default
 - third-party
- codemirror
- codemirror.css[2KB]
 - codemirror.js[154KB]
 
 - highcharts
- adapters
- mootools-adapter.js[2KB]
 - mootools-adapter.src.js[9KB]
 - prototype-adapter.js[3KB]
 - prototype-adapter.src.js[11KB]
 - standalone-framework.js[4KB]
 - standalone-framework.src.js[16KB]
 
 - modules
- annotations.js[3KB]
 - annotations.src.js[10KB]
 - canvas-tools.js[56KB]
 - canvas-tools.src.js[111KB]
 - data.js[4KB]
 - data.src.js[19KB]
 - drilldown.js[5KB]
 - drilldown.src.js[14KB]
 - exporting.js[7KB]
 - exporting.src.js[21KB]
 - funnel.js[1KB]
 - funnel.src.js[8KB]
 - heatmap.js[535B]
 - heatmap.src.js[1KB]
 - map.js[9KB]
 - map.src.js[34KB]
 - no-data-to-display.js[1KB]
 - no-data-to-display.src.js[3KB]
 
 - themes
- dark-blue.js[6KB]
 - dark-green.js[6KB]
 - gray.js[6KB]
 - grid.js[2KB]
 - skies.js[2KB]
 
 - highcharts-more.js[21KB]
 - highcharts-more.src.js[72KB]
 - highcharts.js[137KB]
 - highcharts.src.js[445KB]
 
 - adapters
 - snapscreen
- UEditorSnapscreen.exe[507KB]
 
 - SyntaxHighlighter
- shCore.js[162KB]
 - shCoreDefault.css[6KB]
 
 - video-js
- font
- vjs.eot[3KB]
 - vjs.svg[9KB]
 - vjs.ttf[3KB]
 - vjs.woff[4KB]
 
 - video-js.css[20KB]
 - video-js.min.css[11KB]
 - video.dev.js[209KB]
 - video.js[54KB]
 - video-js.swf[15KB]
 
 - font
 - webuploader
- webuploader.css[560B]
 - webuploader.custom.js[193KB]
 - webuploader.custom.min.js[45KB]
 - webuploader.flashonly.js[135KB]
 - webuploader.flashonly.min.js[32KB]
 - webuploader.html5only.js[182KB]
 - webuploader.html5only.min.js[45KB]
 - webuploader.js[226KB]
 - webuploader.min.js[56KB]
 - webuploader.withoutimage.js[148KB]
 - webuploader.withoutimage.min.js[38KB]
 - Uploader.swf[48KB]
 
 - zeroclipboard
- ZeroClipboard.js[42KB]
 - ZeroClipboard.min.js[18KB]
 - ZeroClipboard.swf[3KB]
 
 - jquery-1.10.2.js[280KB]
 - jquery-1.10.2.min.js[90KB]
 - jquery-1.10.2.min.map[136KB]
 
 - codemirror
 - index.html[6KB]
 - ueditor.all.js[985KB]
 - ueditor.all.min.js[376KB]
 - ueditor.config.js[19KB]
 - ueditor.parse.js[32KB]
 - ueditor.parse.min.js[14KB]
 
 - dialogs
 
 - bootstrap
 - favicon.ico[2KB]
 
 - css
 - css
- zTreeStyle
- img
- diy
- 1_close.png[601B]
 - 1_open.png[580B]
 - 2.png[570B]
 - 3.png[762B]
 - 4.png[399B]
 - 5.png[710B]
 - 6.png[432B]
 - 7.png[534B]
 - 8.png[529B]
 - 9.png[467B]
 
 - line_conn.gif[45B]
 - loading.gif[381B]
 - zTreeStandard.gif[5KB]
 - zTreeStandard.png[10KB]
 
 - diy
 - zTreeStyle.css[6KB]
 
 - img
 - common.css[31KB]
 - style.css[9KB]
 
 - zTreeStyle
 - defaultImage
- all.png[1KB]
 - avatar.png[1KB]
 - banner-1.png[373KB]
 - banner-2.png[177KB]
 - card.png[3KB]
 - coupon.png[6KB]
 - hot.png[2KB]
 - life.png[1KB]
 - love.png[1KB]
 - none.png[1KB]
 - office.png[504B]
 - timer.png[3KB]
 
 - img
- card.png[1KB]
 - coupon.png[1KB]
 - fail.png[657B]
 - goods.png[920B]
 - member.png[1KB]
 - order.png[434B]
 - pay.png[755B]
 - success.png[841B]
 
 - js
- custom
- validation
- validate-methods.js[5KB]
 
 - ajaxfileupload.js[9KB]
 - custom.js[22KB]
 - fuintAjax.js[1KB]
 - jsencrypt.min.js[56KB]
 - map.js[3KB]
 - message.js[433B]
 - picUpload.js[1KB]
 - send.js[14KB]
 - util.js[6KB]
 
 - validation
 - jquery
- ui
- images
- ui-bg_diagonals-thick_18_b81900_40x40.png[418B]
 - ui-bg_diagonals-thick_20_666666_40x40.png[312B]
 - ui-bg_flat_10_000000_40x100.png[205B]
 - ui-bg_glass_100_f6f6f6_1x400.png[262B]
 - ui-bg_glass_100_fdf5ce_1x400.png[348B]
 - ui-bg_glass_65_ffffff_1x400.png[207B]
 - ui-bg_gloss-wave_35_f6a828_500x100.png[5KB]
 - ui-bg_highlight-soft_100_eeeeee_1x100.png[278B]
 - ui-bg_highlight-soft_75_ffe45c_1x100.png[328B]
 - ui-icons_222222_256x240.png[6KB]
 - ui-icons_228ef1_256x240.png[4KB]
 - ui-icons_ef8c08_256x240.png[4KB]
 - ui-icons_ffd27a_256x240.png[4KB]
 - ui-icons_ffffff_256x240.png[6KB]
 
 - jquery-ui.min.css[29KB]
 - jquery-ui.min.js[234KB]
 
 - images
 - validation
- jquery.validate.min.js[22KB]
 - messages_zh.min.js[1KB]
 
 - ztree
- jquery-1.4.4.min.js[76KB]
 - jquery.ztree.all.js[134KB]
 - jquery.ztree.all.min.js[60KB]
 - jquery.ztree.core.js[71KB]
 - jquery.ztree.core.min.js[29KB]
 - jquery.ztree.excheck.js[26KB]
 - jquery.ztree.excheck.min.js[10KB]
 - jquery.ztree.exedit.js[55KB]
 - jquery.ztree.exedit.min.js[20KB]
 - jquery.ztree.exhide.js[13KB]
 - jquery.ztree.exhide.min.js[5KB]
 
 - jquery-3.0.0.min.js[84KB]
 
 - ui
 - layer
 
 - custom
 - uploadImages
- 20220110
- 31cbf7ad0ef442a4b10dcefc24db0662.jpg[98KB]
 - 4c90921a7fc34c97b0f62cebf314d2bb.jpg[67KB]
 - 56e306c812f240f89c0ed96ab8f94ad0.jpg[80KB]
 - 6083071182cd48afa6c2b9e23f181832.jpg[36KB]
 - 6b67b70f35734ff28a03aa3d82ac96a0.jpg[74KB]
 - 856dbc96197e4782b4febb7a6e671bcb.jpg[22KB]
 - 9b64b3d65fa04296b62de186899f24ea.jpg[59KB]
 - bfdd063cda3043688252ff49513e1fec.jpg[78KB]
 - d39f84568b9746f89d9f6a368b8067c4.jpg[75KB]
 - e641d7430df04c35a93a8238f5f6e312.jpg[74KB]
 - ee5c67ed338442fc90e5c647ccbfd381.jpg[103KB]
 - ff4809f7a17d4142ace9bc287aab105a.jpg[122KB]
 
 
 - 20220110
 
 - assets
 - template
- page
- account
- account_add.html[4KB]
 - account_edit.html[6KB]
 - account_list.html[4KB]
 - account_update_pwd.html[2KB]
 
 - balance
- list.html[3KB]
 - recharge.html[4KB]
 - setting.html[5KB]
 
 - banner
 - cashier
- index.html[32KB]
 
 - common
- include
- footer.html[15B]
 - header.html[1KB]
 - left_menu.html[1KB]
 
 - macro
- pagination.ftl[4KB]
 - resource.ftl[1KB]
 - tree.ftl[1KB]
 
 
 - include
 - components
- confirmerCouponQuickPage.html[3KB]
 - groupList.html[1KB]
 - groupQuickSearch.html[3KB]
 - simple_storeList.html[2KB]
 - simple_storeQuickSearch.html[4KB]
 - storeList.html[1KB]
 - storeQuickSearch.html[3KB]
 
 - confirmLog
- confirmLogList.html[4KB]
 
 - coupon
- confirm.html[6KB]
 - form.html[29KB]
 - index.html[5KB]
 - list.html[5KB]
 
 - couponGroup
- add.html[2KB]
 - edit.html[2KB]
 - index.html[6KB]
 - list.html[2KB]
 
 - duty
- duty_add.html[3KB]
 - duty_edit.html[3KB]
 - duty_list.html[3KB]
 
 - give
- index.html[3KB]
 - item.html[1KB]
 - itemList.html[1KB]
 - list.html[2KB]
 
 - goods
- cate
 - goods
- add.html[26KB]
 - list.html[5KB]
 - searchGoods.html[3KB]
 - searchGoodsList.html[2KB]
 
 
 - home
- cashierResult.html[1KB]
 - confirmCoupon.html[1KB]
 - index.html[15KB]
 - toCashier.html[3KB]
 
 - log
- log_list.html[2KB]
 
 - member
- member_add.html[5KB]
 - member_edit.html[6KB]
 - member_list.html[6KB]
 - setting.html[3KB]
 
 - openGift
 - order
- detail.html[9KB]
 - list.html[13KB]
 
 - point
- list.html[2KB]
 - recharge.html[4KB]
 - setting.html[3KB]
 
 - refund
- detail.html[2KB]
 - list.html[4KB]
 
 - sendLog
- index.html[3KB]
 - list.html[4KB]
 - list_batch.html[4KB]
 
 - sessions
- sessions_list.html[1KB]
 
 - smsManager
- index.html[1KB]
 - list.html[1KB]
 
 - smsTemplate
- add.html[3KB]
 - edit.html[3KB]
 - index.html[1KB]
 - list.html[2KB]
 
 - source
- source_add.html[5KB]
 - source_edit.html[5KB]
 - source_list.html[4KB]
 
 - staff
 - store
- store_add.html[5KB]
 - store_edit.html[5KB]
 - store_list.html[4KB]
 
 - subMessage
- index.html[1KB]
 
 - userCoupon
- list.html[8KB]
 
 - userGrade
 - error.html[173B]
 - index.html[6KB]
 - login.html[4KB]
 
 - account
 
 - page
 - WEB-INF
- web.xml[372B]
 
 - index.jsp[134B]
 
 - static
 
 - java
 
 - main
 - pom.xml[918B]
 - application-web.iml[17KB]
 
 - src
 - pom.xml[2KB]
 - fuint-application.iml[6KB]
 
 - application-core
 - fuint-framework
- fuint-base
- src
- main
- java
- com
- fuint
- base
- annoation
- OperationServiceLog.java[337B]
 
 - config
- JpaConfig.java[5KB]
 - JpaInitializer.java[922B]
 - LogAspect.java[3KB]
 
 - dao
- entities
- TAccount.java[5KB]
 - TAccountDuty.java[1KB]
 - TActionLog.java[2KB]
 - TDuty.java[3KB]
 - TDutySource.java[1KB]
 - TPlatform.java[1KB]
 - TSource.java[3KB]
 - TStore.java[3KB]
 
 - pagination
 - repositories
- TAccountDutyRepository.java[1001B]
 - TAccountRepository.java[2KB]
 - TActionLogRepository.java[398B]
 - TDutyRepository.java[876B]
 - TDutySourceRepository.java[965B]
 - TPlatformRepository.java[753B]
 - TSourceRepository.java[1KB]
 - TStoreRepository.java[382B]
 
 - BaseCustomRepository.java[8KB]
 - BaseRepository.java[1KB]
 - BaseRepositoryFactoryBean.java[1KB]
 
 - entities
 - service
- .svn
- text-base
- BaseService.java.svn-base[464B]
 - BaseServiceImpl.java.svn-base[1KB]
 
 - all-wcprops[134B]
 - entries[679B]
 
 - text-base
 - account
- .svn
- text-base
- TAccountService.java.svn-base[2KB]
 - TAccountServiceImpl.java.svn-base[8KB]
 
 - all-wcprops[334B]
 - entries[606B]
 
 - text-base
 - TAccountService.java[2KB]
 - TAccountServiceImpl.java[8KB]
 
 - .svn
 - Base
- .svn
- text-base
- ShiroUserService.java.svn-base[402B]
 - ShiroUserServiceImpl.java.svn-base[3KB]
 
 - all-wcprops[331B]
 - entries[614B]
 
 - text-base
 - ShiroUserService.java[400B]
 - ShiroUserServiceImpl.java[3KB]
 
 - .svn
 - duty
- .svn
- text-base
- TDutyService.java.svn-base[2KB]
 - TDutyServiceImpl.java.svn-base[6KB]
 
 - entries[597B]
 
 - text-base
 - TDutyService.java[2KB]
 - TDutyServiceImpl.java[6KB]
 
 - .svn
 - entities
- .svn
- text-base
- TreeNode.java.svn-base[1KB]
 
 - entries[433B]
 
 - text-base
 - TreeNode.java[1KB]
 
 - .svn
 - log
- .svn
- text-base
- TActionLogService.java.svn-base[702B]
 - TActionLogServiceImpl.java.svn-base[1KB]
 
 - entries[605B]
 
 - text-base
 - TActionLogService.java[636B]
 - TActionLogServiceImpl.java[1KB]
 
 - .svn
 - platform
- .svn
- text-base
- TPlatformService.java.svn-base[1KB]
 - TPlatformServiceImpl.java.svn-base[2KB]
 
 - entries[617B]
 
 - text-base
 - TPlatformService.java[1KB]
 - TPlatformServiceImpl.java[2KB]
 
 - .svn
 - source
- .svn
- text-base
- TSourceService.java.svn-base[1KB]
 - TSourceServiceImpl.java.svn-base[4KB]
 
 - entries[603B]
 
 - text-base
 - TSourceService.java[1KB]
 - TSourceServiceImpl.java[4KB]
 
 - .svn
 - BaseService.java[394B]
 - BaseServiceImpl.java[1KB]
 
 - .svn
 - shiro
- .svn
- text-base
- CaptchaUsernamePasswordToken.java.svn-base[665B]
 - ShiroDbRealm.java.svn-base[3KB]
 - ShiroUser.java.svn-base[4KB]
 
 - all-wcprops[131B]
 - entries[864B]
 
 - text-base
 - config
- .svn
- text-base
- ShiroAdapter.java.svn-base[593B]
 - ShiroConfiguration.java.svn-base[11KB]
 
 - all-wcprops[325B]
 - entries[599B]
 
 - text-base
 - ShiroAdapter.java[654B]
 - ShiroConfiguration.java[11KB]
 
 - .svn
 - credentials
- .svn
- text-base
- RetryLimitHashedCredentialsMatcher.java.svn-base[1KB]
 
 - entries[458B]
 
 - text-base
 - RetryLimitHashedCredentialsMatcher.java[1KB]
 
 - .svn
 - exception
- .svn
- text-base
- AccountInvalidException.java.svn-base[585B]
 - IncorrectCaptchaException.java.svn-base[591B]
 
 - entries[615B]
 
 - text-base
 - AccountInvalidException.java[589B]
 - IncorrectCaptchaException.java[596B]
 
 - .svn
 - filter
- .svn
- text-base
- AuthFilter.java.svn-base[2KB]
 
 - entries[429B]
 
 - text-base
 - AuthFilter.java[2KB]
 
 - .svn
 - initializer
- .svn
- text-base
- ShiroInitializer.java.svn-base[1KB]
 
 - entries[440B]
 
 - text-base
 - ShiroInitializer.java[1KB]
 
 - .svn
 - interceptor
- .svn
- text-base
- ShiroInterceptor.java.svn-base[2KB]
 
 - entries[450B]
 
 - text-base
 - ShiroInterceptor.java[2KB]
 
 - .svn
 - util
- .svn
- text-base
- ShiroUserHelper.java.svn-base[773B]
 
 - entries[433B]
 
 - text-base
 - ShiroUserHelper.java[771B]
 
 - .svn
 - CaptchaUsernamePasswordToken.java[670B]
 - ShiroDbRealm.java[3KB]
 - ShiroUser.java[4KB]
 
 - .svn
 - util
- DynamicSpecifications.java[9KB]
 - Functions.java[1KB]
 - MenuUtil.java[3KB]
 - RequestHandler.java[6KB]
 - SearchFilter.java[7KB]
 - TreeUtil.java[2KB]
 
 - web
- rest
- DutyRestController.java[886B]
 - SourceRestController.java[928B]
 
 - AccountController.java[9KB]
 - ActionLogController.java[1KB]
 - DutyController.java[6KB]
 - LogController.java[1KB]
 - LoginController.java[6KB]
 - PlatformController.java[3KB]
 - SessionController.java[1KB]
 - SourceController.java[7KB]
 
 - rest
 
 - annoation
 
 - base
 
 - fuint
 
 - com
 - resources
- ehcache-shiro.xml[1KB]
 
 
 - java
 - test
- java
- com
- fuint
- AppTest.java[637B]
 
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[3KB]
 
 - src
 - fuint-cache
- src
- main
- java
- com
- fuint
- cache
- api
- .svn
- text-base
- CacheTemplate.java.svn-base[2KB]
 
 - all-wcprops[303B]
 - entries[477B]
 
 - text-base
 - CacheTemplate.java[2KB]
 
 - .svn
 - config
- .svn
- text-base
- CacheConfig.java.svn-base[2KB]
 
 - all-wcprops[305B]
 - entries[478B]
 
 - text-base
 - CacheConfig.java[2KB]
 
 - .svn
 - redis
- RedissonFactoryBean.java[1KB]
 - RedisTemplate.java[7KB]
 
 - util
- .svn
- text-base
- CacheKeyUtil.java.svn-base[2KB]
 
 - all-wcprops[303B]
 - entries[477B]
 
 - text-base
 - CacheKeyUtil.java[2KB]
 
 - .svn
 
 - api
 
 - cache
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[1KB]
 
 - src
 - fuint-component
- src
- main
- java
- com
- fuint
- captcha
- service
- CaptchaService.java[1KB]
 
 - web
 
 - service
 - config
 - excel
- export
- dto
- ExcelExportDto.java[1KB]
 
 - service
- ExportService.java[570B]
 - ExportServiceImpl.java[4KB]
 
 
 - dto
 
 - export
 
 - captcha
 
 - fuint
 
 - com
 - resources
- .svn
- text-base
- captcha-conf.properties.svn-base[646B]
 
 - entries[418B]
 
 - text-base
 - captcha-conf.properties[646B]
 
 - .svn
 
 - java
 - test
- java
- com
- fuint
- AppTest.java[637B]
 
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[1KB]
 
 - src
 - fuint-core
- src
- main
- java
- com
- fuint
- config
- ApplicationConfig.java[1KB]
 - WebMvcConfig.java[4KB]
 
 - freemarker
 - handler
- .svn
- text-base
- GlobalErrorHandler.java.svn-base[1KB]
 
 - entries[429B]
 
 - text-base
 - GlobalErrorHandler.java[1KB]
 
 - .svn
 - initializer
- .svn
- text-base
- ApplictionInitializer.java.svn-base[663B]
 - WebInitializer.java.svn-base[1KB]
 
 - all-wcprops[132B]
 - entries[596B]
 
 - text-base
 - ApplictionInitializer.java[668B]
 - WebInitializer.java[1KB]
 
 - .svn
 - interceptor
- .svn
- text-base
- SiteHandlerInterceptor.java.svn-base[2KB]
 
 - entries[437B]
 
 - text-base
 - SiteHandlerInterceptor.java[2KB]
 
 - .svn
 - json
- .svn
- text-base
- JsonDateDeserializer.java.svn-base[1KB]
 - JsonDateSerializer.java.svn-base[814B]
 
 - all-wcprops[125B]
 - entries[601B]
 
 - text-base
 - JsonDateDeserializer.java[1KB]
 - JsonDateSerializer.java[818B]
 
 - .svn
 
 - config
 
 - fuint
 
 - com
 - resources
- logback.xml[2KB]
 - staticClass.properties[313B]
 
 
 - java
 - test
- java
- com
- fuint
- AppTest.java[637B]
 
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[3KB]
 
 - src
 - fuint-parent
- pom.xml[1KB]
 
 - fuint-security
- src
- main
- java
- .svn
- entries[258B]
 
 - com
- .svn
- entries[264B]
 
 - fuint
- .svn
- entries[258B]
 
 
 - .svn
 
 - .svn
 
 - .svn
 
 - java
 - test
- java
- com
- fuint
- AppTest.java[637B]
 
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[828B]
 
 - src
 - fuint-util
- src
- main
- java
- com
- fuint
- enums
- AccountEnum.java[562B]
 
 - exception
- BadRequestException.java[792B]
 - BusinessCheckException.java[1KB]
 - BusinessRuntimeException.java[1KB]
 - ConflictException.java[615B]
 - Exceptions.java[2KB]
 - ForbiddenException.java[613B]
 - HttpStatusException.java[1KB]
 - InternalServerErrorException.java[672B]
 - NotFoundException.java[689B]
 - UnauthorizedException.java[670B]
 
 - util
- ArrayUtil.java[175KB]
 - Base64Util.java[4KB]
 - BeanUtil.java[7KB]
 - ClassUtil.java[40KB]
 - Constant.java[960B]
 - DateUtil.java[23KB]
 - Digests.java[3KB]
 - Encodes.java[3KB]
 - HexStringByte.java[3KB]
 - JSONUtil.java[2KB]
 - Md5Encryptor.java[1KB]
 - ObjectUtil.java[14KB]
 - RSAKeys.java[1KB]
 - RSAUtil.java[12KB]
 - StringUtil.java[162KB]
 - Util.java[1KB]
 
 - App.java[172B]
 
 - enums
 
 - fuint
 
 - com
 
 - java
 - test
- java
- com
- fuint
- AppTest.java[637B]
 
 
 - fuint
 
 - com
 
 - java
 
 - main
 - pom.xml[2KB]
 
 - src
 - pom.xml[16KB]
 
 - fuint-base
 - fuint-uniapp-master
- .hbuilderx
- launch.json[568B]
 
 - api
- goods
- service.js[210B]
 
 - login
- index.js[972B]
 
 - points
- log.js[305B]
 
 - user
- coupon.js[199B]
 
 - address.js[852B]
 - balance.js[501B]
 - cart.js[573B]
 - confirm.js[234B]
 - coupon.js[670B]
 - give.js[310B]
 - goods.js[567B]
 - help.js[184B]
 - merchant.js[424B]
 - message.js[521B]
 - myCoupon.js[876B]
 - order.js[930B]
 - page.js[169B]
 - refund.js[746B]
 - region.js[309B]
 - setting.js[559B]
 - settlement.js[539B]
 - upload.js[519B]
 - user.js[1KB]
 
 - goods
 - common
- constant
- index.js[55B]
 - paginate.js[188B]
 
 - enum
- coupon
- ApplyRange.js[228B]
 - CouponType.js[254B]
 - ExpireType.js[229B]
 - index.js[185B]
 
 - order
- refund
- AuditStatus.js[274B]
 - index.js[206B]
 - RefundStatus.js[329B]
 - RefundType.js[231B]
 
 - DeliveryStatus.js[232B]
 - DeliveryType.js[167B]
 - index.js[466B]
 - OrderSource.js[273B]
 - OrderStatus.js[483B]
 - PayStatus.js[219B]
 - PayType.js[234B]
 - ReceiptStatus.js[229B]
 
 - refund
 - setting
- Key.js[342B]
 
 - store
 - enum.js[1KB]
 
 - coupon
 - model
- Region.js[1KB]
 - Setting.js[1KB]
 
 
 - constant
 - components
- actionsheet
- index.js[910B]
 - index.json[82B]
 - index.wxml[1KB]
 - index.wxss[1KB]
 
 - btn
- index.js[1KB]
 - index.json[23B]
 - native-button-behaviors.js[2KB]
 - index.wxml[1KB]
 - index.wxss[2KB]
 
 - common
- style
- mixins
- clearfix.wxss[0B]
 - ellipsis.wxss[0B]
 - hairline.wxss[0B]
 
 - clearfix.wxss[57B]
 - ellipsis.wxss[336B]
 - hairline.wxss[897B]
 - var.wxss[0B]
 
 - mixins
 - color.js[90B]
 - component.js[1KB]
 - utils.js[377B]
 - index.wxss[1KB]
 
 - style
 - dialog
- data.js[573B]
 - dialog.js[2KB]
 - index.js[4KB]
 - index.json[129B]
 - index.wxml[1KB]
 - index.wxss[1KB]
 
 - empty
- index.vue[1KB]
 
 - goods-sku-popup
- number-box
- index.vue[12KB]
 
 - index.vue[24KB]
 
 - number-box
 - grade-popup
- index.vue[9KB]
 
 - jyf-parser
- libs
- config.js[2KB]
 - CssHandler.js[2KB]
 - MpHtmlParser.js[18KB]
 - handler.wxs[300B]
 - trees.vue[13KB]
 
 - jyf-parser.vue[20KB]
 
 - libs
 - loading
- index.js[336B]
 - index.json[23B]
 - index.wxml[353B]
 - index.wxss[2KB]
 
 - merchant-shortcut
- index.vue[4KB]
 
 - mescroll-uni
- components
- mescroll-down.css[1KB]
 - mescroll-up.css[918B]
 - mescroll-down.vue[1KB]
 - mescroll-empty.vue[2KB]
 - mescroll-top.vue[2KB]
 - mescroll-up.vue[1KB]
 
 - mixins
- mescroll-comp.js[1KB]
 - mescroll-more-item.js[1KB]
 - mescroll-more.js[1KB]
 
 - wxs
- mixins.js[3KB]
 - renderjs.js[2KB]
 - wxs.wxs[9KB]
 
 - mescroll-body.css[794B]
 - mescroll-mixins.js[2KB]
 - mescroll-uni-option.js[2KB]
 - mescroll-uni.css[712B]
 - mescroll-uni.js[31KB]
 - mescroll-body.vue[13KB]
 - mescroll-uni.vue[16KB]
 
 - components
 - mixins
- observer
- behavior.js[1KB]
 - index.js[877B]
 - props.js[595B]
 
 - basic.js[683B]
 - button.js[442B]
 - iphonex.js[867B]
 - link.js[364B]
 - open-type.js[674B]
 - touch.js[763B]
 - transition.js[2KB]
 
 - observer
 - neoceansoft-keyboard
- neoceansoft-keyboard.vue[10KB]
 
 - oveui-layout
- o-col
- o-col.vue[2KB]
 
 - row
- row.vue[2KB]
 
 
 - o-col
 - page
- article
- index.vue[2KB]
 
 - banner
- index.vue[3KB]
 
 - blank
- index.vue[512B]
 
 - coupon
- index.vue[7KB]
 
 - goods
- index.vue[6KB]
 
 - guide
- index.vue[692B]
 
 - image
- index.vue[1KB]
 
 - location
- index.vue[1KB]
 
 - navBar
- index.vue[2KB]
 
 - notice
- index.vue[848B]
 
 - richText
- index.vue[766B]
 
 - search
- index.vue[1KB]
 
 - service
- index.vue[1KB]
 
 - video
- index.vue[784B]
 
 - window
- index.vue[3KB]
 
 - mixin.js[390B]
 - index.vue[2KB]
 
 - article
 - pay-popup
- index.vue[15KB]
 
 - pop-manager
- index.js[540B]
 - index.json[24B]
 - index.wxml[277B]
 - index.wxss[1KB]
 
 - popup
- index.js[538B]
 - index.json[94B]
 - index.wxml[151B]
 
 - prestore-popup
- number-box
- index.vue[12KB]
 
 - index.vue[8KB]
 
 - number-box
 - search
- index.vue[1KB]
 
 - select-region
- select-region.vue[4KB]
 
 - shortcut
- index.vue[4KB]
 
 - switch
- index.js[1KB]
 - index.json[90B]
 - index.wxml[467B]
 - index.wxss[694B]
 
 - toptips
- index.js[925B]
 - index.json[23B]
 - toptips.js[714B]
 - index.wxml[134B]
 - index.wxss[363B]
 
 - uni-transition
- uni-transition.vue[5KB]
 
 - wxs
- array.wxs[112B]
 - bem.wxs[788B]
 - memoize.wxs[973B]
 - object.wxs[249B]
 - utils.wxs[286B]
 
 - xuan-switch
- xuan-switch.vue[4KB]
 
 
 - actionsheet
 - core
- bootstrap.js[437B]
 - ican-H5Api.js[13KB]
 
 - pages
- address
- create.vue[4KB]
 - index.vue[6KB]
 - update.vue[5KB]
 
 - article
- detail.vue[1KB]
 - index.vue[7KB]
 
 - cart
- index.vue[12KB]
 
 - category
- components
- SkuPopup.vue[4KB]
 
 - index.vue[13KB]
 
 - components
 - comment
- index.vue[6KB]
 
 - confirm
- doConfirm.vue[7KB]
 - result.vue[2KB]
 
 - coupon
- detail.vue[8KB]
 - list.vue[12KB]
 
 - custom
- index.vue[2KB]
 
 - give
- index.vue[6KB]
 
 - goods
- components
- Service.vue[3KB]
 - SkuPopup.vue[4KB]
 - SlideImage.vue[1KB]
 
 - detail.scss[3KB]
 - detail.vue[7KB]
 - list.vue[11KB]
 
 - components
 - help
- index.vue[2KB]
 
 - index
- index.vue[4KB]
 
 - location
- index.vue[4KB]
 
 - login
- components
- main.vue[14KB]
 - mp-weixin.vue[5KB]
 
 - index.vue[1KB]
 
 - components
 - merchant
- index.vue[13KB]
 
 - my-coupon
- index.vue[6KB]
 
 - order
- comment
- index.vue[13KB]
 
 - express
- index.vue[4KB]
 
 - detail.vue[20KB]
 - index.vue[10KB]
 - result.vue[5KB]
 
 - comment
 - pay
- components
- Popup.vue[1KB]
 
 - index.vue[8KB]
 - result.vue[2KB]
 
 - components
 - points
- detail.vue[6KB]
 - gift.vue[5KB]
 
 - prestore
- components
- Popup.vue[1KB]
 - Service.vue[3KB]
 - SlideImage.vue[1KB]
 
 - buy.scss[3KB]
 - buy.vue[6KB]
 - detail.vue[5KB]
 
 - components
 - refund
- apply.vue[10KB]
 - detail.vue[11KB]
 - index.vue[7KB]
 
 - search
- index.vue[4KB]
 
 - settlement
- goods.vue[16KB]
 - index.vue[6KB]
 - style.scss[9KB]
 
 - timer
- detail.vue[6KB]
 
 - user
- components
- Popup.vue[1KB]
 
 - code.vue[2KB]
 - index.vue[21KB]
 - setting.vue[4KB]
 
 - components
 - wallet
- balance
- log.vue[3KB]
 
 - recharge
- index.vue[6KB]
 - order.vue[3KB]
 
 - index.vue[3KB]
 
 - balance
 - empty.vue[278B]
 
 - address
 - static
- background
- user-header.png[29KB]
 
 - channel
- wechat.png[2KB]
 
 - confirm
- do.png[2KB]
 - undo.png[6KB]
 
 - icon
- add.png[1KB]
 - coupon.png[1KB]
 - minus.png[1KB]
 - saoma.png[1KB]
 - saoyisao.png[2KB]
 
 - nav
- 1.png[755B]
 - 2.png[1KB]
 - 3.png[1KB]
 - 4.png[1KB]
 
 - order
- status
- close.png[3KB]
 - received.png[1KB]
 - wait_deliver.png[2KB]
 - wait_pay.png[2KB]
 - wait_receipt.png[2KB]
 
 - refund-bg.png[5KB]
 
 - status
 - pay
- fail.png[957B]
 - success.png[870B]
 
 - tabbar
- cart-active.png[6KB]
 - cart.png[6KB]
 - cate-active.png[4KB]
 - cate.png[5KB]
 - home-active.png[4KB]
 - home.png[5KB]
 - shop-active.png[2KB]
 - shop.png[2KB]
 - user-active.png[5KB]
 - user.png[5KB]
 
 - user
- tag.png[787B]
 
 - default-avatar.png[2KB]
 - empty-02.png[8KB]
 - empty.png[7KB]
 
 - background
 - store
- modules
 - getters.js[158B]
 - index.js[274B]
 - mutation-types.js[109B]
 
 - uni_modules
- uni-popup
- components
- uni-popup
- keypress.js[1KB]
 - popup.js[418B]
 - uni-popup.vue[8KB]
 
 - uni-popup-dialog
- keypress.js[1KB]
 - uni-popup-dialog.vue[4KB]
 
 - uni-popup-message
- uni-popup-message.vue[2KB]
 
 - uni-popup-share
- uni-popup-share.vue[3KB]
 
 
 - uni-popup
 - package.json[1KB]
 - changelog.md[1KB]
 - readme.md[9KB]
 
 - components
 - uni-row
- components
- uni-col
- uni-col.vue[7KB]
 
 - uni-row
- uni-row.vue[3KB]
 
 
 - uni-col
 - package.json[1KB]
 - changelog.md[135B]
 - readme.md[6KB]
 
 - components
 
 - uni-popup
 - utils
- request
- core
- request.js[3KB]
 - utils.js[2KB]
 
 - upload
- qiniuUploader.js[5KB]
 - upload.js[5KB]
 - utils.js[8KB]
 
 - index.js[5KB]
 - request.js[329B]
 - request.md[17KB]
 
 - core
 - app.js[4KB]
 - storage.js[2KB]
 - util.js[4KB]
 - verify.js[1KB]
 - iconfont.scss[28KB]
 - utils.scss[4KB]
 
 - request
 - uview-ui
- components
- u-action-sheet
- u-action-sheet.vue[5KB]
 
 - u-alert-tips
- u-alert-tips.vue[5KB]
 
 - u-avatar
- u-avatar.vue[9KB]
 
 - u-avatar-cropper
- weCropper.js[31KB]
 - u-avatar-cropper.vue[7KB]
 
 - u-back-top
- u-back-top.vue[3KB]
 
 - u-badge
- u-badge.vue[5KB]
 
 - u-button
- u-button.vue[15KB]
 
 - u-calendar
- u-calendar.vue[18KB]
 
 - u-car-keyboard
- u-car-keyboard.vue[4KB]
 
 - u-card
- u-card.vue[7KB]
 
 - u-cell-group
- u-cell-group.vue[1KB]
 
 - u-cell-item
- u-cell-item.vue[7KB]
 
 - u-checkbox
- u-checkbox.vue[8KB]
 
 - u-checkbox-group
- u-checkbox-group.vue[3KB]
 
 - u-circle-progress
- u-circle-progress.vue[6KB]
 
 - u-col
- u-col.vue[3KB]
 
 - u-collapse
- u-collapse.vue[2KB]
 
 - u-collapse-item
- u-collapse-item.vue[5KB]
 
 - u-column-notice
- u-column-notice.vue[4KB]
 
 - u-count-down
- u-count-down.vue[8KB]
 
 - u-count-to
- u-count-to.vue[6KB]
 
 - u-divider
- u-divider.vue[3KB]
 
 - u-dropdown
- u-dropdown.vue[9KB]
 
 - u-dropdown-item
- u-dropdown-item.vue[4KB]
 
 - u-empty
- u-empty.vue[4KB]
 
 - u-field
- u-field.vue[11KB]
 
 - u-form
- u-form.vue[3KB]
 
 - u-form-item
- u-form-item.vue[13KB]
 
 - u-full-screen
- u-full-screen.vue[1KB]
 
 - u-gap
- u-gap.vue[1KB]
 
 - u-grid
- u-grid.vue[2KB]
 
 - u-grid-item
- u-grid-item.vue[2KB]
 
 - u-icon
- u-icon.vue[9KB]
 
 - u-image
- u-image.vue[8KB]
 
 - u-index-anchor
- u-index-anchor.vue[2KB]
 
 - u-index-list
- u-index-list.vue[7KB]
 
 - u-input
- u-input.vue[11KB]
 
 - u-keyboard
- u-keyboard.vue[6KB]
 
 - u-lazy-load
- u-lazy-load.vue[16KB]
 
 - u-line
- u-line.vue[2KB]
 
 - u-line-progress
- u-line-progress.vue[3KB]
 
 - u-link
- u-link.vue[2KB]
 
 - u-loading
- u-loading.vue[4KB]
 
 - u-loading-page
- u-loading-page.vue[225B]
 
 - u-loadmore
- u-loadmore.vue[5KB]
 
 - u-mask
- u-mask.vue[3KB]
 
 - u-message-input
- u-message-input.vue[7KB]
 
 - u-modal
- u-modal.vue[7KB]
 
 - u-navbar
- u-navbar.vue[9KB]
 
 - u-no-network
- u-no-network.vue[21KB]
 
 - u-notice-bar
- u-notice-bar.vue[7KB]
 
 - u-number-box
- u-number-box.vue[11KB]
 
 - u-number-keyboard
- u-number-keyboard.vue[4KB]
 
 - u-parse
- libs
- config.js[2KB]
 - CssHandler.js[2KB]
 - MpHtmlParser.js[18KB]
 - handler.wxs[300B]
 - trees.vue[13KB]
 
 - u-parse.vue[20KB]
 
 - libs
 - u-picker
- u-picker.vue[21KB]
 
 - u-popup
- u-popup.vue[11KB]
 
 - u-radio
- u-radio.vue[7KB]
 
 - u-radio-group
- u-radio-group.vue[4KB]
 
 - u-rate
- u-rate.vue[7KB]
 
 - u-read-more
- u-read-more.vue[4KB]
 
 - u-row
- u-row.vue[2KB]
 
 - u-row-notice
- u-row-notice.vue[5KB]
 
 - u-search
- u-search.vue[9KB]
 
 - u-section
- u-section.vue[3KB]
 
 - u-select
- u-select.vue[12KB]
 
 - u-skeleton
- u-skeleton.vue[5KB]
 
 - u-slider
- u-slider.vue[6KB]
 
 - u-steps
- u-steps.vue[4KB]
 
 - u-sticky
- u-sticky.vue[4KB]
 
 - u-subsection
- u-subsection.vue[9KB]
 
 - u-swipe-action
- u-swipe-action.vue[6KB]
 
 - u-swiper
- u-swiper.vue[9KB]
 
 - u-switch
- u-switch.vue[4KB]
 
 - u-tabbar
- u-tabbar.vue[8KB]
 
 - u-table
- u-table.vue[2KB]
 
 - u-tabs
- u-tabs.vue[11KB]
 
 - u-tabs-swiper
- u-tabs-swiper.vue[13KB]
 
 - u-tag
- u-tag.vue[7KB]
 
 - u-td
- u-td.vue[1KB]
 
 - u-th
- u-th.vue[1KB]
 
 - u-time-line
- u-time-line.vue[765B]
 
 - u-time-line-item
- u-time-line-item.vue[1KB]
 
 - u-toast
- u-toast.vue[5KB]
 
 - u-top-tips
- u-top-tips.vue[2KB]
 
 - u-tr
- u-tr.vue[472B]
 
 - u-upload
- u-upload.vue[19KB]
 
 - u-verification-code
- u-verification-code.vue[5KB]
 
 - u-waterfall
- u-waterfall.vue[5KB]
 
 
 - u-action-sheet
 - libs
- config
 - css
- color.scss[2KB]
 - common.scss[2KB]
 - style.components.scss[226B]
 - style.h5.scss[184B]
 - style.mp.scss[1KB]
 - style.nvue.scss[28B]
 - style.vue.scss[3KB]
 
 - function
- $parent.js[777B]
 - addUnit.js[374B]
 - bem.js[59B]
 - color.js[856B]
 - colorGradient.js[3KB]
 - debounce.js[881B]
 - deepClone.js[658B]
 - deepMerge.js[789B]
 - getParent.js[1KB]
 - guid.js[1KB]
 - md5.js[11KB]
 - queryParams.js[1KB]
 - random.js[196B]
 - randomArray.js[228B]
 - route.js[3KB]
 - sys.js[130B]
 - test.js[4KB]
 - throttle.js[770B]
 - timeFormat.js[1KB]
 - timeFrom.js[1KB]
 - toast.js[139B]
 - trim.js[339B]
 - type2icon.js[976B]
 
 - mixin
- mixin.js[2KB]
 - mpShare.js[365B]
 
 - request
- index.js[5KB]
 
 - store
- index.js[484B]
 
 - util
- area.js[121KB]
 - async-validator.js[32KB]
 - city.js[14KB]
 - emitter.js[1KB]
 - province.js[1KB]
 
 
 - iconfont.css[78KB]
 - index.js[4KB]
 - package.json[701B]
 - index.scss[530B]
 - LICENSE[1KB]
 - README.md[3KB]
 - theme.scss[1KB]
 
 - components
 - config.js[175B]
 - main.js[746B]
 - manifest.json[4KB]
 - package.json[283B]
 - pages.json[6KB]
 - .gitignore[31B]
 - app.scss[339B]
 - App.vue[1KB]
 - uni.scss[2KB]
 
 - .hbuilderx
 - screenshots
- cashier.png[1.13MB]
 - coupon-list.png[99KB]
 - create.png[137KB]
 - f1.png[204KB]
 - f2.png[72KB]
 - f3.png[60KB]
 - f4.png[83KB]
 - g1.png[245KB]
 - g2.png[108KB]
 - g3.png[117KB]
 - g4.png[86KB]
 - home.png[97KB]
 - homeV1.png[101KB]
 - homeV2.png[89KB]
 - login.png[258KB]
 - miniapp.png[15KB]
 - mp.jpg[26KB]
 - qr.png[35KB]
 - system.png[348KB]
 
 - 51Aspx源码必读.txt[5KB]
 - .gitignore[166B]
 - from .gif[4KB]
 - 最新Asp.Net源码下载.url[123B]
 
源码介绍
源码参数
系统基于前后端分离的架构,后端采用Java + Mysql,前端基于当前流行的Uniapp。主要功能包含电子优惠券、预存卡、集次卡(计次卡)、短信发送、储值卡、会员积分、会员等级权益体系,支付收款等会员日常营销工具。本系统适用于各类实体店铺,如酒吧、酒店、汽车4S店、鲜花店、甜品店、餐饮店等,是实体店铺会员营销必备的。
	
1、会员运营自动化:商家通过日常活动设置,如开卡礼设置,沉睡唤醒等,成为会员后自动给顾客送优惠券,让顾客更有黏性,提升会员运营效率。
	
2、打通收银系统和会员营销的壁垒,代客下单收银,支付即成为会员。
	
3、会员体系完整化:积分兑换、积分转赠、会员等级权益、积分加速、买单折扣。
	
4、会员卡券齐全:预存卡、电子券、优惠券、集次卡、计次卡、会员余额支付。
	
5、线上代客下单收银系统,后台管理员可帮助临柜的会员下单、扫码支付。
	
6、支持手机短信、站内弹框消息、微信订阅消息:支持包括发货消息、卡券到期提醒、活动提醒、会员到期提醒、积分余额变动提醒等消息。
	
后端:JAVA(springBoot + mybatis) + MYSQL + Redis 前端:采用基于Vue的uni-app,前后端分离。
	前端使用技术
2.1 Vue
2.3 uniapp
	后端使用技术
1.1 SpringBoot 2.1
1.2 mybatis、MyBatis-Plus
1.3 SpringSecurity
1.5 Druid
1.6 Slf4j
1.7 Fastjson
1.8 JWT
1.9 Redis
1.10 Quartz
1.11 Mysql
1.12 Tomcat
安装步骤
推荐软件环境版本:jdk 1.8、tomcat 8.5、mysql 5.7
- 导入db目录下的数据库文件。
 - 修改config目录下的配置文件。
 - 将工程打包,把war包放入tomcat中。
 
提示:无后端开发基础的朋友,可以使用宝塔部署,非常方便简单。
前台使用说明
会员登录,登录成功后可看到会员的卡券列表。卡券领取和购买,预存券的充值等。核销卡券,会员在前台出示二维码,管理员用微信扫一扫即可核销。卡券转赠,会员可将自己的卡券转赠给其他用户,输入对方的手机号即可完成转赠,获赠的好友会收到卡券赠送的短信。
	
            
                
                                            
                                        
        


















