// pages/createSub/createSub.js
|
const app = getApp();
|
const $v = app.globalData.createInfo;
|
Page({
|
|
/**
|
* 页面的初始数据
|
*/
|
data: {
|
question: {},
|
confirm: true,
|
value1: '',
|
answer: [],
|
id: '',
|
disabled: false
|
},
|
// 去单选页面
|
toRadio(e) {
|
var types = e.currentTarget.dataset.type;
|
wx.navigateTo({
|
url: '/pages/radio/radio?type=' + types,
|
})
|
},
|
//去编辑页面
|
edit(e) {
|
var index = e.currentTarget.dataset.index;
|
wx.navigateTo({
|
url: '/pages/radio/radio?index=' + index,
|
})
|
},
|
// 提交信息
|
submit() {
|
console.log(this.data.question)
|
var list = this.data.question.psqList.map(({
|
questionId,
|
questionItemId,
|
objectId,
|
questionnaireId
|
}) => ({
|
questionId,
|
questionItemId,
|
objectId,
|
questionnaireId
|
}))
|
console.log(list)
|
|
var that = this;
|
wx.request({
|
url: app.globalData.url + '/api/question/submitResult',
|
data: list,
|
method: 'POST',
|
header: {
|
"Content-Type": "application/json"
|
},
|
success: function(res) {
|
if (res.data.code == 0) {
|
wx.showToast({
|
title: '提交成功!',
|
icon: 'success',
|
duration: 2000
|
})
|
setTimeout(function() {
|
wx.reLaunch({
|
url: '../index/index',
|
})
|
}, 2000)
|
} else {
|
wx.showModal({
|
title: '提示',
|
content: "提交失败!"
|
})
|
}
|
}
|
})
|
// if ($v.psqList.length == 0) {
|
// wx.showToast({
|
// title: '你还没有创建题目',
|
// icon: "none",
|
// duration: 800
|
// });
|
// return;
|
// }
|
// wx.showToast({
|
// title: '提交成功!',
|
// icon: 'success',
|
// duration: 2000
|
// }, wx.reLaunch({
|
// url: '../yshjqyfw/yshjqyfw',
|
// }))
|
|
},
|
// 发布信息
|
publish() {
|
app.res({
|
url: "psq/save",
|
method: "POST",
|
data: $v,
|
callback: res => {
|
$v.paper = {};
|
$v.psqList = [];
|
wx.showModal({
|
title: '提示',
|
content: '发布成功,跳转新建问卷',
|
showCancel: false,
|
success: res => {
|
if (res.confirm) {
|
wx.switchTab({
|
url: '/pages/creat/creat',
|
success: function(e) {
|
var page = getCurrentPages().pop();
|
if (page == undefined || page == null) return;
|
page.onLoad();
|
}
|
})
|
}
|
}
|
})
|
}
|
})
|
},
|
returnEdit() {
|
this.setData({
|
confirm: true
|
})
|
},
|
/**
|
* 生命周期函数--监听页面加载
|
*/
|
onLoad: function(options) {
|
var _m = "question";
|
var id = options.id
|
console.log(options)
|
var that = this;
|
wx.request({
|
url: app.globalData.url + '/api/question/find/' + id,
|
data: {
|
userId: wx.getStorageSync("user").id
|
},
|
success: function(res) {
|
console.log(res)
|
if (res.data.code == 0) {
|
console.log(res)
|
that.setData({
|
id: res.data.data.id,
|
[_m]: {
|
"paper": {
|
"title": res.data.data.title,
|
"des": res.data.data.content || ''
|
},
|
"psqList": res.data.data.questionDtos
|
}
|
|
});
|
} else if (res.data.code == 3) {
|
that.setData({
|
id: res.data.data.id,
|
[_m]: {
|
"paper": {
|
"title": res.data.data.title,
|
"des": res.data.data.content || ''
|
},
|
"psqList": res.data.data.questionDtos
|
},
|
disabled: true
|
|
});
|
} else {
|
wx.showModal({
|
title: '提示',
|
content: "请求失败!"
|
})
|
}
|
}
|
})
|
|
},
|
|
onChange1(e) {
|
var index = e.currentTarget.dataset['index'];
|
var userinfo = wx.getStorageSync("user");
|
var questionId = e.currentTarget.dataset['questionId'];
|
const {
|
value
|
} = e.detail;
|
|
console.log('checkbox', e, '索引', index);
|
console.log('value', value);
|
console.log('questionId', questionId);
|
console.log('this.data.question', this.data.question);
|
const data = this.data.question.psqList[index].value || [];
|
console.log(data)
|
this.data.question.psqList[index].value = value
|
this.data.question.psqList[index].questionItemId = this.data.question.psqList[index].optionsId[this.data.question.psqList[index].options.indexOf(value)]
|
this.data.question.psqList[index].objectId = userinfo.id
|
this.data.question.psqList[index].questionnaireId = this.data.id
|
|
console.log('this.data.question', this.data.question)
|
this.setData({
|
question: this.data.question
|
})
|
},
|
|
onChange: function(e) {
|
var index = e.currentTarget.dataset['index'];
|
var userinfo = wx.getStorageSync("user");
|
var questionId = e.currentTarget.dataset['questionId'];
|
const {
|
value
|
} = e.detail;
|
console.log('checkbox', e, '索引', index);
|
const data = this.data.question.psqList[index].value || [];
|
const idx = data.indexOf(value)
|
const current = idx === -1 ? [...data, value] : data.filter((n) => n !== value)
|
console.log('current', current);
|
this.data.question.psqList[index].value = current
|
this.data.question.psqList[index].questionItemId = this.data.question.psqList[index].optionsId[this.data.question.psqList[index].options.indexOf(value)]
|
this.data.question.psqList[index].objectId = userinfo.id
|
this.data.question.psqList[index].questionnaireId = this.data.id
|
this.setData({
|
question: this.data.question
|
})
|
|
}
|
|
})
|