< Summary

Information
Class: OzonDomains.Models.OzonHandover.OzonHandoverActItem
Assembly: OzonDomains
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/OzonHandover/OzonHandoverActItem.cs
Line coverage
89%
Covered lines: 35
Uncovered lines: 4
Coverable lines: 39
Total lines: 119
Line coverage: 89.7%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Id()100%210%
get_ActId()100%210%
get_OrderId()100%11100%
get_RowNo()100%11100%
get_ItemNo()100%11100%
get_ProductName()100%11100%
get_Barcode()100%11100%
get_Value()100%11100%
get_ValueApi()100%11100%
get_WeightG()100%11100%
get_Status()100%11100%
get_Defect()100%11100%
get_Missort()100%11100%
get_Comment()100%11100%
get_MarkedAt()100%11100%
get_Sku()100%11100%
get_OfferId()100%11100%
get_AccountLabel()100%11100%
get_ReturnId()100%11100%
get_OzonStatus()100%11100%
get_OzonStatusName()100%11100%
get_ReturnType()100%11100%
get_BoxBarcode()100%11100%
get_Reason()100%11100%
get_ReasonIsDefect()100%11100%
get_ClientComment()100%11100%
get_ClientPhotosExpiresAt()100%11100%
get_PhotosCount()100%11100%
get_PhotosError()100%11100%
get_RejectionComment()100%11100%
get_RejectionReason()100%11100%
get_RuPostTracking()100%11100%
get_ReturnNumber()100%11100%
get_OrderNumber()100%11100%
get_ClientReturnMethod()100%11100%
get_WarehouseId()100%11100%
get_Act()100%210%
get_Order()100%210%
get_Photos()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/OzonHandover/OzonHandoverActItem.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using System.ComponentModel.DataAnnotations.Schema;
 3using Microsoft.EntityFrameworkCore;
 4
 5namespace OzonDomains.Models.OzonHandover;
 6
 7/// <summary>
 8/// Позиция акта выдачи/приёма-передачи Ozon. <see cref="ItemNo"/> — это номер отправления Ozon
 9/// (совпадает по формату с <see cref="Order.ShipmentNumber"/>, например "0128796250-0017-2") —
 10/// по нему позиция сопоставляется с заказом в системе.
 11/// </summary>
 12[Table("OzonHandoverActItems")]
 13[Index(nameof(ItemNo))]
 14public class OzonHandoverActItem
 15{
 16    [Key]
 17    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
 018    public long Id { get; set; }
 19
 020    public int ActId { get; set; }
 21
 22    /// <summary>Заказ, сопоставленный по ItemNo/ShipmentNumber. Null, если сопоставить не удалось.</summary>
 823    public int? OrderId { get; set; }
 24
 1125    public int RowNo { get; set; }
 26
 27    /// <summary>Номер отправления Ozon источника — ключ сопоставления с Order.ShipmentNumber.</summary>
 28    [MaxLength(50)]
 1229    public string? ItemNo { get; set; }
 30
 31    [MaxLength(500)]
 1132    public string? ProductName { get; set; }
 33
 34    [MaxLength(100)]
 1135    public string? Barcode { get; set; }
 36
 1837    public decimal Value { get; set; }
 1138    public decimal? ValueApi { get; set; }
 1139    public int? WeightG { get; set; }
 40
 41    /// <summary>Статус позиции: accepted / rejected / pending.</summary>
 42    [MaxLength(30)]
 4643    public string? Status { get; set; }
 44
 1845    public bool Defect { get; set; }
 1846    public bool Missort { get; set; }
 47
 48    [MaxLength(1000)]
 1149    public string? Comment { get; set; }
 50
 1151    public DateTime? MarkedAt { get; set; }
 52
 1153    public long? Sku { get; set; }
 54
 55    [MaxLength(100)]
 1156    public string? OfferId { get; set; }
 57
 58    /// <summary>Метка аккаунта источника на уровне позиции (может отличаться от акта).</summary>
 59    [MaxLength(50)]
 1160    public string? AccountLabel { get; set; }
 61
 62    /// <summary>Идентификатор возврата в системе Ozon (return_id).</summary>
 1963    public long? ReturnId { get; set; }
 64
 65    /// <summary>Статус отправления в Ozon на момент выгрузки (ozon_status), например "ReceivedBySeller".</summary>
 66    [MaxLength(50)]
 1167    public string? OzonStatus { get; set; }
 68
 69    [MaxLength(200)]
 1270    public string? OzonStatusName { get; set; }
 71
 72    [MaxLength(20)]
 1973    public string? ReturnType { get; set; }
 74
 75    [MaxLength(100)]
 1276    public string? BoxBarcode { get; set; }
 77
 78    [MaxLength(1000)]
 1279    public string? Reason { get; set; }
 80
 1181    public bool ReasonIsDefect { get; set; }
 82
 83    [Column(TypeName = "text")]
 1284    public string? ClientComment { get; set; }
 85
 1186    public DateTime? ClientPhotosExpiresAt { get; set; }
 1187    public int PhotosCount { get; set; }
 88
 89    [Column(TypeName = "text")]
 1590    public string? PhotosError { get; set; }
 91
 92    [Column(TypeName = "text")]
 1193    public string? RejectionComment { get; set; }
 94
 95    [MaxLength(1000)]
 1196    public string? RejectionReason { get; set; }
 97
 98    [MaxLength(100)]
 1199    public string? RuPostTracking { get; set; }
 100
 101    [MaxLength(100)]
 11102    public string? ReturnNumber { get; set; }
 103
 104    [MaxLength(100)]
 11105    public string? OrderNumber { get; set; }
 106
 107    [MaxLength(100)]
 11108    public string? ClientReturnMethod { get; set; }
 109
 11110    public long? WarehouseId { get; set; }
 111
 112    [ForeignKey(nameof(ActId))]
 0113    public virtual OzonHandoverAct? Act { get; set; }
 114
 115    [ForeignKey(nameof(OrderId))]
 0116    public virtual Order? Order { get; set; }
 117
 24118    public virtual List<OzonHandoverActItemPhoto> Photos { get; set; } = new();
 119}