let sat_courseware_testid = null; const _Http = getApp().globalData.http; Page({ data: { loading: false }, onLoad(options) { sat_courseware_testid = options.id; this.getDetail(); }, getDetail() { _Http.basic({ "classname": "saletool.courseware.coursewaretest", "method": "queryTestMain", "content": { sat_courseware_testid } }).then(res => { console.log("试卷详情", res) if (res.msg != '成功') return wx.showToast({ title: res.msg, icon: "none" }); let count = []; res.data.testitems = res.data.testitems.map(v => { v.answer = JSON.parse(v.answer); if (v.answer.length) count.push(v.sat_courseware_testitemsid); return v }) this.setData({ detail: res.data, count }) }) }, groupOnChange(e) { const { index, item } = e.currentTarget.dataset; let count = this.data.count; item.answer = e.detail; this.setData({ [`detail.testitems[${index}]`]: item }) if (item.answer.length) { count.some(v => v == item.sat_courseware_testitemsid) ? '' : count.push(item.sat_courseware_testitemsid); } else { count = count.filter(v => v != item.sat_courseware_testitemsid); }; this.setData({ count }) _Http.basic({ "classname": "saletool.courseware.coursewaretest", "method": "testAnswer", "content": { "sat_courseware_testid": item.sat_courseware_testid, "sat_courseware_testitemsid": item.sat_courseware_testitemsid, "answer": e.detail } }, false); }, submit() { if (this.data.loading) return; let that = this; wx.showModal({ title: '提示', content: '一旦提交则无法修改,是否确认提交试卷', complete: ({ confirm }) => { if (confirm) { that.setData({ loading: true }) _Http.basic({ "accesstoken": "305def8607e623c06f118e94adcebaf1", "classname": "saletool.courseware.coursewaretest", "method": "testSubmit", "content": { sat_courseware_testid: that.data.detail.sat_courseware_testid, sat_coursewareid: that.data.detail.sat_coursewareid } }).then(res => { console.log("交卷", res) that.setData({ loading: false }); wx.showToast({ title: res.msg != '成功' ? res.msg : "提交成功", icon: "none" }); res.data.testitems = res.data.testitems.map(v => { v.answer = JSON.parse(v.answer); return v }) if (res.msg == '成功') that.setData({ detail: res.data, dataShow: true }) }) } } }) }, closeShowData() { this.setData({ dataShow: false }) }, onUnload() { const page = getCurrentPages().find(v => v.__route__ == 'pages/exam/index'); if (!page) return; let content = JSON.parse(JSON.stringify(page.data.content)); content.pageSize = (content.pageNumber - 1) * content.pageSize; content.pageNumber = 1; _Http.basic({ "classname": "saletool.courseware.coursewaretest", "method": "queryTestList", content }).then(res => { console.log("更新市场活动列表", res); if (res.msg == '成功') page.setData({ list: res.data, total: res.total }) }) } })