LCOV - code coverage report
Current view: top level - domain/entity - address_purpose.go Coverage Total Hit
Test: coverage.lcov Lines: 0.0 % 3 0
Test Date: 2026-04-14 06:42:22 Functions: - 0 0

            Line data    Source code
       1              : // Package entity は住所の用途を表すドメインエンティティです
       2              : package entity
       3              : 
       4              : import "time"
       5              : 
       6              : // AddressPurpose は住所の用途を表すドメインエンティティです
       7              : type AddressPurpose struct {
       8              :         ID          uint64    `gorm:"primaryKey;autoIncrement;column:id"`
       9              :         Code        string    `gorm:"size:64;not null;unique;column:code"`
      10              :         DisplayName string    `gorm:"autoUpdateTime;column:display_name"`
      11              :         SortOrder   int       `gorm:"not null;default:0;column:sort_order"`
      12              :         IsActive    bool      `gorm:"not null;default:true;column:is_active"`
      13              :         CreatedAt   time.Time `gorm:"autoCreateTime;column:created_at"`
      14              :         UpdatedAt   time.Time `gorm:"autoUpdateTime;column:updated_at"`
      15              : }
      16              : 
      17              : // TableName は GORM のテーブル名を返します。
      18            0 : func (AddressPurpose) TableName() string {
      19            0 :         return "address_purposes"
      20            0 : }
      21              : 
      22              : // AddressPurposeID◯◯ は address_purposes テーブルの ID を表す定数です。
      23              : // マジックナンバーを避けるために、用途 ID を参照する箇所ではこれらを利用します。
      24              : const (
      25              :         // AddressPurposeIDHome は code=home の AddressPurpose のIDです。
      26              :         AddressPurposeIDHome uint64 = 1
      27              : 
      28              :         // AddressPurposeIDContact は code=contact の AddressPurpose のIDです。
      29              :         AddressPurposeIDContact uint64 = 2
      30              : 
      31              :         // AddressPurposeIDOffice は code=office の AddressPurpose のIDです。
      32              :         AddressPurposeIDOffice uint64 = 3
      33              : 
      34              :         // AddressPurposeIDShipping は code=shipping の AddressPurpose のIDです。
      35              :         AddressPurposeIDShipping uint64 = 4
      36              : 
      37              :         // AddressPurposeIDBilling は code=billing の AddressPurpose のIDです。
      38              :         AddressPurposeIDBilling uint64 = 5
      39              : 
      40              :         // AddressPurposeIDOther は code=other の AddressPurpose のIDです。
      41              :         AddressPurposeIDOther uint64 = 6
      42              : )
      43              : 
      44              : // AddressPurposeCode◯◯ は address_purposes テーブルの code を表す定数です。
      45              : // バリデーションや分岐で code を扱う場合には、文字列リテラルではなくこれらを利用します。
      46              : const (
      47              :         // AddressPurposeCodeHome は home 用途を表す code です。
      48              :         AddressPurposeCodeHome = "home"
      49              : 
      50              :         // AddressPurposeCodeContact は contact 用途を表す code です。
      51              :         AddressPurposeCodeContact = "contact"
      52              : 
      53              :         // AddressPurposeCodeOffice は office 用途を表す code です。
      54              :         AddressPurposeCodeOffice = "office"
      55              : 
      56              :         // AddressPurposeCodeShipping は shipping 用途を表す code です。
      57              :         AddressPurposeCodeShipping = "shipping"
      58              : 
      59              :         // AddressPurposeCodeBilling は billing 用途を表す code です。
      60              :         AddressPurposeCodeBilling = "billing"
      61              : 
      62              :         // AddressPurposeCodeOther は other 用途を表す code です。
      63              :         AddressPurposeCodeOther = "other"
      64              : )
        

Generated by: LCOV version 2.3.1-1