提交 b86b4acf 编写于 作者: chengxiang.li's avatar chengxiang.li

新增获取activityId接口逻辑

上级 f6ba965b
...@@ -183,7 +183,7 @@ ...@@ -183,7 +183,7 @@
<!-- <img class="back-image" src="../assets/img/stage-two/win-award-bg.png" alt=""> --> <!-- <img class="back-image" src="../assets/img/stage-two/win-award-bg.png" alt=""> -->
<!-- <img class="back-image" src="../assets/img/stage-two/award-cup-bg.png" alt=""> --> <!-- <img class="back-image" src="../assets/img/stage-two/award-cup-bg.png" alt=""> -->
<p class="title">打卡成功</p> <p class="title">打卡成功</p>
<p class="message">已获得: {{vm.clockAward.mark}}勤奋分, {{vm.clockAward.bean}}云鹊豆</p> <p class="message">已获得: {{clockAward.mark}}勤奋分, {{clockAward.bean}}云鹊豆</p>
<div @click="hideClockModal" class="bottom-btn">我知道了</div> <div @click="hideClockModal" class="bottom-btn">我知道了</div>
<div class="close-btn"></div> <div class="close-btn"></div>
</div> </div>
...@@ -205,7 +205,7 @@ ...@@ -205,7 +205,7 @@
</template> </template>
<script> <script>
import { getUserScoreInfo, getInviteList, getClockStatus, goToUpdateClock } from '@/service/activityMainpage'; import { getActivityId, getUserScoreInfo, getInviteList, getClockStatus, goToUpdateClock, getTimsActivityInfo } from '@/service/activityMainpage';
import { checkHospitalStatus } from '@/service'; import { checkHospitalStatus } from '@/service';
import h5header from '@/components/h5header'; import h5header from '@/components/h5header';
import { getShareUrl } from '@/utils/index'; import { getShareUrl } from '@/utils/index';
...@@ -218,6 +218,9 @@ ...@@ -218,6 +218,9 @@
export default { export default {
data () { data () {
return { return {
activityId: 2, // 上线前等产品通知修改默认值
serverTime: '', serverTime: '',
isLogin: false, // 是否 已登录 isLogin: false, // 是否 已登录
isJoin: false, // 是否 已加入机构 默认为false isJoin: false, // 是否 已加入机构 默认为false
...@@ -277,6 +280,8 @@ ...@@ -277,6 +280,8 @@
clockAward: { // 打卡的奖励 默认都是5 clockAward: { // 打卡的奖励 默认都是5
mark: 5, mark: 5,
bean: 5, bean: 5,
activityId: '',
id: '',
}, },
isWeb: false, isWeb: false,
shareObj: {} shareObj: {}
...@@ -322,7 +327,21 @@ ...@@ -322,7 +327,21 @@
vm = this; vm = this;
// 取服务器时间,切换不同时间段的显示 // 取服务器时间,切换不同时间段的显示
vm.getServerTime(); vm.getServerTime();
// 经与后端产品确认,默认没传id的话,就取接口;默认有的话就不取接口
if( !vm.activityId ){
getActivityId().then(res => {
alert('guhui 获取id')
alert(JSON.stringify(res))
if(res && res.code == '000000' ){
let data = res.data ;
for(let i in data){
if(data[i] == 'ID'){
vm.activityId = i;
}
}
}
})
}
}, },
mounted() { mounted() {
vm.getUserActivityInfo(); vm.getUserActivityInfo();
...@@ -334,7 +353,7 @@ ...@@ -334,7 +353,7 @@
} }
vm.isWeb = vm.$rocNative.isWeb; vm.isWeb = vm.$rocNative.isWeb;
vm.getTasks(); // 放到登录后或其他************************ vm.getTasks();
vm.$rocNative.appInit(); vm.$rocNative.appInit();
vm.getUserInfo(); // 判断是否登录 vm.getUserInfo(); // 判断是否登录
...@@ -346,6 +365,15 @@ ...@@ -346,6 +365,15 @@
} }
} }
}, },
watch: {
clockAward(val){
alert('watch clockAward')
alert(val)
if(val.activityId && val.id && vm.isJoin){
vm.getTaskStatus(vm.clockAward);
}
}
},
methods: { methods: {
// 获取服务器时间 // 获取服务器时间
getServerTime() { getServerTime() {
...@@ -436,7 +464,7 @@ ...@@ -436,7 +464,7 @@
if (status && status == 1) { // 机构状态正常 if (status && status == 1) { // 机构状态正常
vm.isJoin = true; vm.isJoin = true;
vm.joinStatus = 1; vm.joinStatus = 1;
vm.getTaskStatus(vm.clockAward); // *******************************************
vm.handleGetInviteList(); //登录且已加入机构才获取医生邀请了的列表 vm.handleGetInviteList(); //登录且已加入机构才获取医生邀请了的列表
}else if (status && status == 15) { // 15创建机构审核中 }else if (status && status == 15) { // 15创建机构审核中
vm.isJoin = false; vm.isJoin = false;
...@@ -642,7 +670,7 @@ ...@@ -642,7 +670,7 @@
// return 'dddddd' // return 'dddddd'
}, },
// 去打卡 按钮 // 去完成任务 按钮
goToFinish(item) { goToFinish(item) {
let cb = () => { let cb = () => {
vm.goToFinishCB(item); vm.goToFinishCB(item);
...@@ -676,9 +704,13 @@ ...@@ -676,9 +704,13 @@
} }
}) })
} }
}else{ // 非打卡,直接走积木tims跳转逻辑
// vm.jumpPage(item.)
} }
}, },
// 每个任务的跳转点击 // 每个任务的跳转点击
handleTaskClick() { handleTaskClick() {
let cb = this.goToTask; let cb = this.goToTask;
...@@ -690,164 +722,10 @@ ...@@ -690,164 +722,10 @@
// 获取每日任务 及 邀请医生好友学课程里的 邀请1位医生的勤奋分及云鹊豆个数 // 获取每日任务 及 邀请医生好友学课程里的 邀请1位医生的勤奋分及云鹊豆个数
getTasks() { getTasks() {
// debugger; // debugger;
let res = { getTimsActivityInfo(vm.activityId).then(res => {
"data": { alert('^^^^^获取任务信息…………………………')
"loginStatus": 2, alert(JSON.stringify(res))
"taskRuleData": [ if(res && res.code == '000000'){
{
"id": 14,
"activityId": 2,
"resourceType": 7, // 业务类型 1.课程 2.考试 3.调查问卷 4.患者招募 5.宣教漫画 6.打卡 7.邀请
"resourceId": "1",
"resourceChildId": null,
"defaultBackgroundImage": "https://test1-file.yunqueyi.com/image/png/common/2019112809513020.png",
"finishBackgroundImage": null,
"taskFrequency": 1,
"finishFrequency": 1,
"cumulativeFrequency": null,
"ruleName": "邀请好友测试",
"beginTime": "2019-11-26 00:00:00",
"endTime": "2019-11-27 23:59:59",
"linkId": 1703,
"rewardJsonInfo": [{rewardType:3,rewardQuantity:"100"},{rewardType:1,rewardQuantity:"200"}],
"pushType": 1,
"pushLinkUrl": "",
"hideEndFlag": 2,
"seqNo": 1,
"deleteFlag": 1,
"createdId": 161,
"createdTime": "2019-11-28 09:51:58",
"modifiedId": 161,
"modifiedTime": "2019-11-29 15:30:54",
"beginTimeStr": null,
"endTimeStr": null,
"nowCumulativeFrequency": 0,
"isFinish": 0,
"doctorFinishFrequency": null,
"timeStatus": 1 // 项目时间状态 1.进行中 2.结束 3.未开始
},
{
"id": 15,
"activityId": 2,
"resourceType": 6, // 业务类型 1.课程 2.考试 3.调查问卷 4.患者招募 5.宣教漫画 6.打卡 7.邀请
"resourceId": "2",
"resourceChildId": null,
"defaultBackgroundImage": "https://test1-file.yunqueyi.com/image/png/common/2019112809513020.png",
"finishBackgroundImage": null,
"taskFrequency": 1,
"finishFrequency": 1,
"cumulativeFrequency": null,
"ruleName": "每日打卡test",
"beginTime": "2019-11-26 00:00:00",
"endTime": "2019-11-27 23:59:59",
"linkId": 1703,
"rewardJsonInfo": [{rewardType:3,rewardQuantity: 111},{rewardType:1,rewardQuantity:0}],
"pushType": 1,
"pushLinkUrl": "",
"hideEndFlag": 2,
"seqNo": 2,
"deleteFlag": 1,
"createdId": 161,
"createdTime": "2019-11-28 09:51:58",
"modifiedId": 161,
"modifiedTime": "2019-11-29 15:30:54",
"beginTimeStr": null,
"endTimeStr": null,
"nowCumulativeFrequency": 0,
"isFinish": 0,
"doctorFinishFrequency": null,
"timeStatus": 1
},
{
"id": 15,
"activityId": 2,
"resourceType": 1, // 业务类型 1.课程 2.考试 3.调查问卷 4.患者招募 5.宣教漫画 6.打卡 7.邀请
"resourceId": "2",
"resourceChildId": null,
"defaultBackgroundImage": "https://test1-file.yunqueyi.com/image/png/common/2019112809513020.png",
"finishBackgroundImage": null,
"taskFrequency": 1,
"finishFrequency": 1,
"cumulativeFrequency": null,
"ruleName": "高血压课程",
"beginTime": "2019-11-26 00:00:00",
"endTime": "2019-11-27 23:59:59",
"linkId": 1703,
"rewardJsonInfo": [{rewardType:3,rewardQuantity: 222},{rewardType:1,rewardQuantity:0}],
"pushType": 1,
"pushLinkUrl": "",
"hideEndFlag": 2,
"seqNo": 2,
"deleteFlag": 1,
"createdId": 161,
"createdTime": "2019-11-28 09:51:58",
"modifiedId": 161,
"modifiedTime": "2019-11-29 15:30:54",
"beginTimeStr": null,
"endTimeStr": null,
"nowCumulativeFrequency": 0,
"isFinish": 1,
"doctorFinishFrequency": null,
"timeStatus": 1
},
{
"id": 15,
"activityId": 2,
"resourceType": 4, // 业务类型 1.课程 2.考试 3.调查问卷 4.患者招募 5.宣教漫画 6.打卡 7.邀请
"resourceId": "2",
"resourceChildId": null,
"defaultBackgroundImage": "https://test1-file.yunqueyi.com/image/png/common/2019112809513020.png",
"finishBackgroundImage": null,
"taskFrequency": 1,
"finishFrequency": 1,
"cumulativeFrequency": null,
"ruleName": "SMO患者招募",
"beginTime": "2019-11-26 00:00:00",
"endTime": "2019-11-27 23:59:59",
"linkId": 1703,
"rewardJsonInfo": [{rewardType:3,rewardQuantity: 0},{rewardType:1,rewardQuantity:99}],
"pushType": 1,
"pushLinkUrl": "",
"hideEndFlag": 2,
"seqNo": 2,
"deleteFlag": 1,
"createdId": 161,
"createdTime": "2019-11-28 09:51:58",
"modifiedId": 161,
"modifiedTime": "2019-11-29 15:30:54",
"beginTimeStr": null,
"endTimeStr": null,
"nowCumulativeFrequency": 0,
"isFinish": 0,
"doctorFinishFrequency": null,
"timeStatus": 1
}
],
"activityData": {
"id": 2,
"activityName": "hws-test",
"isDisabled": 1,
"unloginBackgroundImage": "https://test1-file.yunqueyi.com/image/png/common/20191129095943428.png",
"loginBackgroundImage": "https://test1-file.yunqueyi.com/image/png/common/20191129095948283.png",
"rewardType": "5",
"beginTime": "2019-11-25 00:00:00",
"endTime": "2019-11-30 23:59:59",
"beginTimeStr": null,
"endTimeStr": null,
"deleteFlag": 1,
"createdId": 161,
"createdTime": "2019-11-26 10:43:40",
"modifiedId": 161,
"modifiedTime": "2019-11-29 15:30:54",
"status": null
}
},
"code": "000000",
"message": "成功"
};
let data = res.data; let data = res.data;
let taskRuleData = data.taskRuleData || []; let taskRuleData = data.taskRuleData || [];
...@@ -899,6 +777,12 @@ ...@@ -899,6 +777,12 @@
if( vm.taskObj.smo ){ if( vm.taskObj.smo ){
vm.taskList.push( vm.taskObj.smo ); vm.taskList.push( vm.taskObj.smo );
} }
}else{
vm.$toast(res.message);
}
})
}, },
...@@ -968,6 +852,80 @@ ...@@ -968,6 +852,80 @@
return text; return text;
}, },
async jumpPage(url, id) {
const _this = this;
if (!!url) {
// 判断是否有跳转
const { token, isWeb } = _this;
_this.videoWatchTime = 0;
_this.widgetId = id;
const { data } = await selectAppModuleParam({
id: url,
token
});
const itemData = data.model;
this.$sendBuriedData({ // 积木组件点击埋点
url: this.baseUrl + "/file/log/trace1",
action: 'ACTION_CLICK',
component_tag: `200#${_this.tempId}#0#${_this.widgetId}`
});
if (isWeb) {
// TODO: //如果在 web 中在这里写
if (itemData.code == 'M300') {
let paramList = setEventByModuleCode(itemData);
if (
paramList[0].value.search('crrspt.') != -1
) {
// 患者招募
paramList[0].value =
paramList[0].value + '?' + this.paramString;
}
if (paramList[0].value.search('/wjdc/') != -1) {
// 问卷调查
//console.log(paramList[0].value + '&pageUrl=' + window.location.href)
location.href =
paramList[0].value +
'&pageUrl=' +
window.location.href;
return;
}
location.href = paramList[0].value;
} else {
this.$dialog
.confirm({
message: '请下载最新app',
confirmButtonText: '去下载',
className: 'go-down-msg-box'
})
.then(() => {
location.href =
'https://www.yunqueyi.com/mobile/share_pica.html?hideQrcode=true';
})
.catch(() => {});
}
} else {
// 增加点击图片时候,是否有loginFlag参数,有,则校验并登录。如未登录去登录,已登录,老逻辑。
const loginFlag = this.checkLoginFlag(itemData.paramList);
if(loginFlag){
_this.refreshFlag = true;
_this.$rocNative.getToken().then(res => {
const { userToken } = res;
// alert('APP拿到的token=:'+userToken)
checkToken({ token: userToken }).then(res=>{
if(res.code == '200000' || res.code == '200006') {
_this.$rocNative.gotoLogin();
}else{
_this.oldJumpHandle(itemData, userToken);
}
})
});
}else{
_this.oldJumpHandle(itemData, _this.token);
}
}
}
},
}, },
} }
</script>> </script>>
......
...@@ -47,5 +47,20 @@ export const goToUpdateClock = (params) => { ...@@ -47,5 +47,20 @@ export const goToUpdateClock = (params) => {
}) })
} }
// 获取activityId
export const getActivityId = () => {
return request({
url: `contents/commonComstant/selectByTypeCode?code=C015`,
method: 'get',
withCredentials: true,
})
}
// 获取任务列表
export const getTimsActivityInfo = (id) => {
return request({
url: `campaign/tims/timsActivityInfo?activityId=${id}`,
method: 'get',
withCredentials: true,
})
}
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册