| 193 | } |
| 194 | |
| 195 | func (dlc *DirectLinkCreate) createSpec() (*DirectLink, *sqlgraph.CreateSpec) { |
| 196 | var ( |
| 197 | _node = &DirectLink{config: dlc.config} |
| 198 | _spec = sqlgraph.NewCreateSpec(directlink.Table, sqlgraph.NewFieldSpec(directlink.FieldID, field.TypeInt)) |
| 199 | ) |
| 200 | |
| 201 | if id, ok := dlc.mutation.ID(); ok { |
| 202 | _node.ID = id |
| 203 | id64 := int64(id) |
| 204 | _spec.ID.Value = id64 |
| 205 | } |
| 206 | |
| 207 | _spec.OnConflict = dlc.conflict |
| 208 | if value, ok := dlc.mutation.CreatedAt(); ok { |
| 209 | _spec.SetField(directlink.FieldCreatedAt, field.TypeTime, value) |
| 210 | _node.CreatedAt = value |
| 211 | } |
| 212 | if value, ok := dlc.mutation.UpdatedAt(); ok { |
| 213 | _spec.SetField(directlink.FieldUpdatedAt, field.TypeTime, value) |
| 214 | _node.UpdatedAt = value |
| 215 | } |
| 216 | if value, ok := dlc.mutation.DeletedAt(); ok { |
| 217 | _spec.SetField(directlink.FieldDeletedAt, field.TypeTime, value) |
| 218 | _node.DeletedAt = &value |
| 219 | } |
| 220 | if value, ok := dlc.mutation.Name(); ok { |
| 221 | _spec.SetField(directlink.FieldName, field.TypeString, value) |
| 222 | _node.Name = value |
| 223 | } |
| 224 | if value, ok := dlc.mutation.Downloads(); ok { |
| 225 | _spec.SetField(directlink.FieldDownloads, field.TypeInt, value) |
| 226 | _node.Downloads = value |
| 227 | } |
| 228 | if value, ok := dlc.mutation.Speed(); ok { |
| 229 | _spec.SetField(directlink.FieldSpeed, field.TypeInt, value) |
| 230 | _node.Speed = value |
| 231 | } |
| 232 | if nodes := dlc.mutation.FileIDs(); len(nodes) > 0 { |
| 233 | edge := &sqlgraph.EdgeSpec{ |
| 234 | Rel: sqlgraph.M2O, |
| 235 | Inverse: true, |
| 236 | Table: directlink.FileTable, |
| 237 | Columns: []string{directlink.FileColumn}, |
| 238 | Bidi: false, |
| 239 | Target: &sqlgraph.EdgeTarget{ |
| 240 | IDSpec: sqlgraph.NewFieldSpec(file.FieldID, field.TypeInt), |
| 241 | }, |
| 242 | } |
| 243 | for _, k := range nodes { |
| 244 | edge.Target.Nodes = append(edge.Target.Nodes, k) |
| 245 | } |
| 246 | _node.FileID = nodes[0] |
| 247 | _spec.Edges = append(_spec.Edges, edge) |
| 248 | } |
| 249 | return _node, _spec |
| 250 | } |
| 251 | |
| 252 | // OnConflict allows configuring the `ON CONFLICT` / `ON DUPLICATE KEY` clause |