選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

102 行
4.0KB

  1. <?php
  2. namespace App\Kintone\Models;
  3. use App\Kintone\Models\PaymentPlan as ModelsPaymentPlan;
  4. use App\Kintone\Models\SubTable\Receipt\PaymentPlan;
  5. use App\Kintone\Models\SubTable\Receipt\ReceiptDetail;
  6. use App\Kintone\Models\SubTable\Receipt\TaxDetail;
  7. use Illuminate\Support\Carbon;
  8. use Illuminate\Support\Collection;
  9. /**
  10. * アプリ名 領収証
  11. * @property string receiptNo
  12. * @property Carbon receiptDate
  13. * @property string invoiceNo
  14. * @property string receiptIssure
  15. * @property string receiptName
  16. * @property int customerCode
  17. * @property string customerName
  18. * @property string taxType
  19. * @property Collection<int, ReceiptDetail> receiptDetail
  20. * @property Collection<int, TaxDetail> taxDetail
  21. * @property string receiptCustomerName
  22. * @property int receiptTotalAmount
  23. * @property Collection<int, PaymentPlan> paymentPlans
  24. */
  25. class Receipt extends KintoneModel
  26. {
  27. const CONFIG_KEY = "KINTONE_APP_RECEIPT";
  28. const FIELD_RECEIPT_NO = "領収証番号";
  29. const FIELD_RECEIPT_DATE = "発行日";
  30. const FIELD_INVOICE_NO = "インボイス登録番号";
  31. const FIELD_RECEIPT_ISSURE = "発行事業者名";
  32. const FIELD_RECEIPT_NAME = "領収証名称";
  33. const FIELD_CUSTOMER_CODE = "顧客コード";
  34. const FIELD_CUSTOMER_NAME = "顧客名";
  35. const FIELD_TAX_TYPE = "税区分";
  36. const FIELD_RECEIPT_DETAIL = "テーブル_明細";
  37. const FIELD_RECEIPT_DETAIL_NAME = "明細_名称";
  38. const FIELD_RECEIPT_DETAIL_PARKING_NAME = "明細_駐車場名";
  39. const FIELD_RECEIPT_DETAIL_TARGET_MONTH = "明細_対象月";
  40. const FIELD_RECEIPT_DETAIL_MEMO = "明細_備考";
  41. const FIELD_RECEIPT_DETAIL_UNIT_PRICE = "明細_単価";
  42. const FIELD_RECEIPT_DETAIL_QUANTITY = "明細_数量";
  43. const FIELD_RECEIPT_DETAIL_AMOUNT = "明細_金額";
  44. const FIELD_RECEIPT_DETAIL_TAX_RATE = "明細_税率";
  45. const FIELD_TAX_DETAIL = "テーブル_内税明細";
  46. const FIELD_TAX_DETAIL_TAX_RATE = "内税明細_税率";
  47. const FIELD_TAX_DETAIL_TOTAL_AMOUNT = "内税明細_税込金額合計";
  48. const FIELD_TAX_DETAIL_TAX_AMOUNT = "内税明細_消費税_内税";
  49. const FIELD_RECEIPT_CUSTOMER_NAME = "宛名";
  50. const FIELD_RECEIPT_TOTAL_AMOUNT = "合計";
  51. const FIELD_PAYMENT_PLANS = "テーブル_入金実績";
  52. const FIELD_PAYMENT_PLANS_RECORD_NO = "入金実績_入金予定レコード番号";
  53. const FIELD_PAYMENT_PLANS_PAYMENT_PURPOSE = "入金実績_支払種別";
  54. const FIELD_PAYMENT_PLANS_DATE = "入金実績_入金日";
  55. const FIELD_PAYMENT_PLANS_AMOUNT = "入金実績_入金額";
  56. const FIELD_PAYMENT_PLANS_TARGET_YEAR = "入金実績支払対象_利用_年";
  57. const FIELD_PAYMENT_PLANS_TARGET_MONTH = "入金実績支払対象_利用_月";
  58. const FIELD_RECEIPT_PDF_FILE = "領収証PDF";
  59. protected const FIELDS = [
  60. ...parent::FIELDS,
  61. self::FIELD_RECEIPT_NO => FieldType::SINGLE_LINE_TEXT,
  62. self::FIELD_RECEIPT_DATE => FieldType::DATE,
  63. self::FIELD_INVOICE_NO => FieldType::SINGLE_LINE_TEXT,
  64. self::FIELD_RECEIPT_ISSURE => FieldType::MULTI_LINE_TEXT,
  65. self::FIELD_RECEIPT_NAME => FieldType::SINGLE_LINE_TEXT,
  66. self::FIELD_CUSTOMER_CODE => FieldType::NUMBER,
  67. self::FIELD_CUSTOMER_NAME => FieldType::SINGLE_LINE_TEXT,
  68. self::FIELD_TAX_TYPE => FieldType::DROP_DOWN,
  69. self::FIELD_RECEIPT_DETAIL => FieldType::SUBTABLE,
  70. self::FIELD_TAX_DETAIL => FieldType::SUBTABLE,
  71. self::FIELD_RECEIPT_CUSTOMER_NAME => FieldType::SINGLE_LINE_TEXT,
  72. self::FIELD_RECEIPT_TOTAL_AMOUNT => FieldType::NUMBER,
  73. self::FIELD_RECEIPT_PDF_FILE => FieldType::FILE,
  74. self::FIELD_PAYMENT_PLANS => FieldType::SUBTABLE,
  75. ];
  76. protected const FIELD_NAMES = [
  77. ...parent::FIELD_NAMES,
  78. ];
  79. protected const SUB_TABLES = [
  80. self::FIELD_RECEIPT_DETAIL => ReceiptDetail::class,
  81. self::FIELD_TAX_DETAIL => TaxDetail::class,
  82. self::FIELD_PAYMENT_PLANS => PaymentPlan::class,
  83. ];
  84. protected const RELATIONS = [
  85. Customer::class,
  86. ModelsPaymentPlan::class,
  87. ];
  88. }