提交 74d3514d1157b5d89a7296d5fce75d06eb1b70ae

作者 guomingshu
1 个父辈 5b97bfaa

feat: fix bug

... ... @@ -5,13 +5,13 @@ module.exports = (vm) => {
5 5 /* config 为默认全局配置*/
6 6
7 7 // 测试环境
8   - config.baseURL = "http://47.110.250.177:8000";
  8 + // config.baseURL = "http://47.110.250.177:8000";
9 9
10 10 // 预生产环境
11 11 // config.baseURL = "https://api-isxpre.workai.com.cn";
12 12
13 13 // 线上环境
14   - // config.baseURL = "https://api-isx.workai.com.cn";
  14 + config.baseURL = "https://api-isx.workai.com.cn";
15 15
16 16 config.header = {
17 17 // 'content-type': 'xxx'
... ...
... ... @@ -102,7 +102,7 @@
102 102 },
103 103 "quickapp" : {},
104 104 "mp-weixin" : {
105   - "appid" : "wxac18386e35824192",
  105 + "appid" : "wx6cd2152282abd34c",
106 106 "setting" : {
107 107 "urlCheck" : false,
108 108 "es6" : true,
... ...
... ... @@ -3,7 +3,9 @@
3 3 <navigation-bar :title="nbTitle" :front-color="nbFrontColor" :background-color="nbBackgroundColor" />
4 4 </page-meta>
5 5 <view>
6   - <web-view :webview-styles="webviewStyles" :src="url"></web-view>
  6 + <view v-if="url">
  7 + <web-view :webview-styles="webviewStyles" :src="url" @message="handleGetMessage"></web-view>
  8 + </view>
7 9 </view>
8 10 </template>
9 11
... ... @@ -24,17 +26,37 @@
24 26 },
25 27
26 28 onLoad(option) {
27   - console.log(option);
28   - this.url = option.url;
  29 + console.log(option, new Date().getTime());
  30 + if (option.type == 'treary') {
  31 + this.url = decodeURIComponent(option.url);
  32 + console.log('123',this.url);
  33 + } else if (option.type == 'cc') {
  34 +
  35 + } else {
  36 + this.url = `${option.url}?time=${new Date().getTime()}`;
  37 + }
29 38 this.nbTitle = option.navtitle;
30 39 },
31 40
32 41 methods: {
33   -
  42 + reloadPage(redirectUrl) {
  43 + console.log('---webview reloadPage', redirectUrl)
  44 + this.url = redirectUrl
  45 + },
  46 +
  47 + handleGetMessage(e) {
  48 + console.log('ddd', e)
  49 + // if (e.detail.data[0].result == 'success') {
  50 + // wx.navigateTo({
  51 + // url: '/pages/redirect/bizpage'
  52 + // })
  53 + // }
  54 + },
  55 +
34 56 }
35 57 }
36 58 </script>
37 59
38 60 <style lang="scss" scoped>
39 61
40   -</style>
  62 +</style>
... ...
1 1 <template>
2   - <view class="report_detail">
  2 + <view class="report_detail" :style="vuex_theme">
3 3 <view class="list_box" v-if="list.length > 0">
4 4 <view class="item" v-for="(item, i) in list" :key="i" @click="handelDetail(item)">
5 5
... ...
1 1 <template>
2   - <view class="page">
  2 + <view class="page" :style="vuex_theme">
3 3 <!-- <u-search :style="{width:'100%',height: '32px',fontSize: '14px'}" bg-color="#F7F7F7" placeholder="请输入学生姓名/学号/手机号"
4 4 search-icon-color="#D9D9D9" placeholder-color="#8C8C8C" input-align="left" :clearabled="true"
5 5 :show-action="false" v-model="search" focus=true @search="handelLink()">
... ... @@ -34,7 +34,7 @@
34 34 onLoad(option) {
35 35 console.log('onshow', option)
36 36 if (option && option.type) {
37   - this.type = option.type
  37 + this.type = option.type
38 38 this.search = option.searchkey
39 39 }
40 40 },
... ... @@ -58,18 +58,18 @@
58 58 // this.$u.toast('请输入搜索条件')
59 59 // return
60 60 // }
61   -
62   - if (e != '') {
63   - if (this.history.indexOf(e) == -1) {
64   - this.history.push(e)
65   - uni.setStorage({
66   - key: 'search_history',
67   - data: that.history,
68   - success: function() {
69   - console.log('success');
70   - }
71   - });
72   - }
  61 +
  62 + if (e != '') {
  63 + if (this.history.indexOf(e) == -1) {
  64 + this.history.push(e)
  65 + uni.setStorage({
  66 + key: 'search_history',
  67 + data: that.history,
  68 + success: function() {
  69 + console.log('success');
  70 + }
  71 + });
  72 + }
73 73 }
74 74
75 75 let pages = getCurrentPages();
... ... @@ -78,15 +78,15 @@
78 78 uni.navigateBack({
79 79 delta: 1
80 80 });
81   - },
82   -
83   - clearInput() {
84   - let pages = getCurrentPages();
85   - let prevPage = pages[pages.length - 2];
86   - prevPage.$vm.keyword = '';
87   - uni.navigateBack({
88   - delta: 1
89   - });
  81 + },
  82 +
  83 + clearInput() {
  84 + let pages = getCurrentPages();
  85 + let prevPage = pages[pages.length - 2];
  86 + prevPage.$vm.keyword = '';
  87 + uni.navigateBack({
  88 + delta: 1
  89 + });
90 90 },
91 91
92 92 clear() {
... ... @@ -138,8 +138,8 @@
138 138 font-weight: 300;
139 139 color: rgba(0, 0, 0, 0.65);
140 140 text-align: center;
141   - margin-right: 20rpx;
  141 + margin-right: 20rpx;
142 142 margin-bottom: 10px;
143 143 }
144 144 }
145   -</style>
  145 +</style>
... ...
1 1 <template>
2   - <view class="info">
  2 + <view class="info" :style="vuex_theme">
3 3 <view style="display: flex;">
4 4 <image class="header_bg" :src="vuex_baseImgUrl && `${vuex_baseImgUrl}intership_header_bg.png`"></image>
5 5 <view style="position: absolute;display: flex;">
... ...
1 1 <template>
2   - <view class="registration_review">
  2 + <view class="registration_review" :style="vuex_theme">
3 3
4 4 <view class="list_box" v-if="list.length > 0">
5 5 <view class="item" v-for="(item, i) in list" :key="i" @click="handelDetail(item)">
... ... @@ -11,14 +11,14 @@
11 11 <view class="company">
12 12 <text>实习计划</text>
13 13 <text>{{item.planName|| '--'}}</text>
14   - </view>
15   - <view class="company">
16   - <text>实习项目</text>
17   - <text>{{item.projectName|| '--'}}</text>
18   - </view>
19   - <view class="company">
20   - <text>学生名称</text>
21   - <text>{{item.studentName|| '--'}}</text>
  14 + </view>
  15 + <view class="company">
  16 + <text>实习项目</text>
  17 + <text>{{item.projectName|| '--'}}</text>
  18 + </view>
  19 + <view class="company">
  20 + <text>学生名称</text>
  21 + <text>{{item.studentName|| '--'}}</text>
22 22 </view>
23 23
24 24 <view class="time">
... ... @@ -113,11 +113,11 @@
113 113
114 114 if (this.studentId) {
115 115 params.studentId = this.studentId
116   - }
117   -
118   - if (this.projectId) {
119   - params.projectId = this.projectId
120   - }
  116 + }
  117 +
  118 + if (this.projectId) {
  119 + params.projectId = this.projectId
  120 + }
121 121
122 122 return await getAgreementListApi(params);
123 123 },
... ... @@ -142,14 +142,14 @@
142 142 this.shownoData = true
143 143 }
144 144
145   - this.list = this.list.concat(result.records)
146   -
147   - // 判断是否全部加载完成
148   - if (this.total == this.list.length) {
149   - this.finished = true;
150   - this.loading = 'nomore';
151   - } else {
152   - this.loading = 'loadmore';
  145 + this.list = this.list.concat(result.records)
  146 +
  147 + // 判断是否全部加载完成
  148 + if (this.total == this.list.length) {
  149 + this.finished = true;
  150 + this.loading = 'nomore';
  151 + } else {
  152 + this.loading = 'loadmore';
153 153 }
154 154 },
155 155
... ... @@ -180,7 +180,7 @@
180 180 flex-flow: row nowrap;
181 181 margin: 0 0 30rpx 0;
182 182
183   - text {
  183 + text {
184 184 width: 120rpx;
185 185 font-size: 28rpx;
186 186 line-height: 32rpx;
... ... @@ -188,7 +188,7 @@
188 188 margin: 0 0 0 16rpx;
189 189 }
190 190
191   - text:last-child {
  191 + text:last-child {
192 192 width: 450rpx;
193 193 color: #202131;
194 194 margin: 0 0 0 30rpx;
... ... @@ -199,14 +199,14 @@
199 199 border-top: 2rpx solid #E2E2E8;
200 200 padding: 28rpx 0 0 0;
201 201
202   - text {
  202 + text {
203 203 width: 120rpx;
204 204 font-size: 28rpx;
205 205 line-height: 32rpx;
206 206 color: #909097;
207 207 }
208 208
209   - text:last-child {
  209 + text:last-child {
210 210 width: 450rpx;
211 211 color: #202131;
212 212 margin: 0 0 0 78rpx;
... ... @@ -216,4 +216,4 @@
216 216 }
217 217
218 218 }
219   -</style>
  219 +</style>
... ...
1 1 <template>
2   - <view class="info">
  2 + <view class="info" :style="vuex_theme">
3 3 <view style="display: flex;">
4 4 <image class="header_bg" :src="vuex_baseImgUrl && `${vuex_baseImgUrl}intership_header_bg.png`"></image>
5 5 <view style="position: absolute;display: flex;">
... ...
1 1 <template>
2   - <view class="signin_list">
  2 + <view class="signin_list" :style="vuex_theme">
3 3 <mi-calendar :suspensionDateList="suspensionDateList" @change="change" @changeMonth="changeMonth"></mi-calendar>
4 4
5 5 <view class="steps">
... ...
1 1 <template>
2   - <view class="account_safe">
  2 + <view class="account_safe" :style="vuex_theme">
3 3 <view class="cell top">
4 4 <u-cell-group>
5 5 <u-cell title="登录账号" :isLink="true" url="/pages/main/my/editAccount/editAccount" arrow-direction="right"
... ... @@ -33,9 +33,9 @@
33 33 import {
34 34 mapState,
35 35 mapActions
36   - } from 'vuex'
37   - import {
38   - replaceTextToStar
  36 + } from 'vuex'
  37 + import {
  38 + replaceTextToStar
39 39 } from '@/common/commonUtil.js'
40 40
41 41 export default {
... ... @@ -46,13 +46,13 @@
46 46 },
47 47
48 48 computed: {
49   - ...mapState({
50   - accountName: (state) => state.vuex_user.username ? state.vuex_user.username : '',
51   -
52   - getPhone(state) {
53   - let phone = state.vuex_user.phone;
54   - return phone ? replaceTextToStar(phone) : '';
55   - },
  49 + ...mapState({
  50 + accountName: (state) => state.vuex_user.username ? state.vuex_user.username : '',
  51 +
  52 + getPhone(state) {
  53 + let phone = state.vuex_user.phone;
  54 + return phone ? replaceTextToStar(phone) : '';
  55 + },
56 56
57 57 }),
58 58 },
... ... @@ -105,4 +105,4 @@
105 105 }
106 106 }
107 107 }
108   -</style>
  108 +</style>
... ...
1 1 <template>
2   - <view>
3   - <view style="width: 100%;height: 100%;">
4   - <view class="title" style="margin: 32rpx;">账户注销协议</view>
5   - <view class="content">
6   - <text class="text" :user-select="true">
7   - 【特别说明】亲爱的用户,在您正式开始下一步账号注销流程前,我们先为您做出如下特别说明:注销账号后,您将无法再以此账号登录和使用一起教育科技(以下简称“我们”或者“一起教育科技”)的产品与服务以及产品及服务中与第三方合作的服务内容(以下简称为“产品与服务”),这同时也可能会给您的售后维权带来不便。且账号一旦注销完成,将无法恢复。请您在注销前慎重考虑。
8   -
9   -
10   -
11   - 若您经过慎重考虑后仍执意决定注销账号的,请您务必先行仔细阅读和充分理解本《账号注销协议》,在同意全部内容、且在账号符合全部注销条件后,按照我们的注销操作指引点击进行下一步操作,您勾选本注销协议并点击下一步操作的,即视为您已经同意并签署和遵守本协议全部内容。如您在注销后需要再次使用我们的服务的,欢迎您使用手机号码或我们允许的其他方式重新注册。
12   -
13   -
14   -
15   - (如您执意决定注销账号的,请继续向下阅读)
16   -
17   -
18   -
19   - 一、您知悉并同意:您的账号注销后,将(可能)产生包括但不限于如下结果需要您自行承担。
20   - </text>
21   - </view>
22   - <view style="position: fixed;bottom: 0;width: 100%;">
23   - <view class="divide_line"></view>
24   - <view class="bottom">
25   - <view class="bd1">
26   - <text class="text1" @click="giveUp">放弃注销</text>
27   - </view>
28   - <view class="bd2">
29   - <text class="text2" @click="getCode">同意注销</text>
30   - </view>
31   - </view>
32   - </view>
33   - </view>
34   -
35   - <u-overlay :show="showModal">
36   - <view class="modal" v-show="showModal">
37   - <image src="/static/img/my/delete.png" class="close" @click="closeModal"></image>
38   - <view class="text0" style="margin-top:64rpx">请输入验证码</view>
39   - <view class="text1" style="margin: 32rpx;">已发送至手机号:{{getPhone}}</view>
40   - <view style="margin: 32rpx auto;width:'200rpx'">
41   - <u-code-input :maxlength="4" v-model="currentCode" size="48" :focus="false" :dot="true" :width="76"
42   - @change="change" @finish="goNext"></u-code-input>
43   - </view>
44   - <view style="margin-top: 32rpx;">
45   - <u-code ref="uCode" @change="codeChange">
46   - </u-code>
47   - <view class="text2" @click="getCode">{{tips}}</view>
48   - </view>
49   - </view>
50   - </u-overlay>
51   -
52   - </view>
  2 + <view :style="vuex_theme">
  3 + <view style="width: 100%;height: 100%;">
  4 + <view class="title" style="margin: 32rpx;">账户注销协议</view>
  5 + <view class="content">
  6 + <text v-if="vuex_appId == 'wxac18386e35824192'" class="text" :user-select="true">
  7 + 【特别说明】亲爱的用户,在您正式开始下一步账号注销流程前,我们先为您做出如下特别说明:注销账号后,您将无法再以此账号登录和使用新华实习平台(以下简称“我们”或者“新华实习”)的产品与服务以及产品及服务中与第三方合作的服务内容(以下简称为“产品与服务”),这同时也可能会给您的售后维权带来不便。且账号一旦注销完成,将无法恢复。请您在注销前慎重考虑。
  8 +
  9 + 若您经过慎重考虑后仍执意决定注销账号的,请您务必先行仔细阅读和充分理解本《账号注销协议》,在同意全部内容、且在账号符合全部注销条件后,按照我们的注销操作指引点击进行下一步操作,您勾选本注销协议并点击下一步操作的,即视为您已经同意并签署和遵守本协议全部内容。如您在注销后需要再次使用我们的服务的,欢迎您使用手机号码或我们允许的其他方式重新注册。
  10 +
  11 + (如您执意决定注销账号的,请继续向下阅读)
  12 +
  13 + 一、您知悉并同意:您的账号注销后,将(可能)产生包括但不限于如下结果需要您自行承担:
  14 +
  15 + 1.账号一旦注销,您将无法登录、使用该账号(也包括无法再使用第三方登录方式),也就是说您将无法再以此账号(亦包括第三方账号绑定的账号)登录/使用/继续使用我们的产品与服务;
  16 +
  17 + 2.账号一旦注销,您曾通过该账号登录、使用的产品与服务下的所有内容、信息、数据、记录将会被全部删除或匿名化处理,您也无法再检索、访问、获取、继续使用和找回,也无权要求我们找回(但法律法规另有约定的除外),包括但不限于:
  18 +
  19 + •该账号下的个人资料(例如:头像、昵称等)及绑定信息(例如:绑定手机号、邮箱等);
  20 +
  21 + •该账号下的您的个人隐私信息(同时您亦不再享有《用户隐私保护政策》中约定的您的用户权利,但法律法规另有约定的除外);
  22 +
  23 + •该账号曾发表的所有内容(例如:音频、图片、照片、评论、互动、点赞等);
  24 +
  25 + •其他所有内容、信息、数据、记录。
  26 +
  27 + 3. 您同意通过注销账号的方式放弃该账号下的产品与服务使用期间已产生的但未消耗完毕的权益及未来的预期利益。即账号一旦注销,我们将会对该账号下的全部权益做清除处理,包括但不限于:
  28 +
  29 + •您尚未到期的各类权益等;
  30 +
  31 + •您尚未使用的学豆、积分、成长值等;
  32 +
  33 + •您在账号下的产品与/或服务中发布的内容未来的收益权益;
  34 +
  35 + •您在账号下的产品与/或服务中的各类身份权益;
  36 +
  37 + •您在账号下的产品与/或服务中的未到期的服务内容;
  38 +
  39 + •其他已产生但未消耗完毕的权益或未来预期的收益。
  40 +
  41 + 4.账号一旦注销,将无法恢复(即使您在注销后以相同手机号码再次向我们申请注册账号,此时该账号将默认为新的用户账号。因此,我们善意地提醒您在申请注销前对需要备份的内容提前自行做好备份);
  42 +
  43 + 5.账号一旦注销,您与我们曾签署过的相关用户协议、其他权利义务性文件等相应终止(但已约定继续生效的或法律法规另有规定的除外);
  44 +
  45 + 6. 其他因账号注销(可能)产生的结果。
  46 +
  47 + 二、在您向我们申请/继续申请注销账号之前,为保障您的账号安全和财产权益,您需先行检查与确保您申请注销的账号已经同时满足以下条件,这些条件包括但不限于:
  48 +
  49 + 1. 该账号是通过我们的官方渠道注册、符合新华实习相关平台说明规范的账号;且为您本人注册的账号;
  50 +
  51 + 2. 需按照我们的官方渠道提供的注销流程和操作指引进行注销操作;
  52 +
  53 + 3. 该账号处于安全状态,包括但不限于:
  54 +
  55 + •最近1个月内无异常登录记录;
  56 +
  57 + •最近1个月内未换绑注册手机、邮箱;
  58 +
  59 + •该账号在申请注销期间无未处理完毕的(被)投诉、举报;
  60 +
  61 + •该账号在申请注销期间未处于非法的被检查状态、被限制的状态;
  62 +
  63 + •无其他不安全/异常状态。
  64 +
  65 + 4. 该账号内无余额/资金,包括但不限于:
  66 +
  67 + •账号内的其他余额/资金均已被提现或消费完毕。
  68 +
  69 + 5. 该账号内无未处理完毕的交易,包括但不限于:
  70 +
  71 + •交易中无未完成的订单;
  72 +
  73 + •无其他未处理完毕的订单或已提供服务但未支付的订单/服务。
  74 +
  75 + 6. 其他应满足的条件。
  76 +
  77 + 上述问题您可首先尝试自行处理,如您无法处理的或在处理过程中有任何疑惑的,可联系客服协助处理(客服电话:400-8227611 )
  78 +
  79 + 三、如何注销账号?
  80 +
  81 + 1. 您需按照我们的官方渠道提供的注销流程和操作指引,在相关功能设置页面进行注销操作;
  82 +
  83 + 2. 您已经仔细阅读与充分理解、且同意本《账号注销协议》的全部内容;同时,您已经检查与确认满足了本协议第二条的要求;
  84 +
  85 + 3. 在您完成上述第2点后,我们将根据您的账号安全状态以及您的相关产品与服务的使用情况等综合判断您的账号是否符合注销条件。如满足注销条件,为保障您的账号安全和财产权益,我们需要进行注销申请的身份验证以确保您真的是账号的有权使用人(如注册手机验证方式等)。如我们在综合判断后发现账号不符合注销条件的,或者身份验证失败的,您的注销可能会失败,您可以按照我们的指引进行后续操作或联系客服协助处理;
  86 +
  87 + 4. 我们在您成功完成上述第3点的“身份验证”后,视为您已成功向我们提交了账号注销申请,在此期间内,我们为您的该账号提供6个月180天的保留期限(即“锁定期”)。在该锁定期内,您无法登录与使用该账号,该账号下的相关信息我们也暂时不会作删除或匿名化处理。在锁定期内,您在提供相关身份信息后可以通过客服允许的方式随时向我们提出恢复该账号;如超过锁定期后,我们未收到您恢复账号的请求或者未出现任何其他不得注销事由的,该账号将被永久注销。
  88 +
  89 + 5.您理解并同意,您在申请注销账号期间(含锁定期),如我们需要对相关交易、投诉或其他与您的账号相关的事项进行核实的,或者我们有其他合理的理由的,我们有权冻结您的该账号且暂时不为您提供注销服务。
  90 +
  91 + 四、在您的账号注销期间,如果您的账号涉及争议纠纷,包括但不限于投诉、举报、诉讼、仲裁、国家有权机关调查等,您知晓并理解,我们有权自行决定是否终止本账号的注销而无需另行得到您的同意。
  92 +
  93 + 五、本协议未尽事宜,请参考《用户协议》、《用户隐私保护政策》及新华实习平台相关规则、说明等。同时,您知悉并同意:即使您的账号被注销了,也并不减轻或免除您应根据相关法律法规、相关协议、规则等(可能)需要承担的相关责任。
  94 +
  95 + 六、您已充分知悉并确认,本账号一旦注销,您与我们曾签署的相关用户协议、其他权利义务性文件等响应终止(但已约定继续生效的或法律另有规定的除外)。
  96 +
  97 + 七、如在账号注销过程中有任何问题您无法处理的或在处理过程中有任何疑惑的,可联系客服协助处理。
  98 +
  99 + 八、本协议之效力、解释、变更、执行与争议解决均适用中华人民共和国法律。因本协议产生之争议,双方尽最大诚意进行友好协商,如果双方不能协商一致,均应依照中华人民共和国法律予以处理,任何一方均可向中国国际经济贸易仲裁委员会申请在北京仲裁。
  100 +
  101 + 提示:根据《网络安全法》第二十一条的规定,需将网络日志记录至少保留6个月,即使在其注销后,也建议保留其日志不少于6个月的时间。
  102 + </text>
  103 + <text v-else class="text" :user-select="true">
  104 + 【特别说明】亲爱的用户,在您正式开始下一步账号注销流程前,我们先为您做出如下特别说明:注销账号后,您将无法再以此账号登录和使用优学乐业平台(以下简称“我们”或者“优学乐业”)的产品与服务以及产品及服务中与第三方合作的服务内容(以下简称为“产品与服务”),这同时也可能会给您的售后维权带来不便。且账号一旦注销完成,将无法恢复。请您在注销前慎重考虑。
  105 +
  106 + 若您经过慎重考虑后仍执意决定注销账号的,请您务必先行仔细阅读和充分理解本《账号注销协议》,在同意全部内容、且在账号符合全部注销条件后,按照我们的注销操作指引点击进行下一步操作,您勾选本注销协议并点击下一步操作的,即视为您已经同意并签署和遵守本协议全部内容。如您在注销后需要再次使用我们的服务的,欢迎您使用手机号码或我们允许的其他方式重新注册。
  107 +
  108 + (如您执意决定注销账号的,请继续向下阅读)
  109 +
  110 + 一、您知悉并同意:您的账号注销后,将(可能)产生包括但不限于如下结果需要您自行承担:
  111 +
  112 + 1.账号一旦注销,您将无法登录、使用该账号(也包括无法再使用第三方登录方式),也就是说您将无法再以此账号(亦包括第三方账号绑定的账号)登录/使用/继续使用我们的产品与服务;
  113 +
  114 + 2.账号一旦注销,您曾通过该账号登录、使用的产品与服务下的所有内容、信息、数据、记录将会被全部删除或匿名化处理,您也无法再检索、访问、获取、继续使用和找回,也无权要求我们找回(但法律法规另有约定的除外),包括但不限于:
  115 +
  116 + •该账号下的个人资料(例如:头像、昵称等)及绑定信息(例如:绑定手机号、邮箱等);
  117 +
  118 + •该账号下的您的个人隐私信息(同时您亦不再享有《用户隐私保护政策》中约定的您的用户权利,但法律法规另有约定的除外);
  119 +
  120 + •该账号曾发表的所有内容(例如:音频、图片、照片、评论、互动、点赞等);
  121 +
  122 + •其他所有内容、信息、数据、记录。
  123 +
  124 + 3. 您同意通过注销账号的方式放弃该账号下的产品与服务使用期间已产生的但未消耗完毕的权益及未来的逾期利益。即账号一旦注销,我们将会对该账号下的全部权益做清除处理,包括但不限于:
  125 +
  126 + •您尚未到期的各类权益等;
  127 +
  128 + •您尚未使用的学豆、积分、成长值等;
  129 +
  130 + •您在账号下的产品与/或服务中发布的内容未来的收益权益;
  131 +
  132 + •您在账号下的产品与/或服务中的各类身份权益;
  133 +
  134 + •您在账号下的产品与/或服务中的未到期的服务内容;
  135 +
  136 + •其他已产生但未消耗完毕的权益或未来预期的收益。
  137 +
  138 + 4.账号一旦注销,将无法恢复(即使您在注销后以相同手机号码再次向我们申请注册账号,此时该账号将默认为新的用户账号。因此,我们善意地提醒您在申请注销前对需要备份的内容提前自行做好备份);
  139 +
  140 + 5.账号一旦注销,您与我们曾签署过的相关用户协议、其他权利义务性文件等相应终止(但已约定继续生效的或法律法规另有规定的除外);
  141 +
  142 + 6. 其他因账号注销(可能)产生的结果。
  143 +
  144 + 二、在您向我们申请/继续申请注销账号之前,为保障您的账号安全和财产权益,您需先行检查与确保您申请注销的账号已经同时满足以下条件,这些条件包括但不限于:
  145 +
  146 + 1. 该账号是通过我们的官方渠道注册、符合优学乐业相关平台说明规范的账号;且为您本人注册的账号;
  147 +
  148 + 2. 需按照我们的官方渠道提供的注销流程和操作指引进行注销操作;
  149 +
  150 + 3. 该账号处于安全状态,包括但不限于:
  151 +
  152 + •最近1个月内无异常登录记录;
  153 +
  154 + •最近1个月内未换绑注册手机、邮箱;
  155 +
  156 + •该账号在申请注销期间无未处理完毕的(被)投诉、举报;
  157 +
  158 + •该账号在申请注销期间未处于非法的被检查状态、被限制的状态;
  159 +
  160 + •无其他不安全/异常状态。
  161 +
  162 + 4. 该账号内无余额/资金 学豆,包括但不限于:
  163 +
  164 + •学豆、学贝已被消费 使用完毕;
  165 +
  166 + •账号内的其他余额/资金均已被提现或消费完毕。
  167 +
  168 + 5. 该账号内无未处理完毕的交易,包括但不限于:
  169 +
  170 + •交易中无未完成的订单;
  171 +
  172 + •无其他未处理完毕的订单或已提供服务但未支付的订单/服务。
  173 +
  174 + 5. 其他应满足的条件。
  175 +
  176 + 上述问题您可首先尝试自行处理,如您无法处理的或在处理过程中有任何疑惑的,可联系客服协助处理(客服电话:400-8227611 )                 
  177 +
  178 + 三、如何注销账号?
  179 +
  180 + 1. 您需按照我们的官方渠道提供的注销流程和操作指引,在相关功能设置页面进行注销操作;
  181 +
  182 + 2. 您已经仔细阅读与充分理解、且同意本《账号注销协议》的全部内容;同时,您已经检查与确认满足了本协议第二条的要求;
  183 +
  184 + 3. 在您完成上述第2点后,我们将根据您的账号安全状态以及您的相关产品与服务的使用情况等综合判断您的账号是否符合注销条件。如满足注销条件,为保障您的账号安全和财产权益,我们需要进行注销申请的身份验证以确保您真的是账号的有权使用人(如注册手机验证方式等)。如我们在综合判断后发现账号不符合注销条件的,或者身份验证失败的,您的注销可能会失败,您可以按照我们的指引进行后续操作或联系客服协助处理;
  185 +
  186 + 3. 我们在您成功完成上述第3点的“身份验证”后,视为您已成功向我们提交了账号注销申请,在此期间内,我们为您的该账号提供2个月60天的保留期限(即“锁定期”)。在该锁定期内,您无法登录与使用该账号,该账号下的相关信息我们也暂时不会作删除或匿名化处理。在锁定期内,您在提供相关身份信息后可以通过客服允许的方式随时向我们提出恢复该账号;如超过锁定期后,我们未收到您恢复账号的请求或者未出现任何其他不得注销事由的,该账号将被永久注销。
  187 +
  188 + 您理解并同意,您在申请注销账号期间(含锁定期),如我们需要对相关交易、投诉或其他与您的账号相关的事项进行核实的,或者我们有其他合理的理由的,我们有权冻结您的该账号且暂时不为您提供注销服务。
  189 +
  190 + 本协议未尽事宜,请参考《用户协议》、《用户隐私保护政策》及优学乐业平台相关规则、说明等。同时,您知悉并同意:即使您的账号被注销了,也并不减轻或免除您应根据相关法律法规、相关协议、规则等(可能)需要承担的相关责任。
  191 +
  192 + 如在账号注销过程中有任何问题您无法处理的或在处理过程中有任何疑惑的,可联系客服协助处理。
  193 +
  194 + 本协议之效力、解释、变更、执行与争议解决均适用中华人民共和国法律。因本协议产生之争议,双方尽最大诚意进行友好协商,如果双方不能协商一致,均应依照中华人民共和国法律予以处理,并由北京市朝阳区有管辖权的人民法院管辖。
  195 + </text>
  196 + </view>
  197 + <view style="position: fixed;bottom: 0;width: 100%;">
  198 + <view class="divide_line"></view>
  199 + <view class="bottom">
  200 + <view class="bd1">
  201 + <text class="text1" @click="giveUp">放弃注销</text>
  202 + </view>
  203 + <view class="bd2">
  204 + <text class="text2" @click="getCode">同意注销</text>
  205 + </view>
  206 + </view>
  207 + </view>
  208 + </view>
  209 +
  210 + <u-overlay :show="showModal">
  211 + <view class="modal" v-show="showModal">
  212 + <image src="/static/img/my/delete.png" class="close" @click="closeModal"></image>
  213 + <view class="text0" style="margin-top:64rpx">请输入验证码</view>
  214 + <view class="text1" style="margin: 32rpx;">已发送至手机号:{{getPhone}}</view>
  215 + <view style="margin: 32rpx auto;width:'200rpx'">
  216 + <u-code-input :maxlength="4" v-model="currentCode" size="48" :focus="false" :dot="true" :width="76"
  217 + @change="change" @finish="goNext"></u-code-input>
  218 + </view>
  219 + <view style="margin-top: 32rpx;">
  220 + <u-code ref="uCode" @change="codeChange">
  221 + </u-code>
  222 + <view class="text2" @click="getCode">{{tips}}</view>
  223 + </view>
  224 + </view>
  225 + </u-overlay>
  226 +
  227 + </view>
53 228 </template>
54 229
55 230 <script>
56   - import {
57   - replaceTextToStar
58   - } from '@/common/commonUtil.js'
59   - import {
60   - mapState,
61   - mapActions
62   - } from 'vuex'
63   -
64   - import {
65   - getSmsCodeApi,
66   - delAccountApi,
67   - } from '@/config/api.js';
68   -
69   - export default {
70   - data() {
71   - return {
72   - showModal: false,
73   - title_style: {
74   - "font-size": "34rpx",
75   - "font-family": "PingFangSC-Medium, PingFang SC",
76   - "font-weight": 500,
77   - "color": "#000000"
78   - },
79   - tips: '',
80   - currentCode: ""
81   - }
82   - },
83   -
84   - computed: {
85   - ...mapState({
86   - // phone: (state) => state.vuex_user.phone,
87   - getPhone(state) {
88   - let phone = state.vuex_user.phone;
89   - return replaceTextToStar(phone);
90   - },
91   - }),
92   - },
93   -
94   - methods: {
95   - giveUp() {
96   - uni.navigateBack({
97   - delta: 2
98   - });
99   - },
100   -
101   - getCode() { //获取验证码
102   - this.showModal = true;
103   - if (this.$refs.uCode.canGetCode) {
104   - // 模拟向后端请求验证码
105   - uni.showLoading({
106   - title: '正在获取验证码'
107   - })
108   -
109   - getSmsCodeApi({
110   - phone: this.vuex_phone
111   - }).then(data => {
112   - console.log(data)
113   -
114   - uni.hideLoading();
115   - // 这里此提示会被this.start()方法中的提示覆盖
116   - this.$u.toast('验证码已发送');
117   - // 通知验证码组件内部开始倒计时
118   - this.$refs.uCode.start();
119   -
120   - })
121   - } else {
122   - this.$u.toast('倒计时结束后再发送');
123   - }
124   - },
125   -
126   - closeModal() {
127   - if (this.showModal) {
128   - this.showModal = false;
129   - this.$refs.uCode.reset();
130   - this.currentCode = "";
131   - }
132   - },
133   -
134   - change(e) {
135   - this.currentCode = e;
136   - },
137   -
138   - codeChange(text) {
139   - this.tips = text;
140   - },
141   -
142   - goNext(e) {
143   - console.log('输入结束,当前值为:' + e);
144   -
145   - delAccountApi({
146   - phone: this.vuex_phone,
147   - code: e,
148   - }).then(async data => {
149   - if (data && data.code == 200) {
150   - uni.showToast({
151   - title: '注销成功'
152   - });
153   - this.closeModal();
154   -
155   - await uni.$u.vuex('vuex_user', {});
156   - await uni.$u.vuex('vuex_token', {});
157   - await uni.setStorageSync('lifeData', {})
158   -
159   - this.$u.route({
160   - url: '/pages/main/my/freezing/freezing',
161   - type: 'reLaunch',
162   - });
163   - }
164   - })
165   - }
166   - }
167   - }
  231 + import {
  232 + replaceTextToStar
  233 + } from '@/common/commonUtil.js'
  234 + import {
  235 + mapState,
  236 + mapActions
  237 + } from 'vuex'
  238 +
  239 + import {
  240 + getSmsCodeApi,
  241 + delAccountApi,
  242 + } from '@/config/api.js';
  243 +
  244 + export default {
  245 + data() {
  246 + return {
  247 + showModal: false,
  248 + title_style: {
  249 + "font-size": "34rpx",
  250 + "font-family": "PingFangSC-Medium, PingFang SC",
  251 + "font-weight": 500,
  252 + "color": "#000000"
  253 + },
  254 + tips: '',
  255 + currentCode: ""
  256 + }
  257 + },
  258 +
  259 + computed: {
  260 + ...mapState({
  261 + // phone: (state) => state.vuex_user.phone,
  262 + getPhone(state) {
  263 + let phone = state.vuex_user.phone;
  264 + return replaceTextToStar(phone);
  265 + },
  266 + }),
  267 + },
  268 +
  269 + methods: {
  270 + giveUp() {
  271 + uni.navigateBack({
  272 + delta: 2
  273 + });
  274 + },
  275 +
  276 + getCode() { //获取验证码
  277 + this.showModal = true;
  278 + if (this.$refs.uCode.canGetCode) {
  279 + // 模拟向后端请求验证码
  280 + uni.showLoading({
  281 + title: '正在获取验证码'
  282 + })
  283 +
  284 + getSmsCodeApi({
  285 + phone: this.vuex_phone
  286 + }).then(data => {
  287 + console.log(data)
  288 +
  289 + uni.hideLoading();
  290 + // 这里此提示会被this.start()方法中的提示覆盖
  291 + this.$u.toast('验证码已发送');
  292 + // 通知验证码组件内部开始倒计时
  293 + this.$refs.uCode.start();
  294 +
  295 + })
  296 + } else {
  297 + this.$u.toast('倒计时结束后再发送');
  298 + }
  299 + },
  300 +
  301 + closeModal() {
  302 + if (this.showModal) {
  303 + this.showModal = false;
  304 + this.$refs.uCode.reset();
  305 + this.currentCode = "";
  306 + }
  307 + },
  308 +
  309 + change(e) {
  310 + this.currentCode = e;
  311 + },
  312 +
  313 + codeChange(text) {
  314 + this.tips = text;
  315 + },
  316 +
  317 + goNext(e) {
  318 + console.log('输入结束,当前值为:' + e);
  319 +
  320 + delAccountApi({
  321 + phone: this.vuex_phone,
  322 + code: e,
  323 + }).then(async data => {
  324 + if (data && data.code == 200) {
  325 + uni.showToast({
  326 + title: '注销成功'
  327 + });
  328 + this.closeModal();
  329 +
  330 + await uni.$u.vuex('vuex_user', {});
  331 + await uni.$u.vuex('vuex_token', {});
  332 + await uni.setStorageSync('lifeData', {})
  333 +
  334 + this.$u.route({
  335 + url: '/pages/main/my/freezing/freezing',
  336 + type: 'reLaunch',
  337 + });
  338 + }
  339 + })
  340 + }
  341 + }
  342 + }
168 343 </script>
169 344
170 345 <style lang="scss" scoped>
171   - .title {
172   - font-size: 48rpx;
173   - font-family: PingFangSC-Medium, PingFang SC;
174   - font-weight: 500;
175   - color: #26292F;
176   - margin-top: 66rpx;
177   - }
178   -
179   - .content {
180   - width: 690rpx;
181   - padding: 12rpx 30rpx;
182   - margin-bottom: 180rpx;
183   -
184   - .text {
185   - font-size: 28rpx;
186   - font-family: PingFangSC-Regular, PingFang SC;
187   - font-weight: 400;
188   - color: #26292F;
189   - line-height: 40rpx;
190   - }
191   - }
192   -
193   - .divide_line {
194   - width: 100%;
195   - height: 2rpx;
196   - border: 2rpx solid #F0F0F1;
197   - }
198   -
199   - .bottom {
200   - height: 144rpx;
201   - background-color: #fff;
202   - display: flex;
203   - flex-direction: row;
204   -
205   - .bd1 {
206   - height: 96rpx;
207   - border-radius: 8rpx;
208   - background-color: rgba(0, 0, 0, 0.03);
209   - margin: auto 30rpx;
210   - width: 30%;
211   - display: flex;
212   - }
213   -
214   - .bd2 {
215   - height: 96rpx;
216   - border-radius: 8rpx;
217   - background-color: var(--primary-color);
218   - margin: auto 30rpx;
219   - width: 60%;
220   - display: flex;
221   - }
222   -
223   - .text1 {
224   - color: rgba(0, 0, 0, 0.45);
225   - font-size: 34rpx;
226   - font-family: PingFangSC-Medium;
227   - line-height: 48rpx;
228   - margin: auto;
229   - }
230   -
231   - .text2 {
232   - color: #ffff;
233   - font-size: 34rpx;
234   - line-height: 48rpx;
235   - margin: auto;
236   - }
237   - }
238   -
239   - .modal {
240   - width: 88%;
241   - position: relative;
242   - display: flex;
243   - flex-direction: column;
244   - margin: 200rpx auto;
245   - padding-bottom: 64rpx;
246   - border-radius: 12rpx;
247   - background-color: #fff;
248   -
249   - .close {
250   - width: 48rpx;
251   - height: 48rpx;
252   - padding: 12rpx;
253   - position: fixed;
254   - right: 40rpx;
255   - }
256   -
257   - .text0 {
258   - font-size: 34rpx;
259   - font-family: PingFangSC-Medium, PingFang SC;
260   - font-weight: 500;
261   - color: #000000;
262   - text-align: center;
263   - }
264   -
265   - .text1 {
266   - font-size: 34rpx;
267   - font-family: PingFangSC-Regular, PingFang SC;
268   - font-weight: 400;
269   - color: rgba(0, 0, 0, 0.45);
270   - text-align: center;
271   - }
272   -
273   - .text2 {
274   - font-size: 30rpx;
275   - font-family: PingFangSC-Regular, PingFang SC;
276   - font-weight: 400;
277   - color: rgba(0, 0, 0, 0.5);
278   - line-height: 48rpx;
279   - text-align: center;
280   - }
281   - }
  346 + .title {
  347 + font-size: 48rpx;
  348 + font-family: PingFangSC-Medium, PingFang SC;
  349 + font-weight: 500;
  350 + color: #26292F;
  351 + margin-top: 66rpx;
  352 + }
  353 +
  354 + .content {
  355 + width: 690rpx;
  356 + padding: 12rpx 30rpx;
  357 + margin-bottom: 180rpx;
  358 +
  359 + .text {
  360 + font-size: 28rpx;
  361 + font-family: PingFangSC-Regular, PingFang SC;
  362 + font-weight: 400;
  363 + color: #26292F;
  364 + line-height: 40rpx;
  365 + }
  366 + }
  367 +
  368 + .divide_line {
  369 + width: 100%;
  370 + height: 2rpx;
  371 + border: 2rpx solid #F0F0F1;
  372 + }
  373 +
  374 + .bottom {
  375 + height: 144rpx;
  376 + background-color: #fff;
  377 + display: flex;
  378 + flex-direction: row;
  379 +
  380 + .bd1 {
  381 + height: 96rpx;
  382 + border-radius: 8rpx;
  383 + background-color: rgba(0, 0, 0, 0.03);
  384 + margin: auto 30rpx;
  385 + width: 30%;
  386 + display: flex;
  387 + }
  388 +
  389 + .bd2 {
  390 + height: 96rpx;
  391 + border-radius: 8rpx;
  392 + background-color: var(--primary-color);
  393 + margin: auto 30rpx;
  394 + width: 60%;
  395 + display: flex;
  396 + }
  397 +
  398 + .text1 {
  399 + color: rgba(0, 0, 0, 0.45);
  400 + font-size: 34rpx;
  401 + font-family: PingFangSC-Medium;
  402 + line-height: 48rpx;
  403 + margin: auto;
  404 + }
  405 +
  406 + .text2 {
  407 + color: #ffff;
  408 + font-size: 34rpx;
  409 + line-height: 48rpx;
  410 + margin: auto;
  411 + }
  412 + }
  413 +
  414 + .modal {
  415 + width: 88%;
  416 + position: relative;
  417 + display: flex;
  418 + flex-direction: column;
  419 + margin: 200rpx auto;
  420 + padding-bottom: 64rpx;
  421 + border-radius: 12rpx;
  422 + background-color: #fff;
  423 +
  424 + .close {
  425 + width: 48rpx;
  426 + height: 48rpx;
  427 + padding: 12rpx;
  428 + position: fixed;
  429 + right: 40rpx;
  430 + }
  431 +
  432 + .text0 {
  433 + font-size: 34rpx;
  434 + font-family: PingFangSC-Medium, PingFang SC;
  435 + font-weight: 500;
  436 + color: #000000;
  437 + text-align: center;
  438 + }
  439 +
  440 + .text1 {
  441 + font-size: 34rpx;
  442 + font-family: PingFangSC-Regular, PingFang SC;
  443 + font-weight: 400;
  444 + color: rgba(0, 0, 0, 0.45);
  445 + text-align: center;
  446 + }
  447 +
  448 + .text2 {
  449 + font-size: 30rpx;
  450 + font-family: PingFangSC-Regular, PingFang SC;
  451 + font-weight: 400;
  452 + color: rgba(0, 0, 0, 0.5);
  453 + line-height: 48rpx;
  454 + text-align: center;
  455 + }
  456 + }
282 457 </style>
... ...
1 1 <template>
2   - <view class="app">
  2 + <view class="app" :style="vuex_theme">
3 3 <view class="content">
4 4 <view class="title">{{title}}</view>
5 5 <!-- <view class="desc">{{desc}}</view> -->
... ...
1 1 <template>
2   - <view class="edit-account">
  2 + <view class="edit-account" :style="vuex_theme">
3 3 <view class="account_name">
4 4 <view class="img_bg">
5 5 <u-image src="/static/img/my/LOGO@2x.png" width="200rpx" height="96rpx" />
... ... @@ -173,4 +173,4 @@
173 173 }
174 174 }
175 175 }
176   -</style>
  176 +</style>
... ...
1 1 <template>
2   - <view class="edit-mobile">
  2 + <view class="edit-mobile" :style="vuex_theme">
3 3 <view class="form input_warp">
4 4 <u-form labelPosition="left" :model="form" :rules="rules" :errorType="errorType" ref="uForm">
5 5 <u-form-item label="新手机号" labelWidth="150rpx" borderBottom prop="phone">
... ... @@ -27,11 +27,11 @@
27 27 </view>
28 28 </template>
29 29
30   -<script>
31   - import {
32   - getSmsCodeApi,
33   - updateUserInfoApi,
34   - } from '@/config/api.js';
  30 +<script>
  31 + import {
  32 + getSmsCodeApi,
  33 + updateUserInfoApi,
  34 + } from '@/config/api.js';
35 35
36 36 export default {
37 37 data() {
... ... @@ -136,25 +136,25 @@
136 136 }
137 137 },
138 138
139   - submit() {
140   -
141   - this.$refs.uForm.validate().then(res => {
142   - uni.$u.toast('校验通过');
143   -
144   - updateUserInfoApi({
145   - ...this.form,
146   - type: 'phone',
147   - userType: 'teacher'
148   - }).then(async res => {
149   - if (res) {
150   -
151   - this.$u.toast('修改手机号码成功');
152   - await this.$store.dispatch(`user/loginOut`);
153   - }
154   - })
155   -
156   - }).catch(errors => {
157   - console.log(errors)
  139 + submit() {
  140 +
  141 + this.$refs.uForm.validate().then(res => {
  142 + uni.$u.toast('校验通过');
  143 +
  144 + updateUserInfoApi({
  145 + ...this.form,
  146 + type: 'phone',
  147 + userType: 'teacher'
  148 + }).then(async res => {
  149 + if (res) {
  150 +
  151 + this.$u.toast('修改手机号码成功');
  152 + await this.$store.dispatch(`user/loginOut`);
  153 + }
  154 + })
  155 +
  156 + }).catch(errors => {
  157 + console.log(errors)
158 158 })
159 159 }
160 160 }
... ... @@ -177,4 +177,4 @@
177 177 }
178 178 }
179 179 }
180   -</style>
  180 +</style>
... ...
1 1 <template>
2   - <view class="edit-password">
  2 + <view class="edit-password" :style="vuex_theme">
3 3 <view class="form input_warp">
4 4 <u-form labelPosition="left" :model="form" :rules="rules" :errorType="errorType" ref="uForm">
5 5
... ... @@ -47,11 +47,11 @@
47 47 import {
48 48 mapState,
49 49 mapActions
50   - } from 'vuex'
51   -
52   - import {
53   - getSmsCodeApi,
54   - updateUserInfoApi,
  50 + } from 'vuex'
  51 +
  52 + import {
  53 + getSmsCodeApi,
  54 + updateUserInfoApi,
55 55 } from '@/config/api.js';
56 56
57 57 import md5 from '@/common/md5';
... ... @@ -160,36 +160,36 @@
160 160 if (newPwd != secondPwd) {
161 161 this.$u.toast('两次输入密码不一致');
162 162 return;
163   - }
164   -
165   - this.$refs.uForm.validate().then(res => {
166   - uni.$u.toast('校验通过');
167   -
168   - this.showModal = true;
169   - if (this.$refs.uCode.canGetCode) {
170   - // 模拟向后端请求验证码
171   - uni.showLoading({
172   - title: '正在获取验证码'
173   - })
174   -
175   - getSmsCodeApi({
176   - phone: this.phone
177   - }).then(data => {
178   - console.log(data)
179   -
180   - uni.hideLoading();
181   - // 这里此提示会被this.start()方法中的提示覆盖
182   - this.$u.toast('验证码已发送');
183   - // 通知验证码组件内部开始倒计时
184   - this.$refs.uCode.start();
185   -
186   - })
187   - } else {
188   - this.$u.toast('倒计时结束后再发送');
189   - }
190   -
191   - }).catch(errors => {
192   - console.log(errors)
  163 + }
  164 +
  165 + this.$refs.uForm.validate().then(res => {
  166 + uni.$u.toast('校验通过');
  167 +
  168 + this.showModal = true;
  169 + if (this.$refs.uCode.canGetCode) {
  170 + // 模拟向后端请求验证码
  171 + uni.showLoading({
  172 + title: '正在获取验证码'
  173 + })
  174 +
  175 + getSmsCodeApi({
  176 + phone: this.phone
  177 + }).then(data => {
  178 + console.log(data)
  179 +
  180 + uni.hideLoading();
  181 + // 这里此提示会被this.start()方法中的提示覆盖
  182 + this.$u.toast('验证码已发送');
  183 + // 通知验证码组件内部开始倒计时
  184 + this.$refs.uCode.start();
  185 +
  186 + })
  187 + } else {
  188 + this.$u.toast('倒计时结束后再发送');
  189 + }
  190 +
  191 + }).catch(errors => {
  192 + console.log(errors)
193 193 })
194 194 },
195 195
... ... @@ -220,7 +220,7 @@
220 220 type: 'password',
221 221 code: e,
222 222 }).then(async res => {
223   - if (res) {
  223 + if (res) {
224 224 this.$u.toast('修改密码成功');
225 225 await this.$store.dispatch(`user/loginOut`);
226 226 }
... ... @@ -291,4 +291,4 @@
291 291 }
292 292 }
293 293 }
294   -</style>
  294 +</style>
... ...
1 1 <template>
2   - <view class="freezing">
  2 + <view class="freezing" :style="vuex_theme">
3 3 <view class="box">
4 4 <view class="icon">
5 5 <icon type="waiting" size="53"></icon>
... ... @@ -55,12 +55,12 @@
55 55 giveUp() {
56 56 cancelDelAccountApi({
57 57 phone: this.vuex_phone,
58   - }).then(async data => {
  58 + }).then(async data => {
59 59 console.log(data)
60   - uni.showToast({
61   - title: '撤销成功'
62   - });
63   -
  60 + uni.showToast({
  61 + title: '撤销成功'
  62 + });
  63 +
64 64 this.$u.route('/pages/main/my/login/login');
65 65 })
66 66 },
... ... @@ -131,4 +131,4 @@
131 131 }
132 132 }
133 133 }
134   -</style>
  134 +</style>
... ...
... ... @@ -71,8 +71,8 @@ export default {
71 71 onLoad() {
72 72 if (this.vuex_appId == 'wxac18386e35824192') {
73 73 // 新华
74   - this.service = "http://hropublic.oss-cn-beijing.aliyuncs.com/APP/xhsx/1-%20%E6%96%B0%E5%8D%8E%E5%AE%9E%E4%B9%A0%E7%94%A8%E6%88%B7%E6%9C%8D%E5%8A%A1%E5%8D%8F%E8%AE%AE(%E6%B8%85%E6%B4%81%E7%89%88).html"
75   - this.policy = "http://hropublic.oss-cn-beijing.aliyuncs.com/APP/xhsx/1.1-%20%E6%96%B0%E5%8D%8E%E5%AE%9E%E4%B9%A0%E9%9A%90%E7%A7%81%E6%94%BF%E7%AD%96(%E6%B8%85%E6%B4%81%E7%89%88).html"
  74 + this.service = "https://hropublic.oss-cn-beijing.aliyuncs.com/APP/xhsx/1-%20%E6%96%B0%E5%8D%8E%E5%AE%9E%E4%B9%A0%E7%94%A8%E6%88%B7%E6%9C%8D%E5%8A%A1%E5%8D%8F%E8%AE%AE(%E6%B8%85%E6%B4%81%E7%89%88).html"
  75 + this.policy = "https://hropublic.oss-cn-beijing.aliyuncs.com/APP/xhsx/1.1-%20%E6%96%B0%E5%8D%8E%E5%AE%9E%E4%B9%A0%E9%9A%90%E7%A7%81%E6%94%BF%E7%AD%96(%E6%B8%85%E6%B4%81%E7%89%88).html"
76 76 }
77 77 },
78 78
... ... @@ -115,14 +115,14 @@ export default {
115 115 if (this.isDisable) {
116 116 return
117 117 }
118   - // wx.getUserProfile({
119   - // desc: "用于完善会员资料", // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
120   - // success: (res) => {
121   - // console.log("getUserProfile...", res);
122   - // // this.$store.commit('setWenxinUserInfo', res);
123   - // this.$u.vuex("vuex_weixinUserInfo", res.userInfo);
124   - // },
125   - // });
  118 + wx.getUserProfile({
  119 + desc: "用于完善会员资料", // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
  120 + success: (res) => {
  121 + console.log("getUserProfile...", res);
  122 + // this.$store.commit('setWenxinUserInfo', res);
  123 + this.$u.vuex("vuex_weixinUserInfo", res.userInfo);
  124 + },
  125 + });
126 126 },
127 127
128 128 getPhoneNumber(e) {
... ... @@ -130,18 +130,18 @@ export default {
130 130 return
131 131 }
132 132
133   - // wx.login({
134   - // success: (res) => {
135   - // console.log(res);
136   -
137   - // this.$store.dispatch(`user/login`, {
138   - // way: "wechat_code",
139   - // type: "teacher",
140   - // jsCode: res.code,
141   - // code: e.detail.code,
142   - // });
143   - // },
144   - // });
  133 + wx.login({
  134 + success: (res) => {
  135 + console.log(res);
  136 +
  137 + this.$store.dispatch(`user/login`, {
  138 + way: "wechat_code",
  139 + type: "teacher",
  140 + jsCode: res.code,
  141 + code: e.detail.code,
  142 + });
  143 + },
  144 + });
145 145 },
146 146
147 147 handelMobileLogin() {
... ...
1 1 <template>
2   - <view class="account_safe">
  2 + <view class="account_safe" :style="vuex_theme">
3 3
4 4 <view class="avatar">
5 5 <u-image @click="show = true" width="190rpx" height="190rpx" shape="circle"
... ... @@ -21,7 +21,7 @@
21 21 <text slot="value" class="u-slot-value">{{getPhone}}</text>
22 22 </u-cell>
23 23 <u-cell title="工号" arrow-direction="right" :rightIconStyle="{fontSize:'26rpx'}"
24   - :title-style="{color:'#909097', fontSize:'28rpx'}">
  24 + :title-style="{color:'#909097', fontSize:'28rpx'}">
25 25 <text slot="value" class="u-slot-value">{{jobNumber}}</text>
26 26 </u-cell>
27 27 <u-cell title="院系专业" arrow-direction="right" :rightIconStyle="{fontSize:'26rpx'}"
... ... @@ -93,11 +93,11 @@
93 93 }),
94 94 },
95 95
96   - methods: {
97   -
98   - ...mapActions('user', {
99   - getUserInfo: 'getUserInfo',
100   - }),
  96 + methods: {
  97 +
  98 + ...mapActions('user', {
  99 + getUserInfo: 'getUserInfo',
  100 + }),
101 101
102 102 chooseImg(item) {
103 103 var _this = this
... ... @@ -129,27 +129,27 @@
129 129
130 130 uploadImages() { //上传图片
131 131 var _this = this
132   - console.log('begin', this.picList)
133   -
134   - let formdata = {}
135   - if (this.ossInit.uploadType == 'minio') {
136   - formdata = {
137   - 'bucket': _this.ossInit.bucket,
138   - 'dir': _this.ossInit.dir,
139   - 'fileName': `${_this.ossInit.dir}${new Date().getTime()}/` + '${filename}',
140   - 'accessId': _this.ossInit.accessId,
141   - 'policy': _this.ossInit.policy
142   - }
143   - }else {
144   - formdata = {
145   - 'key': `${_this.ossInit.dir}${new Date().getTime()}/` + '${filename}',
146   - // 'key': `${_this.ossInit.dir}${new Date().getTime()}`,
147   - 'action': `${_this.ossInit.host}`,
148   - 'OSSAccessKeyId': _this.ossInit.accessId,
149   - 'policy': _this.ossInit.policy,
150   - 'signature': _this.ossInit.signature,
151   - 'callback': _this.ossInit.callback,
152   - }
  132 + console.log('begin', this.picList)
  133 +
  134 + let formdata = {}
  135 + if (this.ossInit.uploadType == 'minio') {
  136 + formdata = {
  137 + 'bucket': _this.ossInit.bucket,
  138 + 'dir': _this.ossInit.dir,
  139 + 'fileName': `${_this.ossInit.dir}${new Date().getTime()}/` + '${filename}',
  140 + 'accessId': _this.ossInit.accessId,
  141 + 'policy': _this.ossInit.policy
  142 + }
  143 + }else {
  144 + formdata = {
  145 + 'key': `${_this.ossInit.dir}${new Date().getTime()}/` + '${filename}',
  146 + // 'key': `${_this.ossInit.dir}${new Date().getTime()}`,
  147 + 'action': `${_this.ossInit.host}`,
  148 + 'OSSAccessKeyId': _this.ossInit.accessId,
  149 + 'policy': _this.ossInit.policy,
  150 + 'signature': _this.ossInit.signature,
  151 + 'callback': _this.ossInit.callback,
  152 + }
153 153 }
154 154 for (var i = 0; i < this.picList.length; i++) {
155 155 uni.uploadFile({
... ... @@ -175,11 +175,11 @@
175 175 },
176 176 fail: (error) => {
177 177 console.log("-error-", error)
178   - },
179   -
180   - complete: (res) => {
181   - this.show = false;
182   - }
  178 + },
  179 +
  180 + complete: (res) => {
  181 + this.show = false;
  182 + }
183 183
184 184 });
185 185 }
... ... @@ -238,4 +238,4 @@
238 238 }
239 239 }
240 240 }
241   -</style>
  241 +</style>
... ...
1 1 <template>
2   - <view class="account_safe">
  2 + <view class="account_safe" :style="vuex_theme">
3 3 <view class="cell top">
4 4 <u-cell-group>
5 5 <u-cell title="用户政策" :isLink="true" :url="service" arrow-direction="right"
... ... @@ -27,14 +27,23 @@
27 27 export default {
28 28 data() {
29 29 return {
30   - service: "https://hropublic.oss-cn-beijing.aliyuncs.com/agreement/%E6%A0%A1%E8%81%8C%E9%80%9A%E6%9C%8D%E5%8A%A1%E5%8D%8F%E8%AE%AE.html",
  30 + service: "https://hropublic.oss-cn-beijing.aliyuncs.com/agreement/%E6%A0%A1%E8%81%8C%E9%80%9A%E6%9C%8D%E5%8A%A1%E5%8D%8F%E8%AE%AE.html",
31 31 policy: "https://hropublic.oss-cn-beijing.aliyuncs.com/agreement/%E6%A0%A1%E8%81%8C%E9%80%9A%E9%9A%90%E7%A7%81%E5%8D%8F%E8%AE%AE.html",
32 32 }
33   - },
34   -
35   - onLoad() {
36   - this.service = `/pages/common/webview/webview?navtitle=服务协议&url=${this.service}`
37   - this.policy = `/pages/common/webview/webview?navtitle=隐私政策&url=${this.policy}`
  33 + },
  34 +
  35 + onLoad() {
  36 + if (this.vuex_appId == 'wxac18386e35824192') {
  37 + // 新华
  38 + const service = "http://hropublic.oss-cn-beijing.aliyuncs.com/APP/xhsx/1-%20%E6%96%B0%E5%8D%8E%E5%AE%9E%E4%B9%A0%E7%94%A8%E6%88%B7%E6%9C%8D%E5%8A%A1%E5%8D%8F%E8%AE%AE(%E6%B8%85%E6%B4%81%E7%89%88).html"
  39 + const policy = "http://hropublic.oss-cn-beijing.aliyuncs.com/APP/xhsx/1.1-%20%E6%96%B0%E5%8D%8E%E5%AE%9E%E4%B9%A0%E9%9A%90%E7%A7%81%E6%94%BF%E7%AD%96(%E6%B8%85%E6%B4%81%E7%89%88).html"
  40 +
  41 + this.service = `/pages/common/webview/webview?navtitle=服务协议&url=${service}`
  42 + this.policy = `/pages/common/webview/webview?navtitle=隐私政策&url=${policy}`
  43 + } else {
  44 + this.service = `/pages/common/webview/webview?navtitle=服务协议&url=${this.service}`
  45 + this.policy = `/pages/common/webview/webview?navtitle=隐私政策&url=${this.policy}`
  46 + }
38 47 },
39 48
40 49 computed: {
... ... @@ -97,4 +106,4 @@
97 106 }
98 107 }
99 108 }
100   -</style>
  109 +</style>
... ...
1 1 <template>
2   - <view class="remove_account">
  2 + <view class="remove_account" :style="vuex_theme">
3 3 <view class="title">注销账户</view>
4 4 <view class="sub_title" style="margin-top: 20rpx;">账号主体:{{getPhone}}</view>
5 5 <view class="content">
6 6 <text class="text">
7   - 如您注销优学乐业服务,则当前服务在APP
  7 + 如您注销{{nameText}}服务,则当前服务在APP
8 8 小程序、等留存的信息均将被清空且无法被
9 9 找回。具体包括一下信息:
10 10
11   - · 优学乐业学生注册账号及状态信息
  11 + · {{nameText}}学生注册账号及状态信息
12 12
13   - · 优学乐业保存的学生个人信息
  13 + · {{nameText}}保存的学生个人信息
14 14
15   - · 优学乐业保存的学生学籍信息
  15 + · {{nameText}}保存的学生学籍信息
16 16
17 17 · 学生所有实习及相关活动记录
18 18
... ... @@ -41,10 +41,14 @@
41 41 export default {
42 42 data() {
43 43 return {
44   -
  44 + nameText: ''
45 45 }
46 46 },
47 47
  48 + onLoad() {
  49 + this.nameText = this.vuex_appId == 'wxac18386e35824192' ? '新华实习' : '优学乐业'
  50 + },
  51 +
48 52 computed: {
49 53 ...mapState({
50 54 getPhone(state) {
... ... @@ -100,24 +104,24 @@
100 104 }
101 105 }
102 106
103   - .footer {
104   - width: 100%;
105   - height: 96rpx;
106   - padding: 28rpx 30rpx;
107   - background: #FFFFFF;
108   - position: fixed;
109   - bottom: 0;
110   - left: 0;
111   - z-index: 99;
112   - border-top: 2rpx solid #E2E2E8;
113   -
114   - view {
115   - display: inline-block;
116   - }
117   -
118   - .left_btn {
119   - width: 690rpx;
120   - margin: 0 30rpx 0 0;
121   - }
  107 + .footer {
  108 + width: 100%;
  109 + height: 96rpx;
  110 + padding: 28rpx 30rpx;
  111 + background: #FFFFFF;
  112 + position: fixed;
  113 + bottom: 0;
  114 + left: 0;
  115 + z-index: 99;
  116 + border-top: 2rpx solid #E2E2E8;
  117 +
  118 + view {
  119 + display: inline-block;
  120 + }
  121 +
  122 + .left_btn {
  123 + width: 690rpx;
  124 + margin: 0 30rpx 0 0;
  125 + }
122 126 }
123   -</style>
  127 +</style>
... ...
1 1 <template>
2   - <view class="app">
  2 + <view class="app" :style="vuex_theme">
3 3 <view class="content">
4 4 <view class="title">{{title}}</view>
5 5 <!-- <view class="desc">{{desc}}</view> -->
... ...
1 1 <template>
2   - <view class="edit-account">
  2 + <view class="edit-account" :style="vuex_theme">
3 3 <view class="account_name">
4 4 <view class="img_bg">
5 5 <u-image :src="vuex_baseImgUrl && `${vuex_baseImgUrl}logo.png`" width="200rpx" height="110rpx" />
... ...
1 1 <template>
2   - <view class="written-off">
  2 + <view class="written-off" :style="vuex_theme">
3 3 <view class="box">
4 4 <view class="icon">
5 5 <icon type="warn" size="53"></icon>
... ... @@ -8,12 +8,12 @@
8 8 <view class="title">已注销</view>
9 9 <view class="describe">您的账号已注销,请更换账号登录</view>
10 10 </view>
11   - </view>
12   -
13   - <view class="footer">
14   - <view class="left_btn">
15   - <c-button type="confirm" shape="circle" @click="popPhoneNumber" text="联系客服"></c-button>
16   - </view>
  11 + </view>
  12 +
  13 + <view class="footer">
  14 + <view class="left_btn">
  15 + <c-button type="confirm" shape="circle" @click="popPhoneNumber" text="联系客服"></c-button>
  16 + </view>
17 17 </view>
18 18 </view>
19 19 </template>
... ... @@ -26,10 +26,10 @@
26 26 }
27 27 },
28 28 methods: {
29   - popPhoneNumber(){
30   - uni.makePhoneCall({
31   - phoneNumber:"150-7142-1900"
32   - })
  29 + popPhoneNumber(){
  30 + uni.makePhoneCall({
  31 + phoneNumber:"150-7142-1900"
  32 + })
33 33 },
34 34 }
35 35 }
... ... @@ -38,7 +38,7 @@
38 38 <style lang="scss" scoped>
39 39 .written-off {
40 40 width: 100%;
41   - height: 100%;
  41 + height: 100%;
42 42 position: relative;
43 43
44 44 .box {
... ... @@ -53,7 +53,7 @@
53 53 .title {
54 54 font-size: 34rpx;
55 55 color: #000000;
56   - line-height: 48rpx;
  56 + line-height: 48rpx;
57 57 margin: 44rpx 0 32rpx 0;
58 58 }
59 59
... ... @@ -65,25 +65,25 @@
65 65 }
66 66 }
67 67
68   - .footer {
69   - width: 100%;
70   - height: 96rpx;
71   - padding: 28rpx 30rpx;
72   - background: #FFFFFF;
73   - position: fixed;
74   - bottom: 0;
75   - left: 0;
76   - z-index: 99;
77   - border-top: 2rpx solid #E2E2E8;
78   -
79   - view {
80   - display: inline-block;
81   - }
82   -
83   - .left_btn {
84   - width: 690rpx;
85   - margin: 0 30rpx 0 0;
86   - }
  68 + .footer {
  69 + width: 100%;
  70 + height: 96rpx;
  71 + padding: 28rpx 30rpx;
  72 + background: #FFFFFF;
  73 + position: fixed;
  74 + bottom: 0;
  75 + left: 0;
  76 + z-index: 99;
  77 + border-top: 2rpx solid #E2E2E8;
  78 +
  79 + view {
  80 + display: inline-block;
  81 + }
  82 +
  83 + .left_btn {
  84 + width: 690rpx;
  85 + margin: 0 30rpx 0 0;
  86 + }
87 87 }
88 88 }
89   -</style>
  89 +</style>
... ...
... ... @@ -5,9 +5,9 @@ import home from './modules/home'
5 5 Vue.use(Vuex)
6 6
7 7 let lifeData = {};
8   -// let appId = 'wx6cd2152282abd34c';
  8 +let appId = 'wx6cd2152282abd34c';
9 9 // 新华网
10   -let appId = 'wxac18386e35824192';
  10 +// let appId = 'wxac18386e35824192';
11 11
12 12
13 13 try {
... ...
注册登录 后发表评论