## 退回处理 ``` //---------------------- private ----------------------// // 加载即调用方法请在此处进行调用 export async function _mjsInit() { await mjs.init(this, { vconsole: false }) // 页面环境:0提交(其它),1查看,2编辑(审批) if (mjs.env) { // 记录修改前ids mjs.pre_ids = this.$('tableField_krmybpq6').getValue().reduce((acc, cur) => { acc.push(...cur.associationFormField_liya90jt.map(item => item.instanceId)) return acc; }, []) console.log("当前明细实例Ids", mjs.pre_ids); } // 价税合计,计算 function round(number, precision) { return Math.round(+number + 'e' + precision) / Math.pow(10, precision); } mjs._calcTotal = mjs.optimize.debounce(() => { const details = this.$('tableField_krmybpq6').getValue(); const total = details.reduce((acc, cur) => { const count = (cur.associationFormField_liya90jt || []).reduce((sum, ass) => { sum += Number(ass.subTitle) return sum; }, 0) cur.numberField_krn4ig4x = round(count, 2); acc += cur.numberField_krn4ig4x; return acc; }, 0) this.$('numberField_krn54uoe').setValue(total) }, 400) // 退回点击事件注册 & 响应 mjs.bus.DOM_CALLBACK_APPROVE = async (_this, title) => { console.log(_this, title, title == "提交") if (title == "提交") { const cur_ids = this.$('tableField_krmybpq6').getValue().reduce((acc, cur) => { acc.push(...cur.associationFormField_liya90jt.map(item => item.instanceId)) return acc; }, []) // 接口处理: 释放修改删除的全部数据,占用重新提交的全部数据 mjs.request.xhr.doPost("https://mc.cloudpure.cn/frp/guyuan/invoice-zy", null, { pre_ids: mjs.pre_ids, pre_update: { selectField_liihyrt6: "未使用", }, cur_ids: cur_ids, cur_update: { selectField_liihyrt6: "已使用", radioField_liw7rb2q: "否" // 提交后, 更新是否退回标识为否 } }) } } mjs.dom.registerFlowEvent(this); } //---------------------- event ----------------------// // 页面节点加载渲染完毕 export function didMount() { // 工具库: mjs & 初始化 this._mjsLoad(); } //子表分类求和 export function onChange({ value, extra }) { // 价税合计,计算 mjs._calcTotal() } ```