package Ġar . edu . un q . ar qs 1 . M erc ad illo Lib re Back . models Ċ Ċ import Ġcom . fasterxml . jackson . annotation . JsonIgnore Ċ import Ġcom . fasterxml . jackson . annotation . JsonProperty Ċ import Ġlombok . Data Ċ import Ġjavax . persistence .* Ċ import Ġjavax . validation . constraints . Min Ċ import Ġjavax . validation . constraints . NotNull Ċ Ċ @ Table ( name Ġ= Ġ" line _ items ") Ċ @ Entity Ċ @ Data Ċ class ĠLine Item Ġ( ĊĠĠĠ Ġ@ Id ĊĠĠĠ Ġ@ GeneratedValue ( strategy Ġ= ĠGeneration Type . IDENTITY ) ĊĠĠĠ Ġvar Ġid : ĠLong ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ get : NotNull ( message Ġ= Ġ" The Ġprice Ġis Ġrequired ") ĊĠĠĠ Ġ@ get : Min ( 0 ) ĊĠĠĠ Ġvar Ġprice : ĠInt , ĊĊĠĠĠ Ġ@ get : NotNull ( message Ġ= Ġ" The Ġquantity Ġis Ġrequired ") ĊĠĠĠ Ġ@ get : Min ( 1 ) ĊĠĠĠ Ġvar Ġquantity : ĠInt , ĊĊĠĠĠ Ġ@ get : NotNull ( message Ġ= Ġ" The Ġorder Ġis Ġrequired ") ĊĠĠĠ Ġ@ ManyToOne ( optional Ġ= Ġfalse ) ĊĠĠĠ Ġ@ JoinColumn ( name Ġ= Ġ" order _ id ", Ġreferenced ColumnName Ġ= Ġ" id ") ĊĠĠĠ Ġ@ JsonIgnore ĊĠĠĠ Ġvar Ġ Ġorder : ĠOrder ?, ĊĊĠĠĠ Ġ@ get : NotNull ( message Ġ= Ġ" The Ġproduct Ġis Ġrequired ") ĊĠĠĠ Ġ@ One ToOne ( optional Ġ= Ġfalse ) ĊĠĠĠ Ġ@ JoinColumn ( name Ġ= Ġ" product _ id ", Ġreferenced ColumnName Ġ= Ġ" id ") ĊĠĠĠ Ġvar Ġ Ġproduct : ĠProduct ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠ Ġ@ JsonProperty (" item Price ") ĊĠĠĠ Ġfun Ġitem Price (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġprice Ġ* Ġquantity ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠProduct De activated : ĠException (" The Ġproduct Ġis Ġde activated ") Ċ } Ċ