簡而言之,它是一個庫存系統,與SKU綁定。 SKU是一個項目的組合,有時是完全相同項目的多個項目。Grails GORM領域類具有許多相同類型和重複條目
E.G
SKU爲一套餐廳將是,4(項目) 「椅子」 和1(項目) 「表」。如果我能讓GORN認識到它與「椅子」的多個實例相關聯,那麼我可以繼續計數。
這裏是基本的代碼,我已經試過
class Item implements Serializable{
String name;
String description;
}
class Sku {
String description;
String skuCode;
Collection items;
static hasMany = [items:Item];
}
//… GENERATE TEST DATA
item = new Item(name:"Table", description:"Oak table");
item.save();
item = new Item(name:"Chair", description:"Oak chair");
item.save();
sku= new Sku(description:"A complete dining room set for 4");
sku.items = [Item.findByName("Table"),Item.findByName("Chair"),
Item.findByName("Chair"),Item.findByName("Chair"),
Item.findByName("Chair")];
sku.save();
這將只顯示SKU爲「表」和「椅子」的。
我甚至不確定如何在SQL中執行此操作。但我想知道是否有一個能夠實現我想要的結構。這似乎是一種乾淨的編碼方式。
最終目標是SKU將包含許多不同項目組合的系統,我希望能夠通過輸入項目組合來縮小可能的SKU範圍。
例如,如果我搜索表+ 1米的椅子,我就見表& 4Chairs和表+ 2把椅子(它插入後)等或表+椅子+島+凳(S)+冰箱
謝謝
我認爲你是在良好的軌道。即使我不太喜歡你的模式,我認爲應該可以在它的實際狀態下使用它來實現你需要的查詢。你能更詳細地描述你的問題嗎? ...你是什麼意思「這隻會顯示SKU是」表格「和」主席「。」 – Rafael 2015-02-24 13:53:09
模式有什麼問題?請記住,這不是我真正建立的,這是我能夠解釋我的計劃的最簡單方法。但我是GORM的新手,所以我可能會錯過一些非常明顯的東西。 – kevingreen 2015-02-24 13:53:43
如果我要以更嚴格的Java實體方式來做到這一點,我可以使用Map- 的地圖,因此它將是<"Chair",4>。但是,這使我鎖定每一件物品的追蹤計數(可能不是一件壞事?) –
kevingreen
2015-02-24 13:57:47