UNPKG

@shuuji3/kintone-utility

Version:

Utility library for development on Kintone platform.

50 lines (44 loc) 1.48 kB
import createError from './common/createError'; import errors from './resource/errorMessages.json'; import putRecords from './putRecords'; import sliceArray from './common/sliceArray'; import limit from './resource/limit.json'; /** Function: putAllRecords * Can update over 2000 records, but can't do rollback. * @param {object} params * @param {number} params.app * @param {array} params.records * @param {boolean} [params.isGuest] * * @return {object} result */ export default (params) => { if (!(params && params.app)) { return createError(errors.required.app); } else if (!Array.isArray(params.records)) { return createError(errors.shouldBeArray.records); } else if (params.records && params.records.length < 1) { return createError(errors.emptyArray.records); } let results = []; const putAll = (beginNum) => { let begin = beginNum || 0; const isGuest = Boolean(params.isGuest); const param = { app: params.app, records: sliceArray(params.records, begin), isGuest: isGuest }; return putRecords(param).then((response) => { results = results.concat(response.results); begin += limit.bulk; if (params.records.length <= begin) { return { results: results }; } return putAll(begin); }); }; return putAll(); };