diff --git a/api/app/lib/controllers/personalTrain/index.js b/api/app/lib/controllers/personalTrain/index.js index 51d13a1..28d6182 100644 --- a/api/app/lib/controllers/personalTrain/index.js +++ b/api/app/lib/controllers/personalTrain/index.js @@ -18,6 +18,24 @@ async function getPersonalTrainRecordList(ctx) { } } +async function importPersonalTrainData(ctx) { + let errorMsg = { message: '导入个人培训记录信息失败' }; + const transaction = await ctx.fs.dc.orm.transaction(); + try { + const models = ctx.fs.dc.models; + const data = ctx.request.body; + await models.PersonalTraining.bulkCreate(data, { transaction }); + await transaction.commit(); + ctx.status = 204; + } catch (error) { + await transaction.rollback(); + ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); + ctx.status = 400; + ctx.body = errorMsg; + } +} + module.exports = { - getPersonalTrainRecordList + getPersonalTrainRecordList, + importPersonalTrainData } diff --git a/api/app/lib/routes/personalTrain/index.js b/api/app/lib/routes/personalTrain/index.js index 4779899..271466f 100644 --- a/api/app/lib/routes/personalTrain/index.js +++ b/api/app/lib/routes/personalTrain/index.js @@ -5,4 +5,7 @@ const personalTrain = require('../../controllers/personalTrain'); module.exports = function (app, router, opts) { app.fs.api.logAttr['GET/personal/train/record/list'] = { content: '查询个人培训记录列表', visible: true }; router.get('/personal/train/record/list', personalTrain.getPersonalTrainRecordList); + + app.fs.api.logAttr['POST/personal/train/record/bulk'] = { content: '导入个人培训记录信息', visible: true }; + router.post('/personal/train/record/bulk', personalTrain.importPersonalTrainData); }; \ No newline at end of file