1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- 'use strict';
- /**
- * 变更新增部位插入记录表
- *
- * @author Mai
- * @date
- * @version
- */
- module.exports = app => {
- class ChangeApplyHistory extends app.BaseService {
- /**
- * 构造函数
- *
- * @param {Object} ctx - egg全局变量
- * @return {void}
- */
- constructor(ctx) {
- super(ctx);
- this.tableName = 'change_apply_history';
- }
- async saveHistory(transaction, data, list) {
- await transaction.insert(this.tableName, {
- tid: data.tid,
- caid: data.id,
- info_json: JSON.stringify(data),
- list_json: JSON.stringify(list),
- });
- }
- async returnHistory(transaction, caid) {
- const data = await transaction.get(this.tableName, { caid });
- if (!data) throw '撤销前数据不存在,无法撤销';
- const change_update = {};
- const oldInfo = JSON.parse(data.info_json);
- for (const key in oldInfo) {
- if (key !== 'in_time') {
- change_update[key] = oldInfo[key];
- }
- }
- await transaction.update(this.ctx.service.changeApply.tableName, change_update);
- const oldList = JSON.parse(data.list_json);
- // 先删后插
- await transaction.delete(this.ctx.service.changeApplyList.tableName, { caid });
- await transaction.insert(this.ctx.service.changeApplyList.tableName, oldList);
- }
- }
- return ChangeApplyHistory;
- };
|