|
|
@@ -1114,9 +1114,13 @@ export default {
|
|
|
} else {
|
|
|
uni.showToast({ title: res.message || '保存失败', icon: 'none' })
|
|
|
}
|
|
|
- }).catch(function() {
|
|
|
+ }).catch(function(err) {
|
|
|
+ // 与 submitDateChange 同理:后端明确原因以 err.message 为准。封装层已弹过该文案,
|
|
|
+ // 但微信小程序 showToast 与 showLoading 共用同一组件,hideLoading 会把它一并隐藏,
|
|
|
+ // 故 hideLoading 后重放同一条原因;仅非业务错误(无 message)才兜底弹通用提示。
|
|
|
uni.hideLoading()
|
|
|
- uni.showToast({ title: '保存异常', icon: 'none' })
|
|
|
+ var reason = (err && err.message) ? err.message : ''
|
|
|
+ uni.showToast({ title: reason || '保存异常', icon: 'none' })
|
|
|
})
|
|
|
},
|
|
|
// ===== view 模式:报告日期修改(复用 /report/edit,只改 summary.reportDate)=====
|
|
|
@@ -1161,13 +1165,17 @@ export default {
|
|
|
self.dateEditing = false
|
|
|
uni.showToast({ title: '已保存', icon: 'success' })
|
|
|
setTimeout(function() { self.loadData() }, 600)
|
|
|
- } else {
|
|
|
- // 非 200(如日期格式非法/未来日期):直接展示后端返回的明确错误,不吞
|
|
|
- uni.showToast({ title: res.message || '保存失败', icon: 'none' })
|
|
|
}
|
|
|
- }).catch(function() {
|
|
|
+ // 非 200 不在此处理:api.js 封装层对 code!==200 会先弹后端明确原因再 reject,
|
|
|
+ // .then 只会拿到 200(/report/edit 不返回 5001),此处再弹一次只会覆盖具体原因。
|
|
|
+ }).catch(function(err) {
|
|
|
+ // err.message 即后端原文(如「报告日期不能晚于今天,当前值:2099-01-01」)。
|
|
|
+ // 注意:微信小程序 showToast 与 showLoading 共用同一组件,hideLoading 会把封装层
|
|
|
+ // 刚弹的那条提示一并隐藏,所以这里 hideLoading 后重放同一条原因,保证不吞错;
|
|
|
+ // 只有非业务错误对象(无 message)才兜底弹一次通用提示。
|
|
|
uni.hideLoading()
|
|
|
- uni.showToast({ title: '保存失败', icon: 'none' })
|
|
|
+ var reason = (err && err.message) ? err.message : ''
|
|
|
+ uni.showToast({ title: reason || '保存失败', icon: 'none' })
|
|
|
})
|
|
|
},
|
|
|
/** 从 blocks 中过滤掉"食物推荐/饮食推荐"块(报告详情不展示饮食推荐) */
|