API improvements (#1826)

This commit is contained in:
Kevin Papst
2020-07-17 20:30:16 +02:00
committed by GitHub
parent 5864c7e127
commit c843dba29a
77 changed files with 1745 additions and 1189 deletions

View File

@@ -1,32 +0,0 @@
App\API\Model\I18n:
exclusion_policy: All
custom_accessor_order: [formDateTime, formDate, dateTime, date, time, duration, is24hours]
properties:
formDateTime:
include: true
type: string
groups: [Default]
formDate:
include: true
type: string
groups: [Default]
dateTime:
include: true
type: string
groups: [Default]
time:
include: true
type: string
groups: [Default]
date:
include: true
type: string
groups: [Default]
duration:
include: true
type: string
groups: [Default]
is24hours:
include: true
type: boolean
groups: [Default]

View File

@@ -1,25 +0,0 @@
App\API\Model\Version:
exclusion_policy: All
custom_accessor_order: [version, candidate, semver, name, copyright]
properties:
version:
include: true
type: string
example: 0.9
groups: [Default]
candidate:
include: true
type: string
groups: [Default]
semver:
include: true
type: string
groups: [Default]
name:
include: true
type: string
groups: [Default]
copyright:
include: true
type: string
groups: [Default]

View File

@@ -1,46 +0,0 @@
App\Entity\Activity:
exclusion_policy: All
custom_accessor_order: [id, name, comment, visible, project, color, budget, timeBudget, metaFields, parentTitle]
properties:
id:
include: true
groups: [Default]
name:
include: true
groups: [Default]
comment:
include: true
groups: [Entity]
visible:
include: true
groups: [Default]
budget:
include: true
groups: [Entity]
timeBudget:
include: true
groups: [Entity]
project:
include: false
exclude: true
groups: [Default]
color:
include: true
metaFields:
exclude: true
virtual_properties:
parentTitle:
serialized_name: parentTitle
include: true
exp: "object.getProject() === null ? null : object.getProject().getName()"
groups: [Default]
getProject:
serialized_name: project
exp: "object.getProject() === null ? null : object.getProject().getId()"
type: integer
groups: [Default]
getMetaFields:
serialized_name: metaFields
exp: "object.getVisibleMetaFields()"
type: array<App\Entity\ActivityMeta>
groups: [Default]

View File

@@ -1,15 +0,0 @@
App\Entity\ActivityMeta:
exclusion_policy: All
custom_accessor_order: [name, value]
properties:
name:
include: false
value:
include: false
virtual_properties:
getName:
serialized_name: name
exp: "object.isVisible() ? object.getName() : null"
getValue:
serialized_name: value
exp: "object.isVisible() ? object.getValue() : null"

View File

@@ -1,21 +0,0 @@
App\Entity\ActivityRate:
exclusion_policy: All
custom_accessor_order: [id, rate, internalRate, isFixed, user]
properties:
id:
include: true
groups: [Default]
activity:
exclude: true
user:
include: true
groups: [Default]
rate:
include: true
groups: [Default]
internalRate:
include: true
groups: [Default]
isFixed:
include: true
groups: [Default]

View File

@@ -1,68 +0,0 @@
App\Entity\Customer:
exclusion_policy: All
custom_accessor_order: [id, name, number, comment, visible, company, contact, address, country, currency, phone, fax, mobile, email, homepage, timezone, color, budget, timeBudget, metaFields, teams]
properties:
id:
include: true
name:
include: true
number:
include: true
groups: [Entity]
comment:
include: true
groups: [Entity]
visible:
include: true
budget:
include: true
groups: [Entity]
timeBudget:
include: true
groups: [Entity]
company:
include: true
groups: [Entity]
contact:
include: true
groups: [Entity]
address:
include: true
groups: [Entity]
country:
include: true
groups: [Entity]
currency:
include: true
groups: [Entity]
phone:
include: true
groups: [Entity]
fax:
include: true
groups: [Entity]
mobile:
include: true
groups: [Entity]
email:
include: true
groups: [Entity]
homepage:
include: true
groups: [Entity]
timezone:
include: true
groups: [Entity]
color:
include: true
metaFields:
exclude: true
teams:
include: true
groups: [Customer]
virtual_properties:
getMetaFields:
serialized_name: metaFields
exp: "object.getVisibleMetaFields()"
type: array<App\Entity\CustomerMeta>
groups: [Default]

View File

@@ -1,15 +0,0 @@
App\Entity\CustomerMeta:
exclusion_policy: All
custom_accessor_order: [name, value]
properties:
name:
include: false
value:
include: false
virtual_properties:
getName:
serialized_name: name
exp: "object.isVisible() ? object.getName() : null"
getValue:
serialized_name: value
exp: "object.isVisible() ? object.getValue() : null"

View File

@@ -1,21 +0,0 @@
App\Entity\CustomerRate:
exclusion_policy: All
custom_accessor_order: [id, rate, internalRate, isFixed, user]
properties:
id:
include: true
groups: [Default]
customer:
exclude: true
user:
include: true
groups: [Default]
rate:
include: true
groups: [Default]
internalRate:
include: true
groups: [Default]
isFixed:
include: true
groups: [Default]

View File

@@ -1,56 +0,0 @@
App\Entity\Project:
exclusion_policy: All
custom_accessor_order: [id, name, comment, visible, orderNumber, orderDate, customer, start, end, color, budget, timeBudget, metaFields, parentTitle, teams]
properties:
id:
include: true
name:
include: true
comment:
include: true
groups: [Entity]
visible:
include: true
budget:
include: true
groups: [Entity]
timeBudget:
include: true
groups: [Entity]
orderNumber:
include: true
groups: [Entity]
orderDate:
include: true
groups: [Entity]
start:
include: true
groups: [Project]
end:
include: true
groups: [Project]
customer:
groups: [Subresource]
color:
include: true
metaFields:
exclude: true
teams:
include: true
groups: [Project]
virtual_properties:
parentTitle:
serialized_name: parentTitle
include: true
exp: "object.getCustomer() === null ? null : object.getCustomer().getName()"
groups: [Default]
getCustomer:
serialized_name: customer
exp: "object.getCustomer() === null ? null : object.getCustomer().getId()"
type: integer
groups: [Entity, Collection]
getMetaFields:
serialized_name: metaFields
exp: "object.getVisibleMetaFields()"
type: array<App\Entity\ProjectMeta>
groups: [Default]

View File

@@ -1,15 +0,0 @@
App\Entity\ProjectMeta:
exclusion_policy: All
custom_accessor_order: [name, value]
properties:
name:
include: false
value:
include: false
virtual_properties:
getName:
serialized_name: name
exp: "object.isVisible() ? object.getName() : null"
getValue:
serialized_name: value
exp: "object.isVisible() ? object.getValue() : null"

View File

@@ -1,21 +0,0 @@
App\Entity\ProjectRate:
exclusion_policy: All
custom_accessor_order: [id, rate, internalRate, isFixed, user]
properties:
id:
include: true
groups: [Default]
project:
exclude: true
user:
include: true
groups: [Default]
rate:
include: true
groups: [Default]
internalRate:
include: true
groups: [Default]
isFixed:
include: true
groups: [Default]

View File

@@ -1,12 +0,0 @@
App\Entity\Tag:
exclusion_policy: All
custom_accessor_order: [id, name, color]
properties:
id:
include: true
name:
include: true
color:
include: true
timesheets:
exclude: true

View File

@@ -1,20 +0,0 @@
App\Entity\Team:
exclusion_policy: All
custom_accessor_order: [id, name, teamlead, users, customers, projects]
properties:
id:
include: true
name:
include: true
teamlead:
include: true
groups: [Team_Entity]
users:
include: true
groups: [Team_Entity]
customers:
include: true
groups: [Team_Entity]
projects:
include: true
groups: [Team_Entity]

View File

@@ -1,67 +0,0 @@
App\Entity\Timesheet:
exclusion_policy: All
custom_accessor_order: [id, begin, end, duration, rate, activity, project, user, description, fixedRate, hourlyRate, tags, exported, metaFields]
properties:
id:
include: true
begin:
exclude: true
end:
exclude: true
duration:
include: true
description:
include: true
rate:
include: true
internalRate:
include: true
fixedRate:
include: true
groups: [Entity]
hourlyRate:
include: true
groups: [Entity]
exported:
include: true
groups: [Entity]
activity:
groups: [Subresource]
project:
groups: [Subresource]
user:
exclude: true
metaFields:
exclude: true
virtual_properties:
getBegin:
serialized_name: begin
exp: "object.getBegin() === null ? null : object.getBegin()"
type: DateTime
getEnd:
serialized_name: end
exp: "object.getEnd() === null ? null : object.getEnd()"
type: DateTime
getActivity:
serialized_name: activity
exp: "object.getActivity() === null ? null : object.getActivity().getId()"
type: integer
groups: [Entity, Collection]
getProject:
serialized_name: project
exp: "object.getProject() === null ? null : object.getProject().getId()"
type: integer
groups: [Entity, Collection]
getUser:
serialized_name: user
exp: "object.getUser().getId()"
type: integer
getTags:
serialized_name: tags
exp: "object.getTagsAsArray()"
type: array<string>
getMetaFields:
serialized_name: metaFields
exp: "object.getVisibleMetaFields()"
type: array<App\Entity\TimesheetMeta>
groups: [Default]

View File

@@ -1,15 +0,0 @@
App\Entity\TimesheetMeta:
exclusion_policy: All
custom_accessor_order: [name, value]
properties:
name:
include: false
value:
include: false
virtual_properties:
getName:
serialized_name: name
exp: "object.isVisible() ? object.getName() : null"
getValue:
serialized_name: value
exp: "object.isVisible() ? object.getValue() : null"

View File

@@ -1,30 +0,0 @@
App\Entity\User:
exclusion_policy: All
custom_accessor_order: [id, alias, title, avatar, language, timezone, teams]
properties:
id:
include: true
groups: [Default]
alias:
include: true
groups: [Default]
title:
include: true
groups: [User_Entity]
avatar:
include: true
groups: [User_Entity]
teams:
include: true
groups: [User_Entity]
virtual_properties:
getLanguage:
serialized_name: language
exp: "object.getPreferenceValue('language') === null ? null : object.getPreferenceValue('language')"
type: string
groups: [User_Entity]
getTimezone:
serialized_name: timezone
exp: "object.getPreferenceValue('timezone') === null ? null : object.getPreferenceValue('timezone')"
type: string
groups: [User_Entity]