Subject | Hash | Author | Date (UTC) |
---|---|---|---|
Do insert before update on updateAddress in case party isn't there. Allow sqlDAO to ignore insert errors silently. | 4bec38299c66cdf2cbb2317babde3c08dcd02ae1 | Luigi Bai | 2020-09-19 16:25:47 |
Allow passing in number of cases to update. | ee680faa663867a52b2cbd49b68ba477f17c8cf0 | Luigi Bai | 2020-09-19 16:24:57 |
Give a heads up on how many cases will be udpated. | 6624a0e47f1a2f326e4f079a93dc8beea84aae24 | Luigi Bai | 2020-09-18 21:37:32 |
Choose only Active cases or cases with NULLs to update. | eadbf12cdc696dbe027578b2c352a09a2c6778b4 | Luigi Bai | 2020-09-18 21:37:13 |
Fix typo. | 021fde3ca5c6697ea1c7c9cee00d4c2937fb6385 | Luigi Bai | 2020-09-18 21:36:36 |
Fix dates to YYYY-MM-DD on the way in, as much as possible. | fa16c80ea14bad924f75ecc81d3cbfc4b2fe21e4 | Luigi Bai | 2020-09-18 21:36:20 |
Include some SQL scripts to update dates from the courts to YYYY-MM-DD. | bde2825badffc0900955df5119107f38121eb14a | Luigi Bai | 2020-09-18 21:35:23 |
* improve date manipulation, replace moment with dayjs * (bug) Court.class extract parser now creates correct Docket and DocketedCase * don't bother with EXTRACT_HEARINGS, those are always empty * updateStatus updates status AND filed_Date | 8ae2890852f5cb53c0429cc791098fee86f5b793 | Luigi Bai | 2020-09-18 02:49:03 |
Store case status and filedDate when available | e0d7a3d44e4560e04133e777bdc0697bec57a8d4 | Luigi Bai | 2020-09-16 20:38:15 |
Clean up data xfer. Use TRUNCATE TABLE instead of DELETE FROM. | e407788ccd1fb9ace1ca7cad4b0a1acd0189c799 | Luigi Bai | 2020-09-16 02:37:15 |
Clean up code. | 3036e8ca177024179b3a6e391876121e526cd213 | Luigi Bai | 2020-09-16 02:36:42 |
Add bulkExtract importer. | 0da4130e3e3a3e2e855f2ef28c4194fb6b5dfe10 | Luigi Bai | 2020-09-16 02:36:02 |
Add court related data | 20f13f9ef9885794eddb2470bd57a9207dc7af20 | Luigi Bai | 2020-09-12 21:47:34 |
Try to avoid errors where information may be missing. | 3410e49ba53bd7ebb417ee9bac7db1cf9e0e8808 | Luigi Bai | 2020-09-09 17:08:59 |
Don't put status information into console.log. | 19dab8ff60a0256f9511391d4088c1b8f88ac3db | Luigi Bai | 2020-09-09 17:06:24 |
Add more info to README. | 9708b396b887bab284e0ad2c2d996ea2db0ff4d4 | Luigi Bai | 2020-09-09 12:37:24 |
Add info to README. | 79672fad423a570d7eb05c4891dfabb511db5ab3 | Luigi Bai | 2020-09-09 00:20:23 |
Fixed searchNames. Now you can load cases where you know one of the parties. | 0ad812704e27341a481a6de18c88a4f38bb61700 | Luigi Bai | 2020-09-08 23:43:48 |
Apparently updating addresses works, as long as you don't ask for more than 10 per minute. That seems to be working so far. | 9276b2acb2cc3067c53fc16317a8960db3f6fcca | Luigi Bai | 2020-09-08 22:44:24 |
More information about how to use the software. Not much, yet. Enough to get started, I think. | 393fce58bbcfeaee947cb2b0e17d81d16da49612 | Luigi Bai | 2020-09-08 22:31:02 |
File | Lines added | Lines deleted |
---|---|---|
lib/sqlDAO.js | 6 | 4 |
updateAddress.js | 11 | 0 |
File lib/sqlDAO.js changed (mode: 100644) (index 340734a..d87c779) | |||
... | ... | let DAO = class { | |
52 | 52 | if (e) { | if (e) { |
53 | 53 | switch (e.errno) { | switch (e.errno) { |
54 | 54 | case 19: | case 19: |
55 | if (this.dao.stmts.update) { | ||
56 | console.error("I would do an update here: ", this.dao.dataObj); | ||
57 | } else { | ||
58 | // In general, ignore the conflict: | ||
55 | if (!this.ignoreInsertErrors) { | ||
56 | if (this.dao.stmts.update) { | ||
57 | console.error("I would do an update here: ", this.dao.dataObj); | ||
58 | } else { | ||
59 | // In general, ignore the conflict: | ||
60 | } | ||
59 | 61 | } | } |
60 | 62 | break; | break; |
61 | 63 | default: | default: |
File updateAddress.js changed (mode: 100644) (index 9584171..0beff71) | |||
... | ... | opts.connectCallback = database => { | |
34 | 34 | database, | database, |
35 | 35 | "UPDATE party SET party_address = $pa WHERE casenumber = $cnum AND party_role = $pr AND party_name = $pn" | "UPDATE party SET party_address = $pa WHERE casenumber = $cnum AND party_role = $pr AND party_name = $pn" |
36 | 36 | ); | ); |
37 | pDao.ignoreInsertErrors = true; | ||
37 | 38 | let cDao = new DAO.CaseCtlr(database); | let cDao = new DAO.CaseCtlr(database); |
38 | 39 | cDao.stmts.update = cDao.prepare( | cDao.stmts.update = cDao.prepare( |
39 | 40 | database, | database, |
... | ... | opts.connectCallback = database => { | |
62 | 63 | // Store the party addresses | // Store the party addresses |
63 | 64 | oi.parties.forEach(party => { | oi.parties.forEach(party => { |
64 | 65 | if (party.address) { | if (party.address) { |
66 | // If this has been a bulk extract, | ||
67 | // probably should insert first, given | ||
68 | // the bulk extracts only have 2 parties | ||
69 | // per case. | ||
70 | pDao.insert({ | ||
71 | $addr: party.address.join(" "), | ||
72 | $cnum: oi.caseNumber, | ||
73 | $role: party.role, | ||
74 | $name: party.name | ||
75 | }); | ||
65 | 76 | pDao.update({ | pDao.update({ |
66 | 77 | $pa: party.address.join(" "), | $pa: party.address.join(" "), |
67 | 78 | $cnum: oi.caseNumber, | $cnum: oi.caseNumber, |