GDMN-Salary (Руководство разработчика)
(→Классы, хранящиеся в клиентской БД) |
|||
| Строка 68: | Строка 68: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
| eventTypeIndex | | eventTypeIndex | ||
| − | | | + | | int |
| − | | Тип события дня | + | | Тип события дня DayEventModel.EventType |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|- align="center" | |- align="center" | ||
| timeBegin | | timeBegin | ||
| Строка 88: | Строка 80: | ||
|- align="center" | |- align="center" | ||
| timeEnd | | timeEnd | ||
| − | | Date | + | | Date |
| | | | ||
|- align="center" | |- align="center" | ||
| hours | | hours | ||
| − | | double | + | | double |
| | | | ||
|- align="center" | |- align="center" | ||
| Строка 132: | Строка 124: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
| Строка 151: | Строка 143: | ||
| | | | ||
|- align="center" | |- align="center" | ||
| − | |||
| listNumber | | listNumber | ||
| + | | String | ||
| | | | ||
|} | |} | ||
| Строка 162: | Строка 154: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
| Строка 356: | Строка 348: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
| − | | | + | | date |
| + | | Date | ||
| + | | | ||
| + | |- align="center" | ||
| + | | name | ||
| String | | String | ||
| + | | | ||
| + | |- align="center" | ||
| + | | sum | ||
| + | | double | ||
| | | | ||
| + | |- align="center" | ||
| + | | code | ||
| + | | int | ||
| + | | | ||
| + | |} | ||
| + | '''Класс PayslipDeductionModel''' | ||
| + | {|border="1" cellpadding="2" cellspacing="0" style="border-collapse:collapse;" | ||
| + | !style="background:#ffdead;"| Наименование | ||
| + | !style="background:#ffdead;"| Тип данных | ||
| + | !style="background:#ffdead;"| Описание | ||
| + | |- align="center" | ||
| + | | uid | ||
| + | | int | ||
| + | | PK записи | ||
|- align="center" | |- align="center" | ||
| date | | date | ||
| Строка 369: | Строка 383: | ||
| name | | name | ||
| String | | String | ||
| − | | | + | | |
| + | ||- align="center" | ||
| + | | deductionKind | ||
| + | | String | ||
| + | | вид вычета | ||
|- align="center" | |- align="center" | ||
| sum | | sum | ||
| Строка 379: | Строка 397: | ||
| | | | ||
|} | |} | ||
| − | |||
| Строка 389: | Строка 406: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
| Строка 395: | Строка 412: | ||
| int | | int | ||
| PayslipItemModel.Category | | PayslipItemModel.Category | ||
| − | |||
| − | |||
| − | |||
| − | |||
|- align="center" | |- align="center" | ||
| date | | date | ||
| Строка 407: | Строка 420: | ||
| String | | String | ||
| | | | ||
| − | |||
| − | |||
| − | |||
| − | |||
|- align="center" | |- align="center" | ||
| code | | code | ||
| Строка 431: | Строка 440: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
| Строка 440: | Строка 449: | ||
| payDate | | payDate | ||
| Date | | Date | ||
| − | |||
| − | |||
| − | |||
| − | |||
| | | | ||
|- align="center" | |- align="center" | ||
| Строка 453: | Строка 458: | ||
| String | | String | ||
| | | | ||
| + | |- align="center" | ||
| + | | isFinal | ||
| + | | boolean | ||
| + | | | ||
|- align="center" | |- align="center" | ||
| position | | position | ||
| Строка 509: | Строка 518: | ||
| int | | int | ||
| PK записи | | PK записи | ||
| + | |- align="center" | ||
| + | | scheme | ||
| + | | String | ||
| + | | | ||
|- align="center" | |- align="center" | ||
| addressServer | | addressServer | ||
| Строка 535: | Строка 548: | ||
|- align="center" | |- align="center" | ||
| permits | | permits | ||
| + | | boolean | ||
| + | | | ||
| + | |- align="center" | ||
| + | | lostMode | ||
| boolean | | boolean | ||
| | | | ||
| Строка 545: | Строка 562: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
| Строка 579: | Строка 596: | ||
|- align="center" | |- align="center" | ||
| uid | | uid | ||
| − | | | + | | int |
| PK записи | | PK записи | ||
|- align="center" | |- align="center" | ||
Версия 18:38, 21 февраля 2016
Web-server API
Запрос к серверу ?token=REQUEST_PARAM_TOKEN & param=value ...
ip_address app_version_code
auth_key для всех кроме авторизации
header
Content-Type: application/json; charset=utf-8
объекты передаются в формате json
токены прописаны в скрипте...
Ответ сервера
{"cl":"SyncHeader", "params":{"f1":"v1","f2":"v2","f3":"v3"}} {}
client timeouts:
ConnectTimeout - 60 сек ReadTimeout - 60 с
RequestMethod: GET
RealmSyncObject {
String cl - не null List<Link> master - может быть null List<Link> link - может быть null <T extends RealmObject> obj - не null boolean deleted
}
Link {
String cl - не null String uid - не null String field - не null
}
Пример данных для EmployeeModel, PayslipModel и PayslipItemModel:
{cl:"EmployeeModel", obj:{uid:"123", ...}}
{cl:"PayslipModel", link:[{cl:"EmployeeModel", uid:"123", field:"employee"}], obj:{uid:"456", ...}}
{cl:"PayslipItemModel", master:[{cl:"PayslipModel", uid:"456", field:"items"}], obj:{...}}
Пример данных для EmployeeModel, TimesheetModel, WorkscheduleModel и DayEventModel:
{cl:"EmployeeModel", obj:{uid:"123", ...}}
{cl:"TimesheetModel", link:[{cl:"EmployeeModel", uid:"123", field:"employee"}], obj:{uid:"456", ...}}
{cl:"WorkscheduleModel", link:[{cl:"EmployeeModel", uid:"123", field:"employee"}], obj:{uid:"789", ...}}
{cl:"DayEventModel", master:[{cl:"TimesheetModel", uid:"456", field:"events"}, {cl:"WorkscheduleModel", uid:"789", field:"events"}], obj:{...}}
Пример удаления записи:
{cl:"EmployeeModel", delete:"true", obj:{uid:"123"}}
Классы, хранящиеся в клиентской БД
Указаны лишь те поля, которые связаны с БД
Класс DayEventModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| eventTypeIndex | int | Тип события дня DayEventModel.EventType |
| timeBegin | Date | |
| timeEnd | Date | |
| hours | double | |
| description | String | |
| isAllDay | boolean |
Класс DeviceInfoModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| phoneNumber | String | |
| deviceId | String | |
| deviceModel | String |
Класс EmployeeModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| firstname | String | |
| surname | String | |
| middlename | String | |
| passportId | String | |
| listNumber | String |
Класс ExRatesMonthlyModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| onDate | Date | |
| usdRate | double | |
| eurRate | double |
Класс GdMsgAbsenceModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| typeIndex | int | GdMsgAbsenceModel.Type |
| dateBegin | Date | |
| dateEnd | Date | |
| requestGdMsgModel | GdMsgModel | для серверных сообщений - сообщение на которое ответ |
Класс GdMsgIncomeModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| dateBegin | Date | |
| dateEnd | Date | |
| requestGdMsgModel | GdMsgModel | для серверных сообщений - сообщение на которое ответ |
Класс GdMsgInfoModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| requestGdMsgModel | GdMsgModel | для серверных сообщений - сообщение на которое ответ |
Класс GdMsgModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| requestStatusIndex | int | GdMsgModel.RequestStatus |
| subjectIndex | int | GdMsgModel.Subject |
| senderIndex | int | GdMsgModel.Sender |
| isUnread | boolean | |
| timestamp | Date | |
| msg | String | |
| comment | String | |
| gdMsgString | String | |
| gdMsgAbsenceModel | GdMsgAbsenceModel | |
| gdMsgIncomeModel | GdMsgIncomeModel | |
| gdMsgVacationModel | GdMsgVacationModel | |
| gdMsgInfoModel | GdMsgInfoModel | |
| gdMsgVacationInfoModel | GdMsgVacationInfoModel |
Класс GdMsgVacationInfoModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| dateBegin | Date | |
| dateEnd | Date | |
| requestGdMsgModel | GdMsgModel | для серверных сообщений - сообщение на которое ответ |
Класс GdMsgVacationModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| typeIndex | int | GdMsgVacationModel.Type |
| dateBegin | Date | |
| dateEnd | Date | |
| requestGdMsgModel | GdMsgModel | для серверных сообщений - сообщение на которое ответ |
Класс PayslipBenefitModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| date | Date | |
| name | String | |
| sum | double | |
| code | int |
Класс PayslipDeductionModel
| Наименование | Тип данных | Описание | ||||
|---|---|---|---|---|---|---|
| uid | int | PK записи | ||||
| date | Date | |||||
| name | String | - align="center" | deductionKind | String | вид вычета | |
| sum | double | |||||
| code | int |
Класс PayslipItemModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| categoryIndex | int | PayslipItemModel.Category |
| date | Date | |
| name | String | |
| code | int | |
| debit | double | |
| credit | double |
Класс PayslipModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| employeeKey | String | |
| payDate | Date | |
| employee | EmployeeModel | |
| department | String | |
| isFinal | boolean | |
| position | String | |
| salary | double | |
| hourRate | double | |
| dependents | int | |
| items | RealmList<PayslipItemModel> | Начисления, Удержания, Налоги |
| benefits | RealmList<PayslipBenefitModel> | Льготы |
| deductions | RealmList<PayslipDeductionModel> | Вычеты |
Класс SyncGdMsgStateModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | String | PK записи |
| statusIndex | int | UpdatedStatus {READED, DELETED} |
| gdMsgKey | int |
Класс SyncMetaDataModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| scheme | String | |
| addressServer | String | |
| authKey | String | |
| lastSyncDate | String | |
| lastSyncMsgDate | String | |
| gcmRegistrationId | String | |
| inviteCode | String | |
| permits | boolean | |
| lostMode | boolean |
Класс TimesheetModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| dayTypeIndex | int | |
| employee | EmployeeModel | |
| description | String | |
| hours | double | |
| date | Date | |
| events | RealmList<DayEventModel> |
Класс WorkScheduleModel
| Наименование | Тип данных | Описание |
|---|---|---|
| uid | int | PK записи |
| dayTypeIndex | int | |
| employee | EmployeeModel | |
| description | String | |
| hours | double | |
| date | Date | |
| events | RealmList<DayEventModel> |