This commit is contained in:
feng0207
2026-08-11 22:22:10 +08:00
commit 5e312c1266
6985 changed files with 1061169 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
<template>
<div id="app">
<router-view/>
</div>
</template>
<script>
import { on, off } from 'iview/src/utils/dom'
import { setMatchMedia } from 'iview/src/utils/assist'
import { mapMutations } from 'vuex'
setMatchMedia()
export default {
name: 'app',
methods: {
...mapMutations('media', [
'setDevice'
]),
handleWindowResize () {
this.handleMatchMedia()
},
handleMatchMedia () {
const matchMedia = window.matchMedia
if (matchMedia('(max-width: 600px)').matches) {
var deviceWidth = document.documentElement.clientWidth || window.innerWidth;
let css = 'calc(100vw/7.5)'
document.documentElement.style.fontSize = css;
this.setDevice('Mobile')
} else if (matchMedia('(max-width: 992px)').matches) {
this.setDevice('Tablet')
} else {
this.setDevice('Desktop')
}
}
},
mounted () {
on(window, 'resize', this.handleWindowResize)
this.handleMatchMedia()
},
beforeDestroy () {
off(window, 'resize', this.handleWindowResize)
}
}
</script>
<style lang="less">
.size{
width: 100%;
height: 100%;
}
html,body{
.size;
overflow: hidden;
margin: 0;
padding: 0;
}
#app {
.size;
}
</style>
+81
View File
@@ -0,0 +1,81 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/*
* 登录
* */
export function AccountLogin(data) {
return request({
url: '/login',
method: 'post',
data
})
}
/**
* 退出登陆
* @constructor
*/
export function AccountLogout() {
return request({
url: '/setting/admin/logout',
method: 'get'
})
}
/*
* 获取验证码图片
*/
export function captcha_pro() {
return request({
url: '/captcha_pro',
method: 'get'
})
}
/**
* 获取轮播图和logo
*/
export function loginInfoApi() {
return request({
url: '/login/info',
method: 'get'
})
}
/**
* 获取菜单数据
*/
export function menusApi() {
return request({
url: '/menus',
method: 'get'
})
}
/**
* 搜索菜单数据
*/
export function menusListApi() {
return request({
url: '/menusList',
method: 'get'
})
}
export function AccountRegister() {
}
+60
View File
@@ -0,0 +1,60 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
export function ajCaptcha(params){
return request({
url:'ajcaptcha',
method:'get',
params:params
});
}
export function ajCaptchaCheck(data){
return request({
url:'ajcheck',
method:'post',
data:data
});
}
/**
* @description 表格--删除
* @param {Number} param id {Number} 配置id
*/
export function tableDelApi (data) {
return request({
url: data.url,
method: data.method,
data: data.ids,
kefu:data.kefu || ''
})
}
/**
* 获取消息提醒
*/
export function jnoticeRequest () {
return request({
url: 'jnotice',
method: 'GET'
})
}
/**
* 获取logo
*/
export function getLogo () {
return request({
url: 'logo',
method: 'GET'
})
}
+70
View File
@@ -0,0 +1,70 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/**
* @description 首页订单图表
*/
export function orderApi (params) {
return request({
url: 'home/order',
method: 'get',
params
})
}
/**
* @description 首页订单图表
*/
export function userApi () {
return request({
url: 'home/user',
method: 'get'
})
}
/**
* @description 首页统计
*/
export function sumApi () {
return request({
url: 'chart/sum',
method: 'get'
})
}
/**
* @description 首页统计图表
*/
export function charApi (params) {
return request({
url: 'chart',
method: 'get',
params
})
}
/**
* @description 首页商品交易额排行
*/
export function rankApi () {
return request({
url: 'home/rank',
method: 'get'
})
}
export function checkAuth () {
return request({
url: 'check_auth',
method: 'get'
})
}
+770
View File
@@ -0,0 +1,770 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
export function getKefuInfo() {
return request({
url: '/service/info',
method: 'get',
kefu: true
});
}
export function getAuthReply(params) {
return request({
url: '/service/auth_reply',
method: 'get',
params,
kefu: true
});
}
export function saveAuthReply(id, data) {
return request({
url: '/service/auth_reply/' + id,
method: 'post',
data,
kefu: true
});
}
export function updateAuthReply(value) {
return request({
url: '/service/auth_reply/' + value,
method: 'put',
kefu: true
});
}
/*
* 登录
* */
export function AccountLogin(data) {
return request({
url: '/login',
method: 'post',
data,
kefu: true
});
}
/**
* 获取左侧客服聊天用户列表
* @constructor
*/
export function record(params) {
return request({
url: '/user/record',
method: 'get',
params,
kefu: true
});
}
/**
* 获取左侧用户详情
* @constructor
*/
export function userInfo(id) {
return request({
url: '/user/info/' + id,
method: 'get',
kefu: true
});
}
/**
* 获取左侧用户订单列表
* @constructor
*/
export function getorderList(id, params) {
return request({
url: '/order/list/' + id,
method: 'get',
params,
kefu: true
});
}
/**
* 客服订单发货
* @constructor
*/
export function orderDelivery(id, data) {
return request({
url: '/order/delivery/' + id,
method: 'post',
data,
kefu: true
});
}
/**
* 一键改价
*/
export function editPriceApi(id, data) {
return request({
url: `/order/update/${id}`,
method: 'put',
data,
kefu: true
})
}
/**
* 客服订单改价
* @constructor
*/
export function orderEdit(id) {
return request({
url: 'order/edit/' + id,
method: 'get',
kefu: true
});
}
/**
* 客服订单退款表单
* @constructor
*/
export function orderRecord(id) {
return request({
url: 'order/refund_form/' + id,
method: 'get',
kefu: true
});
}
/**
* 客服订单退款
* @constructor
*/
export function orderRefundApi(data) {
return request({
url: 'order/refund',
method: 'post',
data,
kefu: true
});
}
/**
* 商品购买记录
* @constructor
*/
// export function productCart(uid, params) {
// return request({
// url: 'product/cart/' + uid,
// method: 'get',
// params,
// kefu: true
// });
// }
/**
* 商品足记
* @constructor
*/
export function productVisit(uid, params) {
return request({
url: 'product/visit/' + uid,
method: 'get',
params,
kefu: true
});
}
/**
* 热销商品
* @constructor
*/
export function productHot(uid, params) {
return request({
url: 'product/hot/' + uid,
method: 'get',
params,
kefu: true
});
}
/**
* 客服话术
* @constructor
*/
export function speeChcraft(params) {
return request({
url: 'service/speechcraft',
method: 'get',
params,
kefu: true
});
}
/**
* 客服转接列表
* @constructor
*/
export function transferList(params) {
return request({
url: 'service/transfer_list',
method: 'get',
params,
kefu: true
});
}
/**
* 客服转接列表
* @constructor
*/
export function serviceTransfer(params) {
return request({
url: 'service/transfer',
method: 'post',
params,
kefu: true
});
}
/**
* 客服用户标签
* @constructor
*/
export function userLabel(id) {
return request({
url: `user/label?id=${id}`,
method: 'get',
kefu: true
});
}
/**
* 客服用户标签更新
* @constructor
*/
export function userLabelPut(id, data) {
return request({
url: `user/label/${id}`,
method: 'put',
data,
kefu: true
});
}
/**
* 客服用户聊天列表
* @constructor
*/
export function serviceList(params) {
return request({
url: `service/list`,
method: 'get',
params,
kefu: true
});
}
/**
* 退出登录
* @constructor
*/
export function AccountLogoutKefu() {
return request({
url: `user/logout`,
method: 'post',
kefu: true
});
}
/**
* 获取扫码登录凭证
* @constructor
*/
export function getSanCodeKey() {
return request({
url: `/key`,
method: 'get',
kefu: true
});
}
/**
* 商品详情
* @constructor
*/
export function productInfo(id) {
return request({
url: `product/info/${id}`,
method: 'get',
kefu: true
});
}
/**
* 获取轮播图和logo
*/
export function loginInfoApi() {
return request({
url: '/login/info',
method: 'get',
kefu: true
});
}
/**
* 订单备注
*/
export function orderRemark(data) {
return request({
url: '/order/remark',
method: 'post',
data,
kefu: true
});
}
/**
* 订单详情
*/
export function orderInfo(id) {
return request({
url: '/order/info/' + id,
method: 'get',
kefu: true
});
}
/**
* 物流公司
*/
export function orderExport() {
return request({
url: '/order/export',
method: 'get',
kefu: true
});
}
/**
* 快递公司模板
*/
export function orderTemp(params) {
return request({
url: '/order/temp',
method: 'get',
params,
kefu: true
});
}
/**
* 获取配送员列表
*/
export function orderDeliveryAll() {
return request({
url: '/order/delivery_all',
method: 'get',
kefu: true
});
}
/**
* 获取发货人员
*/
export function getSender() {
return request({
url: '/order/delivery_info',
method: 'get',
kefu: true
});
}
/**
* 获取话术分类
*/
export function serviceCate(params) {
return request({
url: '/service/cate',
method: 'get',
params,
kefu: true
});
}
/**
* 修改话术
*/
export function serviceCateUpdate(id, params) {
return request({
url: 'service/speechcraft/' + id,
method: 'PUT',
params,
kefu: true
});
}
/**
* 添加话术
*/
export function addSpeeChcraft(data) {
return request({
url: 'service/speechcraft',
method: 'post',
data,
kefu: true
});
}
/**
* 添加分类
*/
export function addServiceCate(data) {
return request({
url: 'service/cate',
method: 'post',
data,
kefu: true
});
}
/**
* 修改分类
*/
export function editServiceCate(id, params) {
return request({
url: 'service/cate/' + id,
method: 'PUT',
params,
kefu: true
});
}
/**
* 扫码登录情况
*/
export function scanStatus(key, params) {
return request({
url: 'scan/' + key,
method: 'get',
params,
kefu: true
});
}
/**
* 扫码核销
*/
export function orderVerificApi(id) {
return request({
url: `/order/verific/${id}`,
method: 'get',
kefu: true
});
}
/**
* 客服用户分组
* @constructor
*/
export function userGroupApi() {
return request({
url: `user/group`,
method: 'get',
kefu: true
});
}
/**
* 客服设置用户分组
* @constructor
*/
export function putGroupApi(uid, id) {
return request({
url: `user/group/${uid}/${id}`,
method: 'put',
kefu: true
});
}
/**
* 客服配置
* @constructor
*/
export function kefuConfig() {
return request({
url: `config`,
method: 'get',
kefu: true
});
}
/**
* 客户端 随机客服
* @constructor
*/
export function serviceListApi(params) {
return request({
url: `tourist/user`,
method: 'get',
params,
kefu: true
});
}
/**
* 客户端 广告位
* @constructor
*/
export function getAdvApi() {
return request({
url: `tourist/adv`,
method: 'get',
kefu: true
});
}
/**
* 客户端 聊天记录
* @constructor
*/
export function chatListApi(params) {
return request({
url: `tourist/chat`,
method: 'get',
params,
kefu: true
});
}
/**
* 客户端 客服反馈
* @constructor
*/
export function feedbackDataApi() {
return request({
url: `tourist/feedback`,
method: 'get',
kefu: true
});
}
/**
* 客户端 反馈提示语
* @constructor
*/
export function feedbackFromApi(data) {
return request({
url: `tourist/feedback`,
method: 'post',
data,
kefu: true
});
}
/**
* 客户端 游客获取用户订单号
* @constructor
*/
export function getOrderApi(order_id, params) {
return request({
url: `tourist/order/${order_id}`,
method: 'get',
params,
kefu: true
});
}
/**
* 客户端 商品详情
* @constructor
*/
export function productApi(id) {
return request({
url: `tourist/product/${id}`,
method: 'get',
kefu: true
});
}
/*
客户端,个人中心
*/
export function kefuUserInfo() {
return request({
url: 'user/userInfo',
method: 'get',
kefu: true
})
}
/*
客户端,修改客服信息
*/
export function userUserInfo(data) {
return request({
url: 'user/userInfo',
method: 'put',
kefu: true,
data
})
}
/*
客户端,查询客服广告
*/
export function userRecord(params) {
return request({
url: 'user/record',
method: 'get',
mobile: true,
params
})
}
/*
客户端,提交反馈,get 查询并展示广告
*/
export function serviceFeedback() {
return request({
url: `service/feedback`,
method: 'get',
mobile: true
})
}
/*
客户端,提交用户反馈
*/
export function serviceFeedbackPost(data) {
return request({
url: 'service/feedback',
method: 'post',
mobile: true,
data
})
}
/*
客户端 上传图片
*/
export function serviceUpload(data) {
return request({
url: 'service/upload',
method: 'post',
mobile: true,
data
})
}
/*
客户端 获取图文信息
*/
export function serviceCache(key) {
return request({
url: `service/cache/${key}`,
method: 'get',
mobile: true
})
}
/*
客户端 获取token接口
*/
export function adminAppCustomer() {
return request({
url: '/app',
method: 'get'
})
}
/*
重置token
*/
export function appReset(id) {
return request({
url: `/app/reset/${id}`,
method: 'put'
})
}
/*
获取客服广告
*/
export function serviceAdv() {
return request({
url: '/service/adv',
method: 'get',
mobile: true
})
}
/*
修改用户信息
*/
export function updateUserData(userId, data) {
return request({
url: `user/updateUser/${userId}`,
method: 'put',
kefu: true,
data
})
}
/**
* 网站统计
* @param {*} data
* @returns
*/
export function userStatistics(data) {
return request({
url: 'user/statistics',
method: 'post',
mobile: true,
data
})
}
/**
* 客服端发送消息
* @param data
*/
export function sendMessage(data) {
return request({
url: 'service/send_message',
method: 'post',
kefu: true,
data
});
}
/**
* 网络请求监听
* @param type
*/
export function netWorkPing(type = false) {
return request({
url: 'service/ping',
mobile: type === false,
kefu: type,
method: 'get',
timeout: 1000,
});
}
+36
View File
@@ -0,0 +1,36 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/**
* 客服详细信息
* @constructor
*/
export function serviceInfo() {
return request({
url: 'service/info',
method: 'get',
kefu: true
});
}
/**
* 用户端发送消息
* @param data
*/
export function sendMessageMobile(data) {
return request({
url: 'service/send_message',
method: 'post',
mobile: true,
data
});
}
+974
View File
@@ -0,0 +1,974 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/**
* @description 设置 系统设置 应用设置头部
* @param {Object} param data {Object} 传值参数 type类型
*/
export function headerListApi(data) {
return request({
url: 'setting/config/header_basics',
method: 'get',
params: data
})
}
/**
* @description 设置 系统设置 应用设置 编辑表单
* @param {Object} param data {Object} 传值参数 type类型
*/
export function dataFromApi(data, url) {
return request({
url: url,
method: 'get',
params: data
})
}
/**
* @description 设置 短信设置 列表
* @param {Object} param params {Object} 传值参数
*/
export function tempListApi(params) {
return request({
url: params.url,
method: 'get',
params: params.data
})
}
/**
* @description 设置 短信设置 申请模板表单
* @param {Object} param data {Object} 传值参数 type类型
*/
export function tempCreateApi() {
return request({
url: 'notify/sms/temp/create',
method: 'get'
})
}
/**
* @description 设置 短信设置 登录
* @param {Object} param data {Object} 传值参数
*/
export function configApi(data) {
return request({
url: 'serve/login',
method: 'post',
data
});
}
/**
* @description 设置 短信 修改密码
*/
export function serveModifyApi(data) {
return request({
url: 'serve/modify',
method: 'post',
data
});
}
/**
* @description 设置 短信 修改手机号
*/
export function updateHoneApi(data) {
return request({
url: 'serve/update_phone',
method: 'post',
data
});
}
/**
* @description 设置 短信设置 修改账户密码
* @param {Object} param data {Object} 传值参数
*/
// export function configApi (data) {
// return request({
// url: 'notify/sms/config',
// method: 'post',
// data
// });
// }
/**
* @description 设置 短信设置 发送验证码
* @param {Object} param data {Object} 传值参数
*/
export function captchaApi(data) {
return request({
url: 'serve/captcha',
method: 'post',
data
});
}
/**
* @description 验证验证码
* @param {Object} param data {Object} 传值参数
*/
export function checkCaptchaApi(data) {
return request({
url: 'serve/checkCode',
method: 'post',
data
});
}
/**
* @description 设置 短信设置 注册
* @param {Object} param data {Object} 传值参数
*/
export function registerApi(data) {
return request({
url: 'serve/register',
method: 'post',
data
});
}
/**
* @description 设置 短信设置 短信剩余条数
*/
export function smsNumberApi() {
return request({
url: 'notify/sms/number',
method: 'get'
})
}
/**
* @description 设置 短信设置 平台用户信息
*/
export function serveInfoApi() {
return request({
url: 'serve/info',
method: 'get'
});
}
/**
* @description 修改短信签名
*/
export function serveSign(data) {
return request({
url: 'serve/sms/sign',
method: 'PUT',
data
});
}
/**
* 客服登录
*/
export function kefuLogin(id) {
return request({
url: `chat/kefu/login/${id}`,
method: 'get'
});
}
/*
客服登录页登录
*/
/**
* 客服话术列表
*/
export function wechatSpeechcraft(data) {
return request({
url: `chat/speechcraft`,
method: 'get',
params: data
});
}
/**
* 客服话术编辑
*/
export function speechcraftEdit(id) {
return request({
url: `chat/speechcraft/${id}/edit`,
method: 'get'
});
}
/**
* 客服话术添加
*/
export function speechcraftCreate() {
return request({
url: `chat/speechcraft/create`,
method: 'get'
});
}
/**
* 客服反馈
*/
export function kefuFeedBack(params) {
return request({
url: `chat/feedback`,
method: 'get',
params
});
}
/**
* 客服反馈
*/
export function kefuFeedBackEdit(id) {
return request({
url: `chat/feedback/${id}/edit`,
method: 'get'
});
}
/**
* @description 设置 短信 物流公司
*/
export function exportAllApi() {
return request({
url: 'serve/export_all',
method: 'get'
});
}
/**
* 是否开通电子面单
*/
// export function serveDumpOpen () {
// return request({
// url: `serve/dump_open`,
// method: 'get'
// });
// }
/**
* 物流开通
*/
export function serveOpen() {
return request({
url: `serve/open`,
method: 'get'
});
}
/**
* @description 设置 短信 物流公司面板
*/
export function exportTempApi(params) {
return request({
url: 'serve/export_temp',
method: 'get',
params
});
}
/**
* @description 设置 短信 2= 电子面单,3 = 物流查询 列表
*/
export function serveRecordListApi(params) {
return request({
url: 'serve/record',
method: 'get',
params
});
}
/**
* @description 设置 短信 开通其他服务
*/
export function serveOpnOtherApi(params) {
return request({
url: 'serve/open',
method: 'get',
params
});
}
/**
* @description 设置 短信 开通电子面单
*/
export function serveOpnExpressApi(data) {
return request({
url: 'serve/opn_express',
method: 'post',
data
});
}
/**
* @description 设置 短信 开通短信服务
*/
export function serveSmsOpenApi(params) {
return request({
url: 'serve/sms/open',
method: 'get',
params
});
}
/**
* @description 设置 短信设置 支付套餐
*/
export function smsPriceApi(params) {
return request({
url: 'serve/meal_list',
method: 'get',
params
});
}
/**
* @description 设置 短信设置 支付码
* @param {Object} param data {Object} 传值参数
*/
export function payCodeApi(data) {
return request({
url: 'serve/pay_meal',
method: 'post',
data
});
}
/**
* @description 设置 短信设置 发送记录
*/
export function smsRecordApi(params) {
return request({
url: 'notify/sms/record',
method: 'get',
params
})
}
/**
* @description 门店设置 详情
*/
export function storeApi() {
return request({
url: 'merchant/store',
method: 'GET'
})
}
/**
* @description 门店设置 获取地图key
*/
export function keyApi() {
return request({
url: 'merchant/store/address',
method: 'GET'
})
}
/**
* @description 门店设置 提交数据,
* @param {Object} param data {Object} 传值参数
*/
export function storeAddApi(data) {
return request({
url: `merchant/store/${data.id}`,
method: 'POST',
data
})
}
/**
* @description 设置 物流公司 列表
* @param {Object} param data {Object} 传值参数
*/
// export function freightListApi(params) {
// return request({
// url: 'freight/express',
// method: 'get',
// params
// })
// }
// /**
// * @description 设置 物流公司 新增表单
// */
// export function freightCreateApi () {
// return request({
// url: '/freight/express/create',
// method: 'get'
// })
// }
/**
* @description 设置 物流公司 编辑表单
* @param {Number} param id {Number} 物流公司id
*/
// export function freightEditApi(id) {
// return request({
// url: `freight/express/${id}/edit`,
// method: 'get'
// })
// }
/**
* @description 设置 物流公司 修改状态
* @param {Number} param id {Number} 物流公司id
*/
// export function freightStatusApi(data) {
// return request({
// url: `freight/express/set_status/${data.id}/${data.status}`,
// method: 'PUT'
// })
// }
/**
* @description 同步物流快递公司
*/
// export function freightSyncExpressApi() {
// return request({
// url: `freight/express/sync_express`,
// method: 'get'
// });
// }
/**
* @description 话术分类
*/
export function speechcraftcate() {
return request({
url: `chat/speechcraftcate`,
method: 'get'
});
}
/**
* @description 获取创建分类表单
*/
export function speechcraftcateCreate() {
return request({
url: `chat/speechcraftcate/create`,
method: 'get'
});
}
/**
* @description 修改话术分类(获取表单)
*/
export function speechcraftcateEdit(id) {
return request({
url: `chat/speechcraftcate/${id}/edit`,
method: 'get'
});
}
/**
* @description 设置 身份管理 列表
* @param {Number} param id {Number} 物流公司id
*/
export function roleListApi(params) {
return request({
url: `setting/role`,
method: 'GET',
params
})
}
/**
* @description 设置 身份管理 修改状态
* @param {Object} param data {Object} 传值参数
*/
export function roleSetStatusApi(data) {
return request({
url: `setting/role/set_status/${data.id}/${data.status}`,
method: 'PUT'
})
}
/**
* @description 设置 身份管理 ==新增 编辑
* @param {Object} param data {Object} 传值参数
*/
export function roleCreatApi(data) {
return request({
url: `setting/role/${data.id}`,
method: 'post',
data
})
}
/**
* @description 设置 身份管理 ==详情
* @param {Number} param id {Number} 身份管理id
*/
export function roleInfoApi(id) {
return request({
url: `setting/role/${id}/edit`,
method: 'get'
})
}
/**
* @description 设置 身份管理 ==权限列表
*/
export function menusListApi() {
return request({
url: `setting/role/create`,
method: 'get'
})
}
/**
* @description 设置 客服管理 -- 列表
* @param {Object} param params {Object} 传值参数
*/
export function kefuListApi(params) {
return request({
url: `chat/kefu`,
method: 'get',
params
})
}
/**
* @description 设置 客服管理 -- 选择用户
* @param {Object} param params {Object} 传值参数
*/
export function kefucreateApi(params) {
return request({
url: `chat/kefu/create`,
method: 'get',
params
})
}
/**
* @description 设置 客服管理 -- 添加客服
* @param {Object} param params {Object} 传值参数
*/
export function kefuaddApi() {
return request({
url: `chat/kefu/add`,
method: 'get'
})
}
/**
* @description 设置 客服管理 -- 添加客服保存
* @param {Object} param params {Object} 传值参数
*/
export function kefuAddApi(data) {
return request({
url: `chat/kefu`,
method: 'post',
data
})
}
/**
* @description 设置 客服管理 -- 修改状态
* @param {Object} param data {Object} 传值参数
*/
export function kefusetStatusApi(data) {
return request({
url: `chat/kefu/set_status/${data.id}/${data.status}`,
method: 'PUT'
})
}
/**
* @description 设置 客服管理 -- 编辑表单
* @param {Number} param id {Number} 客服id
*/
export function kefuEditApi(id) {
return request({
url: `chat/kefu/${id}/edit`,
method: 'GET'
})
}
/**
* @description 设置 客服管理 -- 聊天记录列表
* @param {Number} param id {Number} 客服id
* @param {Object} param params {Object} 传参数
*/
export function kefuRecordApi(params, id) {
return request({
url: `chat/kefu/record/${id}`,
method: 'GET',
params
})
}
/**
* @description 设置 客服管理 -- 查看对话列表
* @param {Object} param params {Object} 传参数
*/
export function kefuChatlistApi(params) {
return request({
url: `chat/kefu/chat_list`,
method: 'GET',
params
})
}
/**
* @description 短信设置 -- 查看是否登录
*/
export function isLoginApi() {
return request({
url: `notify/sms/is_login`,
method: 'GET'
})
}
/**
* @description 短信设置 -- 退出登录
*/
export function logoutApi() {
return request({
url: `notify/sms/logout`,
method: 'GET'
})
}
/**
* @description 设置 城市数据 -- 列表
* @param {Object} param data {Object} 传值参数
*/
export function cityListApi(id) {
return request({
url: `setting/city/list/${id}`,
method: 'get'
})
}
/**
* @description 设置 城市添加 -- 表单
* @param {Object} param data {Object} 传值参数
*/
export function cityAddApi(id) {
return request({
url: `setting/city/add/${id}`,
method: 'get'
})
}
/**
* @description 设置 城市修改 -- 表单
* @param {Object} param data {Object} 传值参数
*/
export function cityApi(id) {
return request({
url: `setting/city/${id}/edit`,
method: 'get'
})
}
/**
* @description 设置 运费模板 -- 列表
* @param {Object} param data {Object} 传值参数
*/
// export function templatesApi(data) {
// return request({
// url: `setting/shipping_templates/list`,
// method: 'get',
// params: data
// })
// }
/**
* @description 设置 运费模板 -- 城市数据
*/
export function templatesCityListApi(data) {
return request({
url: `setting/shipping_templates/city_list`,
method: 'get'
})
}
/**
* @description 设置 运费模板 -- 提交修改表单;
*/
export function templatesSaveApi(id, data) {
return request({
url: `setting/shipping_templates/save/${id}`,
method: 'post',
data
})
}
/**
* @description 设置 运费模板 -- 提交修改表单;
*/
export function shipTemplatesApi(id) {
return request({
url: `setting/shipping_templates/${id}/edit`,
method: 'get'
})
}
/**
* @description 门店设置 -- 门店列表分类数量;
*/
export function storeGetHeaderApi() {
return request({
url: `merchant/store/get_header`,
method: 'get'
})
}
/**
* @description 门店设置 -- 门店列表;
*/
export function merchantStoreApi(data) {
return request({
url: `merchant/store`,
method: 'get',
params: data
})
}
/**
* @description 门店设置 -- 门店设置;
*/
export function storeSetShowApi(id, is_show) {
return request({
url: `merchant/store/set_show/${id}/${is_show}`,
method: 'put'
})
}
/**
* @description 门店设置 -- 门店修改信息;
*/
export function storeGetInfoApi(id) {
return request({
url: `merchant/store/get_info/${id}`,
method: 'get'
})
}
/**
* @description 门店设置 -- 店员列表;
*/
export function storeStaffApi(data) {
return request({
url: `merchant/store_staff`,
method: 'get',
params: data
})
}
/**
* @description 门店设置 -- 新增店员;
*/
export function storeStaffCreateApi() {
return request({
url: `merchant/store_staff/create`,
method: 'get'
})
}
/**
* @description 门店设置 -- 新增店员;
*/
export function storeStaffEditApi(id) {
return request({
url: `merchant/store_staff/${id}/edit`,
method: 'get'
})
}
/**
* @description 店员设置 -- 店员设置显示隐藏;
*/
export function storeStaffSetShowApi(id, is_show) {
return request({
url: `merchant/store_staff/set_show/${id}/${is_show}`,
method: 'put'
})
}
/**
* @description 订单设置 -- 核销订单列表;
*/
export function verifyOrderApi(data) {
return request({
url: `merchant/verify_order`,
method: 'get',
params: data
})
}
/**
* @description 订单设置 -- 核销订单头部;
*/
export function verifySpreadInfoApi(uid) {
return request({
url: `merchant/verify/spread_info/${uid}`,
method: 'get'
})
}
/**
* 获取店员搜索门店列表
*/
export function merchantStoreListApi() {
return request({
url: `merchant/store_list`,
method: 'get'
})
}
/**
* 清除城市数据缓存
*/
export function cityCleanCacheApi() {
return request({
url: `setting/city/clean_cache`,
method: 'get'
})
}
/**
* 获取随机客服二维码
* @returns
*/
export function chatQrcode(params) {
return request({
url: 'chat/qrcode',
method: 'get',
params
});
}
/**
* 获取随机客服二维码表单
* @param {*} id
* @returns
*/
export function chatQrcodeForm(id) {
return request({
url: `chat/qrcode/${id}`,
method: 'get'
});
}
/**
* 站点统计
* @param {*} params
* @returns
*/
export function chatStatistics(params) {
return request({
url: 'chat/statistics',
method: 'get',
params
});
}
/**
* 获取客服分组列表
*/
export function kefuGroupListApi() {
return request({
url: 'chat/group',
method: 'get',
});
}
/**
* 获取添加客服分组表单
* @param id
*/
export function kefuCreateGroupApi(id) {
return request({
url: 'chat/group/create/'+id,
method: 'get',
});
}
/**
* 查看所有聊天记录
* @param {*} params
* @returns
*/
export function chatRecord(params) {
return request({
url: 'chat/record',
method: 'get',
params
});
}
/**
* 获取APP升级包列表
* @param {*} params
* @returns
*/
export function settingVerison(params) {
return request({
url: 'setting/verison',
method: 'get',
params
});
}
/**
* 获取创建APP升级包表单
* @param {*} id
* @returns
*/
export function settingVerisonForm(id) {
return request({
url: `setting/verison/${id}`,
method: 'get'
});
}
/**
* 保存APP升级
* @param {*} id
* @returns
*/
export function saveSettingVerison(id) {
return request({
url: `setting/verison/${id}`,
method: 'post'
});
}
/**
*
*/
export function recordKefuApi() {
return request({
url:'chat/record_kefu',
method:'get'
})
}
/**
* 获取聊天用户列表
*/
export function recordUserListApi(params) {
return request({
url:'chat/record/list',
method:'get',
params
})
}
+214
View File
@@ -0,0 +1,214 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/**
* @description 配置分类--列表
* @param {Object} param data {Object} 传值参数
*/
export function classListApi(data) {
return request({
url: 'setting/config_class',
method: 'get',
params: data
})
}
/**
* @description 配置分类--新增表单
* @param {Object} param data {Object} 传值参数
*/
export function classAddApi(data) {
return request({
url: 'setting/config_class/create',
method: 'get'
})
}
/**
* @description 配置分类--编辑表单
* @param {Number} param id {Number} 配置分类id
*/
export function classEditApi(id) {
return request({
url: `setting/config_class/${id}/edit`,
method: 'get'
})
}
/**
* @description 配置分类--修改状态
* @param {Number} param id {Number} 文章id
*/
export function setStatusApi(data) {
return request({
url: `setting/config_class/set_status/${data.id}/${data.status}`,
method: 'PUT'
})
}
/**
* @description 配置--列表
* @param {Object} param data {Object} 传值参数
*/
export function configTabListApi(data) {
return request({
url: 'setting/config',
method: 'get',
params: data
})
}
/**
* @description 配置--新增表单
* @param {Object} param data {Object} 传值参数
*/
export function configTabAddApi(data) {
return request({
url: 'setting/config/create',
method: 'get',
params: data
})
}
/**
* @description 配置--编辑表单
* @param {Number} param id {Number} 配置id
*/
export function configTabEditApi(id) {
return request({
url: `/setting/config/${id}/edit`,
method: 'get'
})
}
/**
* @description 配置--修改状态
* @param {Number} param id {Number} 文章id
*/
export function configSetStatusApi(id, status) {
return request({
url: `setting/config/set_status/${id}/${status}`,
method: 'PUT'
})
}
/**
* @description 组合数据--列表
* @param {Object} param data {Object} 传值参数
*/
export function groupListApi(data) {
return request({
url: 'setting/group',
method: 'get',
params: data
})
}
/**
* @description 组合数据--新增
* @param {Object} param data {Object} 传值参数
*/
export function groupAddApi(data) {
return request({
url: data.url,
method: data.method,
data: data.datas
})
}
/**
* @description 组合数据--详情
* @param {Number} param id {Number} 组合数据id
*/
export function groupInfoApi(id) {
return request({
url: `setting/group/${id}`,
method: 'get'
})
}
/**
* @description 系统日志 -- 搜索条件
*/
export function searchAdminApi(data) {
return request({
url: `system/log/search_admin`,
method: 'GET'
})
}
/**
* @description 系统日志 -- 搜索条件
*/
export function systemListApi(params) {
return request({
url: `system/log`,
method: 'GET',
params
})
}
/**
* @description 获取客服页面广告
* @param data
*/
export function getKfAdv() {
return request({
url: 'setting/get_kf_adv',
method: 'get',
})
}
/**
* @description 设置客服页面广告
* @param data
*/
export function setKfAdv(data) {
return request({
url: 'setting/set_kf_adv',
method: 'post',
data
})
}
/**
* @description 数据配置
* @param data
*/
export function getUserAgreementApi() {
return request({
url: 'setting/get_user_agreement',
method: 'get'
})
}
export function saveUserAgreementApi(data) {
return request({
url: 'setting/set_user_agreement',
method: 'post',
data
})
}
/**
* 获取客服图标上传配置/保存客服图标配置
* @param {*} method
* @param {*} data
* @returns
*/
export function kfIcon(method, data) {
return request({
url: 'setting/config/kefu',
method: method || 'get',
data: data || {}
})
}
+66
View File
@@ -0,0 +1,66 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/**
* @description 列表
* @param {Object} param data {Object} 传值参数
*/
export function adminListApi (data) {
return request({
url: '/setting/admin',
method: 'get',
params: data
})
};
/**
* @description 管理员添加表单
*/
export function adminFromApi () {
return request({
url: '/setting/admin/create',
method: 'get'
})
};
/**
* @description 管理员编辑表单
* @param {Number} param id {Number} 管理员id
*/
export function adminEditFromApi (id) {
return request({
url: `/setting/admin/${id}/edit`,
method: 'get'
})
};
/**
* @description 管理员删除
* @param {Number} param id {Number} 管理员id
*/
export function adminDelFromApi (id) {
return request({
url: `/setting/admin/${id}`,
method: 'DELETE'
})
};
/**
* @description 管理员 修改状态
* @param {Object} param data {Object} 传值
*/
export function setShowApi (data) {
return request({
url: `setting/set_status/${data.id}/${data.status}`,
method: 'PUT'
})
};
+98
View File
@@ -0,0 +1,98 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/**
* @description 权限--列表
* @param {Object} param data {Object} 传值参数
*/
export function getTable (data) {
return request({
url: '/setting/menus',
method: 'get',
params: data
})
};
/**
* 权限 -- 添加
*/
export function addMenus () {
return request({
url: '/setting/menus/create',
method: 'get'
})
};
/**
* 权限 -- 编辑
* @param id
*/
export function editMenus (id) {
return request({
url: '/setting/menus/'+id+'/edit',
method: 'get'
})
};
/**
* @description 添加 编辑
* @param {Object} param data {Object} 集合
* @param {String} param data.url {String} 地址
* @param {String} param data.method {String} 请求方式
* @param {Object} param data.datas {Object} 传值参数
*/
export function addMenusApi (data) {
return request({
url: data.url,
method: data.method,
data: data.datas
})
};
/**
* @description 表单详情
* @param {Number} param id {Number} 规则id
*/
export function menusDetailsApi (id) {
return request({
url: `/setting/menus/${id}`,
method: 'get'
})
};
/**
* @description 修改显示
* @param {Number} param data.id {Number} 规则id
* @param {Number} param data.is_show {Number} 状态值
*/
export function isShowApi (data) {
let datas = {
is_show: data.is_show
}
return request({
url: `/setting/menus/show/${data.id}`,
method: 'put',
data: datas
})
};
/**
* @description 权限列表
*/
export function getRuleList () {
return request({
url: `/setting/ruleList`,
method: 'get'
});
};
+104
View File
@@ -0,0 +1,104 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
/**
* @description 附件分类--列表
* @param {Object} param data {Object} 传值参数
*/
export function getCategoryListApi (data) {
return request({
url: 'file/category',
method: 'get',
params: data
})
}
/**
* @description 添加分类
*/
export function createApi (id) {
return request({
url: 'file/category/create',
method: 'get',
params: id
})
}
/**
* @description 编辑分类
* @param {Number} param id {Number} 分类id
*/
export function categoryEditApi (id) {
return request({
url: `file/category/${id}/edit`,
method: 'get'
})
}
/**
* @description 删除分类
* @param {Number} param id {Number} 分类id
*/
export function categoryDelApi (id) {
return request({
url: `file/category/${id}`,
method: 'DELETE'
})
}
/**
* @description 附件列表
* @param {Object} param data {Object} 传值
*/
export function fileListApi (data) {
return request({
url: 'file/file',
method: 'get',
params: data
})
}
/**
* @description 移动分类,修改附件分类表单
* @param {Object} param data {Object} 传值
*/
export function moveApi (data) {
return request({
url: 'file/file/do_move',
method: 'put',
data
})
}
/**
* @description 修改附件名称
* @param {String} param ids {String} 图片id拼接成的字符串
*/
export function fileUpdateApi (ids,data) {
return request({
url: 'file/file/update/'+ids,
method: 'put',
data
});
}
/**
* @description 删除附件
* @param {String} param ids {String} 图片id拼接成的字符串
*/
export function fileDelApi (ids) {
return request({
url: 'file/file/delete',
method: 'post',
data: ids
})
}
+589
View File
@@ -0,0 +1,589 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/libs/request'
export function getAuthReply(params) {
return request({
url:'chat/reply',
method:'get',
params
})
}
export function saveAuthReply(id,data) {
return request({
url:'chat/reply',
method:'post',
data
})
}
export function getAuthReplyForm(id,params) {
return request({
url:'chat/reply/'+id,
method:'get',
params
})
}
export function deleteAuthReply(id) {
return request({
url:'chat/reply/'+id,
method:'delete',
})
}
/**
* @description 用户管理--列表
* @param {Object} param data {Object} 传值参数
*/
export function userList(data) {
return request({
url: 'user/index',
method: 'get',
params: data
})
}
/**
*
*/
export function getUserLabelAllApi() {
return request({
url: 'user/user_label',
method: 'get',
})
}
/**
* @description 编辑表单数据
* @param {Number} param id {Number} 会员id
*/
export function getUserData(id) {
return request({
url: `user/edit/${id}`,
method: 'get'
})
}
/**
* @description 开关
* @param {Number} param id {Number}
*/
export function memberCard(data) {
return request({
url: `user/member_ship/set_ship_status`,
method: 'get',
params: data
})
}
/**
* @description 会员列表开关
* @param {Number} param id {Number}
*/
export function memberCardStatus(data) {
return request({
url: `user/member_card/set_status`,
method: 'get',
params: data
})
}
/**
* @description 客服管理修改显示
* @param {Object} param data {Object} 传入的状态值,用户id
*/
export function isShowApi(data) {
return request({
url: `chat/kefu/set_status/${data.id}/${data.status}`,
method: 'put'
})
}
/**
* @description 会员等级任务-任务是否达成
* @param {Number} param data.id {Number} 会员等级任务id
* @param {Number} param data.is_must {Number} 会员等级任务是否务必达成
*/
export function setTaskMustApi(data) {
return request({
url: `user/user_level/set_task_must/${data.id}/${data.is_must}`,
method: 'PUT'
})
}
/**
* @description 会员等级任务-新建表单 编辑表单
* @param {Object} param data {Object} 会员等级任务对象传值
*/
export function createTaskApi(data) {
return request({
url: `/user/user_level/create_task`,
method: 'get',
params: data
})
}
/**
* @description 会员等级-创建表单
* @param {Object} param data {Object} 会员等级任务对象传值
*/
export function createApi(id) {
return request({
url: `user/user_level/create`,
method: 'get',
params: id
})
}
/**
* @description 会员管理 --- 赠送会员等级
* @param {Number} param id {Number} 会员id
*/
export function giveLevelApi(id) {
return request({
url: `user/give_level/${id}`,
method: 'get'
})
}
/**
* @description 会员管理 --- 赠送会员时长
* @param {Number} param id {Number} 会员id
*/
export function giveLevelTimeApi(id) {
return request({
url: `user/give_level_time/${id}`,
method: 'get'
})
}
/**
* @description 会员等级-删除
* @param {Number} param id {Number} 会员等级id
*/
export function delLevelApi(id) {
return request({
url: `user/user_level/delete/${id}`,
method: 'PUT'
})
}
/**
* @description 分组-列表
* @param {Object} param data {Object} 传值参数
*/
export function userGroupApi(data) {
return request({
url: 'user/group',
method: 'get',
params: data
})
}
/**
* @description 分组删除 --- 删除分组
* @param {Number} param id {Number} 会员id
*/
export function groupDelApi(id) {
return request({
url: `user/group/${id}`,
method: 'DELETE'
})
}
/**
* @description 添加分组--- 表单
*/
export function groupAddApi() {
return request({
url: `user/group/create`,
method: 'get'
})
}
/**
* @description 修改分组--- 表单
* @param {Number} param id {Number} 分组id
*/
export function groupSaveApi(id) {
return request({
url: `user/group/${id}/edit`,
method: 'get'
})
}
/**
* @description 个人中心 --- 修改密码
* data 请求参数
*/
export function updtaeAdmin(data) {
return request({
url: `setting/update_admin`,
method: 'PUT',
data
})
}
/**
* @description 批量设置分组
* data 请求参数
*/
export function userSetGroup(data, method) {
return request({
url: `user/group/all`,
method: method ? method : 'get',
data
})
}
/**
* @description 批量设置标签
* data 请求参数
*/
export function userLabelApi(data) {
return request({
url: `user/label`,
method: 'get',
params: data
})
}
/**
* @description 获取标签分类(全部)
* data 请求参数
*/
export function userLabelAll(data) {
return request({
url: `user/label/cate`,
method: 'get',
params: data
});
}
/**
* 修改表单分类
* @param id
* @param data
*/
export function userLabelCateEdit(id,data) {
return request({
url: `user/label/cate/${id}`,
method: 'put',
data
});
}
/**
* 添加用户
*/
export function getUserSaveForm() {
return request({
url: `/user/user/create`,
method: 'get'
});
}
/**
* 同步用户
*/
export function userSynchro() {
return request({
url: `/user/user/syncUsers`,
method: 'get'
});
}
/**
* @description 获取用户标签分类编辑表单
* data 请求参数
*/
export function userLabelEdit(id) {
return request({
url: `user/label/cate/${id}/edit`,
method: 'get'
});
}
/**
* @description 获取用户标签分类创建表单
* data 请求参数
*/
export function userLabelCreate(id) {
return request({
url: `user/label/cate/create`,
method: 'get'
});
}
/**
* @description 标签表单
* data 请求参数
*/
export function userLabelAddApi() {
return request({
url: `user/label/create`,
method: 'get'
})
}
/**
* @description 获取修改标签表单
* data 请求参数
*/
export function userUpdateApi(id) {
return request({
url: `user/label/${id}/edit`,
method: 'get'
})
}
/**
* @description 标签表单
* data 请求参数
*/
export function userSetLabelApi(data) {
return request({
url: `user/label/all`,
method: 'get',
data
})
}
/**
* @description 标签表单
* data 请求参数
*/
export function userBatchLabelApi(data) {
return request({
url: `user/batch/label`,
method: 'put',
data
})
}
/**
* @description 获取所有分组
* data 请求参数
*/
export function userGroupAllApi(data) {
return request({
url: `user/group/all`,
method: 'get',
data
})
}
/**
* @description 批量修改用户分组
* data 请求参数
*/
export function userBatchGroupApi(data) {
return request({
url: `user/batch/group`,
method: 'put',
data
})
}
/**
* 批次卡列表
*/
export function userMemberBatch(data) {
return request({
url: '/user/member_batch/index',
method: 'get',
params: data
});
}
/**
* 生成批次卡
* @param {*} id id
*/
export function memberBatchSave(id, data) {
return request({
url: `/user/member_batch/save/${id}`,
method: 'post',
data
});
}
/**
* 列表操作(启用,名称修改)
* @param {*} id id
*/
export function memberBatchSetValue(id, data) {
return request({
url: `/user/member_batch/set_value/${id}`,
method: 'get',
params: data
});
}
/**
* 会员卡列表
* @param {*} id id
*/
export function userMemberCard(id, data) {
return request({
url: `/user/member_card/index/${id}`,
method: 'get',
params: data
});
}
/**
* 会员卡导出
* @param {*} id id
*/
export function exportMemberCard(id) {
return request({
url: `/export/memberCard/${id}`,
method: 'get'
});
}
/**
* 会员类型
*/
export function userMemberShip() {
return request({
url: '/user/member/ship',
method: 'get'
});
}
/**
* 编辑会员类型
* @param {*} id id
* @param {*} data data
*/
export function memberShipSave(id, data) {
return request({
url: `/user/member_ship/save/${id}`,
method: 'post',
data
});
}
/**
* 兑换会员卡二维码
*/
export function userMemberScan() {
return request({
url: '/user/member_scan',
method: 'get'
});
}
/**
* 会员卡记录
*/
export function memberRecord(data) {
return request({
url: '/user/member/record',
method: 'get',
params: data
});
}
/**
* 会员权益
*/
export function memberRight() {
return request({
url: 'user/member/right',
method: 'get'
});
}
/**
* 会员权益编辑
* @param {*} data
*/
export function memberRightSave(data) {
return request({
url: `user/member_right/save/${data.id}`,
method: 'post',
data
})
}
/**
* 编辑会员协议
* @param {*} id
*/
export function memberAgreementSave(id, data) {
return request({
url: `user/member_agreement/save/${id}`,
method: 'post',
data
});
}
/**
* 会员协议
*/
export function memberAgreement() {
return request({
url: `user/member/agreement`,
method: 'get'
});
}
/**
* 获取用户标签
*/
export function getUserLabel(uid) {
return request({
url: `user/label/all`,
method: 'get',
params: { id: uid }
});
}
/**
* 设置用户标签
*/
export function putUserLabel(uid, data) {
return request({
url: `user/batch/label`,
method: 'put',
data
});
}
/**
* 标签移动排序
* @param {*} data
* @returns
*/
export function userLabelMove(data) {
return request({
url: 'user/label/move',
method: 'post',
data
});
}
/**
* 标签分类移动排序
* @param {*} data
* @returns
*/
export function userLabelMoveCate(data) {
return request({
url: 'user/label/move_cate',
method: 'post',
data
});
}
+211
View File
@@ -0,0 +1,211 @@
@font-face {
font-family: 'iconfont';
/* Project id 2661080 */
src: url('//at.alicdn.com/t/font_2661080_f9n59sr1rzs.woff2?t=1626228205751') format('woff2'),
url('//at.alicdn.com/t/font_2661080_f9n59sr1rzs.woff?t=1626228205751') format('woff'),
url('//at.alicdn.com/t/font_2661080_f9n59sr1rzs.ttf?t=1626228205751') format('truetype');
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-kehuxinxi:before {
content: "\e6e3";
}
.icon-rili-pc:before {
content: "\e6e2";
}
.icon-Group-pc:before {
content: "\e6e0";
}
.icon-guanbi-pc:before {
content: "\e6dd";
}
.icon-suoxiao-pc:before {
content: "\e6de";
}
.icon-sanjiaobiao-pc:before {
content: "\e6df";
}
.icon-zhankai-pc:before {
content: "\e6e1";
}
.icon-huashusousuo-pc:before {
content: "\e6d8";
}
.icon-sousuo-pc:before {
content: "\e6dc";
}
.icon-shujutongji-pc:before {
content: "\e6d7";
}
.icon-zaixianzixun-pc:before {
content: "\e6d9";
}
.icon-qushitu-pc:before {
content: "\e6da";
}
.icon-xiaoxi-pc:before {
content: "\e6db";
}
.icon-houtui-pc:before {
content: "\e6d5";
}
.icon-qianjin-pc:before {
content: "\e6d6";
}
.icon-gengduoshuzhuang-pc:before {
content: "\e6d2";
}
.icon-gengduo-pc:before {
content: "\e6d3";
}
.icon-duihao-pc:before {
content: "\e6d1";
}
.icon-tijiaochenggong-pc:before {
content: "\e6d4";
}
.icon-zhanghaomima-pc:before {
content: "\e6cf";
}
.icon-erweima:before {
content: "\e6d0";
}
.icon-bianji-pc:before {
content: "\e6cd";
}
.icon-shanchu-pc:before {
content: "\e6ce";
}
.icon-liaotian-pc:before {
content: "\e6cc";
}
.icon-zhuanjie-pc:before {
content: "\e6c9";
}
.icon-tupian-pc:before {
content: "\e6ca";
}
.icon-biaoqing-pc:before {
content: "\e6cb";
}
.icon-rilitubiao:before {
content: "\e6c8";
}
.icon-xuanzhong:before {
content: "\e6c7";
}
.icon-cha:before {
content: "\e6c6";
}
.icon-xiala:before {
content: "\e6c5";
}
.icon-jinru:before {
content: "\e6c3";
}
.icon-fanhui:before {
content: "\e6c4";
}
.icon-tianjia:before {
content: "\e6c1";
}
.icon-tianjiahuashu:before {
content: "\e6c2";
}
.icon-sousuo:before {
content: "\e6bf";
}
.icon-tupian:before {
content: "\e6be";
}
.icon-zhanghao:before {
content: "\e6bc";
}
.icon-mima:before {
content: "\e6bd";
}
.icon-huashu:before {
content: "\e6b8";
}
.icon-gengduozhankai:before {
content: "\e6b9";
}
.icon-biaoqing:before {
content: "\e6ba";
}
.icon-fasong:before {
content: "\e6bb";
}
.icon-biaoqian:before {
content: "\e6b6";
}
.icon-tuichu:before {
content: "\e6b7";
}
.icon-bianji:before {
content: "\e6b4";
}
.icon-cha-shise:before {
content: "\e6b5";
}
.icon-bianji-xianxing:before {
content: "\e6b2";
}
.icon-shanchu:before {
content: "\e6b3";
}
Binary file not shown.
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 234 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 284 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
+37
View File
@@ -0,0 +1,37 @@
@font-face {font-family: "iconfont";
src: url('iconfont.eot?t=1541579316141'); /* IE9*/
src: url('iconfont.eot?t=1541579316141#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAiEAAsAAAAADmgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFY8eUnXY21hcAAAAYAAAACjAAACLi+YJuBnbHlmAAACJAAABAgAAAcg4dRWHmhlYWQAAAYsAAAAMQAAADYTL8piaGhlYQAABmAAAAAgAAAAJAfdA4xobXR4AAAGgAAAABQAAAAsLAD//2xvY2EAAAaUAAAAGAAAABgImgpGbWF4cAAABqwAAAAfAAAAIAEcAG5uYW1lAAAGzAAAAUUAAAJtPlT+fXBvc3QAAAgUAAAAbgAAAI54roygeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2BkYWCcwMDKwMHUyXSGgYGhH0IzvmYwYuRgYGBiYGVmwAoC0lxTGByeMTx/ytzwv4EhhrmBoRkozAiSAwDuUwzMeJzlkUEKwkAMRd/YabXFhQvxFF6qPYPrUujGY7jyIr1JoZNjtMnEhag3MOEN5MMk8D9QAoVyVSKEJwGrh6oh6wVN1iM3nc+cVImJVKdOehlklElmWdYVstp+ql8VdIv15a1NLW0zFXsO7Kjz3erH/3+rY37vr6kxnx1LKNWOJZlaxxJNnWOpSu+ot8jgqMvI6KjfyOSo88jsaAbI4tBsig89rQB4nLVUTWwbRRSeNzO767i2g7N/FP9s7MRrE5ON4/V6rSZyU0PiINSSNImES4IUoapWz6hEiqiMBDQqEojkAkiFStyKRC+9VSoFCeUEyqESVUAqEkcu3OAQb3hrJxAXwSGI3X0/szPz5vvm2x0i7O/vf8IJe5VkSJnUyUtklRBQJE1VIjRtUafkmk6pSu2ipleh4+xikkKxSksWTUeo8m8NoagpYtoslTmxrLl37z64e33esuJjU8P5Wd262LxoPVnPZ06Pxfe+C0YjkhSJygPhQCA8ABPOykwuN7NyuRvgUnAgLEnhATkaCQQiUe/7XKUyV6nQz+t2o7l66+rs7NVbq82GXTdrdjxjRGU5amTids2bUDMFtzCsqsMYMqr3IDY6OT05GjsI8Exv/6CSkOWEQigh+y3clxY5QVTcEZFIGtHLxDUJs6WsHR1y9SFKdr1HggCp3V1ICYL36OOpVmvKN9bC1u6R3vZ0qwWtVovgJfqOfUvfIYxIWL+fyETHNVJqSkIT1JTjW8ZWh3yDJDz0ctvsyt51etvrg9/QHhqGlzMM+vbmizPnDWPLMNbW19e7tffvsBzL99aWEfBRY46t+tbe3PypXv/IMDYN43WsQBe9HL2NC33RuxABrPsG+xH3o4bVRE2KgCRqulbWNf8W/UYVHM129aKra24VshZkq+CWD/Oy6Xt8cGYEthgHVlVliCfynAlqjo6oysTKlYUAD4docMI5/1ZioN+GwZNBcTwWUmTdBUqhTwX29QebXzF4An4JJMzwfMl+WQ01+IlQZVR4yhie53ycA16pOI/ODiYNGK4MChdCgXNnX5gIJXPCSYnf2OF850aQ+zJIyOs+u8+mMO8jQdwtg1TIWVRjKAnFcslMi8KfGUPoSUCergUyUk77dMyS69Ms6tijKZKYwUGKbpfdzu+iYeZYAHMFiOVi+MD7h9mb99qC0L7X8c+XatMfTj97KZ5IxJt/pd43tYYQKEjAnXMOB6kQEBrwg+LPjindAPOHNdC3q3ait0I3/ZIunZEARLNYNEUA6czSP3N/7j9wz6ZESdX0VNl1zGNS/szbQaQSIGk4DtVPcZf8AgXpf9A2OyTit5s2syZmand46bhEe2WtodLHkvaoqtTXuXN2/c42WADP9HGfbUcUW7JgqHss4xHtlMys679FqUomdP9VJBQBdnlPABBubpuNwqnmQj6/0HwNQzKxDUJFgKiXurBG6dqFjmeBzsvtRPJgGIZThYa5fdOvsReOticPh6JHHXxsv7ItJpOniYPYsmZ/x0QD/o5P105DeQwF6MH33ogoLi+KQp7zpY3HQV5bFMURzheXeds7gpP+jKNXljjHuYvXHke7cdCxLLZf6YX7B63UcCV4nGNgZGBgAOKAN2ZR8fw2Xxm4WRhA4AbHYRMY/f///1oWBuYGIJeDgQkkCgAvWgs2AAAAeJxjYGRgYG7438AQw8Lw/z8DAwsDA1AEBXADAHXiBHJ4nGNhYGBgYfj/nwVM48cATwECKwAAAAAAjAC6AOgBFAGAAf4CbgLqAzgDkHicY2BkYGDgZkhiYGcAASYg5gJCBob/YD4DABOmAYsAeJxlj01OwzAQhV/6B6QSqqhgh+QFYgEo/RGrblhUavdddN+mTpsqiSPHrdQDcB6OwAk4AtyAO/BIJ5s2lsffvHljTwDc4Acejt8t95E9XDI7cg0XuBeuU38QbpBfhJto41W4Rf1N2MczpsJtdGF5g9e4YvaEd2EPHXwI13CNT+E69S/hBvlbuIk7/Aq30PHqwj7mXle4jUcv9sdWL5xeqeVBxaHJIpM5v4KZXu+Sha3S6pxrW8QmU4OgX0lTnWlb3VPs10PnIhVZk6oJqzpJjMqt2erQBRvn8lGvF4kehCblWGP+tsYCjnEFhSUOjDFCGGSIyujoO1Vm9K+xQ8Jee1Y9zed0WxTU/3OFAQL0z1xTurLSeTpPgT1fG1J1dCtuy56UNJFezUkSskJe1rZUQuoBNmVXjhF6XNGJPyhnSP8ACVpuyAAAAHicbYhdDoIwEAb3a6k/YIIX8VArWewmdJFWJOnpJTG+OQ+TzJCjLy39p4ODR4OAA4444YwWHS7U3IVzn6Voldtb8ksHnvohrlqjjmw1rmzXsvdT7fEbblnCmOfNfJIYStJJfGIL27yb6AOCGR89AAA=') format('woff'),
url('iconfont.ttf?t=1541579316141') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
url('iconfont.svg?t=1541579316141#iconfont') format('svg'); /* iOS 4.1- */
}
.iconfont {
font-family:"iconfont" !important;
font-size:16px;
font-style:normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-bear:before { content: "\e600"; }
.icon-resize-vertical:before { content: "\e7c3"; }
.icon-chuizhifanzhuan:before { content: "\e661"; }
.icon-shuipingfanzhuan:before { content: "\e662"; }
.icon-qq:before { content: "\e609"; }
.icon-frown:before { content: "\e77e"; }
.icon-meh:before { content: "\e780"; }
.icon-smile:before { content: "\e783"; }
.icon-man:before { content: "\e7e2"; }
.icon-woman:before { content: "\e7e5"; }
Binary file not shown.
+56
View File
@@ -0,0 +1,56 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<!--
2013-9-30: Created.
-->
<svg>
<metadata>
Created by iconfont
</metadata>
<defs>
<font id="iconfont" horiz-adv-x="1024" >
<font-face
font-family="iconfont"
font-weight="500"
font-stretch="normal"
units-per-em="1024"
ascent="896"
descent="-128"
/>
<missing-glyph />
<glyph glyph-name="bear" unicode="&#58880;" d="M1024 683.008q0-70.656-46.08-121.856 46.08-89.088 46.08-193.536 0-96.256-39.936-181.248t-109.568-147.968-162.816-99.328-199.68-36.352-199.68 36.352-162.304 99.328-109.568 147.968-40.448 181.248q0 104.448 46.08 193.536-46.08 51.2-46.08 121.856 0 37.888 13.824 71.168t37.376 58.368 55.808 39.424 68.096 14.336q43.008 0 78.848-18.432t59.392-50.176q46.08 17.408 96.256 26.624t102.4 9.216 102.4-9.216 96.256-26.624q24.576 31.744 59.904 50.176t78.336 18.432q36.864 0 68.608-14.336t55.296-39.424 37.376-58.368 13.824-71.168zM205.824 268.288q10.24 0 18.944 10.24t15.36 28.672 10.24 42.496 3.584 51.712-3.584 51.712-10.24 41.984-15.36 28.16-18.944 10.24q-9.216 0-17.92-10.24t-15.36-28.16-10.752-41.984-4.096-51.712 4.096-51.712 10.752-42.496 15.36-28.672 17.92-10.24zM512-31.744000000000028q53.248 0 99.84 13.312t81.408 35.84 54.784 52.736 19.968 65.024q0 33.792-19.968 64t-54.784 52.736-81.408 35.84-99.84 13.312-99.84-13.312-81.408-35.84-54.784-52.736-19.968-64q0-34.816 19.968-65.024t54.784-52.736 81.408-35.84 99.84-13.312zM818.176 268.288q10.24 0 18.944 10.24t15.36 28.672 10.24 42.496 3.584 51.712-3.584 51.712-10.24 41.984-15.36 28.16-18.944 10.24q-9.216 0-17.92-10.24t-15.36-28.16-10.752-41.984-4.096-51.712 4.096-51.712 10.752-42.496 15.36-28.672 17.92-10.24zM512 235.51999999999998q39.936 0 68.096-9.728t28.16-24.064-28.16-24.064-68.096-9.728-68.096 9.728-28.16 24.064 28.16 24.064 68.096 9.728z" horiz-adv-x="1024" />
<glyph glyph-name="resize-vertical" unicode="&#59331;" d="M512 896C229.248 896 0 666.752 0 384s229.248-512 512-512 512 229.248 512 512S794.752 896 512 896zM576 192l64 0-128-128-128 128 64 0L448 576l-64 0 128 128 128-128-64 0L576 192z" horiz-adv-x="1024" />
<glyph glyph-name="chuizhifanzhuan" unicode="&#58977;" d="M286.01856 645.08416l472.4224 0 0-146.2784-472.4224 0 0 146.2784ZM87.19872 420.37248l885.80096 0 0-70.87104-885.80096 0 0 70.87104ZM773.55008 268.05248l0-31.0016L270.6688 237.05088l0 31.0016L773.55008 268.05248zM773.55008 121.4208l0-31.0016L270.6688 90.4192l0 31.0016L773.55008 121.4208zM742.54848 240.75776l31.0016 0 0-123.04896-31.0016 0L742.54848 240.75776zM270.70464 240.57856l31.0016 0 0-123.04896-31.0016 0L270.70464 240.57856z" horiz-adv-x="1024" />
<glyph glyph-name="shuipingfanzhuan" unicode="&#58978;" d="M252.76928 596.096l146.2784 0 0-472.42752-146.2784 0 0 472.42752ZM477.48096 810.65472l70.87104 0 0-885.80608-70.87104 0 0 885.80608ZM629.80096 611.2l31.0016 0 0-502.88128-31.0016 0L629.80096 611.2zM776.42752 611.2l31.0016 0 0-502.88128-31.0016 0L776.42752 611.2zM657.09056 580.1984l0 31.0016 123.04896 0 0-31.0016L657.09056 580.1984zM657.27488 108.35456l0 31.0016 123.04896 0 0-31.0016L657.27488 108.35456z" horiz-adv-x="1024" />
<glyph glyph-name="qq" unicode="&#58889;" d="M147.372058 491.394284c-5.28997-13.909921 2.431986-22.698872 0-75.732573-0.682996-14.25092-62.165649-78.762555-86.569511-145.791177-24.192863-66.517625-27.519845-135.978232 9.811944-163.285078 37.419789-27.305846 72.191593 90.879487 76.757567 73.685584 1.961989-7.509958 4.436975-15.317914 7.423958-23.338868a331.945126 331.945126 0 0 1 61.140655-101.162429c5.929967-6.783962-36.009797-19.199892-61.140655-61.99365-25.173858-42.751759 7.209959-120.49032 132.223254-120.49032 161.27909 0 197.288886 56.70368 200.574868 56.447681 12.031932-0.895995 12.841928 0 25.599855 0 15.572912 0 9.129948-1.279993 23.593867 0 7.807956 0.682996 86.186514-67.839617 194.686901-56.447681 184.873956 19.45589 156.586116 81.40754 142.079198 120.48932-15.103915 40.83277-68.692612 59.946662-66.303626 62.549647 44.28775 48.938724 51.285711 79.018554 66.346626 123.9463 6.143965 18.473896 49.066723-101.674426 82.089537-73.685584 13.781922 11.690934 41.301767 60.24566 13.781922 163.285078-27.519845 102.996419-80.767544 126.505286-79.615551 145.791177 2.389987 40.191773 1.023994 68.436614-1.023994 75.732573-9.812945 35.4128-30.378829 27.604844-30.378829 35.4128C858.450044 730.752933 705.10691 896 515.966978 896s-342.398067-165.289067-342.398068-369.192916c0-16.169909-14.378919-4.223976-26.154852-35.4128z" horiz-adv-x="1024" />
<glyph glyph-name="frown" unicode="&#59262;" d="M336 475m-48 0a48 48 0 1 1 96 0 48 48 0 1 1-96 0ZM688 475m-48 0a48 48 0 1 1 96 0 48 48 0 1 1-96 0ZM512 832C264.6 832 64 631.4 64 384s200.6-448 448-448 448 200.6 448 448S759.4 832 512 832z m263-711c-34.2-34.2-74-61-118.3-79.8C611 21.8 562.3 12 512 12c-50.3 0-99 9.8-144.8 29.2-44.3 18.7-84.1 45.6-118.3 79.8-34.2 34.2-61 74-79.8 118.3C149.8 285 140 333.7 140 384s9.8 99 29.2 144.8c18.7 44.3 45.6 84.1 79.8 118.3 34.2 34.2 74 61 118.3 79.8C413 746.2 461.7 756 512 756c50.3 0 99-9.8 144.8-29.2 44.3-18.7 84.1-45.6 118.3-79.8 34.2-34.2 61-74 79.8-118.3C874.2 483 884 434.3 884 384s-9.8-99-29.2-144.8c-18.7-44.3-45.6-84.1-79.8-118.2zM512 363c-85.5 0-155.6-67.3-160-151.6-0.2-4.6 3.4-8.4 8-8.4h48.1c4.2 0 7.8 3.2 8.1 7.4C420 259.9 461.5 299 512 299s92.1-39.1 95.8-88.6c0.3-4.2 3.9-7.4 8.1-7.4H664c4.6 0 8.2 3.8 8 8.4-4.4 84.3-74.5 151.6-160 151.6z" horiz-adv-x="1024" />
<glyph glyph-name="meh" unicode="&#59264;" d="M336 475m-48 0a48 48 0 1 1 96 0 48 48 0 1 1-96 0ZM688 475m-48 0a48 48 0 1 1 96 0 48 48 0 1 1-96 0ZM512 832C264.6 832 64 631.4 64 384s200.6-448 448-448 448 200.6 448 448S759.4 832 512 832z m263-711c-34.2-34.2-74-61-118.3-79.8C611 21.8 562.3 12 512 12c-50.3 0-99 9.8-144.8 29.2-44.3 18.7-84.1 45.6-118.3 79.8-34.2 34.2-61 74-79.8 118.3C149.8 285 140 333.7 140 384s9.8 99 29.2 144.8c18.7 44.3 45.6 84.1 79.8 118.3 34.2 34.2 74 61 118.3 79.8C413 746.2 461.7 756 512 756c50.3 0 99-9.8 144.8-29.2 44.3-18.7 84.1-45.6 118.3-79.8 34.2-34.2 61-74 79.8-118.3C874.2 483 884 434.3 884 384s-9.8-99-29.2-144.8c-18.7-44.3-45.6-84.1-79.8-118.2zM664 331H360c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h304c4.4 0 8 3.6 8 8v48c0 4.4-3.6 8-8 8z" horiz-adv-x="1024" />
<glyph glyph-name="smile" unicode="&#59267;" d="M336 475m-48 0a48 48 0 1 1 96 0 48 48 0 1 1-96 0ZM688 475m-48 0a48 48 0 1 1 96 0 48 48 0 1 1-96 0ZM512 832C264.6 832 64 631.4 64 384s200.6-448 448-448 448 200.6 448 448S759.4 832 512 832z m263-711c-34.2-34.2-74-61-118.3-79.8C611 21.8 562.3 12 512 12c-50.3 0-99 9.8-144.8 29.2-44.3 18.7-84.1 45.6-118.3 79.8-34.2 34.2-61 74-79.8 118.3C149.8 285 140 333.7 140 384s9.8 99 29.2 144.8c18.7 44.3 45.6 84.1 79.8 118.3 34.2 34.2 74 61 118.3 79.8C413 746.2 461.7 756 512 756c50.3 0 99-9.8 144.8-29.2 44.3-18.7 84.1-45.6 118.3-79.8 34.2-34.2 61-74 79.8-118.3C874.2 483 884 434.3 884 384s-9.8-99-29.2-144.8c-18.7-44.3-45.6-84.1-79.8-118.2zM664 363h-48.1c-4.2 0-7.8-3.2-8.1-7.4C604 306.1 562.5 267 512 267s-92.1 39.1-95.8 88.6c-0.3 4.2-3.9 7.4-8.1 7.4H360c-4.6 0-8.2-3.8-8-8.4 4.4-84.3 74.5-151.6 160-151.6s155.6 67.3 160 151.6c0.2 4.6-3.4 8.4-8 8.4z" horiz-adv-x="1024" />
<glyph glyph-name="man" unicode="&#59362;" d="M874 776H622c-3.3 0-6-2.7-6-6v-56c0-3.3 2.7-6 6-6h160.4L583.1 508.7c-50 38.5-111 59.3-175.1 59.3-76.9 0-149.3-30-203.6-84.4S120 356.9 120 280s30-149.3 84.4-203.6C258.7 22 331.1-8 408-8s149.3 30 203.6 84.4C666 130.7 696 203.1 696 280c0 64.1-20.8 124.9-59.2 174.9L836 654.1V494c0-3.3 2.7-6 6-6h56c3.3 0 6 2.7 6 6V746c0 16.5-13.5 30-30 30zM408 68c-116.9 0-212 95.1-212 212s95.1 212 212 212 212-95.1 212-212-95.1-212-212-212z" horiz-adv-x="1024" />
<glyph glyph-name="woman" unicode="&#59365;" d="M909.7 739.4l-42.2 42.2c-3.1 3.1-8.2 3.1-11.3 0L764 689.4l-84.2 84.2c-3.1 3.1-8.2 3.1-11.3 0l-42.1-42.1c-3.1-3.1-3.1-8.1 0-11.3l84.2-84.2-135.5-135.3c-50 38.5-111 59.3-175.1 59.3-76.9 0-149.3-30-203.6-84.4S112 348.9 112 272s30-149.3 84.4-203.6C250.7 14 323.1-16 400-16s149.3 30 203.6 84.4C658 122.7 688 195.1 688 272c0 64.2-20.9 125.1-59.3 175.1l135.4 135.4 84.2-84.2c3.1-3.1 8.2-3.1 11.3 0l42.1 42.1c3.1 3.1 3.1 8.1 0 11.3l-84.2 84.2 92.2 92.2c3.1 3.1 3.1 8.2 0 11.3zM400 60c-116.9 0-212 95.1-212 212s95.1 212 212 212 212-95.1 212-212-95.1-212-212-212z" horiz-adv-x="1024" />
</font>
</defs></svg>

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 755 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 31 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 26 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.4 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1547543883733" class="icon" style="" viewBox="0 0 1272 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="16831" xmlns:xlink="http://www.w3.org/1999/xlink" width="496.875" height="400"><defs><style type="text/css"></style></defs><path d="M729.64116345 165.27693991L634.32650881 90.125l-99.5625 78.52693991-5.17887981 4.16056009 104.74137981 83.50215546 105.09051682-83.50215546-9.77586218-7.53556009z m361.21228445 291.47198236l-456.78879245 360.19396555-456.49784537-359.99030128L110.125 511.12715547l523.93965546 413.11745671 524.23060335-413.35021555-67.44181091-54.14547436z m-456.78879245 29.21120673L385.4784479 290.00646554 318.06573237 344.12284454l315.96982771 249.16810336 316.28987101-249.40086136-67.41271555-54.14547436-248.84806008 196.21551682z" fill="#006cff" p-id="16832"></path></svg>

After

Width:  |  Height:  |  Size: 955 B

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1547543874130" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="16498" xmlns:xlink="http://www.w3.org/1999/xlink" width="400" height="400"><defs><style type="text/css"></style></defs><path d="M511.8 0.6C229.2 0.6 0.1 229.7 0.1 512.3S229.2 1024 511.8 1024s511.7-229.1 511.7-511.7S794.4 0.6 511.8 0.6z m264.9 375.3c-0.1 0.1-0.1 0.2-0.2 0.3h0.2c-9 14.3-21.2 28.8-34.2 39.2-5.2 4.2-10.5 8.3-15.7 12.5v0.5c0.3 22.9-0.3 44.9-4.7 64.2-25.2 113.1-91.9 189.9-197.4 222.8-37.9 11.8-99.1 16.7-142.6 5.9-21.5-5.4-41-11.4-59.3-19.3-10.2-4.5-19.6-9.3-28.5-14.7l-8.8-5.3h0.5l-0.5-0.3c9.8 0.2 21.3 2.9 32.2 1.2 9.8-1.6 19.6-1.2 28.7-3.2 22.7-5 43-11.6 60.4-21.8 8.3-4.8 20.9-10.6 27-17.6-11.2 0.2-21.4-2.4-29.7-5.4-32.6-11.5-51.6-32.7-63.9-64.4h0.1c0-0.1-0.1-0.2-0.1-0.3 9.7 1.1 37.3 3.5 44.6-1.7-12.3-0.8-24.1-7.9-32.5-13.2-26.2-16.4-47.6-43.9-47.4-86.2v-0.3c3.5 1.7 6.9 3.3 10.4 4.9 6.6 2.8 13.3 4.3 21.1 5.9 3.1 0.7 9.3 2.4 13.2 1.4-5.1-5.8-13.2-9.7-18.4-16-14.7-18.3-28.7-45.3-25.2-77.4 0.5-4.7 1.3-9.4 2.6-14.3 2.5-9.7 6.5-18.3 10.8-26.2 0.2 0.1 0.4 0.2 0.5 0.3 2 4.2 6.4 7.2 9.1 10.6 8.6 10.7 19.2 20.3 30 28.7 36.7 28.7 69.9 46.4 123.1 59.5 13.5 3.3 29 5.9 45.1 5.9-1.9-5.8-2.7-13-2.7-20.5 0-9.7 1.3-19.6 3.3-26.8 9-32.1 28.5-55.2 57-67.6 6.9-3 14.4-5.2 22.4-6.9 4.1-0.6 8.2-1.1 12.3-1.6 39-0.7 59.8 13.5 79.6 31.6 16.8-1.4 38.7-10.8 51.6-17.4l12.6-6.9c0 0.1-0.1 0.3-0.1 0.4l0.1-0.1c-7.3 19.9-17.4 35.5-32.7 47.3-3.1 2.4-6.3 5.6-10 7.4 21.5-0.4 39.3-10 56.1-15.4v0.3z" fill="#2EB1EB" p-id="16499"></path><path d="M719.7 391.1s0.1 0 0.1-0.1c0 0-0.1 0-0.1 0.1zM726.8 428.4v-0.5 0.5zM336.4 479.9c3.3 0.7 9.9 2.7 13.8 1.2h-0.5l-0.1-0.1c-3.9 1-10.1-0.7-13.2-1.4-7.8-1.6-14.5-3.1-21.1-5.9-3.5-1.6-6.9-3.2-10.4-4.9v0.3c3.4 1.6 6.9 3.2 10.4 4.9 6.6 2.8 13.3 4.3 21.1 5.9zM719.6 391.4v0.2c21.9-0.2 39.8-10.1 56.9-15.4 0.1-0.1 0.1-0.2 0.2-0.3v-0.3c-16.9 5.3-34.6 14.9-56.1 15.4-0.4 0.1-0.7 0.3-1 0.4zM584.8 337.5c6.9-3 14.4-5.1 22.4-6.9 4.1-0.6 8.2-1 12.3-1.6 39-0.7 59.8 13.5 79.6 31.6 16.8-1.4 38.7-10.8 51.6-17.4 4.2-2.3 8.3-4.5 12.5-6.8 0-0.1 0.1-0.3 0.1-0.4l-12.6 6.9c-12.9 6.6-34.8 16-51.6 17.4-19.8-18.1-40.6-32.3-79.6-31.6-4.1 0.5-8.2 1-12.3 1.6-8 1.7-15.5 3.9-22.4 6.9-28.5 12.4-48 35.5-57 67.6-2 7.2-3.4 17.2-3.3 26.8 0-9.6 1.3-19.4 3.3-26.5 9-32.1 28.5-55.2 57-67.6zM385.2 568.5h-0.4c-7.3 5.2-34.9 2.8-44.6 1.7 0 0.1 0.1 0.2 0.1 0.3 10 1.1 38.2 3.6 44.9-2zM319.4 347.4c0.1 0.1 0.3 0.1 0.5 0.3 2 4.1 6.3 7.1 9.1 10.6 8.6 10.6 19.2 20.2 30 28.7 36.8 28.7 69.9 46.4 123.1 59.5 13.5 3.3 29.1 5.9 45.2 5.9 0-0.1-0.1-0.2-0.1-0.3-16.1 0-31.6-2.6-45.1-5.9-53.2-13.1-86.4-30.8-123.1-59.5-10.8-8.4-21.4-18-30-28.7-2.7-3.4-7.1-6.4-9.1-10.6-0.1-0.1-0.3-0.2-0.5-0.3-4.3 7.9-8.3 16.5-10.8 26.2-1.3 4.9-2.1 9.6-2.6 14.3 0.5-4.6 1.3-9.2 2.6-14 2.5-9.7 6.5-18.3 10.8-26.2zM317.7 683.2c9.9-1.6 19.6-1.2 28.7-3.2 22.8-5 43-11.6 60.4-21.8 8.4-4.9 21.3-10.8 27.3-17.9h-0.3c-6.1 7-18.7 12.8-27 17.6-17.4 10.2-37.7 16.8-60.4 21.8-9.1 2-18.9 1.6-28.7 3.2-10.9 1.7-22.4-1-32.2-1.2l0.5 0.3c9.7 0.4 21 2.9 31.7 1.2z" fill="#FFFFFF" p-id="16500"></path></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1547543863835" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="16165" xmlns:xlink="http://www.w3.org/1999/xlink" width="400" height="400"><defs><style type="text/css"></style></defs><path d="M512 1024C229.236364 1024 0 794.763636 0 512S229.236364 0 512 0s512 229.236364 512 512-229.236364 512-512 512z m-129.861818-756.48s-36.212364 2.094545-48.989091 24.482909c-12.8 22.365091-54.318545 137.378909-54.318546 137.378909s13.847273 6.376727 37.28291-10.658909c23.435636-17.035636 30.882909-46.848 30.882909-46.848l42.589091-2.117818 1.070545 121.390545s-73.495273-1.070545-88.413091 0c-14.894545 1.047273-23.412364 40.448-23.412364 40.448h111.825455s-9.588364 67.095273-38.353455 116.084364c-28.741818 48.989091-83.060364 87.319273-83.060363 87.319273s39.424 15.965091 77.730909-6.4c38.353455-22.341818 66.629818-120.692364 66.629818-120.692364l89.925818 110.056727s8.192-52.386909-1.466182-67.188363c-9.658182-14.778182-62.208-74.286545-62.208-74.286546l-22.946909 20.247273 16.337455-65.117091h97.954909s0-38.353455-19.153455-40.494545c-19.176727-2.094545-78.801455 0-78.801454 0V371.898182h88.389818s-1.070545-39.400727-18.106182-39.400727h-143.755636l22.341818-64.954182z m169.984 61.184v358.562909h36.002909l13.102545 45.009455 63.348364-45.009455h89.064727V328.704h-201.518545z" fill="#0f84fd" p-id="16166"></path><path d="M594.781091 368.64h117.899636v277.876364h-41.890909l-53.364363 40.261818-11.636364-40.261818h-11.008V368.64z" fill="#0f84fd" p-id="16167"></path></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 892 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 924 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 726 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

+85
View File
@@ -0,0 +1,85 @@
// JavaScript Document
! function() {
function o(w, v, i) {
return w.getAttribute(v) || i
}
function j(i) {
return document.getElementsByTagName(i)
}
function l() {
var i = j("script"),
w = i.length,
v = i[w - 1];
return {
l: w,
z: o(v, "zIndex", -2),
o: o(v, "opacity", 0.8),
c: o(v, "color", "255,255,255"),
n: o(v, "count", 240)
}
}
function k() {
r = u.width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, n = u.height = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight
}
function b() {
delay = delay + 1;
if( delay < 5 ) { m(b) } else { delay = 0;
e.clearRect(0, 0, r, n);
var w = [f].concat(t);
var x, v, A, B, z, y;
t.forEach(function(i) {
i.x += i.xa, i.y += i.ya, i.xa *= i.x > r || i.x < 0 ? -1 : 1, i.ya *= i.y > n || i.y < 0 ? -1 : 1, e.fillRect(i.x - 0.5, i.y - 0.5, 2, 2);e.fillStyle="#FFFFFF";
for (v = 0; v < w.length; v++) {
x = w[v];
if (i !== x && null !== x.x && null !== x.y) {
B = i.x - x.x, z = i.y - x.y, y = B * B + z * z;
y < x.max && (x === f && y >= x.max / 2 && (i.x -= 0.03 * B, i.y -= 0.03 * z), A = (x.max - y) / x.max, e.beginPath(), e.lineWidth = A / 2, e.strokeStyle = "rgba(" + s.c + "," + (A + 0.2) + ")", e.moveTo(i.x, i.y), e.lineTo(x.x, x.y), e.stroke())
}
}
w.splice(w.indexOf(i), 1)
}), m(b) }
}
var u = document.createElement("canvas"),
s = l(),
c = "c_n" + s.l,
e = u.getContext("2d"),
delay = 0,
r, n, m = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function(i) {
window.setTimeout(i, 1000 / 45)
},
a = Math.random,
f = {
x: null,
y: null,
max: 20000
}
u.id = c;
u.style.cssText = "position:fixed;top:0;left:0;z-index:" + s.z + ";opacity:" + s.o;
j("body")[0].appendChild(u);
k(), window.onresize = k;
window.onmousemove = function(i) {
i = i || window.event, f.x = i.clientX, f.y = i.clientY
}, window.onmouseout = function() {
f.x = null, f.y = null
};
for (var t = [], p = 0; s.n > p; p++) {
var h = a() * r,
g = a() * n,
q = 2 * a() - 1,
d = 2 * a() - 1;
t.push({
x: h,
y: g,
xa: q,
ya: d,
max: 6000
})
}
setTimeout(function() {
b()
}, 100)
}();
+127
View File
@@ -0,0 +1,127 @@
.block {
position: absolute;
left: 0;
top: 0;
cursor: pointer;
cursor: grab;
}
.block:active {
cursor: grabbing;
}
.sliderContainer {
position: relative;
text-align: center;
width: 310px;
height: 40px;
line-height: 40px;
margin-top: 15px;
background: #f7f9fa;
color: #45494c;
border: 1px solid #e4e7eb;
}
.sliderContainer_active .slider {
height: 38px;
top: -1px;
border: 1px solid #1991FA;
}
.sliderContainer_active .sliderMask {
height: 38px;
border-width: 1px;
}
.sliderContainer_success .slider {
height: 38px;
top: -1px;
border: 1px solid #52CCBA;
background-color: #52CCBA !important;
}
.sliderContainer_success .sliderMask {
height: 38px;
border: 1px solid #52CCBA;
background-color: #D2F4EF;
}
.sliderContainer_success .sliderIcon {
background-position: 0 0 !important;
}
.sliderContainer_fail .slider {
height: 38px;
top: -1px;
border: 1px solid #f57a7a;
background-color: #f57a7a !important;
}
.sliderContainer_fail .sliderMask {
height: 38px;
border: 1px solid #f57a7a;
background-color: #fce1e1;
}
.sliderContainer_fail .sliderIcon {
top: 14px;
background-position: 0 -82px !important;
}
.sliderContainer_active .sliderText, .sliderContainer_success .sliderText, .sliderContainer_fail .sliderText {
display: none;
}
.sliderMask {
position: absolute;
left: 0;
top: 0;
height: 40px;
border: 0 solid #1991FA;
background: #D1E9FE;
}
.slider {
position: absolute;
top: 0;
left: 0;
width: 40px;
height: 40px;
background: #fff;
box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
transition: background .2s linear;
cursor: pointer;
cursor: grab;
}
.slider:active {
cursor: grabbing;
}
.slider:hover {
background: #1991FA;
}
.slider:hover .sliderIcon {
background-position: 0 -13px;
}
.sliderIcon {
position: absolute;
top: 15px;
left: 13px;
width: 14px;
height: 12px;
background: url(http://cstaticdun.126.net//2.6.3/images/icon_light.f13cff3.png) 0 -26px;
background-size: 34px 471px;
}
.refreshIcon {
position: absolute;
right: 0;
top: 0;
width: 34px;
height: 34px;
cursor: pointer;
background: url(http://cstaticdun.126.net//2.6.3/images/icon_light.f13cff3.png) 0 -437px;
background-size: 34px 471px;
}

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