移出潘宅计算器

This commit is contained in:
唐明明
2023-06-21 09:30:46 +08:00
parent e112acefec
commit 47878384e8
15 changed files with 306 additions and 123 deletions

View File

@@ -10,8 +10,8 @@ import router from '../router'
// 基础配置
const config = {
// apiUrl : 'https://douhuo.douhuofalv.com/api/',
apiUrl : 'https://api.douhuotest.douhuofalv.com/api/', //测试环境
apiUrl : 'https://douhuo.douhuofalv.com/api/',
// apiUrl : 'https://api.douhuotest.douhuofalv.com/api/', //测试环境
timeout : 60000
}

View File

@@ -25,7 +25,7 @@ const jf = (data) =>{
data
})
}
// 法服务包
// 法服务包
const zf = (data) =>{
return request({
url: "app/services/zf",

View File

@@ -180,6 +180,13 @@ const createCity = (data) =>{
})
}
// 盘债计算器
const debtUrl = () => {
return request({
url: "debt/url"
})
}
export {
relations,
code,
@@ -201,5 +208,6 @@ export {
getTeamLogs,
getSignLogs,
getFlows,
createCity
createCity,
debtUrl
}

View File

@@ -1,8 +1,8 @@
{
"name" : "抖火",
"name" : "抖火数字化咨询服务平台",
"appid" : "__UNI__C305C03",
"description" : "纵有疾风起,人生不言弃",
"versionName" : "1.4.6",
"versionName" : "1.4.8",
"versionCode" : 104,
"transformPx" : false,
/* 5+App */

View File

@@ -78,41 +78,15 @@
scroll-with-animation="true"
:scroll-into-view='defaultViewId'
>
<view class="the-flex-item"
@click="onView('Individual')"
>
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_00.png') + ');'"></view>
<view class="title nowrap">个人全年法律</view>
<view class="price nowrap"><text></text>365 <text>/</text></view>
</view>
<view class="the-flex-item"
@click="onView('Enterprise')"
>
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_02.png') + ');'"></view>
<view class="title nowrap">企业全年法律</view>
<view class="price nowrap"><text></text>3650 <text>/</text></view>
</view>
<view class="the-flex-item"
@click="onView('Enterprise')"
>
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_04.png') + ');'"></view>
<view class="title nowrap">企业全年法律</view>
<view class="price nowrap"><text></text>8888 <text>/</text></view>
</view>
<view class="the-flex-item"
@click="onView('Enterprise')"
>
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_05.png') + ');'"></view>
<view class="title nowrap">企业全年法律</view>
<view class="price nowrap"><text></text>20000 <text>/</text></view>
</view>
<view class="the-flex-item"
@click="onView('Enterprise')"
>
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_06.png') + ');'"></view>
<view class="title nowrap">企业全年法律</view>
<view class="price nowrap"><text></text>50000 <text>/</text></view>
</view>
<block v-for="(item, index) in appMenus.service" :key="index">
<view class="the-flex-item"
@click="onView(item.page)"
>
<view class="cover" :style="'background-image: url(' + item.cover + ');'"></view>
<view class="title nowrap">{{item.title}}</view>
<view class="price nowrap"><text></text>{{item.price}} <text v-if="item.limit != null">/{{item.limit}}</text></view>
</view>
</block>
</scroll-view>
</view>
<!-- 诉讼委托类 -->
@@ -121,20 +95,15 @@
<view class="title">诉讼委托类</view>
</view>
<view class="lawsuit">
<view class="lawsuit-item" @click="onView('Entrust')">
<view class="lawsuit-cover" :style="'background-image: url(' + require('@/static/synthesize/img_01.png') + ');'"></view>
<view class="lawsuit-text">
<view class="lawsuit-title">案件委托</view>
<view class="lawsuit-price">200</view>
<block v-for="(item, index) in appMenus.cases" :key="index">
<view class="lawsuit-item" @click="onView(item.page)">
<view class="lawsuit-cover" :style="'background-image: url(' + item.cover + ');'"></view>
<view class="lawsuit-text">
<view class="lawsuit-title nowrap">{{item.title}}</view>
<view class="lawsuit-price">{{item.price}}<text v-if="item.limit != null">{{item.limit}}</text></view>
</view>
</view>
</view>
<view class="lawsuit-item" @click="onView('Service')">
<view class="lawsuit-cover" :style="'background-image: url(' + require('@/static/synthesize/img_03.png') + ');'"></view>
<view class="lawsuit-text">
<view class="lawsuit-title">拓展服务</view>
<view class="lawsuit-price">500</view>
</view>
</view>
</block>
</view>
</view>
<!-- 增收赋能类 -->
@@ -142,56 +111,45 @@
<view class="block-title">
<view class="title">增收赋能类</view>
</view>
<view class="closed" @click="onToast()">
<view class="closed-item">
<view class="closed-cover" :style="'background-image: url(' + require('@/static/synthesize/img_07.png') + ');'"></view>
<view class="closed-text">
<view class="closed-title nowrap">巅峰销售思维</view>
<view class="closed-subtitle nowrap">巅峰销售思维训练课2天</view>
<view class="closed-price nowrap">2980.00</view>
</view>
<scroll-view
class="the-flex"
style="padding-top: 0;"
scroll-x="true"
scroll-with-animation="true"
:scroll-into-view='defaultViewId'
@click="onToast()"
>
<view class="the-flex-item">
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_07.png') + ');'"></view>
<view class="title nowrap">巅峰销售思维</view>
<view class="price nowrap"><text></text>2980</view>
</view>
<view class="closed-item">
<view class="closed-cover" :style="'background-image: url(' + require('@/static/synthesize/img_08.png') + ');'"></view>
<view class="closed-text">
<view class="closed-title nowrap">团队系统思维</view>
<view class="closed-subtitle nowrap">团队系统思维训练课3天</view>
<view class="closed-price nowrap">3980.00</view>
</view>
<view class="the-flex-item">
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_08.png') + ');'"></view>
<view class="title nowrap">团队系统思维</view>
<view class="price nowrap"><text></text>3980</view>
</view>
<view class="closed-item">
<view class="closed-cover" :style="'background-image: url(' + require('@/static/synthesize/img_09.png') + ');'"></view>
<view class="closed-text">
<view class="closed-title nowrap">领袖演说思维</view>
<view class="closed-subtitle nowrap">领袖演说思维训练课3天</view>
<view class="closed-price nowrap">4980.00</view>
</view>
<view class="the-flex-item">
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_09.png') + ');'"></view>
<view class="title nowrap">领袖演说思维</view>
<view class="price nowrap"><text></text>4980</view>
</view>
<view class="closed-item">
<view class="closed-cover" :style="'background-image: url(' + require('@/static/synthesize/img_10.png') + ');'"></view>
<view class="closed-text">
<view class="closed-title nowrap">卓越领秀思维</view>
<view class="closed-subtitle nowrap">卓越领秀思维训练课3天</view>
<view class="closed-price nowrap">5980.00</view>
</view>
<view class="the-flex-item">
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_10.png') + ');'"></view>
<view class="title nowrap">领袖能量思维</view>
<view class="price nowrap"><text></text>5980</view>
</view>
<view class="closed-item">
<view class="closed-cover" :style="'background-image: url(' + require('@/static/synthesize/img_11.png') + ');'"></view>
<view class="closed-text">
<view class="closed-title nowrap">激发内在无限潜能</view>
<view class="closed-subtitle nowrap">激发内在无限潜能训练课3天</view>
<view class="closed-price nowrap">9980.00</view>
</view>
<view class="the-flex-item">
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_11.png') + ');'"></view>
<view class="title nowrap">激发内在无限潜能</view>
<view class="price nowrap"><text></text>9980</view>
</view>
<view class="closed-item">
<view class="closed-cover" :style="'background-image: url(' + require('@/static/synthesize/img_12.png') + ');'"></view>
<view class="closed-text">
<view class="closed-title nowrap">其他赋能培训会</view>
<view class="closed-subtitle nowrap">定制其他赋能培训会议</view>
<view class="closed-price nowrap">价格另议</view>
</view>
<view class="the-flex-item">
<view class="cover" :style="'background-image: url(' + require('@/static/synthesize/img_12.png') + ');'"></view>
<view class="title nowrap">其他赋能培训会议</view>
<view class="price nowrap">价格另</view>
</view>
</view>
</scroll-view>
</view>
<!-- 弹窗 -->
<u-popup :show="showAdImg" mode="center" bgColor="transparent">
@@ -225,7 +183,7 @@
<script>
import { region } from '@/apis/interfaces/address.js'
import { categories, jf, zf, index } from '@/apis/interfaces/index.js'
import { categories, jf, index } from '@/apis/interfaces/index.js'
export default {
data() {
return {
@@ -246,14 +204,17 @@
first : 1,
showAdTime : 0,
showAdImg : true,
layAdImg : ''
layAdImg : '',
appMenus : {
cases : [],
service : []
}
}
},
onLoad() {
this.getCategory()
this.getJf()
this.getIndex()
this.getZf()
},
methods: {
onToast(){
@@ -289,23 +250,11 @@
url:'/pages/index/introduces?id='+id
})
},
// 获取综法列表
getZf(){
zf().then(res=>{
// this.jfList = res
}).catch(err=>{
uni.showToast({
title:err.message,
icon:'none',
mask:true,
duration:2000
})
})
},
// 首页轮播图及公告
getIndex(){
index().then(res=>{
this.bannerArr = res.bannners
this.appMenus = res.app_menus
let list = []
res.notices.map(item=>{
let params = item.user.name + ' ' + item.user.text

View File

@@ -99,6 +99,12 @@
</view>
<u-icon name="arrow-right" color="#cacaca" size="34rpx" bold></u-icon>
</view>
<!-- <view class="nav-flex" @click="onReckoner">
<view class="nav-icon">
<image class="nav-icon-src" src="@/static/icons/user_nav_09.png"></image>盘债计算器
</view>
<u-icon name="arrow-right" color="#cacaca" size="34rpx" bold></u-icon>
</view> -->
<view class="border-solid-empty"></view>
<view class="nav-flex" @click="updateApp">
<view class="nav-icon">
@@ -165,12 +171,28 @@
<view class="button" @click="sureYunYing">确认名称</view>
</view>
</u-popup>
<!-- 盘债计算机二维码 -->
<!-- <u-popup :show="reckonerShow" mode="center" bgColor="transparent">
<view class="reckoner-lay">
<view class="reckoner-content">
<image class="reckoner-code" :src="reckonerQrcode" mode="widthFix"></image>
<view class="reckoner-url" @click="onCopyUrl(reckonerURL)">邀请码{{reckonerInvite}}<text>复制</text></view>
<view class="reckoner-btn" @click="onIsSeve">保存海报</view>
<image class="reckoner-back" src="@/static/imgs/reckoner-back.png" mode="aspectFill"></image>
</view>
<u-icon name="close-circle-fill" size="42" color="#fff" @click="reckonerShow = false"></u-icon>
</view>
</u-popup> -->
<!-- 海报 -->
<!-- <l-painter class="l-painter" :board="reckonerPoster" isCanvasToTempFilePath @success="qrcodePath"/> -->
</view>
</template>
<script>
import { info, relationsVerify, relationsBind, submitTeamName } from '@/apis/interfaces/user.js'
import { info, relationsVerify, relationsBind, submitTeamName, debtUrl } from '@/apis/interfaces/user.js'
import { getVersions } from '@/apis/interfaces/versions'
import { request } from '../../apis';
import permision from "@/js_sdk/wa-permission/permission.js"
export default {
data() {
return {
@@ -207,6 +229,12 @@
team_id :'',
region_status :'', // 状态 0 不展示 大区中心 1可以申请但是没有完善2申请完审核中3已通过已修改
region_id :'',
// 计算器
reckonerShow : false,
reckonerURL : '',
reckonerQrcode : '',
reckonerInvite : '',
reckonerPoster : {}
};
},
onShow() {
@@ -214,6 +242,145 @@
if (this.$store.getters.getToken != '') this.getUserInfo()
},
methods: {
// 检查保存海报权限
async onIsSeve(){
let result = await permision.requestAndroidPermission('android.permission.READ_EXTERNAL_STORAGE')
// 检查用户权限
if(result == 1){
this.onDowQRcode()
return
}
// 引导用户设置联系电话
uni.showModal({
title : '提示',
content : '请授权应用获得[写入相册]权限',
showCancel : false,
confirmText : '设置',
success : modalRes => {
permision.gotoAppPermissionSetting()
}
})
},
// 保存盘债计算器海报
onDowQRcode(){
uni.showLoading({
title: '获取海报中...',
mask : true
})
this.reckonerPoster = {
css: {
width: '600rpx',
borderRadius: '20rpx'
},
views: [
{
css: {
width: '600rpx',
height: '840rpx',
objectFit: 'cover',
borderRadius: '20rpx'
},
src : require('@/static/imgs/reckoner-back.png'),
type: "image"
},
{
css: {
width: '440rpx',
height: '440rpx',
position: 'absolute',
left: '80rpx',
top: '120rpx',
borderRadius: '20rpx'
},
src : this.reckonerQrcode,
type: "image"
}, {
type: 'text',
text: '邀请码:' + this.reckonerInvite,
css: {
textAlign: 'center',
color: '#fff',
position: 'absolute',
left: '30rpx',
top: '600rpx',
width: '540rpx',
lineHeight: '50rpx',
fontSize: '16px',
fontWeight: 'bold'
}
}, {
type: 'text',
text: '使用微信扫一扫,打开盘债计算器',
css: {
textAlign: 'center',
color: '#fff',
position: 'absolute',
left: '30rpx',
top: '670rpx',
width: '540rpx',
lineHeight: '50rpx',
fontSize: '14px'
}
},
]
}
},
// 生成海报地址
qrcodePath(path){
uni.hideLoading()
uni.saveImageToPhotosAlbum({
filePath: path,
success :() => {
uni.showToast({
title: '海报已保存,赶快去分享吧',
icon : 'none'
})
},
fail : () => {
uni.showToast({
title: '保存失败,请检查系统权限',
icon : 'none'
})
}
});
},
// 复制用户地址
onCopyUrl(url){
uni.setClipboardData({
data : url,
success : res => {
uni.showToast({
title: '地址已复制'
})
}
})
},
// 盘债计算器
onReckoner() {
if(!this.isAuth){
this.$Router.push({
name: 'Auth'
})
return
}
uni.showLoading({
title: '获取邀请码',
mask : true
})
debtUrl().then(res => {
uni.hideLoading()
let { url, qrcode, invite } = res;
this.reckonerURL = url
this.reckonerQrcode = qrcode
this.reckonerInvite = invite
this.reckonerShow = true
}).catch(err => {
uni.showToast({
title: err.message,
icon : 'none'
})
})
},
// 获取用户信息
getUserInfo() {
uni.showLoading({
@@ -297,6 +464,12 @@
},
// 推荐关系
onParent() {
if(!this.isAuth){
this.$Router.push({
name: 'Auth'
})
return
}
if (this.parent == '') {
this.showBind = true
return
@@ -396,7 +569,6 @@
},
// 运营中心确认按钮处理
sureYunYing(){
console.log(this.team_status,this.region_status)
if(this.yunying_name == '' || this.yunying_name.length == 0){
uni.showToast({
title:this.team_status == 1?'请完善法务运营中心名称':'请完善大区运营中心名称',
@@ -500,6 +672,60 @@
</script>
<style lang="scss">
// 计算器弹出层
.l-painter{ position: fixed; top: -100%; left: -100%; }
.reckoner-lay{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
.reckoner-content{
border-radius: 20rpx;
padding: 70rpx 50rpx;
width: 75vw;
box-sizing: border-box;
margin-bottom: 30rpx;
position: relative;
overflow: hidden;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.reckoner-back{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
}
.reckoner-code{
width: 45vw;
height: 45vw;
margin-top: 20rpx;
margin-bottom: 30rpx;
}
.reckoner-btn{
margin-top: 50rpx;
background: white;
color: #051437;
width: 55vw;
text-align: center;
line-height: 100rpx;
border-radius: 50rpx;
font-size: 34rpx;
}
.reckoner-url{
color: white;
text-align: center;
font-size: 30rpx;
text{ font-weight: bold; margin-left: 15rpx; }
}
}
}
// close-circle-fill
// 导航栏
.nav-flex {
height: 120rpx;
padding: 0 30rpx;

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 508 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB