fix: align server deadlines and follow consumers with preparation state
This commit is contained in:
@@ -294,6 +294,16 @@ export function getTenderStates(email) {
|
||||
return withDb(db => Object.fromEntries(db.prepare('SELECT * FROM tender_state WHERE email=?').all(email)
|
||||
.map(r => [r.tender_key, { data: JSON.parse(r.data), snapshot: JSON.parse(r.snapshot), version: r.version }])));
|
||||
}
|
||||
// Current per-tender state overrides legacy mirrored follow lists, including unfollow.
|
||||
export function getTrackedTenderKeys(email, states = getTenderStates(email)) {
|
||||
const legacy = getData(email, 'takip');
|
||||
const keys = new Set((Array.isArray(legacy) ? legacy : []).map(String));
|
||||
for (const [key, record] of Object.entries(states)) {
|
||||
if (record.data.takipte === true) keys.add(key);
|
||||
else if (record.data.takipte === false) keys.delete(key);
|
||||
}
|
||||
return [...keys];
|
||||
}
|
||||
export function saveTenderState(email, key, patch, snapshot, expectedVersion) {
|
||||
const fields = new Set(['takipte','incelendi','kanbanStatus','atananPersonel','gorev','notes','checklist','bidDraft']);
|
||||
if (!key || key.length > 100 || !patch || typeof patch !== 'object' || Array.isArray(patch)
|
||||
|
||||
Reference in New Issue
Block a user