'use strict'; const _ = require('lodash'); module.exports = options => { return async function duplicate(ctx, next) { await next(); const body = ctx.response.body; const { data } = body; const status = data.status; if (status !== '2') return; // 创建副本数据 const duplicateData = _.cloneDeep(data); duplicateData.apply_id = data._id || data.id; delete duplicateData._id; delete duplicateData.id; const q = { apply_id: duplicateData.apply_id, user_id: duplicateData.user_id }; // 先查询有没有,有就更新 // 一切都复制一份,将原数据id放到apply_id上,用来追溯/对比 // ctx.model.Duplicate.create(duplicateData); }; };