001// -------------------------------------------------------------------------------- 002// Copyright 2002-2026 Echo Three, LLC 003// 004// Licensed under the Apache License, Version 2.0 (the "License"); 005// you may not use this file except in compliance with the License. 006// You may obtain a copy of the License at 007// 008// http://www.apache.org/licenses/LICENSE-2.0 009// 010// Unless required by applicable law or agreed to in writing, software 011// distributed under the License is distributed on an "AS IS" BASIS, 012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013// See the License for the specific language governing permissions and 014// limitations under the License. 015// -------------------------------------------------------------------------------- 016 017package com.echothree.control.user.employee.common; 018 019import com.echothree.control.user.employee.common.form.*; 020import com.echothree.control.user.employee.common.result.*; 021import com.echothree.model.data.user.common.pk.UserVisitPK; 022import com.echothree.util.common.command.CommandResult; 023import com.echothree.util.common.command.VoidResult; 024 025public interface EmployeeService 026 extends EmployeeForms { 027 028 // ------------------------------------------------------------------------- 029 // Responsibility Types 030 // ------------------------------------------------------------------------- 031 032 CommandResult<VoidResult> createResponsibilityType(UserVisitPK userVisitPK, CreateResponsibilityTypeForm form); 033 034 CommandResult<GetResponsibilityTypesResult> getResponsibilityTypes(UserVisitPK userVisitPK, GetResponsibilityTypesForm form); 035 036 CommandResult<GetResponsibilityTypeResult> getResponsibilityType(UserVisitPK userVisitPK, GetResponsibilityTypeForm form); 037 038 CommandResult<GetResponsibilityTypeChoicesResult> getResponsibilityTypeChoices(UserVisitPK userVisitPK, GetResponsibilityTypeChoicesForm form); 039 040 CommandResult<VoidResult> setDefaultResponsibilityType(UserVisitPK userVisitPK, SetDefaultResponsibilityTypeForm form); 041 042 CommandResult<EditResponsibilityTypeResult> editResponsibilityType(UserVisitPK userVisitPK, EditResponsibilityTypeForm form); 043 044 CommandResult<VoidResult> deleteResponsibilityType(UserVisitPK userVisitPK, DeleteResponsibilityTypeForm form); 045 046 // ------------------------------------------------------------------------- 047 // Responsibility Type Descriptions 048 // ------------------------------------------------------------------------- 049 050 CommandResult<VoidResult> createResponsibilityTypeDescription(UserVisitPK userVisitPK, CreateResponsibilityTypeDescriptionForm form); 051 052 CommandResult<GetResponsibilityTypeDescriptionsResult> getResponsibilityTypeDescriptions(UserVisitPK userVisitPK, GetResponsibilityTypeDescriptionsForm form); 053 054 CommandResult<EditResponsibilityTypeDescriptionResult> editResponsibilityTypeDescription(UserVisitPK userVisitPK, EditResponsibilityTypeDescriptionForm form); 055 056 CommandResult<VoidResult> deleteResponsibilityTypeDescription(UserVisitPK userVisitPK, DeleteResponsibilityTypeDescriptionForm form); 057 058 // ------------------------------------------------------------------------- 059 // Skill Types 060 // ------------------------------------------------------------------------- 061 062 CommandResult<VoidResult> createSkillType(UserVisitPK userVisitPK, CreateSkillTypeForm form); 063 064 CommandResult<GetSkillTypesResult> getSkillTypes(UserVisitPK userVisitPK, GetSkillTypesForm form); 065 066 CommandResult<GetSkillTypeResult> getSkillType(UserVisitPK userVisitPK, GetSkillTypeForm form); 067 068 CommandResult<GetSkillTypeChoicesResult> getSkillTypeChoices(UserVisitPK userVisitPK, GetSkillTypeChoicesForm form); 069 070 CommandResult<VoidResult> setDefaultSkillType(UserVisitPK userVisitPK, SetDefaultSkillTypeForm form); 071 072 CommandResult<EditSkillTypeResult> editSkillType(UserVisitPK userVisitPK, EditSkillTypeForm form); 073 074 CommandResult<VoidResult> deleteSkillType(UserVisitPK userVisitPK, DeleteSkillTypeForm form); 075 076 // ------------------------------------------------------------------------- 077 // Skill Type Descriptions 078 // ------------------------------------------------------------------------- 079 080 CommandResult<VoidResult> createSkillTypeDescription(UserVisitPK userVisitPK, CreateSkillTypeDescriptionForm form); 081 082 CommandResult<GetSkillTypeDescriptionsResult> getSkillTypeDescriptions(UserVisitPK userVisitPK, GetSkillTypeDescriptionsForm form); 083 084 CommandResult<EditSkillTypeDescriptionResult> editSkillTypeDescription(UserVisitPK userVisitPK, EditSkillTypeDescriptionForm form); 085 086 CommandResult<VoidResult> deleteSkillTypeDescription(UserVisitPK userVisitPK, DeleteSkillTypeDescriptionForm form); 087 088 // ------------------------------------------------------------------------- 089 // Leave Types 090 // ------------------------------------------------------------------------- 091 092 CommandResult<VoidResult> createLeaveType(UserVisitPK userVisitPK, CreateLeaveTypeForm form); 093 094 CommandResult<GetLeaveTypesResult> getLeaveTypes(UserVisitPK userVisitPK, GetLeaveTypesForm form); 095 096 CommandResult<GetLeaveTypeResult> getLeaveType(UserVisitPK userVisitPK, GetLeaveTypeForm form); 097 098 CommandResult<GetLeaveTypeChoicesResult> getLeaveTypeChoices(UserVisitPK userVisitPK, GetLeaveTypeChoicesForm form); 099 100 CommandResult<VoidResult> setDefaultLeaveType(UserVisitPK userVisitPK, SetDefaultLeaveTypeForm form); 101 102 CommandResult<EditLeaveTypeResult> editLeaveType(UserVisitPK userVisitPK, EditLeaveTypeForm form); 103 104 CommandResult<VoidResult> deleteLeaveType(UserVisitPK userVisitPK, DeleteLeaveTypeForm form); 105 106 // ------------------------------------------------------------------------- 107 // Leave Type Descriptions 108 // ------------------------------------------------------------------------- 109 110 CommandResult<VoidResult> createLeaveTypeDescription(UserVisitPK userVisitPK, CreateLeaveTypeDescriptionForm form); 111 112 CommandResult<GetLeaveTypeDescriptionResult> getLeaveTypeDescription(UserVisitPK userVisitPK, GetLeaveTypeDescriptionForm form); 113 114 CommandResult<GetLeaveTypeDescriptionsResult> getLeaveTypeDescriptions(UserVisitPK userVisitPK, GetLeaveTypeDescriptionsForm form); 115 116 CommandResult<EditLeaveTypeDescriptionResult> editLeaveTypeDescription(UserVisitPK userVisitPK, EditLeaveTypeDescriptionForm form); 117 118 CommandResult<VoidResult> deleteLeaveTypeDescription(UserVisitPK userVisitPK, DeleteLeaveTypeDescriptionForm form); 119 120 // ------------------------------------------------------------------------- 121 // Leave Reasons 122 // ------------------------------------------------------------------------- 123 124 CommandResult<VoidResult> createLeaveReason(UserVisitPK userVisitPK, CreateLeaveReasonForm form); 125 126 CommandResult<GetLeaveReasonsResult> getLeaveReasons(UserVisitPK userVisitPK, GetLeaveReasonsForm form); 127 128 CommandResult<GetLeaveReasonResult> getLeaveReason(UserVisitPK userVisitPK, GetLeaveReasonForm form); 129 130 CommandResult<GetLeaveReasonChoicesResult> getLeaveReasonChoices(UserVisitPK userVisitPK, GetLeaveReasonChoicesForm form); 131 132 CommandResult<VoidResult> setDefaultLeaveReason(UserVisitPK userVisitPK, SetDefaultLeaveReasonForm form); 133 134 CommandResult<EditLeaveReasonResult> editLeaveReason(UserVisitPK userVisitPK, EditLeaveReasonForm form); 135 136 CommandResult<VoidResult> deleteLeaveReason(UserVisitPK userVisitPK, DeleteLeaveReasonForm form); 137 138 // ------------------------------------------------------------------------- 139 // Leave Reason Descriptions 140 // ------------------------------------------------------------------------- 141 142 CommandResult<VoidResult> createLeaveReasonDescription(UserVisitPK userVisitPK, CreateLeaveReasonDescriptionForm form); 143 144 CommandResult<GetLeaveReasonDescriptionResult> getLeaveReasonDescription(UserVisitPK userVisitPK, GetLeaveReasonDescriptionForm form); 145 146 CommandResult<GetLeaveReasonDescriptionsResult> getLeaveReasonDescriptions(UserVisitPK userVisitPK, GetLeaveReasonDescriptionsForm form); 147 148 CommandResult<EditLeaveReasonDescriptionResult> editLeaveReasonDescription(UserVisitPK userVisitPK, EditLeaveReasonDescriptionForm form); 149 150 CommandResult<VoidResult> deleteLeaveReasonDescription(UserVisitPK userVisitPK, DeleteLeaveReasonDescriptionForm form); 151 152 // ------------------------------------------------------------------------- 153 // Leaves 154 // ------------------------------------------------------------------------- 155 156 CommandResult<VoidResult> createLeave(UserVisitPK userVisitPK, CreateLeaveForm form); 157 158 CommandResult<GetLeaveStatusChoicesResult> getLeaveStatusChoices(UserVisitPK userVisitPK, GetLeaveStatusChoicesForm form); 159 160 CommandResult<SetLeaveStatusResult> setLeaveStatus(UserVisitPK userVisitPK, SetLeaveStatusForm form); 161 162 CommandResult<GetLeavesResult> getLeaves(UserVisitPK userVisitPK, GetLeavesForm form); 163 164 CommandResult<GetLeaveResult> getLeave(UserVisitPK userVisitPK, GetLeaveForm form); 165 166 CommandResult<EditLeaveResult> editLeave(UserVisitPK userVisitPK, EditLeaveForm form); 167 168 CommandResult<VoidResult> deleteLeave(UserVisitPK userVisitPK, DeleteLeaveForm form); 169 170 // ------------------------------------------------------------------------- 171 // Termination Reasons 172 // ------------------------------------------------------------------------- 173 174 CommandResult<VoidResult> createTerminationReason(UserVisitPK userVisitPK, CreateTerminationReasonForm form); 175 176 CommandResult<GetTerminationReasonsResult> getTerminationReasons(UserVisitPK userVisitPK, GetTerminationReasonsForm form); 177 178 CommandResult<GetTerminationReasonResult> getTerminationReason(UserVisitPK userVisitPK, GetTerminationReasonForm form); 179 180 CommandResult<GetTerminationReasonChoicesResult> getTerminationReasonChoices(UserVisitPK userVisitPK, GetTerminationReasonChoicesForm form); 181 182 CommandResult<VoidResult> setDefaultTerminationReason(UserVisitPK userVisitPK, SetDefaultTerminationReasonForm form); 183 184 CommandResult<EditTerminationReasonResult> editTerminationReason(UserVisitPK userVisitPK, EditTerminationReasonForm form); 185 186 CommandResult<VoidResult> deleteTerminationReason(UserVisitPK userVisitPK, DeleteTerminationReasonForm form); 187 188 // ------------------------------------------------------------------------- 189 // Termination Reason Descriptions 190 // ------------------------------------------------------------------------- 191 192 CommandResult<VoidResult> createTerminationReasonDescription(UserVisitPK userVisitPK, CreateTerminationReasonDescriptionForm form); 193 194 CommandResult<GetTerminationReasonDescriptionsResult> getTerminationReasonDescriptions(UserVisitPK userVisitPK, GetTerminationReasonDescriptionsForm form); 195 196 CommandResult<EditTerminationReasonDescriptionResult> editTerminationReasonDescription(UserVisitPK userVisitPK, EditTerminationReasonDescriptionForm form); 197 198 CommandResult<VoidResult> deleteTerminationReasonDescription(UserVisitPK userVisitPK, DeleteTerminationReasonDescriptionForm form); 199 200 // ------------------------------------------------------------------------- 201 // Termination Types 202 // ------------------------------------------------------------------------- 203 204 CommandResult<VoidResult> createTerminationType(UserVisitPK userVisitPK, CreateTerminationTypeForm form); 205 206 CommandResult<GetTerminationTypesResult> getTerminationTypes(UserVisitPK userVisitPK, GetTerminationTypesForm form); 207 208 CommandResult<GetTerminationTypeResult> getTerminationType(UserVisitPK userVisitPK, GetTerminationTypeForm form); 209 210 CommandResult<GetTerminationTypeChoicesResult> getTerminationTypeChoices(UserVisitPK userVisitPK, GetTerminationTypeChoicesForm form); 211 212 CommandResult<VoidResult> setDefaultTerminationType(UserVisitPK userVisitPK, SetDefaultTerminationTypeForm form); 213 214 CommandResult<EditTerminationTypeResult> editTerminationType(UserVisitPK userVisitPK, EditTerminationTypeForm form); 215 216 CommandResult<VoidResult> deleteTerminationType(UserVisitPK userVisitPK, DeleteTerminationTypeForm form); 217 218 // ------------------------------------------------------------------------- 219 // Termination Type Descriptions 220 // ------------------------------------------------------------------------- 221 222 CommandResult<VoidResult> createTerminationTypeDescription(UserVisitPK userVisitPK, CreateTerminationTypeDescriptionForm form); 223 224 CommandResult<GetTerminationTypeDescriptionsResult> getTerminationTypeDescriptions(UserVisitPK userVisitPK, GetTerminationTypeDescriptionsForm form); 225 226 CommandResult<EditTerminationTypeDescriptionResult> editTerminationTypeDescription(UserVisitPK userVisitPK, EditTerminationTypeDescriptionForm form); 227 228 CommandResult<VoidResult> deleteTerminationTypeDescription(UserVisitPK userVisitPK, DeleteTerminationTypeDescriptionForm form); 229 230 // ------------------------------------------------------------------------- 231 // Employments 232 // ------------------------------------------------------------------------- 233 234 CommandResult<VoidResult> createEmployment(UserVisitPK userVisitPK, CreateEmploymentForm form); 235 236 CommandResult<GetEmploymentsResult> getEmployments(UserVisitPK userVisitPK, GetEmploymentsForm form); 237 238 CommandResult<GetEmploymentResult> getEmployment(UserVisitPK userVisitPK, GetEmploymentForm form); 239 240 CommandResult<EditEmploymentResult> editEmployment(UserVisitPK userVisitPK, EditEmploymentForm form); 241 242 CommandResult<VoidResult> deleteEmployment(UserVisitPK userVisitPK, DeleteEmploymentForm form); 243 244 // ------------------------------------------------------------------------- 245 // Party Responsibilities 246 // ------------------------------------------------------------------------- 247 248 CommandResult<VoidResult> createPartyResponsibility(UserVisitPK userVisitPK, CreatePartyResponsibilityForm form); 249 250 CommandResult<GetPartyResponsibilitiesResult> getPartyResponsibilities(UserVisitPK userVisitPK, GetPartyResponsibilitiesForm form); 251 252 CommandResult<VoidResult> deletePartyResponsibility(UserVisitPK userVisitPK, DeletePartyResponsibilityForm form); 253 254 // ------------------------------------------------------------------------- 255 // Party Skills 256 // ------------------------------------------------------------------------- 257 258 CommandResult<VoidResult> createPartySkill(UserVisitPK userVisitPK, CreatePartySkillForm form); 259 260 CommandResult<GetPartySkillsResult> getPartySkills(UserVisitPK userVisitPK, GetPartySkillsForm form); 261 262 CommandResult<VoidResult> deletePartySkill(UserVisitPK userVisitPK, DeletePartySkillForm form); 263 264 // -------------------------------------------------------------------------------- 265 // Employee Types 266 // -------------------------------------------------------------------------------- 267 268 CommandResult<VoidResult> createEmployeeType(UserVisitPK userVisitPK, CreateEmployeeTypeForm form); 269 270 CommandResult<GetEmployeeTypeChoicesResult> getEmployeeTypeChoices(UserVisitPK userVisitPK, GetEmployeeTypeChoicesForm form); 271 272 CommandResult<GetEmployeeTypeResult> getEmployeeType(UserVisitPK userVisitPK, GetEmployeeTypeForm form); 273 274 CommandResult<GetEmployeeTypesResult> getEmployeeTypes(UserVisitPK userVisitPK, GetEmployeeTypesForm form); 275 276 CommandResult<VoidResult> setDefaultEmployeeType(UserVisitPK userVisitPK, SetDefaultEmployeeTypeForm form); 277 278 CommandResult<EditEmployeeTypeResult> editEmployeeType(UserVisitPK userVisitPK, EditEmployeeTypeForm form); 279 280 CommandResult<VoidResult> deleteEmployeeType(UserVisitPK userVisitPK, DeleteEmployeeTypeForm form); 281 282 // -------------------------------------------------------------------------------- 283 // Employee Type Descriptions 284 // -------------------------------------------------------------------------------- 285 286 CommandResult<VoidResult> createEmployeeTypeDescription(UserVisitPK userVisitPK, CreateEmployeeTypeDescriptionForm form); 287 288 CommandResult<GetEmployeeTypeDescriptionsResult> getEmployeeTypeDescriptions(UserVisitPK userVisitPK, GetEmployeeTypeDescriptionsForm form); 289 290 CommandResult<EditEmployeeTypeDescriptionResult> editEmployeeTypeDescription(UserVisitPK userVisitPK, EditEmployeeTypeDescriptionForm form); 291 292 CommandResult<VoidResult> deleteEmployeeTypeDescription(UserVisitPK userVisitPK, DeleteEmployeeTypeDescriptionForm form); 293 294 // ------------------------------------------------------------------------- 295 // Employees 296 // ------------------------------------------------------------------------- 297 298 CommandResult<GetEmployeeResult> getEmployee(UserVisitPK userVisitPK, GetEmployeeForm form); 299 300 // ------------------------------------------------------------------------- 301 // Testing 302 // ------------------------------------------------------------------------- 303 304 String ping(); 305 306}