京都のkintone用javascript
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

40 linhas
1.4KB

  1. import { AppID } from "@/common/appids";
  2. import { now } from "@/common/datetime";
  3. import { makeRecordData } from "@/common/rest-api-client";
  4. import bulkRequest from "@/rest-api/bulk";
  5. import { get車室情報管理一覧 } from "@/rest-api/車室情報管理";
  6. import { get車室情報一覧 } from "@/rest-api/車室情報2";
  7. import { 状態Dropdown, 車室情報2フィールド名 } from "@/types/車室情報2";
  8. export const 契約状況同期 = async (駐車場名: string, 車室番号?: number) => {
  9. await 車室情報契約項目同期(駐車場名, 車室番号);
  10. };
  11. const 車室情報契約項目同期 = async (駐車場名: string, 車室番号?: number) => {
  12. const 契約一覧 = await get車室情報管理一覧({
  13. 駐車場名,
  14. 車室番号,
  15. 契約中のみ: now(),
  16. });
  17. const 車室一覧 = await get車室情報一覧({
  18. 駐車場名,
  19. 車室番号,
  20. });
  21. 車室一覧.forEach((車室) => {
  22. const 契約 = 契約一覧.find((c) => c.車室番号.value === 車室.車室番号.value);
  23. bulkRequest.update({
  24. app: AppID.車室情報2,
  25. id: 車室.$id.value,
  26. record: makeRecordData({
  27. [車室情報2フィールド名.状態]: !!契約
  28. ? 状態Dropdown.契約中
  29. : 状態Dropdown.空き,
  30. [車室情報2フィールド名.契約レコード番号]: 契約?.$id.value ?? "",
  31. }),
  32. });
  33. });
  34. };