Roland Häder [Thu, 10 Oct 2019 20:46:53 +0000 (22:46 +0200)]
Continued:
- renamed JobPosition to HireableJobPosition (tpzo in first syllable) and added
methods from jjobs-core as this was redundant anyway (and didn't work in the
end)
- added JobPositionStatus (enum) from jjobs-core
Roland Häder [Thu, 13 Dec 2018 16:03:47 +0000 (17:03 +0100)]
Continued:
- if all 3 employee's relations are NULL, throw an NPE: branch office, personal
data and headquarter
- basic company data is always required
Roland Häder [Mon, 19 Mar 2018 21:59:06 +0000 (22:59 +0100)]
Continued:
- Objects.equals() is an overdose here, as a possible null-reference has
already been checked before
- CoreNumberUtils was a bad name, SafeNumberUtils is maybe better?
Roland Häder [Mon, 19 Mar 2018 00:05:08 +0000 (01:05 +0100)]
Continued:
- jcore-utils was splitted out from jcoreee to reduce project centralization
(means you have to that whole fat bunch of classes but only use a few)
- removed no longer used jcoreee.jar
Roland Häder [Sun, 18 Mar 2018 23:35:01 +0000 (00:35 +0100)]
Continued:
- added new depdendency Apache Commons Lang3
- used their StringUtils class for null-safe comparisons
- but their NumberUtils class' compare() methods are not null-safe, so have to
take own CoreNumberUtils class instead.
Roland Häder [Sun, 18 Mar 2018 22:09:43 +0000 (23:09 +0100)]
Continued:
- ops, need to compare basic data and contact employee of branch office before
comparing the whole address
- branch office number being compared before contact employee is okay
Roland Häder [Thu, 15 Mar 2018 23:36:19 +0000 (00:36 +0100)]
Continued:
- added new dependency to jcoreee.jar
- implemented Comparable interface in all entities
- rewrote to use Comparables.checkAll()
- check for null-pointer reference
- documented thrown NPE
- added utils class for job positions
Roland Häder [Sun, 5 Nov 2017 16:35:20 +0000 (17:35 +0100)]
Continued:
- also need to check branch office or headquarter when checking if same
department, need to check department's branch office/headquarter only when one
is at least not null
- also compare last house number and extension
- sorted members
Roland Häder [Fri, 3 Nov 2017 21:41:05 +0000 (22:41 +0100)]
Continued:
- added exception for already added employees
- fixed serial numbers, must be globally unique
- sorted imports
- added utilities class for employees
Roland Häder [Thu, 2 Nov 2017 19:45:12 +0000 (20:45 +0100)]
Continued:
- renamed all occurrences of headquarters to headquarter as it was confusing on
many places, if singular or plural was used. Only Headquarters for utilities
class remain (surely).
Roland Häder [Wed, 1 Nov 2017 21:50:38 +0000 (22:50 +0100)]
Continued:
- removed Search<Entity>ById as this is considered as performance-reducing. The
reason is, that the EJB will then be more "asked" for single entries only.
- added first named query AllHeadquarters
Roland Häder [Wed, 1 Nov 2017 21:12:33 +0000 (22:12 +0100)]
Continued:
- added default constructor (required for EJB container)
- added constructor with all required fields
- added email address for headquarters
- added utils class for headquarters
- renamed branch_id to headquarters_id (copy-paste mistake)
Roland Häder [Wed, 1 Nov 2017 20:58:38 +0000 (21:58 +0100)]
Continued:
- had to rename Headquarters again, to Headquarter to make room for a tools
class, it is common to name them <Entity>s and Headquarterss is not correct
Roland Häder [Wed, 1 Nov 2017 20:21:18 +0000 (21:21 +0100)]
Continued:
- removed suffix Data, just Headquarters is okay here, not for basic data
entity, of course
- renamed exception, only company headquarters will exist
- added checked exception which is being thrown when headquarters with same
address already exists
Roland Häder [Mon, 16 Oct 2017 18:28:23 +0000 (20:28 +0200)]
Continued:
- no other employees than company/business employees will be there ...
- renamed Employee interface to a much nicer Employable name
- renamed CompanyDepartment -> BusinessDepartment as there will be other kinds
of departments (e.g. fire/police)
- renamed more company -> business, but not all
Roland Häder [Sat, 14 Oct 2017 12:59:58 +0000 (14:59 +0200)]
Continued:
- need to change CascadeType to ALL as this should be persisted and all others
- also changed back from ALL to REFRESH as the foreign entities do already exist
Roland Häder [Sat, 7 Oct 2017 22:17:52 +0000 (00:17 +0200)]
Continued (renaming-season has started):
- renamed OpeningTimes -> OpeningTime as it is a single entity anyway
- also renamed package opening_times -> opening_time
- add event for when an opening time has been added
Roland Häder [Sat, 7 Oct 2017 19:55:01 +0000 (21:55 +0200)]
Continued:
- added event when department has been added
- added exception for not-found opening times
- added utils class for departments
- fixed some tzpos here and there
- used REFRESH instead of ALL as else maybe the other entityos being duplicated
- added first 2 named queries for opening times
- renamed CompanyDepartment -> Department
Roland Häder [Sun, 24 Sep 2017 19:13:57 +0000 (21:13 +0200)]
Continued:
- user "owner" is no longer required for employee as it may not be available at
all times
- one opening-times line is maybe not enough as they may varry from day to day
Roland Häder [Sun, 24 Sep 2017 12:33:39 +0000 (14:33 +0200)]
Continued:
- branch offices may have an "owning employee" which is a personal who may own
one or more branch offices with e.g. franchise supermarkets
- they may also have separate opening times depending on local laws
Roland Häder [Wed, 20 Sep 2017 18:37:12 +0000 (20:37 +0200)]
Continued:
- need to have serial number unique accross project's JARs
- added named query SearchBranchOfficeById which searches for branch office
entity by it's primary key
Roland Häder [Sun, 10 Sep 2017 19:19:05 +0000 (21:19 +0200)]
Continued:
- renamed exceptions BusinessDataBlaException was to generic, it should be
BasicCompanyDataBlaException
- renamed BranchOfficeUtils -> BranchOffices as this is more common
- fixed imports
Roland Häder [Fri, 8 Sep 2017 23:22:59 +0000 (01:22 +0200)]
Continued:
- added utilities class for branch offices
- added event class/interface for branch offices being added
- added exception when a branch office has already been added
- renamed branchPhoneNumber -> branchLandLineNumber as everywhere is land-line
used
- sorted members
- added contructor CompanyBranchOffice() with all required fields and validated
parameters before setting them
- also need to add default constructor as the JPA requires it
- renamed companyDataId -> basicDataId
Roland Häder [Sun, 3 Sep 2017 22:54:42 +0000 (00:54 +0200)]
Continued:
- renamed branchCompanyContact -> branchCompany
- added new entity field/property "branchContactEmployee", an employee may act
as a contact person in this branch office
- added first named query for branch office entity: "AllBranchOffices"
- renamed package "branch" -> "branchoffice"
- added event for when an administrator has added basic company data
Roland Häder [Sat, 19 Aug 2017 18:33:19 +0000 (20:33 +0200)]
Continued:
- moved business (basic) data related exceptions to own package
- added exception when a company employee was not found
- some auto-formatting
Roland Häder [Thu, 27 Jul 2017 20:04:23 +0000 (22:04 +0200)]
Continued:
- renamed field where an employee is a contact person within the company
- added named query to search for entities based on primary key (id)
Roland Häder [Sun, 23 Jul 2017 16:53:05 +0000 (18:53 +0200)]
Continued a bit:
- also headquarters are maybe optional (unknown to the user)
- added initial named query which loads all basic business data
- legal status may be empty for self-employed persons (single-person companies)
Roland Häder [Sun, 23 Jul 2017 11:49:34 +0000 (13:49 +0200)]
Having basic data and "business contact" which is really no contact in general
terms was a bad style anyway. Now these two entities are merged into
"BusinessBasicData" and kept in main package of this project.
Roland Häder [Sun, 23 Jul 2017 11:38:27 +0000 (13:38 +0200)]
owner is already given in "super-entity" BusinessContact, which may need
renaming because it is not a contact, but an abstract business entity where all
data of that (entire) business is attached to, like employees, branch offices
and so on.