forked from skilld-labs/go-odoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
base_import_tests_models_o2m_child.go
136 lines (119 loc) · 5.63 KB
/
base_import_tests_models_o2m_child.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
package odoo
import (
"fmt"
)
// BaseImportTestsModelsO2MChild represents base_import.tests.models.o2m.child model.
type BaseImportTestsModelsO2MChild struct {
LastUpdate *Time `xmlrpc:"__last_update,omptempty"`
CreateDate *Time `xmlrpc:"create_date,omptempty"`
CreateUid *Many2One `xmlrpc:"create_uid,omptempty"`
DisplayName *String `xmlrpc:"display_name,omptempty"`
Id *Int `xmlrpc:"id,omptempty"`
ParentId *Many2One `xmlrpc:"parent_id,omptempty"`
Value *Int `xmlrpc:"value,omptempty"`
WriteDate *Time `xmlrpc:"write_date,omptempty"`
WriteUid *Many2One `xmlrpc:"write_uid,omptempty"`
}
// BaseImportTestsModelsO2MChilds represents array of base_import.tests.models.o2m.child model.
type BaseImportTestsModelsO2MChilds []BaseImportTestsModelsO2MChild
// BaseImportTestsModelsO2MChildModel is the odoo model name.
const BaseImportTestsModelsO2MChildModel = "base_import.tests.models.o2m.child"
// Many2One convert BaseImportTestsModelsO2MChild to *Many2One.
func (btmoc *BaseImportTestsModelsO2MChild) Many2One() *Many2One {
return NewMany2One(btmoc.Id.Get(), "")
}
// CreateBaseImportTestsModelsO2MChild creates a new base_import.tests.models.o2m.child model and returns its id.
func (c *Client) CreateBaseImportTestsModelsO2MChild(btmoc *BaseImportTestsModelsO2MChild) (int64, error) {
ids, err := c.CreateBaseImportTestsModelsO2MChilds([]*BaseImportTestsModelsO2MChild{btmoc})
if err != nil {
return -1, err
}
if len(ids) == 0 {
return -1, nil
}
return ids[0], nil
}
// CreateBaseImportTestsModelsO2MChild creates a new base_import.tests.models.o2m.child model and returns its id.
func (c *Client) CreateBaseImportTestsModelsO2MChilds(btmocs []*BaseImportTestsModelsO2MChild) ([]int64, error) {
var vv []interface{}
for _, v := range btmocs {
vv = append(vv, v)
}
return c.Create(BaseImportTestsModelsO2MChildModel, vv)
}
// UpdateBaseImportTestsModelsO2MChild updates an existing base_import.tests.models.o2m.child record.
func (c *Client) UpdateBaseImportTestsModelsO2MChild(btmoc *BaseImportTestsModelsO2MChild) error {
return c.UpdateBaseImportTestsModelsO2MChilds([]int64{btmoc.Id.Get()}, btmoc)
}
// UpdateBaseImportTestsModelsO2MChilds updates existing base_import.tests.models.o2m.child records.
// All records (represented by ids) will be updated by btmoc values.
func (c *Client) UpdateBaseImportTestsModelsO2MChilds(ids []int64, btmoc *BaseImportTestsModelsO2MChild) error {
return c.Update(BaseImportTestsModelsO2MChildModel, ids, btmoc)
}
// DeleteBaseImportTestsModelsO2MChild deletes an existing base_import.tests.models.o2m.child record.
func (c *Client) DeleteBaseImportTestsModelsO2MChild(id int64) error {
return c.DeleteBaseImportTestsModelsO2MChilds([]int64{id})
}
// DeleteBaseImportTestsModelsO2MChilds deletes existing base_import.tests.models.o2m.child records.
func (c *Client) DeleteBaseImportTestsModelsO2MChilds(ids []int64) error {
return c.Delete(BaseImportTestsModelsO2MChildModel, ids)
}
// GetBaseImportTestsModelsO2MChild gets base_import.tests.models.o2m.child existing record.
func (c *Client) GetBaseImportTestsModelsO2MChild(id int64) (*BaseImportTestsModelsO2MChild, error) {
btmocs, err := c.GetBaseImportTestsModelsO2MChilds([]int64{id})
if err != nil {
return nil, err
}
if btmocs != nil && len(*btmocs) > 0 {
return &((*btmocs)[0]), nil
}
return nil, fmt.Errorf("id %v of base_import.tests.models.o2m.child not found", id)
}
// GetBaseImportTestsModelsO2MChilds gets base_import.tests.models.o2m.child existing records.
func (c *Client) GetBaseImportTestsModelsO2MChilds(ids []int64) (*BaseImportTestsModelsO2MChilds, error) {
btmocs := &BaseImportTestsModelsO2MChilds{}
if err := c.Read(BaseImportTestsModelsO2MChildModel, ids, nil, btmocs); err != nil {
return nil, err
}
return btmocs, nil
}
// FindBaseImportTestsModelsO2MChild finds base_import.tests.models.o2m.child record by querying it with criteria.
func (c *Client) FindBaseImportTestsModelsO2MChild(criteria *Criteria) (*BaseImportTestsModelsO2MChild, error) {
btmocs := &BaseImportTestsModelsO2MChilds{}
if err := c.SearchRead(BaseImportTestsModelsO2MChildModel, criteria, NewOptions().Limit(1), btmocs); err != nil {
return nil, err
}
if btmocs != nil && len(*btmocs) > 0 {
return &((*btmocs)[0]), nil
}
return nil, fmt.Errorf("base_import.tests.models.o2m.child was not found with criteria %v", criteria)
}
// FindBaseImportTestsModelsO2MChilds finds base_import.tests.models.o2m.child records by querying it
// and filtering it with criteria and options.
func (c *Client) FindBaseImportTestsModelsO2MChilds(criteria *Criteria, options *Options) (*BaseImportTestsModelsO2MChilds, error) {
btmocs := &BaseImportTestsModelsO2MChilds{}
if err := c.SearchRead(BaseImportTestsModelsO2MChildModel, criteria, options, btmocs); err != nil {
return nil, err
}
return btmocs, nil
}
// FindBaseImportTestsModelsO2MChildIds finds records ids by querying it
// and filtering it with criteria and options.
func (c *Client) FindBaseImportTestsModelsO2MChildIds(criteria *Criteria, options *Options) ([]int64, error) {
ids, err := c.Search(BaseImportTestsModelsO2MChildModel, criteria, options)
if err != nil {
return []int64{}, err
}
return ids, nil
}
// FindBaseImportTestsModelsO2MChildId finds record id by querying it with criteria.
func (c *Client) FindBaseImportTestsModelsO2MChildId(criteria *Criteria, options *Options) (int64, error) {
ids, err := c.Search(BaseImportTestsModelsO2MChildModel, criteria, options)
if err != nil {
return -1, err
}
if len(ids) > 0 {
return ids[0], nil
}
return -1, fmt.Errorf("base_import.tests.models.o2m.child was not found with criteria %v and options %v", criteria, options)
}