master
周文涛 3 years ago
commit 1c9380faa3

1
.gitignore vendored

@ -0,0 +1 @@
node_modules

@ -0,0 +1,24 @@
# vue-project
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Lints and fixes files
```
npm run lint
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).

Binary file not shown.

@ -0,0 +1,3 @@
module.exports = {
presets: ['@vue/cli-plugin-babel/preset']
}

28685
package-lock.json generated

File diff suppressed because it is too large Load Diff

@ -0,0 +1,54 @@
{
"name": "vue-project",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"axios": "^0.24.0",
"clipboard": "^2.0.8",
"core-js": "^3.6.5",
"echarts": "^4.8.0",
"element-china-area-data": "^5.0.2",
"element-ui": "^2.13.2",
"file-saver": "^2.0.5",
"js-cookie": "^2.2.1",
"normalize.css": "^8.0.1",
"nprogress": "^0.2.0",
"path-to-regexp": "^6.1.0",
"sass": "^1.26.5",
"sortablejs": "^1.14.0",
"svg-sprite-loader": "^5.0.0",
"uuid": "^8.3.2",
"uuidjs": "^4.2.9",
"v-distpicker": "^1.2.7",
"vue": "^2.6.11",
"vue-echarts": "^5.0.0-beta.0",
"vue-quill-editor": "^3.0.6",
"vue-router": "^3.2.0",
"vuex": "^3.4.0",
"wangeditor": "^4.0.3",
"xlsx": "^0.17.4",
"zx-player": "^0.9.6"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.4.0",
"@vue/cli-plugin-eslint": "~4.4.0",
"@vue/cli-plugin-router": "~4.4.0",
"@vue/cli-plugin-vuex": "~4.4.0",
"@vue/cli-service": "~4.4.0",
"@vue/eslint-config-prettier": "^6.0.0",
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-prettier": "^3.1.3",
"eslint-plugin-vue": "^6.2.2",
"node-sass": "^6.0.1",
"prettier": "^1.19.1",
"sass-loader": "^10.2.1",
"script-loader": "^0.7.2",
"vue-template-compiler": "^2.6.11"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

@ -0,0 +1,12 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>

@ -0,0 +1,5 @@
# just a flag
ENV = 'development'
# base api
VUE_APP_BASE_API = '/dev-api'

@ -0,0 +1,10 @@
<template>
<div id="app">
<router-view />
</div>
</template>
<style>
#app {
min-width: 1200px;
}
</style>

Binary file not shown.

@ -0,0 +1,301 @@
import {
HTTP_URL,
UPLOADAVATARIMG,
pick_Url
} from './api-type.js'
const $api = {
URL: HTTP_URL + '/body',
getArea: HTTP_URL + '/body/getArea', // 获取省市县
addGoods: HTTP_URL + '/body/addGoods', // 新增商品
changeState: HTTP_URL + '/body/getOrderDetails', // 修改订单状态
getGoodsDetails: HTTP_URL + '/body/getGoodsDetails', // 获取商品详情
modiPassword: HTTP_URL + '/body/modiPassword', // 修改管理员密码
goodsSubmit: HTTP_URL + '/body/goodsSubmit', // 商品提交审核
editGoods: HTTP_URL + '/body/editGoods', // 修改商品
getMerchantsIndex: HTTP_URL + '/body/getMerchantsIndex', // 获取店铺首页信息
editMerchantsIndex: HTTP_URL + '/body/editMerchantsIndex', // 修改店铺首页
getGoodsByClassification: HTTP_URL + '/body/getGoodsByClassification', // 根据分类获取商品列表
getMerchGoodsClassification: HTTP_URL + '/body/getMerchGoodsClassification', // 根据商户Id 获取商品分类
getGoodsMerchClassification: HTTP_URL + '/body/getGoodsMerchClassification', // 根据商户Id 获取已经商品
// 总后台接口模块
getGoodsList: HTTP_URL + '/body/getGoodsList', // 获取商品列表
getGoodsDetail: HTTP_URL + '/body/getGoodsDetail', // 获取商品详情
getComboList: HTTP_URL + '/body/getComboList', // 获取商品套餐列表
addRefuseRefundInfo: HTTP_URL + '/body/addRefuseRefundInfo', // 商家拒绝退款
getPartnerList: HTTP_URL + '/body/getPartnerList', // 获取渠道商列表
getGoodsDistributionList: HTTP_URL + '/body/getGoodsDistributionList', // 获取分销商品列表
addPartner: HTTP_URL + '/body/addPartner', // 新增渠道
editPartner: HTTP_URL + '/body/editPartner', // 编辑详情
getPartner: HTTP_URL + '/body/editPartner', // 获取详情
uploadAvatar: UPLOADAVATARIMG + '/uploadAvatar', // 上传图片和视频
// 改版后上传接口
uploadFile: UPLOADAVATARIMG + '/uploadFile', // 上传图片和视频
getCustomersByPartner: HTTP_URL + '/body/getCustomersByPartner', // 查看绑定用户
updatePartnerState: HTTP_URL + '/body/updatePartnerState', // 修改渠道状态
addGoodsDistribution: HTTP_URL + '/body/addGoodsDistribution', // 新增分销商品
checkPartnerPhone: HTTP_URL + '/body/checkPartnerPhone', // 渠道商验证手机号是否存在
getBankInfoByCardNum: HTTP_URL + '/body/getBankInfoByCardNum', // 根据银行卡号 获取银行卡信息
updateGoodsState: HTTP_URL + '/body/updateGoodsState', // 更改商品状态
findGoodsClassificationList: HTTP_URL + '/body/findGoodsClassificationList', // 根据店铺获取商品分类
getMerchantsList: HTTP_URL + '/body/getMerchantsList', // 获取店铺列表(审核通过且不分页)
getGoodsListByClassificationAndMerchantsID: HTTP_URL + '/body/getGoodsListByClassificationAndMerchantsID', // 根据分类获取商品
findGoodsDistribution: HTTP_URL + '/body/findGoodsDistribution', // 查看分销商品详情
updateGoodsDistributionState: HTTP_URL + '/body/updateGoodsDistributionState', // 修改分销商品状态
getOrders: HTTP_URL + '/body/getOrders', // 订单列表
getOrderDetails: HTTP_URL + '/body/getOrderDetails', // 获取订单详情
getGoodsClassification: HTTP_URL + '/body/getGoodsClassification', // 获取商品分类
getMerchantsPage: HTTP_URL + '/body/getMerchantsPage', // 获取店铺列表
addMerchants: HTTP_URL + '/body/addMerchants', // 新增供应商/店铺 注册
checkMerchantsUserName: HTTP_URL + '/body/checkMerchantsUserName', // 验证店铺用户名是否重复
checkMerchantsName: HTTP_URL + '/body/checkMerchantsName', // 验证店铺名称是否重复
getMerchants: HTTP_URL + '/body/getMerchants', // 查看店铺
updateMerchantsState: HTTP_URL + '/body/updateMerchantsState', // 更改店铺状态
updateMerchantsAdminPWD: HTTP_URL + '/body/updateMerchantsAdminPWD', // 重置店铺密码
addClassification: HTTP_URL + '/body/addClassification', // 新增商品分类
editClassification: HTTP_URL + '/body/editClassification', // 编辑商品分类
updateClassificationState: HTTP_URL + '/body/updateClassificationState', // 更改商品分类状态
editMerchants: HTTP_URL + '/body/editMerchants', // 编辑供应商/店铺
editGoodsDistribution: HTTP_URL + '/body/editGoodsDistribution', // 修改分销商品
getMerchantsOrDistrList: HTTP_URL + '/body/getMerchantsOrDistrList', // 获取供货商/渠道结算列表
setSett: HTTP_URL + '/body/setSett', // 结算
getSettList: HTTP_URL + '/body/getSettList', // 获取结算单列表
getSettDetails: HTTP_URL + '/body/getSettDetails', // 获取结算明细
getRefundList: HTTP_URL + '/body/getRefundList', // 获取待退款订单列表
setBatchSett: HTTP_URL + '/body/setBatchSett', // 批量结算
login: HTTP_URL + '/body/login', // 登录接口
setRefund: HTTP_URL + '/body/setRefund', // 完成退款
getBatchSettList: HTTP_URL + '/body/getBatchSettList', // 获取批量结算
getSettTimeList: HTTP_URL + '/body/getSettTimeList', // 获取结算周期列表
getPartnerNameList: HTTP_URL + '/body/getPartnerNameList', // 获取渠道名称列表
submitSettImage: HTTP_URL + '/body/submitSettImage', // 提交结算凭证
getPayImage: HTTP_URL + '/body/getPayImage', // 查看付款凭证
exportMerchantsSettOrder: HTTP_URL + '/body/exportMerchantsSettOrder', // 供应商对账单导出
exportPartnerSettOrder: HTTP_URL + '/body/exportPartnerSettOrder', // 渠道商对账单导出
findArticleList: HTTP_URL + '/body/findArticleList', // 获取文章列表
findArticleClassificationList: HTTP_URL + '/body/findArticleClassificationList', // 获取文章分类列表
updateArticleClassificationState: HTTP_URL + '/body/updateArticleClassificationState', // 修改文章分类状态
addArticleClassification: HTTP_URL + '/body/addArticleClassification', // 新增文章分类
updateArticleClassification: HTTP_URL + '/body/updateArticleClassification', // 修改文章分类
addArticle: HTTP_URL + '/body/addArticle', // 新增文章
updateState: HTTP_URL + '/body/updateState', // 更改文章状态
findArticle: HTTP_URL + '/body/findArticle', // 查询文章
editArticle: HTTP_URL + '/body/editArticle', // 编辑文章
findActivityList: HTTP_URL + '/body/findActivityList', // 查询活动列表
exportSett: HTTP_URL + '/body/exportSett', // 结算单导出
deleteActivity: HTTP_URL + '/body/deleteActivity', // 删除活动
addActivity: HTTP_URL + '/body/addActivity', // 新增活动
setBatchSettPartner: HTTP_URL + '/body/setBatchSettPartner', // 渠道商批量结算
getGoodsListByClassificationAndMerchantsIDByPage: HTTP_URL + '/body/getGoodsListByClassificationAndMerchantsIDByPage', // 根据分类获取商品 分页
endActivity: HTTP_URL + '/body/endActivity', // 结束活动
findActivityData: HTTP_URL + '/body/findActivityData', // 查看数据
findActivity: HTTP_URL + '/body/findActivity', // 获取活动详情
findActivityCustomer: HTTP_URL + '/body/findActivityCustomer', // 查看客户
editActivity: HTTP_URL + '/body/editActivity', // 编辑活动
addAdmin: HTTP_URL + '/body/addAdmin', // 新增账号
resetPassword: HTTP_URL + '/body/resetPassword', // 重置密码
modState: HTTP_URL + '/body/modState', // 账号停用/启用/删除
getLogisticsInfo: HTTP_URL + '/body/getLogisticsInfo', // 账号停用/启用/删除
setYXGoodsInfo: HTTP_URL + '/body/setYXGoodsInfo', // 设置严选商品
cannelYXGoodsInfo: HTTP_URL + '/body/cannelYXGoodsInfo', // 取消严选商品
findYXGoodsInfo: HTTP_URL + '/body/findYXGoodsInfo', // 查询严选信息
updateYXGoodsInfo: HTTP_URL + '/body/updateYXGoodsInfo', // 修改严选信息
updateOrderAddress: HTTP_URL + '/body/updateOrderAddress', // 订单列表待发货状态下修改收货人地址
getAdminList: HTTP_URL + '/body/getAdminList', // 获取账号列表
// 营效玩法模块
addCoupons: HTTP_URL + '/body/addCoupons', // 新增优惠券
findCouponsList: HTTP_URL + '/body/findCouponsList', // 获取优惠券列表
findCouponsByID: HTTP_URL + '/body/findCouponsByID', // 根据id获取优惠券详情查看优惠券
setOpenShow: HTTP_URL + '/body/setOpenShow', // 设置开屏展示
getCouponsDate: HTTP_URL + '/body/getCouponsDate', // 获取优惠券数据
closeOrDeleCoupons: HTTP_URL + '/body/closeOrDeleCoupons', // 关闭/删除优惠券
getCouponsCode: HTTP_URL + '/body/getCouponsCode', // 生成兑换码
updateCoupons: HTTP_URL + '/body/updateCoupons', // 修改优惠券
findCouponsByWXName: HTTP_URL + '/body/findCouponsByWXName', // 查看已领优惠券根据微信名称查询
stopCouponsList: HTTP_URL + '/body/stopCouponsList', // 全部停用优惠券
stopCoupons: HTTP_URL + '/body/stopCoupons', // 停用优惠券
// 礼品卡
addOrEditGiftCard: HTTP_URL + '/body/addOrEditGiftCard', // 新增礼品卡
findGiftCard: HTTP_URL + '/body/findGiftCard', // 查看礼品卡
findGiftCardDetailById: HTTP_URL + '/body/findGiftCardDetailById', // 查看礼品卡列表详情
findGiftCardById: HTTP_URL + '/body/findGiftCardById', // 查看礼品卡详情
closeGiftCard: HTTP_URL + '/body/closeGiftCard', // 强制关闭礼品卡
uploadPdf: HTTP_URL + '/body/uploadPdf', // 导出礼品卡
findConsumeRecord: HTTP_URL + '/body/findConsumeRecord', // 导出礼品卡
// 满额后动
// 满额活动列表
// 新增满额活动
// 查看满额活动
// 关闭满额活动
// 开启满额后动
// 活动商品列表
// 添加商品
// 角色权限
addAndEditRole: HTTP_URL + '/body/addAndEditRole', //添加角色
findRoles: HTTP_URL + '/body/findRoles',//角色列表
getMenuList: HTTP_URL + '/body/getMenuList', //获取菜单
bindRoleMenu: HTTP_URL + '/body/bindRoleMenu', //绑定菜单
findMenuByRoleId: HTTP_URL + '/body/findMenuByRoleId', //菜单回显
findOpenedRoles: HTTP_URL + '/body/findOpenedRoles', //获取菜单
openOrCloseRole: HTTP_URL + '/body/openOrCloseRole', //启用/停用角色
deleteRole: HTTP_URL + '/body/deleteRole', //启用/停用角色
// 轮播图配置
// 获取/查询 banner列表
getBannerList: HTTP_URL + '/body/getBannerList',
// 查询banner详情
getBannerById: HTTP_URL + '/body/getBannerById',
// 新增或编辑banner
addOrEditBanner: HTTP_URL + '/body/addOrEditBanner',
// 启用或停用或删除banner
openOrCloseBanner: HTTP_URL + '/body/openOrCloseBanner',
// 获取一级菜单列表
// getGoodsClassification: HTTP_URL + '/body/getGoodsClassification',
getAllClassification: HTTP_URL + '/body/getAllClassification',
// 获取一级菜单对应商品列表
getBannerByClassificationId: HTTP_URL + '/body/getBannerByClassificationId',
// 编辑排序
editBannerSort: HTTP_URL + '/body/editBannerSort',
// 导航按钮配置
// 获取导航列表
getNavList: HTTP_URL + '/body/getNavList',
// 获取导航详情
getNavById: HTTP_URL + '/body/getNavById',
// 编辑导航
editNavById: HTTP_URL + '/body/editNavById',
// 编辑导航排序
// 获取导航状态
getNavState: HTTP_URL + '/body/getNavState',
// 关闭或开启导航
openOrCloseNavState: HTTP_URL + '/body/openOrCloseNavState',
// 编辑排序
editSortNum: HTTP_URL + '/body/editSortNum',
// 首页商品主推区配置
// 获取主推列表 //少一个总数字段
getMainPushGoods: HTTP_URL + '/body/getMainPushGoods',
// 商品查看api
getMainPushGoodsById: HTTP_URL + '/body/getMainPushGoodsById',
// 添加主推商品
addMainPushGoods: HTTP_URL + '/body/addMainPushGoods',
// 点击停用或删除
CloseOrDeleteMainPushGoods: HTTP_URL + '/body/CloseOrDeleteMainPushGoods',
// 获取主推个数
getMainPushGoodsNum: HTTP_URL + '/body/getMainPushGoodsNum',
// 编辑排序
editMainPushSortNum: HTTP_URL + '/body/editMainPushSortNum',
// 新的主推二级接口过滤出了已经主推的商品
getBannerByClassificationIdTwo: HTTP_URL + '/body/getBannerByClassificationIdTwo',
// 省市区 专门请求接口
getArea: pick_Url + '/body/getArea',
// 自选礼包
// 查看礼包列表
getGiftPackList: HTTP_URL + '/body/getGiftPackList',
// 新增/编辑礼包 第一步
addOrEditGiftPackBasic: HTTP_URL + '/body/addOrEditGiftPackBasic',
// 新增编辑 第二步
addOrEditGiftPackCombo: HTTP_URL + '/body/addOrEditGiftPackCombo',
// 新增编辑 第三步
addOrEditGiftPackCard: HTTP_URL + '/body/addOrEditGiftPackCard',
// 删除礼包
deleteGiftPackById: HTTP_URL + '/body/deleteGiftPackById',
// 上架礼包
openGiftPackById: HTTP_URL + '/body/openGiftPackById',
// 下架礼包
closeGiftPackById: HTTP_URL + '/body/closeGiftPackById',
// 获取礼包卡列表
getGiftPackCardList: HTTP_URL + '/body/getGiftPackCardList',
// 停用当前礼包卡
closeGiftPackCardById: HTTP_URL + '/body/closeGiftPackCardById',
// 停用全部礼包卡
closeAllGiftPackCard: HTTP_URL + '/body/closeAllGiftPackCard',
// 第一步回显礼包基本数据
getGiftPackBasic: HTTP_URL + '/body/getGiftPackBasic',
// 第二步回显
getGiftPackCombo: HTTP_URL + '/body/getGiftPackCombo',
// 第三步回显
getGiftPackCard: HTTP_URL + '/body/getGiftPackCard',
// 查看礼包详情
getGiftPackById: HTTP_URL + '/body/getGiftPackById',
// 删除套餐接口
deleteGiftPackCombo: HTTP_URL + '/body/deleteGiftPackCombo',
// 导出ele卡密列表接口
getGiftPackCardListForExport: HTTP_URL + '/body/getGiftPackCardListForExport',
// 礼包订单
getGiftPackOrderList: HTTP_URL + '/body/getGiftPackOrderList',
// 查看详情
getGiftPackOrderDetailById: HTTP_URL + '/body/getGiftPackOrderDetailById',
// 获取工单详情
getWorkOrderDetail: HTTP_URL + '/body/getWorkOrderDetail',
// 创建工单
addWorkOrder: HTTP_URL + '/body/addWorkOrder',
// 判断是否创建工单
judgeWorkState: HTTP_URL + '/body/judgeWorkState',
// 处理工单
acceptOrSoluteWorkOrder: HTTP_URL + '/body/acceptOrSoluteWorkOrder',
// 关闭订单
closePackOrderById: HTTP_URL + '/body/closePackOrderById',
// 快递公司
getLogisticsCode: pick_Url + '/body/getLogisticsCode',
// 添加快递单号
addLogistics: HTTP_URL + '/body/addLogistics',
// 查看物流
getLogisticInfo: HTTP_URL + '/body/getLogisticInfo',
// 回显快点单号
getLogisticById: HTTP_URL + '/body/getLogisticById',
// 地址修改
updatePackOrderAddress: HTTP_URL + '/body/updatePackOrderAddress',
// 导出订单
getGiftPackOrderListForExport: HTTP_URL + '/body/getGiftPackOrderListForExport',
// 多级套餐规格名列表
// 新增/编辑规格名
addOrEditSpec: HTTP_URL + '/body/addOrEditSpec',
// 获取规格列表
getSpecs: HTTP_URL + '/body/getSpecs',
// 编辑排序
editSort: HTTP_URL + '/body/editSort',
// 删除规格
deleteSpec: HTTP_URL + '/body/deleteSpec',
// 编辑回显
getSpecById: HTTP_URL + '/body/getSpecById',
// 停/启用接口
openOrCloseSpec: HTTP_URL + '/body/openOrCloseSpec',
// 三级商品套餐
getSpecMerchants: pick_Url + '/body/getSpecMerchants',
getTodayData: HTTP_URL + '/body/getTodayData', // 首页今日数据
getHistoryData: HTTP_URL + '/body/getHistoryData', // 首页历史数据
getChartData: HTTP_URL + '/body/getChartData', // 首页图表数据
getFullActivityList: HTTP_URL + '/body/getFullActivityList', //获取活动列表
getFullActivityNoSelectOrSelectList: HTTP_URL + '/body/getFullActivityNoSelectOrSelectList', //获取已选或待选商品列表
getFullActivityDetail: HTTP_URL + '/body/getFullActivityDetail', //回显满额详情
addGoodsToSelect: HTTP_URL + '/body/addGoodsToSelect', // 添加待选商品进入已选
addAllGoodsToSelect: HTTP_URL + '/body/addAllGoodsToSelect', // 添加全部商品进入已选
// addClassificationGoodsToSelect:HTTP_URL + `/body/addClassificationGoodsToSelect`, // 添加分类商品进入已选
deleteGoodsToNoSelect: HTTP_URL + '/body/deleteGoodsToNoSelect', // 删除已选商品到待选
openOrCloseFullActivity: HTTP_URL + '/body/openOrCloseFullActivity', //开启或停用活动
addOrEditFullActivity: HTTP_URL + '/body/addOrEditFullActivity', // 添加或编辑活动
// deleteClassificationGoods: HTTP_URL + '/body/deleteClassificationGoods', // 删除分类商品
addGoodsToSelectByScreenType: HTTP_URL + '/body/addGoodsToSelectByScreenType', //保存分类商品修改
getFullActivityScreenType: HTTP_URL + '/body/getFullActivityScreenType', //分类回显
}
export { $api }

@ -0,0 +1,47 @@
let httpUrl, uploadAvatarImg, pick
// 商户后台
// 设置环境 ,生产需要设置为 1
// 0:test 1:produce
/**
* 总后台测试环境的 账号:wanghao111 密码:123456
*/
// 生产环境
// const _ENV = '1'
// 测试环境
const _ENV = '0'
function setUrl() {
if (_ENV === '0') {
return 'test_url'
} else if (_ENV === '1') {
return 'pro_url'
}
}
switch (setUrl()) {
case 'test_url':
httpUrl = 'http://t.81ronggui.com:8082/ronghui/admin' // 测试环境
// uploadAvatarImg = 'http://t.81ronggui.com:8082/ronghui/rh' // 原来的测试环境
uploadAvatarImg = 'https://www.rongui.cn/ronghui/admin' // 现在的上传基础地址
// 省市区请求
pick = 'http://t.81ronggui.com:8082/ronghui/rh'
// uploadAvatarImg = 'http:/tb.81ronggui.com/ronghui/rh'
// uploadAvatarImg = 'http://b.81ronggui.com/ronggui/b'
break
case 'pro_url':
httpUrl = 'https://www.rongui.cn/ronghui/admin' // 生产环境
// uploadAvatarImg = 'https://b.81ronggui.com:8445/ronggui/b' // 域名
uploadAvatarImg = 'https://www.rongui.cn/ronghui/admin' // 测试环境上传基础地址
// 省市区请求
pick = 'https://www.rongui.cn/ronghui/rh'
// uploadAvatarImg = 'https://172.17.181.128:8445/ronggui/b'
// pick = 'http://t.81ronggui.com:8082/ronghui/rh'
break
}
export const HTTP_URL = httpUrl
export const UPLOADAVATARIMG = uploadAvatarImg
export const pick_Url = pick

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 761 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

@ -0,0 +1,106 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="435px" height="345px" viewBox="0 0 435 345" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 53.2 (72643) - https://sketchapp.com -->
<title>分组 7</title>
<desc>Created with Sketch.</desc>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="画板" transform="translate(-4.000000, 0.000000)">
<g id="分组-7" transform="translate(5.000000, 1.000000)">
<g id="分组-3">
<path d="M331.5,62.9998231 C330.048015,63.0147961 328.757139,62.0780861 328.320946,60.6929771 L322.184633,42.0163988 C321.992296,41.4532684 321.550029,41.0109658 320.986943,40.8186134 L302.31185,34.6818124 C300.933572,34.2352843 300,32.9514155 300,31.5025056 C300,30.0535957 300.933572,28.7697269 302.31185,28.3231989 L320.986943,22.1863978 C321.550029,21.9940455 321.992296,21.5517429 322.184633,20.9886124 L328.320946,2.31203416 C328.767439,0.933646466 330.051205,-8.87200719e-17 331.5,0 C332.948795,8.87204609e-17 334.232561,0.933646466 334.679054,2.31203416 L340.815367,20.9886124 C341.007704,21.5517429 341.449971,21.9940455 342.013057,22.1863978 L360.68815,28.3231989 C362.066428,28.7697269 363,30.0535957 363,31.5025056 C363,32.9514155 362.066428,34.2352843 360.68815,34.6818124 L342.013057,40.8186134 C341.449971,41.0109658 341.007704,41.4532684 340.815367,42.0163988 L334.679054,60.6929771 C334.242861,62.0780861 332.951985,63.0147961 331.5,62.9998231 Z" id="路径-2" stroke="#1890FF" fill-rule="nonzero"></path>
<path d="M398.001242,70.8610214 L402.311402,83.9862936 C402.74037,85.2543467 403.735704,86.2499499 405.003414,86.6790339 L418.125133,90.9903624 C419.842994,91.5688424 421,93.1796004 421,94.9926873 C421,96.8057743 419.842994,98.4165323 418.125133,98.9950122 L405.032835,103.30634 C403.765125,103.735424 402.769791,104.731028 402.340824,105.999081 L398.030663,119.124353 C397.45234,120.84268 395.842018,122 394.029421,122 C392.216825,122 390.606503,120.84268 390.02818,119.124353 L385.688598,106.02851 C385.25963,104.760457 384.264296,103.764854 382.996587,103.335769 L369.874868,99.0244414 C368.157007,98.4459616 367,96.8352035 367,95.0221163 C367,93.2090291 368.157007,91.5982709 369.874868,91.0197911 L382.996587,86.7084631 C384.264296,86.2793789 385.25963,85.2837755 385.688598,84.0157223 L389.998759,70.8904501 C390.570738,69.1699677 392.176816,68.0066946 393.989431,68.0000288 C395.802046,67.993363 397.416631,69.1447922 398.001242,70.8610214 L398.001242,70.8610214 Z" id="路径" fill="#1890FF" fill-rule="nonzero"></path>
<path d="M362,163.5 C361.999377,166.179269 363.333433,168.655302 365.499496,169.995129 C367.66556,171.334957 370.33444,171.334957 372.500504,169.995129 C374.666567,168.655302 376.000623,166.179269 376,163.5 C376.000623,160.820731 374.666567,158.344698 372.500504,157.004871 C370.33444,155.665043 367.66556,155.665043 365.499496,157.004871 C363.333433,158.344698 361.999377,160.820731 362,163.5 L362,163.5 Z" id="路径" fill="#349AFF" fill-rule="nonzero"></path>
<path d="M44.0000002,171.5 C43.9993768,174.179269 45.3334329,176.655302 47.4994964,177.995129 C49.6655599,179.334957 52.3344401,179.334957 54.5005036,177.995129 C56.6665671,176.655302 58.0006232,174.179269 57.9999998,171.5 C58.0006232,168.820731 56.6665671,166.344698 54.5005036,165.004871 C52.3344401,163.665043 49.6655599,163.665043 47.4994964,165.004871 C45.3334329,166.344698 43.9993768,168.820731 44.0000002,171.5 L44.0000002,171.5 Z" id="路径" fill="#349AFF" fill-rule="nonzero"></path>
<path d="M216,323 C325.35238,323 414,279.347763 414,225.5 C414,171.652237 325.35238,128 216,128 C106.64762,128 18,171.652237 18,225.5 C18,279.347763 106.64762,323 216,323 Z" id="椭圆形" stroke="#349AFF" stroke-dasharray="2,3"></path>
<path d="M215.5,272 C292.543723,272 355,241.107648 355,203 C355,164.892352 292.543723,134 215.5,134 C138.456277,134 76,164.892352 76,203 C76,241.107648 138.456277,272 215.5,272 Z" id="椭圆形" stroke="#349AFF" stroke-dasharray="2,3"></path>
<path d="M215,246 C276.303607,246 326,221.375661 326,191 C326,160.624339 276.303607,136 215,136 C153.696393,136 104,160.624339 104,191 C104,221.375661 153.696393,246 215,246 Z" id="椭圆形" stroke="#349AFF" stroke-dasharray="2,3"></path>
<circle id="椭圆形" fill="#1890FF" cx="143" cy="233" r="4"></circle>
<circle id="椭圆形" fill="#1890FF" cx="322" cy="176" r="4"></circle>
<circle id="椭圆形" stroke="#1890FF" cx="300" cy="148" r="5"></circle>
<circle id="椭圆形" fill="#1890FF" cx="87.5" cy="176.5" r="6.5"></circle>
<circle id="椭圆形" stroke="#1890FF" cx="26" cy="199" r="5"></circle>
<circle id="椭圆形" fill="#1890FF" cx="124" cy="138" r="4"></circle>
<circle id="椭圆形" stroke="#1890FF" cx="405.5" cy="193.5" r="6.5"></circle>
<circle id="椭圆形" stroke="#FE9FBA" stroke-width="3" fill="#FF3770" cx="316.5" cy="249.5" r="18.5"></circle>
<circle id="椭圆形" fill="#FFBBB7" cx="198" cy="323" r="21"></circle>
<circle id="椭圆形" fill="#FF5E56" cx="198.5" cy="322.5" r="18.5"></circle>
<circle id="椭圆形" stroke="#A897FF" stroke-width="2" fill="#775CFF" cx="18.5" cy="246.5" r="18.5"></circle>
<circle id="椭圆形" stroke="#FEDEA2" stroke-width="2" fill="#FFAD10" cx="414.5" cy="240.5" r="18.5"></circle>
<circle id="椭圆形" stroke="#A897FF" stroke-width="3" fill="#775CFF" cx="311" cy="312" r="21"></circle>
<circle id="椭圆形" stroke="#A4FFF5" stroke-width="2" fill="#5DD5C8" cx="163.5" cy="267.5" r="18.5"></circle>
<circle id="椭圆形" stroke="#FEACA0" stroke-width="3" fill="#FE7865" cx="88" cy="228" r="21"></circle>
<circle id="椭圆形" stroke="#A7D3FF" stroke-width="3" fill="#349AFF" cx="90" cy="301" r="21"></circle>
<circle id="椭圆形" stroke="#8FB860" stroke-width="3" fill="#4A7915" cx="249" cy="273" r="21"></circle>
<text id="戎归-精品" font-family="PingFangSC-Regular, PingFang SC" font-size="12" font-weight="normal" fill="#FFFFFF">
<tspan x="238" y="269">戎归</tspan>
<tspan x="238" y="286">精品</tspan>
</text>
<text id="有机" font-family="PingFangSC-Regular, PingFang SC" font-size="12" font-weight="normal" fill="#FFFFFF">
<tspan x="299" y="317">有机</tspan>
</text>
<text id="精选" font-family="PingFangSC-Regular, PingFang SC" font-size="12" font-weight="normal" fill="#FFFFFF">
<tspan x="78" y="306">精选</tspan>
</text>
<text id="绿色" font-family="PingFangSC-Regular, PingFang SC" font-size="12" font-weight="normal" fill="#FFFFFF">
<tspan x="76" y="233">绿色</tspan>
</text>
<g id="tuijian" transform="translate(317.000000, 249.500000) scale(-1, 1) translate(-317.000000, -249.500000) translate(310.000000, 240.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M4.9607188,18.8683571 C4.9607188,18.8683571 0.581054688,18.0764643 0.581054688,12.9308571 C0.581054688,7.78457142 4.00258093,8.18085715 4.00258093,3.95810715 C4.00258093,3.95810715 5.78138771,6.06914286 4.960028,8.04853571 C4.960028,8.04853571 7.42341637,6.46542857 7.42341637,0 C7.42341637,0 20.698496,13.3264643 8.65511054,19 C8.65511054,19 9.47716106,17.0206071 9.20291395,15.8331071 C8.92935763,14.6456071 7.14986005,14.1183571 6.73952559,12.7985357 C6.32919112,11.4793929 7.14986005,10.0279286 7.83444161,9.5 C7.97121976,9.36835714 0.581054687,11.6110357 4.9607188,18.8683571 Z" id="路径"></path>
</g>
<g id="tuijian-2" transform="translate(405.000000, 230.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M8.76734071,5.45242704 C9.13244752,5.45242704 9.44755392,5.72470638 9.53363937,6.11452603 L9.58558449,6.33910192 C9.64322447,6.67181278 9.67230653,7.00884615 9.67251263,7.34651603 C9.67251263,8.17455042 9.59364419,8.81270042 9.43130487,9.297365 L9.0067118,10.5652569 L10.3434777,10.5708767 C11.6336356,10.5763236 13.5958174,10.5855746 13.7849072,10.5891843 C14.1229178,10.6036012 14.2560866,10.7190449 14.3712129,10.9123444 C14.4887593,11.1102911 14.5088113,11.3080432 14.5027395,11.4470469 C14.4150767,11.9910868 13.3326777,16.8731806 13.151021,17.6085099 C13.0840369,17.7245804 12.9936731,17.8223433 12.8881623,17.8926989 C12.7062247,18.0132004 12.6942756,18.0132004 12.6115826,18.0132004 L4.78085476,18.0136543 L4.79172347,10.9076324 C6.68456585,10.3154351 8.0616519,8.56335419 8.11614676,6.53153686 L8.11759447,6.47840812 L8.11467741,6.44321952 L8.11513117,6.42246949 L8.11649247,6.33940451 C8.11668695,5.91214836 8.32036196,5.45242704 8.7673191,5.45242704 L8.76734071,5.45242704 Z M2.2750426,11.1288797 L2.2750426,18.017372 L0.976630516,18.017372 L0.976630516,11.1288797 L2.2750426,11.1288797 L2.2750426,11.1288797 Z M8.7673191,4.48584293 C7.79723739,4.48584293 7.15040821,5.32693258 7.15040821,6.33929644 C7.15040821,6.39633742 7.14587056,6.45091432 7.15040821,6.50551285 C7.0996299,8.39860757 5.60499748,9.92047121 3.82680603,10.1292036 L3.81319312,18.9801519 L3.98679009,18.9801519 C3.98653079,18.9798709 3.98860515,18.979698 3.99484979,18.979698 C4.00139695,18.979698 4.00338486,18.9798709 4.00310397,18.9801519 L12.6116906,18.979698 L12.6171358,18.979698 C12.9420953,18.979698 13.1255671,18.8945364 13.4215074,18.6985999 C13.703597,18.5104663 13.916974,18.2531226 14.0560201,17.9622547 C14.0945468,17.903852 15.4309237,11.8977981 15.4651073,11.5413514 C15.4918577,11.1612584 15.4093592,10.7680884 15.2019676,10.4188178 C14.8749121,9.86969848 14.3998433,9.64782441 13.825076,9.62350798 C13.7952573,9.61888244 10.3475616,9.60437904 10.3475616,9.60437904 C10.5758047,8.92261075 10.6387914,8.11007402 10.6387914,7.34651603 C10.6385821,6.86195306 10.5872677,6.37876427 10.4857002,5.9049723 L10.4771651,5.90588011 C10.2974315,5.09245719 9.60081796,4.48584293 8.76734071,4.48584293 L8.7673191,4.48584293 Z M2.56186441,10.162382 L0.68976551,10.162382 C0.314330154,10.162382 0.0103949892,10.4761182 0.0103949892,10.8628469 L0.0103949892,18.2835128 C0.0103949892,18.6701335 0.314330154,18.9839561 0.68976551,18.9839561 L2.56186441,18.9839561 C2.93732136,18.9839561 3.24125654,18.6702199 3.24125652,18.2835128 L3.24125652,10.8629334 C3.24125652,10.4761182 2.93740779,10.1624036 2.56186441,10.1624036 L2.56186441,10.162382 Z M4.0721073,19.0163657 L3.9966103,19.0163657 C3.9974103,19.0176656 4.00411,19.0188656 4.0125097,19.0205656 C4.0062099,19.0230655 4.0066099,19.0239655 4.0125097,19.0239654 C4.0196565,19.0238003 4.02679457,19.0233667 4.0339088,19.0226655 C4.04142507,19.0233528 4.04896239,19.0237863 4.0565079,19.0239654 C4.0633076,19.0239654 4.0641076,19.0226655 4.0565079,19.0205656 C4.06186129,19.0198157 4.06710106,19.018405 4.0721073,19.0163657 L4.0721073,19.0163657 Z M17.9850725,2.52991452 C17.9545529,2.43588101 17.8774513,2.36441714 17.7813975,2.34113247 L15.809838,1.86319002 L14.7461729,0.135317459 C14.6943085,0.05121176 14.6025763,8.8477856e-08 14.5037875,8.8477856e-08 C14.4049988,8.8477856e-08 14.3132666,0.05121176 14.2614021,0.135317459 L13.1977803,1.86319002 L11.2262424,2.34121891 C11.1301606,2.36446718 11.0530191,2.43592034 11.0224711,2.52996418 C10.9919232,2.62400803 11.0123442,2.72717219 11.0764139,2.80247486 L12.3904917,4.34837396 L12.2356719,6.37167514 C12.2282902,6.47021606 12.2724464,6.5655533 12.3523682,6.6236334 C12.4322901,6.68171349 12.5365785,6.69425263 12.6279829,6.65677195 L14.5037983,5.88420065 L16.3796138,6.65675034 C16.4710103,6.69424842 16.5752972,6.68176144 16.6552643,6.62374481 C16.7352215,6.56566211 16.7793144,6.47023086 16.7717303,6.37167514 L16.6170186,4.34837396 L17.9310963,2.80249648 C17.9951879,2.72717605 18.0156067,2.62397799 17.9850293,2.52991452 L17.9850725,2.52991452 Z" id="形状"></path>
</g>
<g id="分组-6" transform="translate(134.000000, 56.000000)">
<g id="caise-datubiao" fill-rule="nonzero">
<path d="M170.190804,136.32958 L164.934912,141.592303 L159.679019,146.855025 C156.425372,147.606843 153.171724,148.108055 149.918076,148.609266 C144.411903,149.110478 137.904608,149.110478 133.149276,146.855025 L136.152643,141.592303 L139.15601,136.32958 L148.666673,132.570492 L158.177336,128.560799 L164.18407,132.570492 L170.190804,136.32958 Z" id="路径" fill="#F9902D"></path>
<path d="M82.092035,0 L75.3344589,5.01211686 C58.0650979,18.2942267 38.0426503,27.3160371 16.7687998,31.5763366 L16.2682386,31.5763366 L8.00897907,67.4129725 L0,103.249608 L22.7755341,132.06928 L45.5510682,160.387741 L118.633002,160.387741 L141.408536,131.818675 L164.18407,103.249608 L155.92481,67.6635782 L147.665551,32.0775482 C125.390578,27.8172489 104.367008,18.043621 86.346805,4.00969355 L82.092035,0 Z" id="路径" fill="#0245D3"></path>
<path d="M82.092035,8.52059876 L76.0853007,13.2821099 C60.5679039,25.3111905 42.5477011,33.3305775 23.2760952,37.0896651 L22.7755341,37.0896651 L15.5173968,69.1672133 L8.00897907,101.495367 L28.5319877,127.30777 L49.3052771,152.869566 L115.129073,152.869566 L135.652082,127.057164 L156.175091,101.244762 L148.666673,69.1672133 L141.408536,37.0896651 C121.386088,33.3305775 102.364763,24.5593728 86.346805,11.7784747 L82.092035,8.52059876 Z" id="路径" fill="#FFFFFF"></path>
<path d="M150.668918,100.242338 L131.397312,124.551105 L128.393945,128.310193 L112.125706,148.859872 L50.0561189,148.859872 L43.5488234,140.339273 L36.0404057,130.816251 L31.0347937,124.551105 L29.7833907,122.796864 L22.2749729,113.273842 L15.0168357,104.252032 L11.5129073,100.242338 L14.2659939,88.4638634 L18.5207641,69.9190309 L18.7710446,69.1672133 L23.5263759,48.6175339 L25.5286207,39.5957235 L26.0291818,39.5957235 C29.5331102,38.843906 33.0370384,38.0920884 36.5409668,37.0896651 C50.55668,32.8293658 63.8215516,26.3136138 75.5847395,17.2918033 L81.0909125,13.031504 L81.5914738,13.2821099 L85.3456827,16.038774 C87.3479275,17.5424092 89.0998916,18.7954384 90.8518557,20.2990735 C94.3557841,22.8051319 97.8597123,25.0605846 101.613921,27.0654312 C104.116727,28.5690663 106.869814,29.8220956 109.6229,31.0751248 C110.624023,31.5763364 111.625145,32.0775481 112.876548,32.5787599 C117.131318,34.3330008 121.386088,35.8366359 125.891139,37.340271 C129.395067,38.3426943 133.149276,39.3451178 136.903485,40.0969352 L137.153766,41.0993587 L140.157133,54.6320743 L143.1605,67.4129725 L143.911342,70.4202426 L146.414148,80.9456881 L149.417515,93.7265861 L150.668918,100.242338 Z" id="路径" fill="#349AFF"></path>
<path d="M81.5914738,13.2821099 L18.7710446,69.1672133 L23.5263759,48.6175339 L36.5409668,37.0896651 C50.55668,32.8293658 63.8215516,26.3136138 75.5847395,17.2918033 L81.0909125,13.031504 L81.5914738,13.2821099 Z M101.613921,27.0654312 L14.766555,104.252032 L11.5129073,100.242338 L14.2659939,88.4638634 L90.8518557,20.2990735 C94.3557841,22.8051319 97.8597123,25.0605846 101.613921,27.0654312 Z M125.891139,37.0896651 L29.5331102,122.796864 L22.0246923,113.273842 L112.876548,32.5787599 C117.131318,34.3330008 121.386088,35.8366359 125.891139,37.0896651 Z M140.157133,54.1308626 L43.5488234,140.339273 L36.0404057,130.816251 L137.153766,40.598147 L140.157133,54.1308626 Z M146.163867,80.6950822 L69.8282859,148.609266 L51.5578025,148.609266 L143.1605,67.1623666 L143.661061,69.9190309 L146.163867,80.6950822 Z M150.668918,100.242338 L131.397312,124.300499 L128.393945,128.059587 L128.393945,128.310193 L105.36813,148.609266 L87.0976468,148.609266 L149.167234,93.4759804 L150.668918,100.242338 Z" id="形状" fill="#1890FF"></path>
<path d="M70.3288471,41.0993587 L72.0808112,45.1090522 L73.8327754,49.1187458 C74.0830561,49.1187458 75.8350202,48.6175341 77.3367037,48.3669282 C79.0886678,48.1163223 80.5903514,47.8657165 82.3423155,47.8657165 C83.8439991,47.8657165 85.3456826,48.1163224 86.8473663,48.3669282 C88.34905,48.6175341 89.6004529,49.1187458 90.1010141,49.1187458 L91.8529782,45.1090522 L93.6049423,41.0993587 L93.6049423,40.598147 C93.6049423,40.598147 93.3546616,40.3475411 93.1043811,40.3475411 L90.3512946,41.0993587 L87.598208,42.3523879 C87.3479273,42.3523879 87.3479273,42.3523879 87.0976468,42.101782 L84.5948409,38.5933002 L82.092035,35.0848183 L79.5892291,38.3426943 L77.0864232,41.8511762 L76.8361425,42.101782 L76.5858619,42.101782 L73.8327754,41.3499646 L71.0796889,40.598147 C70.8294082,40.598147 70.8294082,40.598147 70.5791277,40.8487527 C70.3288471,40.8487527 70.3288471,41.0993587 70.3288471,41.0993587 L70.3288471,41.0993587 Z M82.5925962,30.824519 C82.5925962,31.0751249 82.5925962,31.0751249 82.3423155,31.3257307 C82.0920348,31.5763364 82.0920348,31.5763366 81.8417543,31.5763366 C81.5914738,31.5763366 81.5914737,31.5763366 81.3411932,31.3257307 C81.0909127,31.0751248 81.0909125,31.0751248 81.0909125,30.824519 C81.0909125,30.5739133 81.0909125,30.3233074 81.3411932,30.3233072 C81.5914738,30.0727013 81.5914738,30.0727013 81.8417543,30.0727015 C82.0920348,30.0727016 82.3423155,30.0727015 82.3423155,30.3233072 C82.5925962,30.5739131 82.5925962,30.8245189 82.5925962,30.824519 Z M94.3557841,36.8390592 C94.3557841,37.0896651 94.3557841,37.3402709 94.1055034,37.340271 C93.8552228,37.5908769 93.3546616,37.5908769 93.1043811,37.340271 C92.8541005,37.0896651 92.8541005,37.0896651 92.8541005,36.8390592 C92.8541005,36.5884533 92.8541005,36.5884533 93.1043811,36.3378475 C93.3546618,36.0872418 93.855223,36.0872416 94.1055034,36.3378475 C94.1055034,36.3378475 94.3557841,36.5884534 94.3557841,36.8390592 Z M70.8294082,37.0896651 C70.8294082,37.340271 70.8294082,37.340271 70.5791277,37.5908768 L70.0785664,37.5908768 C69.8282857,37.5908768 69.8282857,37.5908768 69.5780052,37.340271 C69.3277247,37.0896653 69.3277246,37.0896651 69.3277246,36.8390592 C69.3277246,36.5884533 69.3277246,36.3378475 69.5780052,36.3378475 C69.8282859,36.0872416 69.8282859,36.0872416 70.0785664,36.0872418 C70.3288469,36.087242 70.5791275,36.0872418 70.5791277,36.3378475 C70.8294084,36.5884534 70.8294084,36.8390592 70.8294082,37.0896651 Z" id="形状" fill="#9C1613"></path>
<path d="M70.3288471,39.5957235 L72.0808112,43.6054171 L73.8327754,47.6151106 C74.0830561,47.6151106 75.5847395,47.113899 77.3367037,46.8632931 C78.8383873,46.6126872 80.5903514,46.3620814 82.092035,46.3620814 C83.5937186,46.3620814 85.0954021,46.6126873 86.5970857,46.8632931 C88.0987693,47.113899 89.3501723,47.6151106 89.6004528,47.6151106 L91.352417,43.6054171 L93.1043811,39.5957235 L93.1043811,39.0945119 C93.1043811,38.843906 92.8541005,38.843906 92.60382,38.843906 L90.1010141,39.8463294 L87.598208,40.598147 L87.3479275,40.598147 C87.3479275,40.598147 87.0976468,40.598147 87.0976468,40.3475411 L84.5948409,36.8390592 L82.092035,33.3305775 L79.3389484,36.8390592 L76.8361425,40.3475411 C76.8361425,40.3475411 76.8361425,40.598147 76.5858619,40.598147 L76.3355814,40.598147 L73.5824948,39.8463294 L70.8294082,39.0945119 C70.5791275,39.0945119 70.5791275,39.0945119 70.3288471,39.3451178 L70.3288471,39.5957235 L70.3288471,39.5957235 Z M82.5925962,30.0727015 C82.5925962,30.3233074 82.5925962,30.3233074 82.3423155,30.5739131 C82.0920348,30.8245189 82.0920348,30.824519 81.8417543,30.824519 C81.3411932,30.824519 81.0909125,30.5739131 81.0909125,30.0727015 C81.0909125,29.5714898 81.3411932,29.3208839 81.8417543,29.3208839 C82.092035,29.3208839 82.3423155,29.3208839 82.3423155,29.5714898 C82.5925962,29.8220957 82.5925962,30.0727015 82.5925962,30.0727015 Z M94.1055034,36.0872418 C94.1055034,36.3378477 94.1055034,36.3378477 93.855223,36.5884534 C93.6049425,36.8390592 93.6049423,36.8390594 93.3546618,36.8390592 C93.1043813,36.839059 92.8541006,36.8390592 92.8541005,36.5884534 C92.6038198,36.3378475 92.6038198,36.3378475 92.60382,36.0872418 C92.6038202,35.836636 92.60382,35.5860301 92.8541005,35.58603 C93.104381,35.5860298 93.1043811,35.3354241 93.3546618,35.3354242 C93.6049425,35.3354244 93.6049425,35.3354242 93.855223,35.58603 C94.1055036,35.58603 94.1055036,35.8366359 94.1055034,36.0872418 Z M70.8294082,36.0872418 C70.8294082,36.3378477 70.8294082,36.3378477 70.5791277,36.5884534 C70.3288472,36.8390592 70.3288471,36.8390594 70.0785664,36.8390592 C69.8282857,36.839059 69.5780052,36.8390592 69.5780052,36.5884534 C69.3277246,36.3378475 69.3277246,36.3378475 69.3277246,36.0872418 C69.3277246,35.836636 69.3277246,35.5860301 69.5780052,35.58603 C69.8282859,35.5860298 69.8282859,35.3354241 70.0785664,35.3354242 C70.3288469,35.3354244 70.3288471,35.3354242 70.5791277,35.58603 C70.8294084,35.58603 70.8294084,35.8366359 70.8294082,36.0872418 Z" id="形状" fill="#FFD64A"></path>
<path d="M24.5274982,125.553528 C30.5342325,126.305346 36.7912473,126.05474 42.7979816,124.801711 C42.7979816,124.801711 47.3030323,124.049893 53.5600473,122.796864 C61.3187457,121.293229 68.8271636,119.037777 76.0853007,116.531718 L85.0954021,114.276266 C89.6004528,113.023236 94.3557841,112.271419 98.8608348,112.020813 C102.364763,111.770207 105.868691,112.271419 109.37262,113.023236 C113.62739,114.02566 140.657694,122.546258 148.166112,127.057164 C148.166112,127.057164 142.159378,134.825945 138.154888,139.587456 C135.652082,142.845332 131.647593,147.356237 129.395067,150.864719 C129.395067,150.864719 111.875426,142.594726 109.122339,141.341697 C105.618411,139.838062 101.613921,139.33685 97.8597125,139.33685 C92.8541006,139.33685 83.343438,142.34412 74.0830559,145.601996 C64.8226739,148.859872 56.0628532,152.117748 52.8092055,152.869566 C48.0538741,153.871989 43.0482623,154.874412 38.0426504,155.375624 C30.0336714,156.378048 20.7732895,156.628653 15.7676775,154.122595 L10.0112238,147.105631 L4.00448954,139.33685 L9.01010138,131.568069 L14.2659939,124.049894 C14.2659939,124.049894 18.7710446,125.052317 24.5274982,125.553528 Z" id="路径" fill="#F9902D"></path>
<path d="M27.7811459,157.881683 C23.7766564,158.132289 19.5218864,157.380471 15.7676775,155.876836 L15.5173968,155.876836 L3.00336707,139.587456 L14.0157132,123.298076 L14.5162745,123.548682 C14.5162745,123.548682 19.0213252,124.551105 24.7777789,125.052317 C30.7845132,125.804134 36.7912475,125.553528 42.7979816,124.300499 C43.0482623,124.300499 47.3030323,123.548682 53.8103278,122.295652 C61.5690262,120.792017 69.0774441,118.536565 76.3355814,116.030506 C76.3355814,116.030506 80.5903514,114.777477 85.3456827,113.775054 C89.8507334,112.522025 94.6060648,111.770207 99.3613959,111.519601 L100.112238,111.519601 C103.365885,111.519601 106.619533,111.770207 109.873181,112.522025 C114.378232,113.775054 141.408536,122.295652 148.916954,126.806558 L149.918076,127.30777 L149.167234,128.059587 L139.15601,140.589879 C138.154888,141.842908 136.903485,143.597149 135.652082,145.100784 C133.649837,147.356237 131.647593,149.862296 130.39619,152.117748 L129.895628,152.869566 L129.144787,152.61896 C128.894506,152.61896 111.625145,144.348967 109.122339,143.095938 C105.618411,141.842908 101.864202,141.091091 98.109993,141.091091 C93.1043811,141.091091 82.3423155,144.599573 74.5836171,147.356237 L66.3243575,150.363507 C60.3176232,152.368354 55.562292,154.122595 53.3097666,154.623807 C48.5544353,155.62623 43.5488234,156.628653 38.5432116,157.129865 C35.0392832,157.631077 31.2850743,157.881683 27.7811459,157.881683 L27.7811459,157.881683 Z M16.7687998,154.122595 C20.7732893,156.127442 28.2817071,156.378048 38.2929309,155.125018 C43.2985428,154.623807 48.0538741,153.621383 52.8092055,152.61896 C55.0617309,152.117748 59.8170621,150.363507 65.5735157,148.35866 L73.8327754,145.35139 C82.3423157,142.34412 92.60382,139.086244 97.8597125,139.086244 C101.864202,139.086244 105.868692,139.587456 109.6229,141.091091 C111.875426,142.093514 125.640858,148.609266 129.144787,150.112901 C130.64647,148.108055 132.398435,145.852602 134.150399,143.847755 C135.401802,142.34412 136.653205,140.840485 137.654327,139.33685 L147.16499,127.558375 C138.655449,123.04747 113.87767,115.028083 109.6229,114.02566 C106.619533,113.273842 103.365886,113.023236 100.362518,113.023236 L99.3613959,113.023236 C94.8563453,113.273842 90.1010139,114.02566 85.8462439,115.278689 C81.0909125,116.281112 77.086423,117.534142 77.0864232,117.534142 C69.8282859,120.0402 62.3198681,122.295653 54.5611696,123.799288 C48.3041548,125.052317 43.7991041,125.804134 43.5488234,125.804134 C37.5420891,127.057164 31.2850743,127.30777 25.0280595,126.555952 C20.2727282,126.05474 16.5185193,125.302923 15.0168357,125.052317 L5.2558925,139.33685 L16.7687998,154.122595 L16.7687998,154.122595 Z" id="形状" fill="#E7530B"></path>
</g>
<g id="分组-2" transform="translate(39.985075, 59.629630)">
<path d="M14.9715586,26.9822201 L21.2949148,26.9822201 L22.119403,21.7391875 L16.6710672,21.7391875 L18.7910769,15.3333333 L11.8772642,15.3333333 L9.91335063,21.7391875 L4.2273383,21.7391875 L3.40298507,26.9822201 L8.25429478,26.9822201 L3.47043625,41.7407407 L10.3502308,41.7407407 L14.9715586,26.9822201 Z M25.3615012,11.6860974 L28.2062334,27.1279184 L24.5655745,29.6992847 L23.2170851,38.1706488 L29.6710124,33.559646 L31.6423072,41.7407407 L38.9320184,41.7407407 L35.7847459,28.9554079 L42.0597374,24.18102 L43.2989241,16.1273731 L34.5773044,22.7717645 L32.3608638,11.6860974 L39.9053804,11.6860974 C42.050031,11.7144713 43.4961943,10.4466628 44.238806,7.86810909 L43.2651626,3.0585356 L36.3080487,3.0585356 L37.1571498,6.29584429 L31.9392674,6.29584429 L31.2479544,2.55555556 L24.3259149,2.55555556 L24.9749792,6.29584429 L5.9624879,6.29584429 L5.10447761,11.6860974 L25.3615012,11.6860974 Z M53.2516678,2.55555556 L46.7910448,41.7407407 L53.0914683,41.7407407 L59.5522388,2.55555556 L53.2516678,2.55555556 Z M62.1176369,2.55555556 L56.1492537,41.73002 C59.1167776,41.8148022 61.0770495,41.3965339 62.0150527,40.4820332 C62.8311579,39.6524089 63.3308262,38.751874 63.5070919,37.7805698 L68.9104478,2.55555556 L62.1176369,2.55555556 Z M85.5479808,37.7657421 L90.0861285,8.03650078 C90.5891238,4.38261618 89.0509629,2.55555556 85.47826,2.55555556 L70.2659923,2.55555556 L69.4293429,8.03650078 L78.7943069,8.03650078 C81.7862751,8.03650078 83.0392559,9.62768341 82.5544722,12.8034229 L81.5719483,19.2400431 L68.2380191,19.2400431 L67.4013697,24.7209884 L76.4866351,24.7209884 C79.3215844,24.7209884 80.5098277,26.1979235 80.0589304,29.152267 L79.1275079,35.2536698 L78.9739319,36.2598428 L77.9699798,36.2598428 L64.6426195,36.2598428 L63.8059701,41.7407407 L80.9383454,41.7407407 L84.859154,41.7407407 L85.5479808,37.7657421 Z" id="Fill-6" fill="#085296"></path>
<path d="M11.5685735,24.4266645 L17.8919297,24.4266645 L18.7164179,19.1836319 L13.2680821,19.1836319 L15.3880918,12.7777778 L8.47427912,12.7777778 L6.51036556,19.1836319 L0.824353221,19.1836319 L0,24.4266645 L4.85130971,24.4266645 L0.0674511724,39.1851852 L6.94724577,39.1851852 L11.5685735,24.4266645 Z M21.9585161,9.13054181 L24.8032483,24.5723628 L21.1625894,27.1437291 L19.8141,35.6150932 L26.2680273,31.0040904 L28.2393221,39.1851852 L35.5290334,39.1851852 L32.3817609,26.3998523 L38.6567524,21.6254644 L39.895939,13.5718176 L31.1743193,20.2162089 L28.9578787,9.13054181 L36.5023954,9.13054181 C38.6470459,9.15891577 40.0932092,7.89110727 40.8358209,5.31255354 L39.8621776,0.502980049 L32.9050637,0.502980049 L33.7541647,3.74028873 L28.5362824,3.74028873 L27.8449693,0 L20.9229299,0 L21.5719942,3.74028873 L2.55950282,3.74028873 L1.70149254,9.13054181 L21.9585161,9.13054181 Z M49.8486827,0 L43.3880597,39.1851852 L49.6884833,39.1851852 L56.1492537,0 L49.8486827,0 Z M58.7146518,0 L52.7462687,39.1744644 C55.7137925,39.2592467 57.6740644,38.8409783 58.6120676,37.9264777 C59.4281728,37.0968533 59.9278411,36.1963185 60.1041068,35.2250142 L65.5074627,0 L58.7146518,0 Z M82.1449957,35.2101866 L86.6831434,5.48094523 C87.1861388,1.82706062 85.6479779,0 82.0752749,0 L66.8630072,0 L66.0263578,5.48094523 L75.3913218,5.48094523 C78.3832901,5.48094523 79.6362708,7.07212785 79.1514871,10.2478673 L78.1689632,16.6844876 L64.835034,16.6844876 L63.9983847,22.1654328 L73.0836501,22.1654328 C75.9185994,22.1654328 77.1068426,23.6423679 76.6559453,26.5967115 L75.7245228,32.6981143 L75.5709468,33.7042873 L74.5669948,33.7042873 L61.2396344,33.7042873 L60.4029851,39.1851852 L77.5353604,39.1851852 L81.4561689,39.1851852 L82.1449957,35.2101866 Z" id="Fill-6" fill="#FFFFFF"></path>
</g>
<text id="商" font-family="PingFangSC-Semibold, PingFang SC" font-size="16" font-weight="500" fill="#FFFFFF">
<tspan x="52" y="139"></tspan>
</text>
<text id="电" font-family="PingFangSC-Semibold, PingFang SC" font-size="16" font-weight="500" fill="#FFFFFF">
<tspan x="25" y="148"></tspan>
</text>
<text id="台" font-family="PingFangSC-Semibold, PingFang SC" font-size="16" font-weight="500" fill="#FFFFFF">
<tspan x="105" y="134"></tspan>
</text>
<text id="平" font-family="PingFangSC-Semibold, PingFang SC" font-size="16" font-weight="500" fill="#FFFFFF">
<tspan x="79" y="111"> </tspan>
<tspan x="79" y="133"></tspan>
</text>
</g>
</g>
<g id="shuiguo-2" transform="translate(153.531787, 258.000000)" fill-rule="nonzero">
<path d="M14.6301604,6.03125 C14.6301604,6.03125 15.684607,0.315374797 9.47409562,0.718255869 C9.4334716,0.717444354 9.39584891,0.738269669 9.37692414,0.77204326 C9.35799937,0.805816851 9.36102386,0.846736327 9.38473574,0.877729626 C9.920895,1.5072313 12.5302034,3.06839545 13.1110426,5.12476759 L14.6301604,6.03125 Z" id="路径" fill="#FFFFFF"></path>
<path d="M13.3645833,3.3788581 C13.3645833,3.3788581 19.5083773,2.82529787 18.6077631,8.61251844 C18.6017681,8.64930109 18.5746851,8.67997094 18.5373437,8.69226406 C18.5000023,8.70455718 18.4584967,8.69646733 18.4294236,8.67122937 C17.8052356,8.12605642 16.3428521,5.56793719 14.2206127,4.86340599 L13.3645833,3.3788581 Z" id="路径" fill="#FFFFFF"></path>
<path d="M14.5493588,1.48348638 C13.4424205,2.30686081 13.0706181,3.57443026 13.6065048,4.69791667 L18.6979167,0.977511246 C17.3129144,0.467113731 15.6745051,0.666940843 14.5493588,1.48348638 L14.5493588,1.48348638 Z" id="路径" fill="#FFFFFF"></path>
<path d="M18.4772468,0.697916667 L13.3645833,4.44048463 C14.7514372,4.926142 16.3715989,4.71311095 17.4839654,3.89883728 C18.5963319,3.08456361 18.9869916,1.82563476 18.4772468,0.697916667 Z" id="路径" fill="#FFFFFF"></path>
<path d="M15.2096321,14.9408191 C12.2839189,17.5001671 4.44655383,19.5791196 1.37012206,16.4731148 C-1.7063097,13.36711 1.08641654,6.235723 4.04759294,3.6929404 C7.00876933,1.1501578 11.9115554,1.56429178 14.9879872,4.67029658 C18.0644189,7.77630138 18.1708085,12.3731885 15.2096321,14.9408191 L15.2096321,14.9408191 Z" id="路径" fill="#FFFFFF"></path>
<path d="M8.72206906,6.36590515 C8.36354174,6.72713347 7.32055318,7.18527671 6.9864709,6.7888066 C6.65238863,6.39233649 7.14943786,5.31746197 7.50796518,4.95623365 C7.74085513,4.72173226 8.07175777,4.63938498 8.37602528,4.74021124 C8.68029278,4.84103749 8.91169967,5.10971936 8.98307722,5.44504699 C9.05445476,5.78037462 8.95495901,6.13140377 8.72206906,6.36590515 Z M7.60574536,10.4275212 C7.24721804,10.7887495 6.20422948,11.2380823 5.87014721,10.8504226 C5.53606493,10.4627629 6.03311417,9.37026753 6.39164149,9.00903921 C6.75875081,8.6940149 7.28833661,8.7379753 7.60667157,9.10989768 C7.92500652,9.48182005 7.92460283,10.0561224 7.60574536,10.4275212 L7.60574536,10.4275212 Z M5.87014721,14.7886924 C5.51161989,15.1499207 4.47677968,15.6080639 4.1426974,15.2115938 C3.80861513,14.8151237 4.29751602,13.7402492 4.66419168,13.3790209 C5.02573079,13.0320303 5.57753533,13.0614083 5.90579902,13.445124 C6.23406271,13.8288396 6.21821806,14.4259584 5.87014721,14.7886924 L5.87014721,14.7886924 Z M10.3924804,13.6785761 C10.0258048,14.0398044 8.99096454,14.4891372 8.65688227,14.1014775 C8.3228,13.7138178 8.81170089,12.6213224 9.17837655,12.2600941 C9.54548588,11.9450698 10.0750717,11.9890302 10.3934066,12.3609526 C10.7117416,12.7328749 10.7113379,13.3071773 10.3924804,13.6785761 Z M14.4585061,13.0618448 C14.0918305,13.4230731 13.0569903,13.8724059 12.722908,13.4847462 C12.3888257,13.0970866 12.885875,12.0045912 13.2444023,11.6433628 C13.6115116,11.3283385 14.1410974,11.3722989 14.4594323,11.7442213 C14.7777673,12.1161437 14.7773636,12.6904461 14.4585061,13.0618448 Z M12.4295675,8.75353625 C12.0628918,9.12357502 11.0280516,9.57290781 10.6939693,9.1764377 C10.359887,8.77996759 10.8569363,7.70509307 11.2154636,7.34386475 C11.4483535,7.10936337 11.7792562,7.0270161 12.0835237,7.12784235 C12.3877912,7.2286686 12.6191981,7.49735047 12.6905756,7.8326781 C12.7619532,8.16800573 12.6624574,8.51903487 12.4295675,8.75353625 Z" id="形状" fill="#5DD5C8"></path>
</g>
<g id="shuiguo" transform="translate(8.531787, 237.000000)" fill-rule="nonzero">
<path d="M15.2151194,4.75750088 C18.197927,5.7749081 20.0059497,8.78438158 19.4956346,11.8762166 C18.9827407,14.9714715 16.3039445,17.2485257 13.1492171,17.265625 C12.52171,17.265625 11.8970682,17.1715789 11.2950626,16.9891866 C12.3204184,15.2892315 12.4756999,13.2067187 11.7136872,11.3749227 C11.4088885,10.6454382 10.9663288,9.98082446 10.4099624,9.41705498 C9.59907424,8.5934396 8.57042109,8.0206137 7.43861607,7.76412448 C8.94577921,5.00829035 12.2323117,3.74009367 15.2151194,4.75750088 L15.2151194,4.75750088 Z" id="路径" fill="#FFFFFF"></path>
<path d="M16.7243304,1.47823143 C16.7154884,2.18601312 16.35055,2.84437638 15.7481332,3.2393296 L15.7481332,3.2422405 C15.1510708,3.63230191 14.3928015,3.69925276 13.7300621,3.42562758 C13.7381326,2.7168637 14.103137,2.057293 14.7062593,1.66161851 C15.304203,1.27259699 16.0629608,1.2036468 16.7243304,1.47823143 Z M13.0312006,3.40525124 C12.0017832,3.8335547 10.8200493,3.72511769 9.89065206,3.11707155 C8.95624932,2.50578127 8.38903999,1.48405323 8.37709874,0.383730726 C9.40404615,-0.0470833666 10.5832445,0.0606201519 11.5116766,0.668999539 C12.4523485,1.28028981 13.0192593,2.30492875 13.0312006,3.40525124 Z M6.30260524,14.7021866 L8.45501537,17.2492294 C7.73488678,17.7289364 6.88217002,17.9837562 6.01004464,17.9798668 L6.30260524,14.7021866 L6.30260524,14.7021866 Z M10.3297915,13.7444985 L7.31164078,13.4828081 L6.9772858,13.4534079 C7.04594798,13.3983918 7.12356611,13.3340607 7.20715485,13.2583772 C7.81914385,12.7460577 8.78638503,11.931004 9.56256623,11.281872 C10.0672692,12.0084654 10.3347263,12.8669448 10.3297915,13.7444985 L10.3297915,13.7444985 Z M6.90265301,14.2338218 C7.09968361,14.2454655 7.38030297,14.2655507 7.77137886,14.3004816 L7.77436419,14.3033925 L10.258144,14.5100668 C10.0946795,15.3639671 9.67129043,16.1500807 9.0431219,16.766019 L6.90265301,14.2338218 L6.90265301,14.2338218 Z M6.46082678,12.8540523 L6.66681333,10.5282384 L6.75040207,9.58219392 L6.75637271,9.51815399 L6.75935802,9.51815399 C7.63573118,9.66899439 8.44223865,10.0820356 9.0670044,10.6999818 C8.43411821,11.2239449 7.56539233,11.9487606 6.9235502,12.4785455 C6.74741678,12.6211799 6.59218053,12.7489686 6.46082678,12.8540523 L6.46082678,12.8540523 Z" id="形状" fill="#FFFFFF"></path>
<path d="M7.02817029,12.9956406 L7.02817029,13.0570527 L6.99746429,13.0248114 C7.01281729,13.0109937 7.02817029,13.0109937 7.02817029,12.9956406 Z M6.04322413,18.001576 L6.04322413,18.0338173 L6.02787113,18.001576 L6.04322413,18.001576 Z" id="形状" fill="#52A45B"></path>
<path d="M6.01004464,9.40848214 L5.71271757,12.7998635 L3.53832575,10.2110205 C4.26120439,9.70499885 5.12270602,9.42527929 6.01004464,9.40848214 L6.01004464,9.40848214 Z M5.54753589,14.6593676 L5.25621544,17.9799107 C4.39954699,17.8176121 3.61310733,17.403787 3.00073441,16.7930748 L5.54753589,14.6593676 L5.54753589,14.6593676 Z M2.94967824,10.7130866 L5.11806346,13.2957313 L1.78739973,12.9917171 C1.93756491,12.1357549 2.34000759,11.341481 2.94967824,10.7130866 Z M5.05499409,14.0598989 L2.50218601,16.1998045 C2.00072523,15.479734 1.72983452,14.6287339 1.72433036,13.7561799 L5.05499409,14.0598989 L5.05499409,14.0598989 Z" id="形状" fill="#FFFFFF"></path>
<path d="M9.57670846,11.2241994 C8.80198409,11.8833776 7.83655832,12.7110454 7.22571793,13.2312937 C7.14228608,13.3081485 7.06481363,13.3731796 6.99628033,13.4293427 L7.33000775,13.4591979 L10.3424937,13.7249384 C10.3474193,12.8338033 10.0804641,11.9620378 9.57670846,11.2241994 L9.57670846,11.2241994 Z M9.05823907,16.793221 C9.68522859,16.1677502 10.107823,15.3694704 10.2709807,14.5023549 L7.79186268,14.292482 L7.78888296,14.289526 C7.50021381,14.2626028 7.21114861,14.2400364 6.92178761,14.2218346 L9.05823907,16.793221 L9.05823907,16.793221 Z M2.52969632,16.1754261 L5.0624491,14.0323578 L1.75795164,13.7281899 C1.76391105,14.603153 2.03208488,15.4544684 2.52969632,16.1754261 Z M5.26208962,17.9581633 L5.55112141,14.6327125 L3.02432804,16.7695733 C3.63189005,17.3811881 4.41215131,17.7956249 5.26208962,17.9581633 L5.26208962,17.9581633 Z M5.71500539,12.7704601 L6.00999661,9.37406637 C5.13098242,9.39180211 4.27580588,9.66966198 3.55769597,10.1780865 L5.71500539,12.7704601 Z M6.03085458,18.0258547 C6.90092965,18.0291063 7.75312646,17.7719381 8.47123636,17.2839097 L6.32286607,14.697448 L6.03085458,18.0258547 L6.02787487,18.0258547 L6.03085458,18.0320622 L6.03085458,18.0258547 Z M6.68639058,10.4589023 L6.48079064,12.8207113 C6.48079064,12.8236673 6.47781094,12.8236673 6.47483123,12.8266233 L6.48079064,12.8328308 L6.48079064,12.8210069 C6.61189784,12.7145925 6.76684273,12.5845304 6.94264558,12.4396886 C7.58328305,11.9017046 8.45037841,11.1653759 9.08207674,10.6335993 C8.45841225,10.006185 7.65345114,9.58676842 6.77876157,9.43348109 L6.77578186,9.43348109 L6.76982243,9.49851212 L6.68639058,10.4589023 L6.68639058,10.4589023 Z M1.01004464,13.6956744 C1.01004464,10.9315597 3.26568447,8.69419643 6.05171254,8.69419643 C6.34372403,8.69419643 6.63573553,8.72080003 6.92476732,8.77105128 L6.92476732,8.76809532 C9.30555493,9.21444472 11.0248471,11.2865701 11.0099486,13.6927185 C11.0099486,14.6856242 10.7179371,15.6581338 10.1637112,16.4858015 C9.25519592,17.8616998 7.70973435,18.6917072 6.05171254,18.6941964 C3.26568449,18.6941964 1.01004466,16.4565375 1.01004464,13.6956744 L1.01004464,13.6956744 Z M2.97367298,10.680599 C2.36966527,11.3109824 1.96827045,12.1053147 1.82052553,12.9625972 L5.12502299,13.2670607 L2.97367298,10.680599 Z" id="形状" fill="#775CFF"></path>
<path d="M0.295758929,13.6956613 C0.295758929,10.5726525 2.83940822,8.02971479 6.01152354,7.97991071 C6.38979457,7.97991071 6.76508708,8.01799619 7.13442258,8.09123747 C9.82036844,8.65009172 11.7367829,10.9892064 11.7210333,13.689509 L11.7243096,13.6956613 C11.72728,14.792332 11.4109014,15.8669038 10.8125871,16.7923031 C9.77312986,18.4154594 7.96152934,19.4025692 6.01122569,19.4084821 C2.8394082,19.3586781 0.295758929,16.8154474 0.295758929,13.6956613 Z M6.01450205,8.73869051 C3.2295933,8.73869051 0.974859679,10.9561439 0.97485966,13.6956613 C0.97485966,16.431956 3.22959328,18.6497023 6.01450205,18.6497023 C7.67185775,18.6472353 9.21669842,17.824614 10.1248487,16.4609595 C10.6788519,15.6406571 10.9707461,14.6768016 10.9707461,13.6927316 C10.9856387,11.3077021 9.26703721,9.25430921 6.88720608,8.81193179 L6.88720608,8.81486144 C6.59829041,8.76505737 6.30639623,8.73869049 6.01450205,8.73869051 Z" id="形状" fill="#FFFFFF"></path>
</g>
</g>
<g id="shuiguo-3" transform="translate(193.000000, 314.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M12.0023438,3.79037624 C8.98898438,4.56633663 6.75898438,7.33552475 6.75898438,10.6325941 C6.75898438,10.8306337 6.76699219,11.0273267 6.78300781,11.2206337 L5.32832031,11.2206337 C5.31493441,11.0249148 5.30827022,10.8287829 5.30833984,10.6325941 C5.30833984,6.94687129 7.61433594,3.80728713 10.8430078,2.6149703 L10.745,2.51562376 C10.178358,1.94131324 10.1782093,1.01002119 10.744668,0.435524752 C11.3111266,-0.138971687 12.2296861,-0.139122403 12.7963281,0.435188119 L17.309668,5.01106931 C17.6762246,5.38258307 17.8194464,5.92414224 17.6853831,6.43174671 C17.5513198,6.93935119 17.1603389,7.33588377 16.659719,7.47197446 C16.1590992,7.60806515 15.6248964,7.46303854 15.2583398,7.09152475 L14.8369922,6.66433663 C13.7972964,8.14944221 13.8425618,10.1504069 14.9483203,11.5856238 L13.805,12.4913465 C12.2481831,10.4709351 12.2462591,7.63588856 13.800332,5.61330693 L12.0023242,3.79037624 L12.0023438,3.79037624 Z M5.50566406,20 C2.46496976,20 3.72377654e-16,17.5008623 0,14.4180198 C-3.72377654e-16,11.3351773 2.46496976,8.8360396 5.50566406,8.8360396 C8.54635836,8.8360396 11.0113281,11.3351773 11.0113281,14.4180198 C11.0113281,17.5008623 8.54635836,20 5.50566406,20 Z M1.49765625,13.3139208 C1.36562009,13.5874885 1.41974166,13.9158994 1.63232422,14.1310891 C1.70728309,14.2069527 1.8138679,14.2412613 1.91826131,14.2231293 C2.02265472,14.2049974 2.11189794,14.1366758 2.15767578,14.0398416 C2.4123795,13.4925399 2.75733003,12.9933159 3.17767578,12.5636634 C3.59699757,12.1410507 4.08502657,11.7948746 4.62033203,11.5403366 C4.71578536,11.4944246 4.78323522,11.4042948 4.80114197,11.2987297 C4.81904872,11.1931646 4.78517272,11.0853674 4.71033203,11.0097624 C4.49729538,10.7942462 4.17300379,10.7391702 3.90232422,10.8725347 C3.38271769,11.1246859 2.90857079,11.4635242 2.49966797,11.8749109 C2.09966797,12.2804554 1.765,12.7603564 1.49767578,13.3145941 L1.49765625,13.3139208 Z M15.6336719,19.1213267 C14.0788513,19.1213268 12.6421378,18.280342 11.8647275,16.9151634 C11.0873173,15.5499847 11.0873173,13.8680153 11.8647275,12.5028366 C12.6421378,11.137658 14.0788513,10.2966732 15.6336719,10.2966733 C18.0372162,10.2966733 19.9856738,12.2721392 19.9856738,14.709 C19.9856738,17.1458608 18.0372162,19.1213267 15.6336719,19.1213267 L15.6336719,19.1213267 Z" id="形状"></path>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 42 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.0 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.4 KiB

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="384px" height="195px" viewBox="0 0 384 195" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 53.2 (72643) - https://sketchapp.com -->
<title>上传图片</title>
<desc>Created with Sketch.</desc>
<defs>
<path d="M0,4.00579811 C0,1.7934569 1.79750562,0 4.00482158,0 L379.995178,0 C382.20698,0 384,1.79067431 384,4.00579811 L384,190.994202 C384,193.206543 382.202494,195 379.995178,195 L4.00482158,195 C1.7930197,195 0,193.209326 0,190.994202 L0,4.00579811 Z" id="path-1"></path>
<mask id="mask-2" maskContentUnits="userSpaceOnUse" maskUnits="objectBoundingBox" x="0" y="0" width="384" height="195" fill="white">
<use xlink:href="#path-1"></use>
</mask>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="画板">
<g id="上传图片">
<use id="Rectangle-72" stroke-opacity="0.15" stroke="#000000" mask="url(#mask-2)" stroke-width="2" fill-opacity="0.02" fill="#000000" stroke-dasharray="4" xlink:href="#path-1"></use>
<g id="shangchuan" transform="translate(168.000000, 46.000000)" fill="#1E88F5" fill-rule="nonzero">
<path d="M39.7192873,34.2805467 C44.169166,34.2805467 47.794993,30.6547197 47.794993,26.0400307 C47.794993,21.4253417 44.169166,17.7995146 40.5433389,17.7995146 C39.7192873,10.5478605 33.6213054,4.94430962 26.3696513,4.94430962 C18.4587559,4.94430962 12.0311534,12.1959637 12.1959637,17.7995146 C8.07570572,18.1291353 4.94430962,21.7549623 4.94430962,26.0400307 C4.94430962,30.6547197 8.57013668,34.2805467 13.0200153,34.2805467 L39.7192873,34.2805467 L39.7192873,34.2805467 Z" id="路径" opacity="0.123023624"></path>
<path d="M34.7749777,29.3362371 C39.2248563,29.3362371 42.8506834,25.71041 42.8506834,21.0957211 C42.8506834,16.4810321 39.2248563,12.855205 35.5990293,12.855205 C34.7749777,5.60355091 28.6769958,0 21.4253417,0 C13.5144463,0 7.08684379,7.25165411 7.25165411,12.855205 C3.13139609,13.1848257 0,16.8106527 0,21.0957211 C0,25.71041 3.62582706,29.3362371 8.07570572,29.3362371 L12.5255844,29.3362371 C13.5144463,29.3362371 14.3384979,28.5121855 14.3384979,27.5233236 C14.3384979,26.5344616 13.5144463,25.71041 12.5255844,25.71041 L8.07570572,25.71041 C5.60355091,25.71041 3.62582706,23.7326862 3.62582706,21.0957211 C3.62582706,18.6235662 5.60355091,16.4810321 8.07570572,16.4810321 L10.7126708,16.4810321 L10.7126708,14.6681185 C10.7126708,8.57013668 15.4921702,3.62582706 21.4253417,3.62582706 C27.3585132,3.62582706 32.1380125,8.57013668 32.1380125,14.6681185 L32.1380125,16.4810321 L34.7749777,16.4810321 C37.2471325,16.4810321 39.2248563,18.4587559 39.2248563,21.0957211 C39.2248563,23.5678759 37.2471325,25.71041 34.7749777,25.71041 L30.325099,25.71041 C29.3362371,25.71041 28.5121855,26.5344616 28.5121855,27.5233236 C28.5121855,28.5121855 29.3362371,29.3362371 30.325099,29.3362371 L34.7749777,29.3362371 Z M21.4253417,14.6681185 C21.9197727,14.6681185 22.4142036,14.8329289 22.7438243,15.1625495 L28.0177545,20.6012901 C28.6769958,21.2605314 28.6769958,22.4142036 28.0177545,23.2382552 C27.3585132,23.8974965 26.204841,23.8974965 25.5455997,23.2382552 L23.2382552,20.9309107 L23.2382552,39.3896667 C23.2382552,40.3785286 22.4142036,41.2025802 21.4253417,41.2025802 C20.4364798,41.2025802 19.6124282,40.3785286 19.6124282,39.3896667 L19.6124282,20.9309107 L17.3050837,23.2382552 C16.6458424,23.8974965 15.4921702,23.8974965 14.8329289,23.2382552 C14.1736876,22.5790139 14.1736876,21.4253417 14.8329289,20.6012901 L20.1068591,15.1625495 C20.4364798,14.8329289 20.9309107,14.6681185 21.4253417,14.6681185 Z" id="形状"></path>
</g>
</g>
<path d="M207.896154,80 C212.361538,80 216,76.4157303 216,71.8539326 C216,67.2921348 212.361538,63.7078652 208.723077,63.7078652 C207.896154,56.5393258 201.776923,51 194.5,51 C186.561538,51 180.111538,58.1685393 180.276923,63.7078652 C176.142308,64.0337079 173,67.6179775 173,71.8539326 C173,76.4157303 176.638462,80 181.103846,80 L207.896154,80 L207.896154,80 Z" id="路径" fill="#1E88F5" fill-rule="nonzero" opacity="0.123023624"></path>
<path d="M202.896154,75.192 C207.361538,75.192 211,71.584 211,66.992 C211,62.4 207.361538,58.792 203.723077,58.792 C202.896154,51.576 196.776923,46 189.5,46 C181.561538,46 175.111538,53.216 175.276923,58.792 C171.142308,59.12 168,62.728 168,66.992 C168,71.584 171.638462,75.192 176.103846,75.192 L180.569231,75.192 C181.561538,75.192 182.388462,74.372 182.388462,73.388 C182.388462,72.404 181.561538,71.584 180.569231,71.584 L176.103846,71.584 C173.623077,71.584 171.638462,69.616 171.638462,66.992 C171.638462,64.532 173.623077,62.4 176.103846,62.4 L178.75,62.4 L178.75,60.596 C178.75,54.528 183.546154,49.608 189.5,49.608 C195.453846,49.608 200.25,54.528 200.25,60.596 L200.25,62.4 L202.896154,62.4 C205.376923,62.4 207.361538,64.368 207.361538,66.992 C207.361538,69.452 205.376923,71.584 202.896154,71.584 L198.430769,71.584 C197.438462,71.584 196.611538,72.404 196.611538,73.388 C196.611538,74.372 197.438462,75.192 198.430769,75.192 L202.896154,75.192 Z M189.5,60.596 C189.996154,60.596 190.492308,60.76 190.823077,61.088 L196.115385,66.5 C196.776923,67.156 196.776923,68.304 196.115385,69.124 C195.453846,69.78 194.296154,69.78 193.634615,69.124 L191.319231,66.828 L191.319231,85.196 C191.319231,86.18 190.492308,87 189.5,87 C188.507692,87 187.680769,86.18 187.680769,85.196 L187.680769,66.828 L185.365385,69.124 C184.703846,69.78 183.546154,69.78 182.884615,69.124 C182.223077,68.468 182.223077,67.32 182.884615,66.5 L188.176923,61.088 C188.507692,60.76 189.003846,60.596 189.5,60.596 Z" id="形状" fill="#1E88F5" fill-rule="nonzero"></path>
<rect id="Rectangle-65-Copy" stroke="#D9D9D9" fill="#FFFFFF" x="139.5" y="98.5" width="105" height="31" rx="4"></rect>
<rect id="Rectangle-49" x="151" y="107" width="14" height="14"></rect>
<text id="-Text" font-family="PingFangSC-Regular, PingFang SC" font-size="16" font-weight="normal" line-spacing="22" fill="#000000">
<tspan x="173" y="119">上传图片</tspan>
</text>
<g id="Group-182" opacity="0.65" transform="translate(151.000000, 107.000000)">
<g id="upload" transform="translate(0.875000, 0.875000)" fill="#000000" fill-rule="nonzero">
<path d="M5.80371094,0.138085937 C5.8953125,0.046484375 6.01699219,0 6.13867188,0 C6.26035156,0 6.38066406,0.046484375 6.47363281,0.138085937 L8.60371094,2.26953125 C8.78828125,2.45410156 8.78828125,2.75351562 8.60371094,2.93808594 C8.51484375,3.02695312 8.39589844,3.07617188 8.27011719,3.07617188 C8.14433594,3.07617188 8.02539062,3.02695312 7.93652344,2.93808594 L6.61171875,1.61328125 L6.61171875,9.51289062 C6.61171875,9.77402344 6.39980469,9.9859375 6.13867188,9.9859375 C5.87753906,9.9859375 5.665625,9.77402344 5.665625,9.51289062 L5.665625,1.61328125 L4.34082031,2.93808594 C4.15625,3.12265625 3.85683594,3.12265625 3.67363281,2.93808594 C3.4890625,2.75351562 3.4890625,2.45410156 3.67226563,2.26953125 L5.80371094,0.138085937 Z M11.7769531,7.88046875 C11.5158203,7.88046875 11.3039063,8.09238281 11.3039063,8.35351563 L11.3039063,11.025 C11.3039063,11.1794922 11.178125,11.3066406 11.0222656,11.3066406 L1.22636719,11.3066406 C1.071875,11.3066406 0.944726562,11.1808594 0.944726562,11.025 L0.944726562,8.35214844 C0.944726562,8.09101563 0.7328125,7.87910156 0.471679688,7.87910156 C0.210546875,7.87910156 0,8.09238281 0,8.35214844 L0,11.3996094 C0,11.8685547 0.381445313,12.2486328 0.849023437,12.2486328 L11.4009766,12.2486328 C11.8699219,12.2486328 12.25,11.8671875 12.25,11.3996094 L12.25,8.35214844 C12.25,8.09238281 12.0380859,7.88046875 11.7769531,7.88046875 Z" id="Shape"></path>
</g>
<rect id="Rectangle-49" x="0" y="0" width="14" height="14"></rect>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.9 KiB

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="106px" height="156px" viewBox="0 0 106 156" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 53.2 (72643) - https://sketchapp.com -->
<title>画板</title>
<desc>Created with Sketch.</desc>
<defs>
<rect id="path-1" x="0" y="0" width="104" height="104" rx="4"></rect>
<mask id="mask-2" maskContentUnits="userSpaceOnUse" maskUnits="objectBoundingBox" x="0" y="0" width="104" height="104" fill="white">
<use xlink:href="#path-1"></use>
</mask>
<path d="M23.984375,10.875 L14.03125,10.875 L14.03125,1.171875 C14.03125,0.55 13.528125,0.046875 12.90625,0.046875 L12.90625,0.046875 C12.284375,0.046875 11.78125,0.55 11.78125,1.171875 L11.78125,10.875 L2.046875,10.875 C1.425,10.875 0.921875,11.378125 0.921875,12 L0.921875,12 C0.921875,12.621875 1.425,13.125 2.046875,13.125 L11.78125,13.125 L11.78125,22.859375 C11.78125,23.48125 12.284375,23.984375 12.90625,23.984375 L12.90625,23.984375 C13.528125,23.984375 14.03125,23.48125 14.03125,22.859375 L14.03125,13.125 L23.984375,13.125 C24.60625,13.125 25.109375,12.621875 25.109375,12 L25.109375,12 C25.109375,11.378125 24.60625,10.875 23.984375,10.875 Z" id="path-3"></path>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="画板">
<g id="Upload/Clicking">
<g id="Upload/_Resources/Button">
<rect id="Rectangle-65-Copy" stroke="#D9D9D9" stroke-width="1" fill="#FFFFFF" fill-rule="evenodd" x="0.5" y="0.5" width="105" height="31" rx="4"></rect>
<g id="Group-182" opacity="0.65" stroke-width="1" fill-rule="evenodd" transform="translate(12.000000, 9.000000)">
<g id="upload" transform="translate(0.875000, 0.875000)" fill="#000000" fill-rule="nonzero">
<path d="M5.80371094,0.138085937 C5.8953125,0.046484375 6.01699219,0 6.13867188,0 C6.26035156,0 6.38066406,0.046484375 6.47363281,0.138085937 L8.60371094,2.26953125 C8.78828125,2.45410156 8.78828125,2.75351562 8.60371094,2.93808594 C8.51484375,3.02695312 8.39589844,3.07617188 8.27011719,3.07617188 C8.14433594,3.07617188 8.02539062,3.02695312 7.93652344,2.93808594 L6.61171875,1.61328125 L6.61171875,9.51289062 C6.61171875,9.77402344 6.39980469,9.9859375 6.13867188,9.9859375 C5.87753906,9.9859375 5.665625,9.77402344 5.665625,9.51289062 L5.665625,1.61328125 L4.34082031,2.93808594 C4.15625,3.12265625 3.85683594,3.12265625 3.67363281,2.93808594 C3.4890625,2.75351562 3.4890625,2.45410156 3.67226563,2.26953125 L5.80371094,0.138085937 Z M11.7769531,7.88046875 C11.5158203,7.88046875 11.3039063,8.09238281 11.3039063,8.35351563 L11.3039063,11.025 C11.3039063,11.1794922 11.178125,11.3066406 11.0222656,11.3066406 L1.22636719,11.3066406 C1.071875,11.3066406 0.944726562,11.1808594 0.944726562,11.025 L0.944726562,8.35214844 C0.944726562,8.09101563 0.7328125,7.87910156 0.471679688,7.87910156 C0.210546875,7.87910156 0,8.09238281 0,8.35214844 L0,11.3996094 C0,11.8685547 0.381445313,12.2486328 0.849023437,12.2486328 L11.4009766,12.2486328 C11.8699219,12.2486328 12.25,11.8671875 12.25,11.3996094 L12.25,8.35214844 C12.25,8.09238281 12.0380859,7.88046875 11.7769531,7.88046875 Z" id="Shape"></path>
</g>
<rect id="Rectangle-49" x="0" y="0" width="14" height="14"></rect>
</g>
<text id="-Text" font-family="PingFangSC-Regular, PingFang SC" font-size="14" font-weight="normal" line-spacing="22" fill="#000000" fill-opacity="0.65">
<tspan x="34" y="20">上传文件</tspan>
</text>
</g>
</g>
<g id="Group" transform="translate(1.000000, 52.000000)">
<use id="Rectangle-72-Copy-15" stroke-opacity="0.15" stroke="#000000" mask="url(#mask-2)" stroke-width="2" fill-opacity="0.02" fill="#000000" stroke-dasharray="3,2" xlink:href="#path-1"></use>
<text id="Text" font-family="PingFangSC-Regular, PingFang SC" font-size="14" font-weight="normal" line-spacing="22" fill="#000000" fill-opacity="0.65">
<tspan x="24" y="77">上传照片</tspan>
</text>
<g id="Icon/Plus" transform="translate(39.000000, 24.000000)">
<mask id="mask-4" fill="white">
<use xlink:href="#path-3"></use>
</mask>
<use id="Mask" fill-opacity="0.45" fill="#000000" fill-rule="nonzero" xlink:href="#path-3"></use>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="104px" height="104px" viewBox="0 0 104 104" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 53.2 (72643) - https://sketchapp.com -->
<title>画板</title>
<desc>Created with Sketch.</desc>
<defs>
<rect id="path-1" x="0" y="0" width="104" height="104" rx="52"></rect>
<mask id="mask-2" maskContentUnits="userSpaceOnUse" maskUnits="objectBoundingBox" x="0" y="0" width="104" height="104" fill="white">
<use xlink:href="#path-1"></use>
</mask>
<path d="M23.984375,10.875 L14.03125,10.875 L14.03125,1.171875 C14.03125,0.55 13.528125,0.046875 12.90625,0.046875 L12.90625,0.046875 C12.284375,0.046875 11.78125,0.55 11.78125,1.171875 L11.78125,10.875 L2.046875,10.875 C1.425,10.875 0.921875,11.378125 0.921875,12 L0.921875,12 C0.921875,12.621875 1.425,13.125 2.046875,13.125 L11.78125,13.125 L11.78125,22.859375 C11.78125,23.48125 12.284375,23.984375 12.90625,23.984375 L12.90625,23.984375 C13.528125,23.984375 14.03125,23.48125 14.03125,22.859375 L14.03125,13.125 L23.984375,13.125 C24.60625,13.125 25.109375,12.621875 25.109375,12 L25.109375,12 C25.109375,11.378125 24.60625,10.875 23.984375,10.875 Z" id="path-3"></path>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="画板">
<g id="Group">
<use id="Rectangle-72-Copy-15" stroke-opacity="0.15" stroke="#000000" mask="url(#mask-2)" stroke-width="2" fill-opacity="0.02" fill="#000000" stroke-dasharray="3,2" xlink:href="#path-1"></use>
<text id="Text" font-family="PingFangSC-Regular, PingFang SC" font-size="14" font-weight="normal" line-spacing="22" fill="#000000" fill-opacity="0.65">
<tspan x="24" y="77">修改照片</tspan>
</text>
<g id="Icon/Plus" transform="translate(39.000000, 24.000000)">
<mask id="mask-4" fill="white">
<use xlink:href="#path-3"></use>
</mask>
<use id="Mask" fill-opacity="0.45" fill="#000000" fill-rule="nonzero" xlink:href="#path-3"></use>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

@ -0,0 +1,78 @@
<template>
<el-breadcrumb class="app-breadcrumb" separator="/">
<transition-group name="breadcrumb">
<el-breadcrumb-item v-for="(item,index) in levelList" :key="item.path">
<span v-if="item.redirect==='noRedirect'||index==levelList.length-1" class="no-redirect">{{ item.meta.title }}</span>
<router-link :to="item.path" v-else>{{ item.meta.title }}</router-link>
</el-breadcrumb-item>
</transition-group>
</el-breadcrumb>
</template>
<script>
// import pathToRegexp from 'path-to-regexp'
export default {
data() {
return {
levelList: null
}
},
watch: {
$route() {
this.getBreadcrumb()
}
},
created() {
this.getBreadcrumb()
},
methods: {
getBreadcrumb() {
let matched = this.$route.matched.filter(item => item.meta && item.meta.title)
const first = matched[0]
if (!this.isDashboard(first)) {
matched = [{ path: '/home', meta: { title: '首页' }}].concat(matched)
}
this.levelList = matched.filter(item => item.meta && item.meta.title && item.meta.breadcrumb !== false)
},
isDashboard(route) {
const name = route && route.name
if (!name) {
return false
}
return name.trim().toLocaleLowerCase() === 'home'.toLocaleLowerCase()
},
pathCompile(path) {
// const { params } = this.$route
// var toPath = pathToRegexp(path)
// return toPath(params)
},
handleLink(item) {
// console.log(item)
const { redirect, path } = item
if (redirect) {
this.$router.push(redirect)
return
}
this.$router.push(this.pathCompile(path))
}
}
}
</script>
<style lang="scss" scoped>
.app-breadcrumb.el-breadcrumb {
display: inline-block;
font-size: 14px;
line-height: 50px;
margin-left: 8px;
.no-redirect {
color: #97a8be;
cursor: text;
}
}
</style>

@ -0,0 +1,58 @@
<template>
<el-select v-model="classificationid_code" placeholder="请选择分类" @change="choseGoodsType($event)">
<el-option v-for="(item,index) in goodsType" :key="index" :value="item.goodsClassificationID" :label="item.goodsClassificationName" />
</el-select>
</template>
<script>
export default {
props: {
classificationid: {
type: String,
default: ''
}
},
data() {
return {
goodsType: [],
classificationid_code: ''
}
},
watch: {
classificationid: {
immediate: true,
handler(val) {
this.classificationid_code = val
},
deep: true
}
},
created() {
this.getgoodsType()
},
methods: {
getgoodsType() {
const params = {
type: 'getGoodsClassification',
data: {
parentID: '0'
}
}
this.$http
.post(this.$api.getGoodsClassification, params)
.then((res) => {
this.goodsType = res.goodsClassifications
})
},
choseGoodsType(event) {
let obj = {}
obj = this.goodsType.find((item) => {
return item.goodsClassificationID === event
})
this.$emit('choseGoodsType', obj)
}
}
}
</script>

@ -0,0 +1,44 @@
<template>
<div style="padding: 0 15px;" @click="toggleClick">
<svg
:class="{'is-active':isActive}"
class="hamburger"
viewBox="0 0 1024 1024"
xmlns="http://www.w3.org/2000/svg"
width="64"
height="64"
>
<path d="M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z" />
</svg>
</div>
</template>
<script>
export default {
name: 'Hamburger',
props: {
isActive: {
type: Boolean,
default: false
}
},
methods: {
toggleClick() {
this.$emit('toggleClick')
}
}
}
</script>
<style scoped>
.hamburger {
display: inline-block;
vertical-align: middle;
width: 20px;
height: 20px;
}
.hamburger.is-active {
transform: rotate(180deg);
}
</style>

@ -0,0 +1,61 @@
<template>
<div v-if="isExternal" :style="styleExternalIcon" class="svg-external-icon svg-icon" v-on="$listeners" />
<svg v-else :class="svgClass" aria-hidden="true" v-on="$listeners">
<use :xlink:href="iconName" />
</svg>
</template>
<script>
import { isExternal } from '@/utils/validate'
export default {
name: 'SvgIcon',
props: {
iconClass: {
type: String,
required: true
},
className: {
type: String,
default: ''
}
},
computed: {
isExternal() {
return isExternal(this.iconClass)
},
iconName() {
return `#icon-${this.iconClass}`
},
svgClass() {
if (this.className) {
return 'svg-icon ' + this.className
} else {
return 'svg-icon'
}
},
styleExternalIcon() {
return {
mask: `url(${this.iconClass}) no-repeat 50% 50%`,
'-webkit-mask': `url(${this.iconClass}) no-repeat 50% 50%`
}
}
}
}
</script>
<style scoped>
.svg-icon {
width: 1em;
height: 1em;
vertical-align: -0.15em;
fill: currentColor;
overflow: hidden;
}
.svg-external-icon {
background-color: currentColor;
mask-size: cover!important;
display: inline-block;
}
</style>

@ -0,0 +1,42 @@
<template>
<el-cascader
v-model="selectedOptions"
size="large"
:options="options"
@change="handleChange"
/>
</template>
<script>
import { regionData, CodeToText, TextToCode } from 'element-china-area-data'
import { data } from './regions'
import { mapState } from 'vuex'
export default {
data() {
return {
options: regionData,
selectedOptions: []
}
},
computed: {
...mapState({
code: state => state.Orderlist.code
})
},
created() {
// console.log(regionData)
// console.log(data)
// this.selectedOptions=[TextToCode[this.code[0]].code,TextToCode[this.code[0]][this.code[1]].code,TextToCode[this.code[0]][this.code[1]][this.code[2]].code]
},
methods: {
handleChange(value) {
const address = `${CodeToText[value[0]]}${CodeToText[value[1]]}${CodeToText[value[2]]}`
const data = {
selectedOptions: this.selectedOptions,
address: address
}
// this.$store.commit("Orderlist/GET_CODE",[CodeToText[value[0]],CodeToText[value[1]],CodeToText[value[0]]])
// this.$emit('handleChange',data)
}
}
}
</script>

File diff suppressed because one or more lines are too long

@ -0,0 +1,194 @@
<template>
<div class="linkage">
<el-select
v-model="province_code"
placeholder="选择省"
@change="choseProvince"
>
<el-option
v-for="item in province"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
<el-select
v-model="cityid_code"
placeholder="选择市"
@change="choseCity"
>
<el-option
v-for="item in shi1"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
<el-select
v-model="countyid_code"
placeholder="选择区县"
@change="choseBlock"
>
<el-option
v-for="item in qu1"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</div>
</template>
<script>
export default {
props: {
provinceid: {
type: String,
default: ''
},
cityid: {
type: String,
default: ''
},
countyid: {
type: String,
default: ''
}
},
data() {
return {
province: [],
province_code: '',
shi1: [],
cityid_code: '',
qu1: [],
countyid_code: ''
}
},
watch: {
provinceid: {
immediate: true,
handler(val) {
this.province_code = val
this.getCityData()
},
deep: true
},
cityid: {
immediate: true,
handler(val) {
this.cityid_code = val
this.getCityData()
},
deep: true
},
countyid: {
immediate: true,
handler(val) {
this.countyid_code = val
this.getCityData()
},
deep: true
}
},
created: function() {
this.getCityData()
},
methods: {
// china
getCityData: function() {
const params = {
type: 'getArea',
data: {
type: '0'
}
}
this.$http
.post(this.$api.getArea, params)
.then((res) => {
this.province = res
})
this.$http
.post(this.$api.getArea, { type: 'getArea',
data: {
type: '1',
areaid: this.province_code
}})
.then((res) => {
this.shi1 = res
})
this.$http
.post(this.$api.getArea, { type: 'getArea',
data: {
type: '2',
areaid: this.cityid_code
}})
.then((res) => {
this.qu1 = res
})
},
//
choseProvince: function(e) {
let obj = {}
this.cityid_code = ''
this.countyid_code = ''
const params = {
type: 'getArea',
data: {
type: '1',
areaid: e
}
}
this.$http
.post(this.$api.getArea, params)
.then((res) => {
this.shi1 = res
})
obj = this.province.find((item) => {
return item.id === e
})
this.$emit('getAreaCode', { key: 'city', obj })
},
//
choseCity: function(e) {
let obj = {}
this.countyid_code = ''
const params = {
type: 'getArea',
data: {
type: '2',
areaid: e
}
}
this.$http
.post(this.$api.getArea, params)
.then((res) => {
this.qu1 = res
})
obj = this.shi1.find((item) => {
return item.id === e
})
this.$emit('getAreaCode', { key: 'street', obj })
},
//
choseBlock: function(e) {
let obj = {}
this.E = e
obj = this.qu1.find((item) => {
return item.id === e
})
this.$emit('getAreaCode', { key: 'village', obj })
}
}
}
</script>
<style lang="scss" scoped>
.linkage{
.el-select{
margin-right: 10px;
}
}
</style>

@ -0,0 +1,101 @@
/**
* @copyright
* @description 全局变量配置
*/
module.exports = {
// 开发以及部署时的URL 如"/test/"
publicPath: '',
// 生产环境构建文件的目录名
outputDir: 'dist',
// 放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录。
assetsDir: 'static',
// 开发环境每次保存时是否输出为eslint编译警告
lintOnSave: true,
// 进行编译的依赖
transpileDependencies: ['vue-echarts', 'resize-detector', 'zx-layouts'],
// 默认的接口地址 如果是开发环境和生产环境走vab-mock-server当然你也可以选择自己配置成需要的接口地址
baseURL:
process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'preview'
? 'http://t.81ronggui.com:8082/ronghui/rh/body'
: 'http://b.81ronggui.com:8082/ronghui/rh/body',
// 标题 (包括初次加载雪花屏的标题 页面的标题 浏览器的标题)
title: 'vue-admin-beautiful',
// 简写
abbreviation: 'vab',
// 开发环境端口号
devPort: '80',
// 版本号
version: process.env.VUE_APP_VERSION,
// 烦请保留package.json作者信息 保留版权可免费商用 如需去除并自定义为自己企业的版权请联系群主QQ 1204505056 需支付299元 恶意修改发生纠纷及出现任何问题 由修改人自行承担
copyright: process.env.VUE_APP_AUTHOR,
// 是否显示页面底部版权信息,建议您显示,当然您也可以选择不显示,不管您是付费用户还是未付费用户您都有选择显示或者不显示的权利
footerCopyright: process.env.NODE_ENV !== 'development',
// 是否显示右上角github图标
githubCorner: process.env.NODE_ENV !== 'development',
// 是否显示顶部进度条
progressBar: true,
// 缓存路由的最大数量
keepAliveMaxNum: 99,
// 路由模式,可选值为 history 或 hash
routerMode: 'hash',
// 不经过token校验的路由
routesWhiteList: ['/login', '/register', '/404'],
// 加载时显示文字
loadingText: '正在加载中...',
// token名称
tokenName: 'accessToken',
// token在localStorage、sessionStorage、cookie存储的key的名称
tokenTableName: 'userinfo',
// token存储位置localStorage sessionStorage cookie
storage: 'localStorage',
// token失效回退到登录页时是否记录本次的路由
recordRoute: true,
// 是否显示logo不显示时设置false显示时请填写remixIcon图标名称暂时只支持设置remixIcon
logo: 'vuejs-fill',
// 是否国定头部 固定fixed 不固定noFixed
header: 'fixed',
// 横纵布局 horizontal vertical
layout: 'vertical',
// 是否开启主题配置按钮
themeBar: true,
// 是否显示多标签页
tagsBar: true,
// 是否显示骨架屏
skeleton: false,
// 配后端数据的接收方式application/json;charset=UTF-8或者application/x-www-form-urlencoded;charset=UTF-8
contentType: 'application/json;charset=UTF-8',
// 消息框消失时间
messageDuration: 2000,
// 最长请求时间
requestTimeout: 5000,
// 操作正常code支持String、Array、int多种类型
successCode: [200, 0],
// 登录失效code
invalidCode: 402,
// 无权限code
noPermissionCode: 401,
// 是否显示在页面高亮错误
errorLog: ['development', 'test', 'production'],
// 是否开启登录拦截
loginInterception: true,
// 是否开启登录RSA加密
loginRSA: true,
// 是否依据mock数据生成webstorm HTTP Request请求文件
httpRequestFile: false,
// intelligence和all两种方式前者后端权限只控制permissions不控制view文件的import前后端配合减轻后端工作量all方式完全交给后端前端只负责加载
authentication: 'intelligence',
// vertical布局时是否只保持一个子菜单的展开
uniqueOpened: true,
// vertical布局时默认展开的菜单path使用逗号隔开建议只展开一个
defaultOopeneds: ['/vab'],
// 需要加loading层的请求防止重复提交
debounce: ['doEdit'],
// 需要自动注入并加载的模块
providePlugin: { maptalks: 'maptalks', 'window.maptalks': 'maptalks' },
// npm run build时是否自动生成7z压缩包
build7z: false,
// 代码生成机生成在view下的文件夹名称
templateFolder: 'project',
// 是否显示终端donation打印
donation: true
}

@ -0,0 +1,12 @@
import Vue from 'vue'
import SvgIcon from '@/components/SvgIcon'// svg组件
// 全局注册
Vue.component('svg-icon', SvgIcon)
// 要引入svg下面所有的svg文件 在该文件icons目录下新建一个js文件index.js 写如下代码:
const req = require.context('./svg', false, /\.svg$/) // require.context函数遍历svg文件夹的所有文件一次性导入到index.js中
const requireAll = requireContext => requireContext.keys().map(requireContext)
requireAll(req)

@ -0,0 +1 @@
<svg width="128" height="100" xmlns="http://www.w3.org/2000/svg"><path d="M27.429 63.638c0-2.508-.893-4.65-2.679-6.424-1.786-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.465 2.662-1.785 1.774-2.678 3.916-2.678 6.424 0 2.508.893 4.65 2.678 6.424 1.786 1.775 3.94 2.662 6.465 2.662 2.524 0 4.678-.887 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm13.714-31.801c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM71.714 65.98l7.215-27.116c.285-1.23.107-2.378-.536-3.443-.643-1.064-1.56-1.762-2.75-2.094-1.19-.33-2.333-.177-3.429.462-1.095.639-1.81 1.573-2.143 2.804l-7.214 27.116c-2.857.237-5.405 1.266-7.643 3.088-2.238 1.822-3.738 4.152-4.5 6.992-.952 3.644-.476 7.098 1.429 10.364 1.905 3.265 4.69 5.37 8.357 6.317 3.667.947 7.143.474 10.429-1.42 3.285-1.892 5.404-4.66 6.357-8.305.762-2.84.619-5.607-.429-8.305-1.047-2.697-2.762-4.85-5.143-6.46zm47.143-2.342c0-2.508-.893-4.65-2.678-6.424-1.786-1.775-3.94-2.662-6.465-2.662-2.524 0-4.678.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.786 1.775 3.94 2.662 6.464 2.662 2.524 0 4.679-.887 6.465-2.662 1.785-1.775 2.678-3.916 2.678-6.424zm-45.714-45.43c0-2.509-.893-4.65-2.679-6.425C68.68 10.01 66.524 9.122 64 9.122c-2.524 0-4.679.887-6.464 2.661-1.786 1.775-2.679 3.916-2.679 6.425 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm32 13.629c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM128 63.638c0 12.351-3.357 23.78-10.071 34.286-.905 1.372-2.19 2.058-3.858 2.058H13.93c-1.667 0-2.953-.686-3.858-2.058C3.357 87.465 0 76.037 0 63.638c0-8.613 1.69-16.847 5.071-24.703C8.452 31.08 13 24.312 18.714 18.634c5.715-5.68 12.524-10.199 20.429-13.559C47.048 1.715 55.333.035 64 .035c8.667 0 16.952 1.68 24.857 5.04 7.905 3.36 14.714 7.88 20.429 13.559 5.714 5.678 10.262 12.446 13.643 20.301 3.38 7.856 5.071 16.09 5.071 24.703z"/></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M96.258 57.462h31.421C124.794 27.323 100.426 2.956 70.287.07v31.422a32.856 32.856 0 0 1 25.971 25.97zm-38.796-25.97V.07C27.323 2.956 2.956 27.323.07 57.462h31.422a32.856 32.856 0 0 1 25.97-25.97zm12.825 64.766v31.421c30.46-2.885 54.507-27.253 57.713-57.712H96.579c-2.886 13.466-13.146 23.726-26.292 26.291zM31.492 70.287H.07c2.886 30.46 27.253 54.507 57.713 57.713V96.579c-13.466-2.886-23.726-13.146-26.291-26.292z"/></svg>

After

Width:  |  Height:  |  Size: 497 B

@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="128" height="128"><defs><style/></defs><path d="M512 128q69.675 0 135.51 21.163t115.498 54.997 93.483 74.837 73.685 82.006 51.67 74.837 32.17 54.827L1024 512q-2.347 4.992-6.315 13.483T998.87 560.17t-31.658 51.669-44.331 59.99-56.832 64.34-69.504 60.16-82.347 51.5-94.848 34.687T512 896q-69.675 0-135.51-21.163t-115.498-54.826-93.483-74.326-73.685-81.493-51.67-74.496-32.17-54.997L0 513.707q2.347-4.992 6.315-13.483t18.816-34.816 31.658-51.84 44.331-60.33 56.832-64.683 69.504-60.331 82.347-51.84 94.848-34.816T512 128.085zm0 85.333q-46.677 0-91.648 12.331t-81.152 31.83-70.656 47.146-59.648 54.485-48.853 57.686-37.675 52.821-26.325 43.99q12.33 21.674 26.325 43.52t37.675 52.351 48.853 57.003 59.648 53.845T339.2 767.02t81.152 31.488T512 810.667t91.648-12.331 81.152-31.659 70.656-46.848 59.648-54.186 48.853-57.344 37.675-52.651T927.957 512q-12.33-21.675-26.325-43.648t-37.675-52.65-48.853-57.345-59.648-54.186-70.656-46.848-81.152-31.659T512 213.334zm0 128q70.656 0 120.661 50.006T682.667 512 632.66 632.661 512 682.667 391.339 632.66 341.333 512t50.006-120.661T512 341.333zm0 85.334q-35.328 0-60.33 25.002T426.666 512t25.002 60.33T512 597.334t60.33-25.002T597.334 512t-25.002-60.33T512 426.666z"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

@ -0,0 +1 @@
<svg width="128" height="64" xmlns="http://www.w3.org/2000/svg"><path d="M127.072 7.994c1.37-2.208.914-5.152-.914-6.87-2.056-1.717-4.797-1.226-6.396.982-.229.245-25.586 32.382-55.74 32.382-29.24 0-55.74-32.382-55.968-32.627-1.6-1.963-4.57-2.208-6.397-.49C-.17 3.086-.399 6.275 1.2 8.238c.457.736 5.94 7.36 14.62 14.72L4.17 35.96c-1.828 1.963-1.6 5.152.228 6.87.457.98 1.6 1.471 2.742 1.471s2.284-.49 3.198-1.472l12.564-13.983c5.94 4.416 13.021 8.587 20.788 11.53l-4.797 17.418c-.685 2.699.686 5.397 3.198 6.133h1.37c2.057 0 3.884-1.472 4.341-3.68L52.6 42.83c3.655.736 7.538 1.227 11.422 1.227 3.883 0 7.767-.49 11.422-1.227l4.797 17.173c.457 2.208 2.513 3.68 4.34 3.68.457 0 .914 0 1.143-.246 2.513-.736 3.883-3.434 3.198-6.133l-4.797-17.172c7.767-2.944 14.848-7.114 20.788-11.53l12.336 13.738c.913.981 2.056 1.472 3.198 1.472s2.284-.49 3.198-1.472c1.828-1.963 1.828-4.906.228-6.87l-11.65-13.001c9.366-7.36 14.849-14.474 14.849-14.474z"/></svg>

After

Width:  |  Height:  |  Size: 944 B

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M84.068 23.784c-1.02 0-1.877-.32-2.572-.96a8.588 8.588 0 0 1-1.738-2.237 11.524 11.524 0 0 1-1.042-2.621c-.232-.895-.348-1.641-.348-2.238V0h.278c.834 0 1.622.085 2.363.256.742.17 1.645.575 2.711 1.214 1.066.64 2.363 1.535 3.892 2.686 1.53 1.15 3.453 2.664 5.77 4.54 2.502 2.045 4.494 3.771 5.977 5.178 1.483 1.406 2.618 2.6 3.406 3.58.787.98 1.274 1.812 1.46 2.494.185.682.277 1.278.277 1.79v2.046H84.068zM127.3 84.01c.278.682.464 1.535.556 2.558.093 1.023-.37 2.003-1.39 2.94-.463.427-.88.832-1.25 1.215-.372.384-.696.704-.974.96a6.69 6.69 0 0 1-.973.767l-11.816-10.741a44.331 44.331 0 0 0 1.877-1.535 31.028 31.028 0 0 1 1.737-1.406c1.112-.938 2.317-1.343 3.615-1.215 1.297.128 2.363.405 3.197.83.927.427 1.923 1.173 2.989 2.239 1.065 1.065 1.876 2.195 2.432 3.388zM78.23 95.902c2.038 0 3.752-.511 5.143-1.534l-26.969 25.83H18.037c-1.761 0-3.684-.47-5.77-1.407a24.549 24.549 0 0 1-5.838-3.709 21.373 21.373 0 0 1-4.518-5.306c-1.204-2.003-1.807-4.07-1.807-6.202V16.495c0-1.79.44-3.665 1.32-5.626A18.41 18.41 0 0 1 5.04 5.562a21.798 21.798 0 0 1 5.213-3.964C12.198.533 14.237 0 16.37 0h53.24v15.984c0 1.62.278 3.367.834 5.242a16.704 16.704 0 0 0 2.572 5.179c1.159 1.577 2.665 2.898 4.518 3.964 1.853 1.066 4.078 1.598 6.673 1.598h20.295v42.325L85.458 92.45c1.02-1.364 1.529-2.856 1.529-4.476 0-2.216-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1c-2.409 0-4.448.789-6.116 2.366-1.668 1.577-2.502 3.474-2.502 5.69 0 2.217.834 4.092 2.502 5.626 1.668 1.535 3.707 2.302 6.117 2.302h52.13zM26.1 47.951c-2.41 0-4.449.789-6.117 2.366-1.668 1.577-2.502 3.473-2.502 5.69 0 2.216.834 4.092 2.502 5.626 1.668 1.534 3.707 2.302 6.117 2.302h52.13c2.409 0 4.47-.768 6.185-2.302 1.715-1.534 2.572-3.41 2.572-5.626 0-2.217-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1zm52.407 64.063l1.807-1.663 3.476-3.196a479.75 479.75 0 0 0 4.587-4.284 500.757 500.757 0 0 1 5.004-4.667c3.985-3.666 8.48-7.758 13.485-12.276l11.677 10.741-13.485 12.404-5.004 4.603-4.587 4.22a179.46 179.46 0 0 0-3.267 3.068c-.88.853-1.367 1.322-1.46 1.407-.463.341-.973.703-1.529 1.087-.556.383-1.112.703-1.668.959-.556.256-1.413.575-2.572.959a83.5 83.5 0 0 1-3.545 1.087 72.2 72.2 0 0 1-3.475.895c-1.112.256-1.946.426-2.502.511-1.112.17-1.854.043-2.224-.383-.371-.426-.464-1.151-.278-2.174.092-.511.278-1.279.556-2.302.278-1.023.602-2.067.973-3.132l1.042-3.005c.325-.938.58-1.577.765-1.918a10.157 10.157 0 0 1 2.224-2.941z"/></svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#90BBFC"/>
<stop offset="1" style="stop-color:#5793F7"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="形状" class="st1" d="M29.9,27.2c-1.1,1.7-3.2,2.8-5.4,2.8c-2.2,0-4.3-1.1-5.4-2.8c-0.2-0.2-0.2-0.6,0-0.8
c0.2-0.3,0.5-0.4,0.8-0.4c0.3,0,0.6,0.2,0.8,0.4c0.8,1.2,2.3,2,3.8,2c1.6,0,3-0.8,3.8-2c0.2-0.3,0.5-0.4,0.8-0.4
c0.3,0,0.6,0.1,0.8,0.4C30,26.7,30,27,29.9,27.2 M32.3,16H16.7c-0.9,0-1.7,0.8-1.7,1.7v13.6c0,0.9,0.8,1.7,1.7,1.7h15.6
c1,0,1.7-0.8,1.7-1.7V17.7C34,16.8,33.2,16,32.3,16 M24.5,13.6c1.5,0,2.7,1.1,2.7,2.4H29c0-2.2-2-4-4.5-4S20,13.8,20,16h1.8
C21.8,14.7,23,13.6,24.5,13.6"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M115.625 127.937H.063V12.375h57.781v12.374H12.438v90.813h90.813V70.156h12.374z"/><path d="M116.426 2.821l8.753 8.753-56.734 56.734-8.753-8.745z"/><path d="M127.893 37.982h-12.375V12.375H88.706V0h39.187z"/></svg>

After

Width:  |  Height:  |  Size: 285 B

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="路径" class="st1" d="M13.3,21c-0.4,0-0.7-0.1-0.9-0.3S12,20.1,12,19.8v-1.6c0-0.3,0.1-0.6,0.4-0.8s0.5-0.4,0.9-0.4
h16.4c0.1,0,0.2,0,0.4,0.1c-0.6,0.1-1.2,0.2-1.7,0.4c-0.5,0.2-1,0.5-1.5,0.8c-0.4,0.3-0.8,0.7-1.2,1.2S25,20.5,24.8,21H13.3z"/>
<path id="路径_1_" class="st1" d="M24.9,23c0,0.1,0,0.2,0,0.3v0.3c0,0.6,0.1,1.2,0.3,1.8c0.2,0.6,0.5,1.1,0.8,1.6H13.3
c-0.4,0-0.7-0.1-0.9-0.4c-0.3-0.2-0.4-0.5-0.4-0.9v-1.6c0-0.3,0.1-0.6,0.4-0.8c0.3-0.2,0.6-0.4,0.9-0.4H24.9L24.9,23z"/>
<path id="路径_2_" class="st1" d="M13.3,33c-0.4,0-0.7-0.1-0.9-0.4S12,32.1,12,31.8v-1.5c0-0.3,0.1-0.6,0.4-0.9
c0.3-0.2,0.6-0.4,0.9-0.4h17.4c0.4,0,0.7,0.1,0.9,0.4c0.3,0.2,0.4,0.5,0.4,0.9v1.5c0,0.3-0.1,0.6-0.4,0.9S31.1,33,30.7,33H13.3z"/>
<path id="路径_3_" class="st1" d="M16.3,16c-0.4,0-0.7-0.1-0.9-0.4c-0.3-0.2-0.4-0.5-0.4-0.9v-1.5c0-0.3,0.1-0.6,0.4-0.9
s0.6-0.4,0.9-0.4h17.4c0.4,0,0.7,0.1,0.9,0.4c0.3,0.2,0.4,0.5,0.4,0.9v1.5c0,0.3-0.1,0.6-0.4,0.9c-0.3,0.2-0.6,0.4-0.9,0.4H16.3z"
/>
<path id="路径_4_" class="st1" d="M31,18c0.7,0,1.3,0.1,1.9,0.4c0.6,0.3,1.1,0.6,1.6,1.1c0.5,0.4,0.8,1,1.1,1.6
c0.3,0.6,0.4,1.3,0.4,1.9c0,0.7-0.1,1.4-0.4,2c-0.3,0.6-0.6,1.1-1.1,1.6c-0.5,0.5-1,0.8-1.6,1.1C32.3,27.9,31.7,28,31,28
s-1.3-0.1-1.9-0.4c-0.6-0.3-1.1-0.6-1.6-1.1c-0.5-0.5-0.8-1-1.1-1.6c-0.3-0.6-0.4-1.3-0.4-2c0-0.7,0.1-1.3,0.4-1.9
c0.3-0.6,0.6-1.1,1.1-1.6c0.5-0.4,1-0.8,1.6-1.1C29.7,18.1,30.3,18,31,18z"/>
<path id="路径_5_" class="st1" d="M33.5,25c0.1,0,0.3-0.1,0.4-0.2c0.1-0.2,0.1-0.3,0.1-0.6c0-0.2,0-0.4-0.1-0.5
c-0.1-0.1-0.2-0.2-0.4-0.2h-2.1v-2c0-0.1-0.1-0.2-0.2-0.3C31.1,21,30.9,21,30.7,21c-0.2,0-0.4,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.2,0.3
V24c0,0,0,0.1,0,0.1c0,0,0,0.1,0,0.1c0,0.2,0,0.4,0.1,0.6c0.1,0.2,0.2,0.2,0.4,0.2H33.5L33.5,25z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;}
.st2{fill:#FFFFFF;}
.st3{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<g id="页面-1">
<g id="编组">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<g id="_xA5_" class="st1">
<g>
<polygon id="path-4" class="st2" points="24.4,30 24.4,28.7 25.9,28.7 25.9,28.3 24.4,28.3 24.4,27.4 25.9,27.4 25.9,27
24.6,27 26.3,24 25.5,24 24,26.8 22.5,24 21.7,24 23.4,27 22.2,27 22.2,27.4 23.6,27.4 23.6,28.3 22.2,28.3 22.2,28.7
23.6,28.7 23.6,30 "/>
</g>
<g>
<polygon id="path-4_1_" class="st2" points="24.4,30 24.4,28.7 25.9,28.7 25.9,28.3 24.4,28.3 24.4,27.4 25.9,27.4 25.9,27
24.6,27 26.3,24 25.5,24 24,26.8 22.5,24 21.7,24 23.4,27 22.2,27 22.2,27.4 23.6,27.4 23.6,28.3 22.2,28.3 22.2,28.7
23.6,28.7 23.6,30 "/>
</g>
</g>
<path id="形状结合" class="st3" d="M36,21v9.7c0,1.3-1.1,2.3-2.4,2.3H14.4c-1.3,0-2.4-1-2.4-2.3V21H36z M24,22
c-2.8,0-5,2.2-5,5s2.2,5,5,5s5-2.2,5-5S26.8,22,24,22z M26.4,12c1.3,0,2.8,1,3.3,2.2l0.6,1.3h3.3c1.3,0,2.4,1,2.4,2.3V20H12v-5.7
c0-1.3,1.1-2.3,2.4-2.3H26.4z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="形状" class="st1" d="M25.3,12.3l2.4,2.4h3.4c0.6,0,1.1,0.5,1.1,1.1l0,3.5l2.4,2.4c0.4,0.4,0.4,1.1,0,1.5l-2.5,2.5v3.5
c0,0.6-0.5,1.1-1.1,1.1l-3.4,0l-2.5,2.5c-0.4,0.4-1.1,0.4-1.5,0l-2.4-2.4h-3.4c-0.6,0-1.1-0.5-1.1-1.1v-3.5l-2.4-2.4
c-0.4-0.4-0.4-1.1,0-1.5l2.5-2.5v-3.5c0-0.6,0.5-1.1,1.1-1.1h3.4l2.5-2.5C24.2,11.9,24.9,11.9,25.3,12.3z M28,19.4L23.6,24
l-1.8-1.4c-0.5-0.4-1.2-0.3-1.6,0.1c-0.4,0.4-0.4,1.1,0.1,1.5l0,0l3,2.6c0.2,0.2,0.6,0.2,0.8,0l5.5-5.9c0.4-0.5,0.4-1.2,0-1.6
C29.2,18.9,28.5,18.9,28,19.4L28,19.4z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="形状" class="st1" d="M22.8,16h4.4c0,0,2.6-0.6,1.6-2.3c-0.8-1.3-2.2-0.5-2.2-0.5S26.7,12,25,12s-1.6,1.3-1.6,1.3
s-1.4-0.9-2.2,0.5C20.3,15.4,22.8,16,22.8,16L22.8,16z M27.4,17h-4.7C19,18.6,16,22,16,26.1c0,5,3.7,6.9,9,6.9s9-1.9,9-6.9
C34,22,31,18.6,27.4,17z M28.5,26c0.3,0,0.5,0.2,0.5,0.6c0,0.3-0.2,0.6-0.5,0.6H26v3.3c0,0.3-0.2,0.6-0.5,0.6S25,30.8,25,30.4v-3.3
h-2.4c-0.3,0-0.5-0.2-0.5-0.6c0-0.3,0.2-0.6,0.5-0.6h2.5v-1.6h-2.5c-0.3,0-0.5-0.2-0.5-0.6s0.2-0.6,0.5-0.6h1.9l-1.8-2.3
c-0.2-0.2-0.2-0.6,0-0.7c0.2-0.2,0.5-0.2,0.7,0l2.1,2.8l2.1-2.8c0.2-0.2,0.5-0.2,0.7,0c0.2,0.2,0.2,0.6,0.1,0.8l-1.9,2.3h1.9
c0.3,0,0.5,0.2,0.5,0.6s-0.2,0.6-0.5,0.6H26v1.6h2.4V26z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<title>礼品卡消费金额</title>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="形状" class="st1" d="M23.3,15h-3.4c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.1-0.2-0.2-0.3-0.4S19,14.1,19,13.9
c0-0.2,0-0.4,0.1-0.6c0-0.2,0.1-0.4,0.1-0.6s0.1-0.4,0.2-0.5c0.1-0.1,0.2-0.2,0.4-0.3c0.2,0,0.3,0,0.6,0.1c0.3,0.1,0.5,0.3,0.9,0.5
c0.3,0.2,0.6,0.3,0.9,0.5c0.3,0.2,0.6,0.3,0.8,0.4s0.5,0.2,0.6,0.3c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.1,0.3,0.1,0.4
s-0.1,0.2-0.2,0.3C23.7,15,23.5,15,23.3,15L23.3,15z M24.7,15h3.4c0.2,0,0.4-0.1,0.5-0.2c0.1-0.1,0.2-0.2,0.3-0.4
c0.1-0.2,0.1-0.3,0.1-0.5s0-0.4,0-0.6c0-0.2-0.1-0.4-0.1-0.6c0-0.2-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.2-0.4-0.3s-0.3,0-0.6,0.1
c-0.3,0.1-0.5,0.3-0.9,0.5c-0.3,0.2-0.6,0.3-0.9,0.5s-0.6,0.3-0.9,0.4c-0.3,0.1-0.4,0.2-0.6,0.3c-0.2,0.1-0.3,0.2-0.4,0.4
C24,14.3,24,14.5,24,14.6s0.1,0.2,0.2,0.3C24.3,15,24.5,15,24.7,15L24.7,15z M23,17h-6.8c-0.5,0-0.8,0.1-1,0.2S15,17.6,15,18v1.9
c0,0.4,0.1,0.6,0.2,0.8c0.2,0.2,0.5,0.3,1,0.3H23V17L23,17z M25,17h6.7c0.5,0,0.8,0.1,1,0.3s0.3,0.4,0.3,0.8V20
c0,0.4-0.1,0.6-0.2,0.8c-0.2,0.2-0.5,0.3-1,0.3H25V17L25,17z M23,22h-7v3.7v1.5v1.4v1.2v0.8c0,0.8,0.2,1.4,0.7,1.8
c0.4,0.4,1.1,0.6,2.1,0.6H23V22L23,22z M25,22h7v8.5c0,0.8-0.2,1.4-0.7,1.8s-1.1,0.7-2,0.7H25V22L25,22z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<title>其他消费金额</title>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="形状" class="st1" d="M18.7,12h0.7c1.2,0,2.4,0.5,3.3,1.4c0.9,0.9,1.4,2.1,1.4,3.3V22h-5.3c-1.2,0-2.4-0.5-3.3-1.4
S14,18.6,14,17.3v-0.7C14,14.1,16.1,12,18.7,12z M18.7,23H24v5.3c0,1.2-0.5,2.4-1.4,3.3S20.6,33,19.3,33h-0.7
c-2.6,0-4.7-2.1-4.7-4.7v-0.7c0-1.2,0.5-2.4,1.4-3.3C16.2,23.5,17.4,23,18.7,23L18.7,23z M29.7,12h0.7c2.6,0,4.7,2.1,4.7,4.7v0.7
c0,1.2-0.5,2.4-1.4,3.3c-0.9,0.9-2.1,1.4-3.3,1.4H25v-5.3c0-1.2,0.5-2.4,1.4-3.3C27.2,12.5,28.4,12,29.7,12L29.7,12L29.7,12z
M25,23h5.3c1.2,0,2.4,0.5,3.3,1.4c0.9,0.9,1.4,2.1,1.4,3.3v0.7c0,2.6-2.1,4.7-4.7,4.7h-0.7c-1.2,0-2.4-0.5-3.3-1.4
c-0.9-0.9-1.4-2.1-1.4-3.3V23L25,23z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M.002 9.2c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-5.043-3.58-9.132-7.997-9.132S.002 4.157.002 9.2zM31.997.066h95.981V18.33H31.997V.066zm0 45.669c0 5.044 3.58 9.132 7.998 9.132 4.417 0 7.997-4.088 7.997-9.132 0-3.263-1.524-6.278-3.998-7.91-2.475-1.63-5.524-1.63-7.998 0-2.475 1.632-4 4.647-4 7.91zM63.992 36.6h63.986v18.265H63.992V36.6zm-31.995 82.2c0 5.043 3.58 9.132 7.998 9.132 4.417 0 7.997-4.089 7.997-9.132 0-5.044-3.58-9.133-7.997-9.133s-7.998 4.089-7.998 9.133zm31.995-9.131h63.986v18.265H63.992V109.67zm0-27.404c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-3.263-1.524-6.277-3.998-7.909-2.475-1.631-5.524-1.631-7.998 0-2.475 1.632-4 4.646-4 7.91zm31.995-9.13h31.991V91.4H95.987V73.135z"/></svg>

After

Width:  |  Height:  |  Size: 821 B

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.6472;fill:#FFFFFF;enable-background:new ;}
</style>
<title>支付订单金额</title>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="形状" class="st1" d="M33.1,12.9c0.5,0.5,0.8,1.2,0.9,2v9.2c0,0.8-0.3,1.5-0.9,2.1s-1.2,0.8-2,0.8H15.9
c-0.8,0-1.5-0.3-2-0.8c-0.5-0.5-0.8-1.2-0.9-2.1v-9.2c0-0.8,0.3-1.5,0.9-2c0.5-0.5,1.2-0.8,2-0.9h15.2C31.9,12,32.6,12.3,33.1,12.9
z M33.6,30.4c0.3,0.3,0.4,0.6,0.4,1v0.2c0,0.4-0.2,0.8-0.4,1S33,33,32.5,33H14.5c-0.4,0-0.8-0.1-1-0.4c-0.3-0.3-0.4-0.6-0.4-1v-0.2
c0-0.4,0.2-0.8,0.4-1c0.3-0.3,0.6-0.4,1-0.4h18.1C33,30,33.3,30.2,33.6,30.4z M24.8,19.4v-0.9h2.3c0.2,0,0.4-0.1,0.6-0.2
c0.1-0.1,0.2-0.3,0.2-0.6s-0.1-0.4-0.2-0.6c-0.1-0.1-0.3-0.2-0.6-0.2h-1.4l1.5-1.6c0.2-0.2,0.2-0.3,0.2-0.6s-0.1-0.4-0.2-0.6
c-0.2-0.2-0.3-0.2-0.5-0.2c-0.2,0-0.4,0.1-0.5,0.2L24,16.4l-2.2-2.2c-0.1-0.2-0.3-0.2-0.5-0.2s-0.4,0.1-0.7,0.2
c-0.1,0.2-0.2,0.3-0.2,0.6s0.1,0.4,0.2,0.6l1.5,1.6h-1.4c-0.2,0-0.4,0.1-0.6,0.2c-0.1,0.1-0.2,0.3-0.2,0.6s0.1,0.4,0.2,0.6
c0.1,0.1,0.3,0.2,0.6,0.2h2.3v1.1h-2.3c-0.2,0-0.4,0.1-0.6,0.2c-0.1,0.1-0.2,0.3-0.2,0.6c0,0.2,0.1,0.4,0.2,0.6
c0.1,0.1,0.3,0.2,0.6,0.2h2.5v1.3c0,0.2,0.1,0.4,0.2,0.5S23.8,23,24,23s0.4-0.1,0.6-0.2c0.1-0.1,0.2-0.3,0.2-0.6V21h2.5
c0.2,0,0.4-0.1,0.6-0.2c0.1-0.1,0.2-0.3,0.2-0.6s-0.1-0.4-0.2-0.6c-0.1-0.1-0.3-0.2-0.6-0.2L24.8,19.4L24.8,19.4z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;filter:url(#filter-4);}
.st2{fill-rule:evenodd;clip-rule:evenodd;fill:#D8D8D8;}
</style>
<filter id="filter-4">
<feColorMatrix in="SourceGraphic" type="matrix" values="0 0 0 0 1.000000 0 0 0 0 1.000000 0 0 0 0 1.000000 0 0 0 1.000000 0">
</feColorMatrix>
</filter>
<title>支付订单数</title>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#B8BAFF"/>
<stop offset="1" style="stop-color:#746DF4"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<g id="编组-2" class="st1">
<g transform="translate(13.000000, 12.000000)">
<path id="路径_5_" class="st2" d="M19.6,5C20.9,5,22,6.1,22,7.5v2.5h-5.5c-1.6,0-2.9,1.3-3,2.9l0,0.2c0,1.6,1.2,3,2.9,3.1
l0.2,0H22v2.5c0,1.4-1.1,2.5-2.4,2.5H2.4C1.1,21,0,19.9,0,18.5V7.5C0,6.1,1.1,5,2.4,5H19.6z"/>
<path id="路径_4_" class="st2" d="M22.3,12c0.9,0,1.7,0.7,1.7,1.5S23.2,15,22.3,15h-4.6c-0.9,0-1.7-0.7-1.7-1.5
s0.8-1.5,1.7-1.5H22.3z"/>
<path id="路径_3_" class="st2" d="M16.2,0.9L18,2.7C18,2.8,18,2.9,18,2.9C17.9,3,17.8,3,17.7,3H5.3C5.2,3,5,2.9,5,2.9
c0-0.1,0-0.2,0.1-0.2l7.4-2.5C13.8-0.2,15.5,0.1,16.2,0.9L16.2,0.9z"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M108.8 44.322H89.6v-5.36c0-9.04-3.308-24.163-25.6-24.163-23.145 0-25.6 16.881-25.6 24.162v5.361H19.2v-5.36C19.2 15.281 36.798 0 64 0c27.202 0 44.8 15.281 44.8 38.961v5.361zm-32 39.356c0-5.44-5.763-9.832-12.8-9.832-7.037 0-12.8 4.392-12.8 9.832 0 3.682 2.567 6.808 6.407 8.477v11.205c0 2.718 2.875 4.962 6.4 4.962 3.524 0 6.4-2.244 6.4-4.962V92.155c3.833-1.669 6.393-4.795 6.393-8.477zM128 64v49.201c0 8.158-8.645 14.799-19.2 14.799H19.2C8.651 128 0 121.359 0 113.201V64c0-8.153 8.645-14.799 19.2-14.799h89.6c10.555 0 19.2 6.646 19.2 14.799z"/></svg>

After

Width:  |  Height:  |  Size: 623 B

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M95.648 118.762c0 5.035-3.563 9.121-7.979 9.121H7.98c-4.416 0-7.979-4.086-7.979-9.121C0 100.519 15.408 83.47 31.152 76.75c-9.099-6.43-15.216-17.863-15.216-30.987v-9.128c0-20.16 14.293-36.518 31.893-36.518s31.894 16.358 31.894 36.518v9.122c0 13.137-6.123 24.556-15.216 30.993 15.738 6.726 31.141 23.769 31.141 42.012z"/><path d="M106.032 118.252h15.867c3.376 0 6.101-3.125 6.101-6.972 0-13.957-11.787-26.984-23.819-32.123 6.955-4.919 11.638-13.66 11.638-23.704v-6.985c0-15.416-10.928-27.926-24.39-27.926-1.674 0-3.306.193-4.89.561 1.936 4.713 3.018 9.974 3.018 15.526v9.121c0 13.137-3.056 23.111-11.066 30.993 14.842 4.41 27.312 23.42 27.541 41.509z"/></svg>

After

Width:  |  Height:  |  Size: 731 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.9 KiB

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z"/><path d="M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z"/></svg>

After

Width:  |  Height:  |  Size: 597 B

@ -0,0 +1 @@
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M126.713 90.023c.858.985 1.287 2.134 1.287 3.447v29.553c0 1.423-.429 2.6-1.287 3.53-.858.93-1.907 1.395-3.146 1.395H97.824c-1.145 0-2.146-.465-3.004-1.395-.858-.93-1.287-2.107-1.287-3.53V93.47c0-.875.19-1.696.572-2.462.382-.766.906-1.368 1.573-1.806a3.84 3.84 0 0 1 2.146-.657h9.725V69.007a3.84 3.84 0 0 0-.43-1.806 3.569 3.569 0 0 0-1.143-1.313 2.714 2.714 0 0 0-1.573-.492h-36.47v23.149h9.725c1.144 0 2.145.492 3.004 1.478.858.985 1.287 2.134 1.287 3.447v29.553c0 .876-.191 1.696-.573 2.463-.38.766-.905 1.368-1.573 1.806a3.84 3.84 0 0 1-2.145.656H51.915a3.84 3.84 0 0 1-2.145-.656c-.668-.438-1.216-1.04-1.645-1.806a4.96 4.96 0 0 1-.644-2.463V93.47c0-1.313.43-2.462 1.288-3.447.858-.986 1.907-1.478 3.146-1.478h9.582v-23.15h-37.9c-.953 0-1.74.356-2.359 1.068-.62.711-.93 1.56-.93 2.544v19.538h9.726c1.239 0 2.264.492 3.074 1.478.81.985 1.216 2.134 1.216 3.447v29.553c0 1.423-.405 2.6-1.216 3.53-.81.93-1.835 1.395-3.074 1.395H4.29c-.476 0-.93-.082-1.358-.246a4.1 4.1 0 0 1-1.144-.657 4.658 4.658 0 0 1-.93-1.067 5.186 5.186 0 0 1-.643-1.395 5.566 5.566 0 0 1-.215-1.56V93.47c0-.437.048-.875.143-1.313a3.95 3.95 0 0 1 .429-1.15c.19-.328.429-.656.715-.984.286-.329.572-.602.858-.821.286-.22.62-.383 1.001-.493.382-.11.763-.164 1.144-.164h9.726V61.619c0-.985.31-1.833.93-2.544.619-.712 1.358-1.068 2.216-1.068h44.335V39.62h-9.582c-1.24 0-2.288-.492-3.146-1.477a5.09 5.09 0 0 1-1.287-3.448V5.14c0-1.423.429-2.627 1.287-3.612.858-.985 1.907-1.477 3.146-1.477h25.743c.763 0 1.478.246 2.145.739a5.17 5.17 0 0 1 1.573 1.888c.382.766.573 1.587.573 2.462v29.553c0 1.313-.43 2.463-1.287 3.448-.859.985-1.86 1.477-3.004 1.477h-9.725v18.389h42.762c.954 0 1.74.355 2.36 1.067.62.711.93 1.56.93 2.545v26.925h9.582c1.239 0 2.288.492 3.146 1.478z"/></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_2_);}
.st1{opacity:0.6544;fill-rule:evenodd;clip-rule:evenodd;fill:#FFFFFF;enable-background:new ;}
</style>
<g id="页面-1">
<linearGradient id="椭圆形_2_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#90BBFC"/>
<stop offset="1" style="stop-color:#5793F7"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<circle id="椭圆形_1_" class="st1" cx="24.4" cy="17.5" r="5.5"/>
<path id="形状结合" class="st1" d="M24.5,23c5.3,0,9.7,4.4,10.4,10H14.1C14.8,27.4,19.2,23,24.5,23z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_2_);}
.st1{opacity:0.6544;fill-rule:evenodd;clip-rule:evenodd;fill:#FFFFFF;enable-background:new ;}
</style>
<title>登录用户数</title>
<g id="页面-1">
<linearGradient id="椭圆形_2_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#90BBFC"/>
<stop offset="1" style="stop-color:#5793F7"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<circle id="椭圆形_1_" class="st1" cx="24.4" cy="17.5" r="5.5"/>
<path id="形状结合" class="st1" d="M24.5,23c5.3,0,9.7,4.4,10.4,10H14.1C14.8,27.4,19.2,23,24.5,23z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_2_);}
.st1{opacity:0.6544;}
.st2{filter:url(#filter-5);}
.st3{fill-rule:evenodd;clip-rule:evenodd;}
.st4{fill-rule:evenodd;clip-rule:evenodd;fill:#FFFFFF;stroke:#FFFFFF;}
.st5{opacity:0.6544;fill-rule:evenodd;clip-rule:evenodd;fill:#FFFFFF;enable-background:new ;}
.st6{fill-rule:evenodd;clip-rule:evenodd;fill:url(#矩形_2_);}
.st7{fill-rule:evenodd;clip-rule:evenodd;fill:url(#矩形备份-6_1_);}
</style>
<filter filterUnits="objectBoundingBox" height="300.0%" id="filter-5" width="300.0%" x="-100.0%" y="-63.6%">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="3"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix in="shadowBlurOuter1" type="matrix" values="0 0 0 0 0.355826068 0 0 0 0 0.285609533 0 0 0 0 0.969305066 0 0 0 0.170928315 0">
</feColorMatrix>
</filter>
<title>登录新用户数</title>
<g id="页面-1">
<linearGradient id="椭圆形_2_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#90BBFC"/>
<stop offset="1" style="stop-color:#5793F7"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<g id="椭圆形_1_" class="st1">
<g class="st2">
<circle id="path-4_1_" class="st3" cx="24.4" cy="17.5" r="5.5"/>
</g>
<circle class="st4" cx="24.4" cy="17.5" r="5"/>
</g>
<path id="形状结合" class="st5" d="M24.5,23c5.3,0,9.7,4.4,10.4,10H14.1C14.8,27.4,19.2,23,24.5,23z"/>
<linearGradient id="矩形_2_" gradientUnits="userSpaceOnUse" x1="-19.5" y1="51.7702" x2="-19.5" y2="47.0877" gradientTransform="matrix(5 0 0 -1 122 67)">
<stop offset="0" style="stop-color:#5B96F8"/>
<stop offset="1" style="stop-color:#FFFFFF"/>
</linearGradient>
<rect id="矩形_1_" x="22" y="17" class="st6" width="5" height="1"/>
<linearGradient id="矩形备份-6_1_" gradientUnits="userSpaceOnUse" x1="0.5" y1="71.7702" x2="0.5" y2="67.0877" gradientTransform="matrix(1 0 0 -5 24 365)">
<stop offset="0" style="stop-color:#5B96F8"/>
<stop offset="1" style="stop-color:#FFFFFF"/>
</linearGradient>
<rect id="矩形备份-6" x="24" y="15" class="st7" width="1" height="5"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#椭圆形_1_);}
.st1{opacity:0.65;fill:#FFFFFF;enable-background:new ;}
</style>
<title>VIP用户数</title>
<g id="页面-1">
<linearGradient id="椭圆形_1_" gradientUnits="userSpaceOnUse" x1="-23.9792" y1="74.4792" x2="-23.9792" y2="73.4792" gradientTransform="matrix(48 0 0 -48 1175 3575)">
<stop offset="0" style="stop-color:#90BBFC"/>
<stop offset="1" style="stop-color:#5793F7"/>
</linearGradient>
<circle id="椭圆形" class="st0" cx="24" cy="24" r="24"/>
<path id="路径" class="st1" d="M34.6,17.3c-1.5,0-2.7,1.2-2.7,2.6c0,0.4,0.1,0.6,0.3,1l-4.4,1.6L25,17c0.9-0.4,1.5-1.4,1.5-2.3
c0-1.5-1.2-2.6-2.7-2.6c-1.5,0-2.7,1.2-2.7,2.6c0,1,0.6,2,1.5,2.3l-3,5.6l-4.2-1.6c0.1-0.2,0.3-0.6,0.3-1c0-1.5-1.2-2.6-2.7-2.6
c-1.5,0-2.7,1.2-2.7,2.6c0,1.5,1.2,2.6,2.7,2.6c0.1,0,0.3,0,0.5,0l1.4,8.3c0.1,1.4,1.3,2.2,2.6,2.2h12.6c1.3,0,2.4-0.9,2.7-2.2
l1.3-8.3c0.1,0,0.3,0,0.5,0c1.5,0,2.7-1.2,2.7-2.6C37.3,18.4,36.2,17.3,34.6,17.3L34.6,17.3z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -0,0 +1 @@
<svg width="130" height="130" xmlns="http://www.w3.org/2000/svg"><path d="M63.444 64.996c20.633 0 37.359-14.308 37.359-31.953 0-17.649-16.726-31.952-37.359-31.952-20.631 0-37.36 14.303-37.358 31.952 0 17.645 16.727 31.953 37.359 31.953zM80.57 75.65H49.434c-26.652 0-48.26 18.477-48.26 41.27v2.664c0 9.316 21.608 9.325 48.26 9.325H80.57c26.649 0 48.256-.344 48.256-9.325v-2.663c0-22.794-21.605-41.271-48.256-41.271z" stroke="#979797"/></svg>

After

Width:  |  Height:  |  Size: 440 B

@ -0,0 +1,22 @@
# replace default config
# multipass: true
# full: true
plugins:
# - name
#
# or:
# - name: false
# - name: true
#
# or:
# - name:
# param1: 1
# param2: 2
- removeAttrs:
attrs:
- 'fill'
- 'fill-rule'

@ -0,0 +1,55 @@
<template>
<div class="vab-ad">
<el-carousel
v-if="adList"
height="30px"
direction="vertical"
:autoplay="true"
:interval="3000"
indicator-position="none"
>
<el-carousel-item v-for="(item, index) in adList" :key="index">
<el-tag type="warning" class="el-icon-warning" />
<a target="_blank" :href="item.url">{{ item.title }}</a>
</el-carousel-item>
</el-carousel>
</div>
</template>
<script>
// import { getList } from '@/api/ad'
export default {
data() {
return {
// nodeEnv: process.env.NODE_ENV,
adList: [{
title: '欢迎加入戎归星选电商平台,戎归星选电商平台致力于帮助农商商户、个体户打开销售渠道,只要你有优质货源,加入平台,将会找到更多客户!'
// url: '#'
}]
}
},
created() {
// this.fetchData();
},
methods: {
// async fetchData() {
// const { data } = await getList();
// this.adList = data;
// },
}
}
</script>
<style lang="scss" scoped>
.vab-ad {
height: 30px;
padding-right: 20px;
padding-left: 20px;
line-height: 30px;
cursor: pointer;
background: #eef1f6;
box-shadow: 0 -1px 2px rgba(0, 21, 41, 0.08) inset;
margin-top: 50px;
a {
color: #999;
}
}
</style>

@ -0,0 +1,24 @@
<template>
<section class="app-main">
<transition name="fade-transform" mode="out-in">
<router-view :key="key" />
</transition>
</section>
</template>
<script>
export default {
name: 'AppMain',
computed: {
key() {
return this.$route.path
}
}
}
</script>
<style scoped>
.fixed-header+.app-main {
padding-top: 80px;
}
</style>

@ -0,0 +1,132 @@
<template>
<div class="navbar">
<hamburger
:is-active="sidebar.opened"
class="hamburger-container"
@toggleClick="toggleSideBar"
/>
<breadcrumb class="breadcrumb-container" />
<div class="right-menu">
<el-dropdown class="avatar-container" trigger="click">
<div class="avatar-wrapper">
<span>{{ userName }}</span>
<i class="el-icon-caret-bottom" />
</div>
<el-dropdown-menu slot="dropdown" class="user-dropdown">
<router-link to="/user/user">
<el-dropdown-item>修改密码</el-dropdown-item>
</router-link>
<el-dropdown-item divided @click.native="logout">
<span style="display:block;">退出系统</span>
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import Breadcrumb from '@/components/Breadcrumb'
import Hamburger from '@/components/Hamburger'
export default {
components: {
Breadcrumb,
Hamburger
},
computed: {
...mapGetters(['sidebar', 'userName'])
},
methods: {
toggleSideBar() {
this.$store.dispatch('app/toggleSideBar')
},
async logout() {
this.$store.dispatch('user/logout')
this.$router.push(`/login`)
}
}
}
</script>
<style lang="scss" scoped>
.navbar {
height: 50px;
overflow: hidden;
position: relative;
background: #fff;
box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
.hamburger-container {
line-height: 46px;
height: 100%;
float: left;
cursor: pointer;
transition: background 0.3s;
-webkit-tap-highlight-color: transparent;
&:hover {
background: rgba(0, 0, 0, 0.025);
}
}
.breadcrumb-container {
float: left;
}
.right-menu {
float: right;
height: 100%;
line-height: 50px;
&:focus {
outline: none;
}
.right-menu-item {
display: inline-block;
padding: 0 8px;
height: 100%;
font-size: 18px;
color: #5a5e66;
vertical-align: text-bottom;
&.hover-effect {
cursor: pointer;
transition: background 0.3s;
&:hover {
background: rgba(0, 0, 0, 0.025);
}
}
}
.avatar-container {
margin-right: 30px;
.avatar-wrapper {
margin-top: 5px;
position: relative;
.user-avatar {
cursor: pointer;
width: 40px;
height: 40px;
border-radius: 10px;
}
.el-icon-caret-bottom {
cursor: pointer;
position: absolute;
right: -20px;
top: 25px;
font-size: 12px;
}
}
}
}
}
</style>

@ -0,0 +1,24 @@
export default {
computed: {
device() {
return this.$store.state.app.device
}
},
mounted() {
this.fixBugIniOS()
},
methods: {
fixBugIniOS() {
const $subMenu = this.$refs.subMenu
if ($subMenu) {
const handleMouseleave = $subMenu.handleMouseleave
$subMenu.handleMouseleave = (e) => {
if (this.device === 'mobile') {
return
}
handleMouseleave(e)
}
}
}
}
}

@ -0,0 +1,40 @@
<script>
export default {
name: 'MenuItem',
functional: true,
props: {
icon: {
type: String,
default: ''
},
title: {
type: String,
default: ''
}
},
render(h, context) {
const { icon, title } = context.props
const vnodes = []
if (icon) {
if (icon.includes('el-icon')) {
vnodes.push(<i class={[icon, 'sub-el-icon']} />)
} else {
vnodes.push(<svg-icon icon-class={icon}/>)
}
}
if (title) {
vnodes.push(<span slot='title'>{(title)}</span>)
}
return vnodes
}
}
</script>
<style scoped>
.sub-el-icon {
color: currentColor;
width: 1em;
height: 1em;
}
</style>

@ -0,0 +1,43 @@
<template>
<component :is="type" v-bind="linkProps(to)">
<slot />
</component>
</template>
<script>
import { isExternal } from '@/utils/validate'
export default {
props: {
to: {
type: String,
required: true
}
},
computed: {
isExternal() {
return isExternal(this.to)
},
type() {
if (this.isExternal) {
return 'a'
}
return 'router-link'
}
},
methods: {
linkProps(to) {
if (this.isExternal) {
return {
href: to,
target: '_blank',
rel: 'noopener'
}
}
return {
to: to
}
}
}
}
</script>

@ -0,0 +1,87 @@
<template>
<div class="sidebar-logo-container" :class="{'collapse':collapse}">
<transition name="sidebarLogoFade">
<router-link v-if="collapse" key="collapse" class="sidebar-logo-link" to="/">
<img v-if="logo" :src="logo" class="sidebar-logo">
<h1 v-else class="sidebar-title">
{{ title }}
</h1>
</router-link>
<router-link v-else key="expand" class="sidebar-logo-link" to="/">
<img v-if="logo" :src="logo" class="sidebar-logo">
<h1 class="sidebar-title">
{{ title }}
</h1>
</router-link>
</transition>
</div>
</template>
<script>
import logo from '../../../assets/images/ronggui.png'
export default {
name: 'SidebarLogo',
props: {
collapse: {
type: Boolean,
required: true
}
},
data() {
return {
title: '后台管理系统',
logo: logo
}
}
}
</script>
<style lang="scss" scoped>
.sidebarLogoFade-enter-active {
transition: opacity 1.5s;
}
.sidebarLogoFade-enter,
.sidebarLogoFade-leave-to {
opacity: 0;
}
.sidebar-logo-container {
position: relative;
width: 100%;
height: 50px;
line-height: 50px;
background: #2b2f3a;
text-align: center;
overflow: hidden;
& .sidebar-logo-link {
height: 100%;
width: 100%;
& .sidebar-logo {
width: 32px;
height: 32px;
vertical-align: middle;
margin-right: 12px;
}
& .sidebar-title {
display: inline-block;
margin: 0;
color: #fff;
font-weight: 600;
line-height: 50px;
font-size: 14px;
font-family: Avenir, Helvetica Neue, Arial, Helvetica, sans-serif;
vertical-align: middle;
}
}
&.collapse {
.sidebar-logo {
margin-right: 0px;
}
}
}
</style>

@ -0,0 +1,90 @@
<template>
<div v-if="!item.hidden">
<template v-if="hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow">
<app-link v-if="onlyOneChild.meta" :to="resolvePath(onlyOneChild.path)">
<el-menu-item :index="resolvePath(onlyOneChild.path)" :class="{'submenu-title-noDropdown':!isNest}">
<item :icon="onlyOneChild.meta.icon||(item.meta&&item.meta.icon)" :title="onlyOneChild.meta.title" />
</el-menu-item>
</app-link>
</template>
<el-submenu v-else ref="subMenu" :index="resolvePath(item.path)" popper-append-to-body>
<template slot="title">
<item v-if="item.meta" :icon="item.meta && item.meta.icon" :title="item.meta.title" />
</template>
<sidebar-item
v-for="child in item.children"
:key="child.path"
:is-nest="true"
:item="child"
:base-path="resolvePath(child.path)"
class="nest-menu"
/>
</el-submenu>
</div>
</template>
<script>
import path from 'path'
import { isExternal } from '@/utils/validate'
import Item from './Item'
import AppLink from './Link'
import FixiOSBug from './FixiOSBug'
export default {
name: 'SidebarItem',
components: { Item, AppLink },
mixins: [FixiOSBug],
props: {
item: {
type: Object,
required: true
},
isNest: {
type: Boolean,
default: false
},
basePath: {
type: String,
default: ''
}
},
data() {
this.onlyOneChild = null
return {}
},
created() {
},
methods: {
hasOneShowingChild(children = [], parent) {
const showingChildren = children.filter(item => {
if (item.hidden) {
return false
} else {
this.onlyOneChild = item
return true
}
})
if (showingChildren.length === 1) {
return true
}
if (showingChildren.length === 0) {
this.onlyOneChild = { ... parent, path: '', noShowingChildren: true }
return true
}
return false
},
resolvePath(routePath) {
if (isExternal(routePath)) {
return routePath
}
if (isExternal(this.basePath)) {
return this.basePath
}
return path.resolve(this.basePath, routePath)
}
}
}
</script>

@ -0,0 +1,88 @@
<template>
<div v-if="!item.hidden">
<template v-if="hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow">
<app-link v-if="onlyOneChild.menu_name" :to="resolvePath(onlyOneChild.path)">
<el-menu-item :index="resolvePath(onlyOneChild.path)" :class="{'submenu-title-noDropdown':!isNest}">
<item :title="onlyOneChild.menu_name" />
</el-menu-item>
</app-link>
</template>
<el-submenu v-else ref="subMenu" :index="resolvePath(item.path)" popper-append-to-body>
<template slot="title">
<item v-if="item.menu_name" :title="item.menu_name" />
</template>
<sidebar-item
v-for="child in item.children"
:key="child.path"
:is-nest="true"
:item="child"
:base-path="resolvePath(child.path)"
class="nest-menu"
/>
</el-submenu>
</div>
</template>
<script>
import path from 'path'
import { isExternal } from '@/utils/validate'
import Item from './Item'
import AppLink from './Link'
import FixiOSBug from './FixiOSBug'
export default {
name: 'SidebarItem',
components: { Item, AppLink },
mixins: [FixiOSBug],
props: {
item: {
type: Object,
required: true
},
isNest: {
type: Boolean,
default: false
},
basePath: {
type: String,
default: ''
}
},
data() {
this.onlyOneChild = null
return {}
},
created() {
},
methods: {
hasOneShowingChild(children = [], parent) {
const showingChildren = children.filter(item => {
if (item.hidden) {
return false
} else {
this.onlyOneChild = item
return true
}
})
if (showingChildren.length === 1) {
return true
}
if (showingChildren.length === 0) {
this.onlyOneChild = { ... parent, path: '', noShowingChildren: true }
return true
}
return false
},
resolvePath(routePath) {
if (isExternal(routePath)) {
return routePath
}
if (isExternal(this.basePath)) {
return this.basePath
}
return path.resolve(this.basePath, routePath)
}
}
}
</script>

@ -0,0 +1,115 @@
<template>
<div :class="{ 'has-logo': showLogo }">
<logo :collapse="isCollapse" />
<el-scrollbar wrap-class="scrollbar-wrapper">
<el-menu
:default-active="activeMenu"
:collapse="isCollapse"
:background-color="variables.menuBg"
:text-color="variables.menuText"
:unique-opened="false"
:active-text-color="variables.menuActiveText"
:collapse-transition="false"
mode="vertical"
>
<sidebar-item
v-for="route in routes"
:key="route.path"
:item="route"
:base-path="route.path"
/>
</el-menu>
</el-scrollbar>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import Logo from "./Logo";
import SidebarItem from "./SidebarItem";
import variables from "@/styles/variables.scss";
export default {
components: { SidebarItem, Logo },
computed: {
...mapGetters(["sidebar"]),
routes() {
// return this.$router.options.routes
let strArry = sessionStorage.getItem("menuList");
let objArry = JSON.parse(strArry);
// console.log(objArry, "777777777777777");
let arr1 = [];
let arr2 = [];
for (let i = 0; i < objArry.length; i++) {
if (objArry[i].parent_id == 0) {
arr1.push(objArry[i]);
arr2.push(objArry[i].menu_id); //
}
// console.log(arr1, "00000000000000");
}
for (let k = 0; k < arr1.length; k++) {
let children = [];
// console.log(arr1[k])
for (let j = 0; j < objArry.length; j++) {
if (objArry[j].parent_id == arr1[k].menu_id) {
children.push(objArry[j]);
// console.log(arr1, "111111111");
} else {
}
}
arr1[k].children = children;
}
for (let x = 0; x < objArry.length; x++) {
if (
objArry[x].parent_id != 0 &&
arr2.indexOf(objArry[x].parent_id) == -1
) {
// console.log(objArry[x])
arr1.push(objArry[x]);
}
}
return arr1;
// for(let j=0; j<objArry.length;j++){
// for()
// if(objArry[j].parent_id==){
// arr1.push(objArry[i])
// console.log(arr1,"00000000000000")
// }
// };
// for(let i in objArry){
// //var o={};
// //o[i]=jsonObj[i];
// arr1.push(objArry[i]);
// }
// console.log(arr1)
return objArry;
},
activeMenu() {
const route = this.$route;
const { meta, path } = route;
if (meta.activeMenu) {
return meta.activeMenu;
}
return path;
},
showLogo() {
return this.$store.state.settings.sidebarLogo;
},
variables() {
return variables;
},
isCollapse() {
return !this.sidebar.opened;
},
},
created() {
// console.log(this.$router.options.routes);
// console.log(typeof(this.$router.options.routes))
// console.log(typeof(sessionStorage.getItem("menuList"),"111111111"))
},
};
</script>

@ -0,0 +1,4 @@
export { default as Navbar } from './Navbar'
export { default as Sidebar } from './Sidebar'
export { default as AppMain } from './AppMain'
export { default as Ad } from './Ad'

@ -0,0 +1,99 @@
<template>
<div :class="classObj" class="app-wrapper">
<div v-if="device==='mobile'&&sidebar.opened" class="drawer-bg" @click="handleClickOutside" />
<sidebar class="sidebar-container" />
<div class="main-container">
<div class="fixed-header">
<navbar />
<!-- <tags-view /> -->
</div>
<Ad />
<app-main />
</div>
</div>
</template>
<script>
import { Navbar, Sidebar, AppMain, Ad } from './components'
import ResizeMixin from './mixin/ResizeHandler'
import { mapState } from 'vuex'
export default {
name: 'Layout',
components: {
Navbar,
Sidebar,
AppMain,
Ad
},
mixins: [ResizeMixin],
computed: {
...mapState({
needTagsView: state => state.settings.tagsView
}),
sidebar() {
return this.$store.state.app.sidebar
},
device() {
return this.$store.state.app.device
},
fixedHeader() {
return this.$store.state.settings.fixedHeader
},
classObj() {
return {
hideSidebar: !this.sidebar.opened,
openSidebar: this.sidebar.opened,
withoutAnimation: this.sidebar.withoutAnimation,
mobile: this.device === 'mobile'
}
}
},
methods: {
handleClickOutside() {
this.$store.dispatch('app/closeSideBar', { withoutAnimation: false })
}
}
}
</script>
<style lang="scss" scoped>
@import "~@/styles/mixin.scss";
@import "~@/styles/variables.scss";
.app-wrapper {
@include clearfix;
position: relative;
height: 100%;
width: 100%;
&.mobile.openSidebar{
position: fixed;
top: 0;
}
}
.drawer-bg {
background: #000;
opacity: 0.3;
width: 100%;
top: 0;
height: 100%;
position: absolute;
z-index: 999;
}
.fixed-header {
position: fixed;
top: 0;
right: 0;
z-index: 9;
width: calc(100% - #{$sideBarWidth});
transition: width 0.28s;
}
.hideSidebar .fixed-header {
width: calc(100% - 54px)
}
.mobile .fixed-header {
width: 100%;
}
</style>

@ -0,0 +1,43 @@
import store from '@/store'
const { body } = document
const WIDTH = 992
export default {
watch: {
$route(route) {
if (this.device === 'mobile' && this.sidebar.opened) {
store.dispatch('app/closeSideBar', { withoutAnimation: false })
}
}
},
beforeMount() {
window.addEventListener('resize', this.$_resizeHandler)
},
beforeDestroy() {
window.removeEventListener('resize', this.$_resizeHandler)
},
mounted() {
const isMobile = this.$_isMobile()
if (isMobile) {
store.dispatch('app/toggleDevice', 'mobile')
store.dispatch('app/closeSideBar', { withoutAnimation: true })
}
},
methods: {
$_isMobile() {
const rect = body.getBoundingClientRect()
return rect.width - 1 < WIDTH
},
$_resizeHandler() {
if (!document.hidden) {
const isMobile = this.$_isMobile()
store.dispatch('app/toggleDevice', isMobile ? 'mobile' : 'desktop')
if (isMobile) {
store.dispatch('app/closeSideBar', { withoutAnimation: true })
}
}
}
}
}

@ -0,0 +1,34 @@
import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
// CSS重置的现代替代方法
import 'normalize.css/normalize.css'
import 'element-ui/lib/theme-chalk/index.css'
import '@/styles/index.scss' // 全局css
// 第三方插件
import ElementUI from 'element-ui'
import './icons' // icon
import './utils/vab'
import echarts from 'echarts' // 引入echarts
import {
$api
} from './api/api-config' // 接口配置
Vue.prototype.$api = $api
import './permission' // 权限控制
// 过滤器
import filters from './utils/filters'
// 日期时间格式化
import './utils/date.js'
for (const k in filters) {
Vue.filter(k, filters[k])
}
Vue.prototype.$echarts = echarts
Vue.use(ElementUI)
Vue.config.productionTip = false
new Vue({
router,
store,
render: h => h(App)
}).$mount('#app')

@ -0,0 +1,32 @@
import router from './router'
import NProgress from 'nprogress' // 进度条
import 'nprogress/nprogress.css' // 进度条样式
import getPageTitle from '@/utils/get-page-title' // title设置
import { routesWhiteList } from '@/config/settings'
NProgress.configure({ easing: 'ease', speed: 500, showSpinner: false })// 进度条配置
router.beforeEach(async(to, from, next) => {
NProgress.start() // 进度条开始
document.title = getPageTitle(to.meta.title) // 设置页面标题
const hasGetUserInfo = sessionStorage.getItem('adminName') // 获取登录标识
next()
if (hasGetUserInfo) { // 确定用户是否已登录
if (to.path === '/login') {
next({ path: '/' }) // 如果已登录,则重定向到主页
NProgress.done() // 进度条结束
} else {
next()
NProgress.done()
}
} else {
if (routesWhiteList.indexOf(to.path) !== -1) { // 在免费登录白名单中,直接进入
next()
} else { // 其他没有访问权限的页面将被重定向到登录页面。
next(`/login?redirect=${to.path}`)
NProgress.done()
}
}
})
router.afterEach(() => {
NProgress.done() // 完成进度条
})

@ -0,0 +1,17 @@
// // import 'echarts'
// // import 'echarts/map/js/china'
// // import 'echarts/map/js/world'
// // import 'echarts-wordcloud'
// // import VabChart from 'vue-echarts'
// // import theme from './vab-echarts-theme.json'
// // VabChart.registerTheme('vab-echarts-theme', theme)
// // export default VabChart
// import vue from 'vue'
// import ECharts from 'vue-echarts'
// import 'echarts/lib/chart/bar'
// import 'echarts/lib/component/tooltip'
// import 'echarts'
// vue.component('v-chart', ECharts)

@ -0,0 +1,7 @@
import { Custom, Flv, Hls, Mp4 } from 'zx-player'
const VabPlayerMp4 = Mp4
const VabPlayerHls = Hls
const VabPlayerFlv = Flv
const VabPlayerCustom = Custom
export { VabPlayerMp4, VabPlayerHls, VabPlayerFlv, VabPlayerCustom }

@ -0,0 +1,5 @@
import { quillEditor } from 'vue-quill-editor' // 调用编辑器
import 'quill/dist/quill.core.css'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'
export { quillEditor }

@ -0,0 +1,828 @@
import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
import Layout from '@/layout'
const routes = [
{
path: '/login',
component: () => import('@/views/login/index'),
hidden: true
},
{
path: '/404',
component: () => import('@/views/error-page/404'),
hidden: true
},
{
path: '/401',
component: () => import('@/views/error-page/401'),
hidden: true
},
{
path: '/',
component: Layout,
redirect: '/home',
children: [{
path: 'home',
name: 'home',
component: () => import('@/views/home'),
meta: {
title: '首页',
icon: 'dashboard',
keepAlive: true // 不需要被缓存的组件
}
}]
},
{
path: '/user',
component: Layout,
hidden: true,
children: [{
path: 'user',
name: 'user',
component: () => import('@/views/user'),
meta: {
title: '修改密码',
icon: 'user',
keepAlive: false // 不需要被缓存的组件
}
}]
},
{
path: '/Commoditymanagement',
component: Layout,
alwaysShow: true, // 一直显示根路由
meta: { title: '商品管理', icon: 'el-icon-goods' },
redirect: '/Commoditymanagement/Commoditylist',
children: [
{
path: 'Commoditylist',
name: 'Commoditylist',
component: () => import('@/views/Commoditymanagement/Commoditylist'),
meta: {
title: '商品列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'Commodityclasslist',
name: 'Commodityclasslist',
component: () => import('@/views/Commoditymanagement/Commodityclasslist'),
meta: {
title: '商品分类列表',
keepAlive: false // 不需要被缓存的组件
},
},
{
path: 'commoditydetail',
component: () => import('@/views/Commoditymanagement/commoditydetail'),
name: 'commoditydetail',
meta: {
title: '商品信息',
noCache: true,
activeMenu: '/Commoditymanagement/commoditydetail',
keepAlive: false // 不需要被缓存的组件 specifications
},
hidden: true
},
// 规格名列表
{
path: '/Commoditymanagement/specifications',
component: () => import('@/views/Commoditymanagement/specifications'),
name: 'CommoditymanagementSpecifications',
meta: {
title: '商品信息',
noCache: true,
activeMenu: '/Commoditymanagement/specifications',
keepAlive: false // 不需要被缓存的组件 specifications
},
}
]
},
{
path: '/shopManagement',
component: Layout,
redirect: '/shopManagement/shopList',
name: 'shopManagement',
alwaysShow: true, // 一直显示根路由
meta: { title: '店铺管理', icon: 'el-icon-tickets' },
children: [
{
path: 'shopList',
name: 'shopList',
component: () => import('@/views/shopManagement/shopList'),
meta: {
title: '店铺列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'approvalList',
name: 'approvalList',
component: () => import('@/views/shopManagement/approvalList'),
meta: {
title: '待审核店铺列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'shopdetail',
component: () => import('@/views/shopManagement/shopdetail'),
name: 'shopdetail',
meta: {
title: '店铺信息',
noCache: true,
activeMenu: '/shopManagement/shopdetail',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
}
]
},
{
path: '/financeManagement',
component: Layout,
redirect: '/financeManagement/supplierSettlement',
name: 'financeManagement',
alwaysShow: true, // 一直显示根路由
meta: { title: '财务管理', icon: 'el-icon-tickets' },
children: [
{
path: 'supplierSettlement',
name: 'supplierSettlement',
component: () => import('@/views/financeManagement/supplierSettlement'),
meta: {
title: '供应商结算',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'channelReward',
name: 'channelReward',
component: () => import('@/views/financeManagement/channelReward'),
meta: {
title: '渠道商奖励结算',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'statementList',
name: 'statementList',
component: () => import('@/views/financeManagement/statementList'),
meta: {
title: '结算单列表',
keepAlive: false // 需要被缓存的组件
}
},
{
path: 'refundList',
name: 'refundList',
component: () => import('@/views/financeManagement/refundList'),
meta: {
title: '待退款列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'merchantsDetail',
component: () => import('@/views/financeManagement/merchantsDetail'),
name: 'merchantsDetail',
meta: {
title: '订单详情',
noCache: true,
activeMenu: '/financeManagement/merchantsDetail',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'getSettDetails',
component: () => import('@/views/financeManagement/getSettDetails'),
name: 'getSettDetails',
meta: {
title: '结算明细',
noCache: true,
activeMenu: '/financeManagement/getSettDetails',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
}, {
path: 'refundListDetail',
component: () => import('@/views/financeManagement/refundListDetail'),
name: 'refundListDetail',
meta: {
title: '退款详情',
noCache: true,
activeMenu: '/financeManagement/refundListDetail',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'setBatchSett',
component: () => import('@/views/financeManagement/setBatchSett'),
name: 'setBatchSett',
meta: {
title: '批量结算',
noCache: true,
activeMenu: '/financeManagement/setBatchSett',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
}
]
},
{
path: '/Ordermanagement',
component: Layout,
redirect: '/Ordermanagement/Orderlist',
name: 'Ordermanagement',
alwaysShow: true, // 一直显示根路由
meta: { title: '订单管理', icon: 'el-icon-tickets' },
children: [
{
path: 'Orderlist',
name: 'Orderlist',
component: () => import('@/views/Ordermanagement/Orderlist'),
meta: {
title: '订单列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'details',
name: 'details',
component: () => import('@/views/Ordermanagement/components/details'),
meta: {
title: '订单详情',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'logistics',
name: 'logistics',
component: () => import('@/views/Ordermanagement/components/logistics'),
meta: {
title: '订单详情',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 自选订单列表
{
path: '/Ordermanagement/optionalOrderList',
name: 'OrdermanagementOptionalOrderList',
component: () => import('@/views/Ordermanagement/optionalOrderList'),
meta: {
title: '自选礼品册订单',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 查看详细请
{
path: '/Ordermanagement/optionalOrderList/optionalOrderLook/:lookId',
name: 'OrdermanagementOptionalOrderListOptionalOrderLook',
component: () => import('@/views/Ordermanagement/optionalOrderList/optionalOrderLook'),
meta: {
title: '订单详细请',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 礼包物流信息
{
path: '/Ordermanagement/optionalOrderList/logisticsInfo/:orderId',
name: 'OrdermanagementOptionalOrderListLogisticsInfo',
component: () => import('@/views/Ordermanagement/optionalOrderList/logisticsInfo'),
meta: {
title: '查看物流信息',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 正常售后处理工单 订单页 /:orderId
{
path: '/Ordermanagement/optionalOrderList/saleOrder/:orderId',
name: 'OrdermanagementOptionalOrderListSaleOrder',
component: () => import('@/views/Ordermanagement/optionalOrderList/saleOrder'),
meta: {
title: '售后处理工单',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
}
]
},
{
path: '/distributionManagement',
component: Layout,
redirect: '/distributionManagement/channelList',
name: 'distributionManagement',
alwaysShow: true, // 一直显示根路由
meta: { title: '渠道分销管理', icon: 'el-icon-s-goods' },
children: [
{
path: 'channelList',
name: 'channelList',
component: () => import('@/views/distributionManagement/channelList'),
meta: {
title: '渠道商列表',
keepAlive: false // 不需要被缓存的组件
}
}, {
path: 'shopList',
name: 'shopList',
component: () => import('@/views/distributionManagement/shopList'),
meta: {
title: '分销商品列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'editchanneList',
component: () => import('@/views/distributionManagement/editchanneList'),
name: 'editchanneList',
meta: {
title: '渠道商',
noCache: true,
activeMenu: '/distributionManagement/editchanneList',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
}, {
path: 'details',
component: () => import('@/views/distributionManagement/details'),
name: 'details',
meta: {
title: '详细信息',
noCache: true,
activeMenu: '/distributionManagement/details',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'ByPartner',
component: () => import('@/views/distributionManagement/ByPartner'),
name: 'ByPartner',
meta: {
title: '绑定用户列表',
noCache: true,
activeMenu: '/distributionManagement/ByPartner',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'GoodsDistribution',
component: () => import('@/views/distributionManagement/GoodsDistribution'),
name: 'GoodsDistribution',
meta: {
title: '新增分销商品',
noCache: true,
activeMenu: '/distributionManagement/GoodsDistribution',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
}
]
},
{
path: '/articleManagement',
component: Layout,
redirect: '/articleManagement/articleStateList',
name: 'articleManagement',
alwaysShow: true, // 一直显示根路由
meta: { title: '文章管理', icon: 'example' },
children: [
{
path: 'articleList',
name: 'articleList',
component: () => import('@/views/articleManagement/articleList'),
meta: {
title: '文章列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'articleStateList',
name: 'articleStateList',
component: () => import('@/views/articleManagement/articleStateList'),
meta: {
title: '文章分类列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'uploadArticles',
name: 'uploadArticles',
component: () => import('@/views/articleManagement/uploadArticles'),
meta: {
title: '新增文章',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'addArticleClassification',
name: 'addArticleClassification',
component: () => import('@/views/articleManagement/addArticleClassification'),
meta: {
title: '新增文章分类',
keepAlive: false, // 不需要被缓存的组件
// 点击文章进入文章详情页,这时候路由为/article/1但你想在侧边栏高亮文章列表的路由就可以进行如下设置
activeMenu: '/articleManagement/articleStateList'
},
hidden: true
}
]
},
{
path: '/setup',
component: Layout,
redirect: '/setup/setup',
name: 'settup',
alwaysShow: true, // 一直显示根路由
meta: { title: '设置', icon: 'el-icon-s-tools' },
children: [
{
path: 'userlist',
name: 'userlist',
component: () => import('@/views/setup/userlist'),
meta: {
title: '账号列表',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'userDetails',
name: 'userDetails',
component: () => import('@/views/setup/userDetails'),
meta: {
title: '账户详情',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'permissionsList',
name: 'permissionsList',
component: () => import('@/views/setup/permissionsList'),
meta: {
title: '角色权限',
keepAlive: false // 不需要被缓存的组件
}
},
]
},
{
path: '/indexSetup',
component: Layout,
redirect: '/indexSetup/indexBanner',
name: 'indexSetup',
alwaysShow: true, // 一直显示根路由
meta: { title: '页面管理', icon: 'el-icon-s-tools' },
children: [
// banner列表页面
{
path: 'indexBanner',
name: 'indexBanner',
component: () => import('@/views/indexSetup/indexBanner'),
meta: {
title: '轮播图配置',
keepAlive: false, // 不需要被缓存的组件
activeMenu: '/indexSetup/indexBanner',
}
},
// 新增banner页面
{
path: 'addBanner',
name: 'indexSetupAddBanner',
component: () => import('@/views/indexSetup/addBanner/index'),
meta: {
title: '新增banner',
keepAlive: false,// 不需要被缓存的组件
activeMenu: '/indexSetup/indexBanner',
}
},
// 查看页面
{
path: '/indexSetup/look/:lookId/:type/:pathName',
name: 'indexSetupLookBanner',
component: () => import('@/views/indexSetup/addBanner/index'),
meta: {
title: '查看banner',
activeMenu: '/indexSetup/indexBanner',
}
},
// 编辑页面
{
path: '/indexSetup/edit/:editId/:type/:pathName',
name: 'indexSetupEditBanner',
component: () => import('@/views/indexSetup/addBanner/index'),
meta: {
title: '编辑banner',
activeMenu: '/indexSetup/indexBanner',
}
},
// 首页商品主推区配置
{
path: '/indexSetup/goodsConfig',
name: 'indexSetupGoodsConfig',
component: () => import('@/views/indexSetup/goodsConfig/index'),
meta: {
title: '首页商品区配置',
}
},
// 设置主推商品
{
path: '/indexSetup/setGoodsConfig',
name: 'indexSetupSetGoodsConfig',
component: () => import('@/views/indexSetup/goodsConfig/setGoodsConfig/index'),
meta: {
title: '设置主推商品',
}
},
// 查看主推商品
{
path: '/indexSetup/lookGoodsConfig/:lookId',
name: 'indexSetupLookGoodsConfig',
component: () => import('@/views/indexSetup/goodsConfig/setGoodsConfig/index'),
meta: {
title: '查看主推商品',
}
},
// 导航按钮配置
{
path: '/indexSetup/iconBtn',
name: 'indexSetupIconBtn',
component: () => import('@/views/indexSetup/iconBtn/index'),
meta: {
title: '首页商品区配置',
}
},
// 导航查看
{
path: '/indexSetup/lookBtn/:look/:pathName',
name: 'indexSetupLookBtn',
component: () => import('@/views/indexSetup/iconBtn/editBtn/index'),
meta: {
title: '编辑导航按钮',
activeMenu: '/indexSetup/iconBtn',
keepAlive: false,// 不需要被缓存的组件
}
},
// 导航按钮编辑
{
path: '/indexSetup/editBtn/:edit/:pathName',
name: 'indexSetupEditBtn',
component: () => import('@/views/indexSetup/iconBtn/editBtn/index'),
meta: {
title: '编辑导航按钮',
activeMenu: '/indexSetup/iconBtn',
keepAlive: false,// 不需要被缓存的组件
}
}
]
},
{
path: '/seckillTime',
component: Layout,
redirect: '/seckillTime/seckillTime',
name: 'seckillTime',
alwaysShow: true, // 一直显示根路由
meta: { title: '营销玩法', icon: 'el-icon-s-goods' },
children: [
{
path: 'seckillIndex',
name: 'seckillIndex',
component: () => import('@/views/seckillTime/seckillIndex'),
meta: {
title: '限时秒杀',
keepAlive: false // 不需要被缓存的组件
},
},
{
path: 'seckillDetails',
name: 'seckillDetails',
component: () => import('@/views/seckillTime/seckillDetails'),
meta: {
title: '限时秒杀详情',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'seckillCoupon',
name: 'seckillCoupon',
component: () => import('@/views/seckillTime/seckillCoupon'),
meta: {
title: '优惠卷',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'couponDetails',
name: 'couponDetails',
component: () => import('@/views/seckillTime/couponDetails'),
meta: {
title: '满减卷',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'getCouponlist',
name: 'getCouponlist',
component: () => import('@/views/seckillTime/getCouponlist'),
meta: {
title: '已领取优惠卷列表',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'boutique',
name: 'boutique',
component: () => import('@/views/activity/boutique/boutique'),
meta: {
title: '严选精品',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'giftCardList/giftCardList',
name: 'giftCardList/giftCardList',
component: () => import('@/views/seckillTime/giftCardList/giftCardList'),
meta: {
title: '礼品卡',
keepAlive: false // 不需要被缓存的组件
}
},
{
path: 'giftCardList/giftCardItemList',
name: 'giftCardList/giftCardItemList',
component: () => import('@/views/seckillTime/giftCardList/giftCardItemList'),
meta: {
title: '礼品卡列表',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'giftCardList/consumption',
name: 'giftCardList/consumption',
component: () => import('@/views/seckillTime/giftCardList/consumption'),
meta: {
title: '礼品卡消费记录',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
{
path: 'giftCardList/giftCardDetails',
name: 'giftCardList/giftCardDetails',
component: () => import('@/views/seckillTime/giftCardList/giftCardDetails'),
meta: {
title: '礼品卡详情',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 自选礼包列表
{
path: '/giftCardList/optionalList',
name: 'giftCardListOptionalList',
component: () => import('@/views/seckillTime/optionalList/index'),
meta: {
title: '自选礼品册列表',
keepAlive: false // 不需要被缓存的组件
}
},
// 新增编辑自选礼包
{
path: '/giftCardList/addOrEditOptional',
name: 'giftCardListAddOrEditOptional',
component: () => import('@/views/seckillTime/optionalList/addOrEditOptional/index'),
meta: {
title: '新增自选礼品册',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 编辑自选礼包
{
path: '/giftCardList/EditOptional/:packId',
name: 'giftCardListEditOptional',
component: () => import('@/views/seckillTime/optionalList/addOrEditOptional/index'),
meta: {
title: '编辑自选礼品册',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 查看礼包
{
path: '/giftCardList/lookOptional/:lookId',
name: 'giftCardListLookOptional',
component: () => import('@/views/seckillTime/optionalList/addOrEditOptional/index'),
meta: {
title: '查看自选礼品册',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 卡密详情页
{
path: '/giftCardList/carInfo/:packId',
name: 'giftCardListCarInfo',
component: () => import('@/views/seckillTime/optionalList/carInfo/index'),
meta: {
title: '查看卡密信息',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 满额活动
{
path: 'fullMinus',
name: 'fullMinus',
component: () => import('@/views/fullMinus/fullMinus'),
meta: {
title: '满额活动',
keepAlive: false // 不需要被缓存的组件
}
},
// 新建满额活动
{
path: 'fullMinus/fullMinusGetAdd',
name: 'fullMinusGetAdd',
component: () => import('@/views/fullMinus/fullMinusGetAdd'),
meta: {
title: '满额活动',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 编辑满额活动
{
path: 'fullMinus/fullMinusGetAdd/:pickId',
name: 'fullMinusGetEdit',
component: () => import('@/views/fullMinus/fullMinusGetAdd'),
meta: {
title: '满额活动',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 查看满额活动
{
path: 'fullMinus/fullMinusSee/:pickId',
name: 'fullMinusSee',
component: () => import('@/views/fullMinus/fullMinusSee'),
meta: {
title: '满额活动',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
// 添加商品
{
path: 'fullMinus/fullMinusAddGoods',
name: 'fullMinusAddGoods',
component: () => import('@/views/fullMinus/fullMinusAddGoods'),
meta: {
title: '满额活动',
keepAlive: false // 不需要被缓存的组件
},
hidden: true
},
]
},
// 404页必须放在末尾
// { path: '*', redirect: '/404', hidden: true }
]
const router = new VueRouter({
routes
// scrollBehavior(to,from,savePosition){
// if(savePosition){
// //解决页面从列表页跳转到详情页返回,初始在原来位置
// return savePosition
// }else{
// //解决页面跳转后页面高度和前一个页面高度一样
// return {x:0,y:0}
// }
// }
})
export default router

@ -0,0 +1,35 @@
module.exports = {
title: '戎归精选总后台',
/**
* @type {boolean} true | false
* @description Whether show the settings right-panel
*/
showSettings: true,
/**
* @type {boolean} true | false
* @description Whether need tagsView
*/
tagsView: true,
/**
* @type {boolean} true | false
* @description Whether fix the header
*/
fixedHeader: false,
/**
* @type {boolean} true | false
* @description Whether show the logo in sidebar
*/
sidebarLogo: false,
/**
* @type {string | array} 'production' | ['production', 'development']
* @description Need show err logs component.
* The default is only used in the production env
* If you want to also use it in dev, you can pass ['production', 'development']
*/
errorLog: 'production'
}

@ -0,0 +1,13 @@
const getters = {
sidebar: state => state.app.sidebar,
device: state => state.app.device,
userID: state => state.user.userID,
adminName: state => state.user.adminName,
userName:state=>state.user.userName,
detailsList: state => state.commoditydetails.detailsList,
goodsID: state => state.goods.goodsID,
goodstate: state => state.goods.goodstate,
GoodsDetails: state => state.goods.GoodsDetails
}
export default getters

@ -0,0 +1,30 @@
import Vue from 'vue'
import Vuex from 'vuex'
import getters from './getters'
import app from './modules/app'
import settings from './modules/settings'
import user from './modules/user'
import goods from './modules/goods'
import province from './modules/province'
import commoditydetails from './modules/commoditylistdetails'
import Orderlist from './modules/Orderlist'
import partner from './modules/partner'
Vue.use(Vuex)
const store = new Vuex.Store({
modules: {
commoditydetails,
app,
settings,
user,
goods,
Orderlist,
province,
partner
},
getters
})
export default store

@ -0,0 +1,23 @@
const getDefaultState = () => {
return {
code: ''
}
}
const state = getDefaultState()
const mutations = {
GET_CODE: (state, data) => { // 省市县code码
state.code = data
}
}
const actions = {
}
export default {
namespaced: true,
state,
mutations,
actions
}

@ -0,0 +1,48 @@
import Cookies from 'js-cookie'
const state = {
sidebar: {
opened: Cookies.get('sidebarStatus') ? !!+Cookies.get('sidebarStatus') : true,
withoutAnimation: false
},
device: 'desktop'
}
const mutations = {
TOGGLE_SIDEBAR: state => {
state.sidebar.opened = !state.sidebar.opened
state.sidebar.withoutAnimation = false
if (state.sidebar.opened) {
Cookies.set('sidebarStatus', 1)
} else {
Cookies.set('sidebarStatus', 0)
}
},
CLOSE_SIDEBAR: (state, withoutAnimation) => {
Cookies.set('sidebarStatus', 0)
state.sidebar.opened = false
state.sidebar.withoutAnimation = withoutAnimation
},
TOGGLE_DEVICE: (state, device) => {
state.device = device
}
}
const actions = {
toggleSideBar({ commit }) {
commit('TOGGLE_SIDEBAR')
},
closeSideBar({ commit }, { withoutAnimation }) {
commit('CLOSE_SIDEBAR', withoutAnimation)
},
toggleDevice({ commit }, device) {
commit('TOGGLE_DEVICE', device)
}
}
export default {
namespaced: true,
state,
mutations,
actions
}

@ -0,0 +1,20 @@
const state = {
detailsList: []
}
const mutations = {
DETAILS_LIST: (state, device) => {
state.detailsList = device
}
}
const actions = {
details({ commit }, device) {
// console.log(device)
commit('DETAILS_LIST', device)
}
}
export default {
namespaced: true,
state,
mutations,
actions
}

@ -0,0 +1,80 @@
import { $api } from '@/api/api-config' // 接口配置
import request from '@/utils/request'
import Cookies from 'js-cookie'
const getDefaultState = () => {
return {
goodsID: Cookies.get('goodsID') ? Cookies.get('goodsID') : '',
GoodsDetails: [],
goodstate: Cookies.get('goodstate') ? Cookies.get('goodstate') : ''
}
}
const state = getDefaultState()
const mutations = {
RESET_STATE: (state) => {
Object.assign(state, getDefaultState())
},
SET_GOODSID: (state, goodsID) => {
state.goodsID = goodsID
},
SET_GOODSDETAILS: (state, GoodsDetails) => {
state.GoodsDetails = GoodsDetails
},
SET_GOODSTATE: (state, goodstate) => {
state.goodstate = goodstate
}
}
const actions = {
// 获取商品id
addGoods({ commit }, params) {
return new Promise((resolve, reject) => {
request.post($api.addGoods, params).then(response => {
commit('SET_GOODSID', response.goodsID)
Cookies.set('goodsID', response.goodsID)
resolve()
}).catch(error => {
reject(error)
})
})
},
// 编辑商品
editGoods({ commit }, params) {
return new Promise((resolve, reject) => {
request.post($api.editGoods, params).then(response => {
resolve(response)
}).catch(error => {
reject(error)
})
})
},
// 商品列表获取goodid和商品state
Editlist({ commit }, params) {
commit('SET_GOODSID', params.goodsID)
commit('SET_GOODSTATE', params.goodstate)
Cookies.set('goodsID', params.goodsID)
Cookies.set('goodstate', params.goodstate)
},
// 商品详情
getGoodsDetails({ commit }, params) {
return new Promise((resolve, reject) => {
request.post($api.getGoodsDetails, params).then(response => {
// console.log(response)
// commit('SET_GOODSDETAILS', response)
resolve()
}).catch(error => {
reject(error)
})
})
}
}
export default {
namespaced: true,
state,
mutations,
actions
}

@ -0,0 +1,49 @@
import { $api } from '@/api/api-config' // 接口配置
import request from '@/utils/request'
// import Cookies from 'js-cookie'
const getDefaultState = () => {
return {
provinceDetails: []
}
}
const state = getDefaultState()
const mutations = {
}
const actions = {
// 新增渠道商
addPartner({ commit }, params) {
return new Promise((resolve, reject) => {
request.post($api.addPartner, params).then(response => {
// console.log('渠道商')
// console.log(response)
resolve(response)
}).catch(error => {
reject(error)
})
})
},
Details({ commit }, params) {
// return new Promise((resolve, reject) => {
// request.post($api.addPartner, params).then(response => {
// console.log("渠道商")
// console.log(response)
// resolve(response)
// }).catch(error => {
// reject(error)
// })
// })
}
}
export default {
namespaced: true,
state,
mutations,
actions
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save