Commit Graph
57 Commits
Author SHA1 Message Date
Raphael Collet 975c6c8639 [REF] resource calendar (#24717)
Refactor resource calendar and resource mixin:
 - add a required timezone field on models 'resource.calendar' and 'resource.resource';
 - resource calendar attendances are now computed in the timezone of the resource
   or the calendar;
 - improve API of 'resource.calendar' and 'resource.mixin';
 - avoid other modules from using the implementation methods of 'resource.calendar';
 - refactor implementation of 'resource.calendar' to make it more efficient.
2018-05-31 20:28:12 +02:00
Benjamin Stiens 6383120f3b [IMP] all: Improve error messages
Many error messages are misleading or too "vague"
This task aims to improve all error message.

Task #47042
PR #23321
2018-05-28 16:45:48 +02:00
Olivier Dony 406df78f43 [FIX] hr: make field-level groups consistent
a696f84f1f adds a few extra fields to the
Private information tab of the employee form. As a result, HR personnel
and employees could reasonably expect these fields to be protected in
the same manner as the other private fields. Make it so.

Cherry-Pick of odoo/enterprise@533db05b5e

Fixes #18610
2018-05-18 11:21:46 +02:00
Yannick Tivisse a696f84f1f [IMP] hr: Add private information fields on the employees
Add some private information on the employees like:
- Certificate: Bachelor, Master, Other
- Place/Date of birth
- KM Home/Work
- Emergency Number/Contact
- ...

Also move some already existing private information from hr_contract to hr.
2018-05-04 09:59:24 +02:00
Thibault Delavallée b6d2351df4 [REF] mail: improve implementation of message subscribe
This commit refactors mail.thread message_subscribe method. It is done for two
purposes. First one is to optimize performance by using the new followers
computation methods introduced recently. Second purpose is to clean the API
of message_subscribe to make it simpler to use.

This commit splits message_subscribe in two main parts :

 * _message_subscribe is a private method calling the follower new
   subscription methods and updating the record set;
 * message_subscribe is a public wrapper on _message_subscribe that adds
   access rights checks;

Simplification comes by removing message_subscribe_users that was a
shortcut to message_subscribe. Having a method to subscribe partners and
channels is sufficient as we would like to avoid bloating the public API
of mail.thread. A force parameter is also removed from message_subscribe
as this implementation detail can be induced in the computation.

Various addons using the removed methods are updated in order to use the new
subscription API. They have the same functional behavior.

This commit has a great impact when subscribing several followers. In a more
general way all code using message_post is also optimized as posting a message
generally implies subscribing followers. It also improves activity use as
posting a message and subscribing new followers are common process in
activities.
2018-04-03 17:11:43 +02:00
Christophe Simonis b51f2d38c2 [MERGE] forward port branch saas-11.2 up to 500e3f4970 2018-03-21 11:04:48 +01:00
Christophe Simonis e0345a4a3f [MERGE] forward port branch 11.0 up to 2835d29979 2018-03-20 11:45:11 +01:00
Yannick Tivisse 0eb58775c9 [IMP] hr: Add a specific marital status 'Legal Cohabitant'
Purpose
=======

Currently both 'Married' and 'Legal Cohabitant' are considered as the same thing.

We should separate these 2 marital status to have a more accurate information.
2018-03-15 11:18:19 +01:00
Thibault Delavallée a1870d9688 [REM] hr: remove user auto subscription on its employee and kanban follow CTA
HR employee model automatically adds the employee's user as follower of
its own employee profile. It has been done at 8ab3e5d2a1 probably
when working on gamification and twitter-like employee profile. In that
use case adding the employee's user as follower was required to be able
to discuss on the employee form view. It is also a requirement to be sure
he receives news about received badges.

Since then however employee profile has been set as private and internal.
It is used only for HR purpose which is coherent with the model and the
business flow of various HR modules. Moreover it has never been really used
as intended in gamification or as a twitter-like profile. It seems therefore
not necessary to automatically add followers to this record.

If required, any message_post can add the employee's user in the recipients
if its attention is required on some message. It required only to set the
target users's partner in the partner_ids parameter of message_post that
is propagated to the message creation and notification.

An override of notification process can also be removed. It seems people
wanted to add the user to its profile but without notifying him. Let
us remove all that crap.

Finally the CTA button to (un)follow employees directly from the kanban
view is also removed for the same reasons as state hereunder.
2018-03-14 10:58:05 +01:00
qdp-odoo 4a3df5256a [FIX] *: fixed decorators on copy() 2018-02-09 10:32:23 +01:00
Christophe Simonis eefca5d492 [MERGE] forward port branch saas-11.1 up to 73610ff992 2018-02-05 16:20:48 +01:00
Christophe Simonis 33bf2fe922 [MERGE] forward port branch 11.0 up to aed8f45346 2018-02-05 15:06:55 +01:00
Lucas Perais (lpe) 63c39c7460 [FIX] hr: soft-prevent read of employees forbidden field
Before this commit, when having a simple employee (group employee) accessing the form view
of hr.employee, there was traceback because the field is_address_home_a_company was not in the view

This is because of commit 2d777d5
which restricted this field to the group_hr_user (Officer) in Python

When the view itself is not group-restricted
The JS loads everything from the view but puts invisible=1 on sections that have a group

The field, in our case, is forbidden before that and is not loaded, whereas the domain in which it is used is loaded

After this commit, the view loads correctly, while avoiding leaks as intended

OPW 813721
2018-02-02 16:08:00 +01:00
Christophe Simonis 88a87240a6 [MERGE] forward port branch saas-11.1 up to 8613724bfc 2018-01-25 17:38:41 +01:00
Christophe Simonis cb50970f3f [MERGE] forward port branch 11.0 up to eefe879a37 2018-01-25 15:41:45 +01:00
Christophe Simonis c6b2fa47ed Revert "[FIX] base: bad back-port"
This reverts commit 0ac6043ec7.
2018-01-25 12:43:02 +01:00
Olivier Dony 2d777d5ade [FIX] hr: extend employee privacy protection to a few fields
A few fields present in the "Private Info" tab of the Employee form did
not have the corresponding `groups` attribute.
This could cause access rights problems.
2018-01-22 17:22:03 +01:00
Raphael Collet 2304edd46c [IMP] *: avoid non-stored dependencies 2018-01-12 15:00:01 +01:00
dbh 8cfee8634c [ADD] hr: add activity mixin on employees
Scheduling activities on employees is something people working in human
resources seem to do sometimes.

Closes #19483 .
2017-10-18 13:19:56 +02:00
Martin Trigaux 6286dc4809 [FIX] hr: force a name to employee creation
The name field is a stored related on the resource.resource record.
The name on the resource is required.

If no name (and no resource_id), the creation fails as trying to create a
resource without name (non-null constrain)

Force in the view to indicate to the user that a name is required but without
adding the constrain at the database level.
required=True on the fields adds a non-null constrain on the SQL column but the
related values are populated *after* the INSERT so it would fail depending on
the given values (e.g. a resource_id value but no name)

Fixes #20126
Closes #20128
2017-10-13 14:21:32 +02:00
qsm-odoo 09c35696a3 [FIX] *: dashboards automatic colors
* account, hr, hr_recruitment, maintenance, mrp, sales_team, stock

Adaptation of https://github.com/odoo/odoo/commit/a79d83e436e5e965d59663d4a06a0f8a62d8f694 for saas-18 new colors.

Also change back all color defaults to 0 instead of 1 (see
mentioned commit: they were changed from 0 to 1 as in saas-16
the color was applied to kanban headers which had to be gray
(the old color 1) by default).

Also add default violet color for 'Customer Invoices' and 'Vendor Bills'
dashboards.
2017-09-20 12:32:48 +02:00
Christophe Simonis 017ee5eab3 [MERGE] forward port branch saas-17 up to 877e709871 2017-08-24 13:17:53 +02:00
Olivier Dony 695716efb0 [FIX] P3: remove pycompat.{keys,items,values} helpers
Now that we're closer to switching to P3 for good, these helpers have
outlived their usefulness, and mostly add noise.

All remaining dict.iter*() or dict.view*() must be converted to the
normal keys(), values() or items() calls.

Whenever the result is likely to be used for more than the scope of a
loop, or when the dict needs to be modified during iteration, the calls
must be wrapped in a ``list()``, to protect the new P3 semantics.
Those cases are very exceptional.

Also removed some dead code or improved the API to remove unnecessary
conversions.
2017-08-20 23:25:54 +02:00
Xavier Morel 3824b5dcc1 [FIX] P3: fix base64 and StringIO uses
* StringIO removed from stdlib, replace with io
* try to correctly handle BytesIO/StringIO (one is for bytes the other
  is for text)
* fix base64: Python 3 removed bytes-encoding and bytes-bytes
  codecs (via #encode) so replace all calls to str.encode('base64'),
  also b64encode is a bytes->bytes conversion so attempt to properly
  handle that

issue #8530
2017-08-20 23:25:54 +02:00
Baris Kocak d5bd5dbf66 [IMP] hr: warn user when home address is a company
* Add a warning on the employee form view when the home address has a
      company linked
    * Get email, phone number and mobile number from the application
      form when creating an employee from there
2017-08-09 13:37:03 +02:00
Olivier Dony 5f4db9df66 [MERGE] Forward-port saas-16 up to 5afe894f44 2017-05-16 18:23:15 +02:00
xmo-odoo fffaf735f5 [FIX] P3: list -> iterable builtins (#16811)
In Python 3:

* various builtins and dict methods were changed to return
  view/iterable objects rather than lists
* and the separate Python 2 view/iterable builtins and methods were
  removed altogether

This is problematic when using these items as list (which the happens
repeatedly in Odoo), but more viciously when iterating *multiple times*
over them (which also happens, which I've messed up multiple times while
writing this, and which is a pain to debug even when you've just created
the issue).

Convert all code using these to semantics-matching cross-version
helper functions to get the LCD behaviour between P2 and P3, and
forbid the builtins via lint.

issue #8530
2017-05-10 09:39:55 +02:00
Yannick Tivisse dbeff8cce1 [FIX] hr, hr_contract: Rename 'Job Title' into 'Job Position' 2017-05-08 16:55:51 +02:00
Thibault Delavallée a7eeba30f9 [IMP] hr: ease search and use of department full name
Like product categories.
2017-04-27 14:13:09 +02:00
Yannick Tivisse 7964b81ac8 [IMP] hr: Add some default values and fields
- Default gender is male
- Default marital status is single
- Move some fields from the contract to the employee (permit number, visa number, visa expiration date)
2017-04-26 15:08:09 +02:00
sap e59c1b49c2 [IMP] web, various: apply kanban card color on header instead of whole card
Currently applying a color to a kanban item applies it to the whole
card. This creates usability issues as the content is not dynamically
updated to match the chosen color.

This commit proposes to apply the color only to the header and let the
card content standard. It helps designing cards that are always usable
and readable.
2017-04-24 10:36:29 +02:00
Chirag Vaghela 1eaf428069 [IMP] hr: improve labeling of public / private data
It is currently not clear what adresses and tabs in employee form view
are about, especially concerning public, work and private data. This task
improves the labeling of the home address (private one) and public and
personal tabs (work and private actually).
2017-04-21 11:38:04 +02:00
Alexandre Fayolle 7ca29909e8 [IMP] hr: split updating manager method
Extract setting the employee's parent when changing the department manager.
This allows customizing the way the managers are handled easily in extension
modules.

Closes #16490
2017-04-19 09:40:47 +02:00
Thibault Delavallée 855e7eb043 [IMP] hr: use user data when creating an employee if available 2017-04-03 10:35:44 +02:00
Thibault Delavallée 68a317f164 [REF] hr: remove unnecessary city field on employee
It is not used and is a non stored related on the work address. It is
therefore not really necessary to keep it.
2017-04-03 10:35:30 +02:00
Thibault Delavallée 838bd31914 [MOV] hr: reorganize fields of hr.employee model
No technical or functional change. Only reorganizing fields to better
understand the model. Future commits will change a few fields in this
model and this commit prepares it by classifying a bit them.
2017-04-03 10:35:25 +02:00
Olivier Dony 508e9dd9fe [IMP] hr*: show correct fields to employees 2017-03-28 14:45:29 +02:00
Thibault Delavallée 9d092c77c9 [REF] hr: remove inherit from employee on resource and use resource mixin 2017-02-27 14:04:48 +01:00
Thibault Delavallée d5aeaeeba2 [REF] hr: remove login and last_login fields on employee model
Those fields are never used anywhere. Moreover attendance module can be
used to track employee log in / log out and compute its attendances.
Let us therefore remove those fields.
2017-02-16 16:51:51 +01:00
Christophe Simonis 6a942a9e96 [MERGE] forward port branch 10.0 up to 8a0151b4bc 2017-02-02 12:42:51 +01:00
Christophe Simonis ba8a1c7ec2 [MERGE] forward port branch saas-11 up to e86983112e 2017-01-27 18:20:28 +01:00
Christophe Simonis 047efcbd58 [MERGE] forward port branch 9.0 up to 838beb12de 2017-01-27 16:21:51 +01:00
hbh 158f779b46 [IMP] Various usability improvments on attendance and HR application,
- Print Badge report set as pdf instead of html
- Replace the 'Status' separator by 'Attendance' in HR Settings tab
- Add a new Stat button 'Attendance' and set icon as a last action of employee
- 'Manual Attendance' field should only be visible if 'Related User' field is set
- 'PIN' field should only be visible if in setting enabled
- 'Payslips' stat button not displayed if user has no access rights
- If no start/end dates selected then '-' will be removed on 'Trial Period Duration' field
- Rearrange fields on employee form's 'Contact Information'

[IMP] Various usability improvments on attendance and HR application
2017-01-03 13:53:30 +01:00
qdp-odoo 4f29b77e3d [MERGE] foward port of 10.0 up to revision 84a650e33a 2016-12-30 17:21:25 +01:00
Dhawal Limbuwala c52350cf21 [REF] hr: typo
"HR" is consistently used in Odoo, instead of "Hr".
2016-12-15 17:05:39 +01:00
Christophe Simonis 10778d4521 [FIX] hr: do not notify user when assigned to employee 2016-12-15 13:23:36 +01:00
Jérome Maes 13f84b9aca [REM] *: remove ir.needaction mixin
ir.needaction_mixin is not used anymore by the webclient.
From 9.0, the concept has changed: this feature is now
available in mail module, with the mail.thread mixin,
and message_neeadction field.

Remove all code handeling needaction bullet and
counter on ir.ui.menu, knowing that since 9.0
webclient does not display the counter anymore.

This code was, thus, useless and some RPC calls
were done for nothing, and adapt accounting
reconcialiation widget.
2016-12-05 11:30:03 +01:00
Yannick Tivisse 1903a33278 [FIX] hr: Remove old_api default value 2016-08-09 10:29:06 +02:00
Stanislas Sobieski f8e971e1cc [FIX] name_get of the hr.department
Recursive call currently fails with an IndexError as `name_get()` in new
API context returns a list of a single pair.

Closes #12496
2016-07-04 14:59:38 +02:00
Fabien Pinckaers 3f4c062023 [ADD] hr(_recruitement): onboarding tour
Also some tweaks in views (mainly wording)
2016-06-16 14:59:41 +02:00