func (this *saleService) SaveCategory(partnerId int, v *sale.ValueCategory) (int, error) { sl := this._rep.GetSale(partnerId) var ca sale.ICategory if v.Id > 0 { ca = sl.GetCategory(v.Id) if err := ca.SetValue(v); err != nil { return 0, err } } else { ca = sl.CreateCategory(v) } return ca.Save() }