This commit is contained in:
2021-03-04 22:24:40 +00:00
parent d4890bd2f0
commit 62af0de643

View File

@@ -190,11 +190,19 @@ todo: Changes to allow in place updates of server:
CURRENTLY DOING: Contract
todo: both rates need contract checkbox so they only appear in conjunction with a contract also the picklists need updating for rates with variants to take contract into consideration
add to ui
default to false (is required)
Picklists supply contractid with variant so that the server knows which list to produce
Contract general notes / changes
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Overview
V7 contracts did this:
Limit rates that can be selected
Limit rates that can be selected to only those selected in contract and which are set to "Contract rate" in themselves
or just offer those contract rates in addition to regular rates
apply a discount to all parts selected for that contract in effect
V8 contracts need to do this:
@@ -207,11 +215,20 @@ Overview
Special notes field kind of like popup notes but it doesn't popup, instead displays on workorder statically somewhere as a reminder.
perhaps a contract in effect section with a ui affordance to open for more details or perhaps not.
I can imagine the first time people would need to read it but after the thousandth it's just taking up space.
Response time duration control for notification purposes, overrides default response time globally set
if a unit has one and customer has one the shortest one applies as this is an entire workorder issue
User can make seperate workorders to work around this if it's an issue
Contracts are never tied directly to an object they affect other than the Customer or Headoffice with a foreign key link
workorders should never be reliant on the existance of a contract but rather just have a contract applied to them for example
Contracts *are* tied to objects that use them like Client, HeadOffice, Unit
Which contract to apply
In order of least to most specific: Headoffice, Customer, Unit
so Unit contract overrides any above contract
Need rates picklists to support criteria of contract rates only for selection
perhaps server supplies which contract id is in effect and limit to rates
@@ -229,7 +246,7 @@ Contract affected fields
without breaking anything
Contract applied field
objects with contract that affects then should seperately have a contract name field for contract applie
objects with contract that affects then should seperately have a contract name field for contract applied
this supports not directly linking the contract but rather seeing it as an object that is applied to another object,
not linked to it. Can apply, unapply, delete contract and no affect on primary wo or other object
@@ -239,15 +256,25 @@ TAGS
Contract needs selectable tags for any aspect to apply
Discount / markup etc parts / rates
So, in practice like in v7 you set a discount for all parts but then you can also on the same line restrict it to specific part tags and select tags right there
The server then applies the discount based on whether the parts are tagged or not if that's the case in it's bizactions
If any items have tags then there can be no "all Items" item? Or do they contradict each other in some way
i.e. a discount for all but a special discount if it's tagged this (could be zero percent so no change if tagged that way as a way to Exclude certain items)
The server then applies the discount based on whether the parts are tagged or not if that's the case in it's bizactions
then the picklist can be supplied the variant for contract id which pulls the contract, finds the tags and then populates the picklist with the extra tag search
MULTIPLE discount / markup ITEMS
Can have ONE default for all box
Can have multiple tagged ones (tag is REQUIRED)
Not two can have same tags in them, that's a biz rule / error
Algorithm:
Default item applied normally UNLESS tagged item which is more specific overrides it
Objects:
Contract
ContractRates (rateid,contractid)