Merged in release/AIO/2024-04-19 (pull request #1420)
Resolve CCC supplement with UNQ_SEQ.
This commit is contained in:
@@ -15,23 +15,43 @@ export const GetSupplementDelta = async (client, jobId, newLines) => {
|
|||||||
const linesToUpdate = [];
|
const linesToUpdate = [];
|
||||||
|
|
||||||
newLines.forEach((newLine) => {
|
newLines.forEach((newLine) => {
|
||||||
const matchingIndex = existingLines.findIndex((eL) => eL.unq_seq === newLine.unq_seq);
|
const matchingIndexLines = [];
|
||||||
|
existingLines.forEach((eL, index) => {
|
||||||
|
if (eL.unq_seq === newLine.unq_seq) {
|
||||||
|
matchingIndexLines.push({ index, record: eL });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
//Should do a check to make sure there is only 1 matching unq sequence number.
|
if (matchingIndexLines.length === 0) {
|
||||||
|
|
||||||
if (matchingIndex >= 0) {
|
|
||||||
//Found a relevant matching line. Add it to lines to update.
|
|
||||||
linesToUpdate.push({
|
|
||||||
id: existingLines[matchingIndex].id,
|
|
||||||
newData: { ...newLine, removed: false, act_price_before_ppc: null }
|
|
||||||
});
|
|
||||||
|
|
||||||
//Splice out item we found for performance.
|
|
||||||
existingLines.splice(matchingIndex, 1);
|
|
||||||
} else {
|
|
||||||
//Didn't find a match. Must be a new line.
|
//Didn't find a match. Must be a new line.
|
||||||
linesToInsert.push(newLine);
|
linesToInsert.push(newLine);
|
||||||
}
|
}
|
||||||
|
//If we find only 1, we can use the old logic.
|
||||||
|
else if (matchingIndexLines.length === 1) {
|
||||||
|
//Found a relevant matching line. Add it to lines to update.
|
||||||
|
linesToUpdate.push({
|
||||||
|
id: matchingIndexLines[0].record.id,
|
||||||
|
newData: { ...newLine, removed: false, act_price_before_ppc: null }
|
||||||
|
});
|
||||||
|
//Splice out item we found for performance.
|
||||||
|
existingLines.splice(matchingIndexLines[0].index, 1);
|
||||||
|
} else if (matchingIndexLines.length === 2) {
|
||||||
|
//if we find 2, we need to separate it out by the non-refinish lines and splice one out.
|
||||||
|
//Find the mathcing one depending on whether this is the refiniish one or not.
|
||||||
|
const matchingLine = matchingIndexLines.find((i) =>
|
||||||
|
newLine.mod_lbr_ty === "LAR" ? i.record.mod_lbr_ty === "LAR" : i.record.mod_lbr_ty !== "LAR"
|
||||||
|
);
|
||||||
|
|
||||||
|
linesToUpdate.push({
|
||||||
|
id: matchingLine.record.id,
|
||||||
|
newData: { ...newLine, removed: false, act_price_before_ppc: null }
|
||||||
|
});
|
||||||
|
//Splice out item we found for performance.
|
||||||
|
existingLines.splice(matchingLine.index, 1);
|
||||||
|
} else {
|
||||||
|
//We found more than 2 matching lines. We should never get here. Throw a warning and back out!
|
||||||
|
throw new Error("Too many matching lines found. Ensure EMS file is valid.");
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
//Wahtever is left in the existing lines, are lines that should be removed.
|
//Wahtever is left in the existing lines, are lines that should be removed.
|
||||||
|
|||||||
@@ -1 +1,8 @@
|
|||||||
[ ]
|
- name: Task Reminders
|
||||||
|
webhook: '{{HASURA_API_URL}}/tasks-remind-handler'
|
||||||
|
schedule: '*/15 * * * *'
|
||||||
|
include_in_metadata: true
|
||||||
|
payload: {}
|
||||||
|
headers:
|
||||||
|
- name: event-secret
|
||||||
|
value_from_env: EVENT_SECRET
|
||||||
|
|||||||
@@ -5797,6 +5797,29 @@
|
|||||||
- active:
|
- active:
|
||||||
_eq: true
|
_eq: true
|
||||||
check: null
|
check: null
|
||||||
|
event_triggers:
|
||||||
|
- name: tasks_assigned_changed
|
||||||
|
definition:
|
||||||
|
enable_manual: false
|
||||||
|
insert:
|
||||||
|
columns: '*'
|
||||||
|
update:
|
||||||
|
columns:
|
||||||
|
- assigned_to
|
||||||
|
retry_conf:
|
||||||
|
interval_sec: 10
|
||||||
|
num_retries: 3
|
||||||
|
timeout_sec: 60
|
||||||
|
webhook_from_env: HASURA_API_URL
|
||||||
|
headers:
|
||||||
|
- name: event-secret
|
||||||
|
value_from_env: EVENT_SECRET
|
||||||
|
request_transform:
|
||||||
|
method: POST
|
||||||
|
query_params: {}
|
||||||
|
template_engine: Kriti
|
||||||
|
url: '{{$base_url}}/tasks-assigned-handler'
|
||||||
|
version: 2
|
||||||
- table:
|
- table:
|
||||||
name: timetickets
|
name: timetickets
|
||||||
schema: public
|
schema: public
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
-- Could not auto-generate a down migration.
|
||||||
|
-- Please write an appropriate down migration for the SQL below:
|
||||||
|
-- alter table "public"."tasks" add column "remind_at_sent" timestamptz
|
||||||
|
-- null;
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
alter table "public"."tasks" add column "remind_at_sent" timestamptz
|
||||||
|
null;
|
||||||
Reference in New Issue
Block a user