同步代码
This commit is contained in:
@@ -1,16 +1,20 @@
|
|||||||
{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
|
{
|
||||||
// launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
|
// launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
|
||||||
"version": "0.0",
|
// launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
|
||||||
"configurations": [{
|
"version" : "0.0",
|
||||||
"app-plus" :
|
"configurations" : [
|
||||||
{
|
{
|
||||||
"launchtype" : "local"
|
"app-plus" : {
|
||||||
},
|
"launchtype" : "local"
|
||||||
"default" :
|
},
|
||||||
{
|
"default" : {
|
||||||
"launchtype" : "local"
|
"launchtype" : "local"
|
||||||
},
|
},
|
||||||
"type" : "uniCloud"
|
"type" : "uniCloud"
|
||||||
}
|
},
|
||||||
|
{
|
||||||
|
"playground" : "standard",
|
||||||
|
"type" : "uni-app:app-android"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,9 +8,9 @@ import store from '@/store'
|
|||||||
import { router } from '@/router/index.js'
|
import { router } from '@/router/index.js'
|
||||||
|
|
||||||
// 基础配置
|
// 基础配置
|
||||||
const config = {
|
const config = {
|
||||||
apiUrl : 'https://api.douhuotest.douhuofalv.com/api/', // 测试环境
|
apiUrl : 'https://douhuo.douhuofalv.com/api/',
|
||||||
// apiUrl : 'https://douhuo.douhuofalv.com/api/', // 正式环境
|
// apiUrl : 'https://douhuo.demos.uzchain.tech/api/', //测试环境
|
||||||
timeout : 60000
|
timeout : 60000
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 手太欠
|
* 手太欠
|
||||||
* 愿这世界都如故事里一样 美好而动人~
|
* 愿这世界都如故事里一样 美好而动人~
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { request } from '../index'
|
|
||||||
|
|
||||||
|
import { request } from '../index'
|
||||||
|
|
||||||
// 用户注册
|
// 用户注册
|
||||||
const Register = (data) =>{
|
const Register = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
@@ -14,65 +14,74 @@ const Register = (data) =>{
|
|||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取短信前图形验证码
|
// 获取短信前图形验证码
|
||||||
const Captcha = (data) =>{
|
const Captcha = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "user/auth/captcha",
|
url: "user/auth/captcha",
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 需校验图形验证码
|
// 需校验图形验证码
|
||||||
const smsAuth = (data) =>{
|
const smsAuth = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "user/auth/verify_captcha",
|
url: "user/auth/verify_captcha",
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 用户账号密码登录
|
// 用户账号密码登录
|
||||||
const Login = (data) =>{
|
const Login = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "user/auth/login",
|
url: "user/auth/login",
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 重置密码
|
// 重置密码
|
||||||
const resetPassword = (data) =>{
|
const resetPassword = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "user/auth/reset_password",
|
url: "user/auth/reset_password",
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改密码
|
// 修改密码
|
||||||
const modifyPassword = (data) =>{
|
const modifyPassword = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "user/setting/reset_password",
|
url: "user/setting/reset_password",
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 隐私+协议
|
// 隐私+协议
|
||||||
const registeragree = (website) =>{
|
const registeragree = (website) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "cms/pages/" + website
|
url: "cms/pages/" + website
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 验证码登录
|
||||||
|
const authSms = (data) =>{
|
||||||
|
return request({
|
||||||
|
url: "user/auth/sms",
|
||||||
|
method: 'POST',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
export {
|
||||||
export {
|
Register,
|
||||||
Register,
|
Captcha,
|
||||||
Captcha,
|
smsAuth,
|
||||||
smsAuth,
|
Login,
|
||||||
Login,
|
resetPassword,
|
||||||
resetPassword,
|
|
||||||
modifyPassword,
|
modifyPassword,
|
||||||
registeragree
|
registeragree,
|
||||||
|
authSms
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,238 +1,311 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 手太欠
|
* 手太欠
|
||||||
* 愿这世界都如故事里一样 美好而动人~
|
* 愿这世界都如故事里一样 美好而动人~
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { request } from '../index'
|
|
||||||
|
|
||||||
|
import { request } from '../index'
|
||||||
|
|
||||||
// 首页数据
|
// 首页数据
|
||||||
const home = () =>{
|
const home = () =>{
|
||||||
return request({
|
return request({
|
||||||
url: "business/home"
|
url: "business/home"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 文章分类
|
// 文章分类
|
||||||
const articleSort = () =>{
|
const articleSort = () =>{
|
||||||
return request({
|
return request({
|
||||||
url: "cms/categories"
|
url: "cms/categories"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 文章列表
|
// 文章列表
|
||||||
const articleList = (data) =>{
|
const articleList = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "cms/articles",
|
url: "cms/articles",
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 文章详情
|
// 文章详情
|
||||||
const articleBrief = (article_id) =>{
|
const articleBrief = (article_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "cms/articles/" + article_id
|
url: "cms/articles/" + article_id
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 文章收藏
|
// 文章收藏
|
||||||
const collect = (article_id) =>{
|
const collect = (article_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "cms/articles/favorite/" + article_id
|
url: "cms/articles/favorite/" + article_id
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 我的文章收藏
|
// 我的文章收藏
|
||||||
const myCollect = (data) =>{
|
const myCollect = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "user/favorites",
|
url: "user/favorites",
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 精选律师列表
|
// 精选律师列表
|
||||||
const lawyers = (data) =>{
|
const lawyers = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "lawyers",
|
url: "lawyers",
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 精选律师详情
|
// 精选律师详情
|
||||||
const lawyersdet = (lawyer_id) =>{
|
const lawyersdet = (lawyer_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "lawyers/" + lawyer_id
|
url: "lawyers/" + lawyer_id
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
//律师业务
|
//律师业务
|
||||||
const lawyersBusiness = () =>{
|
const lawyersBusiness = () =>{
|
||||||
return request({
|
return request({
|
||||||
url: "lawyers/businesses"
|
url: "lawyers/businesses"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//律师业务详情
|
//律师业务详情
|
||||||
const businessDet = (lawyer_business_id) =>{
|
const businessDet = (lawyer_business_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "lawyers/businesses/" + lawyer_business_id
|
url: "lawyers/businesses/" + lawyer_business_id
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
//律师订单金额
|
//律师订单金额
|
||||||
const lawyerOrder = (lawyer_id) =>{
|
const lawyerOrder = (lawyer_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "lawyers/" + lawyer_id + "/order"
|
url: "lawyers/" + lawyer_id + "/order"
|
||||||
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
//律师业务-创建订单
|
//律师业务-创建订单
|
||||||
const businessOrder = (lawyer_business_id) =>{
|
const businessOrder = (lawyer_business_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "lawyers/businesses/" + lawyer_business_id + "/order"
|
url: "lawyers/businesses/" + lawyer_business_id + "/order"
|
||||||
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取主业务
|
// 获取主业务
|
||||||
const workIndex = () =>{
|
const workIndex = () =>{
|
||||||
return request({
|
return request({
|
||||||
url: "business/index"
|
url: "business/index"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取主业务机构
|
// 获取主业务机构
|
||||||
const workOne = (business_id) =>{
|
const workOne = (business_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "business/" + business_id + "/institution"
|
url: "business/" + business_id + "/institution"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取二级业务类型
|
// 获取二级业务类型
|
||||||
const workLevel = (business_id) =>{
|
const workLevel = (business_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "business/institution/" + business_id + "/type"
|
url: "business/institution/" + business_id + "/type"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 提交基础信息
|
// 提交基础信息
|
||||||
const workStore = (data) =>{
|
const workStore = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "business/store",
|
url: "business/store",
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 9.9预约
|
// 9.9预约
|
||||||
const Apply = (business_order_id) =>{
|
const Apply = (business_order_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "business/apply/" + business_order_id + "/info"
|
url: "business/apply/" + business_order_id + "/info"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 9.9预约--微信支付
|
// 9.9预约--微信支付
|
||||||
const Wechat = (apply_order_no, data) =>{
|
const Wechat = (apply_order_no, data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "pay/apply/" + apply_order_no + "/wechat",
|
url: "pay/apply/" + apply_order_no + "/wechat",
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 咨询服务费--微信支付
|
// 咨询服务费--微信支付
|
||||||
const applyPay = (business_order_id, data) =>{
|
const applyPay = (business_order_id, data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "pay/order/" + business_order_id + "/wechat",
|
url: "pay/order/" + business_order_id + "/wechat",
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 补差价--微信支付
|
// 补差价--微信支付
|
||||||
const diffPay = (business_order_diff_price_id, data) =>{
|
const diffPay = (business_order_diff_price_id, data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "pay/diff/" + business_order_diff_price_id + "/wechat",
|
url: "pay/diff/" + business_order_diff_price_id + "/wechat",
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 获取公众号openid
|
// 获取公众号openid
|
||||||
const Openid = (data) =>{
|
const Openid = (data) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "user/auth/official/openid",
|
url: "user/auth/official/openid",
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取授权页面
|
||||||
|
const authFollow = (data) => {
|
||||||
|
return request({
|
||||||
|
url : 'user/auth/official/url',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取授权页面
|
|
||||||
const authFollow = (data) => {
|
|
||||||
return request({
|
|
||||||
url : 'user/auth/official/url',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取方案
|
// 获取方案
|
||||||
const Schemes = (business_order_id) =>{
|
const Schemes = (business_order_id) =>{
|
||||||
return request({
|
return request({
|
||||||
url: "business/" + business_order_id + "/schemes"
|
url: "business/" + business_order_id + "/schemes"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// h5入库用户数据
|
||||||
|
const wechatCode = (data) => {
|
||||||
|
return request({
|
||||||
|
url : 'user/auth/login/wechat/add',
|
||||||
|
method: 'POST',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 校验分享用户
|
||||||
|
const Verify = (data) => {
|
||||||
|
return request({
|
||||||
|
url : 'user/relations/verify',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 绑定分享用户
|
||||||
|
const Bind = (data) => {
|
||||||
|
return request({
|
||||||
|
url : 'user/relations/bind',
|
||||||
|
method: 'POST',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 账户管理类
|
||||||
|
const accountManagement = () => {
|
||||||
|
return request({
|
||||||
|
url: "account_management/index"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// h5入库用户数据
|
// 账户管理类 - 办理
|
||||||
const wechatCode = (data) => {
|
const accountFrom = (data, id) => {
|
||||||
return request({
|
return request({
|
||||||
url : 'user/auth/login/wechat/add',
|
url : "account_management/" + id + "/store",
|
||||||
method: 'POST',
|
method : "POST",
|
||||||
data: data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验分享用户
|
// 账户管理类 - 订单
|
||||||
const Verify = (data) => {
|
const accountOrder = data => {
|
||||||
return request({
|
return request({
|
||||||
url : 'user/relations/verify',
|
url : "account_management/order/lists",
|
||||||
data: data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 绑定分享用户
|
// 账户管理类 - 取消订单
|
||||||
const Bind = (data) => {
|
const accountCancel = id => {
|
||||||
return request({
|
return request({
|
||||||
url : 'user/relations/bind',
|
url : "account_management/order/" + id + "/cancel",
|
||||||
method: 'POST',
|
method : "DELETE"
|
||||||
data: data
|
})
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export {
|
// 委托管理类
|
||||||
home,
|
const delegation = () => {
|
||||||
articleSort,
|
return request({
|
||||||
articleList,
|
url: "delegation/index"
|
||||||
articleBrief,
|
})
|
||||||
collect,
|
}
|
||||||
myCollect,
|
|
||||||
lawyers,
|
// 委托管理类 - 办理
|
||||||
lawyersdet,
|
const delegationFrom = (data, id) => {
|
||||||
lawyersBusiness,
|
return request({
|
||||||
businessDet,
|
url : "delegation/" + id + "/store",
|
||||||
lawyerOrder,
|
method : "POST",
|
||||||
businessOrder,
|
data
|
||||||
workIndex,
|
})
|
||||||
workOne,
|
}
|
||||||
workLevel,
|
|
||||||
workStore,
|
// 委托管理类 - 订单
|
||||||
Apply,
|
const delegationOrder = data => {
|
||||||
Wechat,
|
return request({
|
||||||
applyPay,
|
url : "delegation/order/lists",
|
||||||
diffPay,
|
method : "POST",
|
||||||
Openid,
|
data
|
||||||
authFollow,
|
})
|
||||||
Schemes,
|
}
|
||||||
wechatCode,
|
|
||||||
Verify,
|
// 委托管理类 - 取消订单
|
||||||
Bind
|
const delegationCancel = id => {
|
||||||
|
return request({
|
||||||
|
url : "delegation/order/" + id + "/cancel",
|
||||||
|
method : "DELETE"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export {
|
||||||
|
home,
|
||||||
|
articleSort,
|
||||||
|
articleList,
|
||||||
|
articleBrief,
|
||||||
|
collect,
|
||||||
|
myCollect,
|
||||||
|
lawyers,
|
||||||
|
lawyersdet,
|
||||||
|
lawyersBusiness,
|
||||||
|
businessDet,
|
||||||
|
lawyerOrder,
|
||||||
|
businessOrder,
|
||||||
|
workIndex,
|
||||||
|
workOne,
|
||||||
|
workLevel,
|
||||||
|
workStore,
|
||||||
|
Apply,
|
||||||
|
Wechat,
|
||||||
|
applyPay,
|
||||||
|
diffPay,
|
||||||
|
Openid,
|
||||||
|
authFollow,
|
||||||
|
Schemes,
|
||||||
|
wechatCode,
|
||||||
|
Verify,
|
||||||
|
Bind,
|
||||||
|
accountManagement,
|
||||||
|
accountFrom,
|
||||||
|
accountOrder,
|
||||||
|
accountCancel,
|
||||||
|
delegation,
|
||||||
|
delegationFrom,
|
||||||
|
delegationOrder,
|
||||||
|
delegationCancel
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -164,9 +164,6 @@ const payInfo = data => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const payWechat = data => {
|
const payWechat = data => {
|
||||||
|
|
||||||
console.log('111')
|
|
||||||
|
|
||||||
return request({
|
return request({
|
||||||
url : "pay/cashier_desk/wechat",
|
url : "pay/cashier_desk/wechat",
|
||||||
method : 'POST',
|
method : 'POST',
|
||||||
|
|||||||
42
pages.json
42
pages.json
@@ -84,7 +84,15 @@
|
|||||||
"aliasPath": "/login/login",
|
"aliasPath": "/login/login",
|
||||||
"name": "Login",
|
"name": "Login",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "抖火法律-登录",
|
"navigationBarTitleText": "抖火法律-验证码登录",
|
||||||
|
"navigationStyle": "custom"
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
"path": "pages/login/passwordLogin",
|
||||||
|
"aliasPath": "/login/passwordLogin",
|
||||||
|
"name": "PasswordLogin",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "抖火法律-密码登录",
|
||||||
"navigationStyle": "custom"
|
"navigationStyle": "custom"
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
@@ -657,6 +665,38 @@
|
|||||||
"enablePullDownRefresh": false,
|
"enablePullDownRefresh": false,
|
||||||
"navigationStyle": "custom"
|
"navigationStyle": "custom"
|
||||||
}
|
}
|
||||||
|
},{
|
||||||
|
"path" : "pages/management/account",
|
||||||
|
"name" : "MagAccount",
|
||||||
|
"style" : {
|
||||||
|
"navigationBarTitleText" : "账户咨询办理",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/management/delegation",
|
||||||
|
"name" : "MagDelegation",
|
||||||
|
"style" : {
|
||||||
|
"navigationBarTitleText" : "委托管理办理",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/work/account",
|
||||||
|
"name" : "AccountWork",
|
||||||
|
"style" : {
|
||||||
|
"navigationBarTitleText" : "账户管理咨询类",
|
||||||
|
"enablePullDownRefresh" : false,
|
||||||
|
"navigationBarBackgroundColor": "#FFFFFF"
|
||||||
|
}
|
||||||
|
},{
|
||||||
|
"path" : "pages/work/delegation",
|
||||||
|
"name" : "DelegationWork",
|
||||||
|
"style" : {
|
||||||
|
"navigationBarTitleText" : "委托管理类",
|
||||||
|
"enablePullDownRefresh" : false,
|
||||||
|
"navigationBarBackgroundColor": "#FFFFFF"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"globalStyle": {
|
"globalStyle": {
|
||||||
|
|||||||
@@ -49,7 +49,7 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 新增改版 - 协商调解类 -->
|
<!-- 新增改版 - 协商调解类 -->
|
||||||
<view class="module">
|
<view class="module" style="display: none;">
|
||||||
<view class="module-title">
|
<view class="module-title">
|
||||||
协商调解类
|
协商调解类
|
||||||
</view>
|
</view>
|
||||||
@@ -76,13 +76,53 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 账户管理咨询类 -->
|
||||||
|
<view class="module" v-if="accountData.length > 0" style="display: none;">
|
||||||
|
<view class="module-title">
|
||||||
|
账户管理咨询类
|
||||||
|
</view>
|
||||||
|
<scroll-view class="law" scroll-x="true" show-scrollbar="false">
|
||||||
|
<view class="law-label" v-for="(item, index) in accountData" :key="index" @click="onMagInfo('Account', item.id)">
|
||||||
|
<image class="law-label-img" :src="item.cover" mode="widthFix"></image>
|
||||||
|
<view class="law-label-cont">
|
||||||
|
<view class="nowrap law-label-name">
|
||||||
|
{{item.title}}
|
||||||
|
</view>
|
||||||
|
<view class="law-label-price">
|
||||||
|
¥{{item.price}}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
</view>
|
||||||
|
<!-- 委托管理类 -->
|
||||||
|
<view class="module" v-if="delegation.length > 0" style="display: none;">
|
||||||
|
<view class="module-title">
|
||||||
|
委托管理类
|
||||||
|
</view>
|
||||||
|
<scroll-view class="law" scroll-x="true" show-scrollbar="false">
|
||||||
|
<view class="law-label" v-for="(item, index) in delegation" :key="index" @click="onMagInfo('Delegation', item.id)">
|
||||||
|
<image class="law-label-img" :src="item.cover" mode="widthFix"></image>
|
||||||
|
<view class="law-label-cont">
|
||||||
|
<view class="nowrap law-label-name">
|
||||||
|
{{item.title}}
|
||||||
|
</view>
|
||||||
|
<view class="law-label-price">
|
||||||
|
¥{{item.price}}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
</view>
|
||||||
|
|
||||||
<!-- 新增改版 - 法律资讯类 -->
|
<!-- 新增改版 - 法律资讯类 -->
|
||||||
<view class="module">
|
<view class="module">
|
||||||
<view class="module-title">
|
<view class="module-title">
|
||||||
法律咨询类
|
企业法律顾问
|
||||||
</view>
|
</view>
|
||||||
<scroll-view class="law" scroll-x="true" show-scrollbar="false">
|
<scroll-view class="law" scroll-x="true" show-scrollbar="false">
|
||||||
<view class="law-label" @click="clickBrief">
|
<!-- <view class="law-label" @click="clickBrief">
|
||||||
<image class="law-label-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/18/f3db072ac405edf2a3dc3fd6c3aae206.png" mode="widthFix"></image>
|
<image class="law-label-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/18/f3db072ac405edf2a3dc3fd6c3aae206.png" mode="widthFix"></image>
|
||||||
<view class="law-label-cont">
|
<view class="law-label-cont">
|
||||||
<view class="law-label-name">
|
<view class="law-label-name">
|
||||||
@@ -95,7 +135,7 @@
|
|||||||
¥365.00/年
|
¥365.00/年
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view> -->
|
||||||
<view class="law-label" @click="$Router.push({name: 'StandBrief', params: {type: 2}})">
|
<view class="law-label" @click="$Router.push({name: 'StandBrief', params: {type: 2}})">
|
||||||
<image class="law-label-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/18/d813f30a393e6d50df8cc59a36e557c8.png" mode="widthFix"></image>
|
<image class="law-label-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/18/d813f30a393e6d50df8cc59a36e557c8.png" mode="widthFix"></image>
|
||||||
<view class="law-label-cont">
|
<view class="law-label-cont">
|
||||||
@@ -158,7 +198,7 @@
|
|||||||
<!-- 新增改版 - 诉讼委托类 -->
|
<!-- 新增改版 - 诉讼委托类 -->
|
||||||
<view class="module">
|
<view class="module">
|
||||||
<view class="module-title">
|
<view class="module-title">
|
||||||
诉讼委托类
|
案件诉讼委托
|
||||||
</view>
|
</view>
|
||||||
<view class="topCont-tool">
|
<view class="topCont-tool">
|
||||||
<view class="topCont-tool-label redBlock" @click="$Router.push({name: 'EntrustBrief'})">
|
<view class="topCont-tool-label redBlock" @click="$Router.push({name: 'EntrustBrief'})">
|
||||||
@@ -187,7 +227,7 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 新增改版 - 增收赋能类 -->
|
<!-- 新增改版 - 增收赋能类 -->
|
||||||
<view class="module">
|
<view class="module" style="display: none;">
|
||||||
<view class="module-title">
|
<view class="module-title">
|
||||||
增收赋能类
|
增收赋能类
|
||||||
</view>
|
</view>
|
||||||
@@ -349,7 +389,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { workIndex, home, articleSort, articleList } from '@/apis/interfaces/index'
|
import { workIndex, home, articleSort, articleList, accountManagement, delegation } from '@/apis/interfaces/index'
|
||||||
import { judgeReal, userIndex, authFollow } from '@/apis/interfaces/user'
|
import { judgeReal, userIndex, authFollow } from '@/apis/interfaces/user'
|
||||||
import { lists } from '@/apis/interfaces/empower.js'
|
import { lists } from '@/apis/interfaces/empower.js'
|
||||||
export default {
|
export default {
|
||||||
@@ -377,9 +417,14 @@
|
|||||||
first : 1,
|
first : 1,
|
||||||
layadState : '',
|
layadState : '',
|
||||||
layadImg : '',
|
layadImg : '',
|
||||||
haveimg : '',
|
haveimg : '',
|
||||||
|
|
||||||
// 增收赋能列表
|
// 增收赋能列表
|
||||||
empowerArr : []
|
empowerArr : [],
|
||||||
|
// 账户管理类
|
||||||
|
accountData : [],
|
||||||
|
// 委托管理类
|
||||||
|
delegation : []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
@@ -403,7 +448,13 @@
|
|||||||
this.articleItem();
|
this.articleItem();
|
||||||
|
|
||||||
// 增收赋能
|
// 增收赋能
|
||||||
this.getEmpower()
|
this.getEmpower();
|
||||||
|
|
||||||
|
// 账户管理类
|
||||||
|
this.getManagement();
|
||||||
|
|
||||||
|
// 委托管理类
|
||||||
|
this.getDelegation();
|
||||||
|
|
||||||
if(this.$store.getters.getToken) {
|
if(this.$store.getters.getToken) {
|
||||||
userIndex().then(res => {
|
userIndex().then(res => {
|
||||||
@@ -417,7 +468,40 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
|
// 获取账户管理类
|
||||||
|
getManagement(){
|
||||||
|
accountManagement().then(res => {
|
||||||
|
let accountData = res
|
||||||
|
this.accountData = accountData
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
},
|
||||||
|
// 获取委托管理类
|
||||||
|
getDelegation(){
|
||||||
|
delegation().then(res => {
|
||||||
|
let delegationData = res
|
||||||
|
this.delegation = delegationData
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
},
|
||||||
|
// 查看管理类业务
|
||||||
|
onMagInfo(type, id){
|
||||||
|
this.$Router.push({
|
||||||
|
name : 'Mag' + type,
|
||||||
|
params : { id }
|
||||||
|
})
|
||||||
|
},
|
||||||
// 增收赋能接口
|
// 增收赋能接口
|
||||||
getEmpower(){
|
getEmpower(){
|
||||||
lists().then(res => {
|
lists().then(res => {
|
||||||
@@ -579,8 +663,8 @@
|
|||||||
officialGeneral(){
|
officialGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -78,8 +78,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -95,8 +95,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -1,218 +1,342 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<img class="loginBack" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5682d339246af0f44b4984c849288aa5.png">
|
<img class="loginBack" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5682d339246af0f44b4984c849288aa5.png">
|
||||||
<img class="loginBottom" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/caa46039d88517ee8ba22b6c32dd47a1.png">
|
<img class="loginBottom" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/caa46039d88517ee8ba22b6c32dd47a1.png">
|
||||||
<view class="title">
|
<view class="title">
|
||||||
<view class="title-name">
|
<view class="title-name">
|
||||||
用户登录
|
用户登录
|
||||||
</view>
|
</view>
|
||||||
<view class="title-tips">
|
<view class="title-tips">
|
||||||
密码登录仅适用于已注册用户
|
手机验证码登录
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="info">
|
<view class="info">
|
||||||
<view class="info-cont">
|
<view class="info-cont">
|
||||||
<!-- 输入手机号相关 -->
|
<!-- 输入手机号相关 -->
|
||||||
<view class="inputs">
|
<view class="inputs">
|
||||||
<input type="number" placeholder="请输入手机号" maxlength="11" v-model="phone" />
|
<input type="number" placeholder="请输入手机号" maxlength="11" v-model="phone" />
|
||||||
</view>
|
</view>
|
||||||
<!-- 输入密码 -->
|
|
||||||
<view class="inputs">
|
<view class="captcha-inputs">
|
||||||
<input type="text" :password="passwordState" placeholder="请输入密码" v-model="password" />
|
<view class="captcha-campus-inputs campus-inputs">
|
||||||
<image class="inputs-see" @click="seeClick" :src="seeState ? '../../static/icon/see_active.png' : '../../static/icon/see.png'" mode="aspectFill"></image>
|
<input class="campus-form-input" type="text" placeholder="请输入图文验证码" v-model="newCaptcha" />
|
||||||
</view>
|
</view>
|
||||||
<button class="btn" type="default" @click="LoginSms" :disabled="phone == '' || password == ''">立即登录</button>
|
<image class="campus-form-graph" :src="captchaImg" mode="widthFix" @click="replaceClick"></image>
|
||||||
<view class="forget">
|
</view>
|
||||||
<view class="forget-label" @click="$Router.push({name: 'Register'})">我要注册</view>
|
|
||||||
<view class="forget-label forget-after" @click="$Router.push({name: 'Forget'})">忘记密码?</view>
|
<view class="inputs captcha-inputs">
|
||||||
</view>
|
<input class="campus-form-input" type="number" placeholder="请输入验证码" v-model="code" maxlength="4"></input>
|
||||||
|
<button @click="checkCaptcha" class="campus-form-code ":disabled="phone == ''" type="default" size="mini">{{getSms ? '重新发送' + smsTime + 's': '发送验证码'}}</button>
|
||||||
</view>
|
</view>
|
||||||
<!-- 用户登录注册协议 -->
|
|
||||||
<view class="agreement">
|
<button class="btn" type="default" @click="LoginSms" :disabled="phone == '' || code == ''">立即登录</button>
|
||||||
<checkbox-group @change="radioChange">
|
<view class="forget">
|
||||||
<checkbox color="#da2b56" :checked="checked" style="transform: scale(.55)" class="radioGroup" />
|
<view class="forget-label" @click="$Router.push({name: 'Register'})">我要注册</view>
|
||||||
</checkbox-group>
|
<view class="forget-label forget-after" @click="$Router.push({name: 'PasswordLogin'})">密码登录</view>
|
||||||
<view class="agreement-text">
|
</view>
|
||||||
我已阅读并同意抖火法律<view @click="$Router.push({name: 'Agreement', params: {page : 3}})">《隐私协议》</view>和<view @click="$Router.push({name: 'Agreement', params: {page : 4}})">《服务协议》</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
<!-- 用户登录注册协议 -->
|
||||||
</view>
|
<view class="agreement">
|
||||||
|
<checkbox-group @change="radioChange">
|
||||||
|
<checkbox color="#da2b56" :checked="checked" style="transform: scale(.55)" class="radioGroup" />
|
||||||
|
</checkbox-group>
|
||||||
|
<view class="agreement-text">
|
||||||
|
我已阅读并同意抖火法律<view @click="$Router.push({name: 'Agreement', params: {page : 3}})">《隐私协议》</view>和<view @click="$Router.push({name: 'Agreement', params: {page : 4}})">《服务协议》</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { Login } from '@/apis/interfaces/auth'
|
import { Login, Captcha, smsAuth, authSms } from '@/apis/interfaces/auth'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
phone : '', // 手机号码
|
phone : '', // 手机号码
|
||||||
password: '', // 登录密码
|
password : '', // 登录密码
|
||||||
checked : false, // 勾选协议
|
checked : false, // 勾选协议
|
||||||
seeState : false, //小眼睛
|
seeState : false, //小眼睛
|
||||||
passwordState: true,
|
passwordState: true,
|
||||||
|
disabled : false,
|
||||||
|
code : '', // 短信验证码
|
||||||
|
getSms : '',
|
||||||
|
smsTime : 60,
|
||||||
|
newCaptcha : '', // 填写图形码
|
||||||
|
captcha : '', // 输入图形码
|
||||||
|
captchaImg : '', // 图形码
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
// 生命周期函数--监听页面显示
|
||||||
// 用户登录
|
onShow() {
|
||||||
LoginSms() {
|
// 获取图形码
|
||||||
if(this.checked) {
|
this.captchaInfo()
|
||||||
Login({
|
},
|
||||||
username : this.phone,
|
|
||||||
password : this.password
|
methods: {
|
||||||
}).then(res => {
|
// 图形码
|
||||||
// 存储用户token
|
captchaInfo() {
|
||||||
this.$store.commit('setToken', res.token_type + ' ' + res.access_token)
|
Captcha().then(res=>{
|
||||||
|
console.log(res)
|
||||||
// 回到首页
|
this.captchaImg = res.img
|
||||||
this.$Router.replaceAll({name: 'Index'})
|
this.captchaKey = res.key
|
||||||
// this.$Router.back()
|
}).catch(err=>{
|
||||||
}).catch(err => {
|
uni.showToast({
|
||||||
uni.showToast({
|
title: err.message,
|
||||||
title: err.message,
|
icon : 'none'
|
||||||
icon: "none"
|
})
|
||||||
})
|
})
|
||||||
})
|
},
|
||||||
} else {
|
|
||||||
uni.showToast({
|
// 看不清,换一张 - 图形码数据
|
||||||
title: '请勾选用户隐私和服务协议',
|
replaceClick() {
|
||||||
icon: "none"
|
this.captchaInfo();
|
||||||
})
|
|
||||||
}
|
// 清除图形码数据
|
||||||
},
|
this.newCaptcha = ''
|
||||||
|
},
|
||||||
// 勾选协议
|
|
||||||
radioChange() {
|
// 需校验图形验证码
|
||||||
this.checked = !this.checked
|
checkCaptcha() {
|
||||||
},
|
if(this.phone) {
|
||||||
|
let outTime
|
||||||
// 查看密码
|
smsAuth({
|
||||||
seeClick() {
|
mobileNo : this.phone,
|
||||||
this.seeState = !this.seeState
|
captcha : this.newCaptcha,
|
||||||
this.passwordState = !this.passwordState
|
captcha_key: this.captchaKey
|
||||||
},
|
}).then(res => {
|
||||||
|
uni.showToast({
|
||||||
}
|
title: res.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
|
||||||
|
this.getSms = true
|
||||||
|
outTime = setInterval(() => {
|
||||||
|
if (this.smsTime <= 1) {
|
||||||
|
this.getSms = false
|
||||||
|
this.smsTime = 60
|
||||||
|
clearInterval('outTime')
|
||||||
|
}
|
||||||
|
this.smsTime -= 1
|
||||||
|
}, 1000)
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
uni.showToast({
|
||||||
|
title: '请输入手机号',
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 勾选协议
|
||||||
|
radioChange() {
|
||||||
|
this.checked = !this.checked
|
||||||
|
},
|
||||||
|
|
||||||
|
// 验证码登录
|
||||||
|
LoginSms() {
|
||||||
|
if(this.checked) {
|
||||||
|
authSms({
|
||||||
|
mobileNo : this.phone,
|
||||||
|
parent_id : '',
|
||||||
|
code : this.code
|
||||||
|
}).then(res => {
|
||||||
|
// 存储用户token
|
||||||
|
this.$store.commit('setToken', res.token_type + ' ' + res.access_token)
|
||||||
|
|
||||||
|
// 回到首页
|
||||||
|
this.$Router.replaceAll({name: 'Index'})
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
uni.showToast({
|
||||||
|
title: '请勾选用户隐私和服务协议',
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.loginBack {
|
.loginBack {
|
||||||
width: 35%;
|
width: 35%;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
top: 0;
|
top: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
}
|
}
|
||||||
.loginBottom {
|
.loginBottom {
|
||||||
width: 60%;
|
width: 60%;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.agreement {
|
.agreement {
|
||||||
padding: $padding 0 $padding - 20 $padding - 10;
|
padding: $padding 0 $padding - 20 $padding - 10;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
display: flex;
|
display: flex;
|
||||||
font-size: $title-size-sm;
|
font-size: $title-size-sm;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
line-height: 60rpx;
|
line-height: 60rpx;
|
||||||
color: #979797;
|
color: #979797;
|
||||||
.radioGroup {
|
.radioGroup {
|
||||||
font-size: $title-size-sm;
|
font-size: $title-size-sm;
|
||||||
}
|
}
|
||||||
.agreement-text {
|
.agreement-text {
|
||||||
display: flex;
|
display: flex;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
view {
|
view {
|
||||||
color: $mian-color;
|
color: $mian-color;
|
||||||
padding: 0 5rpx;
|
padding: 0 5rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
padding: $padding*4 $padding * 3 $padding*2;
|
padding: $padding*4 $padding * 3 $padding*2;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
.title-name {
|
.title-name {
|
||||||
font-size: $title-size + 10;
|
font-size: $title-size + 10;
|
||||||
margin-bottom: $margin - 10;
|
margin-bottom: $margin - 10;
|
||||||
}
|
}
|
||||||
.title-tips {
|
.title-tips {
|
||||||
color: #8e8e8e;
|
color: #8e8e8e;
|
||||||
font-size: $title-size-m;
|
font-size: $title-size-m;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.info {
|
.info {
|
||||||
padding: $padding * 3 0;
|
padding: $padding * 3 0;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 6;
|
z-index: 6;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
.info-cont {
|
.info-cont {
|
||||||
padding: 0 $padding * 3;
|
padding: 0 $padding * 3;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
.inputs {
|
.inputs {
|
||||||
background-color: #f7f8fa;
|
background-color: #f7f8fa;
|
||||||
height: 100rpx;
|
height: 100rpx;
|
||||||
line-height: 100rpx;
|
line-height: 100rpx;
|
||||||
margin-bottom: $margin + 20;
|
margin-bottom: $margin + 20;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
color: #868686;
|
color: #868686;
|
||||||
font-size: $title-size-m;
|
font-size: $title-size-m;
|
||||||
padding: 0 $padding + 10;
|
padding: 0 $padding + 10;
|
||||||
border-radius: $radius-m;
|
border-radius: $radius-m;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
position: relative;
|
position: relative;
|
||||||
.inputs-see {
|
.inputs-see {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: $padding;
|
right: $padding;
|
||||||
top: $padding;
|
top: $padding;
|
||||||
width: 38rpx;
|
width: 38rpx;
|
||||||
height: 38rpx;
|
height: 38rpx;
|
||||||
}
|
}
|
||||||
input {
|
input {
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.btn {
|
.btn {
|
||||||
background-image: linear-gradient(to right, #da2b56, #FBAF3B);
|
background-image: linear-gradient(to right, #da2b56, #FBAF3B);
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
border-radius: $radius-m;
|
border-radius: $radius-m;
|
||||||
font-size: $title-size;
|
font-size: $title-size;
|
||||||
height: 100rpx;
|
height: 100rpx;
|
||||||
line-height: 100rpx;
|
line-height: 100rpx;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin: $margin * 3 0 0;
|
margin: $margin * 3 0 0;
|
||||||
&[disabled] {
|
&[disabled] {
|
||||||
background-image: linear-gradient(to right, #ff8da9, #ffd0a2);
|
background-image: linear-gradient(to right, #ff8da9, #ffd0a2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.forget {
|
.forget {
|
||||||
display: flex;
|
display: flex;
|
||||||
line-height: 120rpx;
|
line-height: 120rpx;
|
||||||
font-size: $title-size-m;
|
font-size: $title-size-m;
|
||||||
.forget-label {
|
.forget-label {
|
||||||
flex: 2;
|
flex: 2;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
color: #7f8391;
|
color: #000000;
|
||||||
}
|
}
|
||||||
.forget-after {
|
.forget-after {
|
||||||
position: relative;
|
position: relative;
|
||||||
&::after {
|
&::after {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
content: '';
|
content: '';
|
||||||
left: 0;
|
left: 0;
|
||||||
bottom: calc(50% - 15rpx);
|
bottom: calc(50% - 15rpx);
|
||||||
width: 2rpx;
|
width: 2rpx;
|
||||||
height: 30rpx;
|
height: 30rpx;
|
||||||
background-color: #f6f6f6;
|
background-color: #f6f6f6;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.captcha-inputs {
|
||||||
|
height: 100rpx;
|
||||||
|
display: flex;
|
||||||
|
margin-top: $margin + 20;
|
||||||
|
.campus-form-graph {
|
||||||
|
width: 220rpx;
|
||||||
|
margin-top: 20rpx;
|
||||||
|
border-radius: 5rpx;
|
||||||
|
}
|
||||||
|
.captcha-campus-inputs{
|
||||||
|
flex: 1;
|
||||||
|
margin-right: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.campus-inputs {
|
||||||
|
background-color: #f7f8fa;
|
||||||
|
height: 100rpx;
|
||||||
|
line-height: 100rpx;
|
||||||
|
box-sizing: border-box;
|
||||||
|
color: #868686;
|
||||||
|
font-size: $title-size-m;
|
||||||
|
padding: 0 $padding + 10;
|
||||||
|
border-radius: $radius-m;
|
||||||
|
box-sizing: border-box;
|
||||||
|
position: relative;
|
||||||
|
input {
|
||||||
|
font-weight: normal;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.campus-form-code{
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 30rpx;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
font-size: 30rpx;
|
||||||
|
height: 100rpx;
|
||||||
|
line-height: 100rpx;
|
||||||
|
color: #f25448;
|
||||||
|
&::after{
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
&[disabled]{
|
||||||
|
color: rgba($color: #f25448, $alpha: .5);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
220
pages/login/passwordLogin.vue
Normal file
220
pages/login/passwordLogin.vue
Normal file
@@ -0,0 +1,220 @@
|
|||||||
|
<template>
|
||||||
|
<view class="content">
|
||||||
|
<img class="loginBack" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5682d339246af0f44b4984c849288aa5.png">
|
||||||
|
<img class="loginBottom" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/caa46039d88517ee8ba22b6c32dd47a1.png">
|
||||||
|
<view class="title">
|
||||||
|
<view class="title-name">
|
||||||
|
用户登录
|
||||||
|
</view>
|
||||||
|
<view class="title-tips">
|
||||||
|
密码登录仅适用于已注册用户
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="info">
|
||||||
|
<view class="info-cont">
|
||||||
|
<!-- 输入手机号相关 -->
|
||||||
|
<view class="inputs">
|
||||||
|
<input type="number" placeholder="请输入手机号" maxlength="11" v-model="phone" />
|
||||||
|
</view>
|
||||||
|
<!-- 输入密码 -->
|
||||||
|
<view class="inputs">
|
||||||
|
<input type="text" :password="passwordState" placeholder="请输入密码" v-model="password" />
|
||||||
|
<image class="inputs-see" @click="seeClick" :src="seeState ? '../../static/icon/see_active.png' : '../../static/icon/see.png'" mode="aspectFill"></image>
|
||||||
|
</view>
|
||||||
|
<button class="btn" type="default" @click="LoginSms" :disabled="phone == '' || password == ''">立即登录</button>
|
||||||
|
<view class="forget-label forget-after" style="width: 100%; text-align: center; padding-top: 15rpx; font-size: 28rpx; color: #7f8391;" @click="$Router.push({name: 'Forget'})">忘记密码?</view>
|
||||||
|
<view class="forget">
|
||||||
|
<view class="forget-label" @click="$Router.push({name: 'Register'})">我要注册</view>
|
||||||
|
<view class="forget-label forget-after" @click="$Router.push({name: 'Login'})">验证码登录</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
<!-- 用户登录注册协议 -->
|
||||||
|
<view class="agreement">
|
||||||
|
<checkbox-group @change="radioChange">
|
||||||
|
<checkbox color="#da2b56" :checked="checked" style="transform: scale(.55)" class="radioGroup" />
|
||||||
|
</checkbox-group>
|
||||||
|
<view class="agreement-text">
|
||||||
|
我已阅读并同意抖火法律<view @click="$Router.push({name: 'Agreement', params: {page : 3}})">《隐私协议》</view>和<view @click="$Router.push({name: 'Agreement', params: {page : 4}})">《服务协议》</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { Login } from '@/apis/interfaces/auth'
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
phone : '', // 手机号码
|
||||||
|
password: '', // 登录密码
|
||||||
|
checked : false, // 勾选协议
|
||||||
|
seeState : false, //小眼睛
|
||||||
|
passwordState: true,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
// 用户登录
|
||||||
|
LoginSms() {
|
||||||
|
if(this.checked) {
|
||||||
|
Login({
|
||||||
|
username : this.phone,
|
||||||
|
password : this.password
|
||||||
|
}).then(res => {
|
||||||
|
// 存储用户token
|
||||||
|
this.$store.commit('setToken', res.token_type + ' ' + res.access_token)
|
||||||
|
|
||||||
|
// 回到首页
|
||||||
|
this.$Router.replaceAll({name: 'Index'})
|
||||||
|
// this.$Router.back()
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
uni.showToast({
|
||||||
|
title: '请勾选用户隐私和服务协议',
|
||||||
|
icon: "none"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// 勾选协议
|
||||||
|
radioChange() {
|
||||||
|
this.checked = !this.checked
|
||||||
|
},
|
||||||
|
|
||||||
|
// 查看密码
|
||||||
|
seeClick() {
|
||||||
|
this.seeState = !this.seeState
|
||||||
|
this.passwordState = !this.passwordState
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.loginBack {
|
||||||
|
width: 35%;
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
.loginBottom {
|
||||||
|
width: 60%;
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.agreement {
|
||||||
|
padding: $padding 0 $padding - 20 $padding - 10;
|
||||||
|
box-sizing: border-box;
|
||||||
|
display: flex;
|
||||||
|
font-size: $title-size-sm;
|
||||||
|
width: 100%;
|
||||||
|
line-height: 60rpx;
|
||||||
|
color: #979797;
|
||||||
|
.radioGroup {
|
||||||
|
font-size: $title-size-sm;
|
||||||
|
}
|
||||||
|
.agreement-text {
|
||||||
|
display: flex;
|
||||||
|
width: 100%;
|
||||||
|
view {
|
||||||
|
color: $mian-color;
|
||||||
|
padding: 0 5rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
padding: $padding*4 $padding * 3 $padding*2;
|
||||||
|
box-sizing: border-box;
|
||||||
|
.title-name {
|
||||||
|
font-size: $title-size + 10;
|
||||||
|
margin-bottom: $margin - 10;
|
||||||
|
}
|
||||||
|
.title-tips {
|
||||||
|
color: #8e8e8e;
|
||||||
|
font-size: $title-size-m;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.info {
|
||||||
|
padding: $padding * 3 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
position: absolute;
|
||||||
|
z-index: 6;
|
||||||
|
width: 100%;
|
||||||
|
.info-cont {
|
||||||
|
padding: 0 $padding * 3;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.inputs {
|
||||||
|
background-color: #f7f8fa;
|
||||||
|
height: 100rpx;
|
||||||
|
line-height: 100rpx;
|
||||||
|
margin-bottom: $margin + 20;
|
||||||
|
box-sizing: border-box;
|
||||||
|
color: #868686;
|
||||||
|
font-size: $title-size-m;
|
||||||
|
padding: 0 $padding + 10;
|
||||||
|
border-radius: $radius-m;
|
||||||
|
box-sizing: border-box;
|
||||||
|
position: relative;
|
||||||
|
.inputs-see {
|
||||||
|
position: absolute;
|
||||||
|
right: $padding;
|
||||||
|
top: $padding;
|
||||||
|
width: 38rpx;
|
||||||
|
height: 38rpx;
|
||||||
|
}
|
||||||
|
input {
|
||||||
|
font-weight: normal;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.btn {
|
||||||
|
background-image: linear-gradient(to right, #da2b56, #FBAF3B);
|
||||||
|
color: #ffffff;
|
||||||
|
border-radius: $radius-m;
|
||||||
|
font-size: $title-size;
|
||||||
|
height: 100rpx;
|
||||||
|
line-height: 100rpx;
|
||||||
|
padding: 0;
|
||||||
|
margin: $margin * 3 0 0;
|
||||||
|
&[disabled] {
|
||||||
|
background-image: linear-gradient(to right, #ff8da9, #ffd0a2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.forget {
|
||||||
|
display: flex;
|
||||||
|
line-height: 120rpx;
|
||||||
|
font-size: $title-size-m;
|
||||||
|
.forget-label {
|
||||||
|
flex: 2;
|
||||||
|
text-align: center;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
.forget-after {
|
||||||
|
position: relative;
|
||||||
|
&::after {
|
||||||
|
position: absolute;
|
||||||
|
content: '';
|
||||||
|
left: 0;
|
||||||
|
bottom: calc(50% - 15rpx);
|
||||||
|
width: 2rpx;
|
||||||
|
height: 30rpx;
|
||||||
|
background-color: #f6f6f6;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
135
pages/management/account.vue
Normal file
135
pages/management/account.vue
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
<template>
|
||||||
|
<view class="from-content">
|
||||||
|
<view class="from-block" v-if="pickerArr.length > 0" >
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>办理业务</label>
|
||||||
|
<picker class="from-block-val" :range="pickerArr" :value="pickerIndex" range-key="title" @change="pickerIndex = $event.detail.value">
|
||||||
|
<view class="from-block-picker nowrap">{{pickerArr[pickerIndex].title}}
|
||||||
|
<u-icon class="from-block-picker-icon" name="arrow-down" color="#555" size="15"></u-icon>
|
||||||
|
</view>
|
||||||
|
</picker>
|
||||||
|
</view>
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>业务价格</label>
|
||||||
|
<view class="from-block-val price">¥{{pickerArr[pickerIndex].price}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>业务描述</label>
|
||||||
|
<view class="from-block-val">{{pickerArr[pickerIndex].subtitle}}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="from-block">
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>客户姓名</label>
|
||||||
|
<input class="from-block-val from-block-input" placeholder="请输入客户姓名" v-model="name" />
|
||||||
|
</view>
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>手机号码</label>
|
||||||
|
<input class="from-block-val from-block-input" type="number" placeholder="请输入客户手机号码" maxlength="11" v-model="phone" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<button class="from-btn" @click="onSubmit">提交办理</button>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { accountManagement, accountFrom } from '@/apis/interfaces/index.js'
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
pickerArr : [],
|
||||||
|
pickerIndex : 0,
|
||||||
|
name : '',
|
||||||
|
phone : ''
|
||||||
|
};
|
||||||
|
},
|
||||||
|
onLoad() {
|
||||||
|
uni.showLoading({
|
||||||
|
title: '加载中...',
|
||||||
|
mask : true
|
||||||
|
})
|
||||||
|
accountManagement().then(res => {
|
||||||
|
uni.hideLoading()
|
||||||
|
this.pickerArr = res;
|
||||||
|
this.pickerIndex = res.findIndex(val => val.id == this.$Route.query.id)
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 提交表单
|
||||||
|
onSubmit(){
|
||||||
|
let { name, phone, pickerArr, pickerIndex } = this
|
||||||
|
|
||||||
|
console.log(pickerArr[pickerIndex])
|
||||||
|
|
||||||
|
if(name === ''){
|
||||||
|
uni.showToast({
|
||||||
|
title: '请输入客户姓名',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(phone === ''){
|
||||||
|
uni.showToast({
|
||||||
|
title: '请输入客户手机号码',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
uni.showLoading({
|
||||||
|
title: "提交中...",
|
||||||
|
mask : true
|
||||||
|
})
|
||||||
|
accountFrom({
|
||||||
|
name : name,
|
||||||
|
mobile : phone
|
||||||
|
}, pickerArr[pickerIndex].id).then(res => {
|
||||||
|
let { order_type, order_id, order_no, total } = res;
|
||||||
|
this.$Router.replace({name: 'FeePay', params: {id: order_id, orderType: order_type, price: total, payForm: 'synthesize'}})
|
||||||
|
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.from-content{
|
||||||
|
min-height: 100vh;
|
||||||
|
padding: 30rpx;
|
||||||
|
background: #f7f8f9;
|
||||||
|
}
|
||||||
|
.from-block{
|
||||||
|
background: white;
|
||||||
|
border-radius: 20rpx;
|
||||||
|
margin-bottom: 30rpx;
|
||||||
|
padding: 0 30rpx;
|
||||||
|
}
|
||||||
|
.from-block-item{
|
||||||
|
min-height: 70rpx;
|
||||||
|
display: flex;
|
||||||
|
font-size: 32rpx;
|
||||||
|
border-bottom: solid 1rpx #f3f3f3;
|
||||||
|
padding: 15rpx 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
.from-block-item:last-child{ border: none; }
|
||||||
|
label{ width: 200rpx; line-height: 70rpx; }
|
||||||
|
.from-block-val{ width: calc(100% - 200rpx); text-align: right; line-height: 70rpx;}
|
||||||
|
.from-block-val.price{ color: #446EFE; font-weight: bold; }
|
||||||
|
.from-block-input{ height: 70rpx; font-size: 32rpx; }
|
||||||
|
.from-block-picker{ padding-right: 50rpx; position: relative; }
|
||||||
|
.from-block-picker-icon{ position: absolute; right: 0; top: 50%; margin-top: -15rpx; }
|
||||||
|
.from-btn{ width: 100%; background-color: #446EFE; color: white; line-height: 95rpx; height: 95rpx; border-radius: 45rpx; font-size: 32rpx; font-weight: bold;
|
||||||
|
&::after{ display: none; }
|
||||||
|
}
|
||||||
|
</style>
|
||||||
139
pages/management/delegation.vue
Normal file
139
pages/management/delegation.vue
Normal file
@@ -0,0 +1,139 @@
|
|||||||
|
<template>
|
||||||
|
<view class="from-content">
|
||||||
|
<view class="from-block" v-if="pickerArr.length > 0" >
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>办理业务</label>
|
||||||
|
<picker class="from-block-val" :range="pickerArr" :value="pickerIndex" range-key="title" @change="pickerIndex = $event.detail.value">
|
||||||
|
<view class="from-block-picker nowrap">{{pickerArr[pickerIndex].title}}
|
||||||
|
<u-icon class="from-block-picker-icon" name="arrow-down" color="#555" size="15"></u-icon>
|
||||||
|
</view>
|
||||||
|
</picker>
|
||||||
|
</view>
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>业务价格</label>
|
||||||
|
<view class="from-block-val price">¥{{pickerArr[pickerIndex].price}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>业务描述</label>
|
||||||
|
<view class="from-block-val">{{pickerArr[pickerIndex].subtitle}}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="from-block">
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>客户姓名</label>
|
||||||
|
<input class="from-block-val from-block-input" placeholder="请输入客户姓名" v-model="name" />
|
||||||
|
</view>
|
||||||
|
<view class="from-block-item">
|
||||||
|
<label>手机号码</label>
|
||||||
|
<input class="from-block-val from-block-input" type="number" placeholder="请输入客户手机号码" maxlength="11" v-model="phone" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<button class="from-btn" @click="onSubmit">提交办理</button>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { delegation, delegationFrom } from '@/apis/interfaces/index.js'
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
pickerArr : [],
|
||||||
|
pickerIndex : 0,
|
||||||
|
name : '',
|
||||||
|
phone : ''
|
||||||
|
};
|
||||||
|
},
|
||||||
|
onLoad() {
|
||||||
|
uni.showLoading({
|
||||||
|
title: '加载中...',
|
||||||
|
mask : true
|
||||||
|
})
|
||||||
|
delegation().then(res => {
|
||||||
|
uni.hideLoading()
|
||||||
|
this.pickerArr = res;
|
||||||
|
this.pickerIndex = res.findIndex(val => val.id == this.$Route.query.id)
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 提交表单
|
||||||
|
onSubmit(){
|
||||||
|
let { name, phone, pickerArr, pickerIndex } = this
|
||||||
|
if(name === ''){
|
||||||
|
uni.showToast({
|
||||||
|
title: '请输入客户姓名',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(phone === ''){
|
||||||
|
uni.showToast({
|
||||||
|
title: '请输入客户手机号码',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
uni.showLoading({
|
||||||
|
title: "提交中...",
|
||||||
|
mask : true
|
||||||
|
})
|
||||||
|
delegationFrom({
|
||||||
|
name : name,
|
||||||
|
mobile : phone
|
||||||
|
}, pickerArr[pickerIndex].id).then(res => {
|
||||||
|
let { order_type, order_id, order_no } = res;
|
||||||
|
this.$Router.replace({
|
||||||
|
name : 'Pay',
|
||||||
|
params : {
|
||||||
|
paytype : 'synthesize',
|
||||||
|
orderId : order_id,
|
||||||
|
orderType : order_type.replace(/\\/g, '-')
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}).catch(err => {
|
||||||
|
|
||||||
|
console.log(err)
|
||||||
|
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
.from-content{
|
||||||
|
min-height: 100vh;
|
||||||
|
padding: 30rpx;
|
||||||
|
background: #f7f8f9;
|
||||||
|
}
|
||||||
|
.from-block{
|
||||||
|
background: white;
|
||||||
|
border-radius: 20rpx;
|
||||||
|
margin-bottom: 30rpx;
|
||||||
|
padding: 0 30rpx;
|
||||||
|
}
|
||||||
|
.from-block-item{
|
||||||
|
min-height: 70rpx;
|
||||||
|
display: flex;
|
||||||
|
font-size: 32rpx;
|
||||||
|
border-bottom: solid 1rpx #f3f3f3;
|
||||||
|
padding: 15rpx 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
.from-block-item:last-child{ border: none; }
|
||||||
|
label{ width: 200rpx; line-height: 70rpx; }
|
||||||
|
.from-block-val{ width: calc(100% - 200rpx); text-align: right; line-height: 70rpx;}
|
||||||
|
.from-block-val.price{ color: #446EFE; font-weight: bold; }
|
||||||
|
.from-block-input{ height: 70rpx; font-size: 32rpx; }
|
||||||
|
.from-block-picker{ padding-right: 50rpx; position: relative; }
|
||||||
|
.from-block-picker-icon{ position: absolute; right: 0; top: 50%; margin-top: -15rpx; }
|
||||||
|
.from-btn{ width: 100%; background-color: #446EFE; color: white; line-height: 95rpx; height: 95rpx; border-radius: 45rpx; font-size: 32rpx; font-weight: bold;
|
||||||
|
&::after{ display: none; }
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -217,8 +217,9 @@
|
|||||||
}
|
}
|
||||||
// 获取微信授权信息-获取oppid
|
// 获取微信授权信息-获取oppid
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webWechat/index'
|
url: 'https://web.douhuofalv.com/webWechat/index'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webWechat/index'
|
// url: 'https://web.douhuotest.douhuofalv.com/webWechat/index',
|
||||||
|
// url: 'http://web.douhuo.demos.uzchain.tech/webWechat/index' 最新
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -78,8 +78,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode',
|
url: 'https://web.douhuofalv.com/webview/webCode',
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -1,188 +1,188 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="create-type">
|
<view class="create-type">
|
||||||
<view class="create-type-title">
|
<view class="create-type-title">
|
||||||
选择咨询类型
|
选择咨询类型
|
||||||
</view>
|
</view>
|
||||||
<block v-for="(item, index) in synthesisArr" :key="index+'synthesis'">
|
<block v-for="(item, index) in synthesisArr" :key="index+'synthesis'">
|
||||||
<view class="create-type-item" :class="{'active': item.self_type + item.synthesis_id == businessName}" @click="onBusiness(item.self_type, item.synthesis_id)">
|
<view class="create-type-item" :class="{'active': item.self_type + item.synthesis_id == businessName}" @click="onBusiness(item.self_type, item.synthesis_id)">
|
||||||
<image class="create-type-icon" :src="item.cover" mode="aspectFill"></image>
|
<image class="create-type-icon" :src="item.cover" mode="aspectFill"></image>
|
||||||
<view class="create-type-text">
|
<view class="create-type-text">
|
||||||
<view class="title nowrap">{{item.title || '-'}}</view>
|
<view class="title nowrap">{{item.title || '-'}}</view>
|
||||||
<view class="submit nowrap">免费咨询一次</view>
|
<!-- <view class="submit nowrap">免费咨询一次</view> -->
|
||||||
</view>
|
</view>
|
||||||
<image class="create-type-check" :src="item.self_type + item.synthesis_id == businessName ? '/static/icon/Check_active.png' : '/static/icon/Check.png'" mode="aspectFill"></image>
|
<image class="create-type-check" :src="item.self_type + item.synthesis_id == businessName ? '/static/icon/Check_active.png' : '/static/icon/Check.png'" mode="aspectFill"></image>
|
||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="create-btn">
|
<view class="create-btn">
|
||||||
<button size="default" @click="onNext()">下一步</button>
|
<button size="default" @click="onNext()">下一步</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { workIndex } from '@/apis/interfaces/index'
|
import { workIndex } from '@/apis/interfaces/index'
|
||||||
import { synthList } from '@/apis/interfaces/synthesis'
|
import { synthList } from '@/apis/interfaces/synthesis'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
businessArr : [],
|
businessArr : [],
|
||||||
businessType: '',
|
businessType: '',
|
||||||
businessName: '',
|
businessName: '',
|
||||||
businessId : '',
|
businessId : '',
|
||||||
synthesisArr: []
|
synthesisArr: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
// 业务类型列表
|
// 业务类型列表
|
||||||
workIndex().then(res => {
|
workIndex().then(res => {
|
||||||
this.businessArr = res
|
this.businessArr = res
|
||||||
this.businessType= res[0].self_type
|
this.businessType= res[0].self_type
|
||||||
this.businessName= res[0].self_type + res[0].business_id
|
this.businessName= res[0].self_type + res[0].business_id
|
||||||
this.businessId = res[0].business_id
|
this.businessId = res[0].business_id
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: err.message,
|
title: err.message,
|
||||||
icon : 'none'
|
icon : 'none'
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
// 综法类型列表
|
// 综法类型列表
|
||||||
synthList().then(res => {
|
synthList().then(res => {
|
||||||
this.synthesisArr = res
|
this.synthesisArr = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: err.message,
|
title: err.message,
|
||||||
icon : 'none'
|
icon : 'none'
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 选择业务类型
|
// 选择业务类型
|
||||||
onBusiness(type, id){
|
onBusiness(type, id){
|
||||||
this.businessName = type + id
|
this.businessName = type + id
|
||||||
this.businessType = type
|
this.businessType = type
|
||||||
this.businessId = id
|
this.businessId = id
|
||||||
},
|
},
|
||||||
|
|
||||||
// 创建业务单
|
// 创建业务单
|
||||||
onNext(){
|
onNext(){
|
||||||
// 信用卡/贷款
|
// 信用卡/贷款
|
||||||
if(this.businessType == 'business') {
|
if(this.businessType == 'business') {
|
||||||
let busines = this.businessArr.find(val => val.business_id === this.businessId)
|
let busines = this.businessArr.find(val => val.business_id === this.businessId)
|
||||||
|
|
||||||
this.$Router.replace({
|
this.$Router.replace({
|
||||||
name : 'sheetBasic',
|
name : 'sheetBasic',
|
||||||
params : {
|
params : {
|
||||||
businessTitle : busines.title,
|
businessTitle : busines.title,
|
||||||
businessId : busines.business_id,
|
businessId : busines.business_id,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 综法
|
// 综法
|
||||||
let synthesis = this.synthesisArr.find(val => val.synthesis_id === this.businessId)
|
let synthesis = this.synthesisArr.find(val => val.synthesis_id === this.businessId)
|
||||||
if(synthesis.can.buy) {
|
if(synthesis.can.buy) {
|
||||||
this.$Router.push({
|
this.$Router.push({
|
||||||
name : 'FeeWrite',
|
name : 'FeeWrite',
|
||||||
params : {
|
params : {
|
||||||
synthesisId: synthesis.synthesis_id
|
synthesisId: synthesis.synthesis_id
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.$Router.replace({
|
this.$Router.replace({
|
||||||
name : 'PersonBrief',
|
name : 'PersonBrief',
|
||||||
params : {
|
params : {
|
||||||
synthesisId: synthesis.synthesis_id,
|
synthesisId: synthesis.synthesis_id,
|
||||||
type: 1
|
type: 1
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.content {
|
.content {
|
||||||
padding: 50rpx;
|
padding: 50rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
// height: calc(100vh - 44px);
|
// height: calc(100vh - 44px);
|
||||||
background-color: #fcfcfc;
|
background-color: #fcfcfc;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 选择业务类型
|
// 选择业务类型
|
||||||
.create-type{
|
.create-type{
|
||||||
padding-top: 50rpx;
|
padding-top: 50rpx;
|
||||||
.create-type-title{
|
.create-type-title{
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: $title-size + 4;
|
font-size: $title-size + 4;
|
||||||
margin-bottom: 70rpx;
|
margin-bottom: 70rpx;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
text {
|
text {
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
color: gray;
|
color: gray;
|
||||||
display: block;
|
display: block;
|
||||||
font-size: $title-size-m;
|
font-size: $title-size-m;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.create-type-item{
|
.create-type-item{
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
border-radius: $radius-m;
|
border-radius: $radius-m;
|
||||||
padding: 35rpx 30rpx;
|
padding: 35rpx 30rpx;
|
||||||
margin-top: 30rpx;
|
margin-top: 30rpx;
|
||||||
border:solid 1rpx #f8f8f8;
|
border:solid 1rpx #f8f8f8;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
box-shadow: 0 0 5rpx rgba(0, 0, 0, .05);
|
box-shadow: 0 0 5rpx rgba(0, 0, 0, .05);
|
||||||
position: relative;
|
position: relative;
|
||||||
.create-type-icon{
|
.create-type-icon{
|
||||||
width: 88rpx;
|
width: 88rpx;
|
||||||
height: 88rpx;
|
height: 88rpx;
|
||||||
margin-right: $margin;
|
margin-right: $margin;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border-radius: $radius;
|
border-radius: $radius;
|
||||||
}
|
}
|
||||||
.create-type-text{
|
.create-type-text{
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
.title{
|
.title{
|
||||||
font-size: 30rpx;
|
font-size: 30rpx;
|
||||||
}
|
}
|
||||||
.submit{
|
.submit{
|
||||||
color: gray;
|
color: gray;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.create-type-check {
|
.create-type-check {
|
||||||
width: 38rpx;
|
width: 38rpx;
|
||||||
height: 38rpx;
|
height: 38rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 44rpx;
|
top: 60rpx;
|
||||||
right: 30rpx;
|
right: 30rpx;
|
||||||
}
|
}
|
||||||
&.active{
|
&.active{
|
||||||
border:solid 1rpx #ff9fb1;
|
border:solid 1rpx #ff9fb1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 按钮
|
// 按钮
|
||||||
.create-btn{
|
.create-btn{
|
||||||
margin-top: 100rpx;
|
margin-top: 100rpx;
|
||||||
button[size="default"]{
|
button[size="default"]{
|
||||||
height: 90rpx;
|
height: 90rpx;
|
||||||
line-height: 90rpx;
|
line-height: 90rpx;
|
||||||
background: $mian-color;
|
background: $mian-color;
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
color: white;
|
color: white;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
&::after{
|
&::after{
|
||||||
border: none;
|
border: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -94,8 +94,8 @@
|
|||||||
realName({
|
realName({
|
||||||
front_card: this.frontCard.path,
|
front_card: this.frontCard.path,
|
||||||
back_card : this.backCard.path,
|
back_card : this.backCard.path,
|
||||||
// redirect_url: "https://web.douhuofalv.com/sheet/authSuccess",
|
redirect_url: "https://web.douhuofalv.com/sheet/authSuccess",
|
||||||
redirect_url: "https://web.douhuotest.douhuofalv.com/sheet/authSuccess"
|
// redirect_url: "https://web.douhuotest.douhuofalv.com/sheet/authSuccess"
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
this.realData = res.certification
|
this.realData = res.certification
|
||||||
this.authShortUrl = res.sign.authShortUrl
|
this.authShortUrl = res.sign.authShortUrl
|
||||||
|
|||||||
@@ -558,8 +558,8 @@
|
|||||||
// 去签约
|
// 去签约
|
||||||
contractClick(id) {
|
contractClick(id) {
|
||||||
contractGo(id, {
|
contractGo(id, {
|
||||||
// redirect_url: "https://web.douhuofalv.com/user/index",
|
redirect_url: "https://web.douhuofalv.com/user/index",
|
||||||
redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
// redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
||||||
app_scheme : ''
|
app_scheme : ''
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
// let faceUrl = encodeURIComponent(res.sign_url)
|
// let faceUrl = encodeURIComponent(res.sign_url)
|
||||||
|
|||||||
@@ -81,8 +81,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode',
|
url: 'https://web.douhuofalv.com/webview/webCode',
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -289,8 +289,9 @@
|
|||||||
|
|
||||||
// 获取微信授权信息-获取oppid
|
// 获取微信授权信息-获取oppid
|
||||||
authFollow({
|
authFollow({
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
// url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
||||||
// url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
// url: 'http://web.douhuo.demos.uzchain.tech/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price 最新
|
||||||
|
url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -436,8 +436,8 @@
|
|||||||
// 去签约
|
// 去签约
|
||||||
contractClick() {
|
contractClick() {
|
||||||
contractGo(this.$Route.query.id, {
|
contractGo(this.$Route.query.id, {
|
||||||
// redirect_url: "https://web.douhuofalv.com/user/index",
|
redirect_url: "https://web.douhuofalv.com/user/index",
|
||||||
redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
// redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
||||||
app_scheme : ''
|
app_scheme : ''
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
// let faceUrl = encodeURIComponent(res.sign_url)
|
// let faceUrl = encodeURIComponent(res.sign_url)
|
||||||
|
|||||||
@@ -231,8 +231,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -240,8 +240,8 @@
|
|||||||
esignUrl({
|
esignUrl({
|
||||||
order_id : id,
|
order_id : id,
|
||||||
order_type: type,
|
order_type: type,
|
||||||
// redirect_url: "https://web.douhuofalv.com/user/index",
|
redirect_url: "https://web.douhuofalv.com/user/index",
|
||||||
redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
// redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
||||||
channel : 'h5',
|
channel : 'h5',
|
||||||
app_scheme : ''
|
app_scheme : ''
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
|
|||||||
@@ -210,8 +210,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -219,8 +219,8 @@
|
|||||||
esignUrl({
|
esignUrl({
|
||||||
order_id : id,
|
order_id : id,
|
||||||
order_type: type,
|
order_type: type,
|
||||||
// redirect_url: "https://web.douhuofalv.com/user/index",
|
redirect_url: "https://web.douhuofalv.com/user/index",
|
||||||
redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
// redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
||||||
channel : 'h5',
|
channel : 'h5',
|
||||||
app_scheme : ''
|
app_scheme : ''
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
|
|||||||
@@ -116,7 +116,7 @@
|
|||||||
const jweixin = require('jweixin-module');
|
const jweixin = require('jweixin-module');
|
||||||
import { Apply, Wechat, authFollow } from '@/apis/interfaces/index'
|
import { Apply, Wechat, authFollow } from '@/apis/interfaces/index'
|
||||||
import { ums, umsState } from '@/apis/interfaces/pay'
|
import { ums, umsState } from '@/apis/interfaces/pay'
|
||||||
import { servicePay, serviceUms, serviceDg, expandPay, expandUms, expandDg, entrustPay, entrustUms, entrustDg, synDiffPay, synDiffUms, synDiffDg } from '@/apis/interfaces/pay'
|
import { servicePay, serviceUms, serviceDg, expandPay, expandUms, expandDg, entrustPay, entrustUms, entrustDg, synDiffPay, synDiffUms, synDiffDg, payWechat, payUms, payDg } from '@/apis/interfaces/pay'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -133,7 +133,7 @@
|
|||||||
payForm : '', // 支付类型
|
payForm : '', // 支付类型
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
this.token = this.$store.getters.getToken
|
this.token = this.$store.getters.getToken
|
||||||
this.payPrice = this.$Route.query.price
|
this.payPrice = this.$Route.query.price
|
||||||
this.payForm = this.$Route.query.payForm
|
this.payForm = this.$Route.query.payForm
|
||||||
@@ -174,6 +174,8 @@
|
|||||||
apiUrl = expandDg
|
apiUrl = expandDg
|
||||||
} else if (this.payForm == 'entrust') {
|
} else if (this.payForm == 'entrust') {
|
||||||
apiUrl = entrustDg
|
apiUrl = entrustDg
|
||||||
|
} else if (this.payForm == 'synthesize') {
|
||||||
|
apiUrl = payDg
|
||||||
}
|
}
|
||||||
NewUrl = apiUrl
|
NewUrl = apiUrl
|
||||||
}
|
}
|
||||||
@@ -213,6 +215,8 @@
|
|||||||
apiUrl = serviceUms
|
apiUrl = serviceUms
|
||||||
} else if (this.payForm == 'expand') {
|
} else if (this.payForm == 'expand') {
|
||||||
apiUrl = expandUms
|
apiUrl = expandUms
|
||||||
|
} else if (this.payForm == 'synthesize') {
|
||||||
|
apiUrl = payUms
|
||||||
} else {
|
} else {
|
||||||
apiUrl = entrustUms
|
apiUrl = entrustUms
|
||||||
}
|
}
|
||||||
@@ -265,6 +269,8 @@
|
|||||||
apiUrl = servicePay
|
apiUrl = servicePay
|
||||||
} else if (this.payForm == 'expand') {
|
} else if (this.payForm == 'expand') {
|
||||||
apiUrl = expandPay
|
apiUrl = expandPay
|
||||||
|
} else if (this.payForm == 'synthesize') {
|
||||||
|
apiUrl = payWechat
|
||||||
} else {
|
} else {
|
||||||
apiUrl = entrustPay
|
apiUrl = entrustPay
|
||||||
}
|
}
|
||||||
@@ -307,6 +313,9 @@
|
|||||||
} else if (this.payForm == 'expand') {
|
} else if (this.payForm == 'expand') {
|
||||||
// 跳到拓展单
|
// 跳到拓展单
|
||||||
this.$Router.replace({name: 'ExpandOrder'})
|
this.$Router.replace({name: 'ExpandOrder'})
|
||||||
|
} else if (this.payForm == 'synthesize') {
|
||||||
|
// 个人中心
|
||||||
|
this.$Router.replace({name: 'User'})
|
||||||
} else {
|
} else {
|
||||||
// 跳到委托单
|
// 跳到委托单
|
||||||
this.$Router.replace({name: 'EntrustOrder'})
|
this.$Router.replace({name: 'EntrustOrder'})
|
||||||
@@ -329,6 +338,11 @@
|
|||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
this.$Router.replace({name: 'ExpandOrder'})
|
this.$Router.replace({name: 'ExpandOrder'})
|
||||||
},1000)
|
},1000)
|
||||||
|
} else if (this.payForm == 'synthesize') {
|
||||||
|
// 个人中心
|
||||||
|
setTimeout(()=>{
|
||||||
|
this.$Router.replace({name: 'User'})
|
||||||
|
},1000)
|
||||||
} else {
|
} else {
|
||||||
// 跳到委托单
|
// 跳到委托单
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
@@ -349,8 +363,9 @@
|
|||||||
|
|
||||||
// 获取微信授权信息-获取oppid
|
// 获取微信授权信息-获取oppid
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.orderId + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
// url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.orderId + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
|
||||||
|
// url: 'http://web.douhuo.demos.uzchain.tech/webWechat/index?id=' + this.orderId + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price 最新
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
@@ -370,6 +385,9 @@
|
|||||||
} else if (this.payForm == 'expand') {
|
} else if (this.payForm == 'expand') {
|
||||||
// 跳到拓展单
|
// 跳到拓展单
|
||||||
this.$Router.replace({name: 'ExpandOrder'})
|
this.$Router.replace({name: 'ExpandOrder'})
|
||||||
|
} else if (this.payForm == 'synthesize') {
|
||||||
|
// 个人中心
|
||||||
|
this.$Router.replace({name: 'User'})
|
||||||
} else {
|
} else {
|
||||||
// 跳到委托单
|
// 跳到委托单
|
||||||
this.$Router.replace({name: 'EntrustOrder'})
|
this.$Router.replace({name: 'EntrustOrder'})
|
||||||
|
|||||||
@@ -1,416 +1,425 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="top">
|
<view class="top">
|
||||||
<view class="top-cont">
|
<view class="top-cont">
|
||||||
<view class="top-cont-name">个人法律咨询</view>
|
<view class="top-cont-name">个人法律咨询</view>
|
||||||
<view class="top-cont-text">请仔细填写以下信息</view>
|
<view class="top-cont-text">请仔细填写以下信息</view>
|
||||||
</view>
|
</view>
|
||||||
<image class="top-img" src="https://cdn.douhuofalv.com/images/2023/04/20/2ea5fc20ffc90e7feec7ba2650b81c99.png" mode="widthFix"></image>
|
<image class="top-img" src="https://cdn.douhuofalv.com/images/2023/04/20/2ea5fc20ffc90e7feec7ba2650b81c99.png" mode="widthFix"></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="idcardBorder">
|
<view class="idcardBorder">
|
||||||
<!-- 表单部分 -->
|
<!-- 表单部分 -->
|
||||||
<view class="idcardAdd-block">
|
<view class="idcardAdd-block">
|
||||||
<block v-for="(item, keyIndex) in paramsArr" :key="keyIndex">
|
<block v-for="(item, keyIndex) in paramsArr" :key="keyIndex">
|
||||||
<block v-if="item.pre_key == null || isShow(item)">
|
<block v-if="item.pre_key == null || isShow(item)">
|
||||||
<view class="idcardAdd-block-name">
|
<view class="idcardAdd-block-name">
|
||||||
<view class="idcardAdd-block-see">
|
<view class="idcardAdd-block-see">
|
||||||
<text v-if="item.is_required == 1">*</text>{{item.title}}
|
<text v-if="item.is_required == 1">*</text>{{item.title}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 单输入框 -->
|
<!-- 单输入框 -->
|
||||||
<view class="idcardAdd-block-write" v-if="item.type === 'price' || item.type === 'number' || item.type === 'text' || item.type === 'password' || item.type === 'mobile' || item.type === 'day'">
|
<view class="idcardAdd-block-write" v-if="item.type === 'price' || item.type === 'number' || item.type === 'text' || item.type === 'password' || item.type === 'mobile' || item.type === 'day'">
|
||||||
<block v-if="item.key === 'name' || item.type === 'mobile'">
|
<block v-if="item.key === 'name' || item.type === 'mobile'">
|
||||||
<input class="idcardAdd-input" v-model="item.value" :placeholder="item.value_text" v-if="item.value_text">
|
<input class="idcardAdd-input" v-model="item.value" :placeholder="item.value_text" v-if="item.value_text">
|
||||||
<mouldInput v-else class="idcardAdd-input" :blur-value="item.value" :input-type="item.type" :input-title="item.title" :input-key="item.key" @onValue="($event) => {item.value = $event}"></mouldInput>
|
<mouldInput v-else class="idcardAdd-input" :blur-value="item.value" :input-type="item.type" :input-title="item.title" :input-key="item.key" @onValue="($event) => {item.value = $event}"></mouldInput>
|
||||||
</block>
|
</block>
|
||||||
<block v-else>
|
<block v-else>
|
||||||
<mouldInput class="idcardAdd-input" :blur-value="item.value" :input-type="item.type" :input-title="item.title" :input-key="item.key" @onValue="($event) => {item.value = $event}"></mouldInput>
|
<mouldInput class="idcardAdd-input" :blur-value="item.value" :input-type="item.type" :input-title="item.title" :input-key="item.key" @onValue="($event) => {item.value = $event}"></mouldInput>
|
||||||
</block>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
||||||
<!-- 下拉框 -->
|
<!-- 下拉框 -->
|
||||||
<view class="idcardAdd-block-write" v-if="item.type === 'select'">
|
<view class="idcardAdd-block-write" v-if="item.type === 'select'">
|
||||||
<picker class="idcardAdd-picker" :range="item.options" :value="item.value" @change="item.value = $event.detail.value">
|
<picker class="idcardAdd-picker" :range="item.options" :value="item.value" @change="item.value = $event.detail.value">
|
||||||
<view class="nowrap">
|
<view class="nowrap">
|
||||||
<!-- {{item.options[item.value]}} -->
|
<!-- {{item.options[item.value]}} -->
|
||||||
{{item.options[item.value]}}
|
{{item.options[item.value]}}
|
||||||
</view>
|
</view>
|
||||||
<image class="idcardAdd-picke-image" src="@/static/imgs/basic_down.png" mode="aspectFill"></image>
|
<image class="idcardAdd-picke-image" src="@/static/imgs/basic_down.png" mode="aspectFill"></image>
|
||||||
</picker>
|
</picker>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 多选 -->
|
<!-- 多选 -->
|
||||||
<view class="idcardAdd-aline" v-if="item.type === 'checkbox'">
|
<view class="idcardAdd-aline" v-if="item.type === 'checkbox'">
|
||||||
<checkbox-group @change="item.value = $event.detail.value">
|
<checkbox-group @change="item.value = $event.detail.value">
|
||||||
<label class="checkbox-item" v-for="(checkboxItem, checkboxIndex) in item.options">
|
<label class="checkbox-item" v-for="(checkboxItem, checkboxIndex) in item.options">
|
||||||
<checkbox class="checkbox-input" :value="checkboxIndex" color="#446EFE"></checkbox>{{checkboxItem}}
|
<checkbox class="checkbox-input" :value="checkboxIndex" color="#446EFE"></checkbox>{{checkboxItem}}
|
||||||
</label>
|
</label>
|
||||||
</checkbox-group>
|
</checkbox-group>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 单选 -->
|
<!-- 单选 -->
|
||||||
<view class="idcardAdd-aline" v-if="item.type === 'radio'">
|
<view class="idcardAdd-aline" v-if="item.type === 'radio'">
|
||||||
<radio-group @change="item.value = $event.detail.value">
|
<radio-group @change="item.value = $event.detail.value">
|
||||||
<label class="idcardAdd-aline-write" v-for="(radioItem, radioIndex) in item.options" :key="radioIndex">
|
<label class="idcardAdd-aline-write" v-for="(radioItem, radioIndex) in item.options" :key="radioIndex">
|
||||||
<radio :value="radioIndex" color="#446EFE" style="transform:scale(.65)" :checked="item.value === radioIndex" /><text>{{radioItem}}</text>
|
<radio :value="radioIndex" color="#446EFE" style="transform:scale(.65)" :checked="item.value === radioIndex" /><text>{{radioItem}}</text>
|
||||||
</label>
|
</label>
|
||||||
</radio-group>
|
</radio-group>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 描述 -->
|
<!-- 描述 -->
|
||||||
<view class="idcardAdd-depict-textarea" v-if="item.type === 'textarea'">
|
<view class="idcardAdd-depict-textarea" v-if="item.type === 'textarea'">
|
||||||
<textarea maxlength="500" class="textarea" :placeholder="'请输入' + item.title" v-model="item.value"></textarea>
|
<textarea maxlength="500" class="textarea" :placeholder="'请输入' + item.title" v-model="item.value"></textarea>
|
||||||
<text>500字以内</text>
|
<text>500字以内</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 被告所在地 -->
|
<!-- 被告所在地 -->
|
||||||
<block v-if="item.type === 'pro_city' && item.key === 'defendant_address'">
|
<block v-if="item.type === 'pro_city' && item.key === 'defendant_address'">
|
||||||
<view class="idcardAdd-block-write">
|
<view class="idcardAdd-block-write">
|
||||||
<uni-data-picker
|
<uni-data-picker
|
||||||
:localdata="cityPicker"
|
:localdata="cityPicker"
|
||||||
:border="false"
|
:border="false"
|
||||||
split="-"
|
split="-"
|
||||||
placeholder="选择城市"
|
placeholder="选择城市"
|
||||||
@change="defendantPicker"
|
@change="defendantPicker"
|
||||||
></uni-data-picker>
|
></uni-data-picker>
|
||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
<!-- 目前所在地 -->
|
<!-- 目前所在地 -->
|
||||||
<block v-if="item.type === 'pro_city' && item.key === 'address'">
|
<block v-if="item.type === 'pro_city' && item.key === 'address'">
|
||||||
<view class="idcardAdd-block-write">
|
<view class="idcardAdd-block-write">
|
||||||
<uni-data-picker
|
<uni-data-picker
|
||||||
:localdata="cityPicker"
|
:localdata="cityPicker"
|
||||||
:border="false"
|
:border="false"
|
||||||
split="-"
|
split="-"
|
||||||
placeholder="选择城市"
|
placeholder="选择城市"
|
||||||
@change="addressPicker"
|
@change="addressPicker"
|
||||||
></uni-data-picker>
|
></uni-data-picker>
|
||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
</block>
|
</block>
|
||||||
</block>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="idcardBtn">
|
<view class="idcardBtn">
|
||||||
<button class="idcardBtn-go" type="default" @click="onSubmit" :disabled="disabled">{{disabled ? '数据正在提交中' : '确认提交'}}</button>
|
<button class="idcardBtn-go" type="default" @click="onSubmit" :disabled="disabled">{{disabled ? '数据正在提交中' : '确认提交'}}</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { synthDet, synthPost } from '@/apis/interfaces/synthesis'
|
import { synthDet, synthPost } from '@/apis/interfaces/synthesis'
|
||||||
import { createCity } from '@/apis/interfaces/user'
|
import { createCity } from '@/apis/interfaces/user'
|
||||||
import mouldInput from '@/components/mould-input.vue'
|
import mouldInput from '@/components/mould-input.vue'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
mouldInput
|
mouldInput
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
paramsArr : [], // 信息
|
paramsArr : [], // 信息
|
||||||
cityPicker : [], // 地址
|
cityPicker : [], // 地址
|
||||||
|
|
||||||
// 目前所在地
|
// 目前所在地
|
||||||
address : {},
|
address : {},
|
||||||
|
|
||||||
disabled : false
|
disabled : false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
title: '加载中...',
|
title: '加载中...',
|
||||||
mask : true
|
mask : true
|
||||||
})
|
})
|
||||||
|
|
||||||
// 获取综法咨询-详情
|
// 获取综法咨询-详情
|
||||||
this.getBusiness();
|
this.getBusiness();
|
||||||
|
|
||||||
// 省市区
|
// 省市区
|
||||||
createCity().then(res => {
|
createCity().then(res => {
|
||||||
this.cityPicker = res;
|
this.cityPicker = res;
|
||||||
}).catch( err => {
|
}).catch( err => {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: err.message,
|
title: err.message,
|
||||||
icon: "none"
|
icon: "none"
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
isShow(){
|
isShow(){
|
||||||
return (item) => {
|
return (item) => {
|
||||||
if(item.pre_key != null){
|
if(item.pre_key != null){
|
||||||
let index = this.paramsArr.findIndex(val => val.key == item.pre_key)
|
let index = this.paramsArr.findIndex(val => val.key == item.pre_key)
|
||||||
return item.pre_value == this.paramsArr[index].value
|
return item.pre_value == this.paramsArr[index].value
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
// 综法咨询-详情
|
// 综法咨询-详情
|
||||||
getBusiness(){
|
getBusiness(){
|
||||||
synthDet(this.$Route.query.synthesisId).then(res => {
|
synthDet(this.$Route.query.synthesisId).then(res => {
|
||||||
let froms = res.synthesis.params
|
let froms = res.synthesis.params
|
||||||
froms.map(val => {
|
froms.map(val => {
|
||||||
if(val.type === 'checkbox'){
|
if(val.type === 'checkbox'){
|
||||||
val.value = []
|
val.value = []
|
||||||
}else if(val.type === 'select'){
|
}else if(val.type === 'select'){
|
||||||
val.value = 0
|
val.value = 0
|
||||||
}else{
|
}else{
|
||||||
val.value = ""
|
val.value = ""
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.paramsArr = froms
|
this.paramsArr = froms
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: err.message,
|
title: err.message,
|
||||||
icon : 'none'
|
icon : 'none'
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// 目前所在地-选择城市
|
// 目前所在地-选择城市
|
||||||
addressPicker(e){
|
addressPicker(e){
|
||||||
let { value } = e.detail
|
let { value } = e.detail
|
||||||
let dataArr = {
|
let dataArr = {
|
||||||
province_id: value[0].value,
|
province_id: value[0].value,
|
||||||
city_id: value[1].value
|
city_id: value[1].value
|
||||||
}
|
}
|
||||||
this.address = dataArr
|
this.address = dataArr
|
||||||
},
|
},
|
||||||
|
|
||||||
// 提交订单数据
|
// 提交订单数据
|
||||||
onSubmit(){
|
onSubmit(){
|
||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
title: '提交中...',
|
title: '提交中...',
|
||||||
mask : true
|
mask : true
|
||||||
})
|
})
|
||||||
|
|
||||||
let subData = {};
|
let subData = {};
|
||||||
let dataArr = []
|
let dataArr = []
|
||||||
|
|
||||||
for(let val of this.paramsArr){
|
for(let val of this.paramsArr){
|
||||||
if(val.type === 'pro_city'){
|
if(val.type === 'pro_city'){
|
||||||
subData[val.key] = this.address
|
subData[val.key] = this.address
|
||||||
}else{
|
}else{
|
||||||
subData[val.key] = val.value
|
subData[val.key] = val.value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for(let key in subData){
|
for(let key in subData){
|
||||||
dataArr.push({
|
dataArr.push({
|
||||||
key,
|
key,
|
||||||
value: subData[key]
|
value: subData[key]
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
synthPost(this.$Route.query.synthesisId, {
|
synthPost(this.$Route.query.synthesisId, {
|
||||||
data: dataArr,
|
data: dataArr,
|
||||||
type: 'self',
|
type: 'self',
|
||||||
channel: 'h5',
|
channel: 'h5',
|
||||||
user_id: ''
|
user_id: ''
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
this.disabled = true
|
this.disabled = true
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: '提交成功',
|
title: '提交成功',
|
||||||
icon: "none"
|
icon: "none"
|
||||||
})
|
})
|
||||||
setTimeout(()=>{
|
|
||||||
this.$Router.replace({name: 'FeeConfirm', params: {synthesisId: res.synthesis_order_id}})
|
// 若价格大于0,要去支付
|
||||||
},3000)
|
let number = Number(res.price)
|
||||||
}).catch( err => {
|
if(number > 0) {
|
||||||
uni.showToast({
|
this.$Router.replace({name: 'Pay', params: {orderId: res.order_id, orderType: res.order_type}})
|
||||||
title: err.message,
|
return
|
||||||
icon: "none"
|
}
|
||||||
})
|
|
||||||
})
|
// 否则直接跳转详情
|
||||||
},
|
setTimeout(()=>{
|
||||||
}
|
this.$Router.replace({name: 'FeeConfirm', params: {synthesisId: res.synthesis_order_id}})
|
||||||
}
|
},3000)
|
||||||
</script>
|
}).catch( err => {
|
||||||
|
uni.showToast({
|
||||||
<style lang="scss" scoped>
|
title: err.message,
|
||||||
.content {
|
icon: "none"
|
||||||
background-color: #111e4b;
|
})
|
||||||
width: 100vw;
|
})
|
||||||
height: 100%;
|
},
|
||||||
overflow-y: scroll;
|
}
|
||||||
position: fixed;
|
}
|
||||||
}
|
</script>
|
||||||
|
|
||||||
.top {
|
<style lang="scss" scoped>
|
||||||
position: relative;
|
.content {
|
||||||
height: 180rpx;
|
background-color: #111e4b;
|
||||||
.top-img {
|
width: 100vw;
|
||||||
position: absolute;
|
height: 100%;
|
||||||
right: 0;
|
overflow-y: scroll;
|
||||||
top: 0;
|
position: fixed;
|
||||||
width: 30%;
|
}
|
||||||
}
|
|
||||||
.top-cont {
|
.top {
|
||||||
position: absolute;
|
position: relative;
|
||||||
left: 0;
|
height: 180rpx;
|
||||||
top: 0;
|
.top-img {
|
||||||
width: 100%;
|
position: absolute;
|
||||||
padding: 40rpx 30rpx;
|
right: 0;
|
||||||
box-sizing: border-box;
|
top: 0;
|
||||||
.top-cont-name {
|
width: 30%;
|
||||||
font-weight: 600;
|
}
|
||||||
font-size: 44rpx;
|
.top-cont {
|
||||||
background-image: linear-gradient(to right,#f1c694, #fffbf6 42%);
|
position: absolute;
|
||||||
-webkit-background-clip:text;
|
left: 0;
|
||||||
-webkit-text-fill-color:transparent;
|
top: 0;
|
||||||
margin-bottom: 10rpx;
|
width: 100%;
|
||||||
}
|
padding: 40rpx 30rpx;
|
||||||
.top-cont-text {
|
box-sizing: border-box;
|
||||||
font-size: 34rpx;
|
.top-cont-name {
|
||||||
color: #ffffff;
|
font-weight: 600;
|
||||||
}
|
font-size: 44rpx;
|
||||||
}
|
background-image: linear-gradient(to right,#f1c694, #fffbf6 42%);
|
||||||
}
|
-webkit-background-clip:text;
|
||||||
|
-webkit-text-fill-color:transparent;
|
||||||
.idcardBorder {
|
margin-bottom: 10rpx;
|
||||||
padding: 30rpx;
|
}
|
||||||
box-sizing: border-box;
|
.top-cont-text {
|
||||||
}
|
font-size: 34rpx;
|
||||||
|
color: #ffffff;
|
||||||
.idcardAdd-block {
|
}
|
||||||
padding: $padding + 20 $padding;
|
}
|
||||||
box-sizing: border-box;
|
}
|
||||||
background-color: #ffffff;
|
|
||||||
border-radius: $radius;
|
.idcardBorder {
|
||||||
position: relative;
|
padding: 30rpx;
|
||||||
}
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
.idcardAdd-depict-textarea {
|
|
||||||
background-color: #f7faff;
|
.idcardAdd-block {
|
||||||
line-height: 90rpx;
|
padding: $padding + 20 $padding;
|
||||||
border-radius: $radius-sm;
|
box-sizing: border-box;
|
||||||
padding: 0 30rpx;
|
background-color: #ffffff;
|
||||||
box-sizing: border-box;
|
border-radius: $radius;
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 100%;
|
}
|
||||||
margin-bottom: 40rpx;
|
|
||||||
.textarea {
|
.idcardAdd-depict-textarea {
|
||||||
width: 100%;
|
background-color: #f7faff;
|
||||||
padding: $padding 0;
|
line-height: 90rpx;
|
||||||
box-sizing: border-box;
|
border-radius: $radius-sm;
|
||||||
}
|
padding: 0 30rpx;
|
||||||
text {
|
box-sizing: border-box;
|
||||||
width: 100%;
|
position: relative;
|
||||||
text-align: right;
|
width: 100%;
|
||||||
font-size: 28rpx;
|
margin-bottom: 40rpx;
|
||||||
color: #999999;
|
.textarea {
|
||||||
display: block;
|
width: 100%;
|
||||||
}
|
padding: $padding 0;
|
||||||
}
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
.idcardAdd-block-write {
|
text {
|
||||||
background-color: #f7faff;
|
width: 100%;
|
||||||
height: 90rpx;
|
text-align: right;
|
||||||
line-height: 90rpx;
|
font-size: 28rpx;
|
||||||
border-radius: $radius-sm;
|
color: #999999;
|
||||||
padding: 0 30rpx;
|
display: block;
|
||||||
box-sizing: border-box;
|
}
|
||||||
position: relative;
|
}
|
||||||
display: flex;
|
|
||||||
width: 100%;
|
.idcardAdd-block-write {
|
||||||
margin-bottom: 40rpx;
|
background-color: #f7faff;
|
||||||
&:last-child {
|
height: 90rpx;
|
||||||
margin-bottom: 0;
|
line-height: 90rpx;
|
||||||
}
|
border-radius: $radius-sm;
|
||||||
.idcardAdd-input {
|
padding: 0 30rpx;
|
||||||
width: 100%;
|
box-sizing: border-box;
|
||||||
height: 100%;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
border: none;
|
width: 100%;
|
||||||
background-color: transparent;
|
margin-bottom: 40rpx;
|
||||||
font-size: 30rpx;
|
&:last-child {
|
||||||
}
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
.idcardAdd-input {
|
||||||
.idcardAdd-picker {
|
width: 100%;
|
||||||
position: relative;
|
height: 100%;
|
||||||
width: 100%;
|
display: flex;
|
||||||
}
|
border: none;
|
||||||
|
background-color: transparent;
|
||||||
.idcardAdd-picke-image {
|
font-size: 30rpx;
|
||||||
width: 24rpx;
|
}
|
||||||
height: 24rpx;
|
}
|
||||||
position: absolute;
|
|
||||||
top: $margin;
|
.idcardAdd-picker {
|
||||||
right: $margin;
|
position: relative;
|
||||||
}
|
width: 100%;
|
||||||
|
}
|
||||||
.idcardAdd-block-name {
|
|
||||||
margin-bottom: $margin;
|
.idcardAdd-picke-image {
|
||||||
display: flex;
|
width: 24rpx;
|
||||||
.idcardAdd-block-see {
|
height: 24rpx;
|
||||||
color: $text-color;
|
position: absolute;
|
||||||
margin-right: $margin;
|
top: $margin;
|
||||||
font-size: 30rpx;
|
right: $margin;
|
||||||
text {
|
}
|
||||||
color: $mian-color;
|
|
||||||
padding-right: 10rpx;
|
.idcardAdd-block-name {
|
||||||
}
|
margin-bottom: $margin;
|
||||||
}
|
display: flex;
|
||||||
}
|
.idcardAdd-block-see {
|
||||||
|
color: $text-color;
|
||||||
// checkbox
|
margin-right: $margin;
|
||||||
.checkbox-item{
|
font-size: 30rpx;
|
||||||
display: inline-block;
|
text {
|
||||||
margin-right: 20rpx;
|
color: $mian-color;
|
||||||
color: #999999;
|
padding-right: 10rpx;
|
||||||
line-height: 70rpx;
|
}
|
||||||
&:last-child {
|
}
|
||||||
margin-right: 0;
|
}
|
||||||
}
|
|
||||||
.checkbox-input{
|
// checkbox
|
||||||
transform:scale(0.6);
|
.checkbox-item{
|
||||||
}
|
display: inline-block;
|
||||||
}
|
margin-right: 20rpx;
|
||||||
|
color: #999999;
|
||||||
.idcardAdd-aline {
|
line-height: 70rpx;
|
||||||
position: relative;
|
&:last-child {
|
||||||
display: flex;
|
margin-right: 0;
|
||||||
width: 100%;
|
}
|
||||||
margin-bottom: 40rpx;
|
.checkbox-input{
|
||||||
.idcardAdd-aline-write {
|
transform:scale(0.6);
|
||||||
margin-right: 30rpx;
|
}
|
||||||
color: #999999;
|
}
|
||||||
}
|
|
||||||
}
|
.idcardAdd-aline {
|
||||||
|
position: relative;
|
||||||
// 按钮
|
display: flex;
|
||||||
.idcardBtn {
|
width: 100%;
|
||||||
background-color: #111e4b;
|
margin-bottom: 40rpx;
|
||||||
width: 100%;
|
.idcardAdd-aline-write {
|
||||||
padding: 20rpx 60rpx 140rpx;
|
margin-right: 30rpx;
|
||||||
box-sizing: border-box;
|
color: #999999;
|
||||||
display: flex;
|
}
|
||||||
.idcardBtn-go {
|
}
|
||||||
width: 100%;
|
|
||||||
background-image: linear-gradient(to bottom, #fff2d2, #f9cd9e);
|
// 按钮
|
||||||
color: #582700;
|
.idcardBtn {
|
||||||
font-weight: 600;
|
background-color: #111e4b;
|
||||||
font-size: 36rpx;
|
width: 100%;
|
||||||
border-radius: $radius * 3;
|
padding: 20rpx 60rpx 140rpx;
|
||||||
height: 94rpx;
|
box-sizing: border-box;
|
||||||
line-height: 94rpx;
|
display: flex;
|
||||||
box-shadow: 0 6rpx 10rpx rgba(0, 0, 0, .5);
|
.idcardBtn-go {
|
||||||
text-align: center;
|
width: 100%;
|
||||||
&[disabled] {
|
background-image: linear-gradient(to bottom, #fff2d2, #f9cd9e);
|
||||||
background-color: #f9f9f9;
|
color: #582700;
|
||||||
border-color: #e2e2e2;
|
font-weight: 600;
|
||||||
color: #959595;
|
font-size: 36rpx;
|
||||||
}
|
border-radius: $radius * 3;
|
||||||
&::after {
|
height: 94rpx;
|
||||||
display: none;
|
line-height: 94rpx;
|
||||||
}
|
box-shadow: 0 6rpx 10rpx rgba(0, 0, 0, .5);
|
||||||
}
|
text-align: center;
|
||||||
}
|
&[disabled] {
|
||||||
|
background-color: #f9f9f9;
|
||||||
|
border-color: #e2e2e2;
|
||||||
|
color: #959595;
|
||||||
|
}
|
||||||
|
&::after {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -243,8 +243,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -1,226 +1,230 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="list" v-if="yearArr.length > 0">
|
<view class="list" v-if="yearArr.length > 0">
|
||||||
<view class="listItem" v-for="(item, index) in yearArr" :key="index">
|
<view class="listItem" v-for="(item, index) in yearArr" :key="index">
|
||||||
<view class="listItem-no">
|
<view class="listItem-no">
|
||||||
订单号:{{item.order_no}}
|
订单号:{{item.order_no}}
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-cont">
|
<view class="listItem-cont">
|
||||||
<view class="listItem-cont-label">
|
<view class="listItem-cont-label">
|
||||||
<view class="listItem-cont-name">
|
<view class="listItem-cont-name">
|
||||||
订单类型
|
订单类型
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-cont-text listItem-cont-status">
|
<view class="listItem-cont-text listItem-cont-status">
|
||||||
{{item.synthesis.title}}
|
{{item.synthesis.title}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-cont-label">
|
<view class="listItem-cont-label">
|
||||||
<view class="listItem-cont-name">
|
<view class="listItem-cont-name">
|
||||||
业务联系人
|
业务联系人
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-cont-text listItem-cont-price">
|
<view class="listItem-cont-text listItem-cont-price">
|
||||||
{{item.user.parent.nickname}}
|
{{item.user.parent.nickname}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-cont-label" v-if="item.lawyer">
|
<view class="listItem-cont-label" v-if="item.lawyer">
|
||||||
<view class="listItem-cont-name">
|
<view class="listItem-cont-name">
|
||||||
所属律师
|
所属律师
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-cont-text listItem-cont-price">
|
<view class="listItem-cont-text listItem-cont-price">
|
||||||
{{item.lawyer.name}}
|
{{item.lawyer.name}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- <view class="listItem-cont-label" v-if="item.lawyer">
|
<!-- <view class="listItem-cont-label" v-if="item.lawyer">
|
||||||
<view class="listItem-cont-name">
|
<view class="listItem-cont-name">
|
||||||
律师电话
|
律师电话
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-cont-text listItem-cont-price">
|
<view class="listItem-cont-text listItem-cont-price">
|
||||||
{{item.lawyer.username}}
|
{{item.lawyer.username}}
|
||||||
</view>
|
</view>
|
||||||
</view> -->
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-labor">
|
<view class="listItem-labor">
|
||||||
<view class="listItem-labor-time">
|
<view class="listItem-labor-time">
|
||||||
{{item.created_at}}
|
{{item.created_at}}
|
||||||
</view>
|
</view>
|
||||||
<view class="listItem-labor-btn">
|
<view class="listItem-labor-btn">
|
||||||
<view @click="$Router.push({name: 'FeeConfirm', params: {synthesisId: item.synthesis_order_id}})" class="listItem-labor-go yellow">
|
<view @click="$Router.push({name: 'Pay', params: {orderId: item.order_id, orderType: item.order_type}})" class="listItem-labor-go yellow" v-if="item.can.pay">
|
||||||
查看详情
|
去支付
|
||||||
</view>
|
</view>
|
||||||
</view>
|
|
||||||
</view>
|
<view @click="$Router.push({name: 'FeeConfirm', params: {synthesisId: item.synthesis_order_id}})" class="listItem-labor-go yellow" v-if="item.can.look">
|
||||||
</view>
|
查看详情
|
||||||
</view>
|
</view>
|
||||||
|
</view>
|
||||||
<view class="pack-center pages-hint" v-else>
|
</view>
|
||||||
<image src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/7ad417d0c215db601b8e1bead05c3a5e.png"></image>
|
</view>
|
||||||
<view>暂无订单</view>
|
</view>
|
||||||
</view>
|
|
||||||
|
<view class="pack-center pages-hint" v-else>
|
||||||
|
<image src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/7ad417d0c215db601b8e1bead05c3a5e.png"></image>
|
||||||
|
<view>暂无订单</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { seekOrder } from '@/apis/interfaces/synthesis'
|
import { seekOrder } from '@/apis/interfaces/synthesis'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
yearStatus : 0, // 0 未付款 1 2
|
yearStatus : 0, // 0 未付款 1 2
|
||||||
yearArr : [], // 咨询单列表
|
yearArr : [], // 咨询单列表
|
||||||
page : {}, // 分页信息
|
page : {}, // 分页信息
|
||||||
lodingStats : false, // 加载状态
|
lodingStats : false, // 加载状态
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
created() {
|
created() {
|
||||||
// 获取-咨询单-列表
|
// 获取-咨询单-列表
|
||||||
this.yearServe();
|
this.yearServe();
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
// 咨询单-列表
|
// 咨询单-列表
|
||||||
yearServe(page){
|
// status : this.yearStatus,
|
||||||
seekOrder({
|
yearServe(page){
|
||||||
status : this.yearStatus,
|
seekOrder({
|
||||||
page : page || 1
|
page : page || 1
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
let esArr = res.data
|
let esArr = res.data
|
||||||
let list = this.yearArr,
|
let list = this.yearArr,
|
||||||
newData = []
|
newData = []
|
||||||
if(page == 1 || page == undefined) list = []
|
if(page == 1 || page == undefined) list = []
|
||||||
newData = list.concat(esArr)
|
newData = list.concat(esArr)
|
||||||
this.yearArr = newData
|
this.yearArr = newData
|
||||||
this.page = res.page
|
this.page = res.page
|
||||||
this.lodingStats = false
|
this.lodingStats = false
|
||||||
uni.stopPullDownRefresh()
|
uni.stopPullDownRefresh()
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: err.message,
|
title: err.message,
|
||||||
icon : 'none'
|
icon : 'none'
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// 状态选择
|
// 状态选择
|
||||||
stateClick(state) {
|
stateClick(state) {
|
||||||
this.yearStatus = state
|
this.yearStatus = state
|
||||||
|
|
||||||
// 获取-咨询单列表
|
// 获取-咨询单列表
|
||||||
this.yearServe();
|
this.yearServe();
|
||||||
},
|
},
|
||||||
|
|
||||||
// 订单支付
|
// 订单支付
|
||||||
canClick(e) {
|
canClick(e) {
|
||||||
// pay_status == 1可支付
|
// pay_status == 1可支付
|
||||||
if(e.can.pay_status == 1) {
|
if(e.can.pay_status == 1) {
|
||||||
// pay_way为1的时线上支付, 为2时线下支付
|
// pay_way为1的时线上支付, 为2时线下支付
|
||||||
if(e.service.pay_way == 1) {
|
if(e.service.pay_way == 1) {
|
||||||
this.$Router.push({name: 'FeePay', params: {orderId: e.service_order_id}})
|
this.$Router.push({name: 'FeePay', params: {orderId: e.service_order_id}})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// 选择支付方式
|
// 选择支付方式
|
||||||
expressSheet(item) {
|
expressSheet(item) {
|
||||||
uni.showActionSheet({
|
uni.showActionSheet({
|
||||||
itemList: ['微信支付', '打款凭证'],
|
itemList: ['微信支付', '打款凭证'],
|
||||||
success: sheetRes => {
|
success: sheetRes => {
|
||||||
console.log(sheetRes)
|
console.log(sheetRes)
|
||||||
},
|
},
|
||||||
fail: sheetFail => {}
|
fail: sheetFail => {}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// 页面相关事件处理函数--监听用户下拉动作
|
// 页面相关事件处理函数--监听用户下拉动作
|
||||||
onPullDownRefresh() {
|
onPullDownRefresh() {
|
||||||
// 获取-咨询单-列表
|
// 获取-咨询单-列表
|
||||||
this.yearServe();
|
this.yearServe();
|
||||||
},
|
},
|
||||||
|
|
||||||
// 上拉加载
|
// 上拉加载
|
||||||
onReachBottom(){
|
onReachBottom(){
|
||||||
this.lodingStats = true
|
this.lodingStats = true
|
||||||
let pageNumber = this.page.current
|
let pageNumber = this.page.current
|
||||||
if(this.page.has_more){
|
if(this.page.has_more){
|
||||||
pageNumber++
|
pageNumber++
|
||||||
// 获取-咨询单-列表
|
// 获取-咨询单-列表
|
||||||
this.yearServe(pageNumber);
|
this.yearServe(pageNumber);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.content {
|
.content {
|
||||||
background-color: #f7f9fa;
|
background-color: #f7f9fa;
|
||||||
overflow-y: scroll;
|
overflow-y: scroll;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.list {
|
.list {
|
||||||
padding: 30rpx;
|
padding: 30rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
.listItem {
|
.listItem {
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
border-radius: 10rpx;
|
border-radius: 10rpx;
|
||||||
margin-bottom: 30rpx;
|
margin-bottom: 30rpx;
|
||||||
.listItem-no {
|
.listItem-no {
|
||||||
line-height: 90rpx;
|
line-height: 90rpx;
|
||||||
padding: 0 30rpx;
|
padding: 0 30rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border-bottom: 2rpx solid #eeeeee;
|
border-bottom: 2rpx solid #eeeeee;
|
||||||
}
|
}
|
||||||
.listItem-cont {
|
.listItem-cont {
|
||||||
padding: 15rpx 30rpx;
|
padding: 15rpx 30rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
.listItem-cont-label {
|
.listItem-cont-label {
|
||||||
display: flex;
|
display: flex;
|
||||||
line-height: 60rpx;
|
line-height: 60rpx;
|
||||||
color: #666666;
|
color: #666666;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
.listItem-cont-name {
|
.listItem-cont-name {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
}
|
}
|
||||||
.listItem-cont-text {
|
.listItem-cont-text {
|
||||||
color: #000000;
|
color: #000000;
|
||||||
&.listItem-cont-status {
|
&.listItem-cont-status {
|
||||||
color: #da2b56;
|
color: #da2b56;
|
||||||
}
|
}
|
||||||
&.listItem-cont-price {
|
&.listItem-cont-price {
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.listItem-labor {
|
.listItem-labor {
|
||||||
border-top: 2rpx solid #eeeeee;
|
border-top: 2rpx solid #eeeeee;
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
padding: 25rpx 30rpx;
|
padding: 25rpx 30rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
.listItem-labor-time {
|
.listItem-labor-time {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
color: #999999;
|
color: #999999;
|
||||||
}
|
}
|
||||||
.listItem-labor-go {
|
.listItem-labor-go {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
border: 2rpx solid #da2b56;
|
border: 2rpx solid #da2b56;
|
||||||
color: #da2b56;
|
color: #da2b56;
|
||||||
border-radius: 80rpx;
|
border-radius: 80rpx;
|
||||||
padding: 0 20rpx;
|
padding: 0 20rpx;
|
||||||
&.active {
|
&.active {
|
||||||
border-color: #999999;
|
border-color: #999999;
|
||||||
color: #666666;
|
color: #666666;
|
||||||
}
|
}
|
||||||
&.yellow {
|
&.yellow {
|
||||||
border-color: #ec7647;
|
border-color: #ec7647;
|
||||||
color: #ec7647;
|
color: #ec7647;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -268,8 +268,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
@@ -218,8 +218,8 @@
|
|||||||
esignUrl({
|
esignUrl({
|
||||||
order_id : id,
|
order_id : id,
|
||||||
order_type: type,
|
order_type: type,
|
||||||
// redirect_url: "https://web.douhuofalv.com/user/index",
|
redirect_url: "https://web.douhuofalv.com/user/index",
|
||||||
redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
// redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
|
||||||
channel : 'h5',
|
channel : 'h5',
|
||||||
app_scheme : ''
|
app_scheme : ''
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<!-- 临时 style="display: none;" -->
|
<!-- 临时 style="display: none;" -->
|
||||||
<view class="userTop-see" v-if="userLogin">
|
<view class="userTop-see" v-if="userLogin">
|
||||||
<view class="userTop-label" @click="$Router.push({name: 'sheetIndex'})">
|
<!-- <view class="userTop-label" @click="$Router.push({name: 'sheetIndex'})">
|
||||||
<view class="userSee-name">
|
<view class="userSee-name">
|
||||||
协商调解类
|
协商调解类
|
||||||
</view>
|
</view>
|
||||||
@@ -46,6 +46,31 @@
|
|||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/2823f7c9ed144df424ca8ee6c47b0ff6.png">
|
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/2823f7c9ed144df424ca8ee6c47b0ff6.png">
|
||||||
|
</view> -->
|
||||||
|
|
||||||
|
<view class="userTop-label" @click="$Router.push({name: 'AccountWork'})" style="display: none;">
|
||||||
|
<view class="userSee-name">
|
||||||
|
账户管理资讯类
|
||||||
|
</view>
|
||||||
|
<view class="userSee-number">
|
||||||
|
<!-- {{ userData.business_orders_count.all ? userData.business_orders_count.all : '0'}}<text>单</text> -->
|
||||||
|
</view>
|
||||||
|
<view class="userSee-tips">
|
||||||
|
客户账户管理资讯类订单
|
||||||
|
</view>
|
||||||
|
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/2823f7c9ed144df424ca8ee6c47b0ff6.png">
|
||||||
|
</view>
|
||||||
|
<view class="userTop-label" @click="$Router.push({name: 'DelegationWork'})" style="display: none;">
|
||||||
|
<view class="userSee-name">
|
||||||
|
委托管理类
|
||||||
|
</view>
|
||||||
|
<view class="userSee-number">
|
||||||
|
<!-- {{ userData.business_orders_count.all ? userData.business_orders_count.all : '0'}}<text>单</text> -->
|
||||||
|
</view>
|
||||||
|
<view class="userSee-tips">
|
||||||
|
客户委托管理类订单
|
||||||
|
</view>
|
||||||
|
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/2823f7c9ed144df424ca8ee6c47b0ff6.png">
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="userTop-label" @click="$Router.push({name: 'synthesisOrder', params: {type: 'legal'}})">
|
<view class="userTop-label" @click="$Router.push({name: 'synthesisOrder', params: {type: 'legal'}})">
|
||||||
@@ -56,7 +81,8 @@
|
|||||||
{{synthesisAll.legal_consulting ? synthesisAll.legal_consulting : '0'}}<text>单</text>
|
{{synthesisAll.legal_consulting ? synthesisAll.legal_consulting : '0'}}<text>单</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="userSee-tips">
|
<view class="userSee-tips">
|
||||||
个人、企业法律
|
<!-- 个人、 -->
|
||||||
|
企业法律
|
||||||
</view>
|
</view>
|
||||||
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/84e573c04d3dcb7fa1cccefbde9bf851.png">
|
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/84e573c04d3dcb7fa1cccefbde9bf851.png">
|
||||||
</view>
|
</view>
|
||||||
@@ -72,7 +98,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/19/08e5c39f136d84e9754d4ac4d16af181.png">
|
<img class="userSee-icon" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/19/08e5c39f136d84e9754d4ac4d16af181.png">
|
||||||
</view>
|
</view>
|
||||||
<view class="userTop-label" @click="$Router.push({name: 'EmpowerOrder'})">
|
<view class="userTop-label" @click="$Router.push({name: 'EmpowerOrder'})" style="display: none;">
|
||||||
<view class="userSee-name">
|
<view class="userSee-name">
|
||||||
增收赋能类
|
增收赋能类
|
||||||
</view>
|
</view>
|
||||||
@@ -88,7 +114,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 临时 style="display: none;" -->
|
<!-- 临时 style="display: none;" -->
|
||||||
<view class="board" v-if="userLogin">
|
<view class="board" v-if="userLogin" style="display: none;">
|
||||||
<view class="board-title">
|
<view class="board-title">
|
||||||
数据看板
|
数据看板
|
||||||
</view>
|
</view>
|
||||||
|
|||||||
@@ -273,8 +273,8 @@
|
|||||||
judgeGeneral(){
|
judgeGeneral(){
|
||||||
// 获取微信授权信息
|
// 获取微信授权信息
|
||||||
authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuofalv.com/webview/webCode'
|
url: 'https://web.douhuofalv.com/webview/webCode'
|
||||||
url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
window.location.href = res
|
window.location.href = res
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
|
|||||||
319
pages/work/account.vue
Normal file
319
pages/work/account.vue
Normal file
@@ -0,0 +1,319 @@
|
|||||||
|
<template>
|
||||||
|
<view class="content">
|
||||||
|
<!-- tabs -->
|
||||||
|
<u-sticky bgColor="#FFF" zIndex="9" >
|
||||||
|
<u-tabs
|
||||||
|
:current="tabsCurrent"
|
||||||
|
:list="tabs"
|
||||||
|
keyName="value"
|
||||||
|
lineColor="#446EFE"
|
||||||
|
:scrollable="tabs.length > 5"
|
||||||
|
:activeStyle="{
|
||||||
|
color: '#111',
|
||||||
|
fontWeight: 'bold',
|
||||||
|
fontSize: '32rpx'
|
||||||
|
}"
|
||||||
|
:inactiveStyle="{
|
||||||
|
color: '#606266',
|
||||||
|
fontSize: '30rpx'
|
||||||
|
}"
|
||||||
|
@click="onTabs"
|
||||||
|
></u-tabs>
|
||||||
|
</u-sticky>
|
||||||
|
<!-- 订单列表 -->
|
||||||
|
<view class="orders" v-if="orders.length > 0">
|
||||||
|
<view class="orders-item" v-for="(item, index) in orders" :key="index">
|
||||||
|
<view class="orders-flex">
|
||||||
|
<view class="no nowrap" @click="copyNo(item.order_no)">
|
||||||
|
{{item.order_no}}
|
||||||
|
</view>
|
||||||
|
<view class="state">{{item.status.text}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content">
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>业务名称</label>
|
||||||
|
<view class="nowrap">{{item.item.title}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>客户姓名</label>
|
||||||
|
<view class="nowrap">{{item.name}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>手机号码</label>
|
||||||
|
<view class="nowrap">{{item.mobile}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>创建时间</label>
|
||||||
|
<view class="nowrap">{{item.created_at}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item" v-if="item.paid_at != ''">
|
||||||
|
<label>支付时间</label>
|
||||||
|
<view class="nowrap">{{item.paid_at}}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-flex">
|
||||||
|
<view class="price">¥{{item.item.price}}</view>
|
||||||
|
<view class="btns">
|
||||||
|
<view class="btns-item border" v-if="item.can.cancel" @click="onCancel(item)">取消订单</view>
|
||||||
|
<view class="btns-item" v-if="item.can.pay" @click="onPay(item)">立即支付</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<!-- 分页 -->
|
||||||
|
<u-loadmore v-if="pagesShow" :status="status" />
|
||||||
|
</view>
|
||||||
|
<!-- 订单是空的 -->
|
||||||
|
<view class="order-null" v-else>
|
||||||
|
<u-empty
|
||||||
|
mode="order"
|
||||||
|
icon="http://cdn.uviewui.com/uview/empty/order.png"
|
||||||
|
text="暂无相关订单"
|
||||||
|
>
|
||||||
|
</u-empty>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { accountOrder, accountCancel } from '@/apis/interfaces/index.js'
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tabs : [{ id: '', value: '全部' }],
|
||||||
|
tabsCurrent : 0,
|
||||||
|
tabsId : '',
|
||||||
|
orders : [],
|
||||||
|
pagesShow : false,
|
||||||
|
page : {
|
||||||
|
current : 1,
|
||||||
|
has_more: false,
|
||||||
|
},
|
||||||
|
status : ''
|
||||||
|
};
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
this.getOrder()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 筛选分类
|
||||||
|
onTabs(e){
|
||||||
|
let { id, index } = e;
|
||||||
|
this.tabsCurrent = index
|
||||||
|
this.tabsId = id
|
||||||
|
this.page = { current: 1, has_more: false }
|
||||||
|
this.getOrder()
|
||||||
|
},
|
||||||
|
// 获取订单列表
|
||||||
|
getOrder(){
|
||||||
|
let { tabsId, tabs, orders, page } = this
|
||||||
|
accountOrder({
|
||||||
|
manager: 1,
|
||||||
|
status : tabsId,
|
||||||
|
page : page.current
|
||||||
|
}).then(res => {
|
||||||
|
let { status, lists } = res;
|
||||||
|
this.tabs = [{ id: '', value: '全部' }].concat(status)
|
||||||
|
this.orders = lists.page.current == 1 ? lists.data : this.orders.concat(lists.data)
|
||||||
|
this.page = lists.page
|
||||||
|
this.pagesShow = false
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 取消订单
|
||||||
|
onCancel(e){
|
||||||
|
let { order_id } = e;
|
||||||
|
uni.showModal({
|
||||||
|
title : "提示",
|
||||||
|
content : "确认取消当前订单嘛?",
|
||||||
|
cancelText : "取消",
|
||||||
|
confirmColor: "#446EFE",
|
||||||
|
success : modalRes => {
|
||||||
|
if(modalRes.confirm){
|
||||||
|
uni.showLoading({
|
||||||
|
title: "加载中...",
|
||||||
|
mask : true
|
||||||
|
})
|
||||||
|
accountCancel(order_id).then(res => {
|
||||||
|
uni.showToast({
|
||||||
|
title: '订单已取消',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
this.page = { current: 1, has_more: false }
|
||||||
|
this.getOrder()
|
||||||
|
}).catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 复制订单号码
|
||||||
|
copyNo(no){
|
||||||
|
uni.setClipboardData({
|
||||||
|
data : no,
|
||||||
|
success : res => {
|
||||||
|
uni.showToast({
|
||||||
|
title: '订单号已复制',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 去支付
|
||||||
|
onPay(obj){
|
||||||
|
let { order_id, order_type, paid_at } = obj
|
||||||
|
if(paid_at == ''){
|
||||||
|
this.$Router.replace({name: 'FeePay', params: {id: order_id, orderType: order_type, price: obj.item.price, payForm: 'synthesize'}})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onReachBottom() {
|
||||||
|
this.pagesShow = true;
|
||||||
|
if(this.page.has_more){
|
||||||
|
this.status = 'loading';
|
||||||
|
this.page.current++
|
||||||
|
this.getOrder()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.status = 'nomore';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
.content{ background: #f7f8f9; min-height: calc(100vh - 44px); }
|
||||||
|
// 订单列表
|
||||||
|
.orders{
|
||||||
|
padding: 30rpx 0 10rpx;
|
||||||
|
.orders-item{
|
||||||
|
margin: 0 30rpx 20rpx;
|
||||||
|
background-color: white;
|
||||||
|
border-radius: $radius;
|
||||||
|
}
|
||||||
|
.orders-content{
|
||||||
|
padding: 20rpx 30rpx;
|
||||||
|
.orders-content-item{
|
||||||
|
line-height: 70rpx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
font-size: 30rpx;
|
||||||
|
color: #111111;
|
||||||
|
label{
|
||||||
|
color: #999999;
|
||||||
|
}
|
||||||
|
.orders-content-btn{
|
||||||
|
color: #446EFE;
|
||||||
|
}
|
||||||
|
.orders-content-bottom{
|
||||||
|
padding-right: 40rpx;
|
||||||
|
position: relative;
|
||||||
|
.orders-content-icon{
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.orders-content-type{
|
||||||
|
text{
|
||||||
|
margin-right: 30rpx;
|
||||||
|
position: relative;
|
||||||
|
display: inline-block;
|
||||||
|
&::after{
|
||||||
|
position: absolute;
|
||||||
|
content: "/";
|
||||||
|
width: 30rpx;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 30rpx;
|
||||||
|
top: 0;
|
||||||
|
right: -30rpx;
|
||||||
|
}
|
||||||
|
&:last-child{
|
||||||
|
margin-right: 0;
|
||||||
|
&::after{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.orders-content-block{
|
||||||
|
background: rgba(68, 110, 254, .03);
|
||||||
|
padding: 20rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
border-radius: 10rpx;
|
||||||
|
margin: 10rpx 0;
|
||||||
|
.item-flex{
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
line-height: 50rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.orders-flex{
|
||||||
|
border-bottom: solid 1rpx #F6F6F6;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
padding: 20rpx 30rpx;
|
||||||
|
&:last-child{
|
||||||
|
border-top: solid 1rpx #F6F6F6;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.no{
|
||||||
|
font-size: 30rpx;
|
||||||
|
color: #111;
|
||||||
|
line-height: 60rpx;
|
||||||
|
width: calc(100% - 150rpx);
|
||||||
|
}
|
||||||
|
.state{
|
||||||
|
color: #446EFE;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 30rpx;
|
||||||
|
line-height: 60rpx;
|
||||||
|
width: 150rpx;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.price{
|
||||||
|
font-weight: bold;
|
||||||
|
color: #446EFE;
|
||||||
|
}
|
||||||
|
.btns{
|
||||||
|
width: 400rpx;
|
||||||
|
text-align: right;
|
||||||
|
.btns-item{
|
||||||
|
display: inline-block;
|
||||||
|
height: 70rpx;
|
||||||
|
line-height: 70rpx;
|
||||||
|
background: #446EFE;
|
||||||
|
color: white;
|
||||||
|
border-radius: 35rpx;
|
||||||
|
padding: 0 30rpx;
|
||||||
|
font-size: 30rpx;
|
||||||
|
&.border{
|
||||||
|
border: solid 1rpx #446EFE;
|
||||||
|
color: #446EFE;
|
||||||
|
background: white;
|
||||||
|
height: 68rpx;
|
||||||
|
line-height: 68rpx;
|
||||||
|
&::after{ display: none;}
|
||||||
|
}
|
||||||
|
&:last-child{ margin-left: 30rpx; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订单为空
|
||||||
|
.order-null{
|
||||||
|
height: 80vh;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
313
pages/work/delegation.vue
Normal file
313
pages/work/delegation.vue
Normal file
@@ -0,0 +1,313 @@
|
|||||||
|
<template>
|
||||||
|
<view class="content">
|
||||||
|
<!-- tabs -->
|
||||||
|
<u-sticky bgColor="#FFF" zIndex="9" >
|
||||||
|
<u-tabs
|
||||||
|
:current="tabsCurrent"
|
||||||
|
:list="tabs"
|
||||||
|
keyName="value"
|
||||||
|
lineColor="#446EFE"
|
||||||
|
:scrollable="tabs.length > 5"
|
||||||
|
:activeStyle="{
|
||||||
|
color: '#111',
|
||||||
|
fontWeight: 'bold',
|
||||||
|
fontSize: '32rpx'
|
||||||
|
}"
|
||||||
|
:inactiveStyle="{
|
||||||
|
color: '#606266',
|
||||||
|
fontSize: '30rpx'
|
||||||
|
}"
|
||||||
|
@click="onTabs"
|
||||||
|
></u-tabs>
|
||||||
|
</u-sticky>
|
||||||
|
<!-- 订单列表 -->
|
||||||
|
<view class="orders" v-if="orders.length > 0">
|
||||||
|
<view class="orders-item" v-for="(item, index) in orders" :key="index">
|
||||||
|
<view class="orders-flex">
|
||||||
|
<view class="no nowrap" @click="copyNo(item.order_no)">
|
||||||
|
{{item.order_no}}
|
||||||
|
</view>
|
||||||
|
<view class="state">{{item.status.text}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content">
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>业务名称</label>
|
||||||
|
<view class="nowrap">{{item.item.title}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>客户姓名</label>
|
||||||
|
<view class="nowrap">{{item.name}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>手机号码</label>
|
||||||
|
<view class="nowrap">{{item.mobile}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item">
|
||||||
|
<label>创建时间</label>
|
||||||
|
<view class="nowrap">{{item.created_at}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-content-item" v-if="item.paid_at != ''">
|
||||||
|
<label>支付时间</label>
|
||||||
|
<view class="nowrap">{{item.paid_at}}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="orders-flex">
|
||||||
|
<view class="price">¥{{item.item.price}}</view>
|
||||||
|
<view class="btns">
|
||||||
|
<view class="btns-item border" v-if="item.can.cancel" @click="onCancel(item)">取消订单</view>
|
||||||
|
<view class="btns-item" v-if="item.can.pay" @click="onPay(item)">立即支付</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<!-- 分页 -->
|
||||||
|
<u-loadmore v-if="pagesShow" :status="status" />
|
||||||
|
</view>
|
||||||
|
<!-- 订单是空的 -->
|
||||||
|
<view class="order-null" v-else>
|
||||||
|
<u-empty
|
||||||
|
mode="order"
|
||||||
|
icon="http://cdn.uviewui.com/uview/empty/order.png"
|
||||||
|
text="暂无相关订单"
|
||||||
|
>
|
||||||
|
</u-empty>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { delegationOrder, delegationCancel } from '@/apis/interfaces/index.js'
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tabs : [{ id: '', value: '全部' }],
|
||||||
|
tabsCurrent : 0,
|
||||||
|
tabsId : '',
|
||||||
|
orders : [],
|
||||||
|
pagesShow : false,
|
||||||
|
page : {
|
||||||
|
current : 1,
|
||||||
|
has_more: false,
|
||||||
|
},
|
||||||
|
status : ''
|
||||||
|
};
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
this.getOrder()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 筛选分类
|
||||||
|
onTabs(e){
|
||||||
|
let { id, index } = e;
|
||||||
|
this.tabsCurrent = index
|
||||||
|
this.tabsId = id
|
||||||
|
this.page = { current: 1, has_more: false }
|
||||||
|
this.getOrder()
|
||||||
|
},
|
||||||
|
// 获取订单列表
|
||||||
|
getOrder(){
|
||||||
|
let { tabsId, tabs, orders, page } = this
|
||||||
|
delegationOrder({
|
||||||
|
manager: 1,
|
||||||
|
status : tabsId,
|
||||||
|
page : page.current
|
||||||
|
}).then(res => {
|
||||||
|
let { status, lists } = res;
|
||||||
|
this.tabs = [{ id: '', value: '全部' }].concat(status)
|
||||||
|
this.orders = lists.page.current == 1 ? lists.data : this.orders.concat(lists.data)
|
||||||
|
this.page = lists.page
|
||||||
|
this.pagesShow = false
|
||||||
|
}).catch(err => {
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 取消订单
|
||||||
|
onCancel(e){
|
||||||
|
let { order_id } = e;
|
||||||
|
uni.showModal({
|
||||||
|
title : "提示",
|
||||||
|
content : "确认取消当前订单嘛?",
|
||||||
|
cancelText : "取消",
|
||||||
|
confirmColor: "#446EFE",
|
||||||
|
success : modalRes => {
|
||||||
|
if(modalRes.confirm){
|
||||||
|
uni.showLoading({
|
||||||
|
title: "加载中...",
|
||||||
|
mask : true
|
||||||
|
})
|
||||||
|
delegationCancel(order_id).then(res => {
|
||||||
|
uni.showToast({
|
||||||
|
title: '订单已取消',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
this.page = { current: 1, has_more: false }
|
||||||
|
this.getOrder()
|
||||||
|
}).catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
uni.showToast({
|
||||||
|
title: err.message,
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 复制订单号码
|
||||||
|
copyNo(no){
|
||||||
|
uni.setClipboardData({
|
||||||
|
data : no,
|
||||||
|
success : res => {
|
||||||
|
uni.showToast({
|
||||||
|
title: '订单号已复制',
|
||||||
|
icon : 'none'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 去支付
|
||||||
|
onPay(obj){
|
||||||
|
let { order_id, order_type, paid_at } = obj
|
||||||
|
if(paid_at == ''){
|
||||||
|
this.$Router.replace({name: 'FeePay', params: {id: order_id, orderType: order_type, price: obj.item.price, payForm: 'synthesize'}})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onReachBottom() {
|
||||||
|
this.pagesShow = true;
|
||||||
|
if(this.page.has_more){
|
||||||
|
this.status = 'loading';
|
||||||
|
this.page.current++
|
||||||
|
this.getOrder()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.status = 'nomore';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
.content{ background: #f7f8f9; min-height: calc(100vh - 44px); }
|
||||||
|
|
||||||
|
// 订单列表
|
||||||
|
.orders{
|
||||||
|
padding: 30rpx 0 10rpx;
|
||||||
|
.orders-item{
|
||||||
|
margin: 0 30rpx 20rpx;
|
||||||
|
background-color: white;
|
||||||
|
border-radius: $radius;
|
||||||
|
}
|
||||||
|
.orders-content{
|
||||||
|
padding: 20rpx 30rpx;
|
||||||
|
.orders-content-item{
|
||||||
|
line-height: 70rpx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
font-size: 30rpx;
|
||||||
|
color: #111111;
|
||||||
|
label{
|
||||||
|
color: #999999;
|
||||||
|
}
|
||||||
|
.orders-content-btn{
|
||||||
|
color: #446EFE;
|
||||||
|
}
|
||||||
|
&.orders-content-bottom{
|
||||||
|
padding-right: 40rpx;
|
||||||
|
position: relative;
|
||||||
|
.orders-content-icon{
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.orders-content-type{
|
||||||
|
text{
|
||||||
|
margin-right: 30rpx;
|
||||||
|
position: relative;
|
||||||
|
display: inline-block;
|
||||||
|
&::after{
|
||||||
|
position: absolute;
|
||||||
|
content: "/";
|
||||||
|
width: 30rpx;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 30rpx;
|
||||||
|
top: 0;
|
||||||
|
right: -30rpx;
|
||||||
|
}
|
||||||
|
&:last-child{
|
||||||
|
margin-right: 0;
|
||||||
|
&::after{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.orders-content-block{
|
||||||
|
background: rgba(68, 110, 254, .03);
|
||||||
|
padding: 20rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
border-radius: 10rpx;
|
||||||
|
margin: 10rpx 0;
|
||||||
|
.item-flex{
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
line-height: 50rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.orders-flex{
|
||||||
|
border-bottom: solid 1rpx #F6F6F6;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
padding: 20rpx $padding;
|
||||||
|
&:last-child{
|
||||||
|
border-top: solid 1rpx #F6F6F6;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.no{
|
||||||
|
font-size: 30rpx;
|
||||||
|
color: #111;
|
||||||
|
line-height: 60rpx;
|
||||||
|
width: calc(100% - 150rpx);
|
||||||
|
}
|
||||||
|
.state{
|
||||||
|
color: #446EFE;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 30rpx;
|
||||||
|
line-height: 60rpx;
|
||||||
|
width: 150rpx;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.price{
|
||||||
|
font-weight: bold;
|
||||||
|
color: #446EFE;
|
||||||
|
}
|
||||||
|
.btns{
|
||||||
|
width: 400rpx;
|
||||||
|
text-align: right;
|
||||||
|
.btns-item{
|
||||||
|
display: inline-block;
|
||||||
|
height: 70rpx;
|
||||||
|
line-height: 70rpx;
|
||||||
|
background: #446EFE;
|
||||||
|
color: white;
|
||||||
|
border-radius: 35rpx;
|
||||||
|
padding: 0 30rpx;
|
||||||
|
font-size: 30rpx;
|
||||||
|
&.border{ border: solid 1rpx #446EFE; color: #446EFE; background: white; height: 68rpx; &::after{ display: none; } }
|
||||||
|
&:last-child{ margin-left: 30rpx; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订单为空
|
||||||
|
.order-null{
|
||||||
|
height: 80vh;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -30,20 +30,21 @@ router.beforeEach((to, from, next) => {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
// 检查用户是否授权了微信
|
// 检查用户是否授权了微信
|
||||||
// if(to.name != 'webWechatIndex' && openId === ''){
|
if(to.name != 'webWechatIndex' && openId === ''){
|
||||||
// authFollow({
|
authFollow({
|
||||||
// url: 'https://web.douhuotest.douhuofalv.com/webWechat/index'
|
// url: 'https://web.douhuotest.douhuofalv.com/webWechat/index',
|
||||||
// // url: 'https://web.douhuofalv.com/webWechat/index'
|
// url: 'https://web.douhuo.demos.uzchain.tech/webWechat/index' 最新,
|
||||||
// }).then(res => {
|
url: 'https://web.douhuofalv.com/webWechat/index'
|
||||||
// window.location.href = res
|
}).then(res => {
|
||||||
// }).catch(err => {
|
window.location.href = res
|
||||||
// uni.showToast({
|
}).catch(err => {
|
||||||
// title: err.message,
|
uni.showToast({
|
||||||
// icon: "none"
|
title: err.message,
|
||||||
// })
|
icon: "none"
|
||||||
// })
|
})
|
||||||
// return
|
})
|
||||||
// }
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// 检查是否需要登录
|
// 检查是否需要登录
|
||||||
if(to.auth && token === ''){
|
if(to.auth && token === ''){
|
||||||
|
|||||||
Reference in New Issue
Block a user