// pages/createSub/createSub.js const app = getApp(); const $v = app.globalData.createInfo; Page({ /** * 页面的初始数据 */ data: { question: {}, confirm: true, value1: '', answer: [], id: '' }, // 去单选页面 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, 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 // "psqList": [{ // "isMust": 1, // "type": 1, // "question": "111", // "answerslist": [{ // "answer": "11" // }, { // "answer": "111" // }, { // "answer": "11" // }, { // "answer": "111" // }], // 'value': [] // }, { // "isMust": 1, // "type": 1, // "question": "11111", // "answerslist": [{ // "answer": "111" // }, { // "answer": "111" // }], // value: [] // }, { // "isMust": 1, // "type": 0, // "question": "11111" // }, { // "isMust": 0, // "type": 1, // "question": "wqwqw", // "answerslist": [{ // "answer": "qw" // }, { // "answer": "wqw" // }, { // "answer": "wqw" // }] // }] } }); } 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 }) } })