現在備品の貸し出しを管理するアプリをフォームブリッジと連携して作成しています。
備品名および貸し出しの期間(貸し出し日時、返却日時)を入力するようにしているのですが、
期間の重複排除ができず、場合によっては貸し出しが重複してしまいます。
JavaScriptを使って期間の重複を排除したいのですが、可能でしょうか。
また、可能な場合の手順をご教示いただきたいです。
ちなみにkinotneでのレコード登録時はjavaScript を用いて重複の排除ができたのですが、
フォームブリッジからのレコード登録時がうまくいきません。
※下記はkitnoneでのレコード登録時に期間重複を排除したJavaScriptのコードです。
(function(){
'use strict';
kintone.events.on('app.record.create.submit', function(event) {
let rec = event.record;
var t = rec['備品名']['value']; //備品名
var s = rec['貸し出し日時']['value']; //貸し出し日時
var e = rec['返却日時']['value']; //返却日時
let appId = kintone.app.getId();
// クエリ生成
let query = '備品名 in ("' + t + '")';
query += ' and 返却日時 > "' + s + '"';
query += ' and 貸し出し日時 < "' + e + '"';
let body = {
'app': appId,
'query': query,
'fields': ['備品名','貸し出し日時', '返却日時',]
};
return kintone.api(kintone.api.url('/k/v1/records.json', true), 'GET', body).then(function(resp) {
console.log(resp.records.length);
if(resp.records.length > 0) {
console.log('重複した予約が存在します');
event.error = '重複した予約が存在します';
}
return event;
});
});
})();